feat(sterni/acme/plan9port): make my plumbing rules the default

To avoid the need for two different versions of plan9port in the CI
pipeline, just move the plumbing sanity check into installCheckPhase.
For local iteration you'd have a plumber running anyways, so the short
build time of the plumb derivation isn't really a necessity.

Change-Id: Ib0ba5fa2d8107530fb7d1144cf7395f4f5a3cd12
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13035
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: sterni <sternenseemann@systemli.org>
This commit is contained in:
sterni 2025-01-21 21:04:40 +01:00 committed by clbot
parent 9743fbf6b7
commit 623ebc615f
3 changed files with 16 additions and 39 deletions

View file

@ -18,6 +18,9 @@ pkgs.plan9port.overrideAttrs (old: {
patches = old.patches or [ ] ++ patchesFromDir ./.;
postPatch = old.postPatch or "" + ''
${mkbqnkeyboard'} lib/keyboard
cp --reflink=auto ${./../plumb}/* plumb/
mv plumb/sterni.plumbing plumb/initial.plumbing
'';
nativeBuildInputs = old.nativeBuildInputs or [ ] ++ [
@ -31,4 +34,16 @@ pkgs.plan9port.overrideAttrs (old: {
--set PLAN9 "$out/plan9"
done
'';
doInstallCheck = true;
installCheckPhase = old.installCheckPhase or "" + ''
export NAMESPACE="$(mktemp -d)"
"$out/bin/9" plumber -f &
pid="$!"
until [[ -e "$NAMESPACE/plumb" ]]; do
sleep 0.1
done
"$out/bin/9" 9p write plumb/rules < ${./../plumb}/sterni.plumbing
kill "$pid"
'';
})