add qutebrowser
This commit is contained in:
parent
404a21c9b1
commit
1e3ad87cd2
4 changed files with 185 additions and 2 deletions
|
@ -1,3 +1,4 @@
|
||||||
require("core.keymaps")
|
require("core.keymaps")
|
||||||
require("core.plugins")
|
require("core.plugins")
|
||||||
require("core.plugin_config")
|
require("core.plugin_config")
|
||||||
|
|
||||||
|
|
146
config/qutebrowser/config.py
Normal file
146
config/qutebrowser/config.py
Normal file
|
@ -0,0 +1,146 @@
|
||||||
|
# Autogenerated config.py
|
||||||
|
#
|
||||||
|
# NOTE: config.py is intended for advanced users who are comfortable
|
||||||
|
# with manually migrating the config file on qutebrowser upgrades. If
|
||||||
|
# you prefer, you can also configure qutebrowser using the
|
||||||
|
# :set/:bind/:config-* commands without having to write a config.py
|
||||||
|
# file.
|
||||||
|
#
|
||||||
|
# Documentation:
|
||||||
|
# qute://help/configuring.html
|
||||||
|
# qute://help/settings.html
|
||||||
|
|
||||||
|
# Change the argument to True to still load settings configured via autoconfig.yml
|
||||||
|
config.load_autoconfig(False)
|
||||||
|
|
||||||
|
# Which cookies to accept. With QtWebEngine, this setting also controls
|
||||||
|
# other features with tracking capabilities similar to those of cookies;
|
||||||
|
# including IndexedDB, DOM storage, filesystem API, service workers, and
|
||||||
|
# AppCache. Note that with QtWebKit, only `all` and `never` are
|
||||||
|
# supported as per-domain values. Setting `no-3rdparty` or `no-
|
||||||
|
# unknown-3rdparty` per-domain on QtWebKit will have the same effect as
|
||||||
|
# `all`. If this setting is used with URL patterns, the pattern gets
|
||||||
|
# applied to the origin/first party URL of the page making the request,
|
||||||
|
# not the request URL. With QtWebEngine 5.15.0+, paths will be stripped
|
||||||
|
# from URLs, so URL patterns using paths will not match. With
|
||||||
|
# QtWebEngine 5.15.2+, subdomains are additionally stripped as well, so
|
||||||
|
# you will typically need to set this setting for `example.com` when the
|
||||||
|
# cookie is set on `somesubdomain.example.com` for it to work properly.
|
||||||
|
# To debug issues with this setting, start qutebrowser with `--debug
|
||||||
|
# --logfilter network --debug-flag log-cookies` which will show all
|
||||||
|
# cookies being set.
|
||||||
|
# Type: String
|
||||||
|
# Valid values:
|
||||||
|
# - all: Accept all cookies.
|
||||||
|
# - no-3rdparty: Accept cookies from the same origin only. This is known to break some sites, such as GMail.
|
||||||
|
# - no-unknown-3rdparty: Accept cookies from the same origin only, unless a cookie is already set for the domain. On QtWebEngine, this is the same as no-3rdparty.
|
||||||
|
# - never: Don't accept cookies at all.
|
||||||
|
config.set('content.cookies.accept', 'all', 'chrome-devtools://*')
|
||||||
|
|
||||||
|
# Which cookies to accept. With QtWebEngine, this setting also controls
|
||||||
|
# other features with tracking capabilities similar to those of cookies;
|
||||||
|
# including IndexedDB, DOM storage, filesystem API, service workers, and
|
||||||
|
# AppCache. Note that with QtWebKit, only `all` and `never` are
|
||||||
|
# supported as per-domain values. Setting `no-3rdparty` or `no-
|
||||||
|
# unknown-3rdparty` per-domain on QtWebKit will have the same effect as
|
||||||
|
# `all`. If this setting is used with URL patterns, the pattern gets
|
||||||
|
# applied to the origin/first party URL of the page making the request,
|
||||||
|
# not the request URL. With QtWebEngine 5.15.0+, paths will be stripped
|
||||||
|
# from URLs, so URL patterns using paths will not match. With
|
||||||
|
# QtWebEngine 5.15.2+, subdomains are additionally stripped as well, so
|
||||||
|
# you will typically need to set this setting for `example.com` when the
|
||||||
|
# cookie is set on `somesubdomain.example.com` for it to work properly.
|
||||||
|
# To debug issues with this setting, start qutebrowser with `--debug
|
||||||
|
# --logfilter network --debug-flag log-cookies` which will show all
|
||||||
|
# cookies being set.
|
||||||
|
# Type: String
|
||||||
|
# Valid values:
|
||||||
|
# - all: Accept all cookies.
|
||||||
|
# - no-3rdparty: Accept cookies from the same origin only. This is known to break some sites, such as GMail.
|
||||||
|
# - no-unknown-3rdparty: Accept cookies from the same origin only, unless a cookie is already set for the domain. On QtWebEngine, this is the same as no-3rdparty.
|
||||||
|
# - never: Don't accept cookies at all.
|
||||||
|
config.set('content.cookies.accept', 'all', 'devtools://*')
|
||||||
|
|
||||||
|
# Value to send in the `Accept-Language` header. Note that the value
|
||||||
|
# read from JavaScript is always the global value.
|
||||||
|
# Type: String
|
||||||
|
config.set('content.headers.accept_language', '', 'https://matchmaker.krunker.io/*')
|
||||||
|
|
||||||
|
# User agent to send. The following placeholders are defined: *
|
||||||
|
# `{os_info}`: Something like "X11; Linux x86_64". * `{webkit_version}`:
|
||||||
|
# The underlying WebKit version (set to a fixed value with
|
||||||
|
# QtWebEngine). * `{qt_key}`: "Qt" for QtWebKit, "QtWebEngine" for
|
||||||
|
# QtWebEngine. * `{qt_version}`: The underlying Qt version. *
|
||||||
|
# `{upstream_browser_key}`: "Version" for QtWebKit, "Chrome" for
|
||||||
|
# QtWebEngine. * `{upstream_browser_version}`: The corresponding
|
||||||
|
# Safari/Chrome version. * `{qutebrowser_version}`: The currently
|
||||||
|
# running qutebrowser version. The default value is equal to the
|
||||||
|
# unchanged user agent of QtWebKit/QtWebEngine. Note that the value
|
||||||
|
# read from JavaScript is always the global value. With QtWebEngine
|
||||||
|
# between 5.12 and 5.14 (inclusive), changing the value exposed to
|
||||||
|
# JavaScript requires a restart.
|
||||||
|
# Type: FormatString
|
||||||
|
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}) AppleWebKit/{webkit_version} (KHTML, like Gecko) {upstream_browser_key}/{upstream_browser_version} Safari/{webkit_version}', 'https://web.whatsapp.com/')
|
||||||
|
|
||||||
|
# User agent to send. The following placeholders are defined: *
|
||||||
|
# `{os_info}`: Something like "X11; Linux x86_64". * `{webkit_version}`:
|
||||||
|
# The underlying WebKit version (set to a fixed value with
|
||||||
|
# QtWebEngine). * `{qt_key}`: "Qt" for QtWebKit, "QtWebEngine" for
|
||||||
|
# QtWebEngine. * `{qt_version}`: The underlying Qt version. *
|
||||||
|
# `{upstream_browser_key}`: "Version" for QtWebKit, "Chrome" for
|
||||||
|
# QtWebEngine. * `{upstream_browser_version}`: The corresponding
|
||||||
|
# Safari/Chrome version. * `{qutebrowser_version}`: The currently
|
||||||
|
# running qutebrowser version. The default value is equal to the
|
||||||
|
# unchanged user agent of QtWebKit/QtWebEngine. Note that the value
|
||||||
|
# read from JavaScript is always the global value. With QtWebEngine
|
||||||
|
# between 5.12 and 5.14 (inclusive), changing the value exposed to
|
||||||
|
# JavaScript requires a restart.
|
||||||
|
# Type: FormatString
|
||||||
|
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}; rv:90.0) Gecko/20100101 Firefox/90.0', 'https://accounts.google.com/*')
|
||||||
|
|
||||||
|
|
||||||
|
# SEarch Engine
|
||||||
|
c.url.searchengines = {
|
||||||
|
'DEFAULT': 'https://duckduckgo.com/?ia=web&q={}',
|
||||||
|
'nixpkgs': 'https://search.nixos.org/packages?query={}'
|
||||||
|
}
|
||||||
|
|
||||||
|
# User agent to send. The following placeholders are defined: *
|
||||||
|
# `{os_info}`: Something like "X11; Linux x86_64". * `{webkit_version}`:
|
||||||
|
# The underlying WebKit version (set to a fixed value with
|
||||||
|
# QtWebEngine). * `{qt_key}`: "Qt" for QtWebKit, "QtWebEngine" for
|
||||||
|
# QtWebEngine. * `{qt_version}`: The underlying Qt version. *
|
||||||
|
# `{upstream_browser_key}`: "Version" for QtWebKit, "Chrome" for
|
||||||
|
# QtWebEngine. * `{upstream_browser_version}`: The corresponding
|
||||||
|
# Safari/Chrome version. * `{qutebrowser_version}`: The currently
|
||||||
|
# running qutebrowser version. The default value is equal to the
|
||||||
|
# unchanged user agent of QtWebKit/QtWebEngine. Note that the value
|
||||||
|
# read from JavaScript is always the global value. With QtWebEngine
|
||||||
|
# between 5.12 and 5.14 (inclusive), changing the value exposed to
|
||||||
|
# JavaScript requires a restart.
|
||||||
|
# Type: FormatString
|
||||||
|
config.set('content.headers.user_agent', 'Mozilla/5.0 ({os_info}) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99 Safari/537.36', 'https://*.slack.com/*')
|
||||||
|
|
||||||
|
# Load images automatically in web pages.
|
||||||
|
# Type: Bool
|
||||||
|
config.set('content.images', True, 'chrome-devtools://*')
|
||||||
|
|
||||||
|
# Load images automatically in web pages.
|
||||||
|
# Type: Bool
|
||||||
|
config.set('content.images', True, 'devtools://*')
|
||||||
|
|
||||||
|
# Enable JavaScript.
|
||||||
|
# Type: Bool
|
||||||
|
config.set('content.javascript.enabled', True, 'chrome-devtools://*')
|
||||||
|
|
||||||
|
# Enable JavaScript.
|
||||||
|
# Type: Bool
|
||||||
|
config.set('content.javascript.enabled', True, 'devtools://*')
|
||||||
|
|
||||||
|
# Enable JavaScript.
|
||||||
|
# Type: Bool
|
||||||
|
config.set('content.javascript.enabled', True, 'chrome://*/*')
|
||||||
|
|
||||||
|
# Enable JavaScript.
|
||||||
|
# Type: Bool
|
||||||
|
config.set('content.javascript.enabled', True, 'qute://*/*')
|
30
config/qutebrowser/greasemonkey/youtube-adblock.user.js
Normal file
30
config/qutebrowser/greasemonkey/youtube-adblock.user.js
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
// ==UserScript==
|
||||||
|
// @name Auto Skip YouTube Ads
|
||||||
|
// @version 1.1.0
|
||||||
|
// @description Speed up and skip YouTube ads automatically
|
||||||
|
// @author jso8910
|
||||||
|
// @match *://*.youtube.com/*
|
||||||
|
// @exclude *://*.youtube.com/subscribe_embed?*
|
||||||
|
// ==/UserScript==
|
||||||
|
setInterval(() => {
|
||||||
|
const btn = document.querySelector(
|
||||||
|
".videoAdUiSkipButton,.ytp-ad-skip-button"
|
||||||
|
);
|
||||||
|
if (btn) {
|
||||||
|
btn.click();
|
||||||
|
}
|
||||||
|
const ad = [...document.querySelectorAll(".ad-showing")][0];
|
||||||
|
if (ad) {
|
||||||
|
const video = document.querySelector("video");
|
||||||
|
video.muted = true;
|
||||||
|
video.hidden = true;
|
||||||
|
|
||||||
|
// This is not necessarily available right at the start
|
||||||
|
if (video.duration != NaN) {
|
||||||
|
video.currentTime = video.duration;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 16 seems to be the highest rate that works, mostly this isn't needed
|
||||||
|
video.playbackRate = 16;
|
||||||
|
}
|
||||||
|
}, 50);
|
|
@ -1,6 +1,5 @@
|
||||||
# Edit this configuration file to define what should be installed on
|
# Edit this configuration file to define what should be installed on
|
||||||
# your system. Help is available in the configuration.nix(5) man page
|
# your system. Help is available in the configuration.nix(5) man page and in the NixOS manual (accessible by running `nixos-help`).
|
||||||
# and in the NixOS manual (accessible by running `nixos-help`).
|
|
||||||
|
|
||||||
{ config, pkgs, lib, ... }:
|
{ config, pkgs, lib, ... }:
|
||||||
{
|
{
|
||||||
|
@ -217,6 +216,13 @@
|
||||||
kitty = {
|
kitty = {
|
||||||
source = config/kitty;
|
source = config/kitty;
|
||||||
};
|
};
|
||||||
|
"qutebrowser/config.py" = {
|
||||||
|
source = config/qutebrowser/config.py;
|
||||||
|
};
|
||||||
|
"qutebrowser/greasemonkey" = {
|
||||||
|
source = config/qutebrowser/greasemonkey;
|
||||||
|
recursive = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue