| 
									
										
										
										
											2014-02-12 14:34:09 +00:00
										 |  |  | sbase - suckless unix tools | 
					
						
							|  |  |  | =========================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | sbase  is a  collection of  unix  tools that  are inherently  portable | 
					
						
							|  |  |  | across UNIX and UNIX-like systems. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The following programs are currently implemented: | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-11-13 14:52:41 +00:00
										 |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |UTILITY  |POSIX      |FEATURES| | 
					
						
							|  |  |  | |         |CONFORMANCE|MISSING | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |basename |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |cal      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |cat      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |chgrp    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |chmod    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |chown    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |chroot   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |cksum    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |cmp      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |col      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |cols     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |comm     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |cp       |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |csplit   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |cut      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |date     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |dirname  |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |du       |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |echo     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |env      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |expand   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |expr     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |false    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |fold     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |grep     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |head     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |hostname |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |kill     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |link     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |ln       |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |logname  |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |ls       |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |md5sum   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |mkdir    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |mkfifo   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |mktemp   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |mv       |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |nice     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |nl       |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |nohup    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |paste    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |printenv |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |printf   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |pwd      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |readlink |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |renice   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |rm       |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |rmdir    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |sleep    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |setsid   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |sort     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |split    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |sponge   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |strings  |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |sync     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |tail     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |tar      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |tee      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |test     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |touch    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |tr       |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |true     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |tty      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |uudecode |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |uuencode |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |uname    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |unexpand |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |uniq     |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |unlink   |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |seq      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |sha1sum  |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |sha256sum|           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |sha512sum|           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |wc       |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |xargs    |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							|  |  |  | |yes      |           |        | | 
					
						
							|  |  |  | +---------+-----------+--------+ | 
					
						
							| 
									
										
										
										
											2014-02-12 14:34:09 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-02-12 18:39:13 +00:00
										 |  |  | The  complement of  sbase  is  ubase[1] which  is  Linux-specific  and | 
					
						
							| 
									
										
										
										
											2014-02-12 14:34:09 +00: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 | 
					
						
							|  |  |  | individual tools to sbase-box. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 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. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-02-27 16:54:40 +00:00
										 |  |  | sbase  also compiles  and runs  on minix3  with slight  modifications. | 
					
						
							|  |  |  | They do  not provide mmap()/munmap()  so you need to  use minix_mmap() | 
					
						
							|  |  |  | and minix_munmap() respectively. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-02-12 14:34:09 +00:00
										 |  |  | 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/ |