Switch to qutebrowser
This commit is contained in:
parent
93a25ba89a
commit
110481af59
12 changed files with 63 additions and 55 deletions
12
flake.lock
generated
12
flake.lock
generated
|
@ -42,11 +42,11 @@
|
||||||
},
|
},
|
||||||
"emacs-overlay": {
|
"emacs-overlay": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1627479923,
|
"lastModified": 1627492758,
|
||||||
"narHash": "sha256-+a9mSSyGSWnx/iC5J8Q9E3VlgUvvTDLI5NU14W6L/+A=",
|
"narHash": "sha256-F0MvuI2klvuJHctBxzptT2jXcTO8QydkyzmeXw7HiBI=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "0fce209cb26c7f56090406058065081a3cddc76a",
|
"rev": "ddb0d59fb57b0f274a2a61881fbbad10ab79ee4c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -77,11 +77,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1627422633,
|
"lastModified": 1627501942,
|
||||||
"narHash": "sha256-9UvA3wn0xap6WLjhE7+90JwCD+PNj630qt721XRC3TQ=",
|
"narHash": "sha256-rG2PUTgzmXvf/fSDCWKhlRwZjZs1/0TySC5eYHVJrmg=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "ae8cb242f2e450c525274732af58b3050399f5bd",
|
"rev": "2272fc312d5dc477e70816d94e550d08729b307b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -35,7 +35,7 @@
|
||||||
programs = {
|
programs = {
|
||||||
calibre.enable = false;
|
calibre.enable = false;
|
||||||
deluge.enable = true;
|
deluge.enable = true;
|
||||||
dropbox.enable = true;
|
dropbox.enable = false;
|
||||||
eid.enable = true;
|
eid.enable = true;
|
||||||
hledger.enable = true;
|
hledger.enable = true;
|
||||||
obs.enable = true;
|
obs.enable = true;
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./firefox
|
|
||||||
./gnupg
|
./gnupg
|
||||||
./mail
|
./mail
|
||||||
./pass
|
./pass
|
||||||
|
./qutebrowser
|
||||||
./sound
|
./sound
|
||||||
./sway
|
./sway
|
||||||
./syncthing
|
./syncthing
|
||||||
|
@ -34,13 +34,13 @@
|
||||||
nix.unfreePackages = [ "google-chrome" ];
|
nix.unfreePackages = [ "google-chrome" ];
|
||||||
};
|
};
|
||||||
graphical = {
|
graphical = {
|
||||||
firefox.enable = lib.mkDefault true;
|
|
||||||
gnupg = {
|
gnupg = {
|
||||||
enable = lib.mkDefault true;
|
enable = lib.mkDefault true;
|
||||||
pinentryFlavor = "qt";
|
pinentryFlavor = "qt";
|
||||||
};
|
};
|
||||||
mail.enable = lib.mkDefault true;
|
mail.enable = lib.mkDefault true;
|
||||||
pass.enable = lib.mkDefault true;
|
pass.enable = lib.mkDefault true;
|
||||||
|
qutebrowser.enable = lib.mkDefault true;
|
||||||
sound.enable = lib.mkDefault true;
|
sound.enable = lib.mkDefault true;
|
||||||
sway.enable = lib.mkDefault true;
|
sway.enable = lib.mkDefault true;
|
||||||
syncthing.enable = lib.mkDefault true;
|
syncthing.enable = lib.mkDefault true;
|
||||||
|
@ -56,7 +56,6 @@
|
||||||
mpv
|
mpv
|
||||||
okular
|
okular
|
||||||
ranger
|
ranger
|
||||||
ungoogled-chromium
|
|
||||||
youtube-dl
|
youtube-dl
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,19 +0,0 @@
|
||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
options.chvp.graphical.firefox.enable = lib.mkOption {
|
|
||||||
default = false;
|
|
||||||
example = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
config = lib.mkIf config.chvp.graphical.firefox.enable {
|
|
||||||
chvp.base.zfs.homeLinks = [
|
|
||||||
{ path = ".cache/mozilla"; type = "cache"; }
|
|
||||||
{ path = ".mozilla"; type = "data"; }
|
|
||||||
];
|
|
||||||
|
|
||||||
home-manager.users.charlotte = { ... }: {
|
|
||||||
home.packages = with pkgs; [ firefox ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -289,17 +289,7 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
home = {
|
home.packages = [ pkgs.khal pkgs.khard ];
|
||||||
packages = [ pkgs.khal pkgs.khard ];
|
|
||||||
file.".mailcap".text = ''
|
|
||||||
text/html; ${pkgs.firefox}/bin/firefox %s ; nametemplate=%s.html; needsterminal
|
|
||||||
text/html; ${pkgs.w3m}/bin/w3m -dump -o display_link_number=1 -o document_charset=%{charset} %s ; copiousoutput; nametemplate=%s.html
|
|
||||||
text/calendar; ${pkgs.khal}/bin/khal import %s;
|
|
||||||
application/pdf; ${pkgs.okular}/bin/okular %s
|
|
||||||
image/png; ${pkgs.okular}/bin/okular %s
|
|
||||||
image/jpeg; ${pkgs.okular}/bin/okular %s
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
xdg.configFile = {
|
xdg.configFile = {
|
||||||
"khal/config".text = toRecursiveINI {
|
"khal/config".text = toRecursiveINI {
|
||||||
calendars = {
|
calendars = {
|
||||||
|
|
|
@ -9,7 +9,6 @@
|
||||||
config = lib.mkIf config.chvp.graphical.pass.enable {
|
config = lib.mkIf config.chvp.graphical.pass.enable {
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
(self: super: {
|
(self: super: {
|
||||||
firefox = super.firefox.override { extraNativeMessagingHosts = [ self.passff-host ]; };
|
|
||||||
pass = (super.pass.override { pass = super.pass-wayland; }).withExtensions (ext: [ ext.pass-otp ]);
|
pass = (super.pass.override { pass = super.pass-wayland; }).withExtensions (ext: [ ext.pass-otp ]);
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
42
modules/graphical/qutebrowser/default.nix
Normal file
42
modules/graphical/qutebrowser/default.nix
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
options.chvp.graphical.qutebrowser.enable = lib.mkOption {
|
||||||
|
default = false;
|
||||||
|
example = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.chvp.graphical.qutebrowser.enable {
|
||||||
|
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);";
|
||||||
|
};
|
||||||
|
keyBindings = {
|
||||||
|
normal = {
|
||||||
|
",m" = "hint links spawn umpv {hint-url}";
|
||||||
|
",M" = "hint --rapid links spawn umpv {hint-url}";
|
||||||
|
",p" = "spawn --userscript qute-pass";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
settings = {
|
||||||
|
auto_save.session = true;
|
||||||
|
confirm_quit = [ "downloads" ];
|
||||||
|
content = {
|
||||||
|
autoplay = false;
|
||||||
|
cookies.accept = "no-3rdparty";
|
||||||
|
default_encoding = "utf-8";
|
||||||
|
dns_prefetch = false;
|
||||||
|
geolocation = false;
|
||||||
|
pdfjs = true;
|
||||||
|
};
|
||||||
|
editor.command = [ "${config.chvp.base.emacs.package}/bin/emacsclient" "-c" "+{line}:{column}" "{file}" ];
|
||||||
|
url.default_page = "about:blank";
|
||||||
|
window.hide_decoration = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -149,7 +149,7 @@ in
|
||||||
workspace 9 output DP-3 DP-4 DP-5 HDMI-A-1 eDP-1
|
workspace 9 output DP-3 DP-4 DP-5 HDMI-A-1 eDP-1
|
||||||
|
|
||||||
workspace 1
|
workspace 1
|
||||||
exec ${pkgs.firefox}/bin/firefox
|
exec ${pkgs.qutebrowser}/bin/qutebrowser
|
||||||
|
|
||||||
no_focus [title="Microsoft Teams Notification"]
|
no_focus [title="Microsoft Teams Notification"]
|
||||||
|
|
||||||
|
|
|
@ -32,11 +32,11 @@
|
||||||
"image/jpeg" = [ "org.kde.okular.desktop" ];
|
"image/jpeg" = [ "org.kde.okular.desktop" ];
|
||||||
"application/pdf" = [ "org.kde.okular.desktop" ];
|
"application/pdf" = [ "org.kde.okular.desktop" ];
|
||||||
|
|
||||||
"text/html" = [ "firefox.desktop" ];
|
"text/html" = [ "qutebrowser.desktop" ];
|
||||||
"x-scheme-handler/about" = [ "firefox.desktop" ];
|
"x-scheme-handler/about" = [ "qutebrowser.desktop" ];
|
||||||
"x-scheme-handler/http" = [ "firefox.desktop" ];
|
"x-scheme-handler/http" = [ "qutebrowser.desktop" ];
|
||||||
"x-scheme-handler/https" = [ "firefox.desktop" ];
|
"x-scheme-handler/https" = [ "qutebrowser.desktop" ];
|
||||||
"x-scheme-handler/unknown" = [ "firefox.desktop" ];
|
"x-scheme-handler/unknown" = [ "qutebrowser.desktop" ];
|
||||||
|
|
||||||
"x-scheme-handler/msteams" = [ "teams.desktop" ];
|
"x-scheme-handler/msteams" = [ "teams.desktop" ];
|
||||||
};
|
};
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Avoids a double firefox install, see https://github.com/NixOS/nixpkgs/pull/31772
|
# `firefox-bin` is unfree, and unnecessary
|
||||||
nixpkgs.overlays = [ (self: super: { firefox-bin = self.firefox; }) ];
|
nixpkgs.overlays = [ (self: super: { firefox-bin = self.firefox; }) ];
|
||||||
|
|
||||||
home-manager.users.charlotte = { pkgs, ... }: {
|
home-manager.users.charlotte = { pkgs, ... }: {
|
||||||
|
|
|
@ -8,11 +8,6 @@
|
||||||
|
|
||||||
config = lib.mkIf config.chvp.programs.eid.enable {
|
config = lib.mkIf config.chvp.programs.eid.enable {
|
||||||
environment.systemPackages = [ pkgs.eid-mw ];
|
environment.systemPackages = [ pkgs.eid-mw ];
|
||||||
nixpkgs.overlays = [
|
|
||||||
(self: super: {
|
|
||||||
firefox = super.firefox.override { pkcs11Modules = [ self.eid-mw ]; };
|
|
||||||
})
|
|
||||||
];
|
|
||||||
services.pcscd = {
|
services.pcscd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
plugins = [ pkgs.ccid ];
|
plugins = [ pkgs.ccid ];
|
||||||
|
|
|
@ -33,13 +33,15 @@ in
|
||||||
];
|
];
|
||||||
|
|
||||||
home-manager.users.charlotte = { ... }: {
|
home-manager.users.charlotte = { ... }: {
|
||||||
home.packages = [ (pkgs.haskell.lib.justStaticExecutables (pkgs.haskellPackages.override {
|
home.packages = [
|
||||||
|
(pkgs.haskell.lib.justStaticExecutables (pkgs.haskellPackages.override {
|
||||||
overrides = hself: hsuper: rec {
|
overrides = hself: hsuper: rec {
|
||||||
hledger = hsuper.callCabal2nixWithOptions "hledger" hledger-repo "--subpath hledger" { };
|
hledger = hsuper.callCabal2nixWithOptions "hledger" hledger-repo "--subpath hledger" { };
|
||||||
hledger-lib = hsuper.callCabal2nixWithOptions "hledger-lib" hledger-repo "--subpath hledger-lib" { };
|
hledger-lib = hsuper.callCabal2nixWithOptions "hledger-lib" hledger-repo "--subpath hledger-lib" { };
|
||||||
doctest = hsuper.doctest_0_18_1;
|
doctest = hsuper.doctest_0_18_1;
|
||||||
};
|
};
|
||||||
}).hledger) ];
|
}).hledger)
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue