From e9451f4a4a6732635e6cc3809d5e45bf827dd193 Mon Sep 17 00:00:00 2001 From: ooks-io Date: Sun, 29 Dec 2024 22:12:07 +1100 Subject: [PATCH] home: ghostty init --- flake.lock | 206 +++++++++++++++--- flake.nix | 3 + modules/home/workstation/terminal/default.nix | 1 + modules/home/workstation/terminal/ghostty.nix | 14 ++ 4 files changed, 193 insertions(+), 31 deletions(-) create mode 100644 modules/home/workstation/terminal/ghostty.nix diff --git a/flake.lock b/flake.lock index b5cd5e4..76a8e50 100644 --- a/flake.lock +++ b/flake.lock @@ -130,6 +130,22 @@ "type": "github" } }, + "flake-compat_2": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": "nixpkgs-lib" @@ -201,7 +217,25 @@ }, "flake-utils_2": { "inputs": { - "systems": "systems_3" + "systems": "systems_2" + }, + "locked": { + "lastModified": 1705309234, + "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_3": { + "inputs": { + "systems": "systems_4" }, "locked": { "lastModified": 1726560853, @@ -217,9 +251,9 @@ "type": "github" } }, - "flake-utils_3": { + "flake-utils_4": { "inputs": { - "systems": "systems_7" + "systems": "systems_8" }, "locked": { "lastModified": 1726560853, @@ -235,6 +269,42 @@ "type": "github" } }, + "ghostty": { + "inputs": { + "flake-compat": "flake-compat", + "nixpkgs-stable": "nixpkgs-stable", + "nixpkgs-unstable": "nixpkgs-unstable", + "zig": "zig" + }, + "locked": { + "lastModified": 1735443550, + "narHash": "sha256-0bOG0ykRTyXihwLtyFjkaxNJWcDWs0alnNpC6PzbOvo=", + "owner": "ghostty-org", + "repo": "ghostty", + "rev": "c8950d376ab3be13fbd9a19317163075f4feddbc", + "type": "github" + }, + "original": { + "owner": "ghostty-org", + "repo": "ghostty", + "type": "github" + } + }, + "ghostty-hm": { + "locked": { + "lastModified": 1702368251, + "narHash": "sha256-hafrDmzGplzm+vdIo+LkOjRfA4qRcy5JmpGGksnht5c=", + "owner": "clo4", + "repo": "ghostty-hm-module", + "rev": "887e13a6e7acf5ffaab0119d96e476d84db90904", + "type": "github" + }, + "original": { + "owner": "clo4", + "repo": "ghostty-hm-module", + "type": "github" + } + }, "gitignore": { "inputs": { "nixpkgs": [ @@ -428,7 +498,7 @@ "hyprwayland-scanner": "hyprwayland-scanner", "nixpkgs": "nixpkgs_2", "pre-commit-hooks": "pre-commit-hooks", - "systems": "systems_2", + "systems": "systems_3", "xdph": "xdph" }, "locked": { @@ -845,6 +915,22 @@ } }, "nixpkgs-stable": { + "locked": { + "lastModified": 1733423277, + "narHash": "sha256-TxabjxEgkNbCGFRHgM/b9yZWlBj60gUOUnRT/wbVQR8=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "e36963a147267afc055f7cf65225958633e536bf", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "release-24.11", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-stable_2": { "locked": { "lastModified": 1730741070, "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=", @@ -860,6 +946,22 @@ "type": "github" } }, + "nixpkgs-unstable": { + "locked": { + "lastModified": 1733229606, + "narHash": "sha256-FLYY5M0rpa5C2QAE3CKLYAM6TwbKicdRK6qNrSHlNrE=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "566e53c2ad750c84f6d31f9ccb9d00f823165550", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs_2": { "locked": { "lastModified": 1731676054, @@ -959,7 +1061,7 @@ "nvf": { "inputs": { "flake-parts": "flake-parts_2", - "flake-utils": "flake-utils_2", + "flake-utils": "flake-utils_3", "mnw": "mnw", "nil": "nil", "nixpkgs": "nixpkgs_4", @@ -1081,7 +1183,7 @@ "plugin-vim-startify": "plugin-vim-startify", "plugin-which-key": "plugin-which-key", "rnix-lsp": "rnix-lsp", - "systems": "systems_4" + "systems": "systems_5" }, "locked": { "lastModified": 1733489853, @@ -1104,7 +1206,7 @@ "nixpkgs": [ "nixpkgs" ], - "systems": "systems_5" + "systems": "systems_6" }, "locked": { "lastModified": 1728305902, @@ -3000,13 +3102,13 @@ }, "pre-commit-hooks": { "inputs": { - "flake-compat": "flake-compat", + "flake-compat": "flake-compat_2", "gitignore": "gitignore", "nixpkgs": [ "hyprland", "nixpkgs" ], - "nixpkgs-stable": "nixpkgs-stable" + "nixpkgs-stable": "nixpkgs-stable_2" }, "locked": { "lastModified": 1731363552, @@ -3047,6 +3149,8 @@ "agenix": "agenix", "firefox-addons": "firefox-addons", "flake-parts": "flake-parts", + "ghostty": "ghostty", + "ghostty-hm": "ghostty-hm", "home-manager": "home-manager_2", "hypridle": "hypridle", "hyprland": "hyprland", @@ -3059,7 +3163,7 @@ "nvf": "nvf", "ooknet-website": "ooknet-website", "ooks-scripts": "ooks-scripts", - "systems": "systems_6", + "systems": "systems_7", "vpn-confinement": "vpn-confinement", "zjstatus": "zjstatus" } @@ -3123,21 +3227,6 @@ } }, "systems_2": { - "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", - "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default-linux", - "type": "github" - } - }, - "systems_3": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -3152,6 +3241,21 @@ "type": "github" } }, + "systems_3": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, "systems_4": { "locked": { "lastModified": 1681028828, @@ -3169,16 +3273,16 @@ }, "systems_5": { "locked": { - "lastModified": 1689347949, - "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", "owner": "nix-systems", - "repo": "default-linux", - "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", "type": "github" }, "original": { "owner": "nix-systems", - "repo": "default-linux", + "repo": "default", "type": "github" } }, @@ -3198,6 +3302,21 @@ } }, "systems_7": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "systems_8": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -3283,10 +3402,35 @@ "type": "github" } }, + "zig": { + "inputs": { + "flake-compat": [ + "ghostty" + ], + "flake-utils": "flake-utils_2", + "nixpkgs": [ + "ghostty", + "nixpkgs-stable" + ] + }, + "locked": { + "lastModified": 1717848532, + "narHash": "sha256-d+xIUvSTreHl8pAmU1fnmkfDTGQYCn2Rb/zOwByxS2M=", + "owner": "mitchellh", + "repo": "zig-overlay", + "rev": "02fc5cc555fc14fda40c42d7c3250efa43812b43", + "type": "github" + }, + "original": { + "owner": "mitchellh", + "repo": "zig-overlay", + "type": "github" + } + }, "zjstatus": { "inputs": { "crane": "crane", - "flake-utils": "flake-utils_3", + "flake-utils": "flake-utils_4", "nixpkgs": "nixpkgs_6", "rust-overlay": "rust-overlay_2" }, diff --git a/flake.nix b/flake.nix index 0ad60ea..b2e5a9c 100644 --- a/flake.nix +++ b/flake.nix @@ -40,6 +40,9 @@ # confine vpns to specific systemd services vpn-confinement.url = "github:Maroka-chan/VPN-Confinement"; + ghostty-hm.url = "github:clo4/ghostty-hm-module"; + ghostty.url = "github:ghostty-org/ghostty"; + # hypr* ecosystem hyprland.url = "github:hyprwm/hyprland"; diff --git a/modules/home/workstation/terminal/default.nix b/modules/home/workstation/terminal/default.nix index c21fc86..f13829f 100644 --- a/modules/home/workstation/terminal/default.nix +++ b/modules/home/workstation/terminal/default.nix @@ -1,5 +1,6 @@ { imports = [ ./foot.nix + ./ghostty.nix ]; } diff --git a/modules/home/workstation/terminal/ghostty.nix b/modules/home/workstation/terminal/ghostty.nix new file mode 100644 index 0000000..934e1a8 --- /dev/null +++ b/modules/home/workstation/terminal/ghostty.nix @@ -0,0 +1,14 @@ +{ + inputs, + inputs', + ... +}: { + imports = [ + inputs.ghostty-hm.homeModules.default + ]; + + programs.ghostty = { + enable = true; + package = inputs'.ghostty.packages.default; + }; +}