1
0
Fork 0
mirror of https://github.com/nix-community/home-manager.git synced 2025-12-02 23:21:02 +01:00
home-manager/tests/modules/programs/firefox/setup-firefox-mock-overlay.nix

56 lines
1.4 KiB
Nix

modulePath:
{
config,
lib,
realPkgs,
...
}:
let
cfg = lib.getAttrFromPath modulePath config;
darwinPath = "Applications/${cfg.darwinAppName}.app/Contents/MacOS";
in
{
test.stubs =
let
unwrappedName = "${cfg.wrappedPackageName}-unwrapped";
in
{
"${unwrappedName}" = {
name = unwrappedName;
extraAttrs = {
applicationName = cfg.wrappedPackageName;
binaryName = cfg.wrappedPackageName;
gtk3 = null;
meta.description = "I pretend to be ${cfg.name}";
};
outPath = null;
buildScript =
if realPkgs.stdenv.hostPlatform.isDarwin then
''
echo BUILD
mkdir -p "$out"/${darwinPath}
touch "$out/${darwinPath}/${cfg.wrappedPackageName}"
chmod 755 "$out/${darwinPath}/${cfg.wrappedPackageName}"
''
else
''
echo BUILD
mkdir -p "$out"/{bin,lib}
touch "$out/bin/${cfg.wrappedPackageName}"
chmod 755 "$out/bin/${cfg.wrappedPackageName}"
'';
};
chrome-gnome-shell = {
buildScript = ''
mkdir -p $out/lib/mozilla/native-messaging-hosts
touch $out/lib/mozilla/native-messaging-hosts/dummy
'';
};
};
nixpkgs.overlays = [ (_: _: { inherit (realPkgs) mozlz4a; }) ];
}