2024-01-30 13:22:04 -09:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
2024-04-27 06:06:50 -08:00
|
|
|
set -ouex pipefail
|
2024-01-30 13:22:04 -09:00
|
|
|
|
|
|
|
|
# Make Directory
|
2024-08-09 12:28:39 -08:00
|
|
|
mkdir -p /etc/containers/systemd/users
|
2024-01-30 13:22:04 -09:00
|
|
|
|
|
|
|
|
# bluefin-cli
|
2024-08-09 12:28:39 -08:00
|
|
|
curl -Lo /etc/containers/systemd/users/bluefin-cli.container https://raw.githubusercontent.com/ublue-os/toolboxes/main/quadlets/bluefin-cli/bluefin-cli.container
|
|
|
|
|
sed -i 's/ContainerName=bluefin/ContainerName=bluefin-cli/' /etc/containers/systemd/users/bluefin-cli.container
|
2024-01-30 13:22:04 -09:00
|
|
|
|
|
|
|
|
# bluefin-dx-cli
|
2024-08-09 12:28:39 -08:00
|
|
|
curl -Lo /etc/containers/systemd/users/bluefin-dx-cli.container https://raw.githubusercontent.com/ublue-os/toolboxes/main/quadlets/bluefin-cli/bluefin-dx-cli.container
|
|
|
|
|
sed -i 's/ContainerName=bluefin/ContainerName=bluefin-dx-cli/' /etc/containers/systemd/users/bluefin-dx-cli.container
|
2024-01-30 13:22:04 -09:00
|
|
|
|
|
|
|
|
# fedora-toolbox
|
2024-08-09 12:28:39 -08:00
|
|
|
curl -Lo /etc/containers/systemd/users/fedora-toolbox.container https://raw.githubusercontent.com/ublue-os/toolboxes/main/quadlets/fedora-toolbox/fedora-distrobox-quadlet.container
|
|
|
|
|
sed -i 's/ContainerName=fedora-distrobox-quadlet/ContainerName=fedora-toolbox/' /etc/containers/systemd/users/fedora-toolbox.container
|
2024-01-30 13:22:04 -09:00
|
|
|
|
|
|
|
|
# ubuntu-toolbox
|
2024-08-09 12:28:39 -08:00
|
|
|
curl -Lo /etc/containers/systemd/users/ubuntu-toolbox.container https://raw.githubusercontent.com/ublue-os/toolboxes/main/quadlets/ubuntu-toolbox/ubuntu-distrobox-quadlet.container
|
|
|
|
|
sed -i 's/ContainerName=ubuntu-distrobox-quadlet/ContainerName=ubuntu-toolbox/' /etc/containers/systemd/users/ubuntu-toolbox.container
|
2024-01-30 13:22:04 -09:00
|
|
|
|
|
|
|
|
# wolfi-toolbox
|
2024-08-09 12:28:39 -08:00
|
|
|
curl -Lo /etc/containers/systemd/users/wolfi-toolbox.container https://raw.githubusercontent.com/ublue-os/toolboxes/main/quadlets/wolfi-toolbox/wolfi-distrobox-quadlet.container
|
|
|
|
|
sed -i 's/ContainerName=wolfi-quadlet/ContainerName=wolfi-toolbox/' /etc/containers/systemd/users/wolfi-toolbox.container
|
2024-01-30 13:22:04 -09:00
|
|
|
|
|
|
|
|
# wolfi-dx-toolbox
|
2024-08-09 12:28:39 -08:00
|
|
|
curl -Lo /etc/containers/systemd/users/wolfi-dx-toolbox.container https://raw.githubusercontent.com/ublue-os/toolboxes/main/quadlets/wolfi-toolbox/wolfi-dx-distrobox-quadlet.container
|
|
|
|
|
sed -i 's/ContainerName=wolfi-quadlet/ContainerName=wolfi-dx-toolbox/' /etc/containers/systemd/users/wolfi-dx-toolbox.container
|
2024-01-30 13:22:04 -09:00
|
|
|
|
2024-05-18 16:53:10 -08:00
|
|
|
# Brew Integration for Fedora and Ubuntu Toolboxes
|
2024-08-09 12:28:39 -08:00
|
|
|
printf "\nVolume=/home/linuxbrew:/home/linuxbrew:rslave\nVolume=/etc/profile.d/brew.sh:/etc/profile.d/brew.sh:ro\nVolume=/usr/share/fish/vendor_conf.d/brew.fish:/usr/share/fish/vendor_conf.d/brew.fish:ro\n" >> /etc/containers/systemd/users/ubuntu-toolbox.container
|
|
|
|
|
printf "\nVolume=/home/linuxbrew:/home/linuxbrew:rslave\nVolume=/etc/profile.d/brew.sh:/etc/profile.d/brew.sh:ro\nVolume=/usr/share/fish/vendor_conf.d/brew.fish:/usr/share/fish/vendor_conf.d/brew.fish:ro\n" >> /etc/containers/systemd/users/fedora-toolbox.container
|
2024-05-18 16:53:10 -08:00
|
|
|
|
2024-04-21 11:24:45 -08:00
|
|
|
# Make systemd targets
|
2024-01-30 13:22:04 -09:00
|
|
|
mkdir -p /usr/lib/systemd/user
|
|
|
|
|
QUADLET_TARGETS=(
|
|
|
|
|
"bluefin-cli"
|
|
|
|
|
"bluefin-dx-cli"
|
|
|
|
|
"fedora-toolbox"
|
|
|
|
|
"ubuntu-toolbox"
|
|
|
|
|
"wolfi-toolbox"
|
|
|
|
|
"wolfi-dx-toolbox"
|
|
|
|
|
)
|
|
|
|
|
for i in "${QUADLET_TARGETS[@]}"
|
|
|
|
|
do
|
|
|
|
|
cat > "/usr/lib/systemd/user/${i}.target" <<EOF
|
|
|
|
|
[Unit]
|
|
|
|
|
Description=${i}"target for ${i} quadlet
|
|
|
|
|
|
|
|
|
|
[Install]
|
|
|
|
|
WantedBy=default.target
|
|
|
|
|
EOF
|
|
|
|
|
|
2024-04-21 11:24:45 -08:00
|
|
|
# Add ptyxis integration and have autostart tied to systemd targets
|
2024-08-09 12:28:39 -08:00
|
|
|
cat /usr/share/ublue-os/bluefin-cli/ptyxis-integration >> /etc/containers/systemd/users/"$i".container
|
|
|
|
|
printf "\n\n[Install]\nWantedBy=%s.target" "$i" >> /etc/containers/systemd/users/"$i".container
|
2024-02-03 14:48:52 -09:00
|
|
|
done
|