chiark / gitweb /
uml: plumbing
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 7 Aug 2021 11:13:06 +0000 (12:13 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 7 Aug 2021 11:13:06 +0000 (12:13 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
uml/psusan-uml-inside
uml/psusan-uml-psusan
uml/psusan-uml-setup

index ec5a393b246b3bc6af01c16321f3259496adb737..24658e31f462e1d786fea473728574aff7d45f76 100755 (executable)
@@ -1,5 +1,5 @@
 #!/bin/bash
-set -e
+set -ex
 
 mkdir /dev/pts
 mount -t proc none /proc
@@ -15,4 +15,16 @@ PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
 export PATH
 export SHELL=/bin/bash
 
+HOME=$(cat /proc/cmdline)
+case "$HOME" in
+*' psusan-uml-tmp='*) ;;
+*) echo >&2 'psusan-uml-tmp not found in /proc/cmdline'; exit 1;;
+esac
+HOME=${HOME##* psusan-uml-tmp=}
+HOME=${HOME%% *}
+export HOME
+cd "$HOME"
+
+dd if=random-seed of=/dev/urandom
+
 exec psusan
index 2dd8adef7de8cdd601bd672f8dd3d26e9ababd0d..617824dd5db774bc3a33fa65e20961695e495511 100755 (executable)
@@ -11,7 +11,8 @@ mkfifo -m600 $fifo
 )                                                              |       \
  bwrap --dev-bind / / --tmpfs /dev/shm                                 \
  linux mem=512M rootfstype=hostfs rootflags=/ rw                       \
-       con=fd:2,fd:2 con1=fd:0,fd:1 init="${0%/*}"/psusan-uml-inside |         \
+       con=fd:2,fd:2 con1=fd:0,fd:1 init="${0%/*}"/psusan-uml-inside   \
+       -- psusan-uml-tmp=$PWD/tmp/uml                          |       \
 (
  read banner
  : >$fifo
index 1a1e9c01343b0f696ee415eddbea3b48c2be83c9..7e9da78f6d5874f004f78064d5961c622a8cac92 100755 (executable)
@@ -4,5 +4,6 @@ set -e
 mkdir -p tmp
 rm -rf tmp/uml
 mkdir -p -m2700 tmp/uml
+dd if=/dev/urandom of=tmp/uml/random-seed bs=1k count=4
 
 "${0%/*}"/psusan-uml-run -proxycmd "${0%/*}"/psusan-uml-psusan -N -v -v