From df2a2fe427149f66f7eef1fd76dd89acb9107eeb Mon Sep 17 00:00:00 2001 From: Colin Date: Mon, 11 Sep 2023 22:56:54 +0000 Subject: [PATCH] mako: simplify with a rmDbusServices helper --- hosts/common/programs/mako.nix | 8 ++------ pkgs/additional/trivial-builders/default.nix | 12 ++++++++++++ pkgs/default.nix | 4 ++++ 3 files changed, 18 insertions(+), 6 deletions(-) create mode 100644 pkgs/additional/trivial-builders/default.nix diff --git a/hosts/common/programs/mako.nix b/hosts/common/programs/mako.nix index 1914d227..4b7b45b0 100644 --- a/hosts/common/programs/mako.nix +++ b/hosts/common/programs/mako.nix @@ -3,12 +3,8 @@ { lib, config, pkgs, ... }: { sane.programs.mako = { - package = pkgs.mako.overrideAttrs (upstream: { - postInstall = (upstream.postInstall or "") + '' - # we control mako as a systemd service, so have dbus not automatically activate it. - rm $out/share/dbus-1/services/fr.emersion.mako.service - ''; - }); + # we control mako as a systemd service, so have dbus not automatically activate it. + package = pkgs.rmDbusServices pkgs.mako; fs.".config/mako/config".symlink.text = '' # notification interaction mapping # "on-touch" defaults to "dismiss", which isn't nice for touchscreens. diff --git a/pkgs/additional/trivial-builders/default.nix b/pkgs/additional/trivial-builders/default.nix new file mode 100644 index 00000000..214e359d --- /dev/null +++ b/pkgs/additional/trivial-builders/default.nix @@ -0,0 +1,12 @@ +{ symlinkJoin }: +{ + # given some package, create a new package which symlinks every file of the original + # *except* for its dbus files. + rmDbusServices = pkg: symlinkJoin { + name = pkg.name or pkg.pname; + paths = [ pkg ]; + postBuild = '' + rm -rf $out/share/dbus-1 + ''; + }; +} diff --git a/pkgs/default.nix b/pkgs/default.nix index 6ba2bb42..4f9909db 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -60,6 +60,10 @@ let sxmo-utils-latest = sxmo-utils'.latest; tow-boot-pinephone = callPackage ./additional/tow-boot-pinephone { }; tree-sitter-nix-shell = callPackage ./additional/tree-sitter-nix-shell { }; + trivial-builders = lib.recurseIntoAttrs (callPackage ./additional/trivial-builders { }); + inherit (trivial-builders) + rmDbusServices + ; unftp = callPackage ./additional/unftp { }; xdg-terminal-exec = callPackage ./additional/xdg-terminal-exec { }; zecwallet-light-cli = callPackage ./additional/zecwallet-light-cli { };