Mirror of Suckless' ubase (git://git.suckless.org/ubase)
Go to file
Brad Barden 4dbd00fc94 mount: fix mount helper fs option handling
If a mount helper is used, only argopts (given on commandline) are
passed to the helper via -o parameter. Option strings from fstab are
ignored.

This patch replaces global argopts pointer with a character array
fsopts. A maximum length for filesytem options is #defined (used by
fsopts and data), and argument/mntent options are length-checked to fit.
A filesystem with too long an option string will print an error, cause
mount to exit with an error status, and not attempt to mount the
filesystem. This obviates the need for overflow checking of data in
parseopts(), though it hasn't been removed.
2016-02-11 10:16:41 +00:00
libutil Refactor chvt(1) 2015-09-07 11:47:10 +01:00
LICENSE LICENSE: update year and bump to top 2016-02-11 10:16:41 +00:00
Makefile Refactor chvt(1) 2015-09-07 11:47:10 +01:00
README README: explain make ubase-box-install 2015-03-03 13:32:43 +00:00
TODO TODO: update, thanks Ypnose 2015-04-01 11:28:22 +01:00
arg.h Rename __ARG_H__ to ARG_H__ 2013-11-25 21:33:58 +00:00
chvt.1 Refactor chvt(1) 2015-09-07 11:47:10 +01:00
chvt.c Refactor chvt(1) 2015-09-07 11:47:10 +01:00
clear.1 Refactor clear(1) 2015-09-07 11:47:10 +01:00
clear.c Remove stdlib.h from clear(1) 2015-09-07 11:47:10 +01:00
config.def.h Add last and lastb 2014-10-16 11:28:01 +01:00
config.mk Use CC for ubase-box, remove LD 2015-09-03 19:57:21 +01:00
ctrlaltdel.8 Minor newline fix in ctrlaltdel.8 2015-09-07 12:09:59 +01:00
ctrlaltdel.c Refactor ctrlaltdel(8) 2015-09-07 12:09:59 +01:00
dd.1 dd.1: fix 2015-02-06 15:16:23 +00:00
dd.c fix several problems in dd 2016-01-04 18:07:44 +00:00
df.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
df.c code-style: cleanup 2015-02-06 15:16:24 +00:00
dmesg.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
dmesg.c dmesg: fix usage and code-style 2015-02-06 15:16:24 +00:00
eject.1 Refactor eject(1) 2015-09-09 23:33:17 +01:00
eject.c Refactor eject(1) 2015-09-09 23:33:17 +01:00
fallocate.1 Fix fallocate(1) manpage 2015-09-14 10:15:55 +01:00
fallocate.c Refactor fallocate(1) 2015-09-14 10:15:55 +01:00
free.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
free.c code-style: cleanup 2015-02-06 15:16:24 +00:00
freeramdisk.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
freeramdisk.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
fsfreeze.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
fsfreeze.c fsfreeze: fix usage line, either -f or -u 2015-02-06 15:16:24 +00:00
getty.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
getty.c code-style: cleanup 2015-02-06 15:16:24 +00:00
halt.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
halt.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
hwclock.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
hwclock.c code-style: cleanup 2015-02-06 15:16:24 +00:00
id.1 id: Implement -n 2015-04-26 10:40:09 +01:00
id.c id: Implement -n 2015-04-26 10:40:09 +01:00
insmod.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
insmod.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
killall5.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
killall5.c Use SLIST instead of TAILQ for killall5(8) 2015-10-07 13:57:24 +01:00
last.c last: spaces to tabs 2015-02-20 15:36:33 +00:00
lastlog.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
lastlog.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
login.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
login.c code-style: cleanup 2015-02-06 15:16:24 +00:00
lsmod.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
lsmod.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
lsusb.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
lsusb.c lsusb, ps: style: put main at bottom 2015-03-11 15:18:10 +00:00
mesg.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
mesg.c Stop using *_FILENO 2014-11-30 13:12:33 +00:00
mknod.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
mknod.c code-style: cleanup 2015-02-06 15:16:24 +00:00
mkswap.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
mkswap.c Turn enumeration into #defines 2014-11-30 12:34:26 +00:00
mount.8 mount: helper support + improvements 2015-05-11 23:35:54 +01:00
mount.c mount: fix mount helper fs option handling 2016-02-11 10:16:41 +00:00
mountpoint.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
mountpoint.c mountpoint: -q should not print errors 2015-05-10 13:41:23 +01:00
pagesize.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
pagesize.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
passwd.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
passwd.c code-style: cleanup 2015-02-06 15:16:24 +00:00
passwd.h passwd: fix /etc/passwd support, ... 2014-07-14 11:14:36 +01:00
pidof.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
pidof.c Use SLIST instead of TAILQ for pidof(8) 2015-10-07 13:57:24 +01:00
pivot_root.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
pivot_root.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
proc.h Rename validps() to pidfile() 2013-08-16 16:42:59 +01:00
ps.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
ps.c lsusb, ps: style: put main at bottom 2015-03-11 15:18:10 +00:00
queue.h Import sys/queue.h and move over existing tools 2014-06-30 13:06:07 +01:00
readahead.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
readahead.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
reboot.h Make ubase compile with musl-gcc 2013-08-19 16:34:18 +01:00
respawn.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
respawn.c code-style: cleanup 2015-02-06 15:16:24 +00:00
rmmod.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
rmmod.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
rtc.h Use rtc_time 2014-06-03 15:15:21 +01:00
stat.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
stat.c code-style: cleanup 2015-02-06 15:16:24 +00:00
su.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
su.c code-style: cleanup 2015-02-06 15:16:24 +00:00
swaplabel.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
swaplabel.c Don't initialize unneeded variables in swaplabel(8) 2014-11-29 21:32:53 +00:00
swapoff.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
swapoff.c swapon, swapoff: show usage with -a device 2015-02-06 15:16:24 +00:00
swapon.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
swapon.c swapon, swapoff: show usage with -a device 2015-02-06 15:16:24 +00:00
switch_root.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
switch_root.c switch_root: execv: show error string 2015-05-10 13:41:23 +01:00
sysctl.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
sysctl.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
text.h passwd: improvements 2014-07-10 22:04:06 +01:00
truncate.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
truncate.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
umount.8 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
umount.c code-style: cleanup 2015-02-06 15:16:24 +00:00
unshare.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
unshare.c Stop using EXIT_{SUCCESS,FAILURE} 2014-10-02 23:47:39 +01:00
uptime.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
uptime.c uptime.c: Use the UTMP_PATH from config.def.h 2015-09-03 19:57:21 +01:00
util.h Refactor fallocate(1) 2015-09-14 10:15:55 +01:00
vtallow.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
vtallow.c vtallow, who: usage using argv0 2015-02-06 15:16:23 +00:00
watch.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
watch.c watch: If period is negative default to 0.1s 2014-11-30 14:08:42 +00:00
who.1 doc: convert man pages to mandoc, fix some typos in the process 2015-02-06 15:16:23 +00:00
who.c vtallow, who: usage using argv0 2015-02-06 15:16:23 +00:00

README

ubase - suckless linux base utils
=================================

ubase is  a collection of  tools similar  in spirit to  util-linux but
much simpler.

The complement  of ubase  is sbase[1] which  mostly follows  POSIX and
provides all the portable tools.  Together they are intended to form a
base system similar to busybox but much smaller and suckless.

Building
--------

To  build ubase,  simply  type  make.  You  may  have  to fiddle  with
config.mk and config.h depending on your system.

You  can  also  build  ubase-box,  which  generates  a  single  binary
containing  all  the  required  tools.    You  can  then  symlink  the
individual tools to ubase-box or run: make ubase-box-install.

To run the tools for ubase-box directly use: ubase-box cmd [args]

Ideally you will  want to statically link ubase.   We highly recommend
using musl-libc[2].

ubase is known to compile with gcc, clang and tcc.

[1] http://git.suckless.org/sbase/
[2] http://www.musl-libc.org/