diff --git a/flake.nix b/flake.nix index 8b2137b..e5469bf 100644 --- a/flake.nix +++ b/flake.nix @@ -37,6 +37,7 @@ bmenu = import ./bmenu.nix { inherit config pkgs lib; }; _diffr = import ./diffr.nix { inherit config pkgs lib; }; kak-pager = import ./kak-pager.nix { inherit config pkgs lib; }; + terminal = import ./terminal.nix { inherit config pkgs lib; }; }) ]; }) diff --git a/terminal.nix b/terminal.nix new file mode 100644 index 0000000..fd2ba36 --- /dev/null +++ b/terminal.nix @@ -0,0 +1,23 @@ +{ config, pkgs, lib, ... }: +pkgs.writeScriptBin "terminal" '' + #!/bin/sh + + CLASS="terminal" + + while test $# -gt 0;do + case $1 in + -c|--class) + shift + CLASS=$1 + shift + ;; + *) + break + ;; + esac + done + + test $# -gt 0 && + exec alacritty --class "$CLASS" -e $@ || + exec alacritty --class "$CLASS" +'' diff --git a/user/home.nix b/user/home.nix index d47af14..0e60520 100644 --- a/user/home.nix +++ b/user/home.nix @@ -28,6 +28,7 @@ in { programs.home-manager.enable = true; home.packages = with pkgs; [ alacritty + terminal # see flake.nix exa fd _diffr diff --git a/user/kakoune.nix b/user/kakoune.nix index 2146650..b30f560 100644 --- a/user/kakoune.nix +++ b/user/kakoune.nix @@ -121,7 +121,10 @@ in { })); }; home.packages = with pkgs; [ - pkgs.unstable.helix + kakoune + terminal + ranger + bmenu ]; home.sessionVariables = { EDITOR = "kak"; diff --git a/user/sway.nix b/user/sway.nix index 42f7a0c..55b4c5e 100644 --- a/user/sway.nix +++ b/user/sway.nix @@ -91,7 +91,13 @@ in { "s" = "exec ${pulse_sink}/bin/pulse_sink"; }; }; - floating.modifier = "Mod4"; + floating = { + modifier = "Mod4"; + criteria = [ + { class = "file_picker"; } + { app_id = "file_picker"; } + ]; + }; keybindings = let mod = "Mod4"; menu = "${pkgs.bmenu}/bin/bmenu run";