track: "base" modules: - name: exec run: | for cmd in "$@"; do bash -s <<< "$cmd" done - name: pacman-install run: | pacman -Syqu --noconfirm "$@" || pacman -Syqu --noconfirm "$@" - name: pacman-remove run: | pacman -Rcns --noconfirm "$@" stages: - module: pacman-install inputs: - "jq" - "git" - "sudo" - "grub" - "nano" - "linux" - "linux-firmware" - "dracut" - "skopeo" - "umoci" - "pacman-contrib" - "python" - "python-yaml" - "python-click" - "python-requests" - "python-fasteners" - module: exec inputs: - | git clone --revision 8e7e5cb576d751539e5e61a2801e098db2873ffd --depth 1 https://git.ruds.io/rs2009/akshara /akshara cd /akshara cp -a usr/lib/akshara /usr/lib/akshara cp -a usr/lib/dracut/modules.d/10akshara /usr/lib/dracut/modules.d/10akshara cp usr/bin/akshara /usr/bin/akshara - rm -rf /akshara post-stages: - module: exec inputs: - locale-gen - rm -f /boot/* &>/dev/null pushd /usr/lib/modules kernels=(*) popd cp /usr/lib/modules/"${kernels[0]}"/vmlinuz /boot/vmlinuz-"${kernels[0]}" - dracut --force --regenerate-all override: - path: /var/lib/pacman/ keep: new - path: /etc/pacman.conf keep: new - path: /var/cache/blendOS/ keep: old needs-update: - | [ "$(checkupdates | wc -l)" -gt 0 ] auto-update: enabled: false distro-config: initialise: | set -e mkdir -p /var/cache/blendOS/pacman/pkg mkdir -m 0755 -p ./var/{cache/blendOS,lib/pacman,log} ./{dev,run,etc/pacman.d} mkdir -m 1777 -p ./tmp mkdir -m 0555 -p ./{sys,proc} cat <<'EOF' >./etc/pacman.conf [options] HoldPkg = pacman glibc Architecture = auto CheckSpace ParallelDownloads = 5 CacheDir = /var/cache/blendOS/pacman/pkg/ SigLevel = Never LocalFileSigLevel = Never RemoteFileSigLevel = Never [core] Server = https://fastly.mirror.pkgbuild.com/$repo/os/$arch Server = https://geo.mirror.pkgbuild.com/$repo/os/$arch Server = https://ftpmirror.infania.net/mirror/archlinux/$repo/os/$arch Server = https://mirror.rackspace.com/archlinux/$repo/os/$arch [extra] Server = https://fastly.mirror.pkgbuild.com/$repo/os/$arch Server = https://geo.mirror.pkgbuild.com/$repo/os/$arch Server = https://ftpmirror.infania.net/mirror/archlinux/$repo/os/$arch Server = https://mirror.rackspace.com/archlinux/$repo/os/$arch [multilib] Server = https://fastly.mirror.pkgbuild.com/$repo/os/$arch Server = https://geo.mirror.pkgbuild.com/$repo/os/$arch Server = https://ftpmirror.infania.net/mirror/archlinux/$repo/os/$arch Server = https://mirror.rackspace.com/archlinux/$repo/os/$arch EOF mount --bind /var/cache/blendOS ./var/cache/blendOS pacman -Sy --config ./etc/pacman.conf --cachedir ./var/cache/blendOS/pacman/pkg -r . --needed --noconfirm base ln -sfn usr/lib64 ./lib64 ln -sfn usr/sbin ./sbin cp /etc/locale.gen ./etc cp /etc/locale.conf ./etc finalise: | umount -l ./var/cache/blendOS