From 069b35ca0e9f6891957195970b47d1978c755030 Mon Sep 17 00:00:00 2001 From: mat ess Date: Fri, 22 Dec 2023 20:49:53 -0500 Subject: [PATCH] Various updates --- darwin/copy-apps.nix | 7 ++ darwin/default.nix | 1 + darwin/fonts.nix | 2 +- darwin/homebrew.nix | 23 ++-- flake.lock | 209 ++++++++++++++++++++----------- flake.nix | 2 + home/copy-apps.nix | 10 ++ home/default.nix | 3 +- home/extras/kitty/auto-theme.nix | 2 +- home/fish.nix | 6 + home/ghostty.nix | 21 ++-- home/helix.nix | 2 +- home/programs.nix | 6 +- home/starship-symbols.nix | 72 ----------- pkgs/default.nix | 7 ++ pkgs/recursive-patched.nix | 3 + 16 files changed, 204 insertions(+), 172 deletions(-) create mode 100644 darwin/copy-apps.nix create mode 100644 home/copy-apps.nix delete mode 100644 home/starship-symbols.nix diff --git a/darwin/copy-apps.nix b/darwin/copy-apps.nix new file mode 100644 index 0000000..23f241e --- /dev/null +++ b/darwin/copy-apps.nix @@ -0,0 +1,7 @@ +{ pkgs, lib, ... }: +let mac-app-util = lib.getExe' pkgs.mac-app-util "mac-app-util"; +in { + system.activationScripts.postActivation.text = '' + ${mac-app-util} sync-trampolines "/Applications/Nix Apps" "/Applications/Nix Trampolines" + ''; +} diff --git a/darwin/default.nix b/darwin/default.nix index f8a54f0..aeb9cff 100644 --- a/darwin/default.nix +++ b/darwin/default.nix @@ -13,6 +13,7 @@ self.darwinModules_.home-manager self.darwinModules.home self.nixosModules.common + ./copy-apps.nix ./fish.nix ./fonts.nix ./homebrew.nix diff --git a/darwin/fonts.nix b/darwin/fonts.nix index 7bf68f4..9df38c6 100644 --- a/darwin/fonts.nix +++ b/darwin/fonts.nix @@ -2,7 +2,7 @@ fonts.fontDir.enable = true; fonts.fonts = builtins.attrValues { inherit (pkgs) - borg-sans-mono recursive recursive-patched + borg-sans-mono recursive-patched # code^ ia-writer-family ibm-plex diff --git a/darwin/homebrew.nix b/darwin/homebrew.nix index b708a40..0f24448 100644 --- a/darwin/homebrew.nix +++ b/darwin/homebrew.nix @@ -1,11 +1,12 @@ { flake, config, ... }: { - # https://docs.brew.sh/Shell-Completion#configuring-completions-in-fish - # for some reason if the Fish completions are added at the end of `fish_complete_path` they don't - # seem to work, but they do work if added at the start. + environment.variables.HOMEBREW_NO_ANALYTICS = "1"; programs.fish = { shellInit = '' eval "$(${config.homebrew.brewPrefix}/brew shellenv fish)" ''; + # https://docs.brew.sh/Shell-Completion#configuring-completions-in-fish + # for some reason if the Fish completions are added at the end of `fish_complete_path` they don't + # seem to work, but they do work if added at the start. interactiveShellInit = '' if test -d (brew --prefix)"/share/fish/completions" set -p fish_complete_path (brew --prefix)/share/fish/completions @@ -25,14 +26,18 @@ }; global.brewfile = true; - taps = [ "homebrew/cask-versions" "homebrew/services" ]; + taps = [ + "homebrew/cask-versions" + "homebrew/services" + "indirect/homebrew-tap" # ghostty formula + ]; masApps = { - Bitwarden = 1352778147; "Draw Things" = 6444050820; GrandPerspective = 1111570163; Reeder = 1529448980; Tailscale = 1475387142; + TickTick = 966085870; Xcode = 497799835; }; @@ -40,20 +45,13 @@ casks = [ # system tools "alfred" - # "bartender" -> dozer "dozer" "knockknock" "lulu" "protonvpn" - "rectangle" "secretive" "shortcat" "stay" - "utm" - - # "tools for thought" - "anytype" - "obsidian" # design "krita" @@ -73,6 +71,7 @@ "zed" # terminal emulators + "ghostty" "kitty" "warp" diff --git a/flake.lock b/flake.lock index 5f933bb..48042fa 100644 --- a/flake.lock +++ b/flake.lock @@ -1,27 +1,33 @@ { "nodes": { + "cl-nix-lite": { + "locked": { + "lastModified": 1698901928, + "narHash": "sha256-gMHZybEVA3uMOBu1483gXfvUqpv4Qn7GJs3ZfCQYxpc=", + "owner": "hraban", + "repo": "cl-nix-lite", + "rev": "9ad861b45bda7f59eba5ad1b43565a03c7c58553", + "type": "github" + }, + "original": { + "owner": "hraban", + "repo": "cl-nix-lite", + "type": "github" + } + }, "crane": { "inputs": { - "flake-compat": "flake-compat", - "flake-utils": [ - "helix", - "flake-utils" - ], "nixpkgs": [ "helix", "nixpkgs" - ], - "rust-overlay": [ - "helix", - "rust-overlay" ] }, "locked": { - "lastModified": 1688772518, - "narHash": "sha256-ol7gZxwvgLnxNSZwFTDJJ49xVY5teaSvF7lzlo3YQfM=", + "lastModified": 1701025348, + "narHash": "sha256-42GHmYH+GF7VjwGSt+fVT1CQuNpGanJbNgVHTAZppUM=", "owner": "ipetkov", "repo": "crane", - "rev": "8b08e96c9af8c6e3a2b69af5a7fa168750fcf88e", + "rev": "42afaeb1a0325194a7cdb526332d2cb92fddd07b", "type": "github" }, "original": { @@ -37,11 +43,11 @@ ] }, "locked": { - "lastModified": 1698422527, - "narHash": "sha256-SDu3Xg263t3oXIyTaH0buOvFnKIDeZsvKDBtOz+jRbs=", + "lastModified": 1702479765, + "narHash": "sha256-wjNYsFhciYoJkZ/FBKvFj55k+vkLbu6C2qYQ7K+s8pI=", "owner": "nix-community", "repo": "disko", - "rev": "944d338d24a9d043a3f7461c30ee6cfe4f9cca30", + "rev": "bd8fbc3f274288ac905bcea66bc2a5428abde458", "type": "github" }, "original": { @@ -85,11 +91,11 @@ "fish-plugin-done": { "flake": false, "locked": { - "lastModified": 1698312794, - "narHash": "sha256-7aeSE88tvLx64EWvHqLSikRjOjTrZRXj2fdK5vygsqA=", + "lastModified": 1700166884, + "narHash": "sha256-BGHfwKoMfOZUsa05kEt8W2luc1aC3Su/OyaGmcb4UiI=", "owner": "franciscolourenco", "repo": "done", - "rev": "054347d2a4aa5e0e7920c850f5999651dc90219c", + "rev": "fbea3f682f9f32d957946490436e9dde8a67c367", "type": "github" }, "original": { @@ -149,15 +155,16 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1673956053, - "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", - "owner": "edolstra", + "lastModified": 1697816753, + "narHash": "sha256-40to80AEIyKCQI0xMKCeF5ePoIKTYgjVVCZeu4CnTxM=", + "owner": "hraban", "repo": "flake-compat", - "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", + "rev": "6025bade1336a36014639bc3f67eacc853dab78f", "type": "github" }, "original": { - "owner": "edolstra", + "owner": "hraban", + "ref": "fixed-output", "repo": "flake-compat", "type": "github" } @@ -183,11 +190,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1698882062, - "narHash": "sha256-HkhafUayIqxXyHH1X8d9RDl1M2CkFgZLjKD3MzabiEo=", + "lastModified": 1701473968, + "narHash": "sha256-YcVE5emp1qQ8ieHUnxt1wCZCC3ZfAS+SRRWZ2TMda7E=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "8c9fa2545007b49a5db5f650ae91f227672c3877", + "rev": "34fed993f1674c8d06d58b37ce1e0fe5eebcb9f5", "type": "github" }, "original": { @@ -219,11 +226,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1689068808, - "narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=", + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", "owner": "numtide", "repo": "flake-utils", - "rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", "type": "github" }, "original": { @@ -245,15 +252,32 @@ "type": "github" }, "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" + "id": "flake-utils", + "type": "indirect" } }, "flake-utils_3": { "inputs": { "systems": "systems_3" }, + "locked": { + "lastModified": 1694529238, + "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_4": { + "inputs": { + "systems": "systems_4" + }, "locked": { "lastModified": 1685518550, "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", @@ -270,11 +294,11 @@ }, "ghostty": { "locked": { - "lastModified": 1695482156, - "narHash": "sha256-PFyViLT7eCi/jN6fZ9kFUZF4mYye9Mplm/SEwhUvCDM=", + "lastModified": 1702368251, + "narHash": "sha256-hafrDmzGplzm+vdIo+LkOjRfA4qRcy5JmpGGksnht5c=", "owner": "clo4", "repo": "ghostty-hm-module", - "rev": "3ccb4b02eb84316e7ccbf007a6e29495f7e6bee4", + "rev": "887e13a6e7acf5ffaab0119d96e476d84db90904", "type": "github" }, "original": { @@ -314,11 +338,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1698790188, - "narHash": "sha256-sAp4RIto3fDjb/HJ4NR3HlHo3J8R7tK4/qSGYkhudUA=", + "lastModified": 1702431423, + "narHash": "sha256-3wDOWe2bzRuoyY55y1HqbzMzy77pUIzDj9NVxm15K+M=", "owner": "helix-editor", "repo": "helix", - "rev": "a069b928973aad99b85dffb9d5ade7dae4b58c43", + "rev": "c2591445c90ae9c152cbc974122b77632de78e85", "type": "github" }, "original": { @@ -334,11 +358,11 @@ ] }, "locked": { - "lastModified": 1698873617, - "narHash": "sha256-FfGFcfbULwbK1vD+H0rslIOfmy4g8f2hXiPkQG3ZCTk=", + "lastModified": 1702423270, + "narHash": "sha256-3ZA5E+b2XBP+c9qGhWpRApzPq/PZtIPgkeEDpTBV4g8=", "owner": "nix-community", "repo": "home-manager", - "rev": "48b0a30202516e25d9885525fbb200a045f23f26", + "rev": "d9297efd3a1c3ebb9027dc68f9da0ac002ae94db", "type": "github" }, "original": { @@ -378,20 +402,43 @@ "type": "github" } }, + "mac-app-util": { + "inputs": { + "cl-nix-lite": "cl-nix-lite", + "flake-compat": "flake-compat", + "flake-utils": "flake-utils_2", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1701662961, + "narHash": "sha256-2xQSZvQ3S9Wim+6pJGweQjLueqJufKVREg/n7dmOCMw=", + "owner": "hraban", + "repo": "mac-app-util", + "rev": "3e967d0a6ec5ff53b7024053d154f9bc28aad489", + "type": "github" + }, + "original": { + "owner": "hraban", + "repo": "mac-app-util", + "type": "github" + } + }, "nil": { "inputs": { - "flake-utils": "flake-utils_2", + "flake-utils": "flake-utils_3", "nixpkgs": [ "nixpkgs" ], "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1697710615, - "narHash": "sha256-YL63eoy3C/WeDxwctbv9dJBjqBabx8cO7lVTlVn3FVI=", + "lastModified": 1701225372, + "narHash": "sha256-QSiFeEmTzAIIiCtUaMesu7wi7bvfHuFzPMQpOKMt4Lo=", "owner": "oxalica", "repo": "nil", - "rev": "bd93024db616a528473a7210d2756c7118155de9", + "rev": "0031eb4343fd4672742fd6ff839da9b4f5120646", "type": "github" }, "original": { @@ -407,11 +454,11 @@ ] }, "locked": { - "lastModified": 1698429334, - "narHash": "sha256-Gq3+QabboczSu7RMpcy79RSLMSqnySO3wsnHQk4DfbE=", + "lastModified": 1700795494, + "narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "afe83cbc2e673b1f08d32dd0f70df599678ff1e7", + "rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d", "type": "github" }, "original": { @@ -429,11 +476,11 @@ ] }, "locked": { - "lastModified": 1697038389, - "narHash": "sha256-hbzFPXyQQxJObRdb+CsylUXii29UfFV7866WWgWYs6Y=", + "lastModified": 1699966122, + "narHash": "sha256-zEN3ET7jfXpIKYeYh/z4xekOBOoaFS+n0q3oL3sVh+0=", "owner": "nix-community", "repo": "nixd", - "rev": "29904e121cc775e7caaf4fffa6bc7da09376a43b", + "rev": "b3bb9ea7cd3c2f07c89779a474d6468b2c11e303", "type": "github" }, "original": { @@ -444,11 +491,11 @@ }, "nixos-flake": { "locked": { - "lastModified": 1698598244, - "narHash": "sha256-YbvPFt+9CbCiqnuS0dTx+P+W1YRCqzhLXen94sef3Kk=", + "lastModified": 1702145288, + "narHash": "sha256-apVeRT0kOnDejwwBwbwNccm+qq1l6+qUOiRKE0vK5qk=", "owner": "srid", "repo": "nixos-flake", - "rev": "f6b7757ad88483afca306c9f3bf387887fba7284", + "rev": "4e422edf6b511f8e214b392cf1a0d4707a0399a4", "type": "github" }, "original": { @@ -459,11 +506,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1698890957, - "narHash": "sha256-DJ+SppjpPBoJr0Aro9TAcP3sxApCSieY6BYBCoWGUX8=", + "lastModified": 1702272962, + "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c082856b850ec60cda9f0a0db2bc7bd8900d708c", + "rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d", "type": "github" }, "original": { @@ -476,11 +523,11 @@ "nixpkgs-lib": { "locked": { "dir": "lib", - "lastModified": 1698611440, - "narHash": "sha256-jPjHjrerhYDy3q9+s5EAsuhyhuknNfowY6yt6pjn9pc=", + "lastModified": 1701253981, + "narHash": "sha256-ztaDIyZ7HrTAfEEUt9AtTDNoCYxUdSd6NrRHaYOIxtk=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "0cbe9f69c234a7700596e943bfae7ef27a31b735", + "rev": "e92039b55bcd58469325ded85d4f58dd5a4eaf58", "type": "github" }, "original": { @@ -528,7 +575,7 @@ "pre-commit": { "inputs": { "flake-compat": "flake-compat_2", - "flake-utils": "flake-utils_3", + "flake-utils": "flake-utils_4", "gitignore": "gitignore", "nixpkgs": [ "nixpkgs" @@ -536,11 +583,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1698852633, - "narHash": "sha256-Hsc/cCHud8ZXLvmm8pxrXpuaPEeNaaUttaCvtdX/Wug=", + "lastModified": 1702456155, + "narHash": "sha256-I2XhXGAecdGlqi6hPWYT83AQtMgL+aa3ulA85RAEgOk=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "dec10399e5b56aa95fcd530e0338be72ad6462a0", + "rev": "007a45d064c1c32d04e1b8a0de5ef00984c419bc", "type": "github" }, "original": { @@ -564,6 +611,7 @@ "home-manager": "home-manager", "homebrew-enabled": "homebrew-enabled", "ia-writer-family-src": "ia-writer-family-src", + "mac-app-util": "mac-app-util", "nil": "nil", "nix-darwin": "nix-darwin", "nixd": "nixd", @@ -586,11 +634,11 @@ ] }, "locked": { - "lastModified": 1690424156, - "narHash": "sha256-Bpml+L280tHTQpwpC5/BJbU4HSvEzMvW8IZ4gAXimhE=", + "lastModified": 1701137803, + "narHash": "sha256-0LcPAdql5IhQSUXJx3Zna0dYTgdIoYO7zUrsKgiBd04=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "f335a0213504c7e6481c359dc1009be9cf34432c", + "rev": "9dd940c967502f844eacea52a61e9596268d4f70", "type": "github" }, "original": { @@ -627,11 +675,11 @@ "starship-src": { "flake": false, "locked": { - "lastModified": 1698919886, - "narHash": "sha256-rV1Sf5MbmHVn8sUEn07STsSdXoPZClTqGp3Tmkvp1+0=", + "lastModified": 1702177269, + "narHash": "sha256-jFWhMoMEGIx3wgGQneqc2pLtCXC+Yfdzy70BCVJS2h4=", "owner": "starship", "repo": "starship", - "rev": "6abc83decdf176842985b4daa5b09771c6b93415", + "rev": "f7da09d2d1666a13cb8d3e773b1ba9b0b0fa8130", "type": "github" }, "original": { @@ -685,14 +733,29 @@ "type": "github" } }, + "systems_4": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "terminal-themes": { "flake": false, "locked": { - "lastModified": 1697035060, - "narHash": "sha256-Qctds28CIMeyIc6VbWj1jEAlx/HZyBEZJj7u3aZeBog=", + "lastModified": 1701144126, + "narHash": "sha256-0VBgcQmoxDeHduWXdaS3DpHkKOqjpNcvC0K58OmRBNg=", "owner": "mbadolato", "repo": "iTerm2-Color-Schemes", - "rev": "aed2a8f0565a51913e8ddc1731f25bc71978a1e0", + "rev": "53acae071801e0de6ed160315869abb9bdaf20fa", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 4753351..2e041e6 100644 --- a/flake.nix +++ b/flake.nix @@ -15,6 +15,8 @@ disko.url = "github:nix-community/disko"; disko.inputs.nixpkgs.follows = "nixpkgs"; ghostty.url = "github:clo4/ghostty-hm-module"; + mac-app-util.url = "github:hraban/mac-app-util"; + mac-app-util.inputs.nixpkgs.follows = "nixpkgs"; # "flag" for toggling homebrew operations # https://www.mat.services/posts/command-line-flake-arguments/ diff --git a/home/copy-apps.nix b/home/copy-apps.nix new file mode 100644 index 0000000..0cef99f --- /dev/null +++ b/home/copy-apps.nix @@ -0,0 +1,10 @@ +{ pkgs, lib, ... }: +let mac-app-util = lib.getExe' pkgs.mac-app-util "mac-app-util"; +in { + home.activation.trampolineApps = lib.mkIf pkgs.stdenv.isDarwin + (lib.hm.dag.entryAfter [ "writeBoundary" ] '' + fromDir="$HOME/Applications/Home Manager Apps" + toDir="$HOME/Applications/Home Manager Trampolines" + ${mac-app-util} sync-trampolines "$fromDir" "$toDir" + ''); +} diff --git a/home/default.nix b/home/default.nix index 3cc2cdd..6d7208a 100644 --- a/home/default.nix +++ b/home/default.nix @@ -4,6 +4,8 @@ home.enableNixpkgsReleaseCheck = true; home.stateVersion = "22.05"; imports = [ + # fix app copying on darwin + ./copy-apps.nix # misc file configuration ./files.nix # misc program configuration @@ -16,7 +18,6 @@ ./kitty.nix ./pijul.nix ./ssh.nix - # ./starship-symbols.nix ./starship.nix ]; }; diff --git a/home/extras/kitty/auto-theme.nix b/home/extras/kitty/auto-theme.nix index c675e37..2611f20 100644 --- a/home/extras/kitty/auto-theme.nix +++ b/home/extras/kitty/auto-theme.nix @@ -36,7 +36,7 @@ in { colors-path = lib.mkOption { type = lib.types.path; - default = "${pkgs.terminal-colors}/kitty"; + default = "${pkgs.terminal-themes}/kitty"; description = "Path from which to load kitty colors."; }; diff --git a/home/fish.nix b/home/fish.nix index bafd48a..c7d43a5 100644 --- a/home/fish.nix +++ b/home/fish.nix @@ -140,9 +140,15 @@ in { nsh = "nix shell"; nrp = "nix repl --expr '{ pkgs = (import { }); }'"; g = "git"; + ga = "git add"; + gc = "git commit"; + gd = "git diff"; + gl = "git log"; + gp = "git push"; stage = "git add ."; commit = "git commit"; push = "git push"; + pull = "git pull"; } // lib.optionalAttrs pkgs.stdenv.isDarwin { tb = "toggle-background"; sb = "set-background-to-macOS"; diff --git a/home/ghostty.nix b/home/ghostty.nix index 6595858..76afa93 100644 --- a/home/ghostty.nix +++ b/home/ghostty.nix @@ -1,29 +1,30 @@ -{ flake, pkgs, lib, ... }: -let font = "Rec Mono Duotone"; -in { +{ flake, pkgs, lib, ... }: { imports = [ flake.inputs.ghostty.homeModules.default ]; programs.ghostty = { enable = true; # ghostty is externally managed for now package = null; - settings = { + settings = let font = "RecMonoDuotone Nerd Font"; + in { # TODO: auto-theme config-file = [ "${pkgs.terminal-themes}/ghostty/rose-pine" ]; - # TODO: powerline replacements font-family = font; - font-family-bold = "${font} Bold"; - font-family-italic = "${font} Italic"; - font-family-bold-italic = "${font} Bold Italic"; + # font-family-bold = "${font} Bold"; + # font-family-italic = "${font} Italic"; + # font-family-bold-italic = "${font} Bold Italic"; + # font-codepoint-map = + # "U+E5FA-U+E62B,U+E700-U+E7C5,U+F000-U+F2E0,U+E200-U+E2A9,U+F500-U+FD46,U+E300-U+E3EB,U+F400-U+F4A8,U+2665,U+26a1,U+F27C,U+E0A3,U+E0B4-U+E0C8,U+E0CA,U+E0CC-U+E0D2,U+E0D4,U+23FB-U+23FE,U+2B58,U+F300-U+F313,U+E000-U+E00D=RecMonoDuotone Nerd Font"; font-size = 15; background-opacity = 0.95; unfocused-split-opacity = 0.8; window-decoration = true; window-padding-x = 10; window-padding-y = 10; - # use system clipboard on e.g. macOS - copy-on-select = "clipboard"; + window-inherit-working-directory = false; + working-directory = "home"; } // lib.optionalAttrs pkgs.stdenv.isDarwin { + copy-on-select = "clipboard"; background-blur-radius = 20; macos-non-native-fullscreen = "visible-menu"; macos-option-as-alt = true; diff --git a/home/helix.nix b/home/helix.nix index c5a777d..0e1115b 100644 --- a/home/helix.nix +++ b/home/helix.nix @@ -13,7 +13,7 @@ render = true; skip-levels = 1; }; - line-number = "relative"; + line-number = "absolute"; soft-wrap.enable = true; whitespace.render = { space = "none"; diff --git a/home/programs.nix b/home/programs.nix index 12ae558..5e976cf 100644 --- a/home/programs.nix +++ b/home/programs.nix @@ -3,7 +3,7 @@ home.packages = builtins.attrValues ({ inherit (pkgs) # GUI apps - discord-ptb obsidian slack zoom-us + discord-ptb obsidian rectangle slack utm zoom-us # system tools curl wget @@ -37,6 +37,8 @@ tarsnap # terminal color support testing terminal-colors + # (La)TeX alternative + typst # extract RAR archives unrar # extract XZ archives @@ -82,6 +84,8 @@ enable = true; config = { style = "auto"; }; }; + # multi-shell / multi-command argument completion daemon + carapace.enable = true; # load and unload environment variables depending on the current directory direnv = { enable = true; diff --git a/home/starship-symbols.nix b/home/starship-symbols.nix deleted file mode 100644 index 48f7dc3..0000000 --- a/home/starship-symbols.nix +++ /dev/null @@ -1,72 +0,0 @@ -{ lib, ... }: -let inherit (lib) mkDefault; -in { - programs.starship.settings = { - aws.symbol = mkDefault " "; - battery = { - full_symbol = mkDefault ""; - charging_symbol = mkDefault ""; - discharging_symbol = mkDefault ""; - unknown_symbol = mkDefault ""; - empty_symbol = mkDefault ""; - }; - cmake.symbol = mkDefault "△ "; - conda.symbol = mkDefault " "; - crystal.symbol = mkDefault " "; - dart.symbol = mkDefault " "; - directory.read_only = mkDefault " "; - docker_context.symbol = mkDefault " "; - dotnet.symbol = mkDefault " "; - elixir.symbol = mkDefault " "; - elm.symbol = mkDefault " "; - erlang.symbol = mkDefault " "; - gcloud.symbol = mkDefault " "; - git_branch.symbol = mkDefault " "; - git_commit.tag_symbol = mkDefault " "; - git_status = { - format = mkDefault "([$all_status$ahead_behind]($style) )"; - conflicted = mkDefault " "; - ahead = mkDefault " "; - behind = mkDefault " "; - diverged = mkDefault " "; - untracked = mkDefault " "; - stashed = mkDefault " "; - modified = mkDefault " "; - staged = mkDefault " "; - renamed = mkDefault " "; - deleted = mkDefault " "; - }; - golang.symbol = mkDefault " "; - helm.symbol = mkDefault "⎈ "; - hg_branch.symbol = mkDefault " "; - java.symbol = mkDefault " "; - julia.symbol = mkDefault " "; - kotlin.symbol = mkDefault " "; - kubernetes.symbol = mkDefault "☸ "; - lua.symbol = mkDefault " "; - memory_usage.symbol = mkDefault " "; - nim.symbol = mkDefault " "; - nix_shell.symbol = mkDefault " "; - nodejs.symbol = mkDefault " "; - openstack.symbol = mkDefault " "; - package.symbol = mkDefault " "; - perl.symbol = mkDefault " "; - php.symbol = mkDefault " "; - purescript.symbol = mkDefault "<≡> "; - python.symbol = mkDefault " "; - ruby.symbol = mkDefault " "; - rust.symbol = mkDefault " "; - shlvl.symbol = mkDefault " "; - status = { - symbol = mkDefault " "; - not_executable_symbol = mkDefault " "; - not_found_symbol = mkDefault " "; - sigint_symbol = mkDefault " "; - signal_symbol = mkDefault " "; - }; - swift.symbol = mkDefault " "; - terraform.symbol = mkDefault "𝗧 "; - vagrant.symbol = mkDefault "𝗩 "; - zig.symbol = mkDefault " "; - }; -} diff --git a/pkgs/default.nix b/pkgs/default.nix index 2f0092b..8684a72 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -14,6 +14,13 @@ inputs: self: super: { ia-writer-family = self.callPackage ./ia-writer-family.nix { inherit (inputs) ia-writer-family-src; }; + mac-app-util = + inputs.mac-app-util.packages.${super.stdenv.system}.default.overrideAttrs + (old: { + postInstall = old.postInstall + '' + wrapProgram "$out/bin/mac-app-util" --suffix PATH : "${super.jq}/bin" + ''; + }); recursive-patched = self.callPackage ./recursive-patched.nix { }; yubiswitch = self.callPackage ./yubiswitch.nix { }; } diff --git a/pkgs/recursive-patched.nix b/pkgs/recursive-patched.nix index 5f00942..b5de0ef 100644 --- a/pkgs/recursive-patched.nix +++ b/pkgs/recursive-patched.nix @@ -5,6 +5,9 @@ stdenv.mkDerivation { nativeBuildInputs = [ nerd-font-patcher ]; buildPhase = '' find -name RecMono\*.ttf -execdir nerd-font-patcher -c {} \; + find -name \*CslSt\* -delete + find -name \*LnrSt\* -delete ''; installPhase = "cp -a . $out"; + inherit (recursive) meta; }