linux-qubasis

linux oasis port as a qubes template

git clone https://9o.is/git/linux-qubasis.git

commit 15de7ca74e223d20e309e34663358c5d13a138c9
parent 4006a5dfb31bba3b9bcecd397e10ca567cda4b35
Author: Jul <jul@9o.is>
Date:   Sat, 23 Aug 2025 19:30:24 +0800

compress man files

Diffstat:
Mconfig.def.sh | 1+
Mninja/functions.sh | 19++++++++++++++++++-
Mninja/rules.ninja | 4++++
Mtpl/example/gen.sh | 228++++++++++++++++++++++++++++++++++++++++----------------------------------------
4 files changed, 137 insertions(+), 115 deletions(-)

diff --git a/config.def.sh b/config.def.sh @@ -2,6 +2,7 @@ PREFIX= MANDIR=${PREFIX}share/man BUILD_DIR='out' +GZMAN=true TARGET_ARCH='x86_64' TARGET_PLATFORM="$TARGET_ARCH-linux-musl" diff --git a/ninja/functions.sh b/ninja/functions.sh @@ -46,6 +46,19 @@ copy() { build copy "$out" "$src" } +gzip() { + local src="$1" + local out="${2-$src}" + + _ninja_prefix out '$outdir' "$out.gz" + _ninja_prefix src '$srcdir' $src + + _ninja_sync $src + _ninja_build $out + + build gzip "$out" "$src" +} + sym() { local out="$1" local src="$2" @@ -58,7 +71,11 @@ sym() { } man() { - copy $* + if [ "$GZMAN" = 'true' ]; then + gzip $* + else + copy $* + fi } exe() { diff --git a/ninja/rules.ninja b/ninja/rules.ninja @@ -33,3 +33,7 @@ rule sym rule touch command = touch $out + +rule gzip + command = gzip -c -9 -n <$in >$out + description = GZIP $out diff --git a/tpl/example/gen.sh b/tpl/example/gen.sh @@ -1,8 +1,8 @@ -pkg oksh ksh bin/ksh \ - sh bin/sh \ - ksh.1 $MANDIR/man1/ksh.1 \ - sh.1 $MANDIR/man1/sh.1 +pkg oksh ksh bin/ksh \ + sh bin/sh \ + ksh.1.gz $MANDIR/man1/ksh.1.gz \ + sh.1.gz $MANDIR/man1/sh.1.gz pkg sbase basename bin/basename \ cal bin/cal \ @@ -101,103 +101,103 @@ pkg sbase basename bin/basename \ xargs bin/xargs \ xinstall bin/xinstall \ yes bin/yes \ - basename.1 $MANDIR/man1/basename.1 \ - cal.1 $MANDIR/man1/cal.1 \ - cat.1 $MANDIR/man1/cat.1 \ - chgrp.1 $MANDIR/man1/chgrp.1 \ - chmod.1 $MANDIR/man1/chmod.1 \ - chown.1 $MANDIR/man1/chown.1 \ - chroot.1 $MANDIR/man1/chroot.1 \ - cksum.1 $MANDIR/man1/cksum.1 \ - cmp.1 $MANDIR/man1/cmp.1 \ - cols.1 $MANDIR/man1/cols.1 \ - comm.1 $MANDIR/man1/comm.1 \ - cp.1 $MANDIR/man1/cp.1 \ - cron.1 $MANDIR/man1/cron.1 \ - cut.1 $MANDIR/man1/cut.1 \ - date.1 $MANDIR/man1/date.1 \ - dd.1 $MANDIR/man1/dd.1 \ - dirname.1 $MANDIR/man1/dirname.1 \ - du.1 $MANDIR/man1/du.1 \ - echo.1 $MANDIR/man1/echo.1 \ - ed.1 $MANDIR/man1/ed.1 \ - env.1 $MANDIR/man1/env.1 \ - expand.1 $MANDIR/man1/expand.1 \ - expr.1 $MANDIR/man1/expr.1 \ - false.1 $MANDIR/man1/false.1 \ - find.1 $MANDIR/man1/find.1 \ - flock.1 $MANDIR/man1/flock.1 \ - fold.1 $MANDIR/man1/fold.1 \ - getconf.1 $MANDIR/man1/getconf.1 \ - grep.1 $MANDIR/man1/grep.1 \ - head.1 $MANDIR/man1/head.1 \ - hostname.1 $MANDIR/man1/hostname.1 \ - join.1 $MANDIR/man1/join.1 \ - kill.1 $MANDIR/man1/kill.1 \ - link.1 $MANDIR/man1/link.1 \ - ln.1 $MANDIR/man1/ln.1 \ - logger.1 $MANDIR/man1/logger.1 \ - logname.1 $MANDIR/man1/logname.1 \ - ls.1 $MANDIR/man1/ls.1 \ - md5sum.1 $MANDIR/man1/md5sum.1 \ - mkdir.1 $MANDIR/man1/mkdir.1 \ - mkfifo.1 $MANDIR/man1/mkfifo.1 \ - mknod.1 $MANDIR/man1/mknod.1 \ - mktemp.1 $MANDIR/man1/mktemp.1 \ - mv.1 $MANDIR/man1/mv.1 \ - nice.1 $MANDIR/man1/nice.1 \ - nl.1 $MANDIR/man1/nl.1 \ - nohup.1 $MANDIR/man1/nohup.1 \ - od.1 $MANDIR/man1/od.1 \ - paste.1 $MANDIR/man1/paste.1 \ - pathchk.1 $MANDIR/man1/pathchk.1 \ - printenv.1 $MANDIR/man1/printenv.1 \ - printf.1 $MANDIR/man1/printf.1 \ - pwd.1 $MANDIR/man1/pwd.1 \ - readlink.1 $MANDIR/man1/readlink.1 \ - renice.1 $MANDIR/man1/renice.1 \ - rev.1 $MANDIR/man1/rev.1 \ - rm.1 $MANDIR/man1/rm.1 \ - rmdir.1 $MANDIR/man1/rmdir.1 \ - sed.1 $MANDIR/man1/sed.1 \ - seq.1 $MANDIR/man1/seq.1 \ - setsid.1 $MANDIR/man1/setsid.1 \ - sha1sum.1 $MANDIR/man1/sha1sum.1 \ - sha224sum.1 $MANDIR/man1/sha224sum.1 \ - sha256sum.1 $MANDIR/man1/sha256sum.1 \ - sha384sum.1 $MANDIR/man1/sha384sum.1 \ - sha512sum.1 $MANDIR/man1/sha512sum.1 \ - sha512-224sum.1 $MANDIR/man1/sha512-224sum.1 \ - sha512-256sum.1 $MANDIR/man1/sha512-256sum.1 \ - sleep.1 $MANDIR/man1/sleep.1 \ - sort.1 $MANDIR/man1/sort.1 \ - split.1 $MANDIR/man1/split.1 \ - sponge.1 $MANDIR/man1/sponge.1 \ - strings.1 $MANDIR/man1/strings.1 \ - sync.1 $MANDIR/man1/sync.1 \ - tail.1 $MANDIR/man1/tail.1 \ - tar.1 $MANDIR/man1/tar.1 \ - tee.1 $MANDIR/man1/tee.1 \ - test.1 $MANDIR/man1/test.1 \ - tftp.1 $MANDIR/man1/tftp.1 \ - time.1 $MANDIR/man1/time.1 \ - touch.1 $MANDIR/man1/touch.1 \ - tr.1 $MANDIR/man1/tr.1 \ - true.1 $MANDIR/man1/true.1 \ - tsort.1 $MANDIR/man1/tsort.1 \ - tty.1 $MANDIR/man1/tty.1 \ - uname.1 $MANDIR/man1/uname.1 \ - unexpand.1 $MANDIR/man1/unexpand.1 \ - uniq.1 $MANDIR/man1/uniq.1 \ - unlink.1 $MANDIR/man1/unlink.1 \ - uudecode.1 $MANDIR/man1/uudecode.1 \ - uuencode.1 $MANDIR/man1/uuencode.1 \ - wc.1 $MANDIR/man1/wc.1 \ - which.1 $MANDIR/man1/which.1 \ - whoami.1 $MANDIR/man1/whoami.1 \ - xargs.1 $MANDIR/man1/xargs.1 \ - xinstall.1 $MANDIR/man1/xinstall.1 \ - yes.1 $MANDIR/man1/yes.1 + basename.1.gz $MANDIR/man1/basename.1.gz \ + cal.1.gz $MANDIR/man1/cal.1.gz \ + cat.1.gz $MANDIR/man1/cat.1.gz \ + chgrp.1.gz $MANDIR/man1/chgrp.1.gz \ + chmod.1.gz $MANDIR/man1/chmod.1.gz \ + chown.1.gz $MANDIR/man1/chown.1.gz \ + chroot.1.gz $MANDIR/man1/chroot.1.gz \ + cksum.1.gz $MANDIR/man1/cksum.1.gz \ + cmp.1.gz $MANDIR/man1/cmp.1.gz \ + cols.1.gz $MANDIR/man1/cols.1.gz \ + comm.1.gz $MANDIR/man1/comm.1.gz \ + cp.1.gz $MANDIR/man1/cp.1.gz \ + cron.1.gz $MANDIR/man1/cron.1.gz \ + cut.1.gz $MANDIR/man1/cut.1.gz \ + date.1.gz $MANDIR/man1/date.1.gz \ + dd.1.gz $MANDIR/man1/dd.1.gz \ + dirname.1.gz $MANDIR/man1/dirname.1.gz \ + du.1.gz $MANDIR/man1/du.1.gz \ + echo.1.gz $MANDIR/man1/echo.1.gz \ + ed.1.gz $MANDIR/man1/ed.1.gz \ + env.1.gz $MANDIR/man1/env.1.gz \ + expand.1.gz $MANDIR/man1/expand.1.gz \ + expr.1.gz $MANDIR/man1/expr.1.gz \ + false.1.gz $MANDIR/man1/false.1.gz \ + find.1.gz $MANDIR/man1/find.1.gz \ + flock.1.gz $MANDIR/man1/flock.1.gz \ + fold.1.gz $MANDIR/man1/fold.1.gz \ + getconf.1.gz $MANDIR/man1/getconf.1.gz \ + grep.1.gz $MANDIR/man1/grep.1.gz \ + head.1.gz $MANDIR/man1/head.1.gz \ + hostname.1.gz $MANDIR/man1/hostname.1.gz \ + join.1.gz $MANDIR/man1/join.1.gz \ + kill.1.gz $MANDIR/man1/kill.1.gz \ + link.1.gz $MANDIR/man1/link.1.gz \ + ln.1.gz $MANDIR/man1/ln.1.gz \ + logger.1.gz $MANDIR/man1/logger.1.gz \ + logname.1.gz $MANDIR/man1/logname.1.gz \ + ls.1.gz $MANDIR/man1/ls.1.gz \ + md5sum.1.gz $MANDIR/man1/md5sum.1.gz \ + mkdir.1.gz $MANDIR/man1/mkdir.1.gz \ + mkfifo.1.gz $MANDIR/man1/mkfifo.1.gz \ + mknod.1.gz $MANDIR/man1/mknod.1.gz \ + mktemp.1.gz $MANDIR/man1/mktemp.1.gz \ + mv.1.gz $MANDIR/man1/mv.1.gz \ + nice.1.gz $MANDIR/man1/nice.1.gz \ + nl.1.gz $MANDIR/man1/nl.1.gz \ + nohup.1.gz $MANDIR/man1/nohup.1.gz \ + od.1.gz $MANDIR/man1/od.1.gz \ + paste.1.gz $MANDIR/man1/paste.1.gz \ + pathchk.1.gz $MANDIR/man1/pathchk.1.gz \ + printenv.1.gz $MANDIR/man1/printenv.1.gz \ + printf.1.gz $MANDIR/man1/printf.1.gz \ + pwd.1.gz $MANDIR/man1/pwd.1.gz \ + readlink.1.gz $MANDIR/man1/readlink.1.gz \ + renice.1.gz $MANDIR/man1/renice.1.gz \ + rev.1.gz $MANDIR/man1/rev.1.gz \ + rm.1.gz $MANDIR/man1/rm.1.gz \ + rmdir.1.gz $MANDIR/man1/rmdir.1.gz \ + sed.1.gz $MANDIR/man1/sed.1.gz \ + seq.1.gz $MANDIR/man1/seq.1.gz \ + setsid.1.gz $MANDIR/man1/setsid.1.gz \ + sha1sum.1.gz $MANDIR/man1/sha1sum.1.gz \ + sha224sum.1.gz $MANDIR/man1/sha224sum.1.gz \ + sha256sum.1.gz $MANDIR/man1/sha256sum.1.gz \ + sha384sum.1.gz $MANDIR/man1/sha384sum.1.gz \ + sha512sum.1.gz $MANDIR/man1/sha512sum.1.gz \ + sha512-224sum.1.gz $MANDIR/man1/sha512-224sum.1.gz \ + sha512-256sum.1.gz $MANDIR/man1/sha512-256sum.1.gz \ + sleep.1.gz $MANDIR/man1/sleep.1.gz \ + sort.1.gz $MANDIR/man1/sort.1.gz \ + split.1.gz $MANDIR/man1/split.1.gz \ + sponge.1.gz $MANDIR/man1/sponge.1.gz \ + strings.1.gz $MANDIR/man1/strings.1.gz \ + sync.1.gz $MANDIR/man1/sync.1.gz \ + tail.1.gz $MANDIR/man1/tail.1.gz \ + tar.1.gz $MANDIR/man1/tar.1.gz \ + tee.1.gz $MANDIR/man1/tee.1.gz \ + test.1.gz $MANDIR/man1/test.1.gz \ + tftp.1.gz $MANDIR/man1/tftp.1.gz \ + time.1.gz $MANDIR/man1/time.1.gz \ + touch.1.gz $MANDIR/man1/touch.1.gz \ + tr.1.gz $MANDIR/man1/tr.1.gz \ + true.1.gz $MANDIR/man1/true.1.gz \ + tsort.1.gz $MANDIR/man1/tsort.1.gz \ + tty.1.gz $MANDIR/man1/tty.1.gz \ + uname.1.gz $MANDIR/man1/uname.1.gz \ + unexpand.1.gz $MANDIR/man1/unexpand.1.gz \ + uniq.1.gz $MANDIR/man1/uniq.1.gz \ + unlink.1.gz $MANDIR/man1/unlink.1.gz \ + uudecode.1.gz $MANDIR/man1/uudecode.1.gz \ + uuencode.1.gz $MANDIR/man1/uuencode.1.gz \ + wc.1.gz $MANDIR/man1/wc.1.gz \ + which.1.gz $MANDIR/man1/which.1.gz \ + whoami.1.gz $MANDIR/man1/whoami.1.gz \ + xargs.1.gz $MANDIR/man1/xargs.1.gz \ + xinstall.1.gz $MANDIR/man1/xinstall.1.gz \ + yes.1.gz $MANDIR/man1/yes.1.gz pkg mandoc apropos bin/apropos \ demandoc bin/demandoc \ @@ -205,16 +205,16 @@ pkg mandoc apropos bin/apropos \ man bin/man \ mandoc bin/mandoc \ whatis bin/whatis \ - apropos.1 $MANDIR/man1/apropos.1 \ - demandoc.1 $MANDIR/man1/demandoc.1 \ - eqn.7 $MANDIR/man7/eqn.7 \ - makewhatis.8 $MANDIR/man8/makewhatis.8 \ - man.1 $MANDIR/man1/man.1 \ - man.7 $MANDIR/man7/man.7 \ - man.conf.5 $MANDIR/man5/man.conf.5 \ - mandoc.1 $MANDIR/man1/mandoc.1 \ - mandoc.db.5 $MANDIR/man5/mandoc.db.5 \ - mandoc_char.7 $MANDIR/man7/mandoc_char.7 \ - mdoc.7 $MANDIR/man7/mdoc.7 \ - roff.7 $MANDIR/man7/roff.7 \ - tbl.7 $MANDIR/man7/tbl.7 + apropos.1.gz $MANDIR/man1/apropos.1.gz \ + demandoc.1.gz $MANDIR/man1/demandoc.1.gz \ + eqn.7.gz $MANDIR/man7/eqn.7.gz \ + makewhatis.8.gz $MANDIR/man8/makewhatis.8.gz \ + man.1.gz $MANDIR/man1/man.1.gz \ + man.7.gz $MANDIR/man7/man.7.gz \ + man.conf.5.gz $MANDIR/man5/man.conf.5.gz \ + mandoc.1.gz $MANDIR/man1/mandoc.1.gz \ + mandoc.db.5.gz $MANDIR/man5/mandoc.db.5.gz \ + mandoc_char.7.gz $MANDIR/man7/mandoc_char.7.gz \ + mdoc.7.gz $MANDIR/man7/mdoc.7.gz \ + roff.7.gz $MANDIR/man7/roff.7.gz \ + tbl.7.gz $MANDIR/man7/tbl.7.gz