diff options
author | Tim Keller <tjk@tjkeller.xyz> | 2024-09-29 22:54:38 -0500 |
---|---|---|
committer | Tim Keller <tjk@tjkeller.xyz> | 2024-09-29 22:54:38 -0500 |
commit | f9d4d2bbd82bd66bebff85420df6653a6966ee9a (patch) | |
tree | dee057520e7c6f32234066786e447b9d05ebd17b /home.nix | |
download | nixos-f9d4d2bbd82bd66bebff85420df6653a6966ee9a.tar.xz nixos-f9d4d2bbd82bd66bebff85420df6653a6966ee9a.zip |
initial commit
Diffstat (limited to 'home.nix')
-rw-r--r-- | home.nix | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/home.nix b/home.nix new file mode 100644 index 0000000..78608a9 --- /dev/null +++ b/home.nix @@ -0,0 +1,95 @@ +{ config, lib, pkgs, ... }: { + home = { + username = "timmy"; + homeDirectory = "/home/timmy"; + stateVersion = "24.05"; + activation = { + # TODO TODO + #cloneRepos = lib.hm.dag.entryAfter ["writeBoundary" "installPackages"] ''${builtins.readFile ./home-config/activate-scripts/clone-repos.sh}''; + cloneRepos = lib.hm.dag.entryAfter ["writeBoundary"] '' + export PATH="${config.home.path}/bin:$PATH" + ${builtins.readFile ./home-config/activation-scripts/clone-repos.sh} + ''; + linkZshProfile = lib.hm.dag.entryAfter ["writeBoundary"] '' + run ln -sf $VERBOSE_ARG $HOME/.config/zsh/zprofile $HOME/.zprofile + ''; + cleanupHome = lib.hm.dag.entryAfter ["writeBoundary"] '' + run rm -f $VERBOSE_ARG $HOME/{.zcompdump,.zshrc,.zsh_history,.bash_history} + ''; + }; + }; + + programs = { + git = { + enable = true; + userName = "Tim Keller"; # TODO set to user description + userEmail = "tjk@tjkeller.xyz"; # TODO set to user email + }; + firefox = { + enable = true; + profiles = let + search = { + engines = { + "Timmy Search" = { + urls = [{ template = "https://search.tjkeller.xyz/search?q={searchTerms}"; }]; # Don't know how to do w/ POST but I prefer GET anyways + iconURI = "https://search.tjkeller.xyz/static/themes/simple/img/favicon.svg"; # TODO doesn't seem to work + }; + }; + default = "Timmy Search"; + privateDefault = "Timmy Search"; + }; + userChrome = builtins.readFile ./home-config/firefox/userChrome.css; + settings = { + toolkit.legacyUserProfileCustomizations.stylesheets = true; + browser.compactmode.show = true; + browser.uidensity = 1; # Compact + browser.download.dir = /home/timmy/dls; # FF will create this dir if it doesn't exist + browser.aboutConfig.showWarning = false; + app.normandy.first_run = false; + browser.uiCustomization.state = builtins.readFile ./home-config/firefox/uiCustomization.json; # Toolbar etc. + #identity.fxaccounts.account.device.name = "timmy’s Firefox on nixos"; # HOSTNAME + }; + in { + Personal = { + id = 0; + isDefault = true; + #settings = {}; + inherit search; + inherit userChrome; + inherit settings; + }; + Work = { + id = 1; + inherit search; + }; + }; + }; + }; + + gtk = { + enable = true; + theme = { + package = pkgs.cinnamon.mint-themes; + name = "Mint-Y-Dark-Aqua"; + }; + iconTheme = { + package = pkgs.cinnamon.mint-y-icons; + name = "Mint-Y-Aqua"; + }; + cursorTheme = { + name = "Adwaita"; + }; + gtk3.bookmarks = [ + "file:///home/timmy/dls Downloads" + "file:///home/timmy/docs Documents" + "file:///home/timmy/docs/src/sites sites" + "file:///home/timmy/docs/src/scripts scripts" + "file:///home/timmy/docs/src/programs programs" + ]; + gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc"; + }; + qt = { + enable = true; + platformTheme.name = "gtk3"; + }; +} |