#!/usr/bin/bash if [[ $(whoami) == "root" ]]; then echo "Do not run this script as root." exit fi while ! [[ "$podman_mode" =~ ^(rootful|rootless)$ ]]; do read -rp "Rootful or rootless Podman? " podman_mode done declare -a podman_units=(podman.service podman.socket podman-auto-update.service podman-auto-update.timer podman-clean-transient.service podman-restart.service) if [[ "$podman_mode" == "rootless" ]]; then sudo apt install -y aardvark-dns dbus-user-session nftables passt podman podman-compose python3-mako uidmap sudo loginctl enable-linger "$USER" sudo systemctl disable --now "${podman_units[@]}" systemctl --user enable --now "${podman_units[@]}" else sudo apt install -y aardvark-dns nftables podman podman-compose python3-mako systemctl --user disable --now "${podman_units[@]}" sudo systemctl enable --now "${podman_units[@]}" fi declare -A sysctl_vars=( [vm.overcommit_memory]=1 [net.core.wmem_max]=7500000 [net.core.rmem_max]=7500000 ) echo -n "" | sudo tee /etc/sysctl.d/podman.conf for key in "${!sysctl_vars[@]}"; do value="${sysctl_vars[$key]}" echo "$key = $value" | sudo tee -a /etc/sysctl.d/podman.conf done sudo sysctl -p /etc/sysctl.d/podman.conf sudo systemctl enable --now nftables