2024-08-10 23:06:08 +02:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
inputs,
|
|
|
|
lib,
|
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}:
|
|
|
|
{
|
2024-09-02 14:43:17 +02:00
|
|
|
config = lib.mkIf config.patagia.desktop.enable {
|
2024-08-10 23:06:08 +02:00
|
|
|
|
2024-08-11 17:21:12 +02:00
|
|
|
home.packages = with pkgs; [
|
|
|
|
inputs.ghostty.packages.${pkgs.system}.default
|
|
|
|
];
|
2024-08-10 23:06:08 +02:00
|
|
|
|
|
|
|
programs.ghostty = {
|
|
|
|
enable = true;
|
|
|
|
settings = {
|
|
|
|
font-size = 14;
|
2024-08-13 20:21:59 +02:00
|
|
|
font-family = "Berkeley Mono Variable";
|
|
|
|
font-family-bold-italic = "Monaspace Xenon";
|
|
|
|
font-style-bold-italic = "ExtraLight Italic";
|
2024-09-02 19:48:38 +02:00
|
|
|
font-synthetic-style = false;
|
2024-08-13 20:21:59 +02:00
|
|
|
font-variation-italic = [ "wght=100" ];
|
2024-08-10 23:06:08 +02:00
|
|
|
|
2024-08-15 17:21:17 +02:00
|
|
|
adjust-cell-height = 1;
|
|
|
|
adjust-cursor-thickness = 5;
|
|
|
|
adjust-font-baseline = 1;
|
|
|
|
adjust-underline-position = 2;
|
|
|
|
adjust-underline-thickness = -1;
|
|
|
|
|
2024-08-10 23:06:08 +02:00
|
|
|
mouse-hide-while-typing = true;
|
|
|
|
cursor-style = "block";
|
2024-08-11 17:21:12 +02:00
|
|
|
unfocused-split-opacity = 1.0;
|
2024-08-10 23:06:08 +02:00
|
|
|
|
|
|
|
shell-integration = "fish";
|
|
|
|
|
2024-08-12 08:47:40 +02:00
|
|
|
window-decoration = false;
|
2024-08-10 23:06:08 +02:00
|
|
|
gtk-tabs-location = "bottom";
|
2024-09-11 23:56:45 +02:00
|
|
|
gtk-titlebar = false;
|
2024-08-11 21:38:42 +02:00
|
|
|
window-padding-x = 12;
|
|
|
|
window-padding-y = 0;
|
2024-08-10 23:06:08 +02:00
|
|
|
window-padding-balance = true;
|
|
|
|
window-padding-color = "extend";
|
|
|
|
window-theme = "system";
|
2024-11-21 14:52:59 +01:00
|
|
|
theme = "light:PatagiaLight,dark:PatagiaDark";
|
2024-08-10 23:06:08 +02:00
|
|
|
|
|
|
|
keybind = [
|
2024-08-13 20:21:59 +02:00
|
|
|
"alt+shift+c=copy_to_clipboard"
|
2024-08-10 23:06:08 +02:00
|
|
|
"alt+shift+v=paste_from_clipboard"
|
|
|
|
"ctrl+tab=goto_split:previous"
|
2024-08-15 11:32:39 +02:00
|
|
|
"super+enter=toggle_fullscreen"
|
|
|
|
"ctrl+enter=unbind"
|
2024-08-11 23:13:02 +02:00
|
|
|
"alt+one=unbind"
|
|
|
|
"alt+two=unbind"
|
|
|
|
"alt+three=unbind"
|
|
|
|
"alt+four=unbind"
|
|
|
|
"alt+five=unbind"
|
|
|
|
"alt+six=unbind"
|
|
|
|
"alt+seven=unbind"
|
|
|
|
"alt+eight=unbind"
|
|
|
|
"alt+nine=unbind"
|
2024-08-10 23:06:08 +02:00
|
|
|
];
|
|
|
|
};
|
|
|
|
};
|
2024-08-11 17:21:12 +02:00
|
|
|
|
2024-11-21 14:52:59 +01:00
|
|
|
xdg.configFile."ghostty/themes/PatagiaDark".text = ''
|
2024-11-21 20:11:29 +01:00
|
|
|
background = #000000
|
2024-08-11 17:21:12 +02:00
|
|
|
foreground = #b2b2b2
|
|
|
|
cursor-color = #00d992
|
|
|
|
selection-background = #d7d7d7
|
|
|
|
selection-foreground = #000000
|
|
|
|
palette = 0=#000000
|
|
|
|
palette = 1=#ff0035
|
|
|
|
palette = 2=#85ff00
|
|
|
|
palette = 3=#ffc900
|
|
|
|
palette = 4=#00a7ff
|
|
|
|
palette = 5=#cb01ff
|
|
|
|
palette = 6=#00e0ff
|
|
|
|
palette = 7=#f0f0f0
|
2024-08-15 22:36:19 +02:00
|
|
|
palette = 8=#444444
|
2024-08-11 17:21:12 +02:00
|
|
|
palette = 9=#ff8c88
|
|
|
|
palette = 10=#baff94
|
|
|
|
palette = 11=#ffe090
|
|
|
|
palette = 12=#88ccff
|
|
|
|
palette = 13=#e38dff
|
|
|
|
palette = 14=#97eeff
|
|
|
|
palette = 15=#ffffff
|
|
|
|
'';
|
|
|
|
|
2024-11-21 14:52:59 +01:00
|
|
|
xdg.configFile."ghostty/themes/PatagiaLight".text = ''
|
2024-08-11 17:21:12 +02:00
|
|
|
background = #fefeff
|
|
|
|
foreground = #222222
|
|
|
|
cursor-color = #aa0000
|
|
|
|
selection-background = #ffe6a4
|
|
|
|
selection-foreground = #483600
|
|
|
|
palette = 0=#000000
|
|
|
|
palette = 1=#9e001d
|
|
|
|
palette = 2=#306300
|
|
|
|
palette = 3=#deae00
|
|
|
|
palette = 4=#00669e
|
|
|
|
palette = 5=#7d009e
|
|
|
|
palette = 6=#008a9e
|
|
|
|
palette = 7=#f7f7f7
|
2024-08-15 22:36:19 +02:00
|
|
|
palette = 8=#b0b0b0
|
2024-08-11 17:21:12 +02:00
|
|
|
palette = 9=#ff0035
|
|
|
|
palette = 10=#509e00
|
|
|
|
palette = 11=#ffc900
|
|
|
|
palette = 12=#00a7ff
|
|
|
|
palette = 13=#cb01ff
|
|
|
|
palette = 14=#00e0ff
|
|
|
|
palette = 15=#ffffff
|
|
|
|
'';
|
|
|
|
|
|
|
|
xdg.desktopEntries = {
|
|
|
|
ghostty-local = {
|
|
|
|
categories = [
|
|
|
|
"System"
|
|
|
|
"TerminalEmulator"
|
|
|
|
];
|
2024-11-21 14:52:59 +01:00
|
|
|
exec = ''ghostty --class=com.mitchellh.ghostty-local -e "tmux new-session -A -s0 -nt1"'';
|
2024-08-11 17:21:12 +02:00
|
|
|
genericName = "Ghostty (local)";
|
|
|
|
icon = "com.mitchellh.ghostty";
|
|
|
|
name = "Ghostty (local)";
|
|
|
|
settings = {
|
|
|
|
StartupWMClass = "com.mitchellh.ghostty-local";
|
2024-11-21 14:52:59 +01:00
|
|
|
TryExec = "ghostty";
|
2024-08-11 17:21:12 +02:00
|
|
|
};
|
|
|
|
terminal = false;
|
|
|
|
type = "Application";
|
|
|
|
};
|
|
|
|
|
|
|
|
ghostty-nemo = {
|
|
|
|
categories = [
|
|
|
|
"System"
|
|
|
|
"TerminalEmulator"
|
|
|
|
];
|
2024-11-21 14:52:59 +01:00
|
|
|
exec = ''ghostty --class=com.mitchellh.ghostty-nemo -e "ssh -t nemo tmux new-session -A -s0 -nt1"'';
|
2024-08-11 17:21:12 +02:00
|
|
|
genericName = "Ghostty (nemo)";
|
|
|
|
icon = "com.mitchellh.ghostty";
|
|
|
|
name = "Ghostty (nemo)";
|
|
|
|
settings = {
|
|
|
|
StartupWMClass = "com.mitchellh.ghostty-nemo";
|
2024-11-21 14:52:59 +01:00
|
|
|
TryExec = "ghostty";
|
2024-08-11 17:21:12 +02:00
|
|
|
};
|
|
|
|
terminal = false;
|
|
|
|
type = "Application";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2024-08-10 23:06:08 +02:00
|
|
|
};
|
|
|
|
}
|