opt: mmsg as passthru

This commit is contained in:
EdenQwQ 2025-03-26 00:25:54 +08:00
parent 9d78c83fa3
commit ed7e8bf93a
4 changed files with 24 additions and 42 deletions

View file

@ -26,8 +26,8 @@
]; ];
flake = { flake = {
hmModules.maomaowm = import ./nix/hm-modules.nix { inherit self; }; hmModules.maomaowm = import ./nix/hm-modules.nix self;
nixosModules.maomaowm = import ./nix/nixos-modules.nix { inherit inputs self; }; nixosModules.maomaowm = import ./nix/nixos-modules.nix self;
}; };
perSystem = perSystem =
@ -41,7 +41,8 @@
callPackage callPackage
; ;
maomaowm = callPackage ./nix { maomaowm = callPackage ./nix {
wlroots = inputs.nixpkgs-wayland.packages.${pkgs.system}.wlroots; inherit (inputs.nixpkgs-wayland.packages.${pkgs.system}) wlroots;
inherit (inputs.mmsg.packages.${pkgs.system}) mmsg;
}; };
shellOverride = old: { shellOverride = old: {
nativeBuildInputs = old.nativeBuildInputs ++ [ ]; nativeBuildInputs = old.nativeBuildInputs ++ [ ];

View file

@ -16,6 +16,7 @@
meson, meson,
ninja, ninja,
wlroots, wlroots,
mmsg,
}: }:
let let
pname = "maomaowm"; pname = "maomaowm";
@ -51,6 +52,7 @@ stdenv.mkDerivation {
passthru = { passthru = {
providedSessions = [ "maomao" ]; providedSessions = [ "maomao" ];
inherit mmsg;
}; };
meta = { meta = {

View file

@ -1,4 +1,4 @@
{ self }: self:
{ {
lib, lib,
config, config,

View file

@ -1,4 +1,4 @@
{ inputs, self }: self:
{ {
config, config,
lib, lib,
@ -7,16 +7,6 @@
}: }:
let let
cfg = config.programs.maomaowm; cfg = config.programs.maomaowm;
mmsg = lib.types.submodule {
options = {
enable = lib.mkEnableOption "Enable mmsg, the ipc for maomaowm";
package = lib.mkOption {
type = lib.types.package;
default = inputs.mmsg.packages.${pkgs.system}.mmsg;
description = "The mmsg package to use";
};
};
};
in in
{ {
options = { options = {
@ -27,19 +17,13 @@ in
default = self.packages.${pkgs.system}.maomaowm; default = self.packages.${pkgs.system}.maomaowm;
description = "The maomaowm package to use"; description = "The maomaowm package to use";
}; };
mmsg = lib.mkOption {
type = mmsg;
default = {
enable = true;
};
description = "Options for mmsg, the ipc for maomaowm";
};
}; };
}; };
config = lib.mkMerge [ config = lib.mkIf cfg.enable {
(lib.mkIf cfg.enable { environment.systemPackages = [
environment.systemPackages = [ cfg.package ]; cfg.package
] ++ (if (builtins.hasAttr "mmsg" cfg.package) then [ cfg.package.mmsg ] else [ ]);
xdg.portal = { xdg.portal = {
enable = lib.mkDefault true; enable = lib.mkDefault true;
@ -59,10 +43,5 @@ in
graphical-desktop.enable = lib.mkDefault true; graphical-desktop.enable = lib.mkDefault true;
}; };
}) };
(lib.mkIf cfg.mmsg.enable {
environment.systemPackages = [ cfg.mmsg.package ];
})
];
} }