Skip to content

🧰 Fedora Toolbox – Uitgebreide Uitleg

📦 Wat is Fedora Toolbox?

Fedora Toolbox is een tool die je helpt om container-gebaseerde ontwikkelomgevingen op te zetten binnen je Fedora-systeem. Het is ontworpen om je een veilige, flexibele en schone omgeving te bieden waarin je software kunt ontwikkelen, testen en experimenteren zonder je hoofdinstallatie te beïnvloeden.

Toolbox maakt gebruik van Podman (een alternatief voor Docker) om containers te beheren. Deze containers zijn speciaal geconfigureerd om goed samen te werken met je bestaande gebruikersomgeving.

🧠 Waarom Toolbox gebruiken?

  • Isolatie zonder frictie: Je kunt tools en bibliotheken installeren zonder root-rechten en zonder je systeem te vervuilen.
  • Volledige integratie: Je home-directory, netwerk, audio, D-Bus en zelfs je gebruikersrechten zijn beschikbaar in de container.
  • Flexibiliteit: Je kunt meerdere containers maken voor verschillende projecten of Fedora-versies.
  • Veilig experimenteren: Als je iets breekt in een container, gooi je die gewoon weg en begin je opnieuw.

🖥️ Hoe werkt het?

Toolbox vereenvoudigt het gebruik van containers door een paar eenvoudige commando’s aan te bieden:

toolbox create            # Maak een nieuwe container
toolbox enter             # Ga de container binnen
toolbox list              # Toon bestaande containers
toolbox rm <naam>         # Verwijder een container

Containers worden gebaseerd op een Fedora-image die al is voorzien van standaardtools zoals dnf, bash, en andere CLI-hulpmiddelen.

🧪 Voorbeeldscenario

Stel je werkt aan een Python-project met experimentele bibliotheken. In plaats van deze op je host te installeren:

  1. Maak een toolbox-container: toolbox create
  2. Ga erin: toolbox enter
  3. Installeer je tools: dnf install python3-pip numpy pandas
  4. Werk aan je project in een schone, geïsoleerde omgeving

🛡️ Wat is het verschil met een virtuele machine?

Toolbox-containers zijn lichtgewicht en starten razendsnel. Ze delen resources met je host, zoals je bestanden en netwerk, maar zijn niet volledig geïsoleerd zoals een VM. Dat betekent: - Sneller en efficiënter - Minder overhead - Maar ook: niet geschikt voor onveilige scripts of root-experimenten

🧰 Compatibiliteit

Toolbox werkt op: - Fedora Silverblue (standaard geïnstalleerd) - Fedora Workstation en Server - Andere distributies zoals Ubuntu en Arch Linux (met wat extra stappen)

📚 Meer informatie


🛡 Fedora Toolbox Backup – Chatlog

📜 Gespreksoverzicht

👤 Gebruiker: Ik wil een backup maken van een lopende toolbox op Fedora
🤖 Copilot: Uitleg over het maken van een back‑up van een draaiende toolbox‑container met podman export
👤 Gebruiker: Ja graag (voor automatisch maken met systemd timers)
🤖 Copilot: Volledig stappenplan met script, service, en timer


🧰 Handmatig een Toolbox back‑uppen

  1. 🔍 Containernaam achterhalen

    toolbox list
    
    Zoek in de kolom “NAME” welke container je wilt back‑uppen.

  2. 📦 Container exporteren

    podman export <container_naam> > mijn_toolbox_backup.tar
    
    → Exporteert het volledige bestandssysteem (geen RAM‑staat).

  3. 🗜 Optioneel comprimeren

    gzip mijn_toolbox_backup.tar
    

  4. Terugzetten

    podman import mijn_toolbox_backup.tar.gz nieuwe_toolbox_image
    toolbox create --image nieuwe_toolbox_image
    

💡 Tips
- 📁 Maak ook een aparte back‑up van persoonlijke data buiten de container.
- ⏸ Voor processen “bevriezen” → onderzoek podman checkpoint (geavanceerd).


⏳ Automatisch back‑uppen met systemd timer

1️⃣ Script maken

📂 Pad: ~/scripts/toolbox-backup.sh

#!/usr/bin/env bash
CONTAINER="mijn_toolbox"
DATUM=$(date +"%Y%m%d-%H%M")
BACKUP_DIR="$HOME/toolbox-backups"

mkdir -p "$BACKUP_DIR"

podman export "$CONTAINER" > "$BACKUP_DIR/toolbox-$DATUM.tar"
gzip "$BACKUP_DIR/toolbox-$DATUM.tar"

# 🧹 Oude back-ups opruimen (ouder dan 7 dagen)
find "$BACKUP_DIR" -type f -mtime +7 -delete
Maak uitvoerbaar:
chmod +x ~/scripts/toolbox-backup.sh


2️⃣ systemd‑service

📂 Pad: ~/.config/systemd/user/toolbox-backup.service

[Unit]
Description=Maak een back-up van mijn Fedora toolbox

[Service]
Type=oneshot
ExecStart=%h/scripts/toolbox-backup.sh


3️⃣ Timer

📂 Pad: ~/.config/systemd/user/toolbox-backup.timer

[Unit]
Description=Dagelijkse back-up van mijn Fedora toolbox

[Timer]
OnCalendar=*-*-* 02:00:00
Persistent=true

[Install]
WantedBy=timers.target

⏰ Pas OnCalendar aan naar het gewenste tijdstip.


4️⃣ Timer activeren

systemctl --user daemon-reload
systemctl --user enable --now toolbox-backup.timer

5️⃣ Status controleren

systemctl --user list-timers

💡 Pro‑tip: 🔄 Voor meerdere toolboxes → in het script een lus maken over toolbox list.

🏠 HOME 🔝 Top