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
|
|
|
programs.ghostty = {
|
|
|
|
enable = true;
|
2025-01-02 16:19:21 +01:00
|
|
|
enableFishIntegration = true;
|
|
|
|
package = inputs.ghostty.packages.${pkgs.system}.default;
|
2024-08-10 23:06:08 +02:00
|
|
|
settings = {
|
2025-01-06 19:03:55 +01:00
|
|
|
font-size = 12.5;
|
2025-01-02 17:04:16 +01:00
|
|
|
font-family = "TX-02";
|
2024-08-13 20:21:59 +02:00
|
|
|
font-family-bold-italic = "Monaspace Xenon";
|
2025-01-02 17:04:16 +01:00
|
|
|
font-style-bold = "Bold";
|
|
|
|
font-style-italic = "Light Oblique";
|
2024-08-13 20:21:59 +02:00
|
|
|
font-style-bold-italic = "ExtraLight Italic";
|
2024-09-02 19:48:38 +02:00
|
|
|
font-synthetic-style = false;
|
2024-08-10 23:06:08 +02:00
|
|
|
|
2025-01-02 21:11:26 +01:00
|
|
|
adjust-cursor-thickness = 4;
|
2025-01-03 01:10:48 +01:00
|
|
|
adjust-underline-position = 5;
|
2025-01-02 21:11:26 +01:00
|
|
|
adjust-underline-thickness = -2;
|
2024-08-15 17:21:17 +02:00
|
|
|
|
2024-08-10 23:06:08 +02:00
|
|
|
mouse-hide-while-typing = true;
|
2024-08-11 17:21:12 +02:00
|
|
|
unfocused-split-opacity = 1.0;
|
2024-08-10 23:06:08 +02:00
|
|
|
|
|
|
|
shell-integration = "fish";
|
|
|
|
|
2025-01-01 13:12:48 +01:00
|
|
|
gtk-tabs-location = "hidden";
|
2025-01-15 14:54:28 +01:00
|
|
|
gtk-titlebar = true;
|
|
|
|
gtk-titlebar-hide-when-maximized = true;
|
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"
|
2025-01-15 14:54:28 +01:00
|
|
|
"ctrl+i=text:\\x09"
|
|
|
|
"ctrl+m=text:\\x0D"
|
2024-08-10 23:06:08 +02:00
|
|
|
"ctrl+tab=goto_split:previous"
|
2025-01-15 14:54:28 +01:00
|
|
|
"ctrl+[=text:\\x1B"
|
2024-08-15 11:32:39 +02:00
|
|
|
"super+enter=toggle_fullscreen"
|
2024-08-10 23:06:08 +02:00
|
|
|
];
|
|
|
|
};
|
2025-01-21 10:29:47 +01:00
|
|
|
themes = {
|
|
|
|
PatagiaDark = {
|
|
|
|
background = if config.patagia.oled.enable then "#000000" else "#14151a";
|
|
|
|
foreground = "#b7bec7";
|
|
|
|
cursor-color = "#e7e7b7";
|
|
|
|
selection-background = "#84979f";
|
|
|
|
selection-foreground = "#000000";
|
|
|
|
palette = [
|
|
|
|
"#000000"
|
|
|
|
"#ff0035"
|
|
|
|
"#85ff00"
|
|
|
|
"#ffc900"
|
|
|
|
"#00a7ff"
|
|
|
|
"#cb01ff"
|
|
|
|
"#00e0ff"
|
|
|
|
"#b7bec7"
|
|
|
|
"#444444"
|
|
|
|
"#ff8c88"
|
|
|
|
"#baff94"
|
|
|
|
"#ffe090"
|
|
|
|
"#88ccff"
|
|
|
|
"#e38dff"
|
|
|
|
"#97eeff"
|
|
|
|
"#ffffff"
|
|
|
|
];
|
|
|
|
};
|
|
|
|
PatagiaLight = {
|
|
|
|
background = "#fefeff";
|
|
|
|
foreground = "#222222";
|
|
|
|
cursor-color = "#aa0000";
|
|
|
|
selection-background = "#ffe6a4";
|
|
|
|
selection-foreground = "#483600";
|
|
|
|
palette = [
|
|
|
|
"#000000"
|
|
|
|
"#9e001d"
|
|
|
|
"#306300"
|
|
|
|
"#deae00"
|
|
|
|
"#00669e"
|
|
|
|
"#7d009e"
|
|
|
|
"#008a9e"
|
|
|
|
"#f7f7f7"
|
|
|
|
"#b0b0b0"
|
|
|
|
"#ff0035"
|
|
|
|
"#509e00"
|
|
|
|
"#ffc900"
|
|
|
|
"#00a7ff"
|
|
|
|
"#cb01ff"
|
|
|
|
"#00e0ff"
|
|
|
|
"#ffffff"
|
|
|
|
];
|
|
|
|
};
|
|
|
|
};
|
2024-08-10 23:06:08 +02:00
|
|
|
};
|
2024-08-11 17:21:12 +02:00
|
|
|
|
|
|
|
xdg.desktopEntries = {
|
2025-01-03 16:11:27 +01:00
|
|
|
ghostty-secondary = {
|
|
|
|
categories = [
|
|
|
|
"System"
|
|
|
|
"TerminalEmulator"
|
|
|
|
];
|
|
|
|
exec = ''
|
2025-01-06 19:03:55 +01:00
|
|
|
ghostty --class=com.mitchellh.ghostty-secondary --font-style="UltraCondensed" --font-style-bold="Bold UltraCondensed" --font-style-italic="UltraCondensed Oblique" -e bash
|
2025-01-03 16:11:27 +01:00
|
|
|
'';
|
|
|
|
genericName = "Ghostty Secondary";
|
|
|
|
icon = "com.mitchellh.ghostty";
|
2025-01-04 19:00:32 +01:00
|
|
|
name = "Ghostty Secondary";
|
2025-01-03 16:11:27 +01:00
|
|
|
settings = {
|
|
|
|
StartupWMClass = "com.mitchellh.ghostty-secondary";
|
|
|
|
TryExec = "ghostty";
|
|
|
|
};
|
|
|
|
terminal = false;
|
|
|
|
type = "Application";
|
|
|
|
};
|
|
|
|
|
2025-01-03 19:40:03 +01:00
|
|
|
ghostty-devel = {
|
2024-08-11 17:21:12 +02:00
|
|
|
categories = [
|
|
|
|
"System"
|
|
|
|
"TerminalEmulator"
|
|
|
|
];
|
2025-01-02 10:55:43 +01:00
|
|
|
exec = ''
|
2025-01-09 14:52:31 +01:00
|
|
|
ghostty --class=com.mitchellh.ghostty-devel --command="ssh -t devel" --initial-command="ssh -t devel"
|
2025-01-02 10:55:43 +01:00
|
|
|
'';
|
2025-01-03 19:40:03 +01:00
|
|
|
genericName = "Ghostty (devel)";
|
2024-08-11 17:21:12 +02:00
|
|
|
icon = "com.mitchellh.ghostty";
|
2025-01-03 19:40:03 +01:00
|
|
|
name = "Ghostty (devel)";
|
2024-08-11 17:21:12 +02:00
|
|
|
settings = {
|
2025-01-03 19:40:03 +01:00
|
|
|
StartupWMClass = "com.mitchellh.ghostty-devel";
|
2024-11-21 14:52:59 +01:00
|
|
|
TryExec = "ghostty";
|
2024-08-11 17:21:12 +02:00
|
|
|
};
|
|
|
|
terminal = false;
|
|
|
|
type = "Application";
|
|
|
|
};
|
2025-01-03 16:11:27 +01:00
|
|
|
|
2025-01-03 19:40:03 +01:00
|
|
|
ghostty-devel-secondary = {
|
2025-01-03 16:11:27 +01:00
|
|
|
categories = [
|
|
|
|
"System"
|
|
|
|
"TerminalEmulator"
|
|
|
|
];
|
|
|
|
exec = ''
|
2025-01-04 19:00:32 +01:00
|
|
|
ghostty --class=com.mitchellh.ghostty-devel-secondary --font-style="ExtraCondensed" --font-style-bold="Bold ExtraCondensed" --font-style-italic="ExtraCondensed Oblique" --command="ssh -t devel" --initial-command="ssh -t devel"
|
2025-01-03 16:11:27 +01:00
|
|
|
'';
|
2025-01-03 19:40:03 +01:00
|
|
|
genericName = "Ghostty Secondary (devel)";
|
2025-01-03 16:11:27 +01:00
|
|
|
icon = "com.mitchellh.ghostty";
|
2025-01-04 19:00:32 +01:00
|
|
|
name = "Ghostty Secondary (devel)";
|
2025-01-03 16:11:27 +01:00
|
|
|
settings = {
|
2025-01-03 19:40:03 +01:00
|
|
|
StartupWMClass = "com.mitchellh.ghostty-devel-secondary";
|
2025-01-03 16:11:27 +01:00
|
|
|
TryExec = "ghostty";
|
|
|
|
};
|
|
|
|
terminal = false;
|
|
|
|
type = "Application";
|
|
|
|
};
|
2024-08-11 17:21:12 +02:00
|
|
|
};
|
|
|
|
|
2024-08-10 23:06:08 +02:00
|
|
|
};
|
|
|
|
}
|