diff options
| author | Akshay Nair <phenax5@gmail.com> | 2021-09-14 13:34:19 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2021-09-14 13:34:19 +0530 |
| commit | f819aa3afea420925fe4c91a71a2756d5ed04b80 (patch) | |
| tree | 51485da02eda97596faf55aec4881af8134b1e72 | |
| parent | 994bda7f51d6967087832218d7d3613f37960c9f (diff) | |
| download | nixos-config-f819aa3afea420925fe4c91a71a2756d5ed04b80.tar.gz nixos-config-f819aa3afea420925fe4c91a71a2756d5ed04b80.zip | |
qutebrowser config save
Diffstat (limited to '')
| -rw-r--r-- | config/qutebrowser/bookmarks/urls | 13 | ||||
| -rw-r--r-- | config/qutebrowser/config.py | 23 | ||||
| -rw-r--r-- | config/qutebrowser/greasemonkey/#gh-pr.js# | 27 | ||||
| -rw-r--r-- | config/qutebrowser/greasemonkey/gh-pr.js | 10 | ||||
| -rw-r--r-- | config/qutebrowser/greasemonkey/google-meet.js | 71 | ||||
| -rw-r--r-- | config/qutebrowser/greasemonkey/slack.js | 5 | ||||
| -rw-r--r-- | config/qutebrowser/homepage/index.html | 27 | ||||
| -rw-r--r-- | config/qutebrowser/quickmarks | 15 | ||||
| -rw-r--r-- | config/qutebrowser/ui.py | 3 |
9 files changed, 103 insertions, 91 deletions
diff --git a/config/qutebrowser/bookmarks/urls b/config/qutebrowser/bookmarks/urls index 4bbdac0..934b555 100644 --- a/config/qutebrowser/bookmarks/urls +++ b/config/qutebrowser/bookmarks/urls @@ -1,9 +1,5 @@ https://keithp.com/~keithp/talks/xtc2001/paper/ The Xft Font Library: Architecture and Users Guide -https://venam.nixers.net/blog/unix/2018/09/02/fonts-xcb.html Xft but for XCB -https://gitlab.freedesktop.org/xorg/lib/libxft/-/blob/master/include/X11/Xft/Xft.h.in include/X11/Xft/Xft.h.in · master · xorg / lib / libXft · GitLab -qute://pdfjs/web/viewer.html?filename=tmpnb_fwc6u_os-dev.pdf&file=&source=https://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf tmpnb_fwc6u_os-dev.pdf https://github.com/simple-icons/simple-icons#cdn-usage simple-icons/simple-icons: SVG icons for popular brands -https://www.oreilly.com/openbook/linuxdrive3/book/ Open Book - Linux Device Drivers, 3rd Edition https://www.freetype.org/freetype2/docs/tutorial/step1.html FreeType Tutorial / I https://crackstation.net/ CrackStation - Online Password Hash Cracking - MD5, SHA1, Linux, Rainbow Tables, etc. https://hashcat.net/wiki/doku.php?id=example_hashes example_hashes [hashcat wiki] @@ -14,24 +10,15 @@ https://github.com/moxie0/sslstrip moxie0/sslstrip: A tool for exploiting Moxie https://247ctf.com/ 247/CTF - The game never stops https://www.serverhosh.com/london-1gbps-vps/ London 1Gbps VPS | ServerHosh Internet Service https://quackr.io/receive-sms/uk/447418311286 United Kingdom : 447418311286 | Temporary Virtual Phone Numbers | Receive SMS Online - quackr -https://www.whatsmydns.net/#CNAME/akshay.is-a.dev DNS Checker - DNS Propagation Check & DNS Lookup https://github.com/system-f/fp-course system-f/fp-course: Functional Programming Course https://app.neilpatel.com/en/seo_analyzer/site_audit?domain=akshay.is-a.dev&view=overview Ubersuggest https://medium.com/software-engineering-roundup/the-osi-model-87e5adf35e10 The OSI Model. Ugh, I’ve been struggling with this… | by Ian Ames | Software engineering roundup | Medium https://wiki.archlinux.org/index.php/EFISTUB EFISTUB - ArchWiki -https://www.lenovo.com/in/en/laptops/ideapad/s-series/ideapad-3-15are05/p/81W1004EIN IdeaPad Slim 3 (15, AMD) | Lenovo India -https://www.amazon.in/Notebook-i5-10210U-Windows-Graphics-XMA1901-FA/dp/B089F4GTDW/ref=sr_1_1_sspa?dchild=1&keywords=asus&qid=1605126083&s=computers&sr=1-1-spons&psc=1&spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUEyRUhMOUVDMTBUT01DJmVuY3J5cHRlZElkPUEwNjU0NDg1MlFKQUFNVFJXUlBSNSZlbmNyeXB0ZWRBZElkPUEwMDAwNTA4MzROM1FNN00yVTc4SCZ3aWRnZXROYW1lPXNwX2F0ZiZhY3Rpb249Y2xpY2tSZWRpcmVjdCZkb05vdExvZ0NsaWNrPXRydWU= Amazon.in: Buy Mi Notebook 14 Intel Core i5-10210U 10th Gen Thin and Light Laptop(8GB/512GB SSD/Windows 10/Intel UHD Graphics/Silver/1.5Kg), XMA1901-FA+Webcam Online at Low Prices in India | MI Reviews & Ratings -https://app.slack.com/client/TNJRQ2H0E/D01FAF42K99 Slack | Akshay Nair | InVideo -https://www.pivotaltracker.com/n/projects/2465721 Editor - Classic - Pivotal Tracker https://danielkeep.github.io/tlborm/book/index.html The Little Book of Rust Macros https://github.com/vramana/awesome-reasonml vramana/awesome-reasonml: A collection of awesome things regarding Reason/OCaml ecosystem. https://github.com/jayaramsankara/learnhaskell jayaramsankara/learnhaskell: Exercises from the book Pogramming in Haskell by Graham Hutton. Other small code snippets used for learning haskell -https://adventofcode.com/ Advent of Code 2020 https://github.com/jivoi/awesome-osint jivoi/awesome-osint: A curated list of amazingly awesome OSINT https://reasonml.chat/t/a-gentle-introduction-to-parser-combinators-and-angstrom/2546 A gentle Introduction to Parser Combinators and Angstrom - Showcase - ReasonML Forums https://github.com/microsoft/TypeScript/wiki/Using-the-Compiler-API#traversing-the-ast-with-a-little-linter Using the Compiler API · microsoft/TypeScript Wiki https://github.com/wilsonpage/fastdom/blob/master/fastdom.js fastdom/fastdom.js at master · wilsonpage/fastdom -https://www.2n.pl/blog/how-to-write-neovim-plugins-in-lua How to write neovim plugins in Lua | 2n it sp. z o.o. -https://nixos.org/manual/nixos/stable/options.html#opt-boot.loader.efi.canTouchEfiVariables NixOS - NixOS 20.09 manual -https://github.com/raphlinus/pulldown-cmark/blob/master/src/lib.rs pulldown-cmark/lib.rs at master · raphlinus/pulldown-cmark https://nixos.org/manual/nixos/stable/#sec-installation NixOS - NixOS 20.09 manual diff --git a/config/qutebrowser/config.py b/config/qutebrowser/config.py index 149c5a2..a6d7ef6 100644 --- a/config/qutebrowser/config.py +++ b/config/qutebrowser/config.py @@ -92,6 +92,7 @@ c.hints.chars = 'azsxdclmknjb' c.hints.auto_follow = 'unique-match' c.content.pdfjs = True +nunmap("<Ctrl-a>") nunmap('<Ctrl-v>') nunmap('<Ctrl-x>') nunmap('<Ctrl-V>') @@ -100,9 +101,8 @@ nunmap('<Ctrl-h>') nunmap('<Ctrl-p>') # Edit text and edit url -imap('<Ctrl-e>', 'open-editor') -nmap('<Ctrl-e>', 'open-editor') -# nmap('<Ctrl-l>', 'edit-url') +imap('<Ctrl-e>', 'edit-text') +nmap('<Ctrl-e>', 'edit-text') nmap(localleader+'e', 'edit-url') nmap('<Ctrl-p>', 'enter-mode passthrough') @@ -268,14 +268,17 @@ config.set('content.media.video_capture', True, '*://meet.google.com') c.url.default_page = '~/.config/qutebrowser/homepage/index.html' c.url.start_pages = [c.url.default_page] -DEFAULT_SEARCH_ENGINE = 'd' +DEFAULT_SEARCH_ENGINE = 'br' c.url.searchengines = { - # General + # Main general + 'd': 'https://duckduckgo.com/?q={}', + 'go': 'https://google.com/search?q={}', + 'br': 'https://search.brave.com/search?q={}', + + # Alt general 'sp': 'https://www.startpage.com/sp/search?q={}', 'sx': 'https://searx.fmac.xyz/?q={}', 'q': 'https://www.qwant.com/search?q={}', - 'd': 'https://duckduckgo.com/?q={}', - 'go': 'https://google.com/search?q={}', # Dev stuff 'bp': 'https://bundlephobia.com/result?p={}', @@ -285,15 +288,13 @@ c.url.searchengines = { 'g': 'https://github.com/{}', 'gh': 'http://github.com/search?q={}', 'hg': 'http://www.haskell.org/hoogle/?hoogle={}', - 'aw': 'http://wiki.archlinux.org/index.php?search={}', 'cname': 'https://www.whatsmydns.net/#CNAME/{}', + 'nx': 'https://search.nixos.org/packages?channel=unstable&query={}', # Media 'r': 'http://www.reddit.com/r/{}/', 'y': 'http://www.youtube.com/results?search_query={}', - 'az': 'http://search.azlyrics.com/search.php?q={}', - - 'nx': 'https://search.nixos.org/packages?channel=unstable&query={}', + 'ly': 'http://genius.com/search?q={}', # Ignore 'DEFAULT': 'http://this-is-a-placeholder.com?q={}', diff --git a/config/qutebrowser/greasemonkey/#gh-pr.js# b/config/qutebrowser/greasemonkey/#gh-pr.js# deleted file mode 100644 index 26d444a..0000000 --- a/config/qutebrowser/greasemonkey/#gh-pr.js# +++ /dev/null @@ -1,27 +0,0 @@ -// ==UserScript== -// @name Github PR helper -// @namespace phenax.github.io -// @version 0.0.0 -// @description Github PR helper -// @author Akshay Nair -// @match *://github.com/*/pull/*/files -// ==/UserScript== - -const keys = { - n: () => document.querySelector('.js-reviewed-toggle:not(.js-reviewed-file)').click(), - N: () => Array.from(document.querySelectorAll('.js-reviewed-file')).slice(-1)[0].click(), - //j: () => { - //const $el = document.querySelector('.js-reviewed-toggle:not(.js-reviewed-file)'); - //if ($el) { - - //} - //}, -}; -w -document.addEventListener('keydown', (e) => { - console.log(e.key, e.ctrlKey); - if (keys[e.key] && e.ctrlKey) { - keys[e.key](); - } -}); - diff --git a/config/qutebrowser/greasemonkey/gh-pr.js b/config/qutebrowser/greasemonkey/gh-pr.js index 5803022..d78b787 100644 --- a/config/qutebrowser/greasemonkey/gh-pr.js +++ b/config/qutebrowser/greasemonkey/gh-pr.js @@ -4,17 +4,17 @@ // @version 0.0.0 // @description Github PR helper // @author Akshay Nair -// @match *://github.com/*/pull/*/files +// @match *://github.com/*/pull/* // ==/UserScript== const keys = { n: () => document.querySelector('.js-reviewed-toggle:not(.js-reviewed-file)').click(), N: () => Array.from(document.querySelectorAll('.js-reviewed-file')).slice(-1)[0].click(), //j: () => { - //const $el = document.querySelector('.js-reviewed-toggle:not(.js-reviewed-file)'); - //if ($el) { - - //} + //const $el = document.querySelector('.js-reviewed-toggle:not(.js-reviewed-file)'); + //if ($el) { + + //} //}, }; diff --git a/config/qutebrowser/greasemonkey/google-meet.js b/config/qutebrowser/greasemonkey/google-meet.js new file mode 100644 index 0000000..37a163b --- /dev/null +++ b/config/qutebrowser/greasemonkey/google-meet.js @@ -0,0 +1,71 @@ +// ==UserScript== +// @name Google meet mute indicator +// @namespace phenax.github.io +// @version 0.0.0 +// @description Google meet mute indicator +// @author Akshay Nair +// @match *://meet.google.com/* +// ==/UserScript== + +(() => { + const log = console.log.bind(console, '[MeetingBtns]'); + const $$ = document.querySelectorAll.bind(document); + + const $indicator = document.createElement('div'); + Object.assign($indicator.style, { + backgroundColor: 'red', + width: '200px', + height: '100px', + position: 'fixed', + zIndex: 90000, + left: 0, + top: 0, + opacity: 0, + }); + + const getMuteBtns = () => Array.from($$('[data-is-muted][role="button"]')); + + const updateMuteState = () => { + try { + const $btns = getMuteBtns(); + const $mutedBtns = $btns.filter($btn => $btn.dataset.isMuted === 'true'); + Object.assign($indicator.style, { + opacity: $mutedBtns.length === $btns.length ? 0 : 1, + }); + } catch (e) { log('update error', e); } + }; + + const observer = new MutationObserver(diffs => { + log('mutation observer'); + const muteChange = diffs.find(d => d.attributeName === 'data-is-muted'); + if (!!muteChange) { + log('updating mute state'); + updateMuteState(); + } + }); + + const init = () => { + const $muteBtns = getMuteBtns(); + log('initializing', $muteBtns); + document.body.appendChild($indicator); + + $muteBtns.forEach($btn => { + observer.observe($btn, { attributes: true, attributeFilter: ['data-is-muted'] }); + updateMuteState(); + }); + + if (window.$$$muteObserver) window.$$$muteObserver.disconnect(); + window.$$$muteObserver = observer; + }; + + const timer = setInterval(() => { + const $btns = getMuteBtns(); + const hasJoinedMeeting = $$('[data-meeting-code]').length === 0; + log('checking if joined...', hasJoinedMeeting); + if ($btns.length > 0 && hasJoinedMeeting) { + setTimeout(() => init(), 1000); + clearInterval(timer); + } + }, 500); +})(); + diff --git a/config/qutebrowser/greasemonkey/slack.js b/config/qutebrowser/greasemonkey/slack.js index b1d6cc4..2f1eeef 100644 --- a/config/qutebrowser/greasemonkey/slack.js +++ b/config/qutebrowser/greasemonkey/slack.js @@ -21,13 +21,14 @@ let count = 0; const timer = setInterval(() => { const $btns = notificationsButtons(); - console.log('>> Notification buttons', $btns); + console.log('>> [GM-N] Notification buttons', $btns); Array.from($btns) - .filter($btn => $btn.textContent.match(/enable.*notification/)) + .filter($btn => $btn.textContent.match(/enable.*notification/gi)) .forEach($btn => { $btn && $btn.click(); clearInterval(timer); + console.log('>> [GM-N] Enabled notifications') }); if (count > 10) clearInterval(timer); diff --git a/config/qutebrowser/homepage/index.html b/config/qutebrowser/homepage/index.html index 0578cb0..0794c1d 100644 --- a/config/qutebrowser/homepage/index.html +++ b/config/qutebrowser/homepage/index.html @@ -36,10 +36,7 @@ children.forEach($ch => $el.appendChild($ch)); return $el; }; - const text = str => { - const $t = document.createTextNode(str); - return $t; - }; + const text = str => document.createTextNode(str); const render = ($el, $tree) => { while($el.firstChild) $el.removeChild($el.firstChild); $el.appendChild($tree); @@ -111,28 +108,24 @@ </style> <script> const $clock = $('#clock'); - - const formatTime = date => { - const format = new Intl.DateTimeFormat('en-IN', { + const formatters = { + time: new Intl.DateTimeFormat('en-IN', { hour12: true, hour: 'numeric', minute: 'numeric' - }); - - return format.format(date); - }; - const formatDate = date => { - const format = new Intl.DateTimeFormat('en-IN', { + }), + date: new Intl.DateTimeFormat('en-IN', { weekday: 'long', month: 'short', day: 'numeric', - }); - - return format.format(date); + }), }; + const formatTime = date => formatters.time.format(date); + const formatDate = date => formatters.date.format(date); + function renderDateTime() { const d = new Date(); // Update every second - setInterval(renderDateTime, 20 * 1000); + setTimeout(renderDateTime, 20 * 1000); render($clock, h('div', {}, [ h('div', { className: 'home-time' }, [ text(formatTime(d)) ]), diff --git a/config/qutebrowser/quickmarks b/config/qutebrowser/quickmarks index a06758b..fcddad6 100644 --- a/config/qutebrowser/quickmarks +++ b/config/qutebrowser/quickmarks @@ -1,17 +1,4 @@ -Basecamp https://3.basecamp.com/3689808/ Whatsapp https://web.whatsapp.com/ -My Github https://github.com/phenax -Github trending https://github.com/trending Gmail:personal https://mail.google.com/mail/u/0/#inbox Gmail:work https://mail.google.com/mail/u/1/#inbox -Open proxy gitlab https://gitlab.com/shaadi/proxy/open-proxy-platform -Flutter docs https://api.flutter.dev/ -Xlib docs https://tronche.com/gui/x/xlib/ -Suckless https://suckless.org/ -Reverse shell cheatsheet http://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet -Linux Privilege Escalation https://book.hacktricks.xyz/linux-unix/linux-privilege-escalation-checklist -GTFOBins https://gtfobins.github.io/ -Reverse Shell Cheat Sheet https://highon.coffee/blog/reverse-shell-cheat-sheet/ -Exploit Database https://www.exploit-db.com/ -OSINT Framework https://osintframework.com/ -Gmail:invideo https://mail.google.com/mail/u/2/#inbox/FMfcgxwKjdpcWbFMBtRcBWPWHWTBzhph +Gmail:colabra https://mail.google.com/mail/u/3 diff --git a/config/qutebrowser/ui.py b/config/qutebrowser/ui.py index fc376b8..e976f98 100644 --- a/config/qutebrowser/ui.py +++ b/config/qutebrowser/ui.py @@ -15,10 +15,9 @@ def read_xresources(prefix): xresources = read_xresources('*') -c.fonts.default_family = 'JetBrains Mono' +c.fonts.default_family = 'JetBrainsMono Nerd Font' c.fonts.default_size = '12px' c.colors.webpage.preferred_color_scheme = 'dark' -# c.colors.webpage.prefers_color_scheme_dark = True c.colors.webpage.bg = "white" c.colors.webpage.darkmode.enabled = False |
