This directory contains the dotfiles for my system and an install script to get started. This script was written in and for Fedora 39/40 on GNOME DE.
Ensure you have the following installed on your system
- Clone the repo to your $HOME path, that's it!
- Backup your
.bashrc
and.bash_profile
files. - Navigate to the repo
stow .
in your shell- Navigate to
/first_time_setup/
. - Utilize the
install.sh
script. - Test & Debug
here's a handy lil list of all the things!
- these things are actually saved inside this repo
- configs
- these things are downloaded from elsewhere, like applications
- Fonts patched with Nerds Font Patcher
- Liberation Fonts
- Geist Fonts (manual install)
- Wallpapers patched to have Light/Dark mode versions in GNOME.
- Starship
- Catppuccin color scheme for WezTerm, NeoVIM, Starship,
Tools I Use
GNOME Extensions
- User Extensions
- App Hider
- Applications Overview Tooltip
- Auto Move Applications
- Bedtime Mode
- Clipboard History
- Display Scale Switcher
- Gravatar
- GSConnect
- Just Perfection
- Notification Banner Reloaded
- Open Bar (disabled for performance)
- Quick Setting Tweaker
- Quick Settings Audio Devices Renamer
- Removable Drive Menu
- spotify-tray
- Status Area Horizontal Spacing
- Tactile
- User Avater in Quick Settings
- Vitals
- System Extensions
- Appindicator and KStatusNotifierItem Support
- Background Logo
General Productivity
- GUI
- Backups (provided by
deja-dup
) for Home Directory backups - Firefox (Web Browser)
- Extensions:
- ProtonPass
- ProtonVPN
- UBlock Origin
- Privacy Badger
- Dark Reader
- Flagfox
- Tree Style Tab
- Extensions:
- Obsidian (Note Taking) - config occurs via Sync plugin
- Theme: Minimal
- (Community) Plugins:
- Highightr
- Calendar
- Periodic Notes
- Folder Notes
- Waypoint
- Hider
- Style Settings
- Minimal Theme Settings
- Synfig (Animation Software)
- Godot (Game Egnine)
- Google Chrome (Keyboard Training via zsa.io) - not included. download urself
- LibreOffice Suite (Office Productivity Suite)
- Vibreoffice
- CodeHighlighter
- Audacity (Audio Editing Software)
- Reaper (Digital Audio Workstation) - not included. download urself
- ProtonMail (Mail & Calendar) - not included. download urself
- ProtonPass (Password Manager) - not included. download urself
- ProtonVPN (VPN Client) - not included. download urself
- Backups (provided by
Development Tools
- WezTerm (terminal emulator)
- Bash (CLI)
- Git
- GNU Stow
- Bat (
cat
improvement) - Bats (Bash test framework)
- LSD (prettier
ls
) - rsync for Obsidian Vault backup to local folder.
- Starship (nice prompt)
- TLDR
- NeoVIM
- Plugins:
- Colorschemes:
- Catppuccin
- Kickstart defaults:
- Autopairs
- Cmp
- Conform
- Debug
- Git Signs
- Indent Line
- Lint
- LSP Config
- Mini
- NeoTree
- Telescope
- Todo Comments
- Treesitter
- WhichKey
- User plugins:
- Auto Dark Mode
- Vim-Bundler
- Vim-Commentary
- Vim-Endwise
- Vim-Fugitive
- Vim-Rails
- Vim-Tmux
- Neoscroll (remove?)
- wezterm/nvim interaction plugin (tbd & added)
- Colorschemes:
- Plugins:
- Tmux (to be removed as WezTerm becomes main)
- Plugins:
- TPM (plugin manager)
- Tmux-Sensible
- Tmux-Which-Key
- Plugins:
- Programming Languages
- elm
- javascript
- julia
- python
- ruby
- rust
- vala
- zig
Notes:
- design keybinds to be easy on laptop keyboard
- Voyager keyboard to have macros to handle keybinds.
- See shortcuts.json
- GNOME = SUPER
- SWITCHER = SUPER + E
- TACTILE = SUPER + W... change?
- WEZTERM = SUPER + ... ?
- NEOVIM = SPACE... add SUPER?
- ...
- Open a new window
- Close current window
- Open a new tab
- Close current tab
- Prev/Next Workspace
- Prev/Next Application = (SHIFT) + SUPER/ALT + TAB
- Prev/Next Application in Workspace
- Prev/Next Window
- Prev/Next Window of Application
- Prev/Next Tab = (SHIFT) CTRL + TAB
- (SHIFT) + SUPER/ALT + TAB = (Reverse) Switch Application
- = Switch Window
- SUPER + ESC = Switch Window of Application Directly
- SUPER + Num = Open or Switch Directly to Favorite Application
- Close/Open Workspace
- Close/Open Application
- Close/Open Window = (SHIFT) CTRL + W
- Close/Open Tab = (SHIFT) CTRL + T
- Window Switcher = SUPER + E
- Prev/Next Workspace
- Prev/Next Application
- Prev/Next Window
- Prev/Next Tab = (SHIFT) CTRL + TAB
- Switch Focus = SUPER + H/J/K/L
- Prev/Next Monitor = TACTILE -> (SHIFT) + SPACE
- Maximize = SUPER + UP or TACTILE ->
- Minimize
- Grid-based Split = TACTILE + Point 1 + Point 2
- Fold Commands: z
- Switch Active Window (split) = CTRL + H/J/K/L
GNOME :
- hint:
gsettings list-recursively | grep -i "keybinding"
Obsidian :
- LEADER = SPACE
- U (normal mode) = Undo
- CTRL + R (normal mode) = Redo
- NeoScroll:
- CTRL + U = Scroll Up
- CTRL + D = Scroll Down
use window macros for panes?
- LEADER =
- Searching:
- SHIFT + CTRL + F = enter scrollback search mode
- Spawning:
- LEADER + N
- LEADER + T
- SHIFT + CTRL + N = spawn window
- SHIFT + CTRL + T = spawn tab
- Navigating:
- LEADER + ARROW_KEY
- SHIFT + CTRL + ARROW_KEY = activate pane relative to current pane
- LEADER +
- CTRL + TAB = next tab
- SHIFT + SUPER + [ or ] = activate next or previous tab relative to current tab
- Sizing:
- LEADER +
- Other:
- SHIFT + CONTROL + P = activate command palette
- Searching:
- readme (v2)
- clean-up read me
- merge-clean old todos into new
- simplify readme; less is more
- better "whats included" section
- "keybinds" to its own md file
- hyperlinks
- general file management outline/instruction
- obsidian vault explanation + where to find it + backups
- applications list
- clean-up read me
- dotfiles (v2)
- uhhhhuhuhuh
- research & test
- [/] pop-os/shell
- [/] cosmic-settings, how are keybinds handled->pull 376
- dotfiles on ubuntu, install.sh on ubuntu
- standard keybind adoption
- reinstall
- pre-reqs
- clean
- document
- test on vm
- test 1: manual install (ubuntu & fedora)
- test 2: script install (ubuntu & fedora)
- compare
- document
- simplify
- [ ]
- pre-reqs
- [/] link external github repos, i.e. rbenv, plugins, bash scripts, etc.
- Voyager keybinds
- ctrl + a macro lol? - double tap a?
- application specific macros:
- prev/next tab macros
- wezterm tab management...
- keybinds:
- Make Reliable/Sensible Defaults
- WezTerm
- delete all keybinds, then:
- leader key(bind)
- pane: create, delete, size, selection
- tab: create, delete, selection
- determine:
- wezterm functionality to keep or remove
- command palette?
- use starship + wezterm to name tabs as "process: filename:" ?
- wezterm functionality to keep or remove
- test i3, other WMs
- find a better way to manage keybinds
- test:
- xbindkeys
- test:
- semantic ANSI text styling variables
- install scripts
- test install scripts
- retest install scripts
- rewrite with mise
- retest
- fix errors
- finalize functionality
- put installs into individual functions
- put status printing into individual functions?
- options?
- standard
- --help
- --all (install all)
- --list
- -o (output log filename)
- --quiet
- --verbose
- --assume-yes
- --noexec
- --debug
- standard
- select menu (when no --all)
- uninstall?
- finish distro-agnostism
- impl shell-agnostism?
- retest install scripts
- implement BATS
- fix new errors
- add firefox-dev setup~ connection with nvim
- test on Ubuntu
- common-use scripts...?
- update all?
- backup...?
- humble bundle documents
- GNOME settings? (dconf)
- gsettings?
- compression
- individually compress directories in this directory
-
obsidian -> standard notes?, wait to see proton offering
-
prune unneccessary stuff
-
stuff to add to dotfiles
- gnome extensions + extension settings
- gnome tweaks + settings
- kdenlive
- audactity
- starship
- discord desktop
- vencord (does this break discord rules?)
- fastfetch
- vibreoffice
-
might rice
- to test/add:
- fastfetch
- pitvi vs kdenlive
- kdenlive
- vibreoffice
- fzf
- atuin?
- chezmoi?
- powertop
- discord desktop
- vencord (does this break discord rules?)
- pomotroid
- to remove
- to test/add:
-
to config
- sway
- keybinds
- workspaces
- disable follow mouse focus
- sway