init
This commit is contained in:
@@ -0,0 +1,20 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports =
|
||||||
|
[
|
||||||
|
./hardware-configuration.nix
|
||||||
|
./modules/boot.nix
|
||||||
|
./modules/desktop.nix
|
||||||
|
./modules/fonts.nix
|
||||||
|
./modules/gpu.nix
|
||||||
|
./modules/locale.nix
|
||||||
|
./modules/networking.nix
|
||||||
|
./modules/sound.nix
|
||||||
|
./modules/system_packages.nix
|
||||||
|
./modules/users.nix
|
||||||
|
./modules/virtualization.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
system.stateVersion = "25.11";
|
||||||
|
}
|
||||||
Generated
+49
@@ -0,0 +1,49 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"home-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1767910483,
|
||||||
|
"narHash": "sha256-MOU5YdVu4DVwuT5ztXgQpPuRRBjSjUGIdUzOQr9iQOY=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "82fb7dedaad83e5e279127a38ef410bcfac6d77c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"ref": "release-25.11",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1768028080,
|
||||||
|
"narHash": "sha256-50aDK+8eLvsLK39TzQhKNq50/HcXyP4hyxOYoPoVxjo=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "d03088749a110d52a4739348f39a63f84bb0be14",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nixos",
|
||||||
|
"ref": "nixos-25.11",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"home-manager": "home-manager",
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
description = "nils NixOS Flake Configuration";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
|
||||||
|
home-manager.url = "github:nix-community/home-manager/release-25.11";
|
||||||
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = { self, nixpkgs, home-manager, ... }: {
|
||||||
|
nixosConfigurations = {
|
||||||
|
nixos = nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
modules = [
|
||||||
|
./configuration.nix
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.users.nils = import ./home/home.nix;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
# 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 = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/1d875e69-a3e7-4566-aa71-a43c040c533f";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/1C0E-5877";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [ "fmask=0077" "dmask=0077" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
programs.btop = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
theme_background = false;
|
||||||
|
preset = 0;
|
||||||
|
vim_keys = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
programs.helix = {
|
||||||
|
enable = true;
|
||||||
|
defaultEditor = true;
|
||||||
|
settings = {
|
||||||
|
theme = "transparent";
|
||||||
|
editor = {
|
||||||
|
line-number = "relative";
|
||||||
|
bufferline = "multiple";
|
||||||
|
cursor-shape = {
|
||||||
|
insert = "bar";
|
||||||
|
normal = "block";
|
||||||
|
select = "underline";
|
||||||
|
};
|
||||||
|
statusline.left = ["mode" "spinner" "file-name"];
|
||||||
|
};
|
||||||
|
keys.normal = {
|
||||||
|
X = "extend_line_above";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./btop.nix
|
||||||
|
./helix.nix
|
||||||
|
./mime-apps.nix
|
||||||
|
./packages.nix
|
||||||
|
./shell.nix
|
||||||
|
];
|
||||||
|
home.username = "nils";
|
||||||
|
home.homeDirectory = "/home/nils";
|
||||||
|
|
||||||
|
services.nextcloud-client = {
|
||||||
|
enable = true;
|
||||||
|
startInBackground = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
home.stateVersion = "25.11";
|
||||||
|
}
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
{ ... }: {
|
||||||
|
xdg.mimeApps = {
|
||||||
|
enable = true;
|
||||||
|
defaultApplications = {
|
||||||
|
# --- Text ---
|
||||||
|
"text/plain" = [ "Helix.desktop" "org.kde.kwrite.desktop" ];
|
||||||
|
"text/markdown" = [ "Helix.desktop" "org.kde.kwrite.desktop" ];
|
||||||
|
"text/rust" = [ "Helix.desktop" "org.kde.kwrite.desktop" ];
|
||||||
|
"application/json" = [ "Helix.desktop" "org.kde.kwrite.desktop" ];
|
||||||
|
"application/x-yaml" = [ "Helix.desktop" "org.kde.kwrite.desktop" ];
|
||||||
|
"application/x-docbook+xml" = [ "Helix.desktop" "org.kde.kwrite.desktop" ];
|
||||||
|
"application/x-zerosize" = [ "Helix.desktop" "org.kde.kwrite.desktop" ];
|
||||||
|
"text/x-cmake" = [ "Helix.desktop" "org.kde.kwrite.desktop" ];
|
||||||
|
"text/x-objcsrc" = [ "Helix.desktop" "org.kde.kwrite.desktop" ];
|
||||||
|
"text/x-typst" = [ "Helix.desktop" "org.kde.kwrite.desktop" ];
|
||||||
|
|
||||||
|
# --- Audio ---
|
||||||
|
"audio/mpeg" = [ "org.kde.elisa.desktop" ];
|
||||||
|
"audio/x-wav" = [ "org.kde.elisa.desktop" ];
|
||||||
|
"audio/x-vorbis+ogg" = [ "org.kde.elisa.desktop" ];
|
||||||
|
"audio/flac" = [ "org.kde.elisa.desktop" ];
|
||||||
|
"audio/mp4" = [ "org.kde.elisa.desktop" ];
|
||||||
|
"audio/aac" = [ "org.kde.elisa.desktop" ];
|
||||||
|
"audio/ogg" = [ "org.kde.elisa.desktop" ];
|
||||||
|
|
||||||
|
# --- Video ---
|
||||||
|
"video/mp4" = [ "org.kde.haruna.desktop" ];
|
||||||
|
"video/x-matroska" = [ "org.kde.haruna.desktop" ];
|
||||||
|
"video/webm" = [ "org.kde.haruna.desktop" ];
|
||||||
|
"video/quicktime" = [ "org.kde.haruna.desktop" ];
|
||||||
|
"video/x-msvideo" = [ "org.kde.haruna.desktop" ];
|
||||||
|
"video/mpeg" = [ "org.kde.haruna.desktop" ];
|
||||||
|
"video/x-flv" = [ "org.kde.haruna.desktop" ];
|
||||||
|
"application/x-matroska" = [ "org.kde.haruna.desktop" ];
|
||||||
|
|
||||||
|
# --- Dokumente & Archive ---
|
||||||
|
"application/pdf" = [ "org.kde.okular.desktop" ];
|
||||||
|
"application/zip" = [ "org.kde.ark.desktop" ];
|
||||||
|
"application/x-tar" = [ "org.kde.ark.desktop" ];
|
||||||
|
"application/x-compressed-tar" = [ "org.kde.ark.desktop" ];
|
||||||
|
"image/svg+xml" = [ "org.kde.gwenview.desktop" "org.inkscape.Inkscape.desktop" ];
|
||||||
|
"image/png" = [ "org.kde.gwenview.desktop" ];
|
||||||
|
"image/jpeg" = [ "org.kde.gwenview.desktop" ];
|
||||||
|
|
||||||
|
# --- Ordner ---
|
||||||
|
"inode/directory" = [ "org.kde.dolphin.desktop" ];
|
||||||
|
|
||||||
|
# --- Mail & Kalender ---
|
||||||
|
"x-scheme-handler/mailto" = [ "thunderbird.desktop" ];
|
||||||
|
"message/rfc822" = [ "thunderbird.desktop" ];
|
||||||
|
"text/calendar" = [ "thunderbird.desktop" ];
|
||||||
|
"x-scheme-handler/webcal" = [ "thunderbird.desktop" ];
|
||||||
|
"x-scheme-handler/webcals" = [ "thunderbird.desktop" ];
|
||||||
|
"application/x-extension-ics" = [ "thunderbird.desktop" ];
|
||||||
|
|
||||||
|
# --- Messenger ---
|
||||||
|
"x-scheme-handler/sgnl" = [ "signal.desktop" ];
|
||||||
|
"x-scheme-handler/signalcaptcha" = [ "signal.desktop" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
anki
|
||||||
|
discord
|
||||||
|
fastfetch
|
||||||
|
ffmpeg
|
||||||
|
fzf
|
||||||
|
haruna
|
||||||
|
inkscape
|
||||||
|
|
||||||
|
kdePackages.filelight
|
||||||
|
kdePackages.francis
|
||||||
|
kdePackages.isoimagewriter
|
||||||
|
kdePackages.kdenlive
|
||||||
|
|
||||||
|
krita
|
||||||
|
libreoffice-qt6
|
||||||
|
|
||||||
|
#masterpdfeditor
|
||||||
|
|
||||||
|
nextcloud-client
|
||||||
|
obs-studio
|
||||||
|
obsidian
|
||||||
|
pympress
|
||||||
|
signal-desktop
|
||||||
|
thunderbird
|
||||||
|
xournalpp
|
||||||
|
zotero
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,70 @@
|
|||||||
|
{ pkgs, ... }: {
|
||||||
|
|
||||||
|
programs.fish = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
interactiveShellInit = ''
|
||||||
|
set fish_greeting
|
||||||
|
|
||||||
|
set -g fish_color_param 42a5f5
|
||||||
|
set -g fish_color_error ff5252
|
||||||
|
#set -g fish_color_command 82b1ff
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.zellij = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = false;
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
default_shell = "fish";
|
||||||
|
default_layout = "compact";
|
||||||
|
show_startup_tips = false;
|
||||||
|
|
||||||
|
|
||||||
|
keybinds = {
|
||||||
|
normal = {
|
||||||
|
"bind \"Alt h\"" = { MoveFocus = "Left"; };
|
||||||
|
"bind \"Alt l\"" = { MoveFocus = "Right"; };
|
||||||
|
"bind \"Alt j\"" = { MoveFocus = "Down"; };
|
||||||
|
"bind \"Alt k\"" = { MoveFocus = "Up"; };
|
||||||
|
};
|
||||||
|
|
||||||
|
move = {
|
||||||
|
"bind \"h\"" = { MovePane = "Left"; };
|
||||||
|
"bind \"l\"" = { MovePane = "Right"; };
|
||||||
|
"bind \"j\"" = { MovePane = "Down"; };
|
||||||
|
"bind \"k\"" = { MovePane = "Up"; };
|
||||||
|
};
|
||||||
|
|
||||||
|
resize = {
|
||||||
|
"bind \"h\"" = { Resize = "Increase Left"; };
|
||||||
|
"bind \"l\"" = { Resize = "Increase Right"; };
|
||||||
|
"bind \"j\"" = { Resize = "Increase Down"; };
|
||||||
|
"bind \"k\"" = { Resize = "Increase Up"; };
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.zoxide = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.starship = {
|
||||||
|
enable = true;
|
||||||
|
enableFishIntegration = true;
|
||||||
|
settings = builtins.fromTOML (builtins.readFile ./starship.toml);
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.git = {
|
||||||
|
enable = true;
|
||||||
|
settings.user = { name = "Nils Walther"; email = "mail@nils-walther.de"; };
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.lazygit = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,73 @@
|
|||||||
|
"$schema" = 'https://starship.rs/config-schema.json'
|
||||||
|
|
||||||
|
format = """
|
||||||
|
[░▒▓](#0d47a1)\
|
||||||
|
$username\
|
||||||
|
[ ](bg:#0d47a1 fg:#ffffff)\
|
||||||
|
$directory\
|
||||||
|
$time\
|
||||||
|
$git_branch\
|
||||||
|
$git_status\
|
||||||
|
$nix_shell\
|
||||||
|
$character"""
|
||||||
|
|
||||||
|
[username]
|
||||||
|
show_always = true
|
||||||
|
style_user = "bg:#0d47a1 fg:#ffffff"
|
||||||
|
format = "[ $user]($style)"
|
||||||
|
|
||||||
|
[directory]
|
||||||
|
style = "fg:#000000 bg:#42a5f5"
|
||||||
|
format = "[ $path ]($style)"
|
||||||
|
truncation_length = 3
|
||||||
|
truncation_symbol = "…/"
|
||||||
|
|
||||||
|
[directory.substitutions]
|
||||||
|
"Documents" = " "
|
||||||
|
"Downloads" = " "
|
||||||
|
"Music" = " "
|
||||||
|
"Pictures" = " "
|
||||||
|
"Dokumente" = " "
|
||||||
|
"Musik" = " "
|
||||||
|
"Bilder" = " "
|
||||||
|
"Dev" = " "
|
||||||
|
|
||||||
|
[time]
|
||||||
|
disabled = false
|
||||||
|
time_format = "%R"
|
||||||
|
style = "bg:#37474f"
|
||||||
|
format = '[[ $time ](fg:#ffffff bg:#37474f)]($style)'
|
||||||
|
|
||||||
|
[git_branch]
|
||||||
|
disabled = false
|
||||||
|
symbol = " "
|
||||||
|
style = "bg:#26c6da fg:#000000"
|
||||||
|
format = '[ $symbol$branch ](bold $style)'
|
||||||
|
|
||||||
|
[git_status]
|
||||||
|
disabled = false
|
||||||
|
style = "bg:#26c6da fg:#000000"
|
||||||
|
format = '[$all_status$ahead_behind]($style)'
|
||||||
|
|
||||||
|
# up_to_date = " synced "
|
||||||
|
modified = "modified "
|
||||||
|
staged = "staged "
|
||||||
|
untracked = "untracked "
|
||||||
|
ahead = "ahead ⇡${count} "
|
||||||
|
behind = "behind ⇣${count} "
|
||||||
|
diverged = "diverged ⇕⇡${ahead_count}⇣${behind_count} "
|
||||||
|
conflicted = "conflict "
|
||||||
|
stashed = "stashed "
|
||||||
|
renamed = "renamed "
|
||||||
|
deleted = "deleted "
|
||||||
|
|
||||||
|
[nix_shell]
|
||||||
|
disabled = false
|
||||||
|
format = '[ <$name> ]($style)'
|
||||||
|
style = "bg:#78909c fg:#ffffff"
|
||||||
|
impure_msg = '(impure)'
|
||||||
|
pure_msg = '(pure)'
|
||||||
|
|
||||||
|
[character]
|
||||||
|
success_symbol = "[ ➜](#42a5f5)"
|
||||||
|
error_symbol = "[ ERROR ](bold #ff0000)[➜](#ff0000)"
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
boot = {
|
||||||
|
loader = {
|
||||||
|
systemd-boot = {
|
||||||
|
enable = true;
|
||||||
|
configurationLimit = 5;
|
||||||
|
};
|
||||||
|
efi.canTouchEfiVariables = true;
|
||||||
|
timeout = 5;
|
||||||
|
};
|
||||||
|
|
||||||
|
kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
|
||||||
|
kernelParams = [
|
||||||
|
"nvidia-drm.modeset=1"
|
||||||
|
"quiet"
|
||||||
|
"splash"
|
||||||
|
"boot.shell_on_fail"
|
||||||
|
"loglevel=3"
|
||||||
|
"rd.systemd.show_status=false"
|
||||||
|
"rd.udev.log_level=3"
|
||||||
|
"udev.log_priority=3"
|
||||||
|
];
|
||||||
|
|
||||||
|
initrd.verbose = false;
|
||||||
|
consoleLogLevel = 0;
|
||||||
|
|
||||||
|
plymouth = {
|
||||||
|
enable = true;
|
||||||
|
theme = "breeze";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.xserver.enable = true;
|
||||||
|
services.displayManager.sddm.enable = true;
|
||||||
|
services.desktopManager.plasma6.enable = true;
|
||||||
|
|
||||||
|
services.printing.enable = true;
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
fonts.packages = with pkgs; [
|
||||||
|
dejavu_fonts
|
||||||
|
ibm-plex
|
||||||
|
inter
|
||||||
|
noto-fonts
|
||||||
|
roboto
|
||||||
|
fira
|
||||||
|
fira-code
|
||||||
|
|
||||||
|
nerd-fonts.jetbrains-mono
|
||||||
|
nerd-fonts.hack
|
||||||
|
|
||||||
|
newcomputermodern
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.xserver.videoDrivers = [ "nvidia" ];
|
||||||
|
hardware.graphics.enable = true;
|
||||||
|
|
||||||
|
hardware.nvidia = {
|
||||||
|
modesetting.enable = true;
|
||||||
|
powerManagement.enable = false;
|
||||||
|
powerManagement.finegrained = false;
|
||||||
|
open = false;
|
||||||
|
nvidiaSettings = true;
|
||||||
|
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
|
i18n.defaultLocale = "de_DE.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";
|
||||||
|
};
|
||||||
|
|
||||||
|
console.keyMap = "de";
|
||||||
|
services.xserver.xkb = {
|
||||||
|
layout = "de";
|
||||||
|
variant = "";
|
||||||
|
options = "caps:escape";
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
networking.hostName = "nixos";
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.pulseaudio.enable = false;
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
programs.firefox.enable = true;
|
||||||
|
programs.fish.enable = true;
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
whitesur-cursors
|
||||||
|
kdePackages.partitionmanager
|
||||||
|
kdePackages.isoimagewriter
|
||||||
|
];
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
users.users.nils = {
|
||||||
|
isNormalUser = true;
|
||||||
|
description = "nils";
|
||||||
|
extraGroups = [ "networkmanager" "wheel" ];
|
||||||
|
shell = pkgs.fish;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
# https://md.timvandenboom.eth64.de/s/Nils/p/evdev-passthrough-BTUeHFqMQ3
|
||||||
|
|
||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
virtualisation.libvirtd = {
|
||||||
|
enable = true;
|
||||||
|
qemu = {
|
||||||
|
package = pkgs.qemu_kvm;
|
||||||
|
runAsRoot = true;
|
||||||
|
swtpm.enable = true;
|
||||||
|
verbatimConfig = ''
|
||||||
|
cgroup_device_acl = [
|
||||||
|
"/dev/null", "/dev/full", "/dev/zero",
|
||||||
|
"/dev/random", "/dev/urandom",
|
||||||
|
"/dev/ptmx", "/dev/kvm", "/dev/kqemu",
|
||||||
|
"/dev/rtc","/dev/hpet", "/dev/vfio/vfio",
|
||||||
|
"/dev/input/by-id/usb-Kinesis_Corporation_Adv360_Pro_5E36F7BBCC9DC86A-if02-event-kbd",
|
||||||
|
"/dev/input/by-id/usb-Keychron_Keychron_4K_Link-event-mouse"
|
||||||
|
]
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.virt-manager.enable = true;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user