Rig Rundown:
I have 2 System76 laptops and a 2006 refurb MBP I extremely dislike using. Still, I maintain a similar file structure for my projects and my domain names are easy to swap. Example: /home/{NAME}/Projects/bin.
This bin folder, under /Projects, makes it super straight forward to organize my common bash scripts I keep and try to make agnostic to OS. Sorry windows users, my 10yo tower converted to media server died, so I no longer consider Windows, or WSSL. RIP triboot- someday I will build again.
Github
Everything within the projects folder is a client folder/site folder and 98% comprised of github repos. This also includes forks of github repos where I want to patch a program or make from source, and add it to $PATH. An example of this would be the Marktext.app; an electron client for editing markdown. I patched my own dropdowns and buttons to add a “Build” and “Publish” ribbon. This was super cool because I was playing with Obsidian for syncing and .md note management, but I could almost use it as a database and connect various client consumers, like this blog. The Publish button mentioned would run scripts to take my .md files, transcribe image links found, git pull, git add, git commit (a bunch of auto git commands to sync to whichever platform)-> this would trigger a netlify build and update the app in question.
~/Projects/bin
Projects/bin is also it’s own github repo. It contains all the bash.sh- as individual, and granular, pieces of functionality. It also contains .aliases, .functions for sourcing within each computers .zshrc
If you have been following, I have an alias als
for creating aliases. The general use case is syncing the numerous aliases I create in a given week between computers. Just git pull && zsh
&& it’s ready to go!
This folder also contains structure for some critical utilities
- lists/
- todo.sh
- timer.sh
- translation es|en
- cht.sh
- autogit
- budgets.sh (for taxes lol)
Part II Coming
I will breakdown these scripts and provide a part II. If any one of the above scripts peak your interest, I will focus on it in the next part. Comment below!