Chromium
Table of Contents
Settings
Disable Device Discovery Notifications. This service opens UDP port 5353 on all interfaces for discovering. Don't need whatever this feature is. chrome://flags/#device-discovery-notifications
Enable Load Media Router Component Extension for chromecast because otherwise casting plugin cannot find devices to cast to. chrome://flags/#load-media-router-component-extension
Enable Reader Mode. Allows toggling a reader mode from the kebab menu. chrome://flags/#enable-reader-mode
Disable third party cookies. Settings > Show Advanced Settings > Privacy and Security > Content Settings > Cookies > Block third-party cookies.
Theme
Name | Just Black |
Description | Midnight monochrome |
Store Page | https://chrome.google.com/webstore/detail/aghfnjkcakhmadgdomlmlhhaocbkloab |
Purpose | Dark UI Theme |
Chrome Apps
Name | Plex NAS Launcher |
Description | Creates an app launcher in Chrome for opening the Plex web app on your LAN. |
Store Page | https://chrome.google.com/webstore/detail/obfggandbonlahgdfibbdcahgahifjje |
Purpose | Handy plex launcher |
Extensions
Name | Advanced Font Settings |
Description | Customize per-script font settings. |
Store Page | https://chrome.google.com/webstore/detail/caclkomlalccbpcdllchkeecicepbmbm |
Purpose | More specific font selection. |
Name | Bookmark All |
Description | Extends chrome's bookmark all tabs feature across all open windows. |
Store Page | https://chrome.google.com/webstore/detail/jjhpikpjjhlcmifagompgmhkjalhjopj |
Purpose | Saves bookmarks across all windows (used to export tabs to other browsers) |
Site | https://github.com/drewis/chrome_extension_bookmark_all |
Name | Clever Mute |
Description | This extension mutes all sites by default. If a site tries to play any sound you'll be notified so you can decide what to do |
Store Page | https://chrome.google.com/webstore/detail/eadinjjkfelcokdlmoechclnmmmjnpdh |
Purpose | Auto mutes tab on sound output. Remembers unmuted sites. |
Name | Cluster - Window & Tab Manager |
Description | Window and Tab manager for managing multiple open tabs and windows with simplicity. |
Store Page | https://chrome.google.com/webstore/detail/aadahadfdmiibmdhfmpbeeebejmjnkef |
Purpose | Nice tab overview. Ability to move tabs between windows and group them efficiently. |
Site | https://clusterwm.com/ |
Name | Dark Reader |
Description | Dark mode for every website. Take care of your eyes, use dark theme for night and daily browsing. |
Store Page | https://chrome.google.com/webstore/detail/eimadpbcbfnmbkopoojfekhnkhdbieeh |
Purpose | Dark mode through filters, inversion, etc. |
Site | https://darkreader.org/ |
Name | Narrower |
Description | Add margins to wide pages. |
Store Page | https://chrome.google.com/webstore/detail/jfjaedekncgddegockpigkkpgkhaoljg |
Purpose | Adds margins to wide sites for better readability. |
Site | https://github.com/andrey-leshenko/Narrower |
Name | New Tab Redirect |
Description | Allows a user to provide the URL of the page that loads in a new tab. |
Store Page | https://chrome.google.com/webstore/detail/icpgjfneehieebagbmdbhnlpiopdcmna |
Purpose | Specify the URL to load on a new tab. |
Site | https://github.com/jimschubert/newtab-redirect |
Name | Old Reddit Redirect |
Description | Ensure Reddit always loads the old design |
Store Page | https://chrome.google.com/webstore/detail/dneaehbmnbhcippjikoajpoabadpodje |
Purpose | Always redirect to old.reddit |
Name | Privacy Badger |
Description | Privacy Badger automatically learns to block invisible trackers. |
Store Page | https://chrome.google.com/webstore/detail/pkehgijcmpdhfbdbbnkijodmdjhbjlgp |
Purpose | Block trackers. |
Site | https://privacybadger.org/ |
Name | Reading Time |
Description | This extension shows the estimated reading time for a web page |
Store Page | https://chrome.google.com/webstore/detail/nccohhimobidpghgpnejnbkpoichbbml |
Purpose | Widget to show approximate reading time on each page. |
Site | https://github.com/usergit/reading-time |
Name | Save to Pocket |
Description | The easiest, fastest way to capture articles, videos, and more. |
Store Page | https://chrome.google.com/webstore/detail/niloccemoadcdkdjlinkgdfekeahmflj |
Purpose | Send pages to Pocket service to be read later (also syncs with Kobo e-reader). |
Site | http://getpocket.com/ |
Name | uBlock Origin |
Description | Finally, an efficient blocker. Easy on CPU and memory. |
Store Page | https://chrome.google.com/webstore/detail/cjpalhdlnbpafiamejdnhcphjbkeiagm |
Purpose | Adblocker. |
Site | https://github.com/gorhill/uBlock |
Name | UnDistracted |
Description | Rise above the time-sinks |
Store Page | https://chrome.google.com/webstore/detail/pjjgklgkfeoeiebjogplpnibpfnffkng |
Purpose | Blocks distracting websites or components of them that lead to time wasting (comments, recommendations, feeds, chat, etc.). |
Name | Unpinterested! |
Description | Remove Pinterest from Google search results |
Store Page | https://chrome.google.com/webstore/detail/gefaihkenmchjmcpcbpdijpoknfjpbfe |
Purpose | Remove pinterest from search results because their pages are internal-only link spam. |
Site | https://unpinterested.sellomkantjwa.com/ |
Name | Wayback Machine |
Description | The Official Wayback Machine Extension - by the Internet Archive. |
Store Page | https://chrome.google.com/webstore/detail/wayback-machine/fpnmgdkabkmnadcjpehmlllkndpkmiak |
Purpose | Open pages using Wayback Machine. |
Grabbing plugin metadata
Here's a script to collect and output plugin info for more easily updating my list above.
#!/bin/bash ## Parse out extension information from chromium profile directory ## Output is an org mode table, but could be modified easily # requires jq # not tested thoroughly. base_path="$HOME/.config/chromium/" # check for last used profile profile=$(jq -r '.profile.last_used' "$base_path/Local State") if [[ $profile == "null" ]]; then profile="Default" fi ext_path="$base_path$profile/Extensions" ext_dirs=() # extension directories path ext_manifests=() # extension manifest.json path ext_ids=() # extension id from directory (used in store url) ext_names=() # extension short name ext_descs=() # extension short description for ext_dir in "$ext_path"/*/; do ext_ids+=("$(basename "$ext_dir")") ext_dirs+=("$ext_dir") # grab a manifest ext_manifests+=("$(find "${ext_dirs[-1]}" -name manifest.json|head -n 1)") # When 'name' or 'description' starts with __ it indicates the string can # be found elsewhere like in '_locales/en/messages.json' # Locale can be taken from 'manifest.json' .default_locale # So for __MSG_appName__ the json path will be like: .appName.message # pull info from manifest.json ext_names+=("$(jq -r ".name" "${ext_manifests[-1]}")") if [[ "${ext_names[-1]}" = "__"* ]]; then # strip underscore guards last_name=${ext_names[-1]} name=${last_name#"__MSG_"} name=${name%"__"} locale=$(jq -r ".default_locale" "${ext_manifests[-1]}") message_file="$(find "${ext_dirs[-1]}" -path "*_locales/$locale"|head -n 1)/messages.json" ext_names[-1]=$(jq -r .\"$name\".message "$message_file") fi ext_descs+=("$(jq -r ".description" "${ext_manifests[-1]}")") if [[ "${ext_descs[-1]}" = "__"* ]]; then # strip underscore guards last_desc=${ext_descs[-1]} desc=${last_desc#"__MSG_"} desc=${desc%"__"} locale=$(jq -r ".default_locale" "${ext_manifests[-1]}") ext_descs[-1]=$(jq -r .\"$desc\".message "$(find "${ext_dirs[-1]}" -path "*_locales/$locale"|head -n 1)/messages.json") fi done for index in ${!ext_ids[*]}; do echo "#+BEGIN_grouping" echo "#+ATTR_LATEX: :width \\linewidth :align lX :font \\footnotesize\\rmfamily" echo "|Name|${ext_names[$index]}|" echo "|Description|${ext_descs[$index]}|" echo "|Store Page|[[https://chrome.google.com/webstore/detail/${ext_ids[$index]}]]|" echo "|Purpose||" echo "|Site|-|" echo "#+END_grouping" echo done
Sort blocks in Vim
Visually select all blocks
:'<,'>s/\n\([|#]\)/@\1/ :'<,'>sort :'<,'>s/@/\r/g