parent
91191a2947
commit
a7de3101a8
2 changed files with 22 additions and 28 deletions
pkgs
|
@ -35,17 +35,10 @@ mkdir rootfs
|
|||
cp -prP ${patosPkgs.rootfs}/* rootfs/
|
||||
find rootfs/ -type d -exec chmod 755 {} \;
|
||||
|
||||
# package kernel modules as sysext
|
||||
pkgName="patos-kernel-modules-${version}"
|
||||
mkdir -p ./tree/usr/lib/extension-release.d
|
||||
cat << EOF > ./tree/usr/lib/extension-release.d/extension-release.patos-kernel-modules
|
||||
ID=patos
|
||||
IMAGE_ID=patos-kernel-modules
|
||||
IMAGE_VERSION=${version}
|
||||
VERSION_ID=patos
|
||||
EOF
|
||||
cp -Prp rootfs/usr/lib/modules ./tree/usr/lib/modules && rm -rf rootfs/usr/lib/modules
|
||||
tar -cJf $pkgName.tar.xz -C ./tree . --owner=root:0 --group=root:0 && rm -rf tree
|
||||
# package kernel modules as sysext (will reduce the image size a little bit (~3MB))
|
||||
mkdir rootfs/etc/extensions
|
||||
rm -rf rootfs/usr/lib/modules
|
||||
cp ${patosPkgs.kernel}/patos-kernel-modules* rootfs/etc/extensions/
|
||||
|
||||
# set default target to multi-user
|
||||
ln -sf multi-user.target rootfs/usr/lib/systemd/system/default.target
|
||||
|
@ -137,23 +130,6 @@ ReadOnly=1
|
|||
Verify=no
|
||||
EOF
|
||||
|
||||
cat <<EOF > rootfs/etc/sysupdate.d/30-kernel-modules.transfer
|
||||
[Source]
|
||||
Type=url-tar
|
||||
Path=${updateUrl}
|
||||
MatchPattern=patos-kernel-modules-@v.tar.xz
|
||||
|
||||
[Target]
|
||||
Type=subvolume
|
||||
Path=/var/lib/extensions
|
||||
MatchPattern=patos-kernel-modules-@v
|
||||
CurrentSymlink=patos-kernel-modules
|
||||
|
||||
[Transfer]
|
||||
Verify=no
|
||||
EOF
|
||||
|
||||
|
||||
# Initial partitioning
|
||||
cat <<EOF > init.repart.d/10-root.conf
|
||||
[Partition]
|
||||
|
|
|
@ -22,6 +22,8 @@
|
|||
pahole,
|
||||
kmod,
|
||||
ubootTools,
|
||||
erofs-utils,
|
||||
cryptsetup,
|
||||
fetchpatch,
|
||||
rustc,
|
||||
rust-bindgen,
|
||||
|
@ -224,6 +226,8 @@ lib.makeOverridable (
|
|||
python3Minimal
|
||||
kmod
|
||||
hexdump
|
||||
erofs-utils
|
||||
cryptsetup
|
||||
]
|
||||
++ optional needsUbootTools ubootTools
|
||||
++ optionals (lib.versionAtLeast version "5.2") [
|
||||
|
@ -496,6 +500,20 @@ lib.makeOverridable (
|
|||
|
||||
# Delete empty directories
|
||||
find -empty -type d -delete
|
||||
|
||||
pkgName="patos-kernel-modules"
|
||||
mkdir -p $out/tree/usr/lib/extension-release.d
|
||||
cat << EOF > $out/tree/usr/lib/extension-release.d/extension-release.$pkgName
|
||||
ID=patos
|
||||
IMAGE_ID=$pkgName
|
||||
IMAGE_VERSION=${version}
|
||||
VERSION_ID=patos
|
||||
EOF
|
||||
cp -Prp $out/lib/modules $out/tree/usr/lib/modules
|
||||
find $out/tree -type d -exec chmod 0755 {} \;
|
||||
mkfs.erofs --all-root -zlz4hc,12 -C1048576 -Efragments,dedupe,ztailpacking $out/$pkgName.raw $out/tree/
|
||||
veritysetup format --root-hash-file $out/$pkgName.roothash $out/$pkgName.raw $out/$pkgName.verity
|
||||
chmod -R 755 $out/tree && rm -rf $out/tree
|
||||
'';
|
||||
|
||||
requiredSystemFeatures = [ "big-parallel" ];
|
||||
|
|
Loading…
Add table
Reference in a new issue