| sbase - suckless unix tools |
| =========================== |
| |
| sbase is a collection of unix tools that are inherently portable |
| across UNIX and UNIX-like systems. |
| |
| The following tools are implemented: |
| |
| '#' -> UTF-8 support, '=' -> Implicit UTF-8 support, '*' -> Finished, |
| '|' -> Audited, 'o' -> POSIX 2013 compliant, 'x' -> Non-POSIX, |
| '()' -> Petty flag |
| |
| UTILITY MISSING |
| ------- ------- |
| =*|o basename . |
| =*|o cal . |
| =*|o cat . |
| =*|o chgrp . |
| =*|o chmod . |
| =*|o chown . |
| =*|x chroot . |
| =*|o cksum . |
| =*|o cmp . |
| #*|x cols . |
| =*|o comm . |
| =*|o cp (-i) |
| =*|x cron . |
| #*|o cut . |
| =*|o date . |
| =*|o dirname . |
| =*|o du . |
| =*|o echo . |
| o ed . |
| =*|o env . |
| #*|o expand . |
| #*|o expr . |
| =*|o false . |
| = find . |
| =* x flock . |
| #*|o fold . |
| =*|o getconf (-v) |
| =*|o grep . |
| =*|o head . |
| =*|x hostname . |
| =*|x install . |
| =* o join . |
| =*|o kill . |
| =*|o link . |
| =*|o ln . |
| =*|o logger . |
| =*|o logname . |
| #* o ls (-C, -k, -m, -p, -s, -x) |
| =*|x md5sum . |
| =*|o mkdir . |
| =*|o mkfifo . |
| =*|x mktemp . |
| =*|o mv (-i) |
| =*|o nice . |
| #*|o nl . |
| =*|o nohup . |
| =*|o od . |
| #* o pathchk . |
| #*|o paste . |
| =*|x printenv . |
| #*|o printf . |
| =*|o pwd . |
| =*|x readlink . |
| =*|o renice . |
| =*|o rm (-i) |
| =*|o rmdir . |
| # sed . |
| =*|x seq . |
| =*|x setsid . |
| =*|x sha1sum . |
| =*|x sha256sum . |
| =*|x sha512sum . |
| =*|o sleep . |
| #*|o sort . |
| =*|o split . |
| =*|x sponge . |
| #*|o strings . |
| =*|x sync . |
| =*|o tail . |
| =*|x tar . |
| =*|o tee . |
| =*|o test . |
| =*|x tftp . |
| =*|o time . |
| =*|o touch . |
| #*|o tr . |
| =*|o true . |
| =* o tsort . |
| =*|o tty . |
| =*|o uname . |
| #*|o unexpand . |
| =*|o uniq . |
| =*|o unlink . |
| =*|o uudecode . |
| =*|o uuencode . |
| #*|o wc . |
| =*|x which . |
| =*|x whoami . |
| =*|o xargs (-p) |
| =*|x yes . |
| |
| The complement of sbase is ubase[1] which is Linux-specific and |
| provides all the non-portable tools. Together they are intended to |
| form a base system similar to busybox but much smaller and suckless. |
| |
| Building |
| -------- |
| |
| To build sbase, simply type make. You may have to fiddle with |
| config.mk depending on your system. |
| |
| You can also build sbase-box, which generates a single binary |
| containing all the required tools. You can then symlink the |
| individual tools to sbase-box or run: make sbase-box-install |
| |
| Ideally you will want to statically link sbase. If you are on Linux |
| we recommend using musl-libc[2]. |
| |
| Portability |
| ----------- |
| |
| sbase has been compiled on a variety of different operating systems, |
| including Linux, *BSD, OSX, Haiku, Solaris, SCO OpenServer and others. |
| |
| Various combinations of operating systems and architectures have also |
| been built. |
| |
| You can build sbase with gcc, clang, tcc, nwcc and pcc. |
| |
| [1] http://git.suckless.org/ubase/ |
| [2] http://www.musl-libc.org/ |