Git, SSH, VM, LLM, Build tools (Windows, Linux, Mac), VSCode... My config files and setups.
| Chapter | Description |
|---|---|
| Git | Globals, aliases. Contribution |
| SSH | Keygen & passwordless auth, Config example |
| Windows | Winget, Scoop, VS Build Tools, Flutter |
| Linux | Linux setup |
| Mac | iTerm2, Oh My Zsh, Homebrew |
| LLM | Opencode |
| Dotfiles | Tmux |
git config --global init.defaultBranch main
git config user.name <first name and lastname>
git config user.email <your email>
git config --global credential.helper store
git config --global pull.rebase true
git config --global branch.autosetuprebase always
git config --global format.signoff true
# In your repos
git push --set-upstream origin main
# Contribution of other repos (create a fork first)
# check current results: git remote -v
git remote rename origin upstream
git remote add origin <same as upstream, but change to your account>
# disable push to upstream
git remote set-url --push upstream no_push
# get latest branch's changes. Do it before push anytime.
git fetch upstream <branch>
git rebase upstream/<branch>
git push origin <newBranchName>
# or force push to your fork
git push origin -f <newBranchName>
# then create a PR# Use remote machine without passwords:
ssh-keygen -t ed25519
## copy generated key to remote machine (<login>@<ip>)
type ~/.ssh/id_ed25519.pub | ssh <login>@<ip> "echo . >> ~/.ssh/authorized_keys"
# Optional: Create SSH Config
# Create file ~/.ssh/config
# Put the content like this:
Host ubuntu
User user
HostName localhost
Port 22
IdentityFile <COPIED PRIVATE KEY PATH>
# Check access
ssh ubuntu# Prepare
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
scoop install git python cmake ninja
scoop bucket add extras
# optional
scoop install windows-terminal pwsh vscode
reg import "C:\Users\User\scoop\apps\windows-terminal\current\install-context.reg"
reg import "C:\Users\User\scoop\apps\vscode\current\install-context.reg"
reg import "C:\Users\User\scoop\apps\vscode\current\install-associations.reg"
# Free LLM:
scoop install opencode
# VS Build Tools (optional)
Invoke-WebRequest -Uri "https://aka.ms/vs/17/release/vs_BuildTools.exe" `
-OutFile "$env:TEMP\vs_BuildTools.exe"
& "$env:TEMP\vs_BuildTools.exe" --passive --wait `
--add Microsoft.VisualStudio.Workload.VCTools --includeRecommended
# Hint: Macro 'vsdev' to open VS Build Tools env from any powershell session
mkdir (Split-Path $PROFILE -Parent) -Force; Add-Content $PROFILE "`nfunction vsdev { & 'C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\Common7\Tools\Launch-VsDevShell.ps1' -Arch amd64 -HostArch amd64 }"
# Java (optional)
scoop bucket add java
scoop install java/openjdk21 # LTS
# Android Studio (optional)
scoop install android-studio
scoop install android-clt
# Android SDK
sdkmanager "platform-tools" "platforms;android-36" "build-tools;36.0.0"
sdkmanager "extras;google;usb_driver"
# Flutter (optional)
scoop install flutter
# Enable Windows Developer tools
start ms-settings:developers
# Virtualbox
scoop bucket add extras
scoop bucket add nonportable
scoop install virtualbox-with-extension-pack-np
# Docker
scoop install docker
scoop install docker-machine
scoop install virtualbox-with-extension-pack-np # as admin
docker-machine create -d virtualbox --virtualbox-memory=4096 '
--virtualbox-cpu-count=4 --virtualbox-disk-size=40960 '
--virtualbox-no-vtx-check default
Ubuntu based:
sudo apt update && sudo apt upgrade
sudo apt install openssh-server git build-essential
# optional
sudo apt install tmux vim# iTerm2:
https://iterm2.com/downloads/stable/latest
# oh my zsh: https://github.com/ohmyzsh/ohmyzsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# homebrew: https://brew.sh/
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Free LLM:
brew install opencode# Superpowers skills
# Opencode:
Fetch and follow instructions from https://raw.githubusercontent.com/obra/superpowers/refs/heads/main/.opencode/INSTALL.md
# Caveman
# Opencode:
curl -fsSL https://raw.githubusercontent.com/JuliusBrussee/caveman/main/install.sh | bash -s -- --only openclaw
# Tmux
curl -o ~/.tmux.conf https://raw.githubusercontent.com/vadderrn/config/main/tmux/tmux.conf