summaryrefslogtreecommitdiffstats
path: root/.config/qutebrowser/config.py
blob: cd3695dd9deb9748d97a19562dc278f715fb392d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105

# ~/.config/qutebrowser/config.py
# rgoncalves.se

import logging
import os
import re
import subprocess
import platform

logging.basicConfig(level=logging.DEBUG)

"""
Bypass flake8 warnings.
"""
try:
    config
except NameError:
    config = None


def is_musl_system():
    return bool(re.search('musl', os.popen("ldd /bin/ls").read()))


def select_qt_arguments():
    """
    Select best arguments for launching qutebrowser.
    Empty by default, it picks lag free options for musl systems.
    """
    args = []

    if is_musl_system():
        args.append('disable-seccomp-filter-sandbox')

    return args


config.load_autoconfig(False)
config.set('auto_save.session', True)
config.set('scrolling.smooth', False)
config.set('qt.highdpi', False)
config.set('qt.force_software_rendering', 'none')
config.set('qt.args', select_qt_arguments())
config.set('messages.timeout', 1000)

config.bind(',m', 'spawn mpv {url}')

config.set('content.images', True, 'chrome-devtools://*')
config.set('content.images', True, 'devtools://*')
config.set('content.javascript.enabled', True, 'chrome-devtools://*')
config.set('content.javascript.enabled', True, 'devtools://*')
config.set('content.javascript.enabled', True, 'chrome://*/*')
config.set('content.javascript.enabled', True, 'qute://*/*')

config.set('content.notifications.enabled', False)
config.set('content.notifications.enabled', True, '*://*.zoho.eu/*')
config.set('content.notifications.enabled', True, '*://*.viperdev.io/*')
config.set('content.notifications.enabled', True, '*://*.rgoncalves.se/*')

config.set('content.register_protocol_handler', False)
config.set('content.geolocation', False)
config.set('content.media.audio_video_capture', True, '*://*.zoho.eu/*')
config.set('content.media.audio_capture', True, '*://*.zoho.eu/*')
config.set('content.media.video_capture', True, '*://*.zoho.eu/*')

config.set('completion.web_history.max_items', 0)
config.set('tabs.background', True)
config.set('tabs.indicator.width', 3)
config.set('tabs.indicator.padding',
           {'bottom': 0, 'left': 1, 'right': 4, 'top': 0})

config.set('fonts.default_family', 'Terminus')
config.set('fonts.default_size', '12pt')

config.set('colors.tabs.bar.bg', '#000000')
config.set('colors.tabs.even.bg', '#000000')
config.set('colors.tabs.even.fg', '#ffffff')
config.set('colors.tabs.odd.bg', '#000000')
config.set('colors.tabs.odd.fg', '#ffffff')
config.set('colors.tabs.indicator.system', 'none')
config.set('colors.tabs.selected.even.bg', '#ffffff')
config.set('colors.tabs.selected.even.fg', '#000000')
config.set('colors.tabs.selected.odd.bg', '#ffffff')
config.set('colors.tabs.selected.odd.fg', '#000000')
config.set('colors.tabs.pinned.selected.even.bg', '#ffffff')
config.set('colors.tabs.pinned.selected.odd.bg', '#ffffff')
config.set('colors.tabs.pinned.selected.even.fg', '#000000')
config.set('colors.tabs.pinned.selected.odd.fg', '#000000')
config.set('colors.tabs.indicator.error', '#ff0000')

config.set('content.prefers_reduced_motion', True)
config.set('content.headers.referer', 'same-domain')
config.set('url.default_page', 'https://lite.duckduckgo.com/lite/')
config.set('url.start_pages', 'https://lite.duckduckgo.com/lite/')
config.set('url.searchengines',
           {'DEFAULT': 'https://lite.duckduckgo.com/lite/?q={}'})

config.set('downloads.location.directory', f'{os.environ["HOME"]}/downloads')
config.set('content.autoplay', False)
config.set('content.cookies.accept', 'no-3rdparty')

config.set('content.headers.do_not_track', False, '*://*.thetrainline.com/*')
config.set('content.blocking.enabled', False, '*://*.thetrainline.com/*')
config.set('content.cookies.accept', 'all', '*://*.thetrainline.com/*')
remember that computers suck.