Back to the topic of minimalism, I had this idea of bootstrapping a minimal linux userland without any GNU tools. I was (partially) successful by using projects from the BSD/Android worlds:
-- toybox: provides a shell (sh) + coreutils (cp,ls,mv,mkdir...etc) + gunzip/bunzip
-- oksh: OpenBSD ksh ported to linux, much more powerful than toybox sh
-- sbase: from suckless.org, provides expr and tr which are missing from toybox
-- bsdgrep: FreeBSD grep ported to linux
-- oyacc: OpenBSD yacc ported to linux
-- awk: the "One True Awk" (build with oyacc instead of GNU bison)
-- curl: alternative to wget (and toybox wget which doesn't work)
-- zig cc/c++: the Zig compiler bundles clang, letting you compile C/C++ without an SDK
-- pdpmake: general POSIX make tool with some GNU extensions
-- jlibtool: alternative to libtool (not properly tested yet)
-- minlzma: provides minlzdec for decompressing xz archives
-- cedit: zero dependency TUI editor similar to nano
Those should be enough to build a fair amount of (non-complex) software, but anything else requires GNU tools. For example zig doesn't expose a linker command (ld), if I tried compiling mold or lld as an alternative I would need CMake, which doesn't compile with zig c++ (clang). A lot of software (regrettably) needs GNU autotools, which need perl, which doesn't compile without GNU Make and GCC...
While I'm pleasantly surprised that so many non-GNU tools exist for linux, I was hoping that they would have more of the functionality provided by their GNU counterparts. But I'm sure they'll get there someday.