Compare commits

..

71 Commits

Author SHA1 Message Date
2b85a4dd23 Backup created on 20250404_144141 2025-04-04 14:41:44 +02:00
fa47488139 Backup created on 20250404_143907 2025-04-04 14:39:20 +02:00
4dd3658bfb Backup created on 20250404_143613 2025-04-04 14:37:44 +02:00
9cf6792389 Backup created on 20250404_143308 2025-04-04 14:33:11 +02:00
70cda3ac88 Backup created on 20250404_143253 2025-04-04 14:32:55 +02:00
dc2403017a Backup created on 20250404_143233 2025-04-04 14:32:35 +02:00
c494d38913 Backup created on 20250404_143210 2025-04-04 14:32:12 +02:00
d5cdb13451 Backup created on 20250404_142223 2025-04-04 14:22:26 +02:00
69762bcdcf Backup created on 20250404_142042 2025-04-04 14:20:56 +02:00
a641acdf6c Backup created on 20250404_142009 2025-04-04 14:20:14 +02:00
e037398c51 Backup created on 20250404_141454 2025-04-04 14:16:18 +02:00
77a996569f Backup created on 20250403_205936 2025-04-03 20:59:54 +02:00
a48611d599 Backup created on 20250403_184256 2025-04-03 18:43:15 +02:00
314417b14b Backup created on 20250403_183037 2025-04-03 18:31:21 +02:00
7138188a2c Backup created on 20250403_182715 2025-04-03 18:28:50 +02:00
9aba7e8ece Backup created on 20250403_164707 2025-04-03 16:47:08 +02:00
df5a9a97fb Backup created on 20250403_164529 2025-04-03 16:45:52 +02:00
ca3bf5cf28 Backup created on 20250401_200755 2025-04-01 20:08:39 +02:00
a25a5debdc Backup created on 20250401_195121 2025-04-01 19:53:06 +02:00
e91fdde315 Backup created on 20250331_175244 2025-03-31 17:53:29 +02:00
703123a3ce Backup created on 20250331_174700 2025-03-31 17:47:45 +02:00
50e9116beb Backup created on 20250330_212720 2025-03-30 21:28:05 +02:00
f84d1641f4 Backup created on 20250330_205208 2025-03-30 20:52:29 +02:00
0e71ff2abb Backup created on 20250330_204111 2025-03-30 20:41:21 +02:00
d13ced33c2 Backup created on 20250330_204028 2025-03-30 20:40:37 +02:00
d5c311cd31 Backup created on 20250330_203928 2025-03-30 20:39:38 +02:00
638de5a67f Backup created on 20250330_203905 2025-03-30 20:39:09 +02:00
79c225f93d Backup created on 20250330_155136 2025-03-30 15:51:56 +02:00
dafbac70cf Backup created on 20250330_154904 2025-03-30 15:51:21 +02:00
86e6994e02 Backup created on 20250330_153848 2025-03-30 15:42:26 +02:00
688e007578 Backup created on 20250330_121926 2025-03-30 12:20:47 +02:00
3d12ebf62e Backup created on 20250330_121752 2025-03-30 12:17:55 +02:00
b13c00a36b Backup created on 20250330_121733 2025-03-30 12:17:36 +02:00
e99ad27cfa Backup created on 20250330_121344 2025-03-30 12:13:59 +02:00
99c24e950b Backup created on 20250330_120959 2025-03-30 12:10:28 +02:00
5c58ceeac8 Backup created on 20250329_101540 2025-03-29 10:16:35 +01:00
55536603e5 Backup created on 20250329_101024 2025-03-29 10:11:05 +01:00
a8c8c19acb Backup created on 20250329_100550 2025-03-29 10:07:16 +01:00
5031713efd Backup created on 20250328_082514 2025-03-28 08:26:02 +01:00
eb250c8c77 Backup created on 20250328_081439 2025-03-28 08:15:26 +01:00
3a53b463df Backup created on 20250328_074855 2025-03-28 07:49:45 +01:00
fd80f5af0f Backup created on 20250328_070811 2025-03-28 07:08:27 +01:00
a859934df0 Backup created on 20250328_070505 2025-03-28 07:07:14 +01:00
9f486e7b9c Backup created on 20250328_065129 2025-03-28 06:51:42 +01:00
7095953aaf Backup created on 20250328_064854 2025-03-28 06:49:15 +01:00
29ab245392 Backup created on 20250327_163920 2025-03-27 16:39:37 +01:00
a56eea1afb Backup created on 20250327_163902 2025-03-27 16:39:04 +01:00
d36fb43c9d Backup created on 20250327_163800 2025-03-27 16:38:01 +01:00
996af66af3 Backup created on 20250327_163436 2025-03-27 16:35:16 +01:00
4c1a80b4e4 Backup created on 20250327_163213 2025-03-27 16:32:29 +01:00
439b3e2cd7 Backup created on 20250327_163140 2025-03-27 16:31:42 +01:00
c1f9cf2841 Backup created on 20250327_163036 2025-03-27 16:30:38 +01:00
8a02c546c1 Backup created on 20250327_162915 2025-03-27 16:29:18 +01:00
39beb6129e Backup created on 20250327_154827 2025-03-27 15:48:48 +01:00
1ba32790a9 Backup created on 20250327_134613 2025-03-27 13:46:58 +01:00
bd74862e34 Backup created on 20250327_094128 2025-03-27 09:42:11 +01:00
8fa743767a Backup created on 20250327_093619 2025-03-27 09:37:30 +01:00
31b71ebb65 Backup created on 20250326_180529 2025-03-26 18:05:44 +01:00
17ad560a5d Backup created on 20250326_180353 2025-03-26 18:04:07 +01:00
d22970c91e Backup created on 20250326_180328 2025-03-26 18:03:42 +01:00
afd625997f Backup created on 20250326_180247 2025-03-26 18:03:01 +01:00
deeb7267b1 Backup created on 20250326_180150 2025-03-26 18:02:05 +01:00
4e5fbb520a Backup created on 20250326_180123 2025-03-26 18:01:38 +01:00
Leo
8122a20d01 Backup created on 20250326_180042 2025-03-26 18:00:56 +01:00
Leo
781f9e851e Backup created on 20250326_175941 2025-03-26 17:59:42 +01:00
Leo
cce8782e41 Backup created on 20250326_173950 2025-03-26 17:39:56 +01:00
Leo
faea2bf8f5 Backup created on 20250326_173910 2025-03-26 17:39:15 +01:00
Leo
f53c544248 Backup created on 20250326_173505 2025-03-26 17:35:08 +01:00
Leo
1378b2aa9b Backup created on 20250326_173040 2025-03-26 17:30:44 +01:00
Leo
e4ebfe74c9 Backup created on 20250326_173012 2025-03-26 17:30:15 +01:00
Leo
0546e6ed56 Backup created on 20250326_172950 2025-03-26 17:29:53 +01:00
477 changed files with 25549 additions and 13 deletions

27
autostart.nix Normal file
View File

@@ -0,0 +1,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
# systemd.user.services.obs-studio = {
# description = "OBS Studio Autostart mit Flags";
# after = [ "graphical-session.target" ];
# wantedBy = [ "default.target" ];
# serviceConfig = {
# Type = "simple";
# ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
# Restart = "on-failure";
# };
# };
}

View File

@@ -4,10 +4,20 @@
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
#./home.nix
./vm.nix
./clean.nix
./autostart.nix
<home-manager/nixos>
];
nixpkgs.overlays = [
(import /home/leo/.config/nixpkgs/overlays/ssh-manager.nix)
];
# Bootloader
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
@@ -44,6 +54,11 @@
};
console.keyMap = "de";
programs.hyprland = {
enable = true;
xwayland.enable = true;
};
services.printing.enable = true;
services.pulseaudio.enable = false;
@@ -87,7 +102,6 @@
pkgs.yazi
zsh
starship
pkgs.obs-studio
];
};
@@ -96,15 +110,13 @@
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
ssh-manager
micro
nano
btop
pkgs.obs-studio
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
@@ -126,6 +138,38 @@
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.waydroid
pkgs.waydroid-helper
pkgs.putty
pkgs.python313
pkgs.python313Packages.textual
pkgs.python313Packages.cryptography
pkgs.python313Packages.paramiko
python313Packages.cryptography
pkgs.neovim
pkgs.cmake
pkgs.maven
wget
xdotool
xorg.xwininfo
vim # enthält xxd
yad
pkgs.openrgb-with-all-plugins
pkgs.sshpass
pkgs.timeshift-unwrapped
pkgs.psmisc
pkgs.mcron
wineWowPackages.stable
wine
(wine.override { wineBuild = "wine64"; })
wine64
wineWowPackages.staging
winetricks
wineWowPackages.waylandFull
];
environment.shells = with pkgs; [
@@ -136,8 +180,17 @@
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
sshm = "ssh-manager";
};
programs.fish = {
shellAliases = {
sshm = "ssh-manager";
};
};
virtualisation.waydroid.enable = true;
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
@@ -146,16 +199,13 @@
};
};
systemd.services.startobsrec = {
enable = true;
description = "Start Obs with replayBuffer";
serviceConfig = {
ExecStart = "obs --startreplaybuffer --disable-shutdown-check";
};
};
home-manager.users.leo = { pkgs, ... }: {
home.packages = [ ];
};
programs.steam.enable = true;
services.flatpak.enable = true;
programs.fish = {
enable = true;
@@ -165,8 +215,14 @@
enable = true;
};
services.udev.packages = [ pkgs.usb-modeswitch ];
services.udev.extraRules = ''
SUBSYSTEM=="usb", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c26d", RUN+="${pkgs.usb-modeswitch}/bin/usb_modeswitch -v 046d -p c26d -M 0f00010142 -C 0x03 -m 01 -r 01"
'';
system.stateVersion = "24.11";
}

View File

@@ -0,0 +1,40 @@
{ config, pkgs, ... }:
{
services.ollama = {
enable = true;
package = pkgs.ollama; # Ensure you have ollama in your available packages
# Optional: Specify a custom Ollama configuration directory
# configDir = "/opt/ollama/config";
# Optional: Ollama arguments (e.g., for port binding, etc.)
#extraArgs = [ "--port" "8000" ]; # Example: bind to port 8000
# Use a wrapper script to handle initialization. This is important for
# things like setting environment variables or running initial pulls.
serviceScript = ''
#! /bin/sh
# Wrapper script for Ollama service
set -e
# Set environment variables if needed
# export MY_VARIABLE="some_value"
# Initial pull if desired (only run once at startup)
# if [ ! -d "/opt/ollama/models" ]; then
# ollama pull llama2:7b
# fi
ollama server &
#ollama serve & # Older versions of ollama used this
'';
};
services.obs = {
enable = true;
package = pkgs.obs-studio; # Ensure you have ollama in your available packages
extraArgs = [ "--startreplaybuffer" "--disable-shutdown-check" ];
}
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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
pkgs.obs-studio
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.obs-studio
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,40 @@
{ config, pkgs, ... }:
{
services.ollama = {
enable = true;
package = pkgs.ollama; # Ensure you have ollama in your available packages
# Optional: Specify a custom Ollama configuration directory
# configDir = "/opt/ollama/config";
# Optional: Ollama arguments (e.g., for port binding, etc.)
#extraArgs = [ "--port" "8000" ]; # Example: bind to port 8000
# Use a wrapper script to handle initialization. This is important for
# things like setting environment variables or running initial pulls.
serviceScript = ''
#! /bin/sh
# Wrapper script for Ollama service
set -e
# Set environment variables if needed
# export MY_VARIABLE="some_value"
# Initial pull if desired (only run once at startup)
# if [ ! -d "/opt/ollama/models" ]; then
# ollama pull llama2:7b
# fi
ollama server &
#ollama serve & # Older versions of ollama used this
'';
};
services.obs = {
enable = true;
package = pkgs.obs-studio; # Ensure you have ollama in your available packages
extraArgs = [ "--startreplaybuffer" "--disable-shutdown-check" ];
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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
pkgs.obs-studio
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.obs-studio
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,40 @@
{ config, pkgs, ... }:
{
services.ollama = {
enable = true;
package = pkgs.ollama; # Ensure you have ollama in your available packages
# Optional: Specify a custom Ollama configuration directory
# configDir = "/opt/ollama/config";
# Optional: Ollama arguments (e.g., for port binding, etc.)
#extraArgs = [ "--port" "8000" ]; # Example: bind to port 8000
# Use a wrapper script to handle initialization. This is important for
# things like setting environment variables or running initial pulls.
serviceScript = ''
#! /bin/sh
# Wrapper script for Ollama service
set -e
# Set environment variables if needed
# export MY_VARIABLE="some_value"
# Initial pull if desired (only run once at startup)
# if [ ! -d "/opt/ollama/models" ]; then
# ollama pull llama2:7b
# fi
ollama server &
#ollama serve & # Older versions of ollama used this
'';
};
services.obs-studio = {
enable = true;
package = pkgs.obs-studio; # Ensure you have ollama in your available packages
extraArgs = [ "--startreplaybuffer" "--disable-shutdown-check" ];
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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
pkgs.obs-studio
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.obs-studio
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,41 @@
{ config, pkgs, ... }:
{
services.ollama = {
enable = true;
package = pkgs.ollama; # Ensure you have ollama in your available packages
# Optional: Specify a custom Ollama configuration directory
# configDir = "/opt/ollama/config";
# Optional: Ollama arguments (e.g., for port binding, etc.)
#extraArgs = [ "--port" "8000" ]; # Example: bind to port 8000
# Use a wrapper script to handle initialization. This is important for
# things like setting environment variables or running initial pulls.
serviceScript = ''
#! /bin/sh
# Wrapper script for Ollama service
set -e
# Set environment variables if needed
# export MY_VARIABLE="some_value"
# Initial pull if desired (only run once at startup)
# if [ ! -d "/opt/ollama/models" ]; then
# ollama pull llama2:7b
# fi
ollama server &
#ollama serve & # Older versions of ollama used this
'';
};
services.obs-studio = {
enable = true;
package = pkgs.obs-studio; # Ensure you have ollama in your available packages
extraArgs = [ "--startreplaybuffer" "--disable-shutdown-check" ];
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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
pkgs.obs-studio
];
};
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
micro
nano
btop
pkgs.obs-studio
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,41 @@
{ config, pkgs, ... }:
{
services.ollama = {
enable = true;
package = pkgs.ollama; # Ensure you have ollama in your available packages
# Optional: Specify a custom Ollama configuration directory
# configDir = "/opt/ollama/config";
# Optional: Ollama arguments (e.g., for port binding, etc.)
#extraArgs = [ "--port" "8000" ]; # Example: bind to port 8000
# Use a wrapper script to handle initialization. This is important for
# things like setting environment variables or running initial pulls.
serviceScript = ''
#! /bin/sh
# Wrapper script for Ollama service
set -e
# Set environment variables if needed
# export MY_VARIABLE="some_value"
# Initial pull if desired (only run once at startup)
# if [ ! -d "/opt/ollama/models" ]; then
# ollama pull llama2:7b
# fi
ollama server &
#ollama serve & # Older versions of ollama used this
'';
};
services.obs-studio = {
enable = true;
package = pkgs.obs-studio; # Ensure you have ollama in your available packages
extraArgs = [ "--startreplaybuffer" "--disable-shutdown-check" ];
};
}

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,167 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.obs-studio
pkgs.flatpak
pkgs.unzip
pkgs.zip
pkgs.python3
pkgs.python3Packages.flask
pkgs.dig
pkgs.fish
pkgs.kitty
pkgs.vscode
pkgs.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,41 @@
{ config, pkgs, ... }:
{
services.ollama = {
enable = true;
package = pkgs.ollama; # Ensure you have ollama in your available packages
# Optional: Specify a custom Ollama configuration directory
# configDir = "/opt/ollama/config";
# Optional: Ollama arguments (e.g., for port binding, etc.)
#extraArgs = [ "--port" "8000" ]; # Example: bind to port 8000
# Use a wrapper script to handle initialization. This is important for
# things like setting environment variables or running initial pulls.
serviceScript = ''
#! /bin/sh
# Wrapper script for Ollama service
set -e
# Set environment variables if needed
# export MY_VARIABLE="some_value"
# Initial pull if desired (only run once at startup)
# if [ ! -d "/opt/ollama/models" ]; then
# ollama pull llama2:7b
# fi
ollama server &
#ollama serve & # Older versions of ollama used this
'';
};
services.obs-studio = {
enable = true;
package = pkgs.obs-studio; # Ensure you have ollama in your available packages
extraArgs = [ "--startreplaybuffer" "--disable-shutdown-check" ];
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.git-credential-manager
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.git-credential-manager
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.git-credential-manager
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.git-credential-manager
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.git-credential-manager
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.git-credential-manager
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.git-credential-manager
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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,166 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.git-credential-manager
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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,167 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.waydroid
pkgs.waydroid-helper
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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,169 @@
{ config, lib, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
./home.nix
./vm.nix
./clean.nix
./autostart.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;
services.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.nodejs_23
pkgs.jq
pkgs.xclip
pkgs.ffmpeg_6-full
pkgs.hyprland
pkgs.temurin-jre-bin-23
appimage-run
pkgs.screenfetch
pkgs.nerd-fonts.jetbrains-mono
pkgs.pinta
pkgs.qbittorrent-enhanced
pkgs.adwaita-icon-theme
pkgs.streamdeck-ui
pkgs.mangohud
pkgs.gamemode
pkgs.ollama-cuda
pkgs.lmstudio
pkgs.tmux
pkgs.obs-studio
pkgs.waydroid
pkgs.waydroid-helper
];
environment.shells = with pkgs; [
fish
];
programs.bash.shellAliases = {
l = "ls -alh";
ll = "ls -l";
ls = "ls --color=tty";
};
virtualisation.waydroid.enable = true;
systemd.services.startsteam = {
enable = true;
description = "Starts Steam automatically in background at boot";
serviceConfig = {
ExecStart = "steam -nochatui -nofriendsui -silent";
};
};
programs.steam.enable = true;
programs.fish = {
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,24 @@
{ 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 = "24.11";
programs.kitty = {
enable = true;
settings = {
font_family = "JetBrainsMono Nerd Font";
font_size = 12.0;
};
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View File

@@ -0,0 +1,35 @@
{ 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
];
# 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,27 @@
{ config, pkgs, ... }:
{
systemd.user.services.ollama = {
description = "Ollama Server Autostart";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.ollama}/bin/ollama serve";
};
};
systemd.user.services.obs-studio = {
description = "OBS Studio Autostart mit Flags";
after = [ "graphical-session.target" ];
wantedBy = [ "default.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.obs-studio}/bin/obs --startreplaybuffer --disable-shutdown-check";
Restart = "on-failure";
};
};
}

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;
}

Some files were not shown because too many files have changed in this diff Show More