Filesystem and identity commands
These commands supplement the default coreutils build.
idreportsuid=0(root) gid=0(root) groups=0(root). The world has one user.-uand-gprint zero.-nprintsroot, including-unand-gn.dusums apparent file sizes. Directories contribute zero bytes. It supports-s,-h,-a,-c,-d/--max-depth,-b, and-k. The default unit and-kuse 1024 bytes.-buses bytes. Symlinks contribute their own size. The command does not follow them. Native comparisons usedu --apparent-sizeon files. Native directory totals include host directory storage, which the world does not expose.statsupports-c/--format,-L, and multiple paths. Formats:%n %s %F %Y %y %X %x %N %% %a %A %U %G %u %g. Times use UTC. UID and GID are zero. User and group names areroot. Modes are fixed at755for directories and644otherwise. The default output prints names, sizes, types, modes, identity, and timestamps.nohup COMMAND [ARG...]uses the existing process interface. It starts an independent process group and returns the command's exit status. The world has no terminal or SIGHUP. Non-terminal streams remain inherited. It does not detach the command or createnohup.out, like native nohup with redirected streams.
Tests
From userland/, use the executor's CARGO_TARGET_DIR:
nix develop -c cargo build -p sausage-fs-tools --release --locked
nix develop -c nu --no-config-file fs-tools/test.nu
nix develop -c nu --no-config-file fs-tools/world-test.nu /tmp/s6-esbuild/app /tmp/s6-esbuild/esbuild-native
The world test requires the host binary and brush in the same target folder.
It also requires the pinned preview1 tools and the built archive tools.
The fixture contains S6's app, check.mjs, and its installed dependencies.
The test creates a fresh world under /tmp. It does not use the live world.