first commit

This commit is contained in:
Leo 2025-03-23 09:39:46 +01:00
commit 89ef2e226a
69 changed files with 5004 additions and 0 deletions

14
clean.nix Normal file
View File

@ -0,0 +1,14 @@
{ lib, pkgs, ... }:
{
#weekly update
system.autoUpgrade.enable = true;
system.autoUpgrade.dates = "weekly";
#auto cleanuo
nix.gc.automatic = true;
nix.gc.dates = "daily";
nix.gc.options = "--delete-older-than 10d";
nix.settings.auto-optimise-store = true;
}

146
configuration.nix Normal file
View File

@ -0,0 +1,146 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
modesetting.enable = true;
open = true;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,162 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
(nerdfonts.override { fonts = [ "ProFont" ]; })
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,163 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
(nerdfonts.override { fonts = [ "ProFont" ]; })
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,164 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,173 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation.libvirtd.enable = true;
virtualisation.spiceUSBRedirection.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,191 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
virt-manager
virt-viewer
spice
spice-gtk
spice-protocol
win-virtio
win-spice
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,196 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
virt-manager
virt-viewer
spice
spice-gtk
spice-protocol
win-virtio
win-spice
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.dconf.enable = true;
users.users.gcis.extraGroups = [ "libvirtd" ];
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,191 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
virt-manager
virt-viewer
spice
spice-gtk
spice-protocol
win-virtio
win-spice
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,194 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
virt-manager
virt-viewer
spice
spice-gtk
spice-protocol
win-virtio
win-spice
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,194 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
virt-manager
virt-viewer
spice
spice-gtk
spice-protocol
win-virtio
win-spice
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,194 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
virt-manager
virt-viewer
spice
spice-gtk
spice-protocol
win-virtio
win-spice
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,200 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
users.users.libvirt-qemu = {
isSystemUser = true;
extraGroups = [ "video" ];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
virt-manager
virt-viewer
spice
spice-gtk
spice-protocol
win-virtio
win-spice
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,199 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
virt-manager
virt-viewer
spice
spice-gtk
spice-protocol
win-virtio
win-spice
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
users.users.libvirt-qemu = {
isSystemUser = true;
extraGroups = [ "video" ];
};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,178 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
modesetting.enable = true;
open = true;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
virt-manager
virt-viewer
spice
spice-gtk
spice-protocol
win-virtio
win-spice
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
users.users.libvirt-qemu = {
isSystemUser = true;
group = "libvirt-qemu";
extraGroups = [ "video" ];
};
users.groups.libvirt-qemu = {};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,178 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
modesetting.enable = true;
open = true;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
pkgs.eglexternalplatform
virt-manager
virt-viewer
spice
spice-gtk
spice-protocol
win-virtio
win-spice
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
programs.virt-manager.enable = true;
users.groups.libvirtd.members = ["leo"];
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
users.users.libvirt-qemu = {
isSystemUser = true;
group = "libvirt-qemu";
extraGroups = [ "video" ];
};
users.groups.libvirt-qemu = {};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,145 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
modesetting.enable = true;
open = true;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,36 @@
{ config, pkgs, ... }:
{
# Enable dconf (System Management Tool)
programs.dconf.enable = true;
# Add user to libvirtd group
users.users.$user.extraGroups = [ "libvirtd" ];
# Install necessary packages
environment.systemPackages = with pkgs; [
virt-manager
virt-viewer
spice spice-gtk
spice-protocol
win-virtio
win-spice
gnome.adwaita-icon-theme
];
# Manage the virtualisation services
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
}

View File

@ -0,0 +1,145 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
modesetting.enable = true;
open = true;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,36 @@
{ config, pkgs, ... }:
{
# Enable dconf (System Management Tool)
programs.dconf.enable = true;
# Add user to libvirtd group
users.users.leo.extraGroups = [ "libvirtd" ];
# Install necessary packages
environment.systemPackages = with pkgs; [
virt-manager
virt-viewer
spice spice-gtk
spice-protocol
win-virtio
win-spice
gnome.adwaita-icon-theme
];
# Manage the virtualisation services
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
}

View File

@ -0,0 +1,14 @@
{ lib, pkgs, ... }:
{
#weekly update
system.autoUpgrade.enable = true;
system.autoUpgrade.dates = "weekly";
#auto cleanuo
nix.gc.automatic = true;
nix.gc.dates = "daily";
nix.gx.options = "--delete-older-than 10d";
nix.settings.auto-optimise-store = true;
}

View File

@ -0,0 +1,146 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
modesetting.enable = true;
open = true;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,36 @@
{ config, pkgs, ... }:
{
# Enable dconf (System Management Tool)
programs.dconf.enable = true;
# Add user to libvirtd group
users.users.leo.extraGroups = [ "libvirtd" ];
# Install necessary packages
environment.systemPackages = with pkgs; [
virt-manager
virt-viewer
spice spice-gtk
spice-protocol
win-virtio
win-spice
gnome.adwaita-icon-theme
];
# Manage the virtualisation services
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
}

View File

@ -0,0 +1,14 @@
{ lib, pkgs, ... }:
{
#weekly update
system.autoUpgrade.enable = true;
system.autoUpgrade.dates = "weekly";
#auto cleanuo
nix.gc.automatic = true;
nix.gc.dates = "daily";
nix.gc.options = "--delete-older-than 10d";
nix.settings.auto-optimise-store = true;
}

View File

@ -0,0 +1,146 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
environment.variables = {
EDITOR = "micro";
VISUAL = "micro";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
modesetting.enable = true;
open = true;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" "video" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
zsh
starship
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
(nerdfonts.override { fonts = [ "ProFont" ]; })
pkgs.qbittorrent-enhanced
];
environment.shells = with pkgs; [
zsh
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
programs.zsh = {
enable = true;
};
programs.starship = {
enable = true;
};
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2975466c-25c4-45bd-94e6-125d2f4b2c19";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/922A-1C77";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
# still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp9s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

View File

@ -0,0 +1,36 @@
{ config, pkgs, ... }:
{
# Enable dconf (System Management Tool)
programs.dconf.enable = true;
# Add user to libvirtd group
users.users.leo.extraGroups = [ "libvirtd" ];
# Install necessary packages
environment.systemPackages = with pkgs; [
virt-manager
virt-viewer
spice spice-gtk
spice-protocol
win-virtio
win-spice
gnome.adwaita-icon-theme
];
# Manage the virtualisation services
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
}

View File

@ -0,0 +1,120 @@
{ config, pkgs, ... }:
let
myAppImageLauncher = import /etc/nixos/apps/appimagelauncher.nix {
lib = pkgs.lib;
stdenv = pkgs.stdenv;
fetchFromGitHub = pkgs.fetchFromGitHub;
cmake = pkgs.cmake;
git = pkgs.git;
pkg-config = pkgs.pkg-config;
automake = pkgs.automake;
autoconf = pkgs.autoconf;
libtool = pkgs.libtool;
unixtools = pkgs.unixtools;
desktop-file-utils = pkgs.desktop-file-utils;
python3 = pkgs.python3;
wrapQtAppsHook = pkgs.wrapGAppsHook; # ersetzt wrapQtAppsHook durch wrapGAppsHook
openssl = pkgs.openssl;
curl = pkgs.curl;
wget = pkgs.wget;
glib = pkgs.glib;
zlib = pkgs.zlib;
cairo = pkgs.cairo;
pcre = pkgs.pcre;
pcre2 = pkgs.pcre2;
librsvg = pkgs.librsvg;
"util-linux" = pkgs.util-linux;
xorg = pkgs.xorg;
libselinux = pkgs.libselinux;
libsepol = pkgs.libsepol;
xz = pkgs.xz;
fuse = pkgs.fuse;
libarchive = pkgs.libarchive;
squashfuse = pkgs.squashfuse;
"xdg-utils" = pkgs.xdg-utils;
glibc_multi = pkgs.glibc_multi;
appimagekit = pkgs.appimagekit;
qt5 = pkgs.qt5;
};
in {
imports =
[
./hardware-configuration.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
myAppImageLauncher
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,138 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
hardware.graphics = {
enable = true;
};
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
# Modesetting is required.
modesetting.enable = true;
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
# Enable this if you have graphical corruption issues or application crashes after waking
# up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
# of just the bare essentials.
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
# Support is limited to the Turing and later architectures. Full list of
# supported GPUs is at:
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
open = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
pkgs.spotify
pkgs.prismlauncher
pkgs.speedtest-cli
pkgs.yazi
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.code-cursor
pkgs.nodejs_23
(nerdfonts.override { fonts = [ "ProFont" ]; })
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,83 @@
{ config, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "nixos-leo";
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "de_DE.UTF-8";
LC_IDENTIFICATION = "de_DE.UTF-8";
LC_MEASUREMENT = "de_DE.UTF-8";
LC_MONETARY = "de_DE.UTF-8";
LC_NAME = "de_DE.UTF-8";
LC_NUMERIC = "de_DE.UTF-8";
LC_PAPER = "de_DE.UTF-8";
LC_TELEPHONE = "de_DE.UTF-8";
LC_TIME = "de_DE.UTF-8";
};
services.xserver.enable = true;
services.displayManager.sddm.enable = true;
services.desktopManager.plasma6.enable = true;
services.xserver.xkb = {
layout = "de";
variant = "";
};
console.keyMap = "de";
services.printing.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
users.users.leo = {
isNormalUser = true;
description = "leo";
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [
kdePackages.kate
pkgs.vesktop
pkgs.brave
pkgs.localsend
pkgs.git
pkgs.pciutils
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
programs.steam.enable = true;
system.stateVersion = "24.11";
}

View File

@ -0,0 +1,15 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
/* The home.stateVersion option does not have a default and must be set */
home.stateVersion = "18.09";
/* Here goes the rest of your home-manager config, e.g. home.packages = [ pkgs.foo ]; */
};
}

21
home.nix Normal file
View File

@ -0,0 +1,21 @@
{ config, pkgs, ... }:
let
home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
in
{
imports = [
(import "${home-manager}/nixos")
];
home-manager.users.leo = {
home.stateVersion = "18.09";
programs.kitty = {
enable = true;
settings = {
font_family = "ProFont IIx Nerd Font Mono"; # change if needed
font_size = 12.0;
};
};
};
}

36
vm.nix Normal file
View File

@ -0,0 +1,36 @@
{ config, pkgs, ... }:
{
# Enable dconf (System Management Tool)
programs.dconf.enable = true;
# Add user to libvirtd group
users.users.leo.extraGroups = [ "libvirtd" ];
# Install necessary packages
environment.systemPackages = with pkgs; [
virt-manager
virt-viewer
spice spice-gtk
spice-protocol
win-virtio
win-spice
gnome.adwaita-icon-theme
];
# Manage the virtualisation services
virtualisation = {
libvirtd = {
enable = true;
qemu = {
swtpm.enable = true;
ovmf.enable = true;
ovmf.packages = [ pkgs.OVMFFull.fd ];
};
};
spiceUSBRedirection.enable = true;
};
services.spice-vdagentd.enable = true;
}