{ self, config, pkgs, lib, ... }: let tex = (pkgs.texlive.combine { inherit (pkgs.texlive) scheme-basic dvisvgm dvipng # for preview and export as html wrapfig amsmath ulem hyperref capt-of; #(setq org-latex-compiler "lualatex") #(setq org-preview-latex-default-process 'dvisvgm) }); dracula-gtk = pkgs.fetchFromGitHub { owner = "dracula"; repo = "gtk"; rev = "502f212d83bc67e8f0499574546b99ec6c8e16f9"; sha256 = "1wx9nzq7cqyvpaq4j60bs8g7gh4jk8qg4016yi4c331l4iw1ymsa"; }; in { # TODO modularize imports = [ ./battery-low-timer.nix ./cal-alarms.nix ]; # Secrets used by home-manager modules age.secrets.fastmail.file = "${self}/secrets/fastmail.age"; age.secrets.fastmail.owner = "anish"; age.secrets.mossnet.file = "${self}/secrets/mossnet.age"; age.secrets.mossnet.owner = "anish"; # Taskwarrior private key age.secrets.taskwarrior-private.file = "${self}/secrets/taskwarrior-private.age"; age.secrets.taskwarrior-private.owner = "anish"; # We don't plug USBs into servers services.devmon.enable = true; services = { gnome.gnome-keyring.enable = true; upower.enable = true; dbus = { enable = true; packages = [ pkgs.dconf ]; }; }; programs.dconf.enable = true; security.pam.services.Default.enableGnomeKeyring = true; security.pam.services.Login.enableGnomeKeyring = true; security.pam.services.sddm.enableGnomeKeyring = true; environment.sessionVariables = rec { XDG_CACHE_HOME = "\${HOME}/.cache"; XDG_CONFIG_HOME = "\${HOME}/.config"; XDG_BIN_HOME = "\${HOME}/.local/bin"; XDG_DATA_HOME = "\${HOME}/.local/share"; PATH = [ "\${XDG_BIN_HOME}" ]; }; environment.systemPackages = with pkgs; [ #unstable.sublime-music # olm-3.2.16 is now insecure # some reason I can't set insecure packages that will be respected nheko unstable.signal-desktop unstable.tuba unstable.newsflash unstable.liferea unstable.gh unstable.flyctl kooha light xfce.orage feh sxiv xkblayout-state zathura calibre mpv zeal xclip xdotool rofi rofimoji rofi-calc obs-studio lightdm dunst libnotify (polybar.override { pulseSupport = true; nlSupport = true; }) papirus-icon-theme calendar-cli wyrd # tic-80 ytfzf yt-dlp ]; xdg.portal = { # Breaks link clicking in nheko # Portal doesn't seem to find Firefox as an acceptable app to open links? enable = false; extraPortals = [ pkgs.xdg-desktop-portal-gtk ]; xdgOpenUsePortal = false; }; location.provider = "geoclue2"; services = { redshift = { enable = true; temperature = { day = 5500; night = 3700; }; }; displayManager.defaultSession = "none+bspwm"; xserver = { enable = true; # TODO should be xkb.layout xkb.layout = "us"; # xkb.variant = "dvorak"; desktopManager.wallpaper.mode = "fill"; displayManager = { # startx.enable = true; sessionCommands = '' ${pkgs.xorg.xrdb}/bin/xrdb -merge <>/dev/null && connect || disconnect EOF ''; lightdm = { enable = true; background = "/etc/nixos/users/profiles/desktop/background.jpg"; greeters.mini = { enable = true; user = "anish"; extraConfig = '' text-color = "#ff79c6" password-background-color = "#1E2029" window-color = "#181a23" border-color = "#181a23" ''; }; }; }; windowManager.bspwm.enable = true; #windowManager.bspwm.configFile = "/home/anish/.bspwm/bspwmrc"; windowManager.bspwm.sxhkd.configFile = "/home/anish/.config/sxhkdrc"; }; }; fonts.packages = with pkgs; [ fira-code fira-code-symbols hermit #hack siji font-awesome proggyfonts (nerdfonts.override { fonts = [ "FiraCode" "DroidSansMono" "Iosevka" ]; }) ]; }