Files
lux/modules/capabilities/walker.nix
T
2026-05-05 21:05:24 +02:00

63 lines
1.4 KiB
Nix

{
flake.modules.homeManager.walker =
{
config,
lib,
pkgs,
...
}:
let
elephantCommand = lib.getExe pkgs.elephant;
launcherCommand = lib.getExe config.services.walker.package;
in
{
home.packages = [ pkgs.elephant ];
services.walker = {
enable = true;
systemd.enable = true;
};
systemd.user.services = {
elephant = {
Unit = {
Description = "Elephant application launcher backend";
PartOf = [ "graphical-session.target" ];
After = [ "graphical-session.target" ];
};
Install.WantedBy = [ "graphical-session.target" ];
Service = {
ExecStart = elephantCommand;
Restart = "always";
RestartSec = 10;
};
};
walker.Unit = {
Wants = [ "elephant.service" ];
After = [ "elephant.service" ];
};
};
meta.desktop.launcher = {
package = config.services.walker.package;
commands = {
open = [ launcherCommand ];
files = [
launcherCommand
"--query"
"/"
"--placeholder"
"Find files"
];
dmenu = [
launcherCommand
"--dmenu"
"--placeholder"
"Search clipboard"
];
};
};
};
}