From 8929ef9913c366ed6f3847bdbbab66053fdba6aa Mon Sep 17 00:00:00 2001 From: Sebastian Fischer Date: Mon, 9 Feb 2026 21:56:01 +0100 Subject: [PATCH 1/5] [TASK] Change after reboot commands --- README.md | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 5c76f76..a838d38 100644 --- a/README.md +++ b/README.md @@ -115,15 +115,7 @@ boot.loader = { }; ``` -### 8. Home Manager Channel hinzufuegen - -```bash -nix-channel --add https://github.com/nix-community/home-manager/archive/release-25.11.tar.gz home-manager -nix-channel --add https://github.com/nix-community/home-manager/archive/release-25.11.tar.gz home-manager -nix-channel --update -``` - -### 9. System installieren +### 8. System installieren ```bash nixos-install @@ -135,9 +127,12 @@ Nach der Installation wird ein Root-Passwort abgefragt. Danach: reboot ``` -### 10. Nach dem ersten Start +### 9. Nach dem ersten Start ```bash +nix-channel --add https://github.com/nix-community/home-manager/archive/release-25.11.tar.gz home-manager +nix-channel --update + # Konfiguration anwenden sudo nixos-rebuild switch From 3ba29087293a4899a81a296f6dfa77b10508541e Mon Sep 17 00:00:00 2001 From: Sebastian Fischer Date: Tue, 10 Feb 2026 07:56:22 +0100 Subject: [PATCH 2/5] [TASK] Migrate flatpak packages --- config/home.nix | 21 ++----------- scripts/minimal-install.sh | 61 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+), 19 deletions(-) create mode 100644 scripts/minimal-install.sh diff --git a/config/home.nix b/config/home.nix index dd86b6b..34e0332 100644 --- a/config/home.nix +++ b/config/home.nix @@ -21,6 +21,7 @@ in hunspellDicts.de_DE darktable + kdePackages.kdenlive # davinci-resolve-studio # Browser @@ -35,6 +36,7 @@ in # Gaming lutris steam + prismlauncher # Entwicklung jetbrains-toolbox @@ -79,25 +81,6 @@ in $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) diff --git a/scripts/minimal-install.sh b/scripts/minimal-install.sh new file mode 100644 index 0000000..876cacd --- /dev/null +++ b/scripts/minimal-install.sh @@ -0,0 +1,61 @@ +#!/usr/bin/env sh + +sudo -i + +loadkeys de + +lsbkl + + +# GPT-Partitionstabelle erstellen +parted /dev/sda -- mklabel gpt + +# EFI-Partition (512 MB) +parted /dev/sda -- mkpart esp fat32 1MB 512MB +parted /dev/sda -- set 1 esp on + +# Swap-Partition (8 GB) +parted /dev/sda -- mkpart swap linux-swap 512MB 8626MB + +# Root-Partition (ca. 45 GB) +parted /dev/sda -- mkpart root ext4 8636MB 40000MB + +# Home-Partition (Rest) +parted /dev/sda -- mkpart home ext4 40000MB 100% + +# Ergebnis pruefen +parted /dev/sda -- print + + +# EFI-Partition formatieren +mkfs.fat -F 32 -n boot /dev/sda1 + +# Swap-Partition formatieren +mkswap -L swap /dev/sda2 + +# Root-Partition formatieren +mkfs.ext4 -L nixos /dev/sda3 + +# Home-Partition formatieren +mkfs.ext4 -L home /dev/sda4 + + +# Root mounten +mount /dev/disk/by-label/nixos /mnt + +# Boot-Verzeichnis erstellen und mounten +mkdir /mnt/boot +mount -o umask=077 /dev/disk/by-label/boot /mnt/boot + +# Home-Verzeichnis erstellen und mounten +mkdir -p /mnt/home +mount /dev/disk/by-label/home /mnt/home + +# Swap aktivieren +swapon /dev/disk/by-label/swap + + +nixos-generate-config --root /mnt + +nixos-enter --root '/mnt' +passwd From 5fe8e0d8f2c692311dd7cebf9e7106a24911706d Mon Sep 17 00:00:00 2001 From: Sebastian Fischer Date: Tue, 10 Feb 2026 08:00:18 +0100 Subject: [PATCH 3/5] [TASK] Remove last flatpak usage --- config/common.nix | 3 --- config/home.nix | 15 --------------- 2 files changed, 18 deletions(-) diff --git a/config/common.nix b/config/common.nix index 6567f1d..c1c7e3b 100644 --- a/config/common.nix +++ b/config/common.nix @@ -54,9 +54,6 @@ programs.zsh.enable = true; programs.git.enable = true; - # Flatpak Support - services.flatpak.enable = true; - # Sound services.pulseaudio.enable = false; services.pipewire = { diff --git a/config/home.nix b/config/home.nix index 34e0332..8d55161 100644 --- a/config/home.nix +++ b/config/home.nix @@ -68,21 +68,6 @@ in 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 - ''; - # mkcert installieren (für lokale SSL-Zertifikate) home.activation.setupMkcert = config.lib.dag.entryAfter ["writeBoundary"] '' if [ ! -f "$HOME/.local/share/mkcert/rootCA.pem" ]; then From 626c3a57be89c7974df7e1bd48777db0fede9205 Mon Sep 17 00:00:00 2001 From: Sebastian Fischer Date: Tue, 10 Feb 2026 17:38:47 +0100 Subject: [PATCH 4/5] [TASK] Document install script call --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index a838d38..11e08eb 100644 --- a/README.md +++ b/README.md @@ -20,8 +20,10 @@ sudo -i # Use german keyboard layout loadkeys de -# List block devices -lsbkl +# Short for all the stuff below !!! ONLY ON EMPTY DRIVES !!! +curl -L https://www.fischer.im/nixos/minimal-install --output install.sh +chmod 744 ./install.sh +./install.sh ``` ### 2. Partitionierung From fbb483acbc9444f1f385fda3e5e50045b5cd8766 Mon Sep 17 00:00:00 2001 From: Sebastian Fischer Date: Tue, 10 Feb 2026 18:59:48 +0100 Subject: [PATCH 5/5] [TASK] Improve install script --- scripts/minimal-install.sh | 56 ++++++++++++++++++++++---------------- 1 file changed, 33 insertions(+), 23 deletions(-) diff --git a/scripts/minimal-install.sh b/scripts/minimal-install.sh index 876cacd..a45065a 100644 --- a/scripts/minimal-install.sh +++ b/scripts/minimal-install.sh @@ -7,55 +7,65 @@ loadkeys de lsbkl -# GPT-Partitionstabelle erstellen -parted /dev/sda -- mklabel gpt +# Partitioning +read -p "Create partitions table? DELETES ALL DATA! (j/N): " answer +if [ "$answer" = "j" ] || [ "$answer" = "J" ]; then + # GPT-partition table creation + parted /dev/sda -- mklabel gpt -# EFI-Partition (512 MB) -parted /dev/sda -- mkpart esp fat32 1MB 512MB -parted /dev/sda -- set 1 esp on + # EFI-partition (512 MB) + parted /dev/sda -- mkpart esp fat32 1MB 512MB + parted /dev/sda -- set 1 esp on -# Swap-Partition (8 GB) -parted /dev/sda -- mkpart swap linux-swap 512MB 8626MB + # Swap-partition (8 GB) + parted /dev/sda -- mkpart swap linux-swap 512MB 8626MB -# Root-Partition (ca. 45 GB) -parted /dev/sda -- mkpart root ext4 8636MB 40000MB + # Root-partition (ca. 45 GB) + parted /dev/sda -- mkpart root ext4 8636MB 40000MB -# Home-Partition (Rest) -parted /dev/sda -- mkpart home ext4 40000MB 100% + # Home-partition (Rest) + parted /dev/sda -- mkpart home ext4 40000MB 100% +fi -# Ergebnis pruefen +# Check results parted /dev/sda -- print -# EFI-Partition formatieren +# Format EFI-partition mkfs.fat -F 32 -n boot /dev/sda1 -# Swap-Partition formatieren +# Format swap-partition mkswap -L swap /dev/sda2 -# Root-Partition formatieren +# Format root-partition mkfs.ext4 -L nixos /dev/sda3 -# Home-Partition formatieren -mkfs.ext4 -L home /dev/sda4 +read -p "Home-Partition formatieren? LOESCHT BENUTZERDATEN! (j/N): " answer +if [ "$answer" = "j" ] || [ "$answer" = "J" ]; then + # Format home-partition + mkfs.ext4 -L home /dev/sda4 +fi -# Root mounten +# Mount partitions mount /dev/disk/by-label/nixos /mnt -# Boot-Verzeichnis erstellen und mounten mkdir /mnt/boot mount -o umask=077 /dev/disk/by-label/boot /mnt/boot -# Home-Verzeichnis erstellen und mounten mkdir -p /mnt/home mount /dev/disk/by-label/home /mnt/home -# Swap aktivieren +# Activate swap swapon /dev/disk/by-label/swap nixos-generate-config --root /mnt -nixos-enter --root '/mnt' -passwd + +# If root password wasn't set because the installation needed to be restarted. +read -p "Root-Passwort mit nixos-enter setzen? (j/N): " answer +if [ "$answer" = "j" ] || [ "$answer" = "J" ]; then + nixos-enter --root '/mnt' + passwd +fi