{ config, pkgs, lib, makeDesktopItem, ... }: { documentation.info.enable = true; nixpkgs.config.firefox.enableOfficialBranding = true; environment.systemPackages = with pkgs; [ aria2 firefox pcmanfm epdfview geeqie cmus fish # for emacs-fish-completion unstable.xst # st, but with support for XResources lxappearance lxrandr lxtask python3Packages.keyring isync msmtp html2text weechat unstable.pass-otp mpv mosh aspell aspellDicts.en cifs-utils hexchat signal-desktop wire-desktop trash-cli ] ++ (if !stdenv.isDarwin then [ unstable.mu ] else []); nixpkgs.config.allowUnfree = true; services.compton = { enable = true; backend = "glx"; vSync = "opengl-swc"; }; services.devmon.enable = true; environment.sessionVariables.TERMINAL = "st"; systemd.user.services.trash-clean = { path = with pkgs; [ trash-cli ]; description = "Remove old files from FreeDesktop.org trash"; serviceConfig = { Type = "oneshot"; }; script = "trash-empty 30"; }; systemd.user.timers.trash-clean = { wantedBy = [ "default.target" ]; timerConfig = { OnCalendar = "weekly"; Persistent = true; }; }; environment.variables = { # This is required so that GTK applications launched from Emacs # get properly themed: GTK_DATA_PREFIX = "${config.system.path}"; }; services.redshift = { enable = true; temperature = { day = 6500; night = 3600; }; }; programs.ssh.startAgent = true; programs.dconf.enable = true; services.gnome3 = { gnome-keyring.enable = true; seahorse.enable = true; at-spi2-core.enable = true; }; imports = [ ./services/xserver.nix ]; }