{ config, pkgs, inputs, ... }: { services.flatpak.enable = true; programs.nix-ld.enable = true; programs.nix-ld.libraries = [ # put here missing libraries pkgs.glibc ]; programs.steam = { enable = true; extraCompatPackages = [ pkgs.proton-ge-bin ]; }; programs.thunar.enable = true; programs.gnupg.agent = { enable = true; enableSSHSupport = true; }; programs.gamemode.enable = true; boot.binfmt.registrations.appimage = { wrapInterpreterInShell = false; interpreter = "${pkgs.appimage-run}/bin/appimage-run"; recognitionType = "magic"; offset = 0; mask = ''\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff''; magicOrExtension = ''\x7fELF....AI\x02''; }; environment.systemPackages = with pkgs; [ (inputs.umu.packages.${pkgs.system}.umu.override { version = "${inputs.umu.shortRev}"; }) gfxreconstruct glslang spirv-cross spirv-headers spirv-tools vulkan-extension-layer vulkan-headers vulkan-loader vulkan-tools vulkan-tools-lunarg vulkan-utility-libraries vulkan-validation-layers vkdisplayinfo vkd3d bottles vkd3d-proton vk-bootstrap (lutris.override { steamSupport = true; extraLibraries = pkgs: [ liboggz libgudev speex libogg flac graphene libvpx ]; extraPkgs = pkgs: [ libvpx libogg liboggz flac graphene gst_all_1.gstreamer # Common plugins like "filesrc" to combine within e.g. gst-launch gst_all_1.gst-plugins-base # Specialized plugins separated by quality gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-ugly # Plugins to reuse ffmpeg to play almost every video format gst_all_1.gst-libav # Support the Video Audio (Hardware) Acceleration API gst_all_1.gst-vaapi openssl nghttp2 libidn2 rtmpdump libpsl curl krb5 keyutils # List library dependencies here ]; }) sipcalc xdg-utils pass xdg-desktop-portal pkg-config xclip nvd xdg-desktop-portal-gtk google-chrome zoom-us # icu # icu.dev neovim git gnupg pinentry-rofi pinentry rofi-rbw-x11 rbw nil nixpkgs-fmt curl git libnotify usbutils vim wget v4l-utils nmap wineWowPackages.stable rustc cargo ]; systemd = { user.services.polkit-gnome-authentication-agent-1 = { description = "polkit-gnome-authentication-agent-1"; wantedBy = [ "graphical-session.target" ]; wants = [ "graphical-session.target" ]; after = [ "graphical-session.target" ]; serviceConfig = { Type = "simple"; ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"; Restart = "on-failure"; RestartSec = 1; TimeoutStopSec = 10; }; }; }; }