{ custom }: { pkgs, ... }: { imports = [ (import "${custom.inputs.self}/modules/docker" { inherit custom; }) (import "${custom.inputs.self}/modules/droidcam" { inherit custom; }) (import "${custom.inputs.self}/modules/email" { inherit custom; }) (import "${custom.inputs.self}/modules/eog" { inherit custom; }) (import "${custom.inputs.self}/modules/espanso" { inherit custom; }) "${custom.inputs.self}/modules/hunspell" (import "${custom.inputs.self}/modules/libimobiledevice" { inherit custom; }) (import "${custom.inputs.self}/modules/nix-direnv" { inherit custom; }) (import "${custom.inputs.self}/modules/pipewire" { inherit custom; }) "${custom.inputs.self}/modules/scripts" "${custom.inputs.self}/modules/tmux" ]; networking = { networkmanager.enable = true; }; services = { gvfs.enable = true; printing.enable = true; picom = { enable = true; }; redshift = { enable = true; }; fwupd.enable = true; }; # Enable the X11 windowing system. services.xserver = { enable = true; displayManager.lightdm.enable = true; displayManager.defaultSession = "none+qtile"; windowManager.qtile.enable = true; layout = "us"; xkbOptions = "compose:ralt"; libinput.enable = true; }; fonts.fonts = with pkgs; [ source-code-pro ]; # Enable keyring security.pam.services.lightdm.enableGnomeKeyring = true; services.gnome.gnome-keyring.enable = true; # Enable sound. sound.enable = true; # Enable dconf to be able to save Nautilus settings programs.dconf.enable = true; # Enable Flatpack services.flatpak.enable = true; xdg = { portal = { enable = true; extraPortals = [ pkgs.xdg-desktop-portal-gtk ]; }; mime = { addedAssociations = { "x-scheme-handler/http" = "firefox.desktop"; "x-scheme-handler/https" = "firefox.desktop"; "x-scheme-handler/about" = "firefox.desktop"; "x-scheme-handler/unknown" = "firefox.desktop"; "x-scheme-handler/chrome" = "firefox.desktop"; "text/html" = "firefox.desktop"; "application/x-extension-htm" = "firefox.desktop"; "application/x-extension-html" = "firefox.desktop"; "application/x-extension-shtml" = "firefox.desktop"; "application/xhtml+xml" = "firefox.desktop"; "application/x-extension-xhtml" = "firefox.desktop"; "application/x-extension-xht" = "firefox.desktop"; "application/x-www-browser" = "firefox.desktop"; "x-www-browser" = "firefox.desktop"; "x-scheme-handler/webcal" = "firefox.desktop"; }; defaultApplications = { "x-scheme-handler/http" = "firefox.desktop"; "x-scheme-handler/https" = "firefox.desktop"; "x-scheme-handler/about" = "firefox.desktop"; "x-scheme-handler/unknown" = "firefox.desktop"; "x-scheme-handler/chrome" = "firefox.desktop"; "text/html" = "firefox.desktop"; "application/x-extension-htm" = "firefox.desktop"; "application/x-extension-html" = "firefox.desktop"; "application/x-extension-shtml" = "firefox.desktop"; "application/xhtml+xml" = "firefox.desktop"; "application/x-extension-xhtml" = "firefox.desktop"; "application/x-extension-xht" = "firefox.desktop"; "application/x-www-browser" = "firefox.desktop"; "x-www-browser" = "firefox.desktop"; "x-scheme-handler/webcal" = "firefox.desktop"; }; }; }; environment = { systemPackages = with pkgs; [ # what I consider to be system packages alacritty appimage-run brightnessctl firefox lm_sensors lxappearance gnome.file-roller gnome.gnome-screenshot gnome.nautilus networkmanager-openvpn nitrogen p7zip pavucontrol quickemu rofi source-code-pro unrar ]; shellAliases = { management-server = "mosh ${custom.username}@10.7.89.150 -- tmux new -A -s 0"; }; variables = { WINIT_X11_SCALE_FACTOR = "1"; }; sessionVariables = { DEFAULT_BROWSER = "${pkgs.firefox}/bin/firefox"; }; }; }