{ config, pkgs, nur, ... }: let earlyInitPath = "/home/chase/nixos-config/home/emacs/early-init.el"; initPath = "/home/chase/nixos-config/home/emacs/init.el"; in { home.username = "chase"; home.homeDirectory = "/home/chase"; home.stateVersion = "24.11"; home.preferXdgDirectories = true; xdg = { enable = true; userDirs.enable = true; }; xdg.configFile."emacs/early-init.el".source = config.lib.file.mkOutOfStoreSymlink earlyInitPath; xdg.configFile."emacs/init.el".source = config.lib.file.mkOutOfStoreSymlink initPath; programs.alacritty = { enable = true; settings = { font = { normal = { family = "IBM Plex Mono"; style = "Regular"; }; }; }; theme = "catppuccin_mocha"; }; programs.bash = { enable = true; enableCompletion = true; bashrcExtra = '' export SSH_AUTH_SOCK=/home/chase/.bitwarden-ssh-agent.sock ''; historyIgnore = [ "ls" "cd" "exit" ]; }; programs.fastfetch = { enable = true; settings = { logo = { source = "nixos_small"; }; display = { size = { binaryPrefix = "si"; }; color = "blue"; separator = ": "; }; modules = [ "title" "separator" "os" "host" "uptime" "kernel" "packages" "lm" "de" "wm" "shell" "terminal" "terminalfont" { key = "Display"; type = "display"; } "cpu" "gpu" "memory" "swap" "disk" "datetime" "colors" "break" "player" "media" ]; }; }; programs.firefox = { enable = true; nativeMessagingHosts = [ pkgs.firefoxpwa ]; profiles = { default = { id = 0; name = "default"; isDefault = true; extensions = { packages = with pkgs.nur.repos.rycee.firefox-addons; [ awesome-rss betterttv bitwarden clearurls control-panel-for-twitter enhancer-for-youtube facebook-container flagfox istilldontcareaboutcookies privacy-badger return-youtube-dislikes search-by-image sponsorblock tab-session-manager tampermonkey ublock-origin ]; }; settings = { "browser.formfill.enable" = false; "browser.newtabpage.activity-stream.feeds.section.topstories" = false; "browser.newtabpage.activity-stream.feeds.snippets" = false; "browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false; "browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false; "browser.newtabpage.activity-stream.section.highlights.includePocket" = false; "browser.newtabpage.activity-stream.section.highlights.includeVisited" = false; "browser.newtabpage.activity-stream.showSponsored" = false; "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; "browser.newtabpage.activity-stream.system.showSponsored" = false; "browser.topsites.contile.enabled" = false; "browser.urlbar.unitConversion.enabled" = true; "extensions.formautofill.addresses.enabled" = false; "extensions.formautofill.creditCards.enabled" = false; "extensions.pocket.enabled" = false; "general.autoScroll" = true; "widget.use-xdg-desktop-portal.file-picker" = 1; "signon.rememberSignons" = false; }; search = { force = true; default = "SearX"; order = [ "SearX" "google" ]; engines = { "Nix Packages" = { urls = [{ template = "https://search.nixos.org/packages"; params = [ { name = "type"; value = "packages"; } { name = "query"; value = "{searchTerms}"; } ]; }]; icon = "''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; definedAliases = [ "@np" ]; }; "SearX" = { urls = [{ template = "https://searx.traphouse.cathoderaytube.net/?q={searchTerms}"; }]; definedAliases = [ "@searx" ]; }; "bing".metaData.hidden = true; }; }; }; }; }; programs.git = { enable = true; userName = "chase"; userEmail = "chase@cathoderaytube.net"; extraConfig = { init.defaultBranch = "main"; }; }; programs.git-credential-oauth.enable = true; programs.kitty = { enable = true; enableGitIntegration = true; font.name = "IBM Plex Mono"; shellIntegration.enableBashIntegration = true; themeFile = "Catppuccin-Mocha"; }; programs.mpv = { enable = true; config = { profile = "gpu-hq"; ytdl-format = "bestvideo+bestaudio"; }; scripts = [ pkgs.mpvScripts.mpris ]; }; programs.ncmpcpp = { enable = true; bindings = [ { key = "h"; command = "previous_column"; } { key = "j"; command = "scroll_down"; } { key = "k"; command = "scroll_up"; } { key = "l"; command = "next_column"; } ]; settings = { media_library_primary_tag = "album_artist"; }; }; programs.obs-studio.enable = true; programs.ranger.enable = true; programs.rmpc = { enable = true; config = '' ( album_art: ( method: Auto, max_size_px: (width: 1200, height: 1200), disabled_protocols: ["http://", "https://"], vertical_align: Center, horizontal_align: Center, ), ) ''; }; programs.texlive.enable = true; programs.yt-dlp = { enable = true; settings = { embed-thumbnail = true; }; }; home.packages = with pkgs; [ audacity anki-bin ffmpeg gimp ibm-plex imagemagick kdePackages.kdenlive libreoffice logiops nerd-fonts.blex-mono protonmail-bridge thunderbird ueberzugpp runelite ]; services.mako.enable = true; services.mpd = { enable = true; extraConfig = '' audio_output { type "pipewire" name "Pipewire Output" } ''; musicDirectory = "/mnt/share/media/music"; }; services.mpd-mpris = { enable = true; mpd.useLocal = true; }; }