I have install scripts for macos and ubuntu. They're close to perfect, but not quite only minor tweeks recommended.
- MacOS install (Intel & Apple Silicon M-series)
- Ubuntu install
- Proxmox install
- Remote server install (no sudo required)
- Manual Ubuntu install (Legacy, but solid)
THIS IS FOR MAC ONLY! Tested on Intel and Apple Silicon.
Some things go first, others go last... Follow this document flow.
You need to open this link in safari, accept all permissions including kernel extension
# 1. Install Karabiner
brew install --cask karabiner-elements
# 2. Open this link IN SAFARI!! Must be Safair for deep links.
karabiner://karabiner/assets/complex_modifications/import?url=https://raw.githubusercontent.com/Vonng/Capslock/master/mac_v3/capslock.json"]
# 3. The main install script backs up an existing Karabiner config before symlinking.The install is nearly perfect. Check the *.config.yaml file to customize.
# Existing regular dotfiles are backed up with an .OLD.<timestamp> suffix before symlinking.
# send it! This uses dotinstall
./master-setup-scripts/install_mac_apple_siliconThe installer links notify-kastan and notify-kastan-pushover-setup into
~/.local/bin. On each Mac, run notify-kastan-pushover-setup once to store the
Pushover User Key and application token in that machine's login Keychain.
The Apple Silicon installer imports the old manual app configuration from MANUAL_TASKS:
- iTerm2 profile JSON is installed as a Dynamic Profile.
- Typinator is pinned to 9.2 for license compatibility, then the
.tysetfolders are copied into Typinator's Sets folder. - BetterTouchTool must be installed manually for licensing. If it is already installed, the
.bttpresetfile is imported when BTT scripting is available. If BTT still requires first-run approval, the preset file is opened for app-level import. - Karabiner-Elements, WhatsApp, and Codex Desktop are installed automatically.
These setup scripts use uv for Python tooling. Conda/Mamba installers are intentionally not included.
export TAILSCALE_AUTHKEY=xxx # find auth key here: https://tailscale.com/kb/1085/auth-keys
# main install script
./master-setup-scripts/install_ubuntu_vmexport TAILSCALE_AUTHKEY=xxx # find auth key here: https://tailscale.com/kb/1085/auth-keys
# main install script
./master-setup-scripts/install_proxmoxDownload zsh with:
wget -O zsh.tar.xz https://sourceforge.net/projects/zsh/files/latest/download
mkdir zsh && unxz zsh.tar.xz && tar -xvf zsh.tar -C zsh --strip-components 1
cd zsh
./configure --prefix=$HOME
make
make installStart a new terminal (new ssh)
# install oh my zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
# install powerlevel10k
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
Set in ~/.zshrc
ZSH_THEME="powerlevel10k/powerlevel10k"# Rust & Cargo (for LSD)
curl https://sh.rustup.rs -sSf | sh
cargo install dirstat-rs
# dirstat-rs is a better du. usage is `ds`. See github.Use my dot-files
git clone https://gitlab.com/kastan/dot-files.git
cd
mv .zshrc .zshrc_old
mv .bashrc .bashrc_old
# move dotfiles
mv <dotfiles>/.* ~Off to a great start.
- Use ZSH and Oh-My-Zsh
sudo apt install zsh
# install oh my zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"- Use PowerLevel10k
# install powerlevel10k
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k- Use NerdFonts - http://nerdfonts.com/
- All fonts downloaded from here have the full nerdfont icon packs.
- Must add font to
~/.hyper.jsconfig file. Make sure use name listed on install file. - Use "Windows compatible" fonts
- Source Code Pro font:
- On Windows & WSL it's called: "SauceCodePro NF"
- On Ubuntu it's called: "SauceCodePro Nerd Font"
- ProFont is nice too!
- Use ZHS-Autosuggestions - Make sure to do the
Oh My Zshsetup (not defautl)! -ctrl + spaceto accept and execute suggestion -ctrl + jto accept suggestion, and edit. Only install step:
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
- Terminal syntax highlighting
- Syntax highlighting from https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/INSTALL.md
- Only install step:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
Download the release file (for proper architecture): https://github.com/Peltoche/lsd/releases/
I like it cuz it uses icons! Faster scan-reading speed.
# for amd64
# on mac us brew
wget https://github.com/Peltoche/lsd/releases/download/latest/lsd_0.21.0_amd64.deb
sudo dpkg -i lsd_0.21.0_amd64.deb
- fasd fuzy jump and open
- In .zshrc for Oh-My-Zsh plugins: plugins=(fasd)
- Then install:
sudo add-apt-repository ppa:aacebedo/fasd && sudo apt-get update && sudo apt-get install fasd -y
sudo apt install ncdu indicator-multiload copyq silversearcher-ag bat fzf# Install pyenv - best env manager (auto enabled/disabled based on pwd)
# settings are already in .zshrc
# Dependencies
sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl
# Install pyenv
curl https://pyenv.run | bash# make sure copyq actually worked
sudo apt install software-properties-common python-software-properties -y && sudo add-apt-repository ppa:hluk/copyq -y && sudo apt update && sudo apt install copyq -yAnd you're done!! Congrats.
ncdufor deleting big files. Amazing interface for seeing how big files are, and cleaning up quickly.
sudo apt install ncdu
sudo ncdu / # usage
- indicator-multiload (for taskbar system resources stats)
sudo apt install indicator-multiload
# config: (check all the boxes except one)
# Add the following to a **single line** in the `preferences` -> `indicator items`
CPU $(percent(cpu.inuse)) Net $(speed(net.down)) down $(speed(net.up)) up Mem $(size(mem.user)) + $(size(mem.cached)) / $(size(mem.total)) = $(percent( (size(mem.user) + size(mem.cached) ) /size(mem.total))) usage
- clipboard manager (more info here if repo isn't found https://itsfoss.com/best-indicator-applets-ubunt):
sudo apt install copyq
-
SKIP. USE LSD INSTEAD :) exa ls. Better ls, fast cuz it's rust!
sudo apt install exaIf that doesn't work, try installing from source (easy, trust me). Thenalias ls=path/to/binary/executablein.zshrc -
SKIP. TOO SLOW. FUCK RUBY. color-ls makes your ls call beautiful
- in
.zshrcadd:alias ls=colorls sudo apt-get install ruby-full- After ruby installed:
gem install colorls - or here's a guide for more detail
- Ensure in .zshrc:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"
- Ensure in .zshrc:
- in
- indicator-multiload (for taskbar system resources stats)
- Add the following to a single line in the
preferences->indicator items
- Add the following to a single line in the
CPU $(percent(cpu.inuse)) Net $(speed(net.down)) down $(speed(net.up)) up Mem $(size(mem.user)) / $(size(mem.total)) = $(percent(size(mem.user)/size(mem.total))) usage
-
Ubuntu store: Gnome Tweaks, Unity Tweak Tool, Gnome Characters, Emoji Picker
-
Icons: Papirus-dark - My favorite
sudo add-apt-repository ppa:papirus/papirus -y && sudo apt update && sudo apt install papirus-icon-theme
-
Theme: Arc-dark
sudo add-apt-repository ppa:noobslab/themessudo apt-get update && sudo apt-get install arc-theme -
Arc Icon Pack
sudo add-apt-repository ppa:noobslab/iconssudo apt-get update && sudo apt-get install arc-icons -
Disable caps lock, (pushing both SHIFT keys at once will toggle it)
sudo apt-get install dconf-toolssetxkbmap -option "caps:none"&&setxkbmap -option "shift:both_capslock"
http://blog.manugarri.com/note-to-self-disable-caps-lock-in-ubuntu-16-04/
- Beyond
grep:agsudo apt install silversearcher-ag- Usage:
ag foosearches inside files for 'foo'.ag -g fileserches for filename 'file'.
- In-terminal markdown viewer
mdv- This is the best of several I considered:
- bro man pages
- tldr is another option
settings.json- This is the only settings file for VS Code- It is stored in
~/.config/Code/User/ - Easymotion bindings: s + char_to_search
- Todo-tree extension, makes todos easy to track
- Code snippits generator -- SO LIT
ctr+shift+p'configure user snippits' —> 'create global snippit'
- It is stored in
Extensions
-
Vim, Relative Line Numbers (by extr0py), C/C++
-
Remember to keep using Vim's EasyMotion commands (remapped to s) to do movements!
CAUTION:
Be careful with the .bashrc and .zshrc files - THEY MAY CONTAIN WEIRD THINGS AT THE BOTTOM. The branches are an effort to isolate weirdness.
Great tutorial on setting up WSL (to be good - with X server and good fonts) https://joshpeng.github.io/post/wsl/#1-optional-install-cmder
This is a AI python co-piolot for coding. Looks really cool, should try it.
- Logkeys is the best one to use for Linux
- Need to clone repo and install it.
- Put this in /etc/rc.local the startup run file:
logkeys -s -o /home/memento/env/keylogging/keylog.log -m /home/memento/env/keylogging/logkeys/keymaps/en_US_ubuntu_1204.map - Need to set keyboard to special one (default is busted) "en_US_ubuntu1204.map`
- ConnectorDB is works on Windows, but DOESN'T LOG SPECIFIC KEYS, only keypress occurances. Major flaw, not okay.