From d1d4a63d4473cd4910b678cf5b385f622186fbd3 Mon Sep 17 00:00:00 2001 From: BossCode45 Date: Thu, 19 Dec 2024 15:00:45 +1300 Subject: feat: Added IPC client side to main binary Updated command line arguments to use `getopt_long' Made it so both -v and --version work Made it so that if you give it non recognised arguments they are sent through the socket to the running window manager if possible. --- nix/module.nix | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 nix/module.nix (limited to 'nix/module.nix') diff --git a/nix/module.nix b/nix/module.nix new file mode 100644 index 0000000..829c26d --- /dev/null +++ b/nix/module.nix @@ -0,0 +1,26 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.xserver.windowManager.YATwm; +in + +{ + options.services.xserver.windowManager.YATwm = { + enable = mkEnableOption "YATwm"; + + package = mkPackageOption pkgs null { }; + }; + + config = mkIf cfg.enable { + services.xserver.windowManager.session = [{ + name = "YATwm"; + start = '' + ${cfg.package}/bin/YATwm & + waitPID=$! + ''; + }]; + environment.systemPackages = [ cfg.package ]; + }; +} -- cgit v1.2.3