diff --git a/.gitignore b/.gitignore index 2e76102..d4332c1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,10 @@ /images /linux /output +/portage/config/*/etc/portage/make.profile +/portage/config/*/etc/portage/repos.conf +/portage/config/target/etc/portage/make.conf/10-crossdev.conf +/portage/repos/x-portage /.built /.prepared /.host-tools diff --git a/Makefile b/Makefile index 3013506..95845a8 100644 --- a/Makefile +++ b/Makefile @@ -5,12 +5,9 @@ update.tar: $(IMAGESDIR)/update.tar.zstd $(O)/.prepared: \ prepare.sh \ - config-portage.sh \ setup-local-repo.sh \ - $(shell find portage host-portage -type f) \ $(shell find patches/ebuilds -type f) ./prepare.sh - ./config-portage.sh ./setup-local-repo.sh mkdir -p $(O) touch $(O)/.prepared diff --git a/build-host-tools.sh b/build-host-tools.sh index 3591364..fd46498 100755 --- a/build-host-tools.sh +++ b/build-host-tools.sh @@ -1,5 +1,6 @@ #!/bin/sh # vim: set sw=4 ts=4 sts=4 et : +PORTAGE_CONFIGROOT="${PWD}"/portage/config/host \ < host-tools.packages xargs -ro \ emerge -vnUj diff --git a/build-kernel.sh b/build-kernel.sh index cb06477..e1e928d 100755 --- a/build-kernel.sh +++ b/build-kernel.sh @@ -7,6 +7,7 @@ O="${1}" . ./config +PORTAGE_CONFIGROOT="${PWD}"/portage/config/host \ emerge -vnj ${kernel_pkg} export ARCH=arm64 CROSS_COMPILE=${target}- diff --git a/build-rootfs.sh b/build-rootfs.sh index 2316838..5703156 100755 --- a/build-rootfs.sh +++ b/build-rootfs.sh @@ -23,12 +23,12 @@ ln -snf \ cp -r portage/. /mnt/gentoo/etc/portage/ ROOT=/mnt/gentoo \ -PORTAGE_CONFIGROOT=/mnt/gentoo \ +PORTAGE_CONFIGROOT="${PWD}"/portage/config/target \ < install.packages xargs -ro \ ${target}-emerge -Kvnj ROOT=/mnt/gentoo \ -PORTAGE_CONFIGROOT=/mnt/gentoo \ +PORTAGE_CONFIGROOT="${PWD}"/portage/config/target \ < installonly.packages xargs -ro \ ${target}-emerge -vnj diff --git a/build.sh b/build.sh index 95f0f0a..3bef4bd 100755 --- a/build.sh +++ b/build.sh @@ -7,6 +7,8 @@ set -e unset MAKEFLAGS MAKEOVERRIDES MAKELEVEL +export PORTAGE_CONFIGROOT="${PWD}"/portage/config/target + ${target}-emerge -vuUDj sys-apps/util-linux cat \ diff --git a/config-portage.sh b/config-portage.sh deleted file mode 100755 index 64805f8..0000000 --- a/config-portage.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh -# vim: set sw=4 ts=4 sts=4 et : - -set -e - -. ./config - -cp -r host-portage/. /etc/portage/ -cp -r portage/. /usr/${target}/etc/portage/ - -# Set the Portage profile -ln -snf \ - /var/db/repos/gentoo/profiles/${profile} \ - /usr/${target}/etc/portage/make.profile diff --git a/host-portage/env/nobuildpkg b/portage/config/host/etc/portage/env/nobuildpkg similarity index 100% rename from host-portage/env/nobuildpkg rename to portage/config/host/etc/portage/env/nobuildpkg diff --git a/host-portage/make.conf/15-keywords.conf b/portage/config/host/etc/portage/make.conf/15-keywords.conf similarity index 100% rename from host-portage/make.conf/15-keywords.conf rename to portage/config/host/etc/portage/make.conf/15-keywords.conf diff --git a/host-portage/make.conf/20-binpkgs.conf b/portage/config/host/etc/portage/make.conf/20-binpkgs.conf similarity index 100% rename from host-portage/make.conf/20-binpkgs.conf rename to portage/config/host/etc/portage/make.conf/20-binpkgs.conf diff --git a/host-portage/make.conf/80-quiet.conf b/portage/config/host/etc/portage/make.conf/80-quiet.conf similarity index 100% rename from host-portage/make.conf/80-quiet.conf rename to portage/config/host/etc/portage/make.conf/80-quiet.conf diff --git a/host-portage/package.accept_keywords/kernel b/portage/config/host/etc/portage/package.accept_keywords/kernel similarity index 100% rename from host-portage/package.accept_keywords/kernel rename to portage/config/host/etc/portage/package.accept_keywords/kernel diff --git a/host-portage/package.env/kernel b/portage/config/host/etc/portage/package.env/kernel similarity index 100% rename from host-portage/package.env/kernel rename to portage/config/host/etc/portage/package.env/kernel diff --git a/host-portage/package.use/btrfs-progs b/portage/config/host/etc/portage/package.use/btrfs-progs similarity index 100% rename from host-portage/package.use/btrfs-progs rename to portage/config/host/etc/portage/package.use/btrfs-progs diff --git a/host-portage/package.use/git b/portage/config/host/etc/portage/package.use/git similarity index 100% rename from host-portage/package.use/git rename to portage/config/host/etc/portage/package.use/git diff --git a/host-portage/package.use/grub b/portage/config/host/etc/portage/package.use/grub similarity index 100% rename from host-portage/package.use/grub rename to portage/config/host/etc/portage/package.use/grub diff --git a/host-portage/package.use/kernel b/portage/config/host/etc/portage/package.use/kernel similarity index 100% rename from host-portage/package.use/kernel rename to portage/config/host/etc/portage/package.use/kernel diff --git a/host-portage/package.use/selinux b/portage/config/host/etc/portage/package.use/selinux similarity index 100% rename from host-portage/package.use/selinux rename to portage/config/host/etc/portage/package.use/selinux diff --git a/host-portage/package.use/squashfs-tools b/portage/config/host/etc/portage/package.use/squashfs-tools similarity index 100% rename from host-portage/package.use/squashfs-tools rename to portage/config/host/etc/portage/package.use/squashfs-tools diff --git a/host-portage/package.use/systemd b/portage/config/host/etc/portage/package.use/systemd similarity index 100% rename from host-portage/package.use/systemd rename to portage/config/host/etc/portage/package.use/systemd diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm2711-Add-device-tree-for-Home-Assistant-Y.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm2711-Add-device-tree-for-Home-Assistant-Y.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm2711-Add-device-tree-for-Home-Assistant-Y.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm2711-Add-device-tree-for-Home-Assistant-Y.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm2711-Add-device-tree-for-Home-Assistant-Y.patch2 b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm2711-Add-device-tree-for-Home-Assistant-Y.patch2 similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm2711-Add-device-tree-for-Home-Assistant-Y.patch2 rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm2711-Add-device-tree-for-Home-Assistant-Y.patch2 diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm283x-add-compatible-picked-up-by-U-Boot.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm283x-add-compatible-picked-up-by-U-Boot.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm283x-add-compatible-picked-up-by-U-Boot.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0001-ARM-dts-bcm283x-add-compatible-picked-up-by-U-Boot.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0002-ARM-dts-bcm2711-yellow-Mux-UART4-for-SiLabs-radio-mo.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0002-ARM-dts-bcm2711-yellow-Mux-UART4-for-SiLabs-radio-mo.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0002-ARM-dts-bcm2711-yellow-Mux-UART4-for-SiLabs-radio-mo.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0002-ARM-dts-bcm2711-yellow-Mux-UART4-for-SiLabs-radio-mo.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0003-ARM-dts-bcm2711-yellow-Mux-debug-UART5.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0003-ARM-dts-bcm2711-yellow-Mux-debug-UART5.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0003-ARM-dts-bcm2711-yellow-Mux-debug-UART5.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0003-ARM-dts-bcm2711-yellow-Mux-debug-UART5.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0004-ARM-dts-bcm2711-yellow-Enable-I2C6-by-default.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0004-ARM-dts-bcm2711-yellow-Enable-I2C6-by-default.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0004-ARM-dts-bcm2711-yellow-Enable-I2C6-by-default.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0004-ARM-dts-bcm2711-yellow-Enable-I2C6-by-default.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0005-ARM-dts-bcm2711-yellow-add-I2S-audio-codec.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0005-ARM-dts-bcm2711-yellow-add-I2S-audio-codec.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0005-ARM-dts-bcm2711-yellow-add-I2S-audio-codec.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0005-ARM-dts-bcm2711-yellow-add-I2S-audio-codec.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0006-ARM-dts-bcm2711-yellow-enable-GPIO-keys.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0006-ARM-dts-bcm2711-yellow-enable-GPIO-keys.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0006-ARM-dts-bcm2711-yellow-enable-GPIO-keys.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0006-ARM-dts-bcm2711-yellow-enable-GPIO-keys.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0007-ARM-dts-bcm2711-yellow-add-user-LED.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0007-ARM-dts-bcm2711-yellow-add-user-LED.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0007-ARM-dts-bcm2711-yellow-add-user-LED.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0007-ARM-dts-bcm2711-yellow-add-user-LED.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0008-ARM-dts-bcm2711-yellow-add-NXP-PCF85063A-RTC.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0008-ARM-dts-bcm2711-yellow-add-NXP-PCF85063A-RTC.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0008-ARM-dts-bcm2711-yellow-add-NXP-PCF85063A-RTC.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0008-ARM-dts-bcm2711-yellow-add-NXP-PCF85063A-RTC.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0009-ARM-dts-bcm2711-yellow-enable-USB-host-mode-by-defau.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0009-ARM-dts-bcm2711-yellow-enable-USB-host-mode-by-defau.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0009-ARM-dts-bcm2711-yellow-enable-USB-host-mode-by-defau.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0009-ARM-dts-bcm2711-yellow-enable-USB-host-mode-by-defau.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0010-ARM-dts-bcm2711-yellow-use-generic-activity-trigger-.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0010-ARM-dts-bcm2711-yellow-use-generic-activity-trigger-.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0010-ARM-dts-bcm2711-yellow-use-generic-activity-trigger-.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0010-ARM-dts-bcm2711-yellow-use-generic-activity-trigger-.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0011-ARM-dts-bcm2711-yellow-use-USB-OTG-mode-by-default.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0011-ARM-dts-bcm2711-yellow-use-USB-OTG-mode-by-default.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0011-ARM-dts-bcm2711-yellow-use-USB-OTG-mode-by-default.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0011-ARM-dts-bcm2711-yellow-use-USB-OTG-mode-by-default.patch diff --git a/host-portage/patches/sys-kernel/raspberrypi-sources/0012-ARM-dts-bcm2711-yellow-Add-LED-overrides.patch b/portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0012-ARM-dts-bcm2711-yellow-Add-LED-overrides.patch similarity index 100% rename from host-portage/patches/sys-kernel/raspberrypi-sources/0012-ARM-dts-bcm2711-yellow-Add-LED-overrides.patch rename to portage/config/host/etc/portage/patches/sys-kernel/raspberrypi-sources/0012-ARM-dts-bcm2711-yellow-Add-LED-overrides.patch diff --git a/portage/env/nobuildpkg b/portage/config/target/etc/portage/env/nobuildpkg similarity index 100% rename from portage/env/nobuildpkg rename to portage/config/target/etc/portage/env/nobuildpkg diff --git a/portage/make.conf/10-common.conf b/portage/config/target/etc/portage/make.conf/10-common.conf similarity index 100% rename from portage/make.conf/10-common.conf rename to portage/config/target/etc/portage/make.conf/10-common.conf diff --git a/portage/make.conf/20-binpkgs.conf b/portage/config/target/etc/portage/make.conf/20-binpkgs.conf similarity index 100% rename from portage/make.conf/20-binpkgs.conf rename to portage/config/target/etc/portage/make.conf/20-binpkgs.conf diff --git a/portage/make.conf/30-default-use.conf b/portage/config/target/etc/portage/make.conf/30-default-use.conf similarity index 100% rename from portage/make.conf/30-default-use.conf rename to portage/config/target/etc/portage/make.conf/30-default-use.conf diff --git a/portage/make.conf/40-lang.conf b/portage/config/target/etc/portage/make.conf/40-lang.conf similarity index 100% rename from portage/make.conf/40-lang.conf rename to portage/config/target/etc/portage/make.conf/40-lang.conf diff --git a/portage/make.conf/80-quiet.conf b/portage/config/target/etc/portage/make.conf/80-quiet.conf similarity index 100% rename from portage/make.conf/80-quiet.conf rename to portage/config/target/etc/portage/make.conf/80-quiet.conf diff --git a/portage/package.env/linux-firmware b/portage/config/target/etc/portage/package.env/linux-firmware similarity index 100% rename from portage/package.env/linux-firmware rename to portage/config/target/etc/portage/package.env/linux-firmware diff --git a/portage/package.license/firmware b/portage/config/target/etc/portage/package.license/firmware similarity index 100% rename from portage/package.license/firmware rename to portage/config/target/etc/portage/package.license/firmware diff --git a/portage/package.use/busybox b/portage/config/target/etc/portage/package.use/busybox similarity index 100% rename from portage/package.use/busybox rename to portage/config/target/etc/portage/package.use/busybox diff --git a/portage/package.use/firmware b/portage/config/target/etc/portage/package.use/firmware similarity index 100% rename from portage/package.use/firmware rename to portage/config/target/etc/portage/package.use/firmware diff --git a/portage/package.use/grub b/portage/config/target/etc/portage/package.use/grub similarity index 100% rename from portage/package.use/grub rename to portage/config/target/etc/portage/package.use/grub diff --git a/portage/package.use/python b/portage/config/target/etc/portage/package.use/python similarity index 100% rename from portage/package.use/python rename to portage/config/target/etc/portage/package.use/python diff --git a/portage/patches/sec-policy/selinux-base-policy b/portage/config/target/etc/portage/patches/sec-policy/selinux-base-policy similarity index 100% rename from portage/patches/sec-policy/selinux-base-policy rename to portage/config/target/etc/portage/patches/sec-policy/selinux-base-policy diff --git a/portage/patches/sec-policy/selinux-base/0001-systemd-Fixes-for-systemd-resolved.patch b/portage/config/target/etc/portage/patches/sec-policy/selinux-base/0001-systemd-Fixes-for-systemd-resolved.patch similarity index 100% rename from portage/patches/sec-policy/selinux-base/0001-systemd-Fixes-for-systemd-resolved.patch rename to portage/config/target/etc/portage/patches/sec-policy/selinux-base/0001-systemd-Fixes-for-systemd-resolved.patch diff --git a/portage/patches/sec-policy/selinux-base/0002-mount-Allow-mounting-on-etc_t.patch b/portage/config/target/etc/portage/patches/sec-policy/selinux-base/0002-mount-Allow-mounting-on-etc_t.patch similarity index 100% rename from portage/patches/sec-policy/selinux-base/0002-mount-Allow-mounting-on-etc_t.patch rename to portage/config/target/etc/portage/patches/sec-policy/selinux-base/0002-mount-Allow-mounting-on-etc_t.patch diff --git a/portage/patches/sec-policy/selinux-base/0003-kernel-Mark-unlabeled_t-as-mount-point-type.patch b/portage/config/target/etc/portage/patches/sec-policy/selinux-base/0003-kernel-Mark-unlabeled_t-as-mount-point-type.patch similarity index 100% rename from portage/patches/sec-policy/selinux-base/0003-kernel-Mark-unlabeled_t-as-mount-point-type.patch rename to portage/config/target/etc/portage/patches/sec-policy/selinux-base/0003-kernel-Mark-unlabeled_t-as-mount-point-type.patch diff --git a/portage/patches/sec-policy/selinux-base/0004-Allow-systemd-journald-list-cgroup-directories.patch b/portage/config/target/etc/portage/patches/sec-policy/selinux-base/0004-Allow-systemd-journald-list-cgroup-directories.patch similarity index 100% rename from portage/patches/sec-policy/selinux-base/0004-Allow-systemd-journald-list-cgroup-directories.patch rename to portage/config/target/etc/portage/patches/sec-policy/selinux-base/0004-Allow-systemd-journald-list-cgroup-directories.patch diff --git a/portage/patches/sec-policy/selinux-base/0005-Allow-systemd-to-create-directories.patch b/portage/config/target/etc/portage/patches/sec-policy/selinux-base/0005-Allow-systemd-to-create-directories.patch similarity index 100% rename from portage/patches/sec-policy/selinux-base/0005-Allow-systemd-to-create-directories.patch rename to portage/config/target/etc/portage/patches/sec-policy/selinux-base/0005-Allow-systemd-to-create-directories.patch diff --git a/portage/profile/package.provided b/portage/config/target/etc/portage/profile/package.provided similarity index 100% rename from portage/profile/package.provided rename to portage/config/target/etc/portage/profile/package.provided diff --git a/portage/savedconfig/sys-apps/busybox b/portage/config/target/etc/portage/savedconfig/sys-apps/busybox similarity index 100% rename from portage/savedconfig/sys-apps/busybox rename to portage/config/target/etc/portage/savedconfig/sys-apps/busybox diff --git a/portage/savedconfig/sys-kernel/linux-firmware b/portage/config/target/etc/portage/savedconfig/sys-kernel/linux-firmware similarity index 100% rename from portage/savedconfig/sys-kernel/linux-firmware rename to portage/config/target/etc/portage/savedconfig/sys-kernel/linux-firmware diff --git a/portage/repos/x-portage/metadata/layout.conf b/portage/repos/x-portage/metadata/layout.conf new file mode 100644 index 0000000..d43e61c --- /dev/null +++ b/portage/repos/x-portage/metadata/layout.conf @@ -0,0 +1 @@ +masters = gentoo diff --git a/portage/repos/x-portage/profiles/repo_name b/portage/repos/x-portage/profiles/repo_name new file mode 100644 index 0000000..de08db2 --- /dev/null +++ b/portage/repos/x-portage/profiles/repo_name @@ -0,0 +1 @@ +x-portage diff --git a/prepare.sh b/prepare.sh index 1c2fc73..030bd26 100755 --- a/prepare.sh +++ b/prepare.sh @@ -13,16 +13,16 @@ fi chown portage: "$(portageq envvar DISTDIR)" ARCH=$(PORTAGE_CONFIGROOT=/usr/${target} portageq envvar ARCH) +PKGDIR=$(portageq envvar PKGDIR) +FEATURES="${FEATURES} binpkg-multi-instance" -if [ -f /usr/${target}/etc/portage/make.conf ]; then - sed -i '/PKGDIR=/d' /usr/${target}/etc/portage/make.conf -fi # For some reason, libcap installs its pkg-config files in the wrong # place. More strangely, even though `PKG_CONFIG_PATH` contains that # directory, `pkg-config` does not find the `.pc` files for libcap. # We work around this by merging /usr/lib64/pkgconfig and # /usr/lib/pkgconfig. -FEATURES="${FEATURES} binpkg-multi-instance" \ +FEATURES="${FEATURES}" \ +PKGDIR="${PKGDIR}" \ ${target}-emerge -kb1vnj sys-libs/libcap if [ -d /usr/${target}/usr/lib/pkgconfig ] \ && [ ! -d /usr/${target}/usr/lib64/pkgconfig ]; then @@ -30,32 +30,35 @@ if [ -d /usr/${target}/usr/lib/pkgconfig ] \ ln -snf ../lib64/pkgconfig /usr/${target}/usr/lib/pkgconfig fi -if [ ! -d /usr/${target}/etc/portage/make.conf ]; then - mv /usr/${target}/etc/portage/make.conf \ - /usr/${target}/etc/portage/make.conf.orig - sed -ri 's: ?-pam::' /usr/${target}/etc/portage/make.conf.orig - ls -l /usr/${target}/etc/portage - mkdir /usr/${target}/etc/portage/make.conf - mv /usr/${target}/etc/portage/make.conf.orig \ - /usr/${target}/etc/portage/make.conf/10-base.conf -fi - -if [ ! -d /etc/portage/make.conf ]; then - mv /etc/portage/make.conf \ - /etc/portage/make.conf.orig - mkdir /etc/portage/make.conf - mv /etc/portage/make.conf.orig \ - /etc/portage/make.conf/10-base.conf +if [ ! -f portage/make.conf/10-crossdev.conf ]; then + sed -r \ + -e 's: ?-pam::' \ + -e '/PKGDIR=/d' \ + /usr/${target}/etc/portage/make.conf \ + > portage/config/target/etc/portage/make.conf/10-crossdev.conf fi ln -snf /var/db/repos/gentoo/profiles/default/linux/${ARCH}/17.0 \ /usr/${target}/etc/portage/make.profile +FEATURES="${FEATURES}" \ +PKGDIR="${PKGDIR}" \ ${target}-emerge -bk1nvj sys-libs/glibc +FEATURES="${FEATURES}" \ +PKGDIR=$(portageq envvar PKGDIR) \ +USE=pam \ ${target}-emerge -bknvj sys-apps/util-linux # Migrate to the merged-usr layout mkdir -p /usr/${target}/bin emerge -bknv --quiet-build=y merge-usr merge-usr --root=/usr/${target} + +# Set the Portage profile +ln -snf \ + /var/db/repos/gentoo/profiles/${profile} \ + portage/config/target/etc/portage/make.profile +ln -snf \ + $(realpath /etc/portage/make.profile) \ + portage/config/host/etc/portage/make.profile diff --git a/setup-local-repo.sh b/setup-local-repo.sh index 0914150..4bff544 100755 --- a/setup-local-repo.sh +++ b/setup-local-repo.sh @@ -5,13 +5,10 @@ set -e . ./config -mkdir -p /var/db/repos/x-portage/profiles /var/db/repos/x-portage/metadata -echo x-portage > /var/db/repos/x-portage/profiles/repo_name -echo 'masters = gentoo' > /var/db/repos/x-portage/metadata/layout.conf -mkdir -p /usr/${target}/etc/portage/repos.conf -cat > /usr/${target}/etc/portage/repos.conf/x-portage.conf < portage/config/target/etc/portage/repos.conf/x-portage.conf <