blendOS-tracks/core-arch.yaml

127 lines
3.2 KiB
YAML

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 || :