Live data from Hacker News

Swapping GNU coreutils for uutils coreutils on Gentoo Linux

joshmcguigan.com

11–20 of 134 posts

Re: Swapping GNU coreutils for uutils coreutils on Gentoo Linux

#11
post #7

Earlier quoted context omitted.

What issues have you experienced due to the merging of those directories?

That would imply that I've drank the Fedora/FDO/systemd Kool-Aid and trashed a perfectly working FHS. I have no interest in wasting the time trying to conform to their nonsense.

Okay; what problems would you expect to hit if you used a system where they were merged?

(My best thought so far is having multiple hosts sharing a single /usr over NFS while having per-host root filesystems, but I've never actually seen that done. I've also thought about building a distro that kept its initramfs as root and just mounted everything else into it, but that's even further off the beaten path.)

Re: Swapping GNU coreutils for uutils coreutils on Gentoo Linux

#12

No, please don't! At least, not if you aren't equipped to handle the fallout yourself and not until these tools are further refined! I'm a fish-shell developer and I just dealt with a user that was getting bizarre test failures. Turns out the developers didn't account for basic things like the normalcy of `cat` having its output fd closed mid-stream (e.g. you are piping cat to something and that something exits befor…

It’s somewhat inevitable that something will try to replace the C implementation of coreutils. Hopefully uutils will fix whichever bugs are reported upstream to lower the compatibility load though

Why? Are you unhappy with the IMO very good test coverage, or has it not been working well for you the past checks notes decades?

Re: Swapping GNU coreutils for uutils coreutils on Gentoo Linux

#13
post #10
post #6

Earlier quoted context omitted.

The original history behind a lot of original UNIX directory structure is engineers running out of disk space on a PDP-11 50 years ago and shuffling things around to keep the system operating. Other reasoning has been piled on top over the years.

Yes, and undoing this means it's no longer UNIX as it will no longer run on that PDP-11! (Unless you can afford a bigger disk I guess.)

If "being UNIX" hinges on the fucking filesystem structure I honestly am fine with it "not being UNIX"

Re: Swapping GNU coreutils for uutils coreutils on Gentoo Linux

#14
I think the author swapped problems #1 and #2. The first one (name clash between different packages) is triggered only if the binaries are called the same, that is after you fix the second one (binaries having uu- prefix).

Problem #5 is not well explained: if /usr/bin and /usr/sbin are conflated, how could cowsay not find its templates? Paths relative to the two directories are the same. For example, if cowsay is looking for its templates in ../share/cows, such relative path points to the same destination no matter if the binary is in bin or sbin.

Re: Swapping GNU coreutils for uutils coreutils on Gentoo Linux

#15
post #12

Earlier quoted context omitted.

It’s somewhat inevitable that something will try to replace the C implementation of coreutils. Hopefully uutils will fix whichever bugs are reported upstream to lower the compatibility load though

Why? Are you unhappy with the IMO very good test coverage, or has it not been working well for you the past checks notes decades?

Author didn't state a preference either way, but why do you care? Nothing is wrong with a reimplementation, as using it will nail down any untested/undocumented behavior of the original code.

Re: Swapping GNU coreutils for uutils coreutils on Gentoo Linux

#16
post #8

Earlier quoted context omitted.

It’s somewhat inevitable that something will try to replace the C implementation of coreutils. Hopefully uutils will fix whichever bugs are reported upstream to lower the compatibility load though

At least it's somewhat possible to reliably test behavior of these against GNU coreutils. Pull down some archaic C++ project with a pile of janky shell scripts involved in the build (Chromium might be a good target) and compare final results.

One could argue that building Gentoo is an excellent way to exercise things:) Which, granted, is kinda cheating since you could just `emerge chromium` or whatever... but IMHO even just making portage itself happy is a good first step.

Re: Swapping GNU coreutils for uutils coreutils on Gentoo Linux

#17
It’s a shame to see all this effort going toward replacing core GPL licensed utilities with permissive ones. It seems like a particularly common thing in the Rust community.

It feels disrespectful of the intentions of the work that went into the tools that are being cloned.

Re: Swapping GNU coreutils for uutils coreutils on Gentoo Linux

#18

> This Gentoo setup has /bin, /sbin, /usr/bin, and /usr/sbin all merged. I hope this isn't going to be the norm in the future, but Gentoo has been making my life difficult for years as it is... it's as if the developers don't test or use what they are forcing on everyone.

They might as well rename it C:/Linux/System32 while they're at it. The separate paths were originally done for reasons but since you can't install a mainstream distro with Linux is becoming less and less like UNIX every day.

> The separate paths were originally done for reasons

These reasons were not originally philosophical in nature: http://lists.busybox.net/pipermail/busybox/2010-December/074...

IMO, keeping /usr/bin and /usr/local/bin separate from /bin doesn’t serve any useful purpose except historical continuity. You can’t really get rid of those paths without breaking things (e.g. since /usr/bin/env is usually hardcoded in shebangs), but symlinking them together is a practical way of effectively merging them.

Re: Swapping GNU coreutils for uutils coreutils on Gentoo Linux

#20

It’s a shame to see all this effort going toward replacing core GPL licensed utilities with permissive ones. It seems like a particularly common thing in the Rust community. It feels disrespectful of the intentions of the work that went into the tools that are being cloned.

GPL only took off, because Berkeley was rather busy with AT&T, and GNU was there for Linus to reach for.

It isn't only Rust, it is any language that favours static linking by default.

Post reply on HN