#!/bin/bash set -ouex pipefail # Copy System Files onto root rsync -rvK /ctx/sys_files/ / # Copy cosign.pub key into the right location mkdir -p /etc/pki/containers cp /ctx/cosign.pub /etc/pki/containers/davejansen.pub ### Install packages # Add country query to all repo metalinks # shellcheck disable=SC2016 sed -i -e '/^metalink\=/s/\$releasever\&arch\=\$basearch$/\$releasever\&arch\=\$basearch\&country\=KR,JP,TW/g' /etc/yum.repos.d/*.repo # Update all existing packages dnf5 update -y # Install my own layered packages dnf5 install -y \ fish \ neovim \ ripgrep \ curl wget \ stow \ wl-clipboard \ htop \ gnupg2-scdaemon \ pinentry pinentry-tty pinentry-gnome3 \ patch gcc gcc-c++ \ python3 python3-pip \ nodejs \ dotnet-sdk-8.0 \ php composer # Install uv curl -LsSf https://astral.sh/uv/install.sh | sh # Install LazyGit dnf5 copr enable -y dejan/lazygit dnf5 install -y lazygit # Install `host-spawn` wget "https://github.com/1player/host-spawn/releases/download/$HOST_SPAWN/host-spawn-x86_64" chmod +x host-spawn-x86_64 mv host-spawn-x86_64 /usr/local/bin/host-spawn # Cleanup dnf5 clean # Remove tmp files rm -rf /tmp/* || true # # Make sure /var/tmp is properly created # mkdir -p /var/tmp # chmod -R 1777 /var/tmp echo "Done."