Compare commits

...

5 commits

Author SHA1 Message Date
1524994bab
emacs: Add plantuml wrapper so org-mode can work with plantuml-server 2024-12-17 12:55:52 +01:00
59cee7f975
Enable plantuml-server, add plantuml-mode to emacs 2024-12-16 16:30:50 +01:00
51f8720902
home: Re-enable libreoffice 2024-12-16 16:16:13 +01:00
1f3925415d
ghostty: Finish module 2024-12-16 16:16:13 +01:00
9376cd32dc
Update: flake.lock
Flake lock file updates:

• Updated input 'disko':
    'github:nix-community/disko/0f31ad735e784315a22d9899d3ba24340ce64220?narHash=sha256-NghuiWXx6Q3gwLiudiNwDpYQ1CPEUK7J%2Bf9dWREN8KA%3D' (2024-12-12)
  → 'github:nix-community/disko/d32f2d1750d61a476a236526b725ec5a32e16342?narHash=sha256-OIitVU%2BIstPbX/NWn2jLF%2B/sT9dVKcO2FKeRAzlyX6c%3D' (2024-12-13)
• Updated input 'home-manager':
    'github:nix-community/home-manager/3066cc58f552421a2c5414e78407fa5603405b1e?narHash=sha256-e9YAMReFV1fDPcZLFC2pa4k/8TloSXeX0z2VysNMAoA%3D' (2024-12-12)
  → 'github:nix-community/home-manager/66c5d8b62818ec4c1edb3e941f55ef78df8141a8?narHash=sha256-hSwgGpcZtdDsk1dnzA0xj5cNaHgN9A99hRF/mxMtwS4%3D' (2024-12-13)
• Updated input 'pre-commit-hooks':
    'github:cachix/git-hooks.nix/d8c02f0ffef0ef39f6063731fc539d8c71eb463a?narHash=sha256-%2BXTFXYlFJBxohhMGLDpYdEnhUNdxN8dyTA8WAd%2Blh2A%3D' (2024-12-08)
  → 'github:cachix/git-hooks.nix/4c8e75efbbdcc6f9203f64b1f21f8a55d2285264?narHash=sha256-3Lzk%2B7QyX8v60%2Bkm26D3dln7NMSA13vW%2BKYTkMkds6Q%3D' (2024-12-15)
• Updated input 'rust-overlay':
    'github:oxalica/rust-overlay/1f56a5c88e4dcaa0ab1ba04c4bc5a977cff840b2?narHash=sha256-fpSFuiW%2BO2L0ru2GrXBS0wcAYV9%2ByDE0Gf800UsWutY%3D' (2024-12-13)
  → 'github:oxalica/rust-overlay/150fbc8aa2bc501041810bbc1dbfe73694a861be?narHash=sha256-zsp0Mz8VgyIAnU8UhP/YT1g%2Bzlsl%2BNIJTBMAbY%2BRifQ%3D' (2024-12-15)
2024-12-15 15:45:57 +01:00
8 changed files with 256 additions and 106 deletions

View file

@ -150,11 +150,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1734011192, "lastModified": 1734088167,
"narHash": "sha256-NghuiWXx6Q3gwLiudiNwDpYQ1CPEUK7J+f9dWREN8KA=", "narHash": "sha256-OIitVU+IstPbX/NWn2jLF+/sT9dVKcO2FKeRAzlyX6c=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "0f31ad735e784315a22d9899d3ba24340ce64220", "rev": "d32f2d1750d61a476a236526b725ec5a32e16342",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -430,11 +430,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1734043726, "lastModified": 1734093295,
"narHash": "sha256-e9YAMReFV1fDPcZLFC2pa4k/8TloSXeX0z2VysNMAoA=", "narHash": "sha256-hSwgGpcZtdDsk1dnzA0xj5cNaHgN9A99hRF/mxMtwS4=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "3066cc58f552421a2c5414e78407fa5603405b1e", "rev": "66c5d8b62818ec4c1edb3e941f55ef78df8141a8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -694,11 +694,11 @@
"nixpkgs-stable": "nixpkgs-stable_3" "nixpkgs-stable": "nixpkgs-stable_3"
}, },
"locked": { "locked": {
"lastModified": 1733665616, "lastModified": 1734261738,
"narHash": "sha256-+XTFXYlFJBxohhMGLDpYdEnhUNdxN8dyTA8WAd+lh2A=", "narHash": "sha256-3Lzk+7QyX8v60+km26D3dln7NMSA13vW+KYTkMkds6Q=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "d8c02f0ffef0ef39f6063731fc539d8c71eb463a", "rev": "4c8e75efbbdcc6f9203f64b1f21f8a55d2285264",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -742,11 +742,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1734057252, "lastModified": 1734230139,
"narHash": "sha256-fpSFuiW+O2L0ru2GrXBS0wcAYV9+yDE0Gf800UsWutY=", "narHash": "sha256-zsp0Mz8VgyIAnU8UhP/YT1g+zlsl+NIJTBMAbY+RifQ=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "1f56a5c88e4dcaa0ab1ba04c4bc5a977cff840b2", "rev": "150fbc8aa2bc501041810bbc1dbfe73694a861be",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -1702,6 +1702,17 @@ Configure eglot to use the Gleam LSP server
'(gleam-ts-mode . ("gleam" "lsp")))) '(gleam-ts-mode . ("gleam" "lsp"))))
#+end_src #+end_src
*** PlantUML
[[https://plantuml.com][PlantUML]] is a tool to generate a wide variety of diagrams, like sequence, usecase and class diagrams.
#+begin_src emacs-lisp
(use-package plantuml-mode
:config
(setq plantuml-default-exec-mode 'server
plantuml-server-url "http://localhost:5080/plantuml"))
#+end_src
* Org * Org
** Main org setup ** Main org setup
@ -1767,24 +1778,28 @@ Configuration
#+name: org-config #+name: org-config
#+begin_src emacs-lisp :tangle no #+begin_src emacs-lisp :tangle no
(add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode)) (add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode))
(dolist (face '((org-level-1 . 1.2) (add-to-list
(org-level-2 . 1.1) 'org-src-lang-modes '("plantuml" . plantuml))
(org-level-3 . 1.05) (dolist (face '((org-level-1 . 1.2)
(org-level-4 . 1.0) (org-level-2 . 1.1)
(org-level-5 . 1.0) (org-level-3 . 1.05)
(org-level-6 . 1.0) (org-level-4 . 1.0)
(org-level-7 . 1.0) (org-level-5 . 1.0)
(org-level-8 . 1.0))) (org-level-6 . 1.0)
(set-face-attribute (car face) nil :family my/variable-width-font :weight 'medium :height (cdr face))) (org-level-7 . 1.0)
(set-face-attribute 'org-document-title nil :family my/variable-width-font :weight 'bold :height 1.3) (org-level-8 . 1.0)))
(set-face-attribute 'org-block nil :foreground nil :inherit 'fixed-pitch) (set-face-attribute (car face) nil :family my/variable-width-font :weight 'medium :height (cdr face)))
(set-face-attribute 'org-table nil :inherit 'fixed-pitch) (set-face-attribute 'org-document-title nil :family my/variable-width-font :weight 'bold :height 1.3)
(set-face-attribute 'org-formula nil :inherit 'fixed-pitch) (set-face-attribute 'org-block nil :foreground nil :inherit 'fixed-pitch)
(set-face-attribute 'org-code nil :inherit '(shadow fixed-pitch)) (set-face-attribute 'org-table nil :inherit 'fixed-pitch)
(set-face-attribute 'org-verbatim nil :inherit '(shadow fixed-pitch)) (set-face-attribute 'org-formula nil :inherit 'fixed-pitch)
(set-face-attribute 'org-special-keyword nil :inherit '(font-lock-comment-face fixed-pitch)) (set-face-attribute 'org-code nil :inherit '(shadow fixed-pitch))
(set-face-attribute 'org-checkbox nil :inherit 'fixed-pitch) (set-face-attribute 'org-verbatim nil :inherit '(shadow fixed-pitch))
(set-face-attribute 'org-special-keyword nil :inherit '(font-lock-comment-face fixed-pitch))
(set-face-attribute 'org-checkbox nil :inherit 'fixed-pitch)
(setq org-plantuml-exec-mode 'plantuml
org-plantuml-executable-path "plantuml-client")
#+end_src #+end_src
=org-capture= allows creating and saving quick notes, links and TODOs =org-capture= allows creating and saving quick notes, links and TODOs

View file

@ -8,6 +8,37 @@ with lib;
let let
cfg = config.eboskma.programs.emacs; cfg = config.eboskma.programs.emacs;
plantuml-client = pkgs.writeShellApplication {
name = "plantuml-client";
runtimeInputs = with pkgs; [
coreutils
xh
];
text = ''
type=
while getopts ":t:" option; do
case "''${option}" in
t)
type="''${OPTARG}";;
\?)
;;
esac
done
tempfile=$(mktemp --suffix plantuml)
while IFS= read -r line; do
echo "''${line}" >> "''${tempfile}"
done
encoded=$(xh --print=b post http://localhost:5080/plantuml/coder Content-Type:text/plain < "''${tempfile}")
rm "''${tempfile}"
xh get "http://localhost:5080/plantuml/''${type}/''${encoded}"
'';
};
tangleEmacsConfig = tangleEmacsConfig =
initFile: initFile:
pkgs.runCommand "tangled-emacs-${initFile}" { } '' pkgs.runCommand "tangled-emacs-${initFile}" { } ''
@ -173,6 +204,7 @@ in
})) }))
nixfmt-rfc-style nixfmt-rfc-style
python3 python3
plantuml-client
] ]
++ (with aspellDicts; [ ++ (with aspellDicts; [
en en

View file

@ -16,7 +16,7 @@ in
settings = lib.mkOption { settings = lib.mkOption {
description = "Ghostty config."; description = "Ghostty config.";
type = lib.types.submodule { type = lib.types.submodule {
freeformType = iniFormat.type; freeformType = lib.types.attrsOf iniFormat.lib.types.atom;
}; };
default = { }; default = { };
}; };

View file

@ -27,6 +27,11 @@ in
description = "Wallpaper to use for the lockscreen"; description = "Wallpaper to use for the lockscreen";
type = types.path; type = types.path;
}; };
terminal = mkOption {
description = "Default terminal to run";
type = types.str;
default = lib.getExe pkgs.foot;
};
output = mkOption { output = mkOption {
description = "An attribute set that defines output modules. See the sway-output(5) manpage for options"; description = "An attribute set that defines output modules. See the sway-output(5) manpage for options";
type = types.attrsOf (types.attrsOf types.str); type = types.attrsOf (types.attrsOf types.str);
@ -241,11 +246,15 @@ in
"${mod}+Pause" = "mode passthrough"; "${mod}+Pause" = "mode passthrough";
"${mod}+c" = mkIf config.eboskma.programs.emacs.enable "exec ${config.programs.emacs.package}/bin/emacsclient -c"; "${mod}+c" =
mkIf config.eboskma.programs.emacs.enable "exec ${config.programs.emacs.package}/bin/emacsclient -c";
"${mod}+Print" = "exec ${pkgs.grim}/bin/grim -o $(${cfg.package}/bin/swaymsg -t get_outputs | ${pkgs.jaq}/bin/jaq -r '.[] | select(.focused) | .name')"; "${mod}+Print" =
"${mod}+Shift+Print" = ''exec ${pkgs.grim}/bin/grim -o $(${cfg.package}/bin/swaymsg -t get_outputs | ${pkgs.jaq}/bin/jaq -r '.[] | select(.focused) | .name') - | ${pkgs.wl-clipboard}/bin/wl-copy -t "image/png" -f''; "exec ${pkgs.grim}/bin/grim -o $(${cfg.package}/bin/swaymsg -t get_outputs | ${pkgs.jaq}/bin/jaq -r '.[] | select(.focused) | .name')";
"${mod}+Shift+Ctrl+Print" = ''exec ${pkgs.grim}/bin/grim -g "$(${pkgs.slurp}/bin/slurp)" - | ${pkgs.wl-clipboard}/bin/wl-copy -t "image/png" -f''; "${mod}+Shift+Print" =
''exec ${pkgs.grim}/bin/grim -o $(${cfg.package}/bin/swaymsg -t get_outputs | ${pkgs.jaq}/bin/jaq -r '.[] | select(.focused) | .name') - | ${pkgs.wl-clipboard}/bin/wl-copy -t "image/png" -f'';
"${mod}+Shift+Ctrl+Print" =
''exec ${pkgs.grim}/bin/grim -g "$(${pkgs.slurp}/bin/slurp)" - | ${pkgs.wl-clipboard}/bin/wl-copy -t "image/png" -f'';
"${mod}+Shift+Alt+Print" = ''exec ${pkgs.grim}/bin/grim -g "$(${pkgs.slurp}/bin/slurp)"''; "${mod}+Shift+Alt+Print" = ''exec ${pkgs.grim}/bin/grim -g "$(${pkgs.slurp}/bin/slurp)"'';
"XF86AudioRaiseVolume" = "exec ${pkgs.pamedia}/bin/pamedia up"; "XF86AudioRaiseVolume" = "exec ${pkgs.pamedia}/bin/pamedia up";
@ -263,7 +272,8 @@ in
}; };
}; };
terminal = "${pkgs.foot}/bin/foot"; # terminal = "${pkgs.foot}/bin/foot";
terminal = cfg.terminal;
window = { window = {
border = 1; border = 1;

View file

@ -443,6 +443,11 @@
# user = "erwin"; # user = "erwin";
openFirewall = true; openFirewall = true;
}; };
plantuml-server = {
enable = true;
listenPort = 5080;
};
}; };
programs = { programs = {

View file

@ -70,6 +70,88 @@ in
enable = true; enable = true;
server = false; server = false;
}; };
ghostty = {
enable = true;
settings = {
font-family = "Iosevka NF";
font-size = 12;
theme = "catppuccin-mocha";
background-opacity = 0.9;
keybind = [
"ctrl+comma=open_config"
"ctrl+shift+comma=reload_config"
"ctrl+shift+q=quit"
"ctrl+enter=toggle_fullscreen"
"ctrl+shift+v=paste_from_clipboard"
"shift+insert=paste_from_selection"
"ctrl+shift+a=select_all"
"shift+up=adjust_selection:up"
"shift+right=adjust_selection:right"
"shift+down=adjust_selection:down"
"shift+left=adjust_selection:left"
"alt+one=goto_tab:1"
"alt+two=goto_tab:2"
"alt+three=goto_tab:3"
"alt+four=goto_tab:4"
"alt+five=goto_tab:5"
"alt+six=goto_tab:6"
"alt+seven=goto_tab:7"
"alt+eight=goto_tab:8"
"alt+nine=goto_tab:9"
"ctrl+minus=decrease_font_size:1"
"ctrl+equal=increase_font_size:1"
"ctrl+plus=increase_font_size:1"
"ctrl+zero=reset_font_size"
"ctrl+shift+n=new_window"
"ctrl+shift+t=new_tab"
"ctrl+shift+o=new_split:right"
"ctrl+shift+e=new_split:down"
"ctrl+shift+c=copy_to_clipboard"
"ctrl+shift+tab=previous_tab"
"ctrl+shift+left=previous_tab"
"ctrl+page_up=previous_tab"
"ctrl+tab=next_tab"
"ctrl+page_down=next_tab"
"ctrl+shift+right=next_tab"
"super+ctrl+right_bracket=goto_split:next"
"super+ctrl+left_bracket=goto_split:previous"
"ctrl+alt+up=goto_split:top"
"ctrl+alt+right=goto_split:right"
"ctrl+alt+down=goto_split:bottom"
"ctrl+alt+left=goto_split:left"
"super+ctrl+shift+up=resize_split:up,10"
"super+ctrl+shift+right=resize_split:right,10"
"super+ctrl+shift+down=resize_split:down,10"
"super+ctrl+shift+left=resize_split:left,10"
"super+ctrl+shift+equal=equalize_splits"
"ctrl+shift+page_down=jump_to_prompt:1"
"ctrl+shift+page_up=jump_to_prompt:-1"
"ctrl+alt+shift+j=write_scrollback_file:open"
"ctrl+shift+w=close_surface"
"shift+page_up=scroll_page_up"
"shift+home=scroll_to_top"
"shift+end=scroll_to_bottom"
"shift+page_down=scroll_page_down"
"ctrl+shift+j=write_scrollback_file:paste"
"alt+f4=close_window"
"ctrl+shift+enter=toggle_split_zoom"
"ctrl+shift+i=inspector:toggle"
];
window-decoration = false;
gtk-single-instance = true;
};
};
git = { git = {
enable = true; enable = true;
name = "Erwin Boskma"; name = "Erwin Boskma";
@ -143,6 +225,7 @@ in
sway = { sway = {
enable = true; enable = true;
package = pkgs.swayfx; package = pkgs.swayfx;
terminal = lib.getExe pkgs.ghostty;
lock-wallpaper = "${homeCfg.home.homeDirectory}/.wallpapers/river-2560.png"; lock-wallpaper = "${homeCfg.home.homeDirectory}/.wallpapers/river-2560.png";
output = { output = {
"DP-2" = { "DP-2" = {
@ -231,7 +314,6 @@ in
fd fd
ffmpeg-full ffmpeg-full
geekbench geekbench
inputs.ghostty.packages.${pkgs.system}.ghostty
godot_4 godot_4
hashcat hashcat
helvum helvum
@ -251,7 +333,7 @@ in
kubectl kubectl
kubernetes-helm kubernetes-helm
libnotify libnotify
# libreoffice-fresh libreoffice-fresh
mangohud mangohud
minio-client minio-client
mpv mpv
@ -345,9 +427,12 @@ in
}; };
configFile = { configFile = {
"gtk-4.0/assets".source = "${homeCfg.gtk.theme.package}/share/themes/${homeCfg.gtk.theme.name}/gtk-4.0/assets"; "gtk-4.0/assets".source =
"gtk-4.0/gtk.css".source = "${homeCfg.gtk.theme.package}/share/themes/${homeCfg.gtk.theme.name}/gtk-4.0/gtk.css"; "${homeCfg.gtk.theme.package}/share/themes/${homeCfg.gtk.theme.name}/gtk-4.0/assets";
"gtk-4.0/gtk-dark.css".source = "${homeCfg.gtk.theme.package}/share/themes/${homeCfg.gtk.theme.name}/gtk-4.0/gtk-dark.css"; "gtk-4.0/gtk.css".source =
"${homeCfg.gtk.theme.package}/share/themes/${homeCfg.gtk.theme.name}/gtk-4.0/gtk.css";
"gtk-4.0/gtk-dark.css".source =
"${homeCfg.gtk.theme.package}/share/themes/${homeCfg.gtk.theme.name}/gtk-4.0/gtk-dark.css";
}; };
}; };

View file

@ -71,81 +71,83 @@ in
ghostty = { ghostty = {
enable = true; enable = true;
settings = { settings = {
# font-family = "Iosevka NF"; font-family = "Iosevka NF";
# font-size = 16; font-size = 16;
# theme = "catppuccin-mocha"; theme = "catppuccin-mocha";
# background-opacity = 0.9; background-opacity = 0.9;
# keybind = [ keybind = [
# "ctrl+comma=open_config" "ctrl+comma=open_config"
# "ctrl+shift+comma=reload_config" "ctrl+shift+comma=reload_config"
# "ctrl+shift+q=quit" "ctrl+shift+q=quit"
# "ctrl+enter=toggle_fullscreen" "ctrl+enter=toggle_fullscreen"
# "ctrl+shift+v=paste_from_clipboard" "ctrl+shift+v=paste_from_clipboard"
# "shift+insert=paste_from_selection" "shift+insert=paste_from_selection"
# "ctrl+shift+a=select_all" "ctrl+shift+a=select_all"
# "shift+up=adjust_selection:up" "shift+up=adjust_selection:up"
# "shift+right=adjust_selection:right" "shift+right=adjust_selection:right"
# "shift+down=adjust_selection:down" "shift+down=adjust_selection:down"
# "shift+left=adjust_selection:left" "shift+left=adjust_selection:left"
# "alt+one=goto_tab:1" "alt+one=goto_tab:1"
# "alt+two=goto_tab:2" "alt+two=goto_tab:2"
# "alt+three=goto_tab:3" "alt+three=goto_tab:3"
# "alt+four=goto_tab:4" "alt+four=goto_tab:4"
# "alt+five=goto_tab:5" "alt+five=goto_tab:5"
# "alt+six=goto_tab:6" "alt+six=goto_tab:6"
# "alt+seven=goto_tab:7" "alt+seven=goto_tab:7"
# "alt+eight=goto_tab:8" "alt+eight=goto_tab:8"
# "alt+nine=goto_tab:9" "alt+nine=goto_tab:9"
# "ctrl+minus=decrease_font_size:1" "ctrl+minus=decrease_font_size:1"
# "ctrl+equal=increase_font_size:1" "ctrl+equal=increase_font_size:1"
# "ctrl+plus=increase_font_size:1" "ctrl+plus=increase_font_size:1"
# "ctrl+zero=reset_font_size" "ctrl+zero=reset_font_size"
# "ctrl+shift+n=new_window" "ctrl+shift+n=new_window"
# "ctrl+shift+t=new_tab" "ctrl+shift+t=new_tab"
# "ctrl+shift+o=new_split:right" "ctrl+shift+o=new_split:right"
# "ctrl+shift+e=new_split:down" "ctrl+shift+e=new_split:down"
# "ctrl+shift+c=copy_to_clipboard" "ctrl+shift+c=copy_to_clipboard"
# "ctrl+shift+tab=previous_tab" "ctrl+shift+tab=previous_tab"
# "ctrl+shift+left=previous_tab" "ctrl+shift+left=previous_tab"
# "ctrl+page_up=previous_tab" "ctrl+page_up=previous_tab"
# "ctrl+tab=next_tab" "ctrl+tab=next_tab"
# "ctrl+page_down=next_tab" "ctrl+page_down=next_tab"
# "ctrl+shift+right=next_tab" "ctrl+shift+right=next_tab"
# "super+ctrl+right_bracket=goto_split:next" "super+ctrl+right_bracket=goto_split:next"
# "super+ctrl+left_bracket=goto_split:previous" "super+ctrl+left_bracket=goto_split:previous"
# "ctrl+alt+up=goto_split:top" "ctrl+alt+up=goto_split:top"
# "ctrl+alt+right=goto_split:right" "ctrl+alt+right=goto_split:right"
# "ctrl+alt+down=goto_split:bottom" "ctrl+alt+down=goto_split:bottom"
# "ctrl+alt+left=goto_split:left" "ctrl+alt+left=goto_split:left"
# "super+ctrl+shift+up=resize_split:up,10" "super+ctrl+shift+up=resize_split:up,10"
# "super+ctrl+shift+right=resize_split:right,10" "super+ctrl+shift+right=resize_split:right,10"
# "super+ctrl+shift+down=resize_split:down,10" "super+ctrl+shift+down=resize_split:down,10"
# "super+ctrl+shift+left=resize_split:left,10" "super+ctrl+shift+left=resize_split:left,10"
# "super+ctrl+shift+equal=equalize_splits" "super+ctrl+shift+equal=equalize_splits"
# "ctrl+shift+page_down=jump_to_prompt:1" "ctrl+shift+page_down=jump_to_prompt:1"
# "ctrl+shift+page_up=jump_to_prompt:-1" "ctrl+shift+page_up=jump_to_prompt:-1"
# "ctrl+alt+shift+j=write_scrollback_file:open" "ctrl+alt+shift+j=write_scrollback_file:open"
# "ctrl+shift+w=close_surface" "ctrl+shift+w=close_surface"
# "shift+page_up=scroll_page_up" "shift+page_up=scroll_page_up"
# "shift+home=scroll_to_top" "shift+home=scroll_to_top"
# "shift+end=scroll_to_bottom" "shift+end=scroll_to_bottom"
# "shift+page_down=scroll_page_down" "shift+page_down=scroll_page_down"
# "ctrl+shift+j=write_scrollback_file:paste" "ctrl+shift+j=write_scrollback_file:paste"
# "alt+f4=close_window" "alt+f4=close_window"
# "ctrl+shift+enter=toggle_split_zoom" "ctrl+shift+enter=toggle_split_zoom"
# "ctrl+shift+i=inspector:toggle" "ctrl+shift+i=inspector:toggle"
# ]; ];
# window-decoration = false; window-decoration = false;
gtk-single-instance = true;
}; };
}; };
git = { git = {
@ -210,6 +212,7 @@ in
sway = { sway = {
enable = true; enable = true;
package = pkgs.sway; package = pkgs.sway;
terminal = lib.getExe pkgs.ghostty;
swayidle = false; swayidle = false;
lock-wallpaper = "${homeCfg.home.homeDirectory}/.wallpapers/river-3840.png"; lock-wallpaper = "${homeCfg.home.homeDirectory}/.wallpapers/river-3840.png";
output = { output = {