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 = {
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" ];
efiSupport = true;
useOSProber = true;
@ -95,6 +95,10 @@
#loadModels = [ ... ];
};
fprintd.enable = true;
fprintd.tod.enable = true;
fprintd.tod.driver = pkgs.libfprint-2-tod1-goodix;
locate = {
enable = true;
package = pkgs.plocate;
@ -114,6 +118,7 @@
xserver = {
enable = true;
videoDrivers = [ "amdgpu" ];
xkb = {
layout = "de";
@ -158,6 +163,39 @@
# Configure console keymap
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;
# services.pipewire = {
# 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")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "uas" "sd_mod" ];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "uas" "usbhid" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/908d7dfb-fb97-4b78-80b5-dc8d810522e0";
{ device = "/dev/disk/by-uuid/af8fdb25-74d8-4b33-8413-bdcb66e0d22a";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/F4AB-9E6A";
{ device = "/dev/disk/by-uuid/58D5-0C06";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices =
[ { device = "/dev/disk/by-uuid/d969d107-c7b5-4d5e-8c47-310cacbd38d1"; }
];
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.eno1.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
# networking.interfaces.eth0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp1s0.useDHCP = lib.mkDefault true;
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-official
./neovim-home.nix
./desktop-entries.nix
]
++ lib.optional hyprlandEnabled ./hyprland/hyprland-home.nix;
@ -24,87 +25,6 @@
# changes in each release.
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.
programs = {
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 please="sudo"
alias se="sudoedit"
alias tt="gtypist ktde.typ"
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-compose
plymouth
mesa
fprintd
#Programming
#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
#racket #The racket Programming language, with DrRacket IDE, for University (*Not* because it's my favourite)
rustup #Rust Programming Toolchain
@ -43,6 +45,7 @@
gcc
pkg-config
vscode #Editor for all kinds of programms
nodejs_22
#Desktop Applications
vlc
@ -57,7 +60,7 @@
kdePackages.yakuake
#atlauncher
discord
wineWowPackages.stable
wineWowPackages.stagingFull
winetricks
#whatsapp-for-linux
#obs-studio
@ -74,6 +77,7 @@
tdrop
#CLI tools
pdftk
yt-dlp
tailscale
speedtest-cli
@ -83,6 +87,7 @@
ddrescue
texliveFull #LaTeX PDF maker
lazygit
gtypist
];
nixpkgs.config.permittedInsecurePackages = [
@ -103,7 +108,7 @@
{
appId = "org.vinegarhq.Sober";
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
systemd.user.services.set-wallpaper = {
enable = false;
enable = true;
description = "Set KDE Plasma wallpaper";
#after = [ "plasma-desktop.service" ];
wantedBy = [ "graphical-session.target" ];