summaryrefslogtreecommitdiff
path: root/src/xorriso.test-efi.sh
diff options
context:
space:
mode:
authorAndrew Cady <d@jerkface.net>2016-04-29 14:36:26 -0400
committerAndrew Cady <d@jerkface.net>2016-04-29 14:36:30 -0400
commit153d299a41b9be4e15dab1ca29bb93a74bd2445d (patch)
tree96fbfbe7c64f0b3f02f3d755e2b129917785bb98 /src/xorriso.test-efi.sh
parent5f41fb879ca830e5ad3345878e59072f3d6573bc (diff)
fix paths (in progress)
Diffstat (limited to 'src/xorriso.test-efi.sh')
-rwxr-xr-xsrc/xorriso.test-efi.sh65
1 files changed, 65 insertions, 0 deletions
diff --git a/src/xorriso.test-efi.sh b/src/xorriso.test-efi.sh
new file mode 100755
index 0000000..3591528
--- /dev/null
+++ b/src/xorriso.test-efi.sh
@@ -0,0 +1,65 @@
1#!/bin/sh
2
3outdev=samizdat.iso
4indev=debian-live-8.4.0-amd64-standard.iso
5volid=SamizdatLive
6gpg_iso_path=gnupghome
7gnupghome=gnupghome
8secrets=secrets
9
10if [ $# = 0 ]; then
11 set -- debian-live-8.4.0-amd64-standard.btrfs layer.btrfs
12fi
13
14for fs; do
15 [ -f "$fs" ] || exit 1
16 shift
17 set -- "$@" "rootfs/${fs##*/}=$fs"
18done
19
20die() { printf '%s\n' "$*"; exit 1; }
21
22make_gnupghome()
23{
24 [ -d "$gnupghome" ] && return
25 local reset=$-
26 set -e
27 [ ! -d "$gnupghome".tmp ] || die "Error: refusing to overwrite $gnupghome.tmp"
28 [ ! -d "$secrets".tmp ] || die "Error: refusing to overwrite $secrets.tmp"
29 mkdir -p "$gnupghome".tmp "$secrets".tmp
30 local PATH="$HOME"/src/samizdat/src:"$PATH" NO_USE_RAMFS=y
31 NEW_GNUPGHOME="$gnupghome".tmp SECRETS_DIRECTORY="$secrets".tmp ~/src/samizdat/src/samizdat-make-key --adam
32 mv "$secrets".tmp "$secrets"
33 mv "$gnupghome".tmp "$gnupghome"
34 set -$reset
35}
36
37make_gnupghome
38
39if [ grub-efi.sh -nt grub-efi ]; then
40 ./grub-efi.sh || die "Error: grub-efi.sh failed"
41fi
42
43set -ex
44
45xorriso \
46 -drive_class clear_list all \
47 -outdev "$outdev"~ \
48 -report_about mishap \
49 -return_with sorry 0 \
50 -volid "$volid" \
51 -pathspecs on \
52 \
53 \
54 -add "${gpg_iso_path}=${gnupghome}" -- \
55 -add linux=isolinux/linux -- \
56 \
57 \
58 -as mkisofs -graft-points \
59 -b grub/i386-pc/eltorito.img \
60 -no-emul-boot -boot-info-table \
61 --embedded-boot grub-efi/embedded.img \
62 --protective-msdos-label \
63 grub=grub-efi/grub
64
65mv -f "$outdev"~ "$outdev"