# Window Manager and desktop programs { config, lib, pkgs, ... }: let unstableTarball = fetchTarball https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz; in { sound.enable = true; hardware.pulseaudio.enable = false; security.rtkit.enable = true; services = { blueman.enable = true; pipewire = { enable = true; alsa.enable = true; alsa.support32Bit = true; pulse.enable = true; # If you want to use JACK applications, uncomment this #jack.enable = true; # use the example session manager (no others are packaged yet so this is enabled by default, # no need to redefine it in your config for now) #media-session.enable = true; }; printing.enable = true; # Enable CUPS to print documents. redshift.enable = true; xserver = { enable = true; layout = "us"; displayManager.sddm.enable = true; desktopManager.plasma5.enable = true; desktopManager.plasma5.excludePackages = with pkgs.libsForQt5; [ elisa gwenview oxygen khelpcenter plasma-browser-integration ]; # libinput.enable = true; # Enable touchpad support (enabled default in most desktopManager). }; }; programs = { dconf.enable = true; firefox.enable = true; }; imports = [ ./desktop-chromium.nix ]; # Allow unfree packages nixpkgs.config.allowUnfree = true; nixpkgs.config = { packageOverrides = pkgs: with pkgs; { unstable = import unstableTarball { config = config.nixpkgs.config; }; }; }; # List packages installed in system profile. To search, run: # $ nix search wget environment.systemPackages = with pkgs; [ (vscode-with-extensions.override { vscode = vscodium; vscodeExtensions = with vscode-extensions; [ mkhl.direnv jnoortheen.nix-ide dracula-theme.theme-dracula ms-vscode-remote.remote-ssh ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ { name = "remote-ssh-edit"; publisher = "ms-vscode-remote"; version = "0.47.2"; sha256 = "1hp6gjh4xp2m1xlm1jsdzxw9d8frkiidhph6nvl24d0h8z34w49g"; } ]; }) bitwarden chromium element-desktop filezilla inkscape-with-extensions inter gimp-with-plugins libsForQt5.ark mattermost-desktop nextcloud-client signal-desktop tdesktop thunderbird vlc vscodium unstable.obsidian ]; # Do not restart the display manager automatically systemd.services.display-manager.restartIfChanged = lib.mkForce false; # If something needs more than 20s to stop it should probably be # killed. systemd.extraConfig = '' DefaultTimeoutStopSec=20s ''; }