Files
bzz-initrd/PKGBUILD
T

123 lines
2.3 KiB
Bash

# Maintainer: Kira <[@kira](https://dev.kira-linux.org/kira)>
pkgname=bzz-initrd
pkgver=0.1.7
pkgrel=1
pkgdesc='Initrd image for Kira Linux'
url='https://dev.kira-linux.org'
arch=(x86_64)
_nyanit_ver=0.1.6
_nyanit_src=v${_nyanit_ver}.tar.gz
makedepends=(
bcachefs-tools
dosfstools
coreutils
pax-utils
rust
tar
bc
cpio
gettext
pahole
perl
python
xz
gzip
zstd
)
options=(
!debug
)
_nyanit_src_dir=nyanit
source=(
https://dev.kira-linux.org/kira-linux/nyanit/archive/${_nyanit_src}
)
# source=(
# nyanit.zip
# )
sha256sums=('3b71ddc98088ecde2c9a87815ba7f11ae126df7b3d3e6b44846b135234637300')
b2sums=('848605659ca4d5399720f0e8baf2abfdf05ba970b1eb117a7477ec6cd6e407690c9f28e76f1a225558f3d9e0747c4a0d5e9e24b6965b6a700f6ba2ae09951e16')
_tools_list=(
/usr/bin/mount
/usr/bin/umount
/usr/bin/bcachefs
/usr/bin/fsck
/usr/bin/fsck.vfat
/usr/bin/switch_root
/usr/bin/lsblk
/usr/bin/blkid
)
build() {
echo "Building NYANIT..."
cd $_nyanit_src_dir
cargo build --release
cp target/release/nyanit $srcdir/init
chmod +x $srcdir/init
echo "##### DONE Building NYANIT #####"
echo ""
echo "Populate initdramfs tree..."
cd $srcdir
mkdir -p initramfs/{dev,proc,sys,mnt,tmp,etc,usr,usr/bin,usr/lib}
echo "Create /bin /lib /lib64 simlinks"
cd $srcdir/initramfs
ln -s usr/lib lib64
ln -s usr/lib lib
ln -s usr/bin bin
cd $srcdir/initramfs/usr
ln -s lib lib64
echo "Install NYANIT..."
cd $srcdir
lddtree --bindir / --copy-to-tree $srcdir/initramfs init
echo "Copy libs and binaries"
cd $srcdir
lddtree --copy-to-tree $srcdir/initramfs "${_tools_list[@]}"
echo "Remove setuid flag from everything..."
chmod -R a-s $srcdir/initramfs
}
package() {
pkgdesc="The $pkgdesc kernel and modules"
license=(
GPL-3.0-or-later
GPL-2.0-or-later
GPL-2.0-only
Zlib
)
echo "Create device node"
cd $srcdir/initramfs
mknod -m 622 dev/console c 5 1
# echo "Change owner to root"
# chown -R root:root $srcdir/initramfs
# echo "Run ldconfig"
# ldconfig -r $srcdir/initramfs -v
# Create cpio archive
echo "Create cpio archive"
cd $srcdir/initramfs
find . | cpio -ov --format=newc > ../initramfs.cpio
echo "Installing bzz-initrd"
install -vDm 644 $srcdir/initramfs.cpio -t "$pkgdir/usr/share/$pkgname/"
}