41 lines
1 KiB
Nix
41 lines
1 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
let
|
|
cfg = config.xyno.desktop.foot;
|
|
in
|
|
{
|
|
options.xyno.desktop.foot.enable = lib.mkEnableOption "enable foot terminal emulator";
|
|
options.xyno.desktop.foot.wantedBy = lib.mkOption {
|
|
type = lib.types.str;
|
|
default = "niri.service";
|
|
};
|
|
options.xyno.desktop.foot.package = lib.mkOption {
|
|
type = lib.types.package;
|
|
default = pkgs.foot;
|
|
};
|
|
config = lib.mkIf cfg.enable {
|
|
# should be socket activated tm
|
|
# systemd.user.services.foot-server.wantedBy = lib.mkForce [ cfg.wantedBy ];
|
|
systemd.user.sockets.foot-server.wantedBy = lib.mkForce [ cfg.wantedBy ];
|
|
systemd.packages = [ cfg.package ];
|
|
xyno.desktop.niri.term = lib.mkDefault "footclient";
|
|
programs.foot = {
|
|
enable = true;
|
|
package = cfg.package;
|
|
theme = "gruvbox-dark";
|
|
settings = {
|
|
main = {
|
|
font = "JetBrainsMono Nerd Font:size=11, Noto Color Emoji:size=10";
|
|
term = "foot";
|
|
};
|
|
scrollback = {
|
|
lines = 100000;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|