7e21273dcd305426d2616c3135feb05054714d97
[eostre.git] / dbd-autobuild / files / .build
1 #!/usr/bin/env bash -xe
2
3 # This build script is meant to be run from the vroot.x(32|64) directory, as part of the build process
4 # It more-or-less automates the Abigail build process
5 # Make sure appropriate directories have been bind-mounted (sudo sh ../bm.sh)
6
7 # Update the build chroot, last release published was 20191111
8 sudo chroot . /bin/bash -c '(xbps-install -Syu && xbps-install -Syu && exit)'
9
10 # Copy in our RELEASE, etc, files
11 for F in RELEASE .pkgs .svcs .patches .build; do sudo cp -r ../files/"${F}" ./; done
12
13 # Enter the updated build environment
14 # Install packages, remake the mandoc db, enable services, patch the boot process, and finally remove orphan packages
15 sudo chroot . /bin/bash -xe -c '\
16 ( \
17 cd / &&\
18 for PKG in $(cat .pkgs); do xbps-install -Suy $PKG; done &&\
19 makewhatis /usr/share/man &&\
20 for SVC in $(cat .svcs); do ln -s /etc/sv/$SVC /etc/runit/runsvdir/default/$SVC; done &&\
21 patch -R -p1 /etc/runit/core-services/03-filesystems.sh < /.patches/fix-panic-on-readonly-root.patch &&\
22 xbps-install -Syu &&\
23 mkdir -m 755 /rw &&\
24 cd / &&\
25 mv etc rw/etc &&\
26 mv var rw/var &&\
27 ln -s rw/etc etc &&\
28 ln -s rw/var var &&\
29 mkdir -m 0400 /initrd &&\
30 xbps-remove --remove-orphans &&\
31 rmdir /opt /media ||: &&\
32 : )'
33
34 sudo touch ./initrd/init3.btrfs
35 sudo mkfs.btrfs --shrink --rootdir=../../initrd2 initrd/init3.btrfs
36 sudo chown root:root initrd/init3.btrfs
37 sudo chmod 0400 initrd/init3.btrfs