Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

YMMV, but many of us find it easier to maintain rust + cargo than the old C + autotools mess.


And yet, exa is deprecated :-)


If the owner is outright missing, to the point where the newer fork owners can't even get the repo archived, one would reasonably assume that they'd need to rename/rebrand the tool in order to publish it elsewhere.

It frankly doesn't seem like a deprecation in the traditional sense.


Either way, it still speaks to the maintainability of these modern replacements, many of which are personal projects.

tools like ls or grep are certainly showing their age, but that has also been their strength. The POSIX ecosystem comes in many flavors but I can always depend on it.

It’s not like I can ever expect to shell into any arbitrary system or container and expect to have exa/lsd/rg or any of these nice replacements available to me. My tooling needs to be somewhat more portable.


> My tooling needs to be somewhat more portable.

Ah yes, because it's 100% impossible to learn new tools and fall back to the core ones when you need to. ;P

I've been doing this for decades now, it's just not that big of a deal.


... as in

   if [ -z "$(which exa)" ]
   then
     LS1='ls -1'
   else
     :
   fi
   ${LS1} ${SOME_DIR} | ... 

?


I just have in my personal systems ls aliased to exa (with some of my preferred options like group-directories-first) and on other systems it's still ls. So my usage is the same regardless of whether it's exa or ls. This isn't a programming language or a complicated tool like jq vs competitors where what I need to do changes. I just get the nicer presentation on my local machine and "graceful degradation" back to the defaults of GNU ls on remote machines which don't have my preferred setup installed on them.


If you do that consider if command -v exa > /dev/null instead, so you don't spawn subprocesses unnecessarily.


Exa is an interactive utility. It doesn't make much sense to put it in a script like that. If you were to use rg or ug instead of grep, branching like that would probably be worthwhile, though.


Yes but people did not find it daunting to create a fork.

But if what the comment I replied to meant by "capable of maintaining them myself" was about having an organizational structure where they could become an official maintainer of the official project rather than needing to fork it if the owner becomes unavailable, then yep, that's a great point about these single-owner projects.

But my original interpretation was about the difficulty of maintaining the code. To me, these rust tools are a huge improvement in that way.


OK. Then we interpreted that comment differently. To me the point was that with ls, you don't need to worry about what happens when it's abandoned. You know it's going to be there in ten years. And probably fifty too.


Your interpretation is what I intended. Thing is, I don't anticipate ever needing to touch the code if I use the utilities installed by default on whatever Linux distribution I'm using (which includes Windows, which I use as an interface for WSL). Even if I was comfortable with Rust, which I'm not and haven't used in years, it would still take a lot of time to understand the code well enough to make changes.


Yeah, I totally get the longevity argument. But that precludes any useful new tools, and I'm personally never happy with the status quo; I don't think the software developers of the 60s and 70s discovered the perfect final set of useful userspace tools. And none of them would have thought they had either, and would have scoffed at the idea of being stuck indefinitely on a static set of commands. Their whole philosophy was about making it easy to make and cobble together little tools like this!

But in practice, the tooling for making those tools never got very good. (That is, in my opinion - there is at least one commenter here who replied to me about actually liking autotools, which is fair enough, just not my opinion.)

So while fully recognizing the value of the old tools that will always exist, for new useful tools, I'm very happy to see this renaissance of writing them in rust. In my opinion, it is much easier to build them, dig into their implementation, and contribute to them (especially without introducing security vulnerabilities or data races).

Where I do absolutely agree, and what I do wish for is that more of this were being done under the auspices of an organization, like how the `ls` most of us are using is likely maintained by either GNU or one of the BSD organizations.


This is a GitHub ownership model problem, not a problem with the Rust toolchain or the concept of creating modern, user-friendly command-line software.


This is a non-sequitur. The repo is deprecated because the repo owner is absent, and development is continuing in a fork.


Yetter still, it (eza)is being maintained.


[flagged]


Could you please stop posting unsubstantive comments and flamebait? You've unfortunately been doing it repeatedly. It's not what this site is for, and destroys what it is for.

If you wouldn't mind reviewing https://news.ycombinator.com/newsguidelines.html and taking the intended spirit of the site more to heart, we'd be grateful.


FWIW, my mileage definitely varied: autotools--which is quite easy if you bother to learn how it works and is then almost infinitely flexible--has pretty much never failed me (I think there was one incident for a while related to building stuff for iOS? regardless this was fixed long ago), but I have had to file and participate in a number of bugs on cargo, most of which are still open :/, and I haven't even developed anything in Rust myself yet... I've merely tried to compile and use stuff other people wrote and run into myriad ridiculous problems.


> quite easy if you bother to learn how it works

A timeless tautology.

Some things just are easy and pleasant. Caddy server, Cargo, ripgrep come to mind. Some things are easy only once you've learned them. No kidding!


We'll just have to agree to disagree about autotools :) But I feel like I did try to bother to learn how it works, but nonetheless failed, and I think you're right that it is almost infinitely flexible, but I think that is not a good thing.

Agreed that cargo has bugs and I hope it improves over time (granted: it is not at all new). But say what you want about cargo, at least it's an ethos!


> I've merely tried to compile and use stuff other people wrote and run into myriad ridiculous problems.

Which ones gave you trouble?


Try getting autotools to work on Windows. Then try getting it to compile with Visual Studio. Then try getting it to cross-compile 32-bit binaries on a 64-bit system. If you aren't bald already I promise you'll tear your hair out.


windows…


Which system do you use that cargo failed to compile? On Linux and Mac I have never had anything fail to compile for me with it.


lol, as a distro package maintainer, I've literally stopped packaging and stopped using software that uses autotools. Given me meson or give me a software compiled in a respectable language, or preferably, death. I'd take cargo and its crates.io namespace warts every day over autotools, and twice on every day of the week.


reminds me of this old joke

> I saw a book entitled "Die GNU Autotools" and I thought "My feelings exactly". Turns out the book was in German.

https://twitter.com/timmartin2/status/23365017839599616

gnu autotools i suppose works for some projects, but wow does it seem to be completely annoying to use.




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

Search: