logo

utils-std

Collection of commonly available Unix tools
commit: 931d36451ec524951e32f2ac14bf116bd283fd03
parent c421a45c866e53faa4a29f7d8a159514c04f1774
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date:   Tue,  2 Apr 2024 01:06:09 +0200

README: rephrase things a bit, util-linux kind of stuff is out

Diffstat:

MREADME.md11++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/README.md b/README.md @@ -8,18 +8,19 @@ Tested on Linux(musl), FreeBSD, NetBSD, OpenBSD: <https://builds.sr.ht/~lanodan/ ## Design differences - All programs prefix their messages with their name. This way you don't end up with context-less messages in scripts. -- When the output is structured data, a terminal gets human-oriented output, others like piped programs get machine-oriented output (line separation, CSV, JSON, …). Prior art: most `ls(1)` implementations, i3/sway, FreeBSD utils via `libxo`, … +- When the output is structured data, a terminal gets human-oriented output, others like piped programs get machine-oriented output (no padding, line separation, CSV, JSON, …). Prior art: most `ls(1)` implementations, i3/sway, FreeBSD utils via `libxo`, … - As the `utmp` and `wtmp` files are considered broken by design, utilities dependant on them like `who` and `lastlog` won't be implemented. Proper authentication logs shouldn't be writable into by multiple programs, some of them third-party (like SSH and Display Managers typically are). ## Goals -- (long-run) Effectively serve as one of the blocks to replace BusyBox, GNU coreutils, … +- (long-run) Effectively serve as one of the blocks to get base utilities, replacing GNU coreutils and part of BusyBox/ToyBox - Code readability and hackability -- Portability +- Portability, should run on modern libre POSIX systems as to not introduce vendor-locking - Efficiency, but not without sacrifying the other goals ## Non-Goals -- Reimplement complex tools that already have great code or ought to be maintained separately -- Implement niche tools, [utils-extra](https://hacktivis.me/git/utils-extra) and [moreutils](https://joeyh.name/code/moreutils/) +- Reimplementing complex utilities that already have great code or ought to be maintained separately +- Implementing utilities which aren't in your usual base system. This is covered by [utils-extra](https://hacktivis.me/git/utils-extra), and I'd also recommend checking out [moreutils](https://joeyh.name/code/moreutils/) +- Reimplementing OS-specific utilities like [util-linux](https://www.kernel.org/pub/linux/utils/util-linux/) ## Dependencies - POSIX System