What would you differently, if you could redesign Linux userland from scratch?

11 points by signa11 3 days ago

Prompted from a similar discussion at lobsters (and i am copying the text verbatim)

    If we kept Linux the kernel exactly as it is today, but redesigned 
    everything in userland from scratch (the init system, the filesystem 
    hierarchy, the shell, libc, packaging, configuration, dbus, polkit, PAM, 
    etc.), what would you do differently, and why?
here is the link to the original lobsters post: https://lobste.rs/s/ko5i9y/if_you_could_redesign_linux_userland_from
d3Xt3r 2 days ago

I'd use:

- Nitro instead of systemd

- musl instead of glibc

- LLVM/clang instead of gcc

- uutils instead of GNU coreutils

- apk as a package manager

- r/o filesystem in a virtual A/B configuration for immutability and instant-reboots (no post-update reboot delays unlike rpm-ostree).

- A minimal Rust-based WM/DE similar to XFCE/LabWC but with user-friendly GUI config and sane defaults, with zero GTK and Qt components.

- Ideally all GUIs will be coded in something fast and minimal, like e-GUI. Ideally the entire system will be free of bloat like GTK/Qt/Electron/Javascript crap, and anything that uses it will be containerised.

brudgers 9 hours ago

  Nothing.

  Because breaking existing systems is bad design.
                                                 ^ That's a period
jsifly 3 days ago

I'd have init as a JavaScript runtime, probably some fork of Node that's been rewritten in a memory-safe language like Ada or Rust, and everything else in the system as JavaScript or, preferably, TypeScript programs. Basically, start from scratch and do it more safely and better. Like Android tried to but more modern.

firefax 6 hours ago

replace bash with qbasic

gus_massa 2 days ago

Isn't Android somewhat like that?