Hacker News new | past | comments | ask | show | jobs | submit login
I've forked neofetch to keep it alive (github.com/lorendb)
155 points by LorenDB 77 days ago | hide | past | favorite | 104 comments

Aren't there many, many, alternatives to NeoFetch? I seem to recall Linux Matters mentioning them in a podcast recently[0].

Turns out it wasn't so recent, but the ones they mentioned are;

fastfetch: https://github.com/fastfetch-cli/fastfetch

cpufetch: https://github.com/Dr-Noob/cpufetch

onefetch: https://github.com/o2sh/onefetch

ramfetch: https://codeberg.org/jahway603/ramfetch

[0]: https://linuxmatters.sh/21/

There's a large list here: https://beucismis.github.io/awesome-fetch/

Sampling some of them, there seems to be a wide variance of how much they show, how shiny the image next to the info is, and what kind of info is shown (e.g. one of them shows stats on your git repo).

My favorite is pokefetch.

Greybeards just use cat. But really have no need to show off stats in screenshots anyways (:

Can confirm. I'm a graybeard, and I use cat pretty much exclusively to read this data. Sometimes I even pipe the output through text processing tools to isolate specific parts of the data dump.

(Not saying the higher-level tools like neofetch are worthless at all, just saying they aren't a part of my workflow.)

Of those, only fastfetch is a true neofetch alternative.

Neofetch itself is just a (faster) alternative to the original screenfetch

Here is a long list with a bunch more:


Aww, I thought that was a tool to fetch (download) all the *fetch tools. Alas, it just lists all the ones you have installed.

I've been using fastfetch for ages, personally.

Checking the network graph (https://github.com/dylanaraps/neofetch/network) seems hyfetch (https://github.com/hykilpikonna/hyfetch) is an actively maintained fork, having 500+ commits over neofetch's latest update.

On another note, good to know Dylan still alive. He kinda disappeared 2 years ago.

What happened to the original project ? Maintainer just suddenly went radio silent ?

Yes, radio silence for two years, then he archived all his repos and added a notice somewhere that he has taken up farming: https://news.itsfoss.com/neofetch-rip/

Reminds me of “I no longer build software, I now build furniture out of wood.” https://github.com/docker/cli/issues/267#issuecomment-695149...

Or in Tracey Kidder's book The Soul of a New Machine, the hardware engineer who tires of debugging nanosecond timing heisenglitches, moves to a commune in Vermont where he will not have to deal with units of time less than a season.

Love that book. It enabled me to have one of my favourite flights of all time. Sat next to Chris Turner, chatting about his time at Acorn for about 9 hours.

I blogged about something related and included this anecdote part way through. https://popey.com/blog/2023/09/a-virus-for-the-bbc-micro/ - under "A short aside"

Hilarious that you have that saved. Any reason for why? Building up the courage to follow suit and use this for encouragement perhaps?

FWIW it was posted in a popular thread here in the last few days.

Gigachad meme personified. "Archives hyper-popular Linux utility - picks up farming - leaves".

A bit like Perelman who rejected a Fields medal and then told a journalist who dared to ring him up after he had moved to the Russian countryside ‘You are disturbing me. I am picking mushrooms’.

This has been a personal fantasy of mine. Every time I read a story about someone dropping software and buying a farm, I'm overcome with envy.

Maybe try to take a sabbatical and start a garden instead. Farmers deal with annoying shit in their day jobs just like the rest of us… except theirs is literal!

I'm not a farmer but I'm from the midwest and I know a little about farming... very few are farmers by choice. Many have second jobs, just to pay the bills.

There are niche and upscale farms that grow specific things like apples and wine grapes that can do quite well, but these are well established family-run businesses that would cost millions of dollars to buy, when they come up for sale at all.

"This isn't so bad, huh? Making bucks, getting exercise, working outside."

Did you get the number of commits off of the network graph? I use "git log" to pull the number of commits but had no idea the GitHub web site could count the number of commits between two repositories from the most recent commit of one of the repositories.

I simply checked hykilpikonna's contributions in contributors tab which can be put in range. The exact commit difference is shown in fork project page and even has a link to a comparison page (https://github.com/hykilpikonna/hyfetch/compare/dylanaraps%3...). But don't think what you're saying can be done from the GitHub ui.


> hyfetch also weirdly inserts lgbtq+ interest into it,

It is explicitly described as “neofetch with pride flags <3” so it isn't like the behaviour is going against what it says on the tin.

> I don't care about the *fetch authors interest in lgbtq+

I can't say I care about your lack of interest, but I've now had if waved in front of my face :)

If it bothers you that much, fork it and make “hyfetch without the pride”. Or just use one of the many other forks of the original.

I already did the sensible thing by when someone said "hey I forked neofetch because it's abandoned" I did not say "there already is a very active fork called hyfetch".

I was already fine with the idea that someone has decided to pick up the original neofetch.

This comment is a response, to someone else making a suggestion. I am responding that I do not think this is a reasonable suggestion.

All the post you responded to said was that the network graph shows and very active fork of the project.

If your response simply stated that “this fork uses an lbgtq+ theme by default and might take some work to change that”, then your response would be more reasonable. As it is your response looks to me more like a rant that you have been wanting to vent and have found an opportunity.

Calm down, have fun being you, and let others have their fun being them.

You are making so many assumptions in this reply that it's impossible to take seriously. The last line of yours applies much more to you than any of the commenters in this thread.

You are replying some time after the comment I'm replying to, and the much longer one with more of the same, has been flagged and hidden, so you have little to gauge which might be reasonably assumed from them. In that context your response says more about you than I, IMO.

> In that context your response says more about you than I, IMO.

This is the tone I'm asking about. I just don't understand why you insinuate things instead of saying them outright.

That was exactly the tone, in fact almost exactly the words, as your previous post. Perhaps some self reflection is on order.

Though to answer more directly: I someone come across as a bit supersilious, partly because of big words, complex sentences, & assuming people understand, and sometimes because I just am.

the conversation flow as I see it is

> neofetch is dead; here's my fork

< there exists already a maintained fork -- ``hyfetch"

> hyfetch explicitly inserts lgbtq+ things into the software, and thus is probably not what people want when they think ``maintained neofetch fork"

seems perfectly reasonable.

Exactly. That is just a different wording of what, in the very post of mine you replied to, I said would be reasonable.

But that isn't all that the (now flagged and hidden so I can't evidence this) post I was replying to said more, and a small essay elsewhere in the thread (also flagged and hidden) said more again (or repeated the same things in more ways, to be less generous).

I went through all the flagged replies, and I think if you stepped back and looked at the conversation again you might find that some of the implications you're seeing might not exist.

Even if they did exist, the /explicit/ point being made is valid: hyfetch is an expressly lgbt thing, and a lot (most?) people would prefer their vanity-specification-printer wasn't intertwined with that kind of thing.

It would be like learning the currently maintained version of grep includes random Christian iconography, if that helps the point get across -- christian or not, that's not what people go to software for, and it would thus be pretty useless to mention christGrep in a discussion about maintained alternatives to the original.

I never said hyfetch shouldn't exist or that the hyfetch author shouldn't make hyfetch or that people who want to shouldn't have their fun being them and enjoy hyfetch.

Why do you accuse me of not being calm?

> I never said…

No, but your posts did seem to strongly imply you were carefully not saying some things.

> Why do you accuse me of not being calm?

Because short essays that amount to “as long as I don't have to see it” are, in my experience, not associated with a calm demeanour. I may have made an unfair assumption there.

Even if I have, the rest of that line is still relevant: “have fun being you, and let others have their fun being them”.

Is the extent of this showing a rainbow ASCII logo?

Genuine question, I haven't used it.

Not even, this person is complaining about the color scheme options in multiple threads.

That’s seems fine to me if they’re all reasonable. You’re using a very sinister tone.

> That’s seems fine to me if they’re all reasonable. You’re using a very sinister tone.

What aspect of their reply "Not even, this person is complaining about the color scheme options in multiple threads" registered as "very sinister" to you?

Maybe the fact that 1: "color scheme options" is a carefully worded misrepresentation, and 2: I never said I had any problem with color scheme options, or even those particular color scheme options. You fabricated that, and that act is sinister.

Do you have any other totally innocent and sincere questions I can clear up for you?

If anyone is curious, the girl on the screenshot is a work by wonderful Ilya Kuvshinov.



I love Kuvshinov's work, but I cannot condone his conduct, name-games and pretend-innocence:


answer by Ilya : https://www.reddit.com/r/Art/comments/8nntwz/black_dress_dig...

more details showing he profited from the works : https://www.reddit.com/r/Art/comments/2uybt2/popular_patreon...

There's much more online discussion, a lot of which curiously disappeared.

Ah... nice to see dylan is still alive. I used kiss linux for a while. It always makes me wonder. There is an obviously very talented programmer, creating multiple projects that all kick of in some kind of a way (or very good documentation, like his bash bible). And then, all of a sudden, dead silence and goes ahead with a completely different way of life.

It looks like this is the beginning of a forked project? Nothing wrong with that, of course, but Show HN is for sharing one's own work (https://news.ycombinator.com/showhn.html), so a forked project would need to have made considerable progress down its own path, and present something different than can be tried out, in order to qualify as a Show HN.

I've provisionally taken Show HN out of the title; happy to put it back if I'm reading this wrong.

I always wondered how are the logos were made. I see in the source they're just hardcoded. But they must be made when some tool and imported.

there are loads of tools that can automatically convert images to ASCII art. most of the neofetch images seem to be generated that way because of the random looking characters but not all of them e.g. https://forum.endeavouros.com/uploads/default/original/2X/3/...

Guess this is a good opportunity to plug my own neofetch alternative, NerdFetch https://github.com/ThatOneCalculator/NerdFetch

I don't understand why project leads straight up bury their projects instead of transferring ownership to maintainers that are interested in keeping the project alive.

I don’t understand why people have such high expectations and demands from OSS volunteers.

They are people doing this for free. They have no obligation to pass off their work in any particular way shape or form when they no longer want to do it. They don’t owe you or anyone else a smooth handover (or literally anything else).

Maybe they just burnt out so hard that even finding a replacement is too much work. Maybe they’re just not passionate about the project anymore and can’t be bothered. Maybe life is just a lot for them right now. Whatever the reason is, it’s nobody’s business but the maintainer.

If you care so much, you are free to take it over (like this post) or just fork it and continue it yourself.

>I don’t understand why people have such high expectations and demands from OSS volunteers.

Because OSS volunteers frequently push people to use their projects. Sure, I didn't pay them, but they advertised to me and encouraged me and resulted me in expending time and resources in adopting their project. I have a valid claim that they act in a manner that doesn't rug pull me.

Some, not all. In this case were you ever subjected to the promotion of any of these tools?

Not neofetch because it's a useless vanity thing. (E.g. /r/unixporn is pointless because it's just screenshots of people's random linux systems.) But other projects, yes.

Oh I'm sorry how could I forget about your wants and needs as a consumer?

While you were spending your time being "advertised to, encouraged, and expending time and resources adopting their project" they did, you know, actual work to create and maintain said project.

Let's not kid ourselves here. You chose to use their project. You are free to use any other one that fulfills your needs, fork an existing one, or, hell, create one yourself. Nobody is putting a gun up to your head and saying "you must use this project or else". Strictly as a consumer, you have absolutely zero pull on what a project or its maintainers do, and you shouldn't delude yourself in thinking otherwise just because you expended a modicum of effort to use a project.

In short, get over yourself. Your time commitment is many magnitudes smaller than theirs.

As someone involved in open source, both as a user and maintainer, this is a very user hostile position to take.

For one, respect your users. If you made the decision to publish an OSS project, acknowledge that you can become a dependency in someone's workflow. While your users likely aren't supporting you financially, their usage of your projects, feedback, testing, indirect support and community building, all contribute to the success, and any status, fame, or potential employment that might come your way because of it.

Saying that you don't owe your users anything and mistreating them like you suggest is just a dickish move, and earns you no good will in the open source community. These are relationships that you should cherish, not look down upon because you get to call the shots about your project.

Everyone has difficult moments and perpetual unpaid work shouldn't be expected from anyone, but if you feel like abandoning a popular OSS project, the polite thing to do is to communicate this with your users, and find someone else willing to continue maintenance.

There is a massive gap between what would be nice (what you describe) and what should be expected (the rest of the thread) from maintainers.

While a smooth exit and transfer of ownership (and politeness in general) is nice to have, it should not be the norm out of a free product with no implicit or explicit support offered. And no, publishing a project is not an implicit offer of support, as much as some might want it to be.

If someone chooses to offer something (whether that’s updates, support or anything else), awesome, but it should not be expected or demanded out of anyone you don’t pay money for. Heaping on responsibilities to people just because they created, maintained, or contributed to a project is just a recipe for burnout and eventual deterioration of a project.

Sometimes, the user is wrong. If the user is demanding and expecting things out of a free project created and maintained by volunteers doing it in their own spare time, then they are a shitty user. You may choose to interact with them out of the kindness of your heart, but it should not be the norm or expectation from every maintainer out there.

I agree that expecting, or worse―demanding―, a specific behavior from a maintainer is out of place.

But at the same time, categorically refusing to meet a user request or expectation just because they're not paying you implies that you prioritize paying users, which corrupts how the software is built. It means that you consider people who use your software for free (gratis) to not have any voice in how the software is developed, but paying users do. This is a very reductionist point of view of OSS to provide only the barebone essential freedoms of the license you chose, without taking into account the people using the software, and the community that can develop around it.

If money is the main issue, there are ways to monetize OSS projects so that paying users effectively subsidize support and requests of non-paying users. But regardless if that system is in place or not, all users deserve a fair treatment, and maintainers should put in _some_ effort to do the right thing.

In the context of Neofetch, a popular OSS project, the right thing would've been to not ghost the community, announce your eventual departure, and start the discussion of finding a new maintainer. These are not unreasonable expectations, and require minimal effort from the maintainer. This person decided to abandon software development altogether, and that's fine, but this way of handling things would ensure that users would think twice about using any of their software in the future.

> These are not unreasonable expectations

Forcing someone to do work they don’t want to do just because they are a maintainer is extremely unreasonable.

> and require minimal effort from the maintainer.

I don’t think you understand the time and effort that finding a new maintainer takes. It is far from “minimal” and this mindset that it is somehow expected and/or required to leave a project is exactly my point.

> I agree that expecting, or worse―demanding―, a specific behavior from a maintainer is out of place.

> In the context of Neofetch, a popular OSS project, the right thing would've been to not ghost the community, announce your eventual departure, and start the discussion of finding a new maintainer.

You literally just placed expectations and demands onto someone. Neofetch being a popular or well used project does not somehow make this ok.

If someone doesn’t want to continue giving their time contributing or maintaining a project, then that is entirely their decision to make in whatever method they deem right. It’s not your or anyone else’s place to tell another person how they should leave a project they no longer want to be a part of. Nothing in being a user of said project gives you that right or privilege and making it sound like “the right thing to do” is just putting lipstick on an obvious demand.

> and that's fine

The rest of your comment makes it pretty clear that you do not actually think it is fine.

> I don’t think you understand the time and effort that finding a new maintainer takes. It is far from “minimal” and this mindset that it is somehow expected and/or required to leave a project is exactly my point.

If a community of users exists, it takes no effort to communicate your desire to depart the project.

If there are active contributors besides the lead maintainer (Neofetch had 206, most of them, granted, with minor contributions), starting a discussion to consider one or several people who could take over takes _minimal_ effort. Many projects do this all the time. It also takes minimal effort to mention the project in one of several maintainers-wanted lists/sites.

The difficult thing, as pointed out by a comment in an adjacent thread, is to handover the trust in the project that existing users had to someone you presumably don't trust. As the xz situation showed, this can easily be exploited.

Ultimately, if no suitable replacement can be found, then sure, shut the project down. My point is that it's not unreasonable to expect some effort before making this decision.

> You literally just placed expectations and demands onto someone.

I'm sleepy and sedated, so might not be fully congruent. :S I probably should've prefaced that first line with "unreasonable expectations".

But to save us both some time, all I'm saying is that project maintenance involves more than just releasing code as open source. It's fine for a user, paying or not, to have some basic expectations of how the project is maintained, beyond the freedoms they have from the software license. I consider communication as one of those basic expectations, and in my opinion, the author of Neofetch failed to meet them. I am allowed to judge them for it, and you are allowed to disagree.

If you transfer your project, you have to find somebody that you trust enough to transfer over the personal trust that a huge group of people have put on you, to them. That is an unbelievably high barrier.

The existing mechanism is for people to fork the project and move on. This is much better, because it doesn’t require the previous maintainer to endorse anything.

Your suggestion puts probably the hardest social task this sort of project could have, on somebody who is in the process of giving up on it. A succession strategy could be designed while the project is going along well and healthy, but at the end, this is a recipe for disaster.

Is this sarcastic? It's hard to choose reliable replacement maintainers, as a recent episode showed dramatically.

How does this work in terms of Linux distributions picking up your fork? Does something have to be submitted to each of them to show that the original maintainer has left the project and how would they decide to use your fork? I've always been curious what the decision making and vetting process around that looks like. I know in this case it's a shell script anyone can download and drop into their ${PATH}, but that isn't always the case.

Yes, you have to reach out to package maintainers in order to get the packages updated.

There's already an extremely active neofetch fork called Hyfetch.


These utilities are mostly not tools designed around being maximally functional, they are there to create some fun stuff to fill up a terminal when you show your system off. The whole point is to make a statement. For some people, they want to make a statement that includes something about their gender or sexuality, so they’ve got a fork for that.

There’s a big lgbtq+ tech community, because you can explore this stuff online more easily (people can connect and talk about it, the internet can be anonymous or pseudonymous, and there’s less risk of physical violence). So, these identities are wrapped up for lots of people—maybe not for you and me, but surely you can see that they are for other people, right?

Didn't I say that already? I did. In fact, that makes up about 40% of the comment now I look back.

It’s weird to me to see someone write an entire essay about the atrocity of seeing gasp rainbows in their free OSS tool they chose to download and use.

It’s 7 colors. Just get over it. Or fork it and move on with your life.

Just like you might not appreciate seeing people celebrate their identity, others might not appreciate a bigoted diatribe in their morning reading.

Why do you assume I have a problem with colors or lgbtq+

What exactly do you imagine I need to "get over"?

Where did I say anything about people shouldn't celebrate their identity?

You wrote an entire essay about it, starting with calling it weird, and then going on and complaining about it ad nauseam. You made your thoughts quite clear.

Apparently, I did not.


“Shoved down your throat” is an interesting way to describe software that you chose to download from someone else, which is clearly labeled as containing pro-LGBT imagery and messaging. It’s like picking up a library book about cats, which says on the cover, “Also contains much about the history of abortion law”, then complaining that it’s being “shoved down your throat”. Put the book down.

Hyfetch has LGBTQIA+ pride flags, but it has neowofetch which doesn't have them.

Fastfetch is a nice alternative

When I heard the repo was closed I removed it and installed hyfetch on my computers. Worth looking into if you can help that project.

I've set neofetch to run as the MOTD when I login to SSH. I was unaware that it was unmaintained.

The owner just became a farmer in April 26

I wonder what people who criticize long shell scripts think about projects like this and rkhunter.

That's a respectable initiative. Best wishes.


1.5k forks doesn't necessarily translate to 1.5k active forks. The vast majority of those forks are likely one-offs: the forker added a commit, submitted a pull request, and forgot about it.

I've noticed a lot of people fork repos & don't touch them at all

Not sure if it's their way of starring, or they want to make their profile look good to recruiters, or they want to create a copy they control for use as a dependency

I used to click the fork button on repos that I found especially interesting. Sort of a way of “super liking” a repo while also making sure a copy of it exists that I can come back to later.

Eventually I found that having a bunch of forked repos that I wasn’t touching and which became stale quickly only cluttered my GitHub profile, so I removed them from my profile.

Instead what I do now when I find repos that I like is I run a command on my server that adds the repo to a queue for cloning and then the server clones the repo without me having to keep the terminal open and without having to keep a specific tmux session or anything either. It works great.

The queue system I use is called task spooler


It’s available in packages on most systems. For example:

- https://www.freshports.org/sysutils/ts

- https://tracker.debian.org/pkg/task-spooler

On some systems it is installed as a binary named “ts” but on some other systems they install it as “tsp” to avoid conflicting with a different binary also called “ts”.

So on my systems I use it as tsp when installed as such and if it’s installed as “ts” then I create an alias named “tsp” that I use, so that I always use it as “tsp” regardless of what it’s installed as on the system.

I fork instead of Star when I want to make sure a thing can't suddenly disappear off GitHub when I want to come back to it at a later date.

It is indeed often used as an amplified star. I often see "fork and star this repo if you find it useful" used similarly to "like and subscribe" on YouTube.

It's the last one for me often

I mean, this fork has 2 commits, made an hour ago. Meanwhile, as other people have pointed out, there are already other quite active forks.

They're also implicitly promising to do a bunch of work in the future

> But thank you for pressing a button.

Why the passive-aggressive tone? Especially when OP shows explicit enthusiasm in making his fork active and valuable for the community.

What is bothering you with OP's endeavour that you need to make him feel bad about it?

If their actions spoke louder than their words I would actually be interested. But that's what they did didnt they ? They pressed a button and they've posted it on HN. They actually did more to publish the button pressing than they did to keep the repo alive.

So yeah, pardon my lack of enthusiasm towards someone who says stuff.

>So yeah, pardon my lack of enthusiasm towards someone who says stuff.

If you are so unenthused, why not just... not comment?

What a weird choice to go out of your way to leave a negative comment on something you don't care about. Just trying to spread some negativity around for the fun of it?

Because it's dishonest to say they're keeping it alive while all they're doing is talking about it. You want to believe them, go ahead and celebrate.

>go ahead and celebrate

Lol. The choice isn't between 1) be negative just for the sake of being negative; or 2) celebrate.

A third option, which I am recommending whenever you find yourself leaning into choice #1, is to just not comment.

I wanted to comment, and I did. And I did say a fair point, in my opinion.

The fact that you'd rather have me shut up speaks volume about what you consider a contribution in FOSS, and frankly I hope it's not a reflection on how you approach the real world, because you're in for a rude awakening.

>The fact that you'd rather have me shut up

If your only comment is "thanks for pressing a button", yes it's better to just shut up. I'm not the only one who thinks so -- your comment was downvoted and flagged pretty quickly.

>speaks volume about what you consider a contribution in FOSS,

How does my suggestion to not leave negative one-liner comments speak volumes? What was your contribution here again? Trying to make someone feel shitty? Awesome contribution.

>frankly I hope it's not a reflection on how you approach the real world, because you're in for a rude awakening.

Suggesting that someone not be negative to someone else purely for the sake of it? Yeah, rude awakening coming my way for sure.

To truly believe that uselessness (such as advertising the pressing of a button) should be rewarded is terribly short-sighted.

That's what I meant when I said that it spoke volumes about what you consider to be a contribution in FOSS. If you think that saying 'oh, I forked a dead project to keep it alive' and posting it without having accomplished anything is anything more useful or productive than pointing out how useless that is, then I'm afraid your definition of contribution is as shallow as your understanding of constructive criticism.

On a more personal note, I'm growing weary of spoon-feeding you. It is not very complex yet you still struggle to grasp the simplest of explanations.

You seem to be having an argument with your own imagination, because I never said OP should rewarded, nor that post this was a contribution to FOSS.

>On a more personal note, I'm growing weary of spoon-feeding you. It is not very complex yet you still struggle to grasp the simplest of explanations.

Love it. Personal attacks are the sign of an intelligent, well-reasoned person. Thanks for the laugh.

What is imaginative is your ability to backtrack and pull a strawman in what I can only assume is your last ditch effort to preserve your ego.

Only a king can fork a king. This should have had a name change or a statement of intent from the original author.

A king does not fork a king. Were you not close enough to a great king to learn from his example?

Those who fork are not kings, but are princes who become kings.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact