diff --git a/flake.lock b/flake.lock index 95ff8c77..acc3d9b5 100644 --- a/flake.lock +++ b/flake.lock @@ -16,12 +16,12 @@ }, "catppuccin-v1_2": { "locked": { - "lastModified": 1734728407, - "narHash": "sha256-Let3uJo4YDyfqbqaw66dpZxhJB2TrDyZWSFd5rpPLJA=", - "rev": "23ee86dbf4ed347878115a78971d43025362fab1", - "revCount": 341, + "lastModified": 1734734291, + "narHash": "sha256-CFX4diEQHKvZYjnhf7TLg20m3ge1O4vqgplsk/Kuaek=", + "rev": "1e4c3803b8da874ff75224ec8512cb173036bbd8", + "revCount": 344, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/catppuccin/nix/1.2.0/0193e5e0-33b7-7149-a362-bfe56b20f64e/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/catppuccin/nix/1.2.1/0193e646-1107-7f69-a402-f2a3988ecf1d/source.tar.gz" }, "original": { "type": "tarball", @@ -53,11 +53,11 @@ ] }, "locked": { - "lastModified": 1734622215, - "narHash": "sha256-OOfI0XhSJGHblfdNDhfnn8QnZxng63rWk9eeJ2tCbiI=", + "lastModified": 1736204492, + "narHash": "sha256-CoBPRgkUex9Iz6qGSzi/BFVUQjndB0PmME2B6eEyeCs=", "owner": "nix-community", "repo": "home-manager", - "rev": "1395379a7a36e40f2a76e7b9936cc52950baa1be", + "rev": "20665c6efa83d71020c8730f26706258ba5c6b2a", "type": "github" }, "original": { @@ -73,11 +73,11 @@ ] }, "locked": { - "lastModified": 1734366194, - "narHash": "sha256-vykpJ1xsdkv0j8WOVXrRFHUAdp9NXHpxdnn1F4pYgSw=", + "lastModified": 1735344290, + "narHash": "sha256-oJDtWPH1oJT34RJK1FSWjwX4qcGOBRkcNQPD0EbSfNM=", "owner": "nix-community", "repo": "home-manager", - "rev": "80b0fdf483c5d1cb75aaad909bd390d48673857f", + "rev": "613691f285dad87694c2ba1c9e6298d04736292d", "type": "github" }, "original": { @@ -115,11 +115,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1734424634, - "narHash": "sha256-cHar1vqHOOyC7f1+tVycPoWTfKIaqkoe1Q6TnKzuti4=", + "lastModified": 1736012469, + "narHash": "sha256-/qlNWm/IEVVH7GfgAIyP6EsVZI6zjAx1cV5zNyrs+rI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "d3c42f187194c26d9f0309a8ecc469d6c878ce33", + "rev": "8f3e1f807051e32d8c95cd12b9b421623850a34d", "type": "github" }, "original": { @@ -131,11 +131,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1734600368, - "narHash": "sha256-nbG9TijTMcfr+au7ZVbKpAhMJzzE2nQBYmRvSdXUD8g=", + "lastModified": 1736061677, + "narHash": "sha256-DjkQPnkAfd7eB522PwnkGhOMuT9QVCZspDpJJYyOj60=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b47fd6fa00c6afca88b8ee46cfdb00e104f50bca", + "rev": "cbd8ec4de4469333c82ff40d057350c30e9f7d36", "type": "github" }, "original": { @@ -154,11 +154,11 @@ ] }, "locked": { - "lastModified": 1733773348, - "narHash": "sha256-Y47y+LesOCkJaLvj+dI/Oa6FAKj/T9sKVKDXLNsViPw=", + "lastModified": 1735854821, + "narHash": "sha256-Iv59gMDZajNfezTO0Fw6LHE7uKAShxbvMidmZREit7c=", "owner": "NuschtOS", "repo": "search", - "rev": "3051be7f403bff1d1d380e4612f0c70675b44fc9", + "rev": "836908e3bddd837ae0f13e215dd48767aee355f0", "type": "github" }, "original": { diff --git a/modules/home-manager/all-modules.nix b/modules/home-manager/all-modules.nix index 81c0450f..5d78cd3b 100644 --- a/modules/home-manager/all-modules.nix +++ b/modules/home-manager/all-modules.nix @@ -17,6 +17,7 @@ ./fzf.nix ./gh-dash.nix ./gitui.nix + ./ghostty.nix ./glamour.nix ./gtk.nix ./helix.nix diff --git a/modules/home-manager/ghostty.nix b/modules/home-manager/ghostty.nix new file mode 100644 index 00000000..20612c14 --- /dev/null +++ b/modules/home-manager/ghostty.nix @@ -0,0 +1,25 @@ +{ catppuccinLib }: +{ config, lib, ... }: + +let + inherit (config.catppuccin) sources; + + cfg = config.catppuccin.ghostty; + themeName = "catppuccin-${cfg.flavor}"; + enable = cfg.enable && config.programs.ghostty.enable; +in +{ + options.catppuccin.ghostty = catppuccinLib.mkCatppuccinOption { name = "ghostty"; }; + + config = lib.mkIf enable { + xdg.configFile = { + "ghostty/themes/${themeName}".source = "${sources.ghostty}/${themeName}.conf"; + }; + + programs.ghostty = { + settings = { + theme = "light:${themeName},dark:${themeName}"; + }; + }; + }; +} diff --git a/modules/tests/darwin.nix b/modules/tests/darwin.nix index a3ab0bd4..ca9794c1 100644 --- a/modules/tests/darwin.nix +++ b/modules/tests/darwin.nix @@ -25,6 +25,7 @@ chromium.enable = lib.mkVMOverride false; foot.enable = lib.mkVMOverride false; fuzzel.enable = lib.mkVMOverride false; + ghostty.enable = lib.mkVMOverride false; # TODO: Remove when Darwin support is added hyprlock.enable = lib.mkVMOverride false; imv.enable = lib.mkVMOverride false; mpv.enable = lib.mkVMOverride false; # NOTE: same as cava, but `mpv` fails to build currently diff --git a/modules/tests/home.nix b/modules/tests/home.nix index 99374e93..e0d9acfb 100644 --- a/modules/tests/home.nix +++ b/modules/tests/home.nix @@ -32,6 +32,7 @@ fuzzel.enable = true; fzf.enable = true; gh-dash.enable = true; + ghostty.enable = true; git = { enable = true; delta.enable = true; diff --git a/pkgs/sources.json b/pkgs/sources.json index 8c85881a..d8f38350 100644 --- a/pkgs/sources.json +++ b/pkgs/sources.json @@ -55,6 +55,10 @@ "hash": "sha256-fOCZxrEyWLi+VYnx3QYOP1R+VBhllhOlnO5/5Wg5aq4=", "rev": "acb1b1c22446e34781731ddbfb5e9bd699eccc74" }, + "ghostty": { + "hash": "sha256-YHHOGeXNlVdUdUXHQW4G+6Nl8xyHo2tuJ9b+/1LfGos=", + "rev": "1cb0c33770a411160cbe14b48b831455a2244ee3" + }, "gitui": { "hash": "sha256-CRxpEDShQcCEYtSXwLV5zFB8u0HVcudNcMruPyrnSEk=", "rev": "c7661f043cb6773a1fc96c336738c6399de3e617"