Moved desktop entries to a new file and added fingerprint sensor support (SDDM currently slowed down by it)

This commit is contained in:
2025-10-30 15:02:19 +01:00
parent 5455528f40
commit a5a17cdbfd
13 changed files with 152 additions and 98 deletions

1
.gitignore vendored
View File

@ -1 +0,0 @@
hardware-configuration.nix

0
boot-splash.nix Normal file → Executable file
View File

View File

@ -34,7 +34,7 @@
grub = { grub = {
enable = true; enable = true;
device = "/dev/sda"; #Needs to be changed when using a new computer! (Make grub partition - look below!) device = "/dev/nvme0n1"; #Needs to be changed when using a new computer! (Make grub partition - look below!)
#devices = [ "nodev" ]; #devices = [ "nodev" ];
efiSupport = true; efiSupport = true;
useOSProber = true; useOSProber = true;
@ -95,6 +95,10 @@
#loadModels = [ ... ]; #loadModels = [ ... ];
}; };
fprintd.enable = true;
fprintd.tod.enable = true;
fprintd.tod.driver = pkgs.libfprint-2-tod1-goodix;
locate = { locate = {
enable = true; enable = true;
package = pkgs.plocate; package = pkgs.plocate;
@ -114,6 +118,7 @@
xserver = { xserver = {
enable = true; enable = true;
videoDrivers = [ "amdgpu" ];
xkb = { xkb = {
layout = "de"; layout = "de";
@ -158,6 +163,39 @@
# Configure console keymap # Configure console keymap
console.keyMap = "de"; console.keyMap = "de";
hardware.enableRedistributableFirmware = true;
#Enables proprietary, redistributable firmware so hardware devices function properly
hardware.opengl = {
enable = true;
# Mesa should be enabled by default for Vulkan, but you can be explicit
driSupport32Bit = true; # For 32-bit applications
};
hardware.cpu.amd.updateMicrocode = true;
hardware.bluetooth = {
enable = true;
powerOnBoot = true;
settings = {
General = {
# Shows battery charge of connected devices on supported
# Bluetooth adapters. Defaults to 'false'.
Experimental = true;
# When enabled other devices can connect faster to us, however
# the tradeoff is increased power consumption. Defaults to
# 'false'.
FastConnectable = true;
};
Policy = {
# Enable all controllers when they are found. This includes
# adapters present on start as well as adapters that are plugged
# in later on. Defaults to 'true'.
AutoEnable = true;
};
};
};
# security.rtkit.enable = true; # security.rtkit.enable = true;
# services.pipewire = { # services.pipewire = {
# enable = true; # enable = true;

94
desktop-entries.nix Executable file
View File

@ -0,0 +1,94 @@
{ pkgs, ...}:
{
xdg = {
desktopEntries.youtube = {
name = "YouTube";
exec = "chromium --app=https://www.youtube.com";
terminal = false;
type = "Application";
icon = "applications-multimedia";
categories = [ "AudioVideo" "Player" "Network" ];
};
desktopEntries."org.kde.konsole" = {
name = "Konsole";
noDisplay = true;
};
desktopEntries.kitty = {
name = "kitty";
genericName = "Terminal emulator";
comment = "Fast, feature-rich, GPU based terminal";
exec = "kitty";
terminal = false;
categories = [ "System" "TerminalEmulator" ];
icon = "/etc/nixos/other/kitty.app.png";
};
desktopEntries."org.kde.kinfocenter" = {
name = "Info Center";
noDisplay = true;
};
desktopEntries."org.kde.khelpcenter" = {
name = "Help Center";
noDisplay = true;
};
desktopEntries."org.kde.kmenuedit" = {
name = "Menu Editor";
noDisplay = true;
};
desktopEntries."micro" = {
name = "Micro";
noDisplay = true;
};
desktopEntries."nvim" = {
name = "Neovim";
noDisplay = true;
};
desktopEntries."btop" = {
name = "btop++";
noDisplay = true;
};
desktopEntries."chromium-desktop" = {
name = "Chromium";
noDisplay = true;
};
desktopEntries."nixos-manual" = {
name = "NixOS Manual";
noDisplay = true;
};
desktopEntries."org.freedesktop.IBus.Setup" = {
name = "IBus Preferences";
noDisplay = true;
};
desktopEntries."org.kde.drkonqi" = {
name = "Crashed Processes Viewer";
noDisplay = true;
};
desktopEntries."com.cloudflare.WarpTaskbar" = {
name = "Cloudflare Zero Trust";
noDisplay = true;
};
desktopEntries."org.kde.kwrite" = {
name = "KWrite";
noDisplay = true;
};
desktopEntries."org.kde.discover" = {
name = "Discover";
noDisplay = true;
};
};
}

0
flake.lock generated Normal file → Executable file
View File

18
hardware-configuration.nix Executable file → Normal file
View File

@ -8,34 +8,32 @@
[ (modulesPath + "/installer/scan/not-detected.nix") [ (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "uas" "sd_mod" ]; boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "uas" "usbhid" "sd_mod" ];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = fileSystems."/" =
{ device = "/dev/disk/by-uuid/908d7dfb-fb97-4b78-80b5-dc8d810522e0"; { device = "/dev/disk/by-uuid/af8fdb25-74d8-4b33-8413-bdcb66e0d22a";
fsType = "ext4"; fsType = "ext4";
}; };
fileSystems."/boot" = fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/F4AB-9E6A"; { device = "/dev/disk/by-uuid/58D5-0C06";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ]; options = [ "fmask=0077" "dmask=0077" ];
}; };
swapDevices = swapDevices = [ ];
[ { device = "/dev/disk/by-uuid/d969d107-c7b5-4d5e-8c47-310cacbd38d1"; }
];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # 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 # (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 # 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`. # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true; networking.useDHCP = lib.mkDefault true;
# networking.interfaces.eno1.useDHCP = lib.mkDefault true; # networking.interfaces.eth0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true; # networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
} }

View File

@ -11,6 +11,7 @@
# or inputs.zen-browser.homeModules.twilight # or inputs.zen-browser.homeModules.twilight
# or inputs.zen-browser.homeModules.twilight-official # or inputs.zen-browser.homeModules.twilight-official
./neovim-home.nix ./neovim-home.nix
./desktop-entries.nix
] ]
++ lib.optional hyprlandEnabled ./hyprland/hyprland-home.nix; ++ lib.optional hyprlandEnabled ./hyprland/hyprland-home.nix;
@ -24,87 +25,6 @@
# changes in each release. # changes in each release.
home.stateVersion = version; home.stateVersion = version;
xdg = {
desktopEntries.youtube = {
name = "YouTube";
exec = "chromium --app=https://www.youtube.com";
terminal = false;
type = "Application";
icon = "applications-multimedia";
categories = [ "AudioVideo" "Player" "Network" ];
};
desktopEntries."org.kde.konsole" = {
name = "Konsole";
noDisplay = true;
};
desktopEntries."org.kde.kinfocenter" = {
name = "Info Center";
noDisplay = true;
};
desktopEntries."org.kde.khelpcenter" = {
name = "Help Center";
noDisplay = true;
};
desktopEntries."org.kde.kmenuedit" = {
name = "Menu Editor";
noDisplay = true;
};
desktopEntries."micro" = {
name = "Micro";
noDisplay = true;
};
desktopEntries."nvim" = {
name = "Neovim";
noDisplay = true;
};
desktopEntries."btop" = {
name = "btop++";
noDisplay = true;
};
desktopEntries."chromium-desktop" = {
name = "Chromium";
noDisplay = true;
};
desktopEntries."nixos-manual" = {
name = "NixOS Manual";
noDisplay = true;
};
desktopEntries."org.freedesktop.IBus.Setup" = {
name = "IBus Preferences";
noDisplay = true;
};
desktopEntries."org.kde.drkonqi" = {
name = "Crashed Processes Viewer";
noDisplay = true;
};
desktopEntries."com.cloudflare.WarpTaskbar" = {
name = "Cloudflare Zero Trust";
noDisplay = true;
};
desktopEntries."org.kde.kwrite" = {
name = "KWrite";
noDisplay = true;
};
desktopEntries."org.kde.discover" = {
name = "Discover";
noDisplay = true;
};
};
# Let Home Manager install and manage itself. # Let Home Manager install and manage itself.
programs = { programs = {
home-manager = { enable = true; }; home-manager = { enable = true; };

View File

@ -10,7 +10,7 @@ alias mcrow="echo 'you better try to use nvim you little shit! :3'"
alias srcals="source /etc/nixos/other/aliases && echo 'Sourced Aliases ... successful!'" alias srcals="source /etc/nixos/other/aliases && echo 'Sourced Aliases ... successful!'"
alias please="sudo" alias please="sudo"
alias se="sudoedit" alias se="sudoedit"
alias tt="gtypist ktde.typ"
alias neofetch="fastfetch" alias neofetch="fastfetch"

BIN
other/kitty.app.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

0
other/wallpaper2.png Normal file → Executable file
View File

Before

Width:  |  Height:  |  Size: 833 KiB

After

Width:  |  Height:  |  Size: 833 KiB

View File

@ -32,10 +32,12 @@
docker docker
docker-compose docker-compose
plymouth plymouth
mesa
fprintd
#Programming #Programming
#jetbrains.pycharm-community #The PyCharm IDE to edit Python code #jetbrains.pycharm-community #The PyCharm IDE to edit Python code
#jetbrains.idea-community #The IntelliJ IDE to edit Java code jetbrains.idea-community #The IntelliJ IDE to edit Java code
#jetbrains.clion #The CLion IDE to edit and compile c/c++ code #jetbrains.clion #The CLion IDE to edit and compile c/c++ code
#racket #The racket Programming language, with DrRacket IDE, for University (*Not* because it's my favourite) #racket #The racket Programming language, with DrRacket IDE, for University (*Not* because it's my favourite)
rustup #Rust Programming Toolchain rustup #Rust Programming Toolchain
@ -43,6 +45,7 @@
gcc gcc
pkg-config pkg-config
vscode #Editor for all kinds of programms vscode #Editor for all kinds of programms
nodejs_22
#Desktop Applications #Desktop Applications
vlc vlc
@ -57,7 +60,7 @@
kdePackages.yakuake kdePackages.yakuake
#atlauncher #atlauncher
discord discord
wineWowPackages.stable wineWowPackages.stagingFull
winetricks winetricks
#whatsapp-for-linux #whatsapp-for-linux
#obs-studio #obs-studio
@ -74,6 +77,7 @@
tdrop tdrop
#CLI tools #CLI tools
pdftk
yt-dlp yt-dlp
tailscale tailscale
speedtest-cli speedtest-cli
@ -83,6 +87,7 @@
ddrescue ddrescue
texliveFull #LaTeX PDF maker texliveFull #LaTeX PDF maker
lazygit lazygit
gtypist
]; ];
nixpkgs.config.permittedInsecurePackages = [ nixpkgs.config.permittedInsecurePackages = [
@ -103,7 +108,7 @@
{ {
appId = "org.vinegarhq.Sober"; appId = "org.vinegarhq.Sober";
origin = "flathub"; origin = "flathub";
commit = "e28fd81675b0871614ccdc8fc66c6da6761dd11333a65900a0451edf07ef0ea6"; #commit = "e28fd81675b0871614ccdc8fc66c6da6761dd11333a65900a0451edf07ef0ea6";
} }
]; ];
}; };

0
plasma/NixOS-1.0.0.knsv Normal file → Executable file
View File

View File

@ -4,7 +4,7 @@
#To show logs of services run: journalctl --user-unit={service-name} --user #To show logs of services run: journalctl --user-unit={service-name} --user
systemd.user.services.set-wallpaper = { systemd.user.services.set-wallpaper = {
enable = false; enable = true;
description = "Set KDE Plasma wallpaper"; description = "Set KDE Plasma wallpaper";
#after = [ "plasma-desktop.service" ]; #after = [ "plasma-desktop.service" ];
wantedBy = [ "graphical-session.target" ]; wantedBy = [ "graphical-session.target" ];