129 lines
4.8 KiB
Nix
129 lines
4.8 KiB
Nix
{ config, lib, pkgs, ... }:
|
|
|
|
let
|
|
ff2mpv = pkgs.stdenv.mkDerivation rec {
|
|
pname = "ff2mpv";
|
|
version = "3.9.1";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "woodruffw";
|
|
repo = "ff2mpv";
|
|
rev = "v${version}";
|
|
sha256 = "j2VjHRhadLaftWRv0zrzOyg/pizD/kvr9RBb2ozjKDw=";
|
|
};
|
|
buildInputs = [ pkgs.python3 ];
|
|
buildPhase = ''
|
|
sed -i "s#/home/william/scripts/ff2mpv#$out/bin/ff2mpv.py#" ff2mpv.json
|
|
'';
|
|
installPhase = ''
|
|
mkdir -p $out/bin
|
|
cp ff2mpv.py $out/bin
|
|
mkdir -p $out/lib/mozilla/native-messaging-hosts
|
|
cp ff2mpv.json $out/lib/mozilla/native-messaging-hosts
|
|
'';
|
|
};
|
|
in
|
|
{
|
|
options.chvp.graphical.firefox.enable = lib.mkEnableOption "firefox";
|
|
|
|
config = lib.mkIf config.chvp.graphical.firefox.enable {
|
|
chvp.base.zfs.homeLinks = [
|
|
{ path = ".mozilla"; type = "data"; }
|
|
{ path = ".cache/mozilla"; type = "cache"; }
|
|
];
|
|
home-manager.users.charlotte = { ... }: {
|
|
programs = {
|
|
browserpass = {
|
|
enable = true;
|
|
browsers = [ "firefox" ];
|
|
};
|
|
firefox = {
|
|
enable = true;
|
|
package = pkgs.firefox.override {
|
|
extraNativeMessagingHosts = [ ff2mpv ];
|
|
pkcs11Modules = [ pkgs.eid-mw ];
|
|
forceWayland = true;
|
|
extraPolicies = {
|
|
DisableFirefoxStudies = true;
|
|
DisablePocket = true;
|
|
DisableTelemetry = true;
|
|
DisableFirefoxAccounts = true;
|
|
FirefoxHome = { Pocket = false; Snippets = false; };
|
|
OfferToSaveLogins = false;
|
|
UserMessaging = { SkipOnboarding = true; ExtensionRecommendations = false; };
|
|
SearchEngines = {
|
|
Default = "DuckDuckGo";
|
|
Add = [
|
|
{
|
|
Name = "DuckDuckGo";
|
|
Description = "DuckDuckGo";
|
|
Alias = "ddg";
|
|
URLTemplate = "https://html.duckduckgo.com/html?q={searchTerms}";
|
|
SuggestURLTemplate = "https://duckduckgo.com/ac/?q={searchTerms}&type=list";
|
|
Method = "GET";
|
|
IconURL = "https://duckduckgo.com/favicon.ico";
|
|
}
|
|
];
|
|
Remove = [ "Google" "Amazon.nl" "Bing" "eBay" "Wikipedia (en)" ];
|
|
};
|
|
};
|
|
};
|
|
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
|
(buildFirefoxXpiAddon rec {
|
|
pname = "belgium-eid";
|
|
version = "1.0.32";
|
|
addonId = "belgiumeid@eid.belgium.be";
|
|
url = "https://addons.mozilla.org/firefox/downloads/file/3736679/eid_belgie-${version}-fx.xpi";
|
|
sha256 = "t2zbE58IuHeAlM91lNX4rbiWLzt5sQq350b1PRdSY7w=";
|
|
meta = with lib; {
|
|
homepage = "https://eid.belgium.be/";
|
|
description = "Use the Belgian electronic identity card (eID) in Firefox";
|
|
license = licenses.lgpl3;
|
|
platforms = platforms.all;
|
|
};
|
|
})
|
|
(buildFirefoxXpiAddon rec {
|
|
pname = "better-tweetdeck";
|
|
version = "4.7.2";
|
|
addonId = "BetterTweetDeck@erambert.me";
|
|
url = "https://addons.mozilla.org/firefox/downloads/file/3897452/better_tweetdeck-${version}-fx.xpi";
|
|
sha256 = "zme93hAAaxIkKg7dO+SVhv1XU7dTzMWZlrd237uZ1zg=";
|
|
meta = with lib; {
|
|
license = licenses.mit;
|
|
platforms = platforms.all;
|
|
};
|
|
})
|
|
browserpass
|
|
decentraleyes
|
|
(buildFirefoxXpiAddon rec {
|
|
pname = "ff2mpv";
|
|
version = "3.9.1";
|
|
addonId = "ff2mpv@yossarian.net";
|
|
url = "https://addons.mozilla.org/firefox/downloads/file/3874208/ff2mpv-${version}-fx.xpi";
|
|
sha256 = "AJO9h2jv/VmqlfShu8q7VqJ7N+bGBtippaODZeCCM6I=";
|
|
meta = with lib; {
|
|
license = licenses.mit;
|
|
platforms = platforms.all;
|
|
};
|
|
})
|
|
https-everywhere
|
|
ublock-origin
|
|
umatrix
|
|
(buildFirefoxXpiAddon rec {
|
|
pname = "zotero-connector";
|
|
version = "5.0.92";
|
|
addonId = "zotero@chnm.gmu.edu";
|
|
url = "https://download.zotero.org/connector/firefox/release/Zotero_Connector-${version}.xpi";
|
|
sha256 = "DfaDjjgJiSGJ0q9ScStAVRN3IcH8HY30K7IssuHZi2A=";
|
|
meta = with lib; {
|
|
homepage = "https://www.zotero.org";
|
|
description = "Save references to Zotero from your web browser";
|
|
license = licenses.agpl3;
|
|
platforms = platforms.all;
|
|
};
|
|
})
|
|
];
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|