Zeigt eure NixOS "Skilltrees" her (eure Konfigurationen und Setups)

@KitKat::new()
Mit configurationLimit = 3läuft /boot nicht voll. Es pendelt zwischen 1 und 3 efi Dateien ( je 122 MB) in /boot/efi/nixos. 512 MB boot Partition ist ausreichend.

Wie groß sind eigentlich die Dateien mit AMD Grafikkarte? Haben vielleicht "open linux kernel modules" von nvidia einen Einfluss auf die Größe?
Ich könnte auch die Begrenzung der gespeicherten Systemzustände auf 2(aktuelle + vorherige) einstellen. Wenn ich so überlege, brauche ich viele Systemzustände gar nicht. Falls NixOS nicht startet, kann ich auch mit sudo nano /etc/nixos/configuration.nix die Änderungen rückgängig machen.

Wie macht man alias für sudo nixos-rebuild switch? ~/.bashrcexistiert ja nicht.
Würde das hier funktionieren?
programs.bash.shellAliases = {
snrs = "sudo nixos-rebuild switch";
};
 
D.S.i.u.S. schrieb:
Wie groß sind eigentlich die Dateien mit AMD Grafikkarte?
Ich habe eine AMD IGPU: 2* ca. 12 MB
 
  • Gefällt mir
Reaktionen: D.S.i.u.S.
Update 19.12.2024
Mein NixOS Build auf Seite 1 habe ich aktualisiert.
  • Dort stehen jetzt configuration.nix, flake.nix, home.nix, nvidia-open-latest.nix und syncthing.nix statt einzelner "Bausteine" wie z.B.: boot.kernelPackages = pkgs.linuxPackages_cachyos;
  • Die Zeilen für nvidia und syncthing in configuration.nix habe ich nach nvidia-open-latest.nix und syncthing.nix ausgelagert.
  • Ich verwende nun cachyOS statt zen Kernel. Machbar wird es durch ein Flake mit chaotic-nyx
  • Steam hat Autostart mit Zusatz "-nochatui -nofriendsui -silent" bekommen (home.nix)
  • Ich habe die Weise wie ich NixOS aktualisiere geändert.
Aktualisieren und herunterfahren:
1. kate ~/.local/share/applications/update-and-shutdown.desktop (oder mit nano)
Inhalt der Datei:
Bash:
    [Desktop Entry]
    Name=Update and Shutdown
    Comment=Updates NixOS and shuts down the system
    Exec=konsole -e bash -c "~/nixos-config/update-and-shutdown.sh"
    Icon=system-shutdown-update
    Terminal=false
    Type=Application
    Categories=System;Utility;
2. kate ~/nixos-config/update-and-shutdown.sh (oder mit nano)
Inhalt der Datei:
Bash:
    #!/usr/bin/env bash
    cd ~/nixos-config
    nix flake update
    sudo nixos-rebuild switch --flake ~/nixos-config --impure
    sudo systemctl poweroff
Skript ausführbar machen: chmod +x ~/nixos.config/update-and-shutdown.sh
3. Seit KDE Plasma 6.2.0 gibt es "system-shutdown-update" Icon
Rechtsklick auf "Update and Shutdown" in "System" und dann zu Favoriten hinzufügen.
Screenshot_20241220_133930a.png

Für sudo verwende ich YubiKey anstelle von Passwort.

Ich habe jetzt die Wahl zwischen "Update and Shutdown" oder einfach nur "Shutdown".
Zusätzlich habe ich noch nfu und nrs
Bash:
 # Aliases für alle Shells
  environment.shellAliases = {
  nfu = "cd ~/nixos-config && nix flake update";
  nrs = "sudo nixos-rebuild switch --flake ~/nixos-config --impure";
};
nfu: Aktualisiert die Inputs einer Flake auf die neuesten Versionen.
nrs: Übernimmt die Änderungen in der Konfiguration und bringt das System auf den neuesten Stand.

Wie man neue Pakete installiert:
  1. NixOS options Suche benutzen, um zu überprüfen, ob es eine Option gibt (z.B.: programs.thunderbird.enable = true; )
  2. Wenn .enable Option nicht vorhanden ist, dann NixOS Packages Suche benutzen, um den richtigen Paketnamen zu finden.
  3. In configuration.nix entweder in environment.systemPackages oder users.users.<Benutzername>.packages hinzufügen.
  4. Die Änderungen mit sudo nixos-rebuild switch oder in meinem Fall mit nrs(sudo nixos-rebuild switch --flake ~/nixos-config --impure) aktivieren.
Firefox:
Ich habe die Sachen, die ich in about:config verändert habe, unter preferences eingetragen.
Bash:
  # Firefox.
  programs.firefox = {
    enable = true;
    preferences = {
        "widget.use-xdg-desktop-portal.file-picker" = 1;
        "browser.tabs.loadBookmarksInTabs" = true;
        "full-screen-api.warning.delay" = -1;
        "full-screen-api.warning.timeout" = 0;
        "ui.tooltip.delay_ms" = 5000;
    };
};

Syncthing:
Syncthing.nix ist noch ausbaufähig. Ich habe es nur aktiviert und den Rest über Syncthing Web interface erledigt.
Screenshot_20241210_031309.png
 
Zuletzt bearbeitet:
Vor kurzem wurde der Standardcompiler auf GCC 14 umgestellt, der einige Warnungen standardmäßig in Fehler umwandelt. Jemand muss jack1 Paket von Version 0.125.0 auf 0.126.0 aktualisieren.
Es hat die Folge, dass man NixOS nicht aktualisieren kann, wenn "Shotcut" Programm installiert ist.
NixOS führt Aktualisierungen atomar durch, es werden entweder alle Änderungen erfolgreich angewendet oder keine.
Screenshot_20241227_230807.png


In meiner configuration.nix steht jetzt ein Fix dafür:
Bash:
 # jack1 Fix (kann man sonst NixOS nicht aktualisieren)
  nixpkgs.overlays = [
    (final: prev: {
      jack1 = prev.jack1.overrideAttrs (_: {
        NIX_CFLAGS_COMPILE = [
          "-Wno-int-conversion"
          "-Wno-incompatible-pointer-types"
        ];
      });
    })
  ];

EDIT 07.01.25:
Jack1 wurde auf Version 0.126.0 aktualisiert.
Man kann jetzt auch ohne Fix problemlos NixOS aktualisieren.
 
Zuletzt bearbeitet:
Update 04.02.2025
D.S.i.u.S. schrieb:
Ich habe GC mit "--delete-older-than 7d" und trotzdem war 512mb /boot Partition nach 110 Tagen voll.
Vielleicht wegen NVIDIA open GPU kernel modulen?
Ich belasse es jetzt bei GC 7d und 512 MB /boot und werde es weiter beobachten.

Wie groß sind eigentlich die Dateien in /boot/EFI/nixos?
Die efi Dateien in /boot/EFI/nixos sind jetzt auf einmal 15 MB statt 122 MB groß.
Bash:
$ ls -lh /boot/EFI/nixos
insgesamt 50M
-rwxr-xr-x 1 root root 15M  3. Feb 18:28 4whqvhbxz2610v6pqfs8hz9gj3y2jfh7-linux-6.13.0-bzImage.efi
-rwxr-xr-x 1 root root 15M  3. Feb 18:28 hbarnb7prdwnhpcfn67x092zq5cpsjn3-linux-6.13.1-bzImage.efi
-rwxr-xr-x 1 root root 11M  3. Feb 18:28 q9ic2ais9q2p9n8yaxa89kypzz3d9l8q-initrd-linux-6.13.1-initrd.efi
-rwxr-xr-x 1 root root 11M  3. Feb 18:28 xr30b0w682yy6sl3nfl8fmlwc952wi0h-initrd-linux-6.13.0-initrd.efi
Ich weiß nicht, was sich geändert hat oder was ich geändert habe.
Und ich habe immer noch Nvidia Open Treiber.
Das hier habe ich am 18.12.24 entfernt:
Bash:
boot.initrd.kernelModules = [
 "nvidia"
  "nvidia_drm"
  "nvidia_modeset"
  "nvidia_uvm"
];
 boot.kernelParams = [ "nvidia_drm.fbdev=1" "nvidia_drm.modeset=1" "nouveau.modeset=0" ];
Und Nvidia habe ich ausgelagert. Von configuration.nix nach nvidia-open-latest.nix
Bash:
{ config, pkgs, ... }:
{
  # Load nvidia driver for Xorg and Wayland
   services.xserver.videoDrivers = ["nvidia"];
   hardware.nvidia = {
     modesetting.enable = true;
     powerManagement.enable = false;
     open = true;
     nvidiaSettings = true;
     package = config.boot.kernelPackages.nvidiaPackages.latest;
    };
}
 
Zurück
Oben