A virtual jailed shell environment for Go apps backed by an io/fs#FS.
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat(coreutils): register newly ported commands

Wire up head, od, printf, pwd, readlink, rm, rmdir, seq, sleep, split,
stat, tac, tail, tee, time, touch, tr, tree, uniq, wc, and whoami in
the coreutils registry so they are available alongside the existing
ported commands.

Assisted-by: Claude Opus 4.7 via Claude Code
Signed-off-by: Xe Iaso <me@xeiaso.net>

Xe Iaso 2ab1dfab 3990f1c9

+42
+42
command/registry/coreutils/coreutils.go
··· 19 19 "tangled.org/xeiaso.net/kefka/command/internal/fold" 20 20 "tangled.org/xeiaso.net/kefka/command/internal/gunzip" 21 21 "tangled.org/xeiaso.net/kefka/command/internal/gzip" 22 + "tangled.org/xeiaso.net/kefka/command/internal/head" 22 23 "tangled.org/xeiaso.net/kefka/command/internal/hostname" 23 24 "tangled.org/xeiaso.net/kefka/command/internal/join" 24 25 "tangled.org/xeiaso.net/kefka/command/internal/ls" ··· 26 27 "tangled.org/xeiaso.net/kefka/command/internal/mkdir" 27 28 "tangled.org/xeiaso.net/kefka/command/internal/mv" 28 29 "tangled.org/xeiaso.net/kefka/command/internal/nl" 30 + "tangled.org/xeiaso.net/kefka/command/internal/od" 29 31 "tangled.org/xeiaso.net/kefka/command/internal/paste" 32 + "tangled.org/xeiaso.net/kefka/command/internal/printf" 33 + "tangled.org/xeiaso.net/kefka/command/internal/pwd" 34 + "tangled.org/xeiaso.net/kefka/command/internal/readlink" 35 + "tangled.org/xeiaso.net/kefka/command/internal/rm" 36 + "tangled.org/xeiaso.net/kefka/command/internal/rmdir" 37 + "tangled.org/xeiaso.net/kefka/command/internal/seq" 30 38 "tangled.org/xeiaso.net/kefka/command/internal/sha1sum" 31 39 "tangled.org/xeiaso.net/kefka/command/internal/sha256sum" 40 + "tangled.org/xeiaso.net/kefka/command/internal/sleep" 41 + "tangled.org/xeiaso.net/kefka/command/internal/split" 42 + "tangled.org/xeiaso.net/kefka/command/internal/stat" 43 + "tangled.org/xeiaso.net/kefka/command/internal/tac" 44 + "tangled.org/xeiaso.net/kefka/command/internal/tail" 45 + "tangled.org/xeiaso.net/kefka/command/internal/tee" 46 + "tangled.org/xeiaso.net/kefka/command/internal/time" 47 + "tangled.org/xeiaso.net/kefka/command/internal/touch" 48 + "tangled.org/xeiaso.net/kefka/command/internal/tr" 49 + "tangled.org/xeiaso.net/kefka/command/internal/tree" 32 50 "tangled.org/xeiaso.net/kefka/command/internal/truecmd" 33 51 "tangled.org/xeiaso.net/kefka/command/internal/unexpand" 52 + "tangled.org/xeiaso.net/kefka/command/internal/uniq" 53 + "tangled.org/xeiaso.net/kefka/command/internal/wc" 54 + "tangled.org/xeiaso.net/kefka/command/internal/whoami" 34 55 "tangled.org/xeiaso.net/kefka/command/internal/zcat" 35 56 "tangled.org/xeiaso.net/kefka/command/registry" 36 57 ) ··· 54 75 reg.Register("fold", fold.Impl{}) 55 76 reg.Register("gunzip", gunzip.Impl{}) 56 77 reg.Register("gzip", gzip.Impl{}) 78 + reg.Register("head", head.Impl{}) 57 79 reg.Register("hostname", hostname.Impl{}) 58 80 reg.Register("join", join.Impl{}) 59 81 reg.Register("ls", ls.Impl{}) ··· 61 83 reg.Register("mkdir", mkdir.Impl{}) 62 84 reg.Register("mv", mv.Impl{}) 63 85 reg.Register("nl", nl.Impl{}) 86 + reg.Register("od", od.Impl{}) 64 87 reg.Register("paste", paste.Impl{}) 88 + reg.Register("printf", printf.Impl{}) 89 + reg.Register("pwd", pwd.Impl{}) 90 + reg.Register("readlink", readlink.Impl{}) 91 + reg.Register("rm", rm.Impl{}) 92 + reg.Register("rmdir", rmdir.Impl{}) 93 + reg.Register("seq", seq.Impl{}) 65 94 reg.Register("sha1sum", sha1sum.Impl{}) 66 95 reg.Register("sha256sum", sha256sum.Impl{}) 96 + reg.Register("sleep", sleep.Impl{}) 97 + reg.Register("split", split.Impl{}) 98 + reg.Register("stat", stat.Impl{}) 99 + reg.Register("tac", tac.Impl{}) 100 + reg.Register("tail", tail.Impl{}) 101 + reg.Register("tee", tee.Impl{}) 102 + reg.Register("time", time.Impl{Registry: reg}) 103 + reg.Register("touch", touch.Impl{}) 104 + reg.Register("tr", tr.Impl{}) 105 + reg.Register("tree", tree.Impl{}) 67 106 reg.Register("true", truecmd.Impl{}) 68 107 reg.Register("unexpand", unexpand.Impl{}) 108 + reg.Register("uniq", uniq.Impl{}) 109 + reg.Register("wc", wc.Impl{}) 110 + reg.Register("whoami", whoami.Impl{}) 69 111 reg.Register("zcat", zcat.Impl{}) 70 112 }