diff --git a/.bash_profile b/.bash_profile index 5b7cb0c..885012c 100644 --- a/.bash_profile +++ b/.bash_profile @@ -22,7 +22,7 @@ export SQLITE_HISTORY=$XDG_STATE_HOME/sqlite_history export GOPATH="$XDG_DATA_HOME/go" export GOTELEMETRY=off -export W3M_DIR="$XDG_STATE_HOME/w3m" +export W3M_DIR="$XDG_RUNTIME_DIR/w3m" export PATH="$HOME/.local/bin:$PATH" @@ -40,7 +40,7 @@ export DOCKER_HOST="unix://$XDG_RUNTIME_DIR/podman/podman.sock" export SSH_AUTH_SOCK; SSH_AUTH_SOCK="$(gpgconf --list-dirs agent-ssh-socket)" [ -z "$DISPLAY" ] && [ "$XDG_VTNR" = 1 ] && { - GUILOG="$HOME/.local/state/gui.log" + GUILOG="$XDG_STATE_HOME/gui.log" mv -f "$GUILOG" "$GUILOG.old" || true diff --git a/.config/aerc/accounts.conf b/.config/aerc/accounts.conf index 6e59fd1..8b70db8 100644 --- a/.config/aerc/accounts.conf +++ b/.config/aerc/accounts.conf @@ -6,7 +6,7 @@ outgoing-cred-cmd = pass show email/ange@duhayon.com | head -n1 default = INBOX from = "Ange DUHAYON" cache-headers = true -copy-to = INBOX.INBOX.Sent +copy-to = Sent Items signature-file = ~/.config/aerc/signature.txt [yw5n] @@ -17,7 +17,7 @@ outgoing-cred-cmd = pass show email/ange@yw5n.com | head -n1 default = INBOX from = "Ange DUHAYON" cache-headers = true -copy-to = Sent +copy-to = INBOX.INBOX.Sent signature-file = ~/.config/aerc/signature.txt pgp-auto-sign = true pgp-opportunistic-encrypt = true diff --git a/.config/aerc/aerc.conf b/.config/aerc/aerc.conf index 82ec6dc..def6dab 100644 --- a/.config/aerc/aerc.conf +++ b/.config/aerc/aerc.conf @@ -6,5 +6,5 @@ pgp-provider = gpg message/delivery-status = colorize message/rfc822 = colorize text/calendar = calendar -text/html = w3m -T text/html -o display_link_number=1 +text/html = html | colorize text/plain = colorize diff --git a/.config/aerc/binds.conf b/.config/aerc/binds.conf index b8e534a..68b8446 100644 --- a/.config/aerc/binds.conf +++ b/.config/aerc/binds.conf @@ -13,6 +13,11 @@ = :quit = :suspend +[messages:account=duhayon] +d = :mv "Deleted Items" +[messages:account=yw5n] +d = :mv INBOX.INBOX.Trash + [messages] q = :quit r = :check-mail @@ -53,7 +58,6 @@ zR = :unfold -a = :fold -t = :view -d = :prompt 'Really delete this message?' 'delete-message' D = :delete a = :archive flat A = :unmark -a:mark -T:archive flat diff --git a/.config/alacritty/alacritty.toml b/.config/alacritty/alacritty.toml index 2980729..6aead21 100644 --- a/.config/alacritty/alacritty.toml +++ b/.config/alacritty/alacritty.toml @@ -5,4 +5,4 @@ background = "#101010" size = 9 [window] -opacity = 0.9 +opacity = 0.95 diff --git a/.config/bash/10-aliases.bash b/.config/bash/10-aliases.bash index 69836b7..c593559 100644 --- a/.config/bash/10-aliases.bash +++ b/.config/bash/10-aliases.bash @@ -35,8 +35,16 @@ bd() { echo "$@" | base64 -d; echo } +ex() { + local f + + for f in "$@"; do + tar xvf "$f" || 7z x "$f" + done +} + gi() { - curl -fL "https://www.toptal.com/developers/gitignore/api/$(printf '%s\n' "$@" | sort -u | paste -sd,)" + curl -fL "https://www.toptal.com/developers/gitignore/api/$(IFS=$'\n'; sort -u <<< "$*" | paste -sd,)" } md2html() { @@ -51,7 +59,7 @@ mpv() { local a opt=() for a in "$@"; do - if [[ "$a" == *.srt ]] && [[ "$a" != --* ]]; then + if [[ "$a" == [!-]*.srt ]]; then opt+=(--sub-file="$a") else opt+=("$a") @@ -72,7 +80,7 @@ tmp() { tz() { local tz src - tz="$(cat "$XDG_RUNTIME_DIR/sbar/tz")" + tz="$(head -n1 "$XDG_CACHE_HOME/tz")" src="$(find /usr/share/zoneinfo/ -maxdepth 2 -iname "$1*" -printf '%P' -quit)" TZ="$tz" date -d "TZ=\"$src\" ${2:-now}" "+%R%:::z $tz" TZ="$src" date -d "TZ=\"$tz\" ${2:-now}" "+%R%:::z ${src:-UTC}" diff --git a/.config/bash/20-theme.bash b/.config/bash/20-theme.bash index 5aeb0aa..3fb6f08 100644 --- a/.config/bash/20-theme.bash +++ b/.config/bash/20-theme.bash @@ -33,4 +33,4 @@ precmd() { PROMPT_PERR="${err// /|} " fi } -PS1='\[\e[38;5;110m\]$PROMPT_PTIME \[\e[38;5;134m\]$PROMPT_PK8S\n\[\e[00m\]$(__git_ps1 "%s ")\[\e[01;38;5;32m\]\w\[\e[00m\] \[\e[38;5;160m\]$PROMPT_PERR${_[\j<1]+\[\e[38;5;71m\]\j }\[\e[00m\]' +PS1='\[\e[38;5;110m\]$PROMPT_PTIME \[\e[38;5;134m\]$PROMPT_PK8S\[\e[00m\]\n$(__git_ps1 "%s ")\[\e[01;38;5;32m\]\w\[\e[00m\] \[\e[38;5;160m\]$PROMPT_PERR${_[\j<1]+\[\e[38;5;71m\]\j }\[\e[00m\]' diff --git a/.config/newsraft/feeds b/.config/newsraft/feeds index daab3e1..66b06c5 100644 --- a/.config/newsraft/feeds +++ b/.config/newsraft/feeds @@ -2,9 +2,7 @@ https://archlinux.org/feeds/news/ "ArchLinux" https://www.youtube.com/feeds/videos.xml?channel_id=UCld68syR8Wi-GY_n4CaoJGA "BrodieRobertson" https://www.debian.org/News/news "Debian" -https://f-droid.org/feed.xml "F-Droid" https://suckless.org/atom.xml "suckless.org" -https://tails.net/news/index.en.rss "Tails" @ Updates https://gitea.com/gitea/act_runner/releases.rss "Act runner" diff --git a/.config/nvim/ftplugin/python.lua b/.config/nvim/ftplugin/python.lua index efc9590..2e296de 100644 --- a/.config/nvim/ftplugin/python.lua +++ b/.config/nvim/ftplugin/python.lua @@ -1 +1 @@ -vim.keymap.set("n", "f", "Black", {buffer=true}) +vim.keymap.set("n", "s", "Black", {buffer=true}) diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index e9dcac9..eed4dca 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -25,7 +25,6 @@ vim.opt.colorcolumn = "80" vim.g.netrw_banner = 0 vim.opt.lazyredraw = true vim.opt.complete = vim.o.complete .. ",i" -vim.opt.hlsearch = false vim.g.go_recommended_style = 0 diff --git a/.config/nvim/pack/dist/start/onedark b/.config/nvim/pack/dist/start/onedark index 11de4da..de495fa 160000 --- a/.config/nvim/pack/dist/start/onedark +++ b/.config/nvim/pack/dist/start/onedark @@ -1 +1 @@ -Subproject commit 11de4da47f3e69cb70c3ae9816bd8af166cbe121 +Subproject commit de495fabe171d48aed5525f002d14414efcecbb2 diff --git a/.config/nvim/pack/dist/start/plenary b/.config/nvim/pack/dist/start/plenary index 857c5ac..b9fd522 160000 --- a/.config/nvim/pack/dist/start/plenary +++ b/.config/nvim/pack/dist/start/plenary @@ -1 +1 @@ -Subproject commit 857c5ac632080dba10aae49dba902ce3abf91b35 +Subproject commit b9fd5226c2f76c951fc8ed5923d85e4de065e509 diff --git a/.config/qutebrowser/config.py b/.config/qutebrowser/config.py new file mode 100644 index 0000000..35143f7 --- /dev/null +++ b/.config/qutebrowser/config.py @@ -0,0 +1,14 @@ +# pyright: reportUndefinedVariable=false + +config.load_autoconfig(False) + +c.content.autoplay = False +c.content.notifications.enabled = False + +c.url.searchengines = { + "DEFAULT": "https://searx.gmoker.com/search?q={}", + "!g": "https://www.google.com/search?q={}", + "!d": "https://duckduckgo.com/?q={}", +} + +c.url.start_pages = "about:blank" diff --git a/.gitmodules b/.gitmodules index 03b9e93..84c3142 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,6 @@ [submodule ".config/nvim/pack/dist/start/onedark"] path = .config/nvim/pack/dist/start/onedark - url = https://github.com/navarasu/onedark.nvim + url = https://github.com/navarasu/onedark.nvim.git [submodule ".config/nvim/pack/dist/start/plenary"] path = .config/nvim/pack/dist/start/plenary url = https://github.com/nvim-lua/plenary.nvim.git diff --git a/.local/aur/newsraft b/.local/aur/newsraft index c45589c..cef4c53 160000 --- a/.local/aur/newsraft +++ b/.local/aur/newsraft @@ -1 +1 @@ -Subproject commit c45589c02c50d8be0539653769e96e80ca28c0af +Subproject commit cef4c5373e239053cf9af210eaf9e8adbdaabac6 diff --git a/.local/aur/shellcheck b/.local/aur/shellcheck index d5a870d..6bbdeff 160000 --- a/.local/aur/shellcheck +++ b/.local/aur/shellcheck @@ -1 +1 @@ -Subproject commit d5a870d66bb728e17d2e70c23025b2fa11791d1a +Subproject commit 6bbdeff0e7b6c476c99d9b01670ef1431450042a diff --git a/.local/bin/chromium b/.local/bin/chromium new file mode 100755 index 0000000..834ed04 --- /dev/null +++ b/.local/bin/chromium @@ -0,0 +1,9 @@ +#!/bin/bash -e + +rmchrom() { + rm -rf {"$XDG_CONFIG_HOME","$XDG_CACHE_HOME"}/chromium +} + +trap rmchrom EXIT +rmchrom +/usr/bin/chromium diff --git a/.local/bin/firefox b/.local/bin/firefox index aaf3407..a2bc53b 100755 --- a/.local/bin/firefox +++ b/.local/bin/firefox @@ -1,6 +1,7 @@ #!/bin/bash sites=( + 'https://.login.microsoftonline.com' 'https://discord.com' 'https://gmoker.com' 'https://maby.dev' diff --git a/.local/bin/sbar b/.local/bin/sbar index c945eeb..69ec6ef 100755 --- a/.local/bin/sbar +++ b/.local/bin/sbar @@ -72,8 +72,8 @@ _tz() { mapfile -t if < <(ip -j route show default | jq -r '.[] | .prefsrc, .dev') if ! [ -s "$f" ] || [ "${if[0]}" != "$(< ip)" ]; then echo "${if[0]}" > ip - if j="$(curl -s 'https://ipapi.co/json')"; then - jq -r '.timezone, "\(.latitude):\(.longitude)"' <<< "$j" > "$f" + if j="$(curl -s 'https://api.ipbase.com/v2/info')"; then + jq -r '.[] | .timezone.id, (.location |"\(.latitude):\(.longitude)" )' <<< "$j" > "$f" head -1 "$f" fi else diff --git a/.local/bin/vpn b/.local/bin/vpn index a9a955c..49348b4 100755 --- a/.local/bin/vpn +++ b/.local/bin/vpn @@ -1,12 +1,16 @@ #!/bin/bash -e -DMENU=/usr/local/bin/dmenu +DMENU=dmenu SUDO=pkexec if tty -s; then DMENU=fzf SUDO=sudo fi +if [ "$EUID" = 0 ]; then + SUDO= +fi + d="$(mktemp -d)" # shellcheck disable=SC2064 trap "rm -rf '$d'" EXIT @@ -29,6 +33,6 @@ if [ "$1" != off ]; then fi (inotifywait -e close_write "$d/1"; "$DMENU" < "$d/1" > "$d/2") & -"$SUDO" bash -c "${CMD[*]/%/;}" +$SUDO bash -c "${CMD[*]/%/;}" -touch "$XDG_RUNTIME_DIR/sbar/vpn" +touch "${XDG_RUNTIME_DIR:-/run/user/1000}/sbar/vpn" diff --git a/.mozilla/firefox/ange/search.json.mozlz4 b/.mozilla/firefox/ange/search.json.mozlz4 index 173daac..18ef101 100644 Binary files a/.mozilla/firefox/ange/search.json.mozlz4 and b/.mozilla/firefox/ange/search.json.mozlz4 differ diff --git a/.mozilla/firefox/ange/user.js b/.mozilla/firefox/ange/user.js index b6ea842..806f08c 100644 --- a/.mozilla/firefox/ange/user.js +++ b/.mozilla/firefox/ange/user.js @@ -1,7 +1,7 @@ /****** * name: arkenfox user.js -* date: 6 March 2025 -* version: 135 +* date: 14 August 2025 +* version: 140 * urls: https://github.com/arkenfox/user.js [repo] * : https://arkenfox.github.io/gui/ [interactive] * license: MIT: https://github.com/arkenfox/user.js/blob/master/LICENSE.txt @@ -31,7 +31,7 @@ - DON'T wait for arkenfox to update Firefox, nothing major changes these days * Each release - run prefsCleaner to reset prefs made inactive, including deprecated (9999) - * ESR + * ESR (Extended Support Release) - It is recommended to not use the updater, or you will get a later version which may cause issues. So you should manually append your overrides (and keep a copy), and manually update when you change ESR releases (arkenfox is already past that release) @@ -87,17 +87,18 @@ user_pref("_user.js.parrot", "0100 syntax error: the parrot's dead!"); * [SETTING] General>Startup>Restore previous session ***/ user_pref("browser.startup.page", 0); /* 0103: set HOME+NEWWINDOW page - * about:home=Firefox Home (default, see 0105), custom URL, about:blank + * about:home=Firefox Home (default, see 0105), custom URLs..., Blank Page * [SETTING] Home>New Windows and Tabs>Homepage and new windows ***/ -user_pref("browser.startup.homepage", "about:blank"); +user_pref("browser.startup.homepage", "chrome://browser/content/blanktab.html"); /* 0104: set NEWTAB page * true=Firefox Home (default, see 0105), false=blank page * [SETTING] Home>New Windows and Tabs>New tabs ***/ user_pref("browser.newtabpage.enabled", false); /* 0105: disable sponsored content on Firefox Home (Activity Stream) * [SETTING] Home>Firefox Home Content ***/ -user_pref("browser.newtabpage.activity-stream.showSponsored", false); // [FF58+] -user_pref("browser.newtabpage.activity-stream.showSponsoredTopSites", false); // [FF83+] Shortcuts>Sponsored shortcuts +user_pref("browser.newtabpage.activity-stream.showSponsored", false); // [FF58+] Sponsored stories +user_pref("browser.newtabpage.activity-stream.showSponsoredTopSites", false); // [FF83+] Sponsored shortcuts +user_pref("browser.newtabpage.activity-stream.showSponsoredCheckboxes", false); // [FF140+] Support Firefox /* 0106: clear default topsites * [NOTE] This does not block you from adding your own ***/ user_pref("browser.newtabpage.activity-stream.default.sites", ""); @@ -121,11 +122,8 @@ user_pref("extensions.htmlaboutaddons.recommendations.enabled", false); * [SETTING] Privacy & Security>Firefox Data Collection and Use>Allow personalized extension recommendations * [1] https://support.mozilla.org/kb/personalized-extension-recommendations ***/ user_pref("browser.discovery.enabled", false); -/* 0323: disable shopping experience [FF116+] - * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1840156#c0 ***/ -user_pref("browser.shopping.experience2023.enabled", false); // [DEFAULT: false] -/** TELEMETRY ***/ +/** ACTIVITY STREAM ***/ /* 0335: disable Firefox Home (Activity Stream) telemetry ***/ user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false); user_pref("browser.newtabpage.activity-stream.telemetry", false); @@ -285,10 +283,11 @@ user_pref("browser.urlbar.suggest.searches", false); user_pref("browser.urlbar.trending.featureGate", false); /* 0806: disable urlbar suggestions ***/ user_pref("browser.urlbar.addons.featureGate", false); // [FF115+] +user_pref("browser.urlbar.amp.featureGate", false); // [FF141+] adMarketplace user_pref("browser.urlbar.fakespot.featureGate", false); // [FF130+] [DEFAULT: false] -user_pref("browser.urlbar.mdn.featureGate", false); // [FF117+] [HIDDEN PREF] -user_pref("browser.urlbar.pocket.featureGate", false); // [FF116+] [DEFAULT: false] -user_pref("browser.urlbar.weather.featureGate", false); // [FF108+] [DEFAULT: false] +user_pref("browser.urlbar.mdn.featureGate", false); // [FF117+] +user_pref("browser.urlbar.weather.featureGate", false); // [FF108+] +user_pref("browser.urlbar.wikipedia.featureGate", false); // [FF141+] user_pref("browser.urlbar.yelp.featureGate", false); // [FF124+] /* 0807: disable urlbar clipboard suggestions [FF118+] ***/ // user_pref("browser.urlbar.clipboard.featureGate", false); @@ -330,7 +329,7 @@ user_pref("_user.js.parrot", "0900 syntax error: the parrot's expired!"); /* 0903: disable auto-filling username & password form fields * can leak in cross-site forms *and* be spoofed * [NOTE] Username & password is still available when you enter the field - * [SETTING] Privacy & Security>Logins and Passwords>Autofill logins and passwords + * [SETTING] Privacy & Security>Passwords>Autofill logins and passwords * [1] https://freedom-to-tinker.com/2017/12/27/no-boundaries-for-user-identities-web-trackers-exploit-browser-login-managers/ * [2] https://homes.esat.kuleuven.be/~asenol/leaky-forms/ ***/ user_pref("signon.autofillForms", false); @@ -562,15 +561,19 @@ user_pref("network.IDN_show_punycode", true); * [1] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=pdf.js+firefox ***/ user_pref("pdfjs.disabled", false); // [DEFAULT: false] user_pref("pdfjs.enableScripting", false); // [FF86+] -/* 2624: disable middle click on new tab button opening URLs or searches using clipboard [FF115+] */ +/* 2624: disable middle click on new tab button opening URLs or searches using clipboard [FF115+] ***/ user_pref("browser.tabs.searchclipboardfor.middleclick", false); // [DEFAULT: false NON-LINUX] /* 2630: disable content analysis by DLP (Data Loss Prevention) agents * DLP agents are background processes on managed computers that allow enterprises to monitor locally running * applications for data exfiltration events, which they can allow/block based on customer defined DLP policies. * 0=Block all requests, 1=Warn on all requests (which lets the user decide), 2=Allow all requests - * [1] https://github.com/chromium/content_analysis_sdk */ + * [1] https://github.com/chromium/content_analysis_sdk ***/ user_pref("browser.contentanalysis.enabled", false); // [FF121+] [DEFAULT: false] user_pref("browser.contentanalysis.default_result", 0); // [FF127+] [DEFAULT: 0] +/* 2635: disable referrer and storage access for resources injected by content scripts [FF139+] ***/ + // user_pref("privacy.antitracking.isolateContentScriptResources", true); +/* 2640: disable CSP Level 2 Reporting [FF140+] ***/ +user_pref("security.csp.reporting.enabled", false); /** DOWNLOADS ***/ /* 2651: enable user interaction for security by always asking where to download @@ -633,7 +636,7 @@ user_pref("privacy.clearOnShutdown_v2.historyFormDataAndDownloads", true); // [D // user_pref("privacy.clearOnShutdown_v2.siteSettings", false); // [DEFAULT: false] /* 2812: set/enforce clearOnShutdown items [FF136+] ***/ user_pref("privacy.clearOnShutdown_v2.browsingHistoryAndDownloads", true); // [DEFAULT: true] -user_pref("privacy.clearOnShutdown_v2.downloads", true); +user_pref("privacy.clearOnShutdown_v2.downloads", true); // [HIDDEN] user_pref("privacy.clearOnShutdown_v2.formdata", true); /* 2813: set Session Restore to clear on shutdown (if 2810 is true) [FF34+] * [NOTE] Not needed if Session Restore is not used (0102) or it is already cleared with history (2811+) @@ -693,9 +696,15 @@ user_pref("privacy.sanitize.timeSpan", 0); [NOTE] RFPTargets + granular overrides are somewhat experimental and may produce unexpected results - e.g. FrameRate can only be controlled per process, not per origin - 1826408 - restrict fonts to system (kBaseFonts + kLangPackFonts) (Windows, Mac, some Linux) + 1826408 - restrict to system fonts (kBaseFonts + kLangPackFonts) (Windows, Mac, some Linux) (FF119+) + 1928705: android (FF134+) https://searchfox.org/mozilla-central/search?path=StandardFonts*.inc 1858181 - subtly randomize canvas per eTLD+1, per session and per window-mode (FF120+) + 1887682 - use fdlibm's sin, cos and tan in jsmath (FF134+) + 1978414 - various (FF143+) + 1954194: available screen resolution: return a fixed offset height from screen per platform when not full screen + 1978414: hardwareConcurrency: return 2 (existing RFPTarget) + 1977836: maxTouchPoints: return multi-touch as 5 ***/ user_pref("_user.js.parrot", "4000 syntax error: the parrot's bereft of life!"); /* 4001: enable FPP in PB mode [FF114+] @@ -720,7 +729,7 @@ user_pref("_user.js.parrot", "4000 syntax error: the parrot's bereft of life!"); FF128+ Arkenfox by default uses FPP (automatically enabled with ETP Strict). For most people this is all you need. To use RFP instead, add RFP (4501) to your overrides, and optionally - add letterboxing (4504), spoof_english (4506), and webgl (4520). + add letterboxing (4504), spoof_english (4506), and WebGL (4520). RFP is an all-or-nothing buy in: you cannot pick and choose what parts you want @@ -730,8 +739,8 @@ user_pref("_user.js.parrot", "4000 syntax error: the parrot's bereft of life!"); 1360039 - spoof navigator.hardwareConcurrency as 2 (FF55) FF56 1333651 - spoof User Agent & Navigator API - JS: spoofed as Windows 10, OS 10.15, Android 10, or Linux - HTTP Header: spoofed as Windows 10 or Android 10.15 until FF136 then matches JS spoof + JS: spoofed as Windows 10, OS X 10.15, Android 10, or Linux + HTTP Header: spoofed as Windows 10 or Android 10 until FF136 then matches JS spoof 1369319 - disable device sensor API 1369357 - disable site specific zoom 1337161 - hide gamepads from content @@ -750,7 +759,6 @@ user_pref("_user.js.parrot", "4000 syntax error: the parrot's bereft of life!"); 1222285 & 1433592 - spoof keyboard events and suppress keyboard modifier events (FF59) Spoofing mimics the content language of the document. Currently it only supports en-US. Modifier events suppressed are SHIFT and both ALT keys. Chrome is not affected. - 1337157 - disable WebGL debug renderer info (FF60) 1459089 - disable OS locale in HTTP Accept-Language headers (ANDROID) (FF62) 1479239 - return "no-preference" with prefers-reduced-motion (FF63) 1363508 & 1826051 - spoof/suppress Pointer Events (FF64, FF132) @@ -765,7 +773,6 @@ user_pref("_user.js.parrot", "4000 syntax error: the parrot's bereft of life!"); 1653987 - limit font visibility to bundled and "Base Fonts" (Windows, Mac, some Linux) (FF80) 1461454 - spoof smooth=true and powerEfficient=false for supported media in MediaCapabilities (FF82) 531915 - use fdlibm's sin, cos and tan in jsmath (FF93, ESR91.1) - 1756280 - enforce navigator.pdfViewerEnabled as true and plugins/mimeTypes as hard-coded values (FF100-115) 1692609 - reduce JS timing precision to 16.67ms (previously FF55+ was 100ms) (FF102) 1422237 - return "srgb" with color-gamut (FF110) 1794628 - return "none" with inverted-colors (FF114) @@ -773,11 +780,18 @@ user_pref("_user.js.parrot", "4000 syntax error: the parrot's bereft of life!"); 1835987 - spoof timezone as Atlantic/Reykjavik (previously FF55+ was UTC) (FF128) 1834307 - always use smooth scrolling (FF132) 1918202 - spoof screen orientation based on spoofed screen size and platform (FF132) - previously it always returned landscape-primary and an angle of 0 (FF50+) + previously FF50+ it always returned landscape-primary and an angle of 0 1390465 - load all subtitles in WebVTT (Video Text Tracks) (FF133) 1873382 - make spoofed devicePixelRatio and CSS media queries match (FF133) previously FF41+ devicePixelRatio was hardcoded as 1 and FF127+ as 2 previously FF41+ CSS media queries were spoofed as zoom level at a devicePixelRatio of 1 + 1955425 - return 128 for WebGPU subgroupMaxSize (FF138) + 1966860 - spoof WebGL debug renderer info (FF140) + previously FF60+ it was disabled + 1781277 - return 10GiB for storage estimate until persistent-storage granted (FF142, ESR140.1) + 1972600 - spoof network connection for HTMLMediaElement preload (FF142, ESR140.1) + 1975851 - return true for navigator.onLine (FF142, ESR140.1) + 1973265 - disable WebCodecs API (FF142?) ***/ user_pref("_user.js.parrot", "4500 syntax error: the parrot's popped 'is clogs"); /* 4501: enable RFP @@ -799,16 +813,17 @@ user_pref("privacy.resistFingerprinting.block_mozAddonManager", true); * Dynamically resizes the inner window by applying margins in stepped ranges [2] * If you use the dimension pref, then it will only apply those resolutions. * The format is "width1xheight1, width2xheight2, ..." (e.g. "800x600, 1000x1000") - * [SETUP-WEB] This is independent of RFP (4501). If you're not using RFP, or you are but - * dislike the margins, then flip this pref, keeping in mind that it is effectively fingerprintable + * [SETUP-WEB] This is independent of RFP (4501). If you're using RFP, but dislike the + * margins, then don't enable this pref, keeping in mind that it is effectively fingerprintable * [WARNING] DO NOT USE: the dimension pref is only meant for testing * [1] https://bugzilla.mozilla.org/1407366 * [2] https://hg.mozilla.org/mozilla-central/rev/7211cb4f58ff#l5.13 ***/ // user_pref("privacy.resistFingerprinting.letterboxing", true); // [HIDDEN PREF] // user_pref("privacy.resistFingerprinting.letterboxing.dimensions", ""); // [HIDDEN PREF] /* 4505: disable RFP by domain [FF91+] - * [NOTE] Working examples: "arkenfox.github.io", "*github.io" - * Non-working examples: "https://arkenfox.github.io", "github.io", "*arkenfox.github.io" ***/ + * [NOTE]: The pref takes comma separated values: e.g. "*domain1.tld, *domain2.tld" + * Working domain examples: "arkenfox.github.io", "*github.io" + * Non-working domain examples: "https://arkenfox.github.io", "github.io", "*arkenfox.github.io" ***/ // user_pref("privacy.resistFingerprinting.exemptedDomains", "*.example.invalid"); /* 4506: disable RFP spoof english prompt [FF59+] * 0=prompt, 1=disabled, 2=enabled @@ -816,6 +831,8 @@ user_pref("privacy.resistFingerprinting.block_mozAddonManager", true); * [SETUP-WEB] when enabled, sets 'en-US, en' for displaying pages and 'en-US' as locale. * [SETTING] General>Language>Choose your preferred language for displaying pages>Choose>Request English... ***/ user_pref("privacy.spoof_english", 1); +/* 4507: skip browser.startup.blankWindow if RFP is used [FF136+] ***/ + // user_pref("privacy.resistFingerprinting.skipEarlyBlankFirstPaint", true); // [DEFAULT: true] /* 4510: disable using system colors * [SETTING] General>Language and Appearance>Fonts and Colors>Colors>Use system colors ***/ user_pref("browser.display.use_system_colors", false); // [DEFAULT: false NON-WINDOWS] @@ -964,7 +981,7 @@ user_pref("_user.js.parrot", "5500 syntax error: this is an ex-parrot!"); // user_pref("javascript.options.wasm", false); /* 5507: disable rendering of SVG OpenType fonts ***/ // user_pref("gfx.font_rendering.opentype_svg.enabled", false); -/* 5508: disable all DRM content (EME: Encryption Media Extension) +/* 5508: disable all DRM (Digital Rights Management) content (EME: Encryption Media Extension) * Optionally hide the UI setting which also disables the DRM prompt * [SETTING] General>DRM Content>Play DRM-controlled content * [TEST] https://bitmovin.com/demos/drm @@ -1016,7 +1033,7 @@ user_pref("security.tls.version.enable-deprecated", false); // [DEFAULT: false] * [WHY] To prevent wasting Mozilla's time with a custom setup ***/ user_pref("extensions.webcompat-reporter.enabled", false); // [DEFAULT: false] /* 6012: enforce Quarantined Domains [FF115+] - * [WHY] https://support.mozilla.org/kb/quarantined-domains */ + * [WHY] https://support.mozilla.org/kb/quarantined-domains ***/ user_pref("extensions.quarantinedDomains.enabled", true); // [DEFAULT: true] /* 6050: prefsCleaner: reset previously active items removed from arkenfox FF128+ ***/ // user_pref("privacy.clearOnShutdown.cache", ""); @@ -1120,7 +1137,7 @@ user_pref("_user.js.parrot", "7000 syntax error: the parrot's pushing up daisies // user_pref("privacy.trackingprotection.cryptomining.enabled", true); // [DEFAULT: true] // user_pref("privacy.trackingprotection.fingerprinting.enabled", true); // [DEFAULT: true] /* 7017: disable service workers - * [WHY] Already isolated with TCP (2701) behind a pref (2710) ***/ + * [WHY] Already isolated with TCP (2701) behind a pref ***/ // user_pref("dom.serviceWorkers.enabled", false); /* 7018: disable Web Notifications [FF22+] * [WHY] Web Notifications are behind a prompt (7002) @@ -1166,7 +1183,6 @@ user_pref("_user.js.parrot", "8000 syntax error: the parrot's crossed the Jordan // user_pref("general.platform.override", ""); // user_pref("general.useragent.override", ""); // user_pref("media.navigator.enabled", ""); - // user_pref("media.ondevicechange.enabled", ""); // user_pref("media.video_stats.enabled", ""); // user_pref("media.webspeech.synth.enabled", ""); // user_pref("ui.use_standins_for_native_colors", ""); @@ -1181,7 +1197,7 @@ user_pref("_user.js.parrot", "8000 syntax error: the parrot's crossed the Jordan - Opt-in telemetry _does not_ work and results in data that is unrepresentative and may be misleading Choice - Every new profile on first use provides data collection/use policy and the abillty to opt-out - - It can be disabled at any time (Settings>Privacy & Security>Data Collection and Use) + - It can be disabled at any time (Settings>Privacy & Security>Data Collection and Use) Data - no PII (Personally Identifiable Information) - can be viewed in about:telemetry @@ -1240,9 +1256,17 @@ user_pref("_user.js.parrot", "9999 syntax error: the parrot's shuffled off 'is m /* ESR128.x still uses all the following prefs // [NOTE] replace the * with a slash in the line above to re-enable active ones // FF132 -/* 2617: remove webchannel whitelist +// 2617: remove webchannel whitelist // [-] https://bugzilla.mozilla.org/1275612 // user_pref("webchannel.allowObject.urlWhitelist", ""); +// FF140 +// 0323: disable shopping experience [FF116+] + // [-] https://bugzilla.mozilla.org/1964845 + // [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1840156#c0 +user_pref("browser.shopping.experience2023.enabled", false); // [DEFAULT: false] +// 0806: disable urlbar suggestions + // [-] https://bugzilla.mozilla.org/1959497 +user_pref("browser.urlbar.pocket.featureGate", false); // [FF116+] [DEFAULT: false] // ***/ /* END: internal custom pref to test for syntax errors ***/ diff --git a/.ssh/known_hosts b/.ssh/known_hosts index 7a85ab1..3a0305f 100644 --- a/.ssh/known_hosts +++ b/.ssh/known_hosts @@ -5,7 +5,6 @@ git.maby.dev ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCy6Vljjd9lVRm github.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl github.com ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCj7ndNxQowgcQnjshcLrqPEiiphnt+VTTvDP6mHBL9j1aNUkY4Ue1gvwnGLVlOhGeYrnZaMgRK6+PKCUXaDbC7qtbW8gIkhL7aGCsOr/C56SJMy/BCZfxd1nWzAOxSDPgVsmerOBYfNqltV9/hWCqBywINIR+5dIg6JTJ72pcEpEjcYgXkE2YEFXV1JHnsKgbLWNlhScqb2UmyRkQyytRLtL+38TGxkxCflmO+5Z8CSSNY7GidjMIZ7Q4zMjA2n1nGrlTDkzwDCsw+wqFPGQA179cnfGWOWRVruj16z6XyvxvjJwbz0wQZ75XK5tKSb7FNyeIEs4TT4jk+S4dhPeAUC5y+bDYirYgM4GC7uEnztnZyaVWQ7B381AK4Qdrwt51ZqExKbQpTUNn+EjqoTwvqNj4kqx5QUCI0ThS/YkOxJCXmPUWZbhjpCg56i+2aB6CmK2JGhn57K5mj0MNdBXA4/WnwH6XoPWJzK5Nyu2zB3nAZp+S5hpQs+p1vN1/wsjk= gmk-agn-k3s10.gmoker.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO99Uuf1ca2ESgEnHPYjVm5cscZWIUgwoFe3iR2N+9/v -gmk-gra-k3s10.gmoker.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKO5Li+9f7j6xtxwWgES2KKTjUErcOdEcsczQ+m5aDQ2 +gmk-gra-k3s10.gmoker.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFFELTMQYB6XY/KQBK0QNYh4SXVnmnGIkq9gaibQYH3f gmk-gra-k8s10.gmoker.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPmeHCzrppCRHwRWhK6PEpbA0t76dDB7BACyFEM3557E maby-rbx-10.maby.dev ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMRBXBjej1iFEPX/J9lDYG5PKPSq6eaUefz9vkR/N53f -wg.yw5n.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOcn80hSBfQn4QYP46byuUJEvi0YTqyWtiCiXT4otBEq diff --git a/.xinitrc b/.xinitrc index ff05c46..7836981 100644 --- a/.xinitrc +++ b/.xinitrc @@ -12,7 +12,7 @@ sbar & gammastep -t 5000:3500 \ -l "$(tail -1 "$XDG_CACHE_HOME/tz" 2> /dev/null || echo 0:0)" & -xset dpms 600 600 600 +xset s 595 4 dpms 600 600 600 wallpaper