diff --git a/build/build-image.sh b/build/build-image.sh index a658f8b..875cc86 100755 --- a/build/build-image.sh +++ b/build/build-image.sh @@ -45,24 +45,18 @@ eselect news read new > /dev/null # squashfs-tools needed for image mksquashfs for image generation # gentoolkit needed for euse for setting use flags -emerge --quiet squashfs-tools gentoolkit +# btrfs-progs needed for mkfs.btrfs for generating usr partition fs +emerge --quiet squashfs-tools gentoolkit btrfs-progs -# Copy in package list -mkdir -p /etc/portage/sets -cp /build/emerge/packages.txt /etc/portage/sets/halogenos -if [ -d /build/emerge/package.use ]; then - cp -r /build/emerge/package.use /etc/portage/ -fi +# Copy in host configs +cp -r /build/include-host/* / # We have to ensure use.disable contains at least one flag # Otherwise euse -D will disable all global use flags -if [[ "$(cat /build/emerge/use.disable)" = *[![:space:]]* ]]; then - euse -D "$(cat /build/emerge/use.disable)" +if [[ "$(cat /etc/portage/use.disable)" = *[![:space:]]* ]]; then + euse -D "$(cat /etc/portage/use.disable)" fi -# Copy in any patch sets -cp -r /build/emerge/patches /etc/portage/ - # Set install location export ROOT="$DISTPATH" @@ -70,20 +64,22 @@ export ROOT="$DISTPATH" #emerge -j "$NPROC" --quiet --update --deep --newuse @world # Emerge all packages -emerge dev-python/setuptools emerge -j "$NPROC" --quiet @halogenos +emerge --unmerge portage + +emerge gentoolkit # Include any additional files mkdir -p "$DISTPATH"/usr/share/halogenos -mkdir "$DISTPATH"/usr/share/halogenos/keys -mkdir "$DISTPATH"/usr/share/halogenos/bin +mkdir -p "$DISTPATH"/usr/share/halogenos/keys +mkdir -p "$DISTPATH"/usr/share/halogenos/bin # Fix directory locations for dir in bin sbin etc lib; do - mv "$DISTPATH"/"$dir" "$DISTPATH"/usr/ + mv "$DISTPATH"/"$dir" "$DISTPATH"/usr/"$dir" done -cp -r /build/include/* "$DISTPATH"/ +cp -r /build/include-image/* "$DISTPATH"/ echo "IMAGE_VERSION="$VERSION"" >> "$DISTPATH"/usr/lib/os-release @@ -92,6 +88,7 @@ echo "IMAGE_VERSION="$VERSION"" >> "$DISTPATH"/usr/lib/os-release # Require inclusion of public key if $REQSIG is true if [ "$REQSIG" == "true" ]; then + # This will cause an exit if the key is missing cp /run/secrets/signing_key_public "$DISTPATH"/usr/share/halogenos/keys/release_key_pub.asc else # Otherwise, attempt to copy the key, but don't freak out if it does not exist @@ -103,7 +100,7 @@ else fi # Metadata & build-time configs -mkdir "$DISTPATH"/usr/share/halogenos/meta +mkdir -p "$DISTPATH"/usr/share/halogenos/meta echo "VERSION=$VERSION OTA=$DISTURL TPM=$TPM diff --git a/build/external/gvisor.sh b/build/external/gvisor.sh old mode 100644 new mode 100755 diff --git a/build/emerge/package.use/fix-python b/build/include-host/etc/portage/package.use/fix-python similarity index 100% rename from build/emerge/package.use/fix-python rename to build/include-host/etc/portage/package.use/fix-python diff --git a/build/emerge/package.use/fwupd b/build/include-host/etc/portage/package.use/fwupd similarity index 100% rename from build/emerge/package.use/fwupd rename to build/include-host/etc/portage/package.use/fwupd diff --git a/build/emerge/patches/sys-libs/libsemanage/fix-musl.patch b/build/include-host/etc/portage/patches/sys-libs/libsemanage/fix-musl.patch similarity index 100% rename from build/emerge/patches/sys-libs/libsemanage/fix-musl.patch rename to build/include-host/etc/portage/patches/sys-libs/libsemanage/fix-musl.patch diff --git a/build/emerge/packages.txt b/build/include-host/etc/portage/sets/halogenos similarity index 100% rename from build/emerge/packages.txt rename to build/include-host/etc/portage/sets/halogenos diff --git a/build/emerge/use.disable b/build/include-host/etc/portage/use.disable similarity index 100% rename from build/emerge/use.disable rename to build/include-host/etc/portage/use.disable diff --git a/build/include/usr/etc/docker/daemon.json b/build/include-image/usr/etc/docker/daemon.json similarity index 100% rename from build/include/usr/etc/docker/daemon.json rename to build/include-image/usr/etc/docker/daemon.json diff --git a/build/include/usr/lib/os-release b/build/include-image/usr/lib/os-release similarity index 100% rename from build/include/usr/lib/os-release rename to build/include-image/usr/lib/os-release diff --git a/build/include/usr/sbin/sysupd.sh b/build/include-image/usr/sbin/sysupd.sh similarity index 100% rename from build/include/usr/sbin/sysupd.sh rename to build/include-image/usr/sbin/sysupd.sh