‹ BackHN Continuity

Thread

Upgrade your desktop: Ubuntu 26.04.1 LTS is now available

80 points · 103 comments · d99kris

  1. edelbitter · · focus · HN ↗
    People switching or upgrading from soon-EoL versions beware: Ubuntu now defaults to uutils, which are reimplementations of GNU utils that deliberately do attempt to not read the original source (to be legally cleared to not comply with its copyleft expectations). The "correct" behavior is not always evident from POSIX, so uutils is by design an imperfect imitation with a long way to go for bug-by-bug compatibility.

    While most data loss severity bugs reported in the 25.10 round of testing [1] have been resolved, the sheer volume of unexpected breakage suggests that there are more to be discovered. Most impacted are unit tests and shell scripts that expect some utility to return syscall errors in stderr and propagate it to a non-zero exit code, where on Ubuntu 26.04 they might silently swallow (apparent, partial or complete) failure to execute the requested action.

    (Also, uutils binaries are ridiculously large, but this is not such big deal: Ubuntu has for many years already built rather large initramfs and has yet to make progress in automatically detecting which firmware blobs cannot possibly be needed on a given system. I did run into an "undersized" partition layout because of Rust duplication.. but only on systems upgraded from ancient times before this was the norm.)

    [1]: <a href="https:&#x2F;&#x2F;github.com&#x2F;uutils&#x2F;coreutils&#x2F;issues?q=is%3Aissue+%28label%3Areported-canonical+OR+label%3Areported-canonical-2%29" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;uutils&#x2F;coreutils&#x2F;issues?q=is%3Aissue+%28l...

    1. edelbitter · · focus · HN ↗
      On a more positive note, the thing that causes me some temporary pain might still be awesome for the long-term success of GNU&#x2F;Linux (or whatever we shall call it now, still looking for an updated pasta[1] recipe). As much as it was a little too early a little too move fast break stuff, I applaud Ubuntu for demanding the drop-in-replacement to be possible.

      To get where they are now, uutils needed to do the thing nobody bothered to do for 30 years: proper cli unit tests, the kind with which you can compare busybox&#x2F;toybox&#x2F;GNU&#x2F;uutils&#x2F;Darwin without depending on implementation details [2]. This will net more future good than current harm. Even if the tools cannot be changed to have fewer nonsensical edge cases for compatibility reasons, at least now I can ask $currentLLM to write me a better manpage, one that includes the gotchas [3] and factual errors that the 1996 (partly updated in 2004) version still fails. And improve shellcheck so even those among future generations that still need the shell as we know it today are not bitten by its warts as much.

      [1]: <a href="https:&#x2F;&#x2F;safereddit.com&#x2F;r&#x2F;copypasta&#x2F;comments&#x2F;av4rl9&#x2F;what_youre_referring_to_as_linux_is_in_fact&#x2F;" rel="nofollow">https:&#x2F;&#x2F;safereddit.com&#x2F;r&#x2F;copypasta&#x2F;comments&#x2F;av4rl9&#x2F;what_your... [2]: <a href="https:&#x2F;&#x2F;github.com&#x2F;uutils&#x2F;coreutils-tracking" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;uutils&#x2F;coreutils-tracking [3]: <a href="https:&#x2F;&#x2F;www.pixelbeat.org&#x2F;docs&#x2F;coreutils-gotchas.html" rel="nofollow">https:&#x2F;&#x2F;www.pixelbeat.org&#x2F;docs&#x2F;coreutils-gotchas.html

      1. collinfunk · · focus · HN ↗
        The [2] link is uutils using the test suite that the GNU coreutils maintainers, including myself, created and continue to improve. This test suite has long predated uutils and gets equal, if not more, man-hours than the program implementations themselves.

        When you say that no one bothered to do this testing until uutils existed, it feels like you are discrediting our work. Any other implementation is free to use our test suite, as long as they respect its licensing. Doing so is relatively straightforward; you just need to point a shell variable to the place with the just-built binaries.

        Note that the man pages are a quick reference explaining the options. A lot of gotchas and further explanations are located in the texinfo manual, which is over 300 pages in PDF form [1]. If you notice areas where it could be improved, I would be happy to review your bug report sent to bug-coreutils@gnu.org.

        [1] <a href="https:&#x2F;&#x2F;www.gnu.org&#x2F;software&#x2F;coreutils&#x2F;manual&#x2F;coreutils.html" rel="nofollow">https:&#x2F;&#x2F;www.gnu.org&#x2F;software&#x2F;coreutils&#x2F;manual&#x2F;coreutils.html

        1. edelbitter · · focus · HN ↗
          Worse: I am writing angry and not particularly respectful comments about things that mostly happened&#x2F;did not happen before I was born and very obviously those things should not be judged by what I would consider an ideal outcome by the standards of today, at least not before sending in a few patches to help with that. Sorry.

          Your work, specifically your attention to the reusability&#x2F;portability of GNU tests intensifying at the same time the uutils project started to close in on the remaining unusable (for that purpose) tests, is very much appreciated and has helped me well beyond its original scope.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.