368 lines
12 KiB
Nix
368 lines
12 KiB
Nix
_: {
|
||
|
||
programs.qutebrowser = {
|
||
enable = true;
|
||
loadAutoconfig = true;
|
||
settings = {
|
||
|
||
qt.args = [
|
||
"autoplay-policy=user-gesture-required"
|
||
"ignore-gpu-blocklist"
|
||
"enable-accelerated-video-decode"
|
||
"enable-features=VaapiVideoDecoder"
|
||
"enable-features=WebRTCPipeWireCapturer"
|
||
];
|
||
# Try to reduce memury usage
|
||
qt.chromium.low_end_device_mode = "always";
|
||
qt.chromium.process_model = "process-per-site";
|
||
|
||
fonts.default_family = "Fira Code Nerd Font Mono";
|
||
fonts.completion.category = "default_size default_family";
|
||
|
||
tabs.title.format = "{index}:{audio:1} {current_title}";
|
||
tabs.select_on_remove = "last-used";
|
||
colors.webpage.preferred_color_scheme = "dark";
|
||
|
||
#Privacy
|
||
content.canvas_reading = true;
|
||
content.headers.do_not_track = true;
|
||
content.cookies.accept = "no-3rdparty";
|
||
content.geolocation = false;
|
||
content.headers.referer = "same-domain";
|
||
content.blocking.enabled = true;
|
||
content.blocking.method = "both";
|
||
content.blocking.adblock.lists = [
|
||
https://easylist.to/easylist/easylist.txt
|
||
https://easylist.to/easylist/easyprivacy.txt
|
||
https://www.i-dont-care-about-cookies.eu/abp/
|
||
https://secure.fanboy.co.nz/fanboy-cookiemonster.txt
|
||
];
|
||
|
||
content.plugins = false;
|
||
downloads.location.directory = "~/downloads";
|
||
completion.open_categories = [
|
||
"quickmarks"
|
||
"history"
|
||
];
|
||
};
|
||
extraConfig = ''
|
||
c.tabs.padding = { "top":3, "bottom":3, "left":5, "right":5 }
|
||
# Change audio icon
|
||
from qutebrowser.api import message
|
||
try:
|
||
from qutebrowser.mainwindow import tabwidget
|
||
tabwidget.TabWidget.MUTE_STRING = ""
|
||
tabwidget.TabWidget.AUDIBLE_STRING = ""
|
||
except (ImportError, AttributeError) as err:
|
||
message.error(f"Failed to change audible indicators {err}")
|
||
|
||
# base16-qutebrowser (https://github.com/theova/base16-qutebrowser)
|
||
# Scheme name: Default Dark
|
||
# Scheme author: Chris Kempson (http://chriskempson.com)
|
||
# Template author: theova and Daniel Mulford
|
||
# Commentary: Tinted Theming: (https://github.com/tinted-theming)
|
||
|
||
base00 = "#181818"
|
||
base01 = "#282828"
|
||
base02 = "#383838"
|
||
base03 = "#585858"
|
||
base04 = "#b8b8b8"
|
||
base05 = "#d8d8d8"
|
||
base06 = "#e8e8e8"
|
||
base07 = "#f8f8f8"
|
||
base08 = "#ab4642"
|
||
base09 = "#dc9656"
|
||
base0A = "#f7ca88"
|
||
base0B = "#a1b56c"
|
||
base0C = "#86c1b9"
|
||
base0D = "#7cafc2"
|
||
base0E = "#ba8baf"
|
||
base0F = "#a16946"
|
||
|
||
# set qutebrowser colors
|
||
|
||
# Text color of the completion widget. May be a single color to use for
|
||
# all columns or a list of three colors, one for each column.
|
||
c.colors.completion.fg = base05
|
||
# Background color of the completion widget for odd rows.
|
||
c.colors.completion.odd.bg = base00
|
||
|
||
# Background color of the completion widget for even rows.
|
||
c.colors.completion.even.bg = base00
|
||
|
||
# Foreground color of completion widget category headers.
|
||
c.colors.completion.category.fg = base0D
|
||
|
||
# Background color of the completion widget category headers.
|
||
c.colors.completion.category.bg = base00
|
||
|
||
# Top border color of the completion widget category headers.
|
||
c.colors.completion.category.border.top = base00
|
||
|
||
# Bottom border color of the completion widget category headers.
|
||
c.colors.completion.category.border.bottom = base00
|
||
|
||
# Foreground color of the selected completion item.
|
||
c.colors.completion.item.selected.fg = base05
|
||
|
||
# Background color of the selected completion item.
|
||
c.colors.completion.item.selected.bg = base02
|
||
|
||
# Top border color of the selected completion item.
|
||
c.colors.completion.item.selected.border.top = base02
|
||
|
||
# Bottom border color of the selected completion item.
|
||
c.colors.completion.item.selected.border.bottom = base02
|
||
|
||
# Foreground color of the matched text in the selected completion item.
|
||
c.colors.completion.item.selected.match.fg = base05
|
||
|
||
# Foreground color of the matched text in the completion.
|
||
c.colors.completion.match.fg = base09
|
||
|
||
# Color of the scrollbar handle in the completion view.
|
||
c.colors.completion.scrollbar.fg = base05
|
||
|
||
# Color of the scrollbar in the completion view.
|
||
c.colors.completion.scrollbar.bg = base00
|
||
|
||
# Background color of disabled items in the context menu.
|
||
c.colors.contextmenu.disabled.bg = base01
|
||
|
||
# Foreground color of disabled items in the context menu.
|
||
c.colors.contextmenu.disabled.fg = base04
|
||
|
||
# Background color of the context menu. If set to null, the Qt default is used.
|
||
c.colors.contextmenu.menu.bg = base00
|
||
|
||
# Foreground color of the context menu. If set to null, the Qt default is used.
|
||
c.colors.contextmenu.menu.fg = base05
|
||
|
||
# Background color of the context menu’s selected item. If set to null, the Qt default is used.
|
||
c.colors.contextmenu.selected.bg = base02
|
||
|
||
#Foreground color of the context menu’s selected item. If set to null, the Qt default is used.
|
||
c.colors.contextmenu.selected.fg = base05
|
||
|
||
# Background color for the download bar.
|
||
c.colors.downloads.bar.bg = base00
|
||
|
||
# Color gradient start for download text.
|
||
c.colors.downloads.start.fg = base00
|
||
|
||
# Color gradient start for download backgrounds.
|
||
c.colors.downloads.start.bg = base0D
|
||
|
||
# Color gradient end for download text.
|
||
c.colors.downloads.stop.fg = base00
|
||
|
||
# Color gradient stop for download backgrounds.
|
||
c.colors.downloads.stop.bg = base0C
|
||
|
||
# Foreground color for downloads with errors.
|
||
c.colors.downloads.error.fg = base08
|
||
|
||
# Font color for hints.
|
||
c.colors.hints.fg = base00
|
||
|
||
# Background color for hints. Note that you can use a `rgba(...)` value
|
||
# for transparency.
|
||
c.colors.hints.bg = base0A
|
||
|
||
# Font color for the matched part of hints.
|
||
c.colors.hints.match.fg = base05
|
||
|
||
# Text color for the keyhint widget.
|
||
c.colors.keyhint.fg = base05
|
||
|
||
# Highlight color for keys to complete the current keychain.
|
||
c.colors.keyhint.suffix.fg = base05
|
||
|
||
# Background color of the keyhint widget.
|
||
c.colors.keyhint.bg = base00
|
||
|
||
# Foreground color of an error message.
|
||
c.colors.messages.error.fg = base00
|
||
|
||
# Background color of an error message.
|
||
c.colors.messages.error.bg = base08
|
||
|
||
# Border color of an error message.
|
||
c.colors.messages.error.border = base08
|
||
|
||
# Foreground color of a warning message.
|
||
c.colors.messages.warning.fg = base00
|
||
|
||
# Background color of a warning message.
|
||
c.colors.messages.warning.bg = base0E
|
||
|
||
# Border color of a warning message.
|
||
c.colors.messages.warning.border = base0E
|
||
|
||
# Foreground color of an info message.
|
||
c.colors.messages.info.fg = base05
|
||
|
||
# Background color of an info message.
|
||
c.colors.messages.info.bg = base00
|
||
|
||
# Border color of an info message.
|
||
c.colors.messages.info.border = base00
|
||
|
||
# Foreground color for prompts.
|
||
c.colors.prompts.fg = base05
|
||
|
||
# Border used around UI elements in prompts.
|
||
c.colors.prompts.border = base00
|
||
|
||
# Background color for prompts.
|
||
c.colors.prompts.bg = base00
|
||
|
||
# Background color for the selected item in filename prompts.
|
||
c.colors.prompts.selected.bg = base02
|
||
|
||
# Foreground color for the selected item in filename prompts.
|
||
c.colors.prompts.selected.fg = base05
|
||
|
||
# Foreground color of the statusbar.
|
||
c.colors.statusbar.normal.fg = base05
|
||
|
||
# Background color of the statusbar.
|
||
c.colors.statusbar.normal.bg = base00
|
||
|
||
# Foreground color of the statusbar in insert mode.
|
||
c.colors.statusbar.insert.fg = base0C
|
||
|
||
# Background color of the statusbar in insert mode.
|
||
c.colors.statusbar.insert.bg = base00
|
||
|
||
# Foreground color of the statusbar in passthrough mode.
|
||
c.colors.statusbar.passthrough.fg = base0A
|
||
|
||
# Background color of the statusbar in passthrough mode.
|
||
c.colors.statusbar.passthrough.bg = base00
|
||
|
||
# Foreground color of the statusbar in private browsing mode.
|
||
c.colors.statusbar.private.fg = base0E
|
||
|
||
# Background color of the statusbar in private browsing mode.
|
||
c.colors.statusbar.private.bg = base00
|
||
|
||
# Foreground color of the statusbar in command mode.
|
||
c.colors.statusbar.command.fg = base04
|
||
|
||
# Background color of the statusbar in command mode.
|
||
c.colors.statusbar.command.bg = base01
|
||
|
||
# Foreground color of the statusbar in private browsing + command mode.
|
||
c.colors.statusbar.command.private.fg = base0E
|
||
|
||
# Background color of the statusbar in private browsing + command mode.
|
||
c.colors.statusbar.command.private.bg = base01
|
||
|
||
# Foreground color of the statusbar in caret mode.
|
||
c.colors.statusbar.caret.fg = base0D
|
||
|
||
# Background color of the statusbar in caret mode.
|
||
c.colors.statusbar.caret.bg = base00
|
||
|
||
# Foreground color of the statusbar in caret mode with a selection.
|
||
c.colors.statusbar.caret.selection.fg = base0D
|
||
|
||
# Background color of the statusbar in caret mode with a selection.
|
||
c.colors.statusbar.caret.selection.bg = base00
|
||
|
||
# Background color of the progress bar.
|
||
c.colors.statusbar.progress.bg = base0D
|
||
|
||
# Default foreground color of the URL in the statusbar.
|
||
c.colors.statusbar.url.fg = base05
|
||
|
||
# Foreground color of the URL in the statusbar on error.
|
||
c.colors.statusbar.url.error.fg = base08
|
||
|
||
# Foreground color of the URL in the statusbar for hovered links.
|
||
c.colors.statusbar.url.hover.fg = base09
|
||
|
||
# Foreground color of the URL in the statusbar on successful load
|
||
# (http).
|
||
c.colors.statusbar.url.success.http.fg = base0B
|
||
|
||
# Foreground color of the URL in the statusbar on successful load
|
||
# (https).
|
||
c.colors.statusbar.url.success.https.fg = base0B
|
||
|
||
# Foreground color of the URL in the statusbar when there's a warning.
|
||
c.colors.statusbar.url.warn.fg = base0E
|
||
|
||
# Background color of the tab bar.
|
||
c.colors.tabs.bar.bg = base00
|
||
|
||
# Color gradient start for the tab indicator.
|
||
c.colors.tabs.indicator.start = base0D
|
||
|
||
# Color gradient end for the tab indicator.
|
||
c.colors.tabs.indicator.stop = base0C
|
||
|
||
# Color for the tab indicator on errors.
|
||
c.colors.tabs.indicator.error = base08
|
||
|
||
# Foreground color of unselected odd tabs.
|
||
c.colors.tabs.odd.fg = base05
|
||
|
||
# Background color of unselected odd tabs.
|
||
c.colors.tabs.odd.bg = base00
|
||
|
||
# Foreground color of unselected even tabs.
|
||
c.colors.tabs.even.fg = base05
|
||
|
||
# Background color of unselected even tabs.
|
||
c.colors.tabs.even.bg = base00
|
||
|
||
# Background color of pinned unselected even tabs.
|
||
c.colors.tabs.pinned.even.bg = base0B
|
||
|
||
# Foreground color of pinned unselected even tabs.
|
||
c.colors.tabs.pinned.even.fg = base00
|
||
|
||
# Background color of pinned unselected odd tabs.
|
||
c.colors.tabs.pinned.odd.bg = base0B
|
||
|
||
# Foreground color of pinned unselected odd tabs.
|
||
c.colors.tabs.pinned.odd.fg = base00
|
||
|
||
# Background color of pinned selected even tabs.
|
||
c.colors.tabs.pinned.selected.even.bg = base02
|
||
|
||
# Foreground color of pinned selected even tabs.
|
||
c.colors.tabs.pinned.selected.even.fg = base05
|
||
|
||
# Background color of pinned selected odd tabs.
|
||
c.colors.tabs.pinned.selected.odd.bg = base02
|
||
|
||
# Foreground color of pinned selected odd tabs.
|
||
c.colors.tabs.pinned.selected.odd.fg = base05
|
||
|
||
# Foreground color of selected odd tabs.
|
||
c.colors.tabs.selected.odd.fg = base05
|
||
|
||
# Background color of selected odd tabs.
|
||
c.colors.tabs.selected.odd.bg = base02
|
||
|
||
# Foreground color of selected even tabs.
|
||
c.colors.tabs.selected.even.fg = base05
|
||
|
||
# Background color of selected even tabs.
|
||
c.colors.tabs.selected.even.bg = base02
|
||
|
||
# Background color for webpages if unset (or empty to use the theme's
|
||
# color).
|
||
c.colors.webpage.bg = base00
|
||
'';
|
||
keyBindings = {
|
||
normal = {
|
||
",M" = "hint links spawn mpv {hint-url}";
|
||
",m" = "spawn mpv {url}";
|
||
};
|
||
};
|
||
};
|
||
}
|