modulePath: { config, lib, pkgs, ... }: with lib; let cfg = getAttrFromPath modulePath config; in { nixpkgs.overlays = [ (self: super: { "${cfg.wrappedPackageName}-unwrapped" = pkgs.runCommandLocal "${cfg.wrappedPackageName}-0" { meta.description = "I pretend to be ${cfg.name}"; passthru.gtk3 = null; } '' mkdir -p "$out"/{bin,lib} touch "$out/bin/${cfg.wrappedPackageName}" chmod 755 "$out/bin/${cfg.wrappedPackageName}" ''; chrome-gnome-shell = pkgs.runCommandLocal "dummy-chrome-gnome-shell" { } '' mkdir -p $out/lib/mozilla/native-messaging-hosts touch $out/lib/mozilla/native-messaging-hosts/dummy ''; }) ]; }