34 lines
1.2 KiB
Fish
Executable file
34 lines
1.2 KiB
Fish
Executable file
#!/bin/env fish
|
|
set -l dir (status dirname)
|
|
set -l container valhalla-test
|
|
set -l containerDir "/var/lib/lxc/$container"
|
|
set -l valhallaRoot opt/PortValhalla
|
|
sudo lxc-stop "$container"
|
|
sudo lxc-destroy "$container"
|
|
sudo lxc-create "$container" -t download -- --dist archlinux --release current --arch amd64
|
|
sudo mkdir -p "$containerDir/rootfs/$valhallaRoot"
|
|
|
|
begin
|
|
printf "%s\n" \
|
|
"" \
|
|
"# Docker" \
|
|
"lxc.apparmor.profile = unconfined" \
|
|
"" \
|
|
"# Shared Folder" \
|
|
"lxc.mount.entry = $(realpath "$dir/../..") $valhallaRoot none bind 0 0" \
|
|
"" \
|
|
"# VPN" \
|
|
"lxc.cgroup2.devices.allow = c 10:200 rwm" \
|
|
"lxc.mount.entry = /dev/net dev/net none bind,create=dir 0 0"
|
|
end | sudo tee -a "$containerDir/config" >/dev/null
|
|
|
|
sudo lxc-start "$container"
|
|
|
|
while not sudo lxc-attach "$container" -- ping -q -c1 5.9.164.112 &>/dev/null
|
|
sleep .1
|
|
end
|
|
|
|
sudo lxc-attach "$container" -- systemctl start systemd-networkd-wait-online.service
|
|
sudo lxc-attach "$container" -- ln -s (readlink /etc/localtime) /etc/localtime
|
|
sudo lxc-attach "$container" -- pacman --noconfirm -Syu fish
|
|
sudo lxc-attach "$container" -- "/$valhallaRoot/scripts/arch-install.fish"
|