1
0
Fork
You've already forked TUI-Store
0
ein Terminal basierender Software-Store für NixOS
  • Shell 100%
2026年05月22日 12:40:01 +02:00
install.sh Dateien nach „/" hochladen 2026年05月22日 12:37:13 +02:00
README.md README.md aktualisiert 2026年05月22日 12:40:01 +02:00
tui-store.sh Dateien nach „/" hochladen 2026年05月22日 12:37:13 +02:00

🐧 NixOS Software Store — TUI v3.1

Ein interaktiver Terminal-basierter Paket-Manager für NixOS mit fuzzy-Suche, Kategorien und automatischer Modul-Konfiguration.

╔══════════════════════════════════════════╗
║ 🐧 NixOS Software Store v3.1 ║
║ Inkl. VM & System-Modul-Support ║
╚══════════════════════════════════════════╝

Features

  • Kategorisierte Paketliste mit über 80 kuratierten Paketen in 11 Kategorien
  • Zwei Installationsmodi — systemweit via nixos-rebuild oder lokal via nix profile
  • Automatische Modul-Konfiguration — z. B. aktiviert virt-manager automatisch libvirtd, Gruppen & KVM
  • Unfree-Pakete klar markiert (🔒) und werden automatisch in nixpkgs.config.allowUnfree freigeschaltet
  • Idempotent — bereits installierte Pakete werden erkannt und übersprungen
  • Flakes-kompatibel — neue Konfigurationsdateien werden automatisch via git add getrackt
  • Automatische Backups — vor jeder Änderung wird ein Snapshot der Nix-Config erstellt
  • fzf Auto-Bootstrap — falls fzf nicht installiert ist, wird es automatisch nachgezogen
  • Desktop-Integration — optionaler .desktop-Eintrag via install.sh

📦 Paketkategorien

Kategorie Beispiel-Pakete
🌐 Internet Firefox, Brave, Thunderbird, Signal, Discord
🎵 Multimedia VLC, OBS Studio, Spotify, Kdenlive, LMMS
🖥️ Entwicklung VS Code, Neovim, Git, Docker, Rust, Go
🖋️ Büro LibreOffice, Obsidian, Zotero, Anki, TeX Live
🎮 Gaming Steam, Lutris, Heroic, Bottles, RetroArch
🔧 System-Tools btop, bat, eza, ripgrep, Starship, Zellij
🖼️ Grafik GIMP, Inkscape, Krita, Blender, darktable
🔒 Sicherheit KeePassXC, Wireshark, OpenVPN, VeraCrypt
📦 Terminals Kitty, Ghostty, WezTerm, fish, Zsh
🤖 KI / ML Ollama, Open WebUI, PyTorch, JupyterLab
💻 Virtualisierung Virt-Manager, VirtualBox, Docker, Podman

🚀 Installation

Voraussetzungen

  • NixOS mit configuration.nix
  • Bash 4+
  • sudo-Rechte (für systemweite Installation)
  • fzf — wird automatisch installiert, falls nicht vorhanden

Schnellstart

# Beide Dateien in denselben Ordner legen:
# tui-store.sh
# install.sh
chmod +x install.sh
./install.sh

Der Installer richtet automatisch ein:

  • ~/.local/bin/tui-store — das Hauptskript
  • ~/.local/bin/tui-store-launch — Wrapper für den Desktop-Start
  • ~/.local/share/icons/tui-store.svg — App-Icon
  • ~/.local/share/applications/tui-store.desktop — Startmenü-Eintrag

Manuell (ohne Installer)

chmod +x tui-store.sh
sudo ./tui-store.sh

PATH einrichten (falls nötig)

# ~/.bashrc oder ~/.zshrc
export PATH="$HOME/.local/bin:$PATH"
# fish
fish_add_path $HOME/.local/bin
# NixOS configuration.nix
environment.extraInit = "export PATH=$HOME/.local/bin:$PATH";

🎮 Bedienung

ENTER Kategorie / Paket auswählen
TAB Mehrere Pakete markieren
ESC Zurück / Beenden
↑ ↓ Navigation
Eingabe Fuzzy-Suche in Echtzeit

Nach der Paketauswahl erscheint ein Menü:

1) Systemweit — schreibt in /etc/nixos/software-store-packages.nix
 und führt nixos-rebuild switch aus
2) Nur für mich — installiert via nix profile install (kein Rebuild)
3) Abbrechen

⚙️ Wie es funktioniert

Der Store verwaltet eine eigene Nix-Datei /etc/nixos/software-store-packages.nix, die automatisch in deine configuration.nix eingebunden wird. Pakete werden dort eingetragen und dann per nixos-rebuild switch aktiviert — ohne dass du die Hauptkonfiguration manuell anfassen musst.

configuration.nix
 └── imports
 └── software-store-packages.nix ← vom Store verwaltet
 ├── environment.systemPackages = [ ... ]
 └── NixOS-Module (libvirtd, steam, docker, ...)

Für bestimmte Pakete werden zusätzliche NixOS-Module automatisch konfiguriert:

Paket Automatisch konfiguriert
virt-manager virtualisation.libvirtd.enable, User-Gruppe libvirtd
gnome-boxes virtualisation.libvirtd.enable, User-Gruppe libvirtd
virtualbox virtualisation.virtualbox.host.enable, User-Gruppe vboxusers
docker virtualisation.docker.enable, User-Gruppe docker
steam programs.steam.enable, hardware.steam-hardware.enable

🗑️ Deinstallation

rm ~/.local/bin/tui-store \
 ~/.local/bin/tui-store-launch \
 ~/.local/share/icons/tui-store.svg \
 ~/.local/share/applications/tui-store.desktop

Die NixOS-Konfiguration unter /etc/nixos/software-store-packages.nix bleibt erhalten und muss ggf. manuell aus den imports in der configuration.nix entfernt werden.


🛡️ Sicherheit & Backups

Vor jeder Änderung an der Nix-Konfiguration wird automatisch ein Backup erstellt:

/etc/nixos/software-store-packages.nix.bak-20240101-120000

Bei einem fehlgeschlagenen Rebuild:

# Backup einspielen
sudo cp /etc/nixos/software-store-packages.nix.bak-<TIMESTAMP> \
 /etc/nixos/software-store-packages.nix
# Rebuild mit Trace für Fehleranalyse
sudo nixos-rebuild switch --show-trace

🐛 Bekannte Hinweise

  • VM-Software (Virt-Manager, VirtualBox, Docker): Nach der Installation einmal ab- und neu anmelden, damit die Gruppen-Rechte wirksam werden.
  • Lokale Installation (Option 2): VM-spezifische Pakete wie virt-manager oder docker benötigen Systemrechte und müssen über Option 1 installiert werden.
  • Flakes: Wird ein Git-Repository in /etc/nixos erkannt, wird die Store-Konfigurationsdatei automatisch via git add getrackt.

📄 Lizenz

MIT — frei verwendbar, anpassbar und weitergabefähig.