‹ BackHN Continuity

Thread

OpenBSD Developers Reject Uutils Coreutils

31 points · 43 comments · pjmlp

  1. bel8 · · focus · HN ↗
    Discussion nhere:

    <a href="https:&#x2F;&#x2F;www.mail-archive.com&#x2F;ports@openbsd.org&#x2F;msg143875.html" rel="nofollow">https:&#x2F;&#x2F;www.mail-archive.com&#x2F;ports@openbsd.org&#x2F;msg143875.htm...

    Of note is Theo&#x27;s answer which follows below:

    ---

        Theo de Raadt Sun, 20 Sep 2026 12:03:20 -0700
        
        David Uhden Collado &lt;daviduh...@gmail.com&gt; wrote:
        
        &gt; Stuart Henderson wrote:
        &gt; &gt; On 2026&#x2F;09&#x2F;20 07:01, David Uhden Collado wrote:
        &gt; &gt;&gt; The main goal of the packaging is to make these implementations usable
        &gt; &gt;&gt; as alternatives to the existing GNU utility ports without requiring
        &gt; &gt;&gt; source changes in dependent ports.
        &gt; &gt;&gt;
        &gt; &gt;&gt; For example, uutils-coreutils installs the same g-prefixed command names
        &gt; &gt;&gt; as sysutils&#x2F;coreutils, including gcat, gls, gcp, gdate, gsort, gstat,
        &gt; &gt;&gt; gtail, gtimeout and the other GNU-compatible utilities. They are
        &gt; &gt;&gt; symlinks to the upstream multicall binary, which is installed under
        &gt; &gt;&gt; libexec&#x2F;uutils.
        &gt; &gt; ...
        &gt; &gt;&gt; Each package conflicts with its corresponding GNU implementation and
        &gt; &gt;&gt; declares the GNU port as a secondary @pkgpath.
        &gt; &gt; I don&#x27;t think this is a usable approach for ports.
        &gt; 
        &gt; The truth is, I find these Rust reimplementations quite
        &gt; interesting. Ubuntu 26.10 has already adopted uutils coreutils because
        &gt; the project has reached a level of maturity and stability where it can
        &gt; be used reliably. The other reimplementations are still more of a work
        &gt; in progress.
        
        Smells like agenda.
        
        &gt; I also think they fit quite well with OpenBSD as alternatives to GNU
        &gt; utilities, particularly because they use a permissive MIT license.
        
        Argument is vaguely like: because we already have permissive licenced
        utilities, our user base are really interested in having a second set of
        permissive licenced utilities which are very subtly different.
        
        That makes no sense. Noone wants subtly different behaving binaries as
        part of their workflow.  If someone runs the openbsd ls command as part
        of a pipeline that uses openbsd sed, or openbsd cut, or some other
        openbsd utility and it parses a non-standized output characteristic
        by accident, there are no people in this universe who wants to replace
        that ls with a different ls and get surprised by un-standardized tooling
        behaviour clash.
        
        &gt; I&#x27;m not sure yet whether it&#x27;s possible to install the individual
        &gt; utilities as separate binaries. This is new territory for me, since
        &gt; uutils is structured as a metapackage, and because it&#x27;s written in
        &gt; Rust.
        
        Oh, because it is written in Rust.
        Your agenda is showing.
    
    ---
    1. broodbucket · · focus · HN ↗
      Bit hostile. I get the point that it&#x27;s unnecessary, but the whole &quot;agenda&quot; thing feels kneejerk. Just say that being written in Rust isn&#x27;t a good enough reason for adoption.
      1. hnlmorg · · focus · HN ↗
        Yeah, that’s Theo de Raadt for you.

        In fact this feels remarkably tame by his standards.

        The guy is undoubtedly an exceptional talent. But his communication skills isn’t one of them.

        1. sdcfgy · · focus · HN ↗
          I disagree. It takes a different personality and position to maintain a project like this. If you aren’t the biggest asshole then you’re at the mercy of the biggest asshole, which probably means you’re going to end up making ideological decisions rather than engineering decisions. Especially seeing has how politicised everything is these days.

          Thus has exactly the communication style that is required to support the project.

          And yes I have been on the end of a Theo quip. It’s a badge of honour because ultimately he was right.

          1. hnlmorg · · focus · HN ↗
            I agree that strong leadership is a requirement. However there’s a huge difference between being strong against pushy arseholes, and preemptively being an arsehole because people make allowances for your behaviour to others.

            This just comes down to effective communication skills. And is evident by the number of other large projects survive without the rudeness.

            Theo isnt an example that deserves emulation and admiration.

            1. sdcfgy · · focus · HN ↗
              I’m not sure I agree. My own management experience in engineering and software has shown that strong leadership means saying no quite a lot. Ideas come with best intent mostly but dangerous realities. A soft no is a keep trying to most engineering folk. Shutting something down needs a Theo.
              1. hnlmorg · · focus · HN ↗
                You’re talking as Theo is the only form of strong management. As someone who is also an engineering manager, I can tell you that there are ways of saying “no” without being an arsehole.

                I do agree that sometimes you just need to end the discussion. But that doesn’t mean that arsehole comments should be the default character trait.

                1. sdcfgy · · focus · HN ↗
                  Theo isn’t always an asshole.
                  1. hnlmorg · · focus · HN ↗
                    But he is more often than he needs to be.

                    Or at least that’s our point of contention.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.