| 
									
										
										
										
											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. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  | The following tools are implemented ('*' == finished, '#' == UTF-8 support, | 
					
						
							|  |  |  | '=' == implicit UTF-8 support): | 
					
						
							| 
									
										
										
										
											2014-11-20 23:01:56 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-01-18 19:41:14 +01:00
										 |  |  |    UTILITY         POSIX 2008 COMPLIANT            MISSING OPTIONS | 
					
						
							|  |  |  |    -------         --------------------            --------------- | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  | =* basename        yes                             none | 
					
						
							|  |  |  | =* cal             yes                             none | 
					
						
							|  |  |  | =* cat             yes                             none | 
					
						
							|  |  |  | =  chgrp           no                              -h, -H, -L, -P | 
					
						
							|  |  |  | =* chmod           yes                             none | 
					
						
							|  |  |  | =  chown           no                              -h, -H, -L, -P | 
					
						
							|  |  |  | =  chroot          non-posix                       none | 
					
						
							|  |  |  | =* cksum           yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-23 23:00:20 +01:00
										 |  |  |    cmp             yes                             none | 
					
						
							|  |  |  |    cols            non-posix                       none | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  | =* comm            yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-23 23:31:46 +01:00
										 |  |  | =  cp              no                              -H, (-i), -L | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  | =* cron            non-posix                       none | 
					
						
							| 
									
										
										
										
											2015-01-22 12:32:50 +01:00
										 |  |  | #* cut             yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-23 22:54:25 +01:00
										 |  |  | =* date            yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-23 23:17:54 +01:00
										 |  |  | =* dirname         yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-23 23:31:46 +01:00
										 |  |  | =  du              no                              -H, -L, (-x) | 
					
						
							| 
									
										
										
										
											2015-01-23 23:49:24 +01:00
										 |  |  | =* echo            yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-24 00:22:06 +01:00
										 |  |  | =* env             yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  | #  expand          yes                             none | 
					
						
							|  |  |  |    expr            yes                             none | 
					
						
							|  |  |  | =* false           yes                             none | 
					
						
							|  |  |  |    fold            yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-23 23:00:20 +01:00
										 |  |  |    grep            yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  |    head            yes                             none | 
					
						
							|  |  |  | =  hostname        non-posix                       none | 
					
						
							|  |  |  | =* kill            yes                             none | 
					
						
							|  |  |  | =  link            yes                             none | 
					
						
							|  |  |  | =  ln              yes                             none | 
					
						
							|  |  |  | =* logger          yes                             none | 
					
						
							|  |  |  | =  logname         yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-20 16:50:37 +00:00
										 |  |  | =  ls              no                              -C, -R, -q, -u | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  |    md5sum          non-posix                       none | 
					
						
							|  |  |  | =  mkdir           yes                             none | 
					
						
							|  |  |  | =  mkfifo          yes                             none | 
					
						
							|  |  |  | =  mktemp          non-posix                       none | 
					
						
							| 
									
										
										
										
											2015-01-23 23:31:46 +01:00
										 |  |  | =  mv              yes                             (-i) | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  | =  nice            yes                             none | 
					
						
							|  |  |  | =  nl              no                              -d, -f, -h, -l, -n, -p, -v, -w | 
					
						
							|  |  |  | =  nohup           yes                             none | 
					
						
							|  |  |  |    paste           yes                             none | 
					
						
							|  |  |  | =  printenv        non-posix                       none | 
					
						
							|  |  |  |    printf          stolen                          stolen | 
					
						
							|  |  |  | =* pwd             yes                             none | 
					
						
							|  |  |  | =  readlink        non-posix                       none | 
					
						
							|  |  |  | =  renice          yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-23 23:31:46 +01:00
										 |  |  | =  rm              yes                             (-i) | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  | =  rmdir           no                              -p | 
					
						
							|  |  |  | =  sleep           yes                             none | 
					
						
							|  |  |  | =  setsid          non-posix                       none | 
					
						
							|  |  |  |    sort            no                              -m, -o, -d, -f, -i | 
					
						
							|  |  |  |    split           yes                             none | 
					
						
							|  |  |  | =  sponge          non-posix                       none | 
					
						
							|  |  |  |    strings         no                              -a, -n, -t | 
					
						
							|  |  |  | =  sync            non-posix                       none | 
					
						
							|  |  |  | =  tail            no                              -c, -f | 
					
						
							|  |  |  | =  tar             non-posix                       none | 
					
						
							| 
									
										
										
										
											2015-01-23 22:04:19 +01:00
										 |  |  | =* tee             yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  |    test            yes                             none | 
					
						
							| 
									
										
										
										
											2015-01-20 11:22:09 +00:00
										 |  |  | =  touch           no                              -r | 
					
						
							| 
									
										
										
										
											2015-01-18 19:36:13 +01:00
										 |  |  | #* tr              yes                             none | 
					
						
							|  |  |  | =* true            yes                             none | 
					
						
							|  |  |  | =  tty             yes                             none | 
					
						
							|  |  |  | =  uudecode        no                              -o | 
					
						
							|  |  |  | =  uuencode        no                              -m | 
					
						
							|  |  |  | =  uname           yes                             none | 
					
						
							|  |  |  | #  unexpand        yes                             none | 
					
						
							|  |  |  | =  uniq            no                              -f, -s | 
					
						
							|  |  |  | =  unlink          yes                             none | 
					
						
							|  |  |  |    seq             non-posix                       none | 
					
						
							|  |  |  | =  sha1sum         non-posix                       none | 
					
						
							|  |  |  | =  sha256sum       non-posix                       none | 
					
						
							|  |  |  | =  sha512sum       non-posix                       none | 
					
						
							|  |  |  |    wc              yes                             none | 
					
						
							|  |  |  | =  xargs           no                              -I, -L, -p, -s, -t, -x | 
					
						
							|  |  |  | =  yes             yes                             none | 
					
						
							| 
									
										
										
										
											2014-11-20 23:01:56 +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 | 
					
						
							|  |  |  | -------- | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-11-21 10:36:42 +00:00
										 |  |  | You need GNU make to build sbase on OpenBSD. | 
					
						
							| 
									
										
										
										
											2014-11-17 13:50:19 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-02-12 14:34:09 +00:00
										 |  |  | 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. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 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/ |