{ stdenv, config, wrapGAppsHook3, autoPatchelfHook, patchelfUnstable, adwaita-icon-theme, dbus-glib, libXtst, curl, gtk3, alsa-lib, libva, pciutils, pipewire, writeText, fetchurl, version, url, hash, ... }: let policies = { DisableAppUpdate = true; }; in # policiesJson = writeText "firefox-policies.json" (builtins.toJSON { inherit policies; }); stdenv.mkDerivation (finalAttrs: { inherit version; pname = "betterbird-unwrapped"; src = fetchurl { inherit url hash; }; nativeBuildInputs = [ wrapGAppsHook3 autoPatchelfHook patchelfUnstable ]; buildInputs = [ gtk3 alsa-lib adwaita-icon-theme dbus-glib libXtst ]; runtimeDependencies = [ curl libva.out pciutils ]; appendRunpaths = [ "${pipewire}/lib" ]; installPhase = '' mkdir -p "$prefix/lib/betterbird-${version}" cp -r * "$prefix/lib/betterbird-${version}" mkdir -p $out/bin ln -s "$prefix/lib/betterbird-${version}/betterbird" $out/bin/betterbird ''; # mkdir -p "$out/lib/betterbird-${version}/distribution" # ln -s ${policiesJson} "$out/lib/betterbird-${version}/distribution/policies.json" patchelfFlags = [ "--no-clobber-old-sections" ]; meta = { mainProgram = "betterbird"; description = '' Betterbird is a fine-tuned version of Mozilla Thunderbird, Thunderbird on steroids, if you will. ''; }; passthru = { inherit gtk3; libName = "betterbird-${version}"; binaryName = finalAttrs.meta.mainProgram; gssSupport = true; ffmpegSupport = true; }; })