1) Update manpage to current style 2) Line spacing 3) Local variable grouping 4) check for getline >= 0 instead of != -1 5) error message cleanup
		
			
				
	
	
		
			123 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			123 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 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 ('*' == finished, '#' == UTF-8 support,
 | |
| '=' == implicit UTF-8 support, '|' == audited):
 | |
| 
 | |
|     UTILITY         POSIX 2008 COMPLIANT         MISSING OPTIONS
 | |
|     -------         --------------------         ---------------
 | |
| =*| basename        yes                          none
 | |
| =*  cal             yes                          none
 | |
| =*| cat             yes                          none
 | |
| =*  chgrp           yes                          none
 | |
| =*| chmod           yes                          none
 | |
| =*  chown           yes                          none
 | |
| =*| chroot          non-posix                    none
 | |
| =*  cksum           yes                          none
 | |
| =*  cmp             yes                          none
 | |
| #*  cols            non-posix                    none
 | |
|     col             yes                          none
 | |
| =*  comm            yes                          none
 | |
| =*| cp              yes                          none (-i)
 | |
| =*  cron            non-posix                    none
 | |
| #*  cut             yes                          none
 | |
| =*| date            yes                          none
 | |
| =*| dirname         yes                          none
 | |
| =*  du              yes                          none
 | |
| =*| echo            yes                          none
 | |
| =*| env             yes                          none
 | |
| #*  expand          yes                          none
 | |
| #*  expr            yes                          none
 | |
| =*| false           yes                          none
 | |
| =   find            yes                          none
 | |
| #*  fold            yes                          none
 | |
| =*  grep            yes                          none
 | |
| =*| head            yes                          none
 | |
| =*| hostname        non-posix                    none
 | |
| =*  kill            yes                          none
 | |
| =*| link            yes                          none
 | |
| =*| ln              yes                          none
 | |
| =*| logger          yes                          none
 | |
| =*  logname         yes                          none
 | |
| =   ls              no                           (-C), -S, -f, -m, -s, -x
 | |
| =*| md5sum          non-posix                    none
 | |
| =*| mkdir           yes                          none
 | |
| =*| mkfifo          yes                          none
 | |
| =*  mktemp          non-posix                    none
 | |
| =*| mv              yes                          none (-i)
 | |
| =*| nice            yes                          none
 | |
| =   nl              no                           -d, -f, -h, -l, -p
 | |
| =*| nohup           yes                          none
 | |
| #*  paste           yes                          none
 | |
| =*| printenv        non-posix                    none
 | |
| #*  printf          yes                          none
 | |
| =*| pwd             yes                          none
 | |
| =   readlink        non-posix                    none
 | |
| =*  renice          yes                          none
 | |
| =*| rm              yes                          none (-i)
 | |
| =*| rmdir           yes                          none
 | |
| #   sed
 | |
|     seq             non-posix                    none
 | |
| =*| setsid          non-posix                    none
 | |
| =*| sha1sum         non-posix                    none
 | |
| =*| sha256sum       non-posix                    none
 | |
| =*| sha512sum       non-posix                    none
 | |
| =*| sleep           yes                          none
 | |
|     sort            no                           -m, -o, -d, -f, -i
 | |
| =*  split           yes                          none
 | |
| =*| sponge          non-posix                    none
 | |
| #*  strings         yes                          none
 | |
| =*  sync            non-posix                    none
 | |
| =*  tail            yes                          none
 | |
| =*  tar             non-posix                    none
 | |
| =*| tee             yes                          none
 | |
| =*  test            yes                          none
 | |
| =*| time            yes                          none
 | |
| =*  touch           yes                          none
 | |
| #*  tr              yes                          none
 | |
| =*| true            yes                          none
 | |
| =*| tty             yes                          none
 | |
| =*| uname           yes                          none
 | |
| #*  unexpand        yes                          none
 | |
| =*  uniq            yes                          none
 | |
| =*| unlink          yes                          none
 | |
| =*  uudecode        yes                          none
 | |
| =*  uuencode        yes                          none
 | |
| #*  wc              yes                          none
 | |
| =   xargs           no                           -I, -L, -p, -s, -t, -x
 | |
| =*| yes             non-posix                    none
 | |
| 
 | |
| 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/
 |