/dotfiles-1

My arch linux setup. Scripts, configs and more.

Primary LanguageShell

dotfiles

Collection of config files, install scripts, list of used apps

Table of Contents

How this repos config deployment works

Using ./import-configs (pull local configs into directory) and ./install-configs (install configs from directory in the system) you can get/set config files based on what you are currently using (listed in used-apps). The used-apps file lists categories defined in mappings, for example the category zsh is defined as:

[zsh]
.zshrc
.zsh

Which means, that if zsh is listed in used-apps on import/install the file ~/.zshrc and the directory ~/.zsh/ will be copied.

How this repos app install works

Using ./apps-install you can install all apps that you are currently using. These are listed in used-apps, the categories of which are defined in apps. For example the NetworkManager category:

[nm]
networkmanager NetworkManger
systemd:NetworkManager

Which if nm is in used-apps will run yay -S networkmanager and sudo systemctl enable NetworkManager after the install. The first argument is the package, the rest is description. Prefixes (like systemd:), are for doing non-pacman stuff (npm install, etc.).

Warning: Not all configs in the repo are actively being used. See 'how it works' above.

Terminal apps

zsh (shell)

Superior shell, extends bash/posix.

I'm using a stripped down version of oh-my-zsh with a lot of custom aliases.

tmux (terminal mutiplexer)

Multiple shells within the same terminal, screen splitting and much more.

vim (terminal editor)

Neovim with custom macros, hooks and a few plugins.

git (version control)

mpd + ncmpcpp (music player)

Music player daemon and its client.

GUI apps

kitty (terminal)

Fast, easy to configure, batteries included.

mpv (video/audio player)

Everything you'll ever need from a video player.

rofi (application launcher/dmenu)

System apps

sxhkd (hotkey daemon)

The essential hotkey daemon.

i3 (window manager)

Lightweight window manager.

lock screen

i3lock with a custom screenshot script.

CLIs

npm:

name description links
fkill Interactive process killer npm git
dict-cc Dict.cc lookup from the command line npm git
tslide Terminal slide deck using markdown npm git
alder Print current directory as ascii tree npm git

npm development:

name description links
markdown-toc Generate markdown toc npm git
np Better version of 'npm publish' npm git
npm-name Check module name availability npm git
yo Run yeoman generators to create boilerplates npm git
generator-jneidel Collection of boilerplates, for installation with yeoman npm git

General:

name description links
tmux Terminal multiplexer pacman homebrew git
youtube-dl Configurable youtube downloader pacman git

General development:

name description links
grip Render readme with github styles for local testing pacman homebrew git
jq JSON processor pacman git

Browser Extensions

Browser extensions, sorted by category.

Essentials:

name description links
uBlock Origin Best free (as in freedom) adblocker firefox chrome
Vimium Navigate browser with vim shortcuts firefox chrome git
HTTPS Everywhere Force encrypted connections (HTTPS) firefox chrome
Dark Reader Dark mode for websites firefox chrome git
Privacy Badger Stop suspicious trackers firefox chrome
KeePassXC-Browser KeePass integration for password insert firefox chrome git

Privacy:

Firefox (nightly) is my main browser. I have it setup to delete cookies and history on exit. You can find these options under "Privacy & Security".

name description links
NoScript Block domains from executing javascript firefox
Chameleon Easily spoof user-agents & more firefox git
Decentraleyes Stop tracking through CDNs firefox chrome git
Disable WebRTC Stop IP leakage while using a VPN firefox

For an more infos on why these plugins are important view privacytools.io.

See my exported settings for some of the addons.

Coding:

Chromium is my browser for web-development.

name description links
Chrome Markdown Preview Elegant GFM preview on .md files chrome git
JSON Formatter Easy to read JSON formatting chrome git
Modify Header Value Set HTTP headers firefox chrome homepage
OpenGenus quark Offline algorithm search engine chrome git
npmhub List npm dependencies in readme chrome git
Refined GitHub GitHub functional/visual upgrade chrome git
More GitHub related plugins

A comprehensive list of GitHub chrome extensions can be found here.

name description links
Octotree GitHub file tree chrome git
Vscode-icons Icons indicating file type chrome git
Lovely Forks Shows notable forks chrome git
npm-stats Display npm download stats in repo chrome git
show-email Display email on profile, even if not provided chrome git
omnibar Shortcut navigation for github chrome git
issue-link-status Colorize issue links depending on status chrome git
build-tabs Build tab for github chrome git
github-autocomplete Github search autocomplete chrome git
github-plus Display repo size, download links chrome git

Misc:

name description links
Easy to RSS Get the rss feeds of the current site firefox chrome git
SoundCloudOG Filter reposts out of your soundcloud stream chrome
Universal Bypass Bypass annoying link shorteners firefox chrome git
Dict.cc Translation Quick translations firefox git
Block Site Block domains in the browser chrome
Maybes (not in current use)
name description links
IMDb Ratings on Netflix Show ratings on overview pages firefox chrome git
StayFocusd Site blocker, limit black list to given time chrome
Toby Better bookmark manager chrome
Hover Zoom+ Large overlay on image and link to image hover chrome git
Theater Mode for YouTube Activate theater mode for all yt videos firefox

Theme:

I use Arc Dark as I based my terminal colorscheme on it. firefox chrome

Android apps

I am running LineageOS.

F-Droid is a software repository hosting free and (mostly) open source apps. If available always try to use F-Droid over the google play store. Read more on F-Droid. Most fdroid apps are also on gplay, even if I did not include them here.

Ordered by importance.

name description links
Signal Privacy friendly messaging, end to end encrypted chat gplay git
f.lux Bluelight filter (root) gplay website
Time Meter Smooth time tracker, with exports gplay
Simple Calendar Calendar fdroid git
Vinyl Full featured music player fdroid gplay git
OI Shopping List Shopping list fdroid
M.A.L.P. MPD client fdroid
FBReader Ebook reader fdroid gplay git
DuckDuckGo Browser fdroid
Markor Markdown editor, notes app fdroid gplay git
K-9 Mail Mail fdroid sync-setup
dict.cc Offline dictionary gplay
Öffi Public transport planning fdroid
OsmAnd Navigation fdroid gplay
Alarmio Alarm clock, timer fdroid git
DAVx⁵ CalDAV sync fdroid website setup explaination
Open Camera Camera fdroid git
p!n Pin notes as notifications fdroid git
primitive ftpd ftp server fdroid git
Termux Terminal emulator fdroid git
Amaze File manager fdroid git
Audipo Audio player optimized for podcasts (speed, skipping) gplay
MuPDF PDF viewer fdroid
Anki Flashcards fdroid gplay git
MX Player Video player (better than vlc) gplay
My Expenses Expense/income tracker, with exports fdroid gplay git
HiPER Calc Superior calculator gplay
KeePass DX Mobile keepass database fdroid
Vespucci OSM Editor fdroid
Micopi+ Generate profile picture for contacts fdroid
Voice Audiobook player (more formats than audiopo, but inferior interface) fdroid
DNS66 Mobile hosts file fdroid
Binary Eye QR reader fdroid
Maybes (not in current use)
name description links
JuiceSSH Mobile mosh (ssh) client fdroid
Macros Calorie Counter gplay
Relaxio White-noise player gplay
CamScanner Document scanner gplay
StreetComplete Simplified OSM contribution fdroid
Dicer Roll dices fdroid
Tape Measure Measure distances in an image fdroid
Scrambled Exif Remove metadata from images before sharing them fdroid
DeuFeiTage German holidays fdroid
MPDroid Alternative MPD client fdroid
Bluelight Filter Filters the bluelight, easier on the eyes, set filter based on time gplay

OSX

My osx install is no longer maintained, but you can still explore the files here.

Related

generator-jneidel - My personal collection of boilerplates, for installation with yeoman