2014-02-12 09:34:09 -05:00
|
|
|
sbase - suckless unix tools
|
|
|
|
===========================
|
|
|
|
|
|
|
|
sbase is a collection of unix tools that are inherently portable
|
|
|
|
across UNIX and UNIX-like systems.
|
|
|
|
|
2015-03-23 11:22:00 -04:00
|
|
|
The following tools are implemented:
|
2014-11-20 18:01:56 -05:00
|
|
|
|
2015-03-23 11:22:00 -04:00
|
|
|
'#' -> UTF-8 support, '=' -> Implicit UTF-8 support, '*' -> Finished,
|
|
|
|
'|' -> Audited, 'o' -> POSIX 2013 compliant, 'x' -> Non-POSIX,
|
|
|
|
'()' -> Petty flag
|
|
|
|
|
|
|
|
UTILITY MISSING FLAGS
|
|
|
|
------- -------------
|
|
|
|
=*| basename .
|
|
|
|
=*| cal .
|
|
|
|
=*| cat .
|
|
|
|
=*| chgrp .
|
|
|
|
=*| chmod .
|
|
|
|
=*| chown .
|
|
|
|
=*|x chroot .
|
|
|
|
=*| cksum .
|
|
|
|
=*| cmp .
|
|
|
|
#*|x cols .
|
|
|
|
#*|x col .
|
|
|
|
=*| comm .
|
|
|
|
=*| cp (-i)
|
|
|
|
=*|x cron .
|
|
|
|
#*| cut .
|
|
|
|
=*| date .
|
|
|
|
=*| dirname .
|
|
|
|
=*| du .
|
|
|
|
=*| echo .
|
|
|
|
=*| env .
|
|
|
|
#*| expand .
|
|
|
|
#*| expr .
|
|
|
|
=*| false .
|
|
|
|
= find .
|
|
|
|
#*| fold .
|
|
|
|
=* grep .
|
|
|
|
=*| head .
|
|
|
|
=*|x hostname .
|
|
|
|
=*| kill .
|
|
|
|
=*| link .
|
|
|
|
=*| ln .
|
|
|
|
=*| logger .
|
|
|
|
=*| logname .
|
|
|
|
#* ls (-C, -m, -s, -x)
|
|
|
|
=*|x md5sum .
|
|
|
|
=*| mkdir .
|
|
|
|
=*| mkfifo .
|
|
|
|
=*|x mktemp .
|
|
|
|
=*| mv (-i)
|
|
|
|
=*| nice .
|
|
|
|
#*| nl .
|
|
|
|
=*| nohup .
|
|
|
|
#*| paste .
|
|
|
|
=*|x printenv .
|
|
|
|
#*| printf .
|
|
|
|
=*| pwd .
|
|
|
|
=*|x readlink .
|
|
|
|
=*| renice .
|
|
|
|
=*| rm (-i)
|
|
|
|
=*| rmdir .
|
|
|
|
# sed .
|
|
|
|
=*|x seq .
|
|
|
|
=*|x setsid .
|
|
|
|
=*|x sha1sum .
|
|
|
|
=*|x sha256sum .
|
|
|
|
=*|x sha512sum .
|
|
|
|
=*| sleep .
|
|
|
|
sort -d, -f, -i
|
|
|
|
=*| split .
|
|
|
|
=*|x sponge .
|
|
|
|
#*| strings .
|
|
|
|
=*|x sync .
|
|
|
|
=*| tail .
|
|
|
|
=*|x tar .
|
|
|
|
=*| tee .
|
|
|
|
=*| test .
|
|
|
|
=*| time .
|
|
|
|
=*| touch .
|
|
|
|
#*| tr .
|
|
|
|
=*| true .
|
|
|
|
=*| tty .
|
|
|
|
=*| uname .
|
|
|
|
#*| unexpand .
|
|
|
|
=*| uniq .
|
|
|
|
=*| unlink .
|
|
|
|
=*| uudecode .
|
|
|
|
=*| uuencode .
|
|
|
|
#*| wc .
|
|
|
|
=*| xargs (-p)
|
|
|
|
=*|x yes .
|
2014-11-20 18:01:56 -05:00
|
|
|
|
2014-02-12 13:39:13 -05:00
|
|
|
The complement of sbase is ubase[1] which is Linux-specific and
|
2014-02-12 09:34:09 -05:00
|
|
|
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
|
2015-02-28 09:40:16 -05:00
|
|
|
individual tools to sbase-box or run: make sbase-box-install
|
2014-02-12 09:34:09 -05:00
|
|
|
|
|
|
|
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/
|