Announcement

Collapse
No announcement yet.

Rust For The Linux Kernel Updated, Uutils As Rust Version Of Coreutils Updated Too

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Rust For The Linux Kernel Updated, Uutils As Rust Version Of Coreutils Updated Too

    Phoronix: Rust For The Linux Kernel Updated, Uutils As Rust Version Of Coreutils Updated Too

    While not marked as a pull request yet for mainlining to the kernel, Miguel Ojeda this morning sent out an updated set of patches adding in the Rust programming language support for the Linux kernel. Separately, a new version of Uutils was released this weekend as the Rust language implementation of GNU Coreutils...

    https://www.phoronix.com/scan.php?pa...lus-New-Uutils

  • #2
    Imagine if they rewrote OpenSSH in Rust.
    Speaking of OpenSSH I wish they improved the "ssh" and "ssh-keygen" tools, they are very user-unfriendly and doesn't support any long options such as --help or --version.

    Comment


    • #3
      Originally posted by uid313 View Post
      Speaking of OpenSSH I wish they improved the "ssh" and "ssh-keygen" tools, they are very user-unfriendly and doesn't support any long options such as --help or --version.
      Some history will explain this:
      Long options is a GNU thing originally. OpenSSH has it's roots in the OpenBSD project. On BSDs no tools tend to have long options, or useful help output. You are supposed to use the man pages instead. Well, that is how things were traditionally. These days there are lots of non-GNU things with long options (why not copy a good idea?). And of course there are always exceptions (dd's weird interface has very old roots for example).

      Hopefully that helps explain why.

      Comment


      • #4
        Originally posted by uid313 View Post
        Speaking of OpenSSH
        Nice way to hijack the thread. No one was speaking of OpenSSH.

        Imagine if they rewrote OpenSSH in Rust.
        But now that you have (and going on tangents is forum standard practice), while there is a rust implementation of the openssh libriaries, the current upstream source is from the openbsd project (and is ported to other OS flavors) and last I knew the upstream developers had no plans to rewrite any core openbsd functionality in rust.

        Comment


        • #5
          Originally posted by Vorpal View Post

          Some history will explain this:
          Long options is a GNU thing originally. OpenSSH has it's roots in the OpenBSD project. On BSDs no tools tend to have long options, or useful help output. You are supposed to use the man pages instead. Well, that is how things were traditionally. These days there are lots of non-GNU things with long options (why not copy a good idea?). And of course there are always exceptions (dd's weird interface has very old roots for example).

          Hopefully that helps explain why.
          Yeah, I am glad that GNU came along and introduced long options because BSD sucks and is a nightmare in terms of usability.

          Comment


          • #6
            As of now Uutils/rust only supports ARM and x86, so its only logical that rust has to be optional. What are the most important architectures one has to support these days? I would guess mips, risc-v, powerpc, anything else? Is this list still up to date?
            Originally posted by uid313 View Post
            Yeah, I am glad that GNU came along and introduced long options because BSD sucks and is a nightmare in terms of usability.
            Having never used BSD, that sounds like a hateboy thing to say. After all it is the second most used embedded OS behind Linux. Why would anyone use it if it sucks and is a nightmare in usability?

            Comment


            • #7
              Originally posted by Anux View Post
              Having never used BSD, that sounds like a hateboy thing to say. After all it is the second most used embedded OS behind Linux.
              BSD Final Release 4.4-Lite2 / June 1995; 26 years ago
              What?

              Comment


              • #8
                Originally posted by uid313 View Post
                Imagine if they rewrote OpenSSH in Rust.
                Speaking of OpenSSH I wish they improved the "ssh" and "ssh-keygen" tools, they are very user-unfriendly and doesn't support any long options such as --help or --version.
                I'd very much wish their approach at deprecating scp weren't making it an alias for sftp. If you want to drop a command, just drop it, don't make it incompatible with every other implementation of SSH instead. I was very puzzled when copying files to a computer with Dropbear suddenly break because it didn't have the sftpserver program.

                Comment


                • #9
                  Originally posted by Anux View Post
                  As of now Uutils/rust only supports ARM and x86, so its only logical that rust has to be optional. What are the most important architectures one has to support these days? I would guess mips, risc-v, powerpc, anything else? Is this list still up to date?
                  My guess is it's just what they test it with. If the code doesn't rely on arch specific stuff and is endian correct (optionally really, most archs are little endian anyway), it should just work, but it would be dishonest to advertise as such if you haven't tested it. Anyway, yes, I think it should remain optional, too.

                  Originally posted by Anux View Post
                  Having never used BSD, that sounds like a hateboy thing to say. After all it is the second most used embedded OS behind Linux. Why would anyone use it if it sucks and is a nightmare in usability?
                  Embedded has different priorities. Busybox sucks too in terms of usability, but the trick is that you don't use the command line utils all that often in embedded, you mostly script stuff once and maybe plug a debugger from a desktop/laptop from time to time. A smaller footprint and easier porting is a much bigger priority than usability in embedded, and the BSDs are allegedly much easier to port due to their intentional focus on Unix-like simplicity.
                  Regarding whether you used it, if you used a Mac (which seems to be a popular choice by employers) all the low level utils are borrowed from FreeBSD, as well as much of the stdlib (sans porting to Mach and all that).

                  Originally posted by uid313 View Post
                  Yeah, I am glad that GNU came along and introduced long options because BSD sucks and is a nightmare in terms of usability.
                  My employer makes me use MacOS, which ships a (possibly outdated) BSD userspace for the core utils. I can't emphasize enough how annoying I find them at times. We get it, you're "a real Unix", but heck, that shouldn't mean you can't have some sanity as well.

                  Comment


                  • #10
                    Originally posted by Anux View Post
                    Having never used BSD, that sounds like a hateboy thing to say. After all it is the second most used embedded OS behind Linux. Why would anyone use it if it sucks and is a nightmare in usability?
                    Because BSD is free and has a liberal license that allows companies to make use of it without paying anything, that's why they use it. Then they put some interface on top of it so that the customers never have to interact with the underlying system so then it doesn't matter to the customers that the usability is terrible.

                    Comment

                    Working...
                    X