aboutsummaryrefslogtreecommitdiffstats
path: root/modules/desktop/application-launcher/fzf/default.nix
blob: 6a1c4a62709ca260143ce739611befc6bf6e1eec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{ config, lib, pkgs, ... }:

{
	options.desktop.application-launcher.fzf = {
		enable = lib.mkEnableOption "Enables fzf to be used as a application launcher.";
	};

	config = lib.mkIf config.desktop.application-launcher.fzf.enable {
		assertions = [
			{
				assertion = config.tools.utils.fzf.enable;
				message ="Module desktop.application-launcher.fzf requires tools.utils.fzf module to be enabled.";
			}
		];

		desktop.application-launcher.default = lib.mkDefault "fzf";
		desktop.application-launcher.command =
			if config.desktop.application-launcher.default == "fzf" then
				lib.mkForce "${config.tools.terminal.command} --title 'Application Launcher' --class floating-termial -e ${(pkgs.writeShellScript "fzf-launch.sh" (builtins.readFile ./launch.sh))}"
			else "";
	};
}