Compare commits
No commits in common. "d22970c91eb7ac676e1d0195dae1064fef7a9951" and "cf3ea0eff3b83672db87361d13bf7a80e8bb7df3" have entirely different histories.
d22970c91e
...
cf3ea0eff3
@ -1,27 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -7,7 +7,6 @@
|
|||||||
./home.nix
|
./home.nix
|
||||||
./vm.nix
|
./vm.nix
|
||||||
./clean.nix
|
./clean.nix
|
||||||
./autostart.nix
|
|
||||||
];
|
];
|
||||||
# Bootloader
|
# Bootloader
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
@ -88,6 +87,7 @@
|
|||||||
pkgs.yazi
|
pkgs.yazi
|
||||||
zsh
|
zsh
|
||||||
starship
|
starship
|
||||||
|
pkgs.obs-studio
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -99,6 +99,7 @@
|
|||||||
micro
|
micro
|
||||||
nano
|
nano
|
||||||
btop
|
btop
|
||||||
|
pkgs.obs-studio
|
||||||
pkgs.flatpak
|
pkgs.flatpak
|
||||||
pkgs.unzip
|
pkgs.unzip
|
||||||
pkgs.zip
|
pkgs.zip
|
||||||
@ -125,9 +126,6 @@
|
|||||||
pkgs.gamemode
|
pkgs.gamemode
|
||||||
pkgs.ollama-cuda
|
pkgs.ollama-cuda
|
||||||
pkgs.lmstudio
|
pkgs.lmstudio
|
||||||
pkgs.tmux
|
|
||||||
pkgs.obs-studio
|
|
||||||
pkgs.git-credential-manager
|
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.shells = with pkgs; [
|
environment.shells = with pkgs; [
|
||||||
@ -148,6 +146,14 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.services.startobsrec = {
|
||||||
|
enable = true;
|
||||||
|
description = "Start Obs with replayBuffer";
|
||||||
|
serviceConfig = {
|
||||||
|
ExecStart = "obs --startreplaybuffer --disable-shutdown-check";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
programs.steam.enable = true;
|
programs.steam.enable = true;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,40 +0,0 @@
|
|||||||
{ 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" ];
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,40 +0,0 @@
|
|||||||
{ 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" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,40 +0,0 @@
|
|||||||
{ 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" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,41 +0,0 @@
|
|||||||
{ 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" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,41 +0,0 @@
|
|||||||
{ 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" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,167 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,41 +0,0 @@
|
|||||||
{ 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" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,27 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,166 +0,0 @@
|
|||||||
{ 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";
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# 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;
|
|
||||||
}
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
{ 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;
|
|
||||||
|
|
||||||
}
|
|
||||||
Loading…
x
Reference in New Issue
Block a user