diff --git a/flake.lock b/flake.lock index 8f8d6e4..6aac796 100644 --- a/flake.lock +++ b/flake.lock @@ -58,6 +58,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": [ @@ -83,6 +99,24 @@ "inputs": { "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_2": { + "inputs": { + "systems": "systems_3" + }, "locked": { "lastModified": 1731533236, "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", @@ -97,6 +131,27 @@ "type": "github" } }, + "ghostty": { + "inputs": { + "flake-compat": "flake-compat_2", + "nixpkgs-stable": "nixpkgs-stable", + "nixpkgs-unstable": "nixpkgs-unstable", + "zig": "zig" + }, + "locked": { + "lastModified": 1735362327, + "narHash": "sha256-kD49xAUMCWU60IRKoJiyJTaEUum7rk45OYjZfwWr3Ck=", + "owner": "ghostty-org", + "repo": "ghostty", + "rev": "6cbd69da7839260508466f9dfb2bc0c0fbb43991", + "type": "github" + }, + "original": { + "owner": "ghostty-org", + "repo": "ghostty", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -162,6 +217,38 @@ "type": "github" } }, + "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-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" + } + }, "nixvim": { "inputs": { "devshell": [], @@ -193,7 +280,7 @@ }, "nuschtosSearch": { "inputs": { - "flake-utils": "flake-utils", + "flake-utils": "flake-utils_2", "ixx": "ixx", "nixpkgs": [ "nixvim", @@ -218,6 +305,7 @@ "inputs": { "deploy-rs": "deploy-rs", "disko": "disko", + "ghostty": "ghostty", "home-manager": "home-manager", "nixpkgs": "nixpkgs", "nixvim": "nixvim" @@ -253,6 +341,21 @@ "type": "github" } }, + "systems_3": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "utils": { "inputs": { "systems": "systems" @@ -270,6 +373,31 @@ "repo": "flake-utils", "type": "github" } + }, + "zig": { + "inputs": { + "flake-compat": [ + "ghostty" + ], + "flake-utils": "flake-utils", + "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" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 435b612..b9008b5 100644 --- a/flake.nix +++ b/flake.nix @@ -9,6 +9,7 @@ disko.inputs.nixpkgs.follows = "nixpkgs"; home-manager.url = "github:nix-community/home-manager/release-24.11"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; + ghostty.url = "github:ghostty-org/ghostty"; nixvim = { url = "github:nix-community/nixvim/nixos-24.11"; inputs = { @@ -23,7 +24,7 @@ }; }; - outputs = { self, nixpkgs, home-manager, deploy-rs, disko, nixvim, ...}: + outputs = { self, nixpkgs, home-manager, deploy-rs, disko, nixvim, ghostty, ...}: let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; @@ -55,6 +56,7 @@ ]; extraSpecialArgs = { mail = nixpkgs.lib.strings.concatStrings ["mail" "@" "johannes-rothe.de"]; + inherit ghostty; }; }; "rothe@johannes-powermachine" = home-manager.lib.homeManagerConfiguration { diff --git a/home/terminal/default.nix b/home/terminal/default.nix index 968b50d..54087f5 100644 --- a/home/terminal/default.nix +++ b/home/terminal/default.nix @@ -1,4 +1,4 @@ -{ pkgs, mail, ... }: +{ config, pkgs, mail, ... }: { imports = [ ./nixvim ]; @@ -257,6 +257,10 @@ enable = true; }; + home.file = { + "${config.xdg.configHome}/ghostty/config".source = ./ghostty/config; + }; + # This value determines the Home Manager release that your configuration is # compatible with. This helps avoid breakage when a new Home Manager release # introduces backwards incompatible changes. diff --git a/home/terminal/ghostty/config b/home/terminal/ghostty/config new file mode 100644 index 0000000..a0131e1 --- /dev/null +++ b/home/terminal/ghostty/config @@ -0,0 +1,4 @@ +title = " " +window-decoration = false +theme = "Abernathy" +confirm-close-surface = false diff --git a/home/wayland/default.nix b/home/wayland/default.nix index 1d291a1..d42006c 100644 --- a/home/wayland/default.nix +++ b/home/wayland/default.nix @@ -1,9 +1,10 @@ -{ config, pkgs, lib, ... }: +{ config, pkgs, lib, ghostty, ... }: { home.packages = with pkgs; [ brightnessctl flameshot + ghostty.packages.x86_64-linux.default swaybg swaylock ];