diff --git a/config/config.yaml b/config/config.yaml index 8649652..bfcb314 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -74,6 +74,11 @@ config: source: ~/dotfiles/config/hyprpaper.conf target: ~/.config/hypr/hyprpaper.conf + # Ghostty config + ghostty: + source: ~/dotfiles/config/ghostty.conf + target: ~/.config/ghostty/config + # Starship config starship: source: ~/dotfiles/config/starship.toml diff --git a/config/ghostty.conf b/config/ghostty.conf new file mode 100644 index 0000000..ef99b93 --- /dev/null +++ b/config/ghostty.conf @@ -0,0 +1,25 @@ +# Theme +# Try new themes with: `ghostty +list-themes` +theme = dark:Adwaita Dark,light:Adwaita + +# Keybinds +keybind = ctrl+shift+k=clear_screen + +# Font size keybinds +keybind = ctrl+zero=reset_font_size +keybind = ctrl+kp_add=increase_font_size:1 +keybind = ctrl+kp_subtract=decrease_font_size:1 + +# Keybinds for moving windows +keybind = alt+right=next_tab +keybind = alt+left=previous_tab +keybind = shift+alt+left=move_tab:-1 +keybind = shift+alt+right=move_tab:1 + +# Window keybinds +keybind = ctrl+q=close_window +keybind = ctrl+shift+Q=close_all_windows + + +# Shell integration +shell-integration = bash diff --git a/config/nixos/flake.lock b/config/nixos/flake.lock index 195b075..d61be18 100644 --- a/config/nixos/flake.lock +++ b/config/nixos/flake.lock @@ -65,6 +65,22 @@ "type": "github" } }, + "flake-compat_3": { + "flake": false, + "locked": { + "lastModified": 1717312683, + "narHash": "sha256-FrlieJH50AuvagamEvWMIE6D2OAnERuDboFDYAED/dE=", + "owner": "nix-community", + "repo": "flake-compat", + "rev": "38fd3954cf65ce6faf3d0d45cd26059e059f07ea", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "flake-compat", + "type": "github" + } + }, "flake-utils": { "inputs": { "systems": "systems" @@ -376,6 +392,27 @@ "type": "github" } }, + "nixos-cosmic": { + "inputs": { + "flake-compat": "flake-compat_3", + "nixpkgs": "nixpkgs_2", + "nixpkgs-stable": "nixpkgs-stable_3", + "rust-overlay": "rust-overlay" + }, + "locked": { + "lastModified": 1735522648, + "narHash": "sha256-A73vDMGBEq9KwUMmtMkg3zvReMsdRrb1ruXjNjzJh+I=", + "owner": "lilyinstarlight", + "repo": "nixos-cosmic", + "rev": "6f74fba14f206b6e74ed5d2320facf9c43c3771a", + "type": "github" + }, + "original": { + "owner": "lilyinstarlight", + "repo": "nixos-cosmic", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1735291276, @@ -424,6 +461,22 @@ "type": "github" } }, + "nixpkgs-stable_3": { + "locked": { + "lastModified": 1735264675, + "narHash": "sha256-MgdXpeX2GuJbtlBrH9EdsUeWl/yXEubyvxM1G+yO4Ak=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d49da4c08359e3c39c4e27c74ac7ac9b70085966", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-24.11", + "repo": "nixpkgs", + "type": "github" + } + }, "nixpkgs-unstable": { "locked": { "lastModified": 1733229606, @@ -457,6 +510,22 @@ } }, "nixpkgs_2": { + "locked": { + "lastModified": 1735291276, + "narHash": "sha256-NYVcA06+blsLG6wpAbSPTCyLvxD/92Hy4vlY9WxFI1M=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "634fd46801442d760e09493a794c4f15db2d0cbb", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { "locked": { "lastModified": 1735412871, "narHash": "sha256-Qoz0ow6jDGUIBHxduc7Y1cjYFS71tvEGJV5Src/mj98=", @@ -501,10 +570,32 @@ "ghostty": "ghostty", "hyprland": "hyprland", "hyprland-plugins": "hyprland-plugins", - "nixpkgs": "nixpkgs_2", + "nixos-cosmic": "nixos-cosmic", + "nixpkgs": "nixpkgs_3", "nixpkgs-unstable": "nixpkgs-unstable_2" } }, + "rust-overlay": { + "inputs": { + "nixpkgs": [ + "nixos-cosmic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1735439489, + "narHash": "sha256-IysonaW/cItfmMuvg43flOqMgS4N0C6yKJobCa09XOQ=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "915d7c42a706f9191696d1b779cf1ea1769d34a8", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, "systems": { "locked": { "lastModified": 1681028828, diff --git a/config/nixos/flake.nix b/config/nixos/flake.nix index 05ee901..f42a6d8 100644 --- a/config/nixos/flake.nix +++ b/config/nixos/flake.nix @@ -4,7 +4,7 @@ inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-24.11"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; - # nixos-cosmic.url = "github:lilyinstarlight/nixos-cosmic"; + nixos-cosmic.url = "github:lilyinstarlight/nixos-cosmic"; hyprland.url = "github:hyprwm/hyprland"; hyprland-plugins = { url = "github:hyprwm/hyprland-plugins"; @@ -21,7 +21,7 @@ hyprland, hyprland-plugins, ghostty, - # nixos-cosmic, + nixos-cosmic, }: let system = "x86_64-linux"; @@ -51,6 +51,7 @@ hyprland hyprland-plugins ghostty + nixos-cosmic ; isWorkstation = true; isServer = false; @@ -70,6 +71,7 @@ hyprland hyprland-plugins ghostty + nixos-cosmic ; isWorkstation = true; isServer = false; diff --git a/config/nixos/packages/workstation/ghostty.nix b/config/nixos/packages/workstation/ghostty.nix index 9f4cd72..a4ac274 100644 --- a/config/nixos/packages/workstation/ghostty.nix +++ b/config/nixos/packages/workstation/ghostty.nix @@ -1,5 +1,9 @@ { ghostty, pkgs, ... }: { + # Known issue: https://ghostty.org/docs/help/terminfo + # Issue output such as: tput: unknown terminal "xterm-ghostty" + # Simply run: + # $ infocmp -x | ssh SERVER_TO_FIX -- tic -x - environment.systemPackages = [ ghostty.packages.x86_64-linux.default ];