# In deiner home.nix { config, pkgs, ... }: { home.stateVersion = "25.11"; home.packages = with pkgs; [ # Desktop-Anwendungen thunderbird vlc gimp filezilla solaar jameica libreoffice-fresh hunspell hunspellDicts.de_DE darktable # davinci-resolve-studio # Browser google-chrome # Kommunikation signal-desktop # Remote Desktop rustdesk-flutter # Gaming lutris steam # Entwicklung jetbrains-toolbox mkcert gitflow stow gnumake p7zip cacert ]; # Powerlevel10k Theme installieren home.activation.installPowerlevel10k = config.lib.dag.entryAfter ["writeBoundary"] '' P10K_DIR="$HOME/.oh-my-zsh/custom/themes/powerlevel10k" if [ ! -d "$P10K_DIR" ]; then $DRY_RUN_CMD mkdir -p "$HOME/.oh-my-zsh/custom/themes" $DRY_RUN_CMD ${pkgs.git}/bin/git clone --depth=1 \ https://github.com/romkatv/powerlevel10k.git "$P10K_DIR" || true fi ''; # Flatpak Apps installieren # HINWEIS: Diese werden beim ersten home-manager switch installiert # Dandanch werden sie von Flatpak selbst verwaltet home.activation.installFlatpakApps = config.lib.dag.entryAfter ["writeBoundary"] '' # Flathub Remote hinzufügen (falls noch nicht vorhanden) $DRY_RUN_CMD ${pkgs.flatpak}/bin/flatpak remote-add --if-not-exists --user \ flathub https://dl.flathub.org/repo/flathub.flatpakrepo || true # Extension Manager if ! ${pkgs.flatpak}/bin/flatpak list --user | grep -q "com.mattjakeman.ExtensionManager"; then $DRY_RUN_CMD ${pkgs.flatpak}/bin/flatpak install --user -y flathub \ com.mattjakeman.ExtensionManager || true fi # Kdenlive (Video-Bearbeitung) if ! ${pkgs.flatpak}/bin/flatpak list --user | grep -q "org.kde.kdenlive"; then $DRY_RUN_CMD ${pkgs.flatpak}/bin/flatpak install --user -y flathub \ org.kde.kdenlive || true fi # PrismLauncher (Minecraft) if ! ${pkgs.flatpak}/bin/flatpak list --user | grep -q "org.prismlauncher.PrismLauncher"; then $DRY_RUN_CMD ${pkgs.flatpak}/bin/flatpak install --user -y flathub \ org.prismlauncher.PrismLauncher || true mkdir -p /home/Programme/Minecraft/ chmod 2775 /home/Programme/Minecraft/ chgrp users /home/Programme/Minecraft/ # Minecraft-Verzeichnis Zugriff gewähren $DRY_RUN_CMD ${pkgs.flatpak}/bin/flatpak override --user \ org.prismlauncher.PrismLauncher --filesystem=/home/Programme/Minecraft/ || true fi ''; # mkcert installieren (für lokale SSL-Zertifikate) home.activation.setupMkcert = config.lib.dag.entryAfter ["writeBoundary"] '' if [ ! -f "$HOME/.local/share/mkcert/rootCA.pem" ]; then $DRY_RUN_CMD ${pkgs.mkcert}/bin/mkcert -install || true fi ''; programs.git = { enable = true; settings = { init.defaultBranch = "main"; core.editor = "vim"; pull.rebase = false; }; }; # Vim Konfiguration programs.vim = { enable = true; defaultEditor = true; settings = { number = true; relativenumber = true; tabstop = 2; shiftwidth = 2; expandtab = true; }; extraConfig = '' syntax on set encoding=utf-8 set autoindent set smartindent ''; }; # Zsh mit Oh-My-Zsh und Powerlevel10k programs.zsh = { enable = true; enableCompletion = true; autosuggestion.enable = true; syntaxHighlighting.enable = true; oh-my-zsh = { enable = true; theme = "powerlevel10k/powerlevel10k"; plugins = [ "git" "git-flow" "docker" "docker-compose" "systemd" "sudo" ]; custom = "$HOME/.oh-my-zsh/custom"; }; shellAliases = { ll = "ls -lah"; la = "ls -A"; l = "ls -CF"; ".." = "cd .."; "..." = "cd ../.."; rebuild = "sudo nixos-rebuild switch"; update = "sudo nixos-rebuild switch --upgrade"; }; initContent = '' # Powerlevel10k Konfiguration laden (falls vorhanden) [[ -f ~/.p10k.zsh ]] && source ~/.p10k.zsh ''; }; home.file.".p10k.zsh".source = ./config/p10k.zsh; # GTK Theme (optional, für besseres Aussehen) gtk = { enable = true; theme = { name = "Adwaita-dark"; package = pkgs.gnome-themes-extra; }; }; }