diff options
Diffstat (limited to '')
| -rw-r--r-- | modules/by-name/fo/foot/module.nix | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/modules/by-name/fo/foot/module.nix b/modules/by-name/fo/foot/module.nix new file mode 100644 index 00000000..370c4d5a --- /dev/null +++ b/modules/by-name/fo/foot/module.nix @@ -0,0 +1,62 @@ +# nixos-config - My current NixOS configuration +# +# Copyright (C) 2025 Benedikt Peetz <benedikt.peetz@b-peetz.de> +# SPDX-License-Identifier: GPL-3.0-or-later +# +# This file is part of my nixos-config. +# +# You should have received a copy of the License along with this program. +# If not, see <https://www.gnu.org/licenses/gpl-3.0.txt>. +{ + config, + lib, + libraries, + pkgs, + ... +}: let + cfg = config.soispha.foot; +in { + options.soispha.foot = { + enable = libraries.base.options.mkEnable "foot terminal"; + }; + + config = lib.mkIf cfg.enable { + # TODO: Maybe we can use the xdg-autostart mechanism for this? <2026-06-23> + soispha.programs.river.init.autoStart = [ + ["${lib.getExe' pkgs.foot "footclient"}"] + ]; + + home-manager.users.soispha = { + programs.foot = { + enable = true; + server.enable = true; + settings = { + main = { + include = "${./theme.ini}"; + font = "SauceCodePro Nerd Font Mono:size=12"; + letter-spacing = "-0.25"; + }; + "regex:hashes" = { + regex = "([a-fA-F0-9]{7,128})"; + launch = "git show \${match}"; + }; + "regex:paths" = { + regex = "([^ '\"`=:\\\\[\\\\(]*/[^/: '\"`\\\\)\\\\]*)"; + launch = "ll \${match}"; + }; + + key-bindings = { + regex-launch = [ + "[hashes] Control+h" + "[paths] Control+t" + ]; + regex-copy = [ + "[hashes] Control+Shift+h" + "[paths] Control+Shift+t" + ]; + }; + }; + }; + }; + }; +} |
