marleyos/overlays/firefox-addons/default.nix

157 lines
5.4 KiB
Nix
Raw Normal View History

{
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: {
marleys-firefox-addons = {
"axe-devtools" = buildFirefoxXpiAddon {
pname = "axe-devtools";
version = "4.94.1";
addonId = "@axe-firefox-devtools";
url = "https://addons.mozilla.org/firefox/downloads/file/4374713/axe_devtools-4.94.1.xpi";
sha256 = "92e8152da2b07303b1efd87c5a5b45e3ec847bf4760016809b5f5714a478f50b";
meta = with lib; {
homepage = "https://www.deque.com/";
description = "Add accessibility auditing to the Firefox Developer Tools";
license = {
shortName = "axe-devtools";
fullName = "Custom License for axe DevTools";
url = "https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/license/";
free = false;
};
mozPermissions = [
"tabs"
"storage"
"activeTab"
"devtools"
"<all_urls>"
];
platforms = platforms.all;
};
};
"clockwork-dev-tools" = buildFirefoxXpiAddon {
pname = "clockwork-dev-tools";
version = "5.3.1";
addonId = "{c9b5d073-47b4-40df-b9b9-d80601a5ab76}";
url = "https://addons.mozilla.org/firefox/downloads/file/4391092/clockwork_dev_tools-5.3.1.xpi";
sha256 = "56b372b0e3fe1c8aa6ec0e82e882ab7b922e1bdd04f4435a1c7812ae674776f0";
meta = with lib; {
homepage = "https://underground.works/clockwork";
description = "php dev tools integrated to your browser";
license = licenses.mit;
mozPermissions = [
"cookies"
"storage"
"tabs"
"webNavigation"
"webRequest"
"http://*/"
"https://*/"
"devtools"
];
platforms = platforms.all;
};
};
"medium-parser" = buildFirefoxXpiAddon {
pname = "medium-parser";
version = "1.5.5";
addonId = "medium-parser@example.com";
url = "https://addons.mozilla.org/firefox/downloads/file/4283826/medium_parser-1.5.5.xpi";
sha256 = "4aa61952269c2eb48c53d8355f94c17abc27d358c20738970d96d8d9f14b07b6";
meta = with lib; {
homepage = "https://github.com/Xatta-Trone/medium-parser-extension";
description = "Unlocks the whole medium article on the go.";
license = licenses.mpl20;
mozPermissions = ["storage" "contextMenus" "<all_urls>"];
platforms = platforms.all;
};
};
"readwise" = buildFirefoxXpiAddon {
pname = "readwise";
version = "2.8.0";
addonId = "{f7619bc3-ed22-44a3-83ad-e79a78416737}";
url = "https://addons.mozilla.org/firefox/downloads/file/3732256/readwise-2.8.0.xpi";
sha256 = "a1bb894e3af1ed0d80c80af6bdafca930ecd0fbc95e409d20f74943b7076d106";
meta = with lib; {
homepage = "https://readwise.io";
description = "Don't let your kindle highlights disappear. Sync them with Readwise and then review them daily.";
license = {
shortName = "allrightsreserved";
fullName = "All Rights Reserved";
url = "https://en.wikipedia.org/w/index.php?title=All_rights_reserved&oldid=1101263186";
free = false;
};
mozPermissions = [
"notifications"
"cookies"
"storage"
"alarms"
"contextMenus"
"*://read.amazon.com/*"
"*://*.readwise.io/*"
];
platforms = platforms.all;
};
};
"readwise-highlighter" = buildFirefoxXpiAddon {
pname = "readwise-highlighter";
version = "0.15.23";
addonId = "team@readwise.io";
url = "https://addons.mozilla.org/firefox/downloads/file/4222692/readwise_highlighter-0.15.23.xpi";
sha256 = "260eb678acbbb37b5bb34211ff31ce4b32e94158fefb04d46323d4e0c5018a94";
meta = with lib; {
homepage = "https://read.readwise.io";
description = "The Readwise Highlighter is the official browser extension made by and maintained by the Readwise team that saves articles to your Reader account and enables you to optionally highlight the open web.";
license = {
shortName = "allrightsreserved";
fullName = "All Rights Reserved";
url = "https://en.wikipedia.org/w/index.php?title=All_rights_reserved&oldid=1101263186";
free = false;
};
mozPermissions = [
"<all_urls>"
"activeTab"
"background"
"contextMenus"
"notifications"
"storage"
"tabs"
"unlimitedStorage"
];
platforms = platforms.all;
};
};
};
}