Switch back to firefox
This commit is contained in:
parent
82dcd1f0bd
commit
8c0260ea5c
6 changed files with 155 additions and 89 deletions
|
@ -2,10 +2,10 @@
|
|||
|
||||
{
|
||||
imports = [
|
||||
./firefox
|
||||
./gnupg
|
||||
./mail
|
||||
./pass
|
||||
./qutebrowser
|
||||
./sound
|
||||
./sway
|
||||
./syncthing
|
||||
|
@ -34,13 +34,13 @@
|
|||
nix.unfreePackages = [ "google-chrome" ];
|
||||
};
|
||||
graphical = {
|
||||
firefox.enable = lib.mkDefault true;
|
||||
gnupg = {
|
||||
enable = lib.mkDefault true;
|
||||
pinentryFlavor = "qt";
|
||||
};
|
||||
mail.enable = lib.mkDefault true;
|
||||
pass.enable = lib.mkDefault true;
|
||||
qutebrowser.enable = lib.mkDefault true;
|
||||
sound.enable = lib.mkDefault true;
|
||||
sway.enable = lib.mkDefault true;
|
||||
syncthing.enable = lib.mkDefault true;
|
||||
|
|
129
modules/graphical/firefox/default.nix
Normal file
129
modules/graphical/firefox/default.nix
Normal file
|
@ -0,0 +1,129 @@
|
|||
{ 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;
|
||||
};
|
||||
})
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,81 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
options.chvp.graphical.qutebrowser.enable = lib.mkOption {
|
||||
default = false;
|
||||
example = true;
|
||||
};
|
||||
|
||||
config = lib.mkIf config.chvp.graphical.qutebrowser.enable {
|
||||
nixpkgs.overlays = [
|
||||
(self: super: {
|
||||
qutebrowser = super.qutebrowser.overrideAttrs (old: {
|
||||
patches = (old.patches or [ ]) ++ [
|
||||
(self.fetchpatch {
|
||||
url = "https://github.com/qutebrowser/qutebrowser/pull/6626.patch";
|
||||
sha256 = "NuKHpjEILEfabLKXVatuNBX1a+6TelIBAauYQKW1zGI=";
|
||||
})
|
||||
];
|
||||
});
|
||||
})
|
||||
];
|
||||
chvp.base.zfs.homeLinks = [
|
||||
{ path = ".config/qutebrowser"; type = "data"; }
|
||||
{ path = ".local/share/qutebrowser"; type = "cache"; }
|
||||
];
|
||||
home-manager.users.charlotte = { ... }: {
|
||||
programs.qutebrowser = {
|
||||
enable = true;
|
||||
loadAutoconfig = true;
|
||||
aliases = {
|
||||
save-to-zotero = "jseval --quiet var d=document,s=d.createElement('script');s.src='https://www.zotero.org/bookmarklet/loader.js';(d.body?d.body:d.documentElement).appendChild(s);void(0);";
|
||||
open-in-temp = "spawn qutebrowser --temp-basedir -s downloads.location.directory /home/charlotte/downloads {url}";
|
||||
hint-open-in-temp = "hint links spawn qutebrowser --temp-basedir -s downloads.location.directory /home/charlotte/downloads {hint-url}";
|
||||
};
|
||||
keyBindings = {
|
||||
normal = {
|
||||
",m" = "hint links spawn umpv {hint-url}";
|
||||
",M" = "hint --rapid links spawn umpv {hint-url}";
|
||||
",p" = "spawn --userscript qute-pass";
|
||||
|
||||
# Toggle all by opening in temporary browser
|
||||
"tt" = "open-in-temp";
|
||||
"tT" = "hint-open-in-temp";
|
||||
|
||||
# Cookie toggle (all removed from defaults)
|
||||
"tCH" = "config-cycle -p -u *://*.{url:host}/* content.cookies.accept no-3rdparty never ;; reload";
|
||||
"tCh" = "config-cycle -p -u *://{url:host}/* content.cookies.accept no-3rdparty never ;; reload";
|
||||
"tCu" = "config-cycle -p -u {url} content.cookies.accept no-3rdparty never ;; reload";
|
||||
"tcH" = "config-cycle -p -t -u *://*.{url:host}/* content.cookies.accept no-3rdparty never ;; reload";
|
||||
"tch" = "config-cycle -p -t -u *://{url:host}/* content.cookies.accept no-3rdparty never ;; reload";
|
||||
"tcu" = "config-cycle -p -t -u {url} content.cookies.accept no-3rdparty never ;; reload";
|
||||
};
|
||||
};
|
||||
searchEngines = {
|
||||
DEFAULT = "https://html.duckduckgo.com/html?q={}";
|
||||
};
|
||||
settings = {
|
||||
auto_save.session = true;
|
||||
confirm_quit = [ "downloads" ];
|
||||
content = {
|
||||
autoplay = false;
|
||||
cookies.accept = "never";
|
||||
default_encoding = "utf-8";
|
||||
dns_prefetch = false;
|
||||
fullscreen.window = true;
|
||||
javascript.enabled = false;
|
||||
geolocation = false;
|
||||
pdfjs = true;
|
||||
};
|
||||
editor.command = [ "${config.chvp.base.emacs.package}/bin/emacsclient" "-c" "+{line}:{column}" "{file}" ];
|
||||
fonts = {
|
||||
default_family = "Fira Code";
|
||||
default_size = "9pt";
|
||||
};
|
||||
url.default_page = "about:blank";
|
||||
window.hide_decoration = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -32,11 +32,11 @@
|
|||
"image/jpeg" = [ "org.kde.okular.desktop" ];
|
||||
"application/pdf" = [ "org.kde.okular.desktop" ];
|
||||
|
||||
"text/html" = [ "org.qutebrowser.qutebrowser.desktop" ];
|
||||
"x-scheme-handler/about" = [ "org.qutebrowser.qutebrowser.desktop" ];
|
||||
"x-scheme-handler/http" = [ "org.qutebrowser.qutebrowser.desktop" ];
|
||||
"x-scheme-handler/https" = [ "org.qutebrowser.qutebrowser.desktop" ];
|
||||
"x-scheme-handler/unknown" = [ "org.qutebrowser.qutebrowser.desktop" ];
|
||||
"text/html" = [ "firefox.desktop" ];
|
||||
"x-scheme-handler/about" = [ "firefox.desktop" ];
|
||||
"x-scheme-handler/http" = [ "firefox.desktop" ];
|
||||
"x-scheme-handler/https" = [ "firefox.desktop" ];
|
||||
"x-scheme-handler/unknown" = [ "firefox.desktop" ];
|
||||
|
||||
"x-scheme-handler/msteams" = [ "teams.desktop" ];
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue