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 8579f58f68893c2baaafc21764e9f61d1fb35c45 --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 cd /usr/lib/modules kernels=(*) cp "${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 || :