diff --git a/home-manager/modules/gui/alacritty-xterm.toml b/home-manager/modules/gui/alacritty-xterm.toml new file mode 100644 index 0000000..47fd62c --- /dev/null +++ b/home-manager/modules/gui/alacritty-xterm.toml @@ -0,0 +1,28 @@ +# XTerm's default colors + +# Default colors +[colors.primary] +background = '#000000' +foreground = '#ffffff' + +# Normal colors +[colors.normal] +black = '#000000' +red = '#cd0000' +green = '#00cd00' +yellow = '#cdcd00' +blue = '#0000ee' +magenta = '#cd00cd' +cyan = '#00cdcd' +white = '#e5e5e5' + +# Bright colors +[colors.bright] +black = '#7f7f7f' +red = '#ff0000' +green = '#00ff00' +yellow = '#ffff00' +blue = '#5c5cff' +magenta = '#ff00ff' +cyan = '#00ffff' +white = '#ffffff' diff --git a/home-manager/modules/gui/default.nix b/home-manager/modules/gui/default.nix index 1bf267c..08e6528 100644 --- a/home-manager/modules/gui/default.nix +++ b/home-manager/modules/gui/default.nix @@ -10,6 +10,15 @@ let name = "Monocraft"; size = 10; }; + + doomWad = pkgs.fetchurl { + url = "https://distro.ibiblio.org/slitaz/sources/packages/d/doom1.wad"; + hash = "sha256-HX1DvlAeZ9kn5BXguPPinDvzMHXoWXIYFvZSpSbKx3E="; + }; + doomNcurses = pkgs.writeShellScript "doom-ncurses" '' + SDL_AUDIODRIVER=null SDL_VIDEODRIVER=caca CACA_DRIVER=ncurses exec ${pkgs.chocolate-doom2xx}/bin/chocolate-doom -iwad ${doomWad} + ''; + lockCmd = "swaylock-plugin --command-each '${pkgs.windowtolayer}/bin/windowtolayer -- alacritty -e ${doomNcurses}'"; in { options.my.gui = { @@ -51,7 +60,15 @@ in alacritty = { enable = true; settings = { - font.normal.family = font.name; + import = [ ./alacritty-xterm.toml ]; + + font = { + size = font.size; + normal = { + family = font.name; + style = "Regular"; + }; + }; }; }; @@ -65,6 +82,25 @@ in }; }; + termite = { + enable = true; + font = "${font.name} ${toString font.size}"; + backgroundColor = "rgba(0, 0, 0, 0.8)"; + }; + + foot = { + enable = true; + settings = { + main = { + font = "${font.name}:size=${toString font.size}"; + }; + colors = { + alpha = 0.8; + background = "000000"; + }; + }; + }; + helix = { enable = true; settings = { @@ -162,7 +198,7 @@ in in lib.mkOptionDefault { "${mod}+d" = null; - "${mod}+l" = "exec swaylock -i ${./lock.png} -s stretch"; + "${mod}+l" = "exec ${lockCmd}"; "${mod}+x" = "exec ${cfg.menu}"; "${mod}+Shift+x" = "exec rofi -show drun"; "${mod}+q" = "kill"; diff --git a/nixos/modules/gui.nix b/nixos/modules/gui.nix index 6285c29..54aa559 100644 --- a/nixos/modules/gui.nix +++ b/nixos/modules/gui.nix @@ -23,13 +23,13 @@ in security = { polkit.enable = true; - pam.services.swaylock = {}; + pam.services.swaylock-plugin = {}; }; environment.systemPackages = with pkgs; [ # for pw-jack pipewire.jack - swaylock + swaylock-plugin ]; services = { pipewire = {