# 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; openvpn.servers = { arn = { config = '' config /home/mrflos/Nextcloud/vpn\ ARN/2023/vpn510.conf ''; }; }; 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.gnome.enable = true; # libinput.enable = true; # Enable touchpad support (enabled default in most desktopManager). }; }; programs = { # conflict between kde and gnome cf. https://github.com/NixOS/nixpkgs/issues/75867 ssh.askPassword = pkgs.lib.mkForce "${pkgs.ksshaskpass.out}/bin/ksshaskpass"; ssh.startAgent = true; dconf.enable = true; steam.enable = true; firefox.enable = true; chromium = { enable = true; homepageLocation = "about:blank"; extensions = [ "pejkokffkapolfffcgbmdmhdelanoaih" # Unsplash instant "cjpalhdlnbpafiamejdnhcphjbkeiagm" # uBlock Origin "gfapcejdoghpoidkfodoiiffaaibpaem" # Dracula theme "jbbplnpkjmmeebjpijfedlgcdilocofh" # wave a11y ]; extraOpts = { SpellcheckEnabled = true; SpellcheckLanguage = [ "fr-FR" "en-GB" "ru" ]; }; }; }; # Allow unfree packages nixpkgs.config.allowUnfree = true; nixpkgs.config = { packageOverrides = pkgs: with pkgs; { unstable = import unstableTarball { config = config.nixpkgs.config; }; }; }; environment.plasma5.excludePackages = with pkgs.libsForQt5; [ elisa gwenview oxygen khelpcenter plasma-browser-integration ]; # 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; [ ms-ceintl.vscode-language-pack-fr mkhl.direnv jnoortheen.nix-ide dracula-theme.theme-dracula ms-vscode-remote.remote-ssh gruntfuggly.todo-tree eamodio.gitlens mhutchie.git-graph ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ { name = "remote-ssh-edit"; publisher = "ms-vscode-remote"; version = "0.47.2"; sha256 = "1hp6gjh4xp2m1xlm1jsdzxw9d8frkiidhph6nvl24d0h8z34w49g"; } ]; }) (chromium.override { enableWideVine = true; # DRM support }) bitwarden digikam dracula-theme palenight-theme numix-cursor-theme papirus-icon-theme element-desktop filezilla gimp-with-plugins hyprland inkscape-with-extensions joplin-desktop kitty kitty-themes libsForQt5.ark libsForQt5.bismuth mattermost-desktop nextcloud-client obsidian onlyoffice-bin signal-desktop tdesktop thunderbird transmission-qt vlc ]; # environment.gnome.excludePackages = (with pkgs; [ # gnome-photos # gnome-tour # ]) ++ (with pkgs.gnome; [ # cheese # webcam tool # gnome-music # gedit # text editor # epiphany # web browser # geary # email reader # gnome-characters # tali # poker game # iagno # go game # hitori # sudoku game # atomix # puzzle game # yelp # Help view # gnome-contacts # gnome-initial-setup # ]); # 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 ''; }