{ config, pkgs, pkgs-unstable, home-manager, lib, ... }: { users.users.jsutter = { shell = pkgs.zsh; isNormalUser = true; description = "Julian Sutter"; extraGroups = [ "networkmanager" "wheel" "docker" "libvirtd" "audio" "plugdev" ]; hashedPassword = "$6$tvkhGd24G6pVOsWr$j8ZAqSnXPTGwMGmIulU5Puzqd4iKdu8eAMSFis/cPqTW6u2xGQMqPHH1W9IZwKSL6.nS7Jc/NR2VwpPosyXDH/"; openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBNVUh+RrcOSMRV6qysnsdPs5AyK8dSm4QhhnwgpikyI jsutter@symbiotrip.com" ]; packages = with pkgs; [ # Essential CLI tools and user utilities only # GUI applications have been moved to appropriate desktop modules direnv # Development environment management appimage-run # System utility for AppImages micro ]; }; # Everything below is home manager managed: home-manager = { useUserPackages = true; backupFileExtension = "backup"; users.jsutter = { home.username = "jsutter"; home.homeDirectory = "/home/jsutter"; programs.home-manager.enable = true; home.stateVersion = "25.11"; # Set environment variables here home.sessionVariables = { OPENAI_API_KEY = "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"; SYNTHETIC_L_API_KEY = "syn_5bfe68ad3826bb7872f32fcf160e959a"; MOZ_USE_XINPUT2 = "1"; }; programs.git = { enable = true; settings = { user = { name = "Julian Sutter"; email = "jsutter@symbiotip.com"; }; core.editor = "nano"; credential.helper = "store"; init.defaultBranch = "main"; }; }; programs.go.enable= true; programs.zed-editor = { enable = true; # Lets Zed update settings.json when you change agent/model settings in the UI mutableUserSettings = true; extensions = [ "nix" "markdown" "toml" "go" "dracula" ]; extraPackages = with pkgs; [ nixd nil go gopls ]; userSettings = { language_models = { openai_compatible = { SyntheticL = { api_url = "https://api.synthetic.new/openai/v1"; available_models = [ { name = "hf:zai-org/GLM-4.7"; display_name = "SyntheticL"; max_tokens = 198000; } ]; }; }; }; agent = { default_model = { provider = "SyntheticL"; model = "hf:zai-org/GLM-4.7"; }; }; ui_metrics = { overrides = { button = { padding = { top = 8; right = 12; bottom = 8; left = 12; }; corner_radius = 8; font_size = 14; }; }; }; }; }; programs.vscode = { enable = true; package = pkgs.vscodium; profiles.default.extensions = with pkgs.vscode-extensions; [ dracula-theme.theme-dracula yzhang.markdown-all-in-one mkhl.direnv golang.go bbenoist.nix arrterian.nix-env-selector jnoortheen.nix-ide saoudrizwan.claude-dev # optional alt: # continue.continue ]; }; programs.zsh = { enable = true; enableCompletion = false; # enabled in oh-my-zsh autosuggestion.enable = true; initContent = '' test -f ~/.dir_colors && eval $(dircolors ~/.dir_colors) ''; shellAliases = { ne = "nix-env"; ni = "nix-env -iA"; no = "nixops"; ns = "nix-shell --pure"; nra = "sudo nixos-rebuild switch --flake .#aurora"; nrf = "sudo nixos-rebuild switch --flake .#framework"; nrl = "sudo nixos-rebuild switch --flake .#labrizor"; }; oh-my-zsh = { enable = true; plugins = [ "git" "systemd" "rsync" "kubectl" "ansible" "battery" "colored-man-pages" "colorize" "common-aliases" "cp" "docker" "docker-compose" "git-auto-fetch" "git-extras" "github" "git-prompt" "gnu-utils" "golang" "nmap" "postgres" "python" "rust" "ssh-agent" "sudo" "systemd" "ufw" "vscode" ]; theme = "terminalparty"; }; }; programs.lsd = { enable = true; }; programs.bat.enable = true; programs.firefox = { enable = true; package = pkgs.wrapFirefox pkgs.firefox-unwrapped { extraPolicies = { CaptivePortal = false; DisableFirefoxStudies = true; DisablePocket = true; DisableTelemetry = true; DisableFirefoxAccounts = false; NoDefaultBookmarks = true; OfferToSaveLogins = false; OfferToSaveLoginsDefault = false; PasswordManagerEnabled = false; DisableFormHistory = true; FirefoxHome = { Search = false; Pocket = false; Snippets = false; TopSites = false; Highlights = false; Locked = { Search = false; Pocket = false; Snippets = false; TopSites = false; Highlights = false; }; }; UserMessaging = { ExtensionRecommendations = false; FeatureRecommendations = false; SkipOnboarding = true; MoreFromMozilla = false; WhatsNew = false; }; FirefoxSuggest = { WebSuggestions = false; SponsoredSuggestions = false; ImprovSuggest = false; Locked = { WebSuggestions = false; SponsoredSuggestions = false; ImprovSuggest = false; }; }; Permissions = { Location = { BlockNewRequests = true; Locked = true; }; Notifications = { BlockNewRequests = true; Locked = true; }; Autoplay = { Default = "block-audio-video"; Locked = true; }; VirtualReality = { BlockNewRequests = true; Locked = true; }; }; ExtensionSettings = { "uBlock0@raymondhill.net" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi"; }; "{446900e4-71c2-419f-a6a7-df9c2b2dc922}" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/bitwarden-password-manager/latest.xpi"; }; "plasma-browser-integration@kde.org" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/plasma-integration/latest.xpi"; }; "webextension@metamask.io" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/ether-metamask/latest.xpi"; }; "kagi-search@kagi.com" = { installation_mode = "force_installed"; install_url = "https://addons.mozilla.org/firefox/downloads/latest/kagi-for-firefox/latest.xpi"; }; }; }; }; profiles = { jsutter = { id = 0; name = "jsutter"; settings = { "browser.ctrlTab.recentlyUsedOrder" = true; "browser.urlbar.quicksuggest.enabled" = false; "browser.urlbar.suggest.quicksuggest.sponsored" = false; "browser.urlbar.suggest.quicksuggest.nonsponsored" = false; "browser.link.preview.enabled" = false; "browser.search.suggest.enabled" = false; "browser.search.suggest.enabled.private" = false; "extensions.pocket.enabled" = false; "extensions.pocket.showHome" = false; "browser.contentblocking.category" = "strict"; "privacy.sanitize.sanitizeOnShutdown" = true; "privacy.clearOnShutdown.cache" = true; "privacy.clearOnShutdown.cookies" = true; "privacy.clearOnShutdown.downloads" = true; "privacy.clearOnShutdown.formdata" = true; "privacy.clearOnShutdown.history" = true; "privacy.clearOnShutdown.sessions" = true; "signon.rememberSignons" = false; "dom.private-attribution.submission.enabled" = false; "dom.battery.enabled" = false; "browser.uitour.enabled" = false; "browser.urlbar.trimURLs" = true; "layout.css.prefers-color-scheme.content-override" = 0; "browser.tabs.hoverPreview.enabled" = false; "browser.tabs.hoverPreview.showThumbnails" = false; "media.videocontrols.picture-in-picture.allow-multiple" = false; "media.hardware-video-decoding.force-enabled" = true; "widget.gtk.overlay-scrollbars.enabled" = false; "browser.toolbars.bookmarks.visibility" = "newtab"; "browser.toolbars.toolbarbuttons.intended.icon-size" = "small"; "browser.newtabpage.enabled" = false; "browser.startup.homepage" = "about:blank"; "browser.newtabpage.activity-stream.default.sites" = ""; "browser.search.region" = "US"; "browser.search.isUS" = true; "layers.acceleration.force-enabled" = true; "gfx.webrender.all" = true; "gfx.webrender.enabled" = true; "svg.context-properties.content.enabled" = true; "browser.zoom.full" = true; "ui.key.menuAccessKeyFocuses" = false; }; search = { default = "Kagi"; engines = { "Kagi" = { urls = [{ template = "https://kagi.com/search?q={searchTerms}"; }]; metaData.alias = "@kagi"; icon = "https://kagi.com/favicon.ico"; }; }; force = true; privateDefault = "Kagi"; }; extraConfig = '' user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true); user_pref("full-screen-api.ignore-widgets", true); user_pref("media.ffmpeg.vaapi.enabled", true); user_pref("media.rdd-vpx.enabled", true); user_pref("media.av1.enabled", true); user_pref("media.navigator.video.use_rtt", true); user_pref("browser.display.use_document_fonts", 1); user_pref("browser.display.use_system_colors", false); user_pref("browser.menu.showCharacterEncoding", false); user_pref("browser.newtabpage.activity-stream.feeds.section.topstories.options", ""); user_pref("browser.newtabpage.activity-stream.feeds.topsites", false); user_pref("browser.newtabpage.activity-stream.section.highlights.includePocket", false); user_pref("browser.newtabpage.activity-stream.section.highlights.includeVisited", false); user_pref("browser.newtabpage.activity-stream.section.highlights.includeBookmarks", false); user_pref("browser.newtabpage.activity-stream.section.highlights.includeDownloads", false); user_pref("browser.newtabpage.activity-stream.section.highlights.includePocket", false); user_pref("app.shield.optoutstudies.enabled", false); user_pref("datareporting.healthreport.uploadEnabled", false); user_pref("datareporting.policy.dataSubmissionEnabled", false); user_pref("experiments.activeExperiment", false); user_pref("experiments.enabled", false); user_pref("experiments.supported", false); user_pref("network.cookie.cookieBehavior", 1); user_pref("network.dns.disableIPv6", true); user_pref("privacy.donottrackheader.enabled", true); user_pref("privacy.resistFingerprinting", true); user_pref("privacy.trackingprotection.enabled", true); user_pref("privacy.trackingprotection.socialtracking.enabled", true); user_pref("privacy.trackingprotection.fingerprinting.enabled", true); user_pref("privacy.trackingprotection.cryptomining.enabled", true); user_pref("privacy.userContext.enabled", true); user_pref("privacy.userContext.longPressBehavior", 2); user_pref("browser.urlbar.groupLabels.enabled", false); user_pref("browser.search.widget.inNavBar", false); user_pref("browser.search.hiddenOneOffs", "Google,Bing,DuckDuckGo,Amazon,Wikipedia,Yahoo,DDG"); user_pref("browser.search.separatePrivateDefault.ui.enabled", false); user_pref("browser.search.suggest.enabled", false); user_pref("browser.search.suggest.enabled.private", false); user_pref("browser.search.order", ""); user_pref("browser.search.order.1", ""); user_pref("browser.search.order.2", ""); user_pref("browser.search.order.3", ""); user_pref("browser.search.isUS", true); user_pref("browser.search.region", "US"); user_pref("browser.uiCustomization.state", "{\"placements\":{\"widget:[addon]bar-open\",\"nav-bar\":[\"back-button\",\"forward-button\",\"stop-reload-button\",\"urlbar-container\",\"downloads-button\",\"ublock0_raymondhill_net-browser-action\",\"_446900e4-71c2-419f-a6a7-df9c2b2dc922-browser-action\",\"plasma-browser-integration_kde_org-browser-action\",\"webextension_metamask_io-browser-action\",\"kagi-search_kagi_com-browser-action\"],\"toolbar-menubar\":[\"menubar-items\"],\"TabsToolbar\":[\"tabbrowser-tabs\",\"new-tab-button\",\"alltabs-button\"],\"PersonalToolbar\":[\"personal-bookmarks\"]},\"seen\":[\"developer-button\",\"ublock0_raymondhill_net-browser-action\",\"_446900e4-71c2-419f-a6a7-df9c2b2dc922-browser-action\",\"plasma-browser-integration_kde_org-browser-action\",\"webextension_metamask_io-browser-action\",\"kagi-search_kagi_com-browser-action\"],\"dirtyAreaCache\":[\"nav-bar\",\"toolbar-menubar\",\"TabsToolbar\",\"PersonalToolbar\"],\"currentVersion\":18,\"newElementState\":{}}"); ''; }; }; }; }; }; }