2025-01-11 16:40:28 -08:00
|
|
|
{
|
|
|
|
lib,
|
|
|
|
channels,
|
|
|
|
...
|
|
|
|
}: let
|
|
|
|
buildFirefoxXpiAddon = lib.makeOverridable ({
|
|
|
|
stdenv ? channels.nixpkgs.stdenv,
|
|
|
|
fetchurl ? channels.nixpkgs.fetchurl,
|
|
|
|
pname,
|
|
|
|
version,
|
|
|
|
addonId,
|
|
|
|
url,
|
|
|
|
sha256,
|
|
|
|
meta,
|
|
|
|
...
|
|
|
|
}:
|
|
|
|
stdenv.mkDerivation {
|
|
|
|
name = "${pname}-${version}";
|
|
|
|
|
|
|
|
inherit meta;
|
|
|
|
|
|
|
|
src = fetchurl {inherit url sha256;};
|
|
|
|
|
|
|
|
preferLocalBuild = true;
|
|
|
|
allowSubstitutes = true;
|
|
|
|
|
|
|
|
passthru = {inherit addonId;};
|
|
|
|
|
|
|
|
buildCommand = ''
|
|
|
|
dst="$out/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}"
|
|
|
|
mkdir -p "$dst"
|
|
|
|
install -v -m644 "$src" "$dst/${addonId}.xpi"
|
|
|
|
'';
|
|
|
|
});
|
|
|
|
in
|
|
|
|
final: prev: {
|
2025-01-11 20:11:54 -08:00
|
|
|
marleyos =
|
|
|
|
prev.marleyos
|
|
|
|
// {
|
2025-01-11 20:18:09 -08:00
|
|
|
firefox-addons = import ./addons.nix {
|
|
|
|
inherit buildFirefoxXpiAddon lib;
|
2025-01-11 16:40:28 -08:00
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|