{ config, inputs, lib, pkgs, ... }: let inherit (lib.meta) getExe; in { boot = { extraModulePackages = [ (config.boot.kernelPackages.ddcci-driver.overrideAttrs (_: { src = pkgs.fetchFromGitLab { owner = "ddcci-driver-linux"; repo = "ddcci-driver-linux"; rev = "0233e1ee5eddb4b8a706464f3097bad5620b65f4"; hash = "sha256-Osvojt8UE+cenOuMoSY+T+sODTAAKkvY/XmBa5bQX88="; }; patches = [ (pkgs.fetchpatch { url = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/merge_requests/17.patch"; hash = "sha256-sTq03HtWQBd7Wy4o1XbdmMjXQE2dG+1jajx4HtwBHjM="; }) ]; })) ]; kernelModules = [ "ddcci" ]; }; nix.settings = { max-jobs = 3; cores = 4; }; programs = { kdeconnect.enable = true; }; security.polkit.enable = true; services = { pcscd.enable = true; udisks2.enable = true; fwupd = { enable = true; }; ratbagd.enable = true; smartd.enable = true; flatpak.enable = true; }; # this makes usb devices autosuspend #powerManagement.powertop.enable = true; poz = { other = { home-manager = { enable = true; enableDirenv = true; }; networking.enable = true; }; programs = { nh = let inherit (config.poz.other.system) username; home = config.home-manager.users.${username}.home.homeDirectory; in { enable = true; flake = "${home}/niksos"; }; zsh = { enable = true; extraAliases = { u = "nh os switch -H niks"; us = "NIX_SSHOPTS='-t' nixos-rebuild switch --flake \"/home/jacek/niksos#chmura\" -L --use-remote-sudo --target-host chmura"; # TODO use this when nh supports it #us = "NIX_SSHOPTS='-t' nh os switch -H chmura -- --store ssh-ng://chmura"; }; profiling = false; }; anyrun.enable = true; vesktop.enable = true; foot.enable = true; mpv = { enable = true; gpu = "AMD Radeon RX 6800M (RADV NAVI22)"; }; neovim = { enable = true; enableLsp = true; }; zathura = { enable = true; themeFile = pkgs.fetchurl { url = "https://raw.githubusercontent.com/catppuccin/zathura/main/src/catppuccin-mocha"; hash = "sha256-POxMpm77Pd0qywy/jYzZBXF/uAKHSQ0hwtXD4wl8S2Q="; }; }; hypr = { land = { enable = true; startupSound = ./mathis.m4a; extraPlugins = [ inputs.split-monitor-workspaces.packages.${pkgs.stdenv.system}.split-monitor-workspaces ]; extraSettings = { exec = let swww = getExe pkgs.swww; in [ # wait a bit then set the wallpapers "sleep 0.5 && ${swww} img -o eDP-1 ${./catppuccin-wall0.png}" "sleep 0.5 && ${swww} img -o HDMI-A-1 ${./catppuccin-wall1.png}" ]; }; }; lock.enable = true; idle.enable = true; }; newsboat.enable = true; }; services = { dunst.enable = true; mpd = { enable = true; musicDirectory = "/run/media/data/Music"; }; greetd = { enable = true; greeter = "gtkgreet"; launchOptions = [ "Hyprland" "sway" "zsh" "reboot" "shutdown now" ]; }; pipewire.enable = true; syncthing.enable = true; }; }; system.stateVersion = "23.11"; }