https://github.com/marksteve/dotfiles
:black_circle:
https://github.com/marksteve/dotfiles
Last synced: 8 months ago
JSON representation
:black_circle:
- Host: GitHub
- URL: https://github.com/marksteve/dotfiles
- Owner: marksteve
- Created: 2011-08-22T12:37:53.000Z (almost 15 years ago)
- Default Branch: master
- Last Pushed: 2025-07-31T14:55:20.000Z (11 months ago)
- Last Synced: 2025-07-31T18:31:42.526Z (11 months ago)
- Language: Ruby
- Homepage:
- Size: 593 KB
- Stars: 6
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# dotfiles
> That's the Way (I Like It)
## Requirements
- zsh
- [starship](https://starship.rs/)
- [ripgrep](https://github.com/BurntSushi/ripgrep)
- [zoxide](https://github.com/ajeetdsouza/zoxide)
- [tpm](https://github.com/tmux-plugins/tpm)
### Ubuntu
1. Install dependencies
```
sh -c "$(curl -fsSL https://starship.rs/install.sh)"
sh -c "$(curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh)"
sudo apt install zsh ripgrep tmux direnv syncthing pinentry-gtk2 gocryptfs keychain
```
### MacOS
1. Install brew and port
1. Install dependencies
```
eval $(/opt/homebrew/bin/brew shellenv)
brew install zsh starship ripgrep zoxide tmux direnv syncthing gpg
brew install \
actual \
bitwarden \
boop \
cloudflare-warp \
google-chrome \
iterm2 \
netnewswire \
obsidian \
rectangle \
restic \
spotify \
sublime-merge \
telegram \
todoist
sudo port install gocryptfs
sudo ln -fsn /opt/local/Library/Filesystems/macfuse.fs /Library/Filesystems/macfuse.fs
```
## Install
```sh
git clone https://github.com/marksteve/dotfiles
cd dotfiles
git submodule update --init --recursive
gpg # run to generate config directory
./install.sh
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
```
Install tpm plugins by running tmux then pressing `Ctrl + a, i` after installing dotfiles
## Secrets
```
mkdir ~/.secrets
mount-secrets
rm -rf ~/.ssh
ln -s ~/.secrets/ssh ~/.ssh
ln -s ~/.secrets/npmrc ~/.npmrc
gpg --import ~/.secrets/gpg/secret.asc
gpg --import-ownertrust ~/.secrets/gpg/ownertrust.txt
```
### MacOS
Store SSH private key passphrase in keychain:
```
ssh-add -K
```
## Ubuntu
### Alacritty
1. Follow [install instructions](https://github.com/alacritty/alacritty/blob/master/INSTALL.md)
1. Set as default terminal
```
sudo update-alternatives --install /usr/bin/x-terminal-emulator x-terminal-emulator /usr/local/bin/alacritty 50
sudo update-alternatives --config x-terminal-emulator
```
## WSL
### Setup systemd with genie
```
sudo su -
# add Microsoft repo with .Net 3.1 runtime
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
dpkg -i packages-microsoft-prod.deb
# https://arkane-systems.github.io/wsl-transdebian/
wget -O /etc/apt/trusted.gpg.d/wsl-transdebian.gpg https://arkane-systems.github.io/wsl-transdebian/apt/wsl-transdebian.gpg
chmod a+r /etc/apt/trusted.gpg.d/wsl-transdebian.gpg
cat << EOF > /etc/apt/sources.list.d/wsl-transdebian.list
deb https://arkane-systems.github.io/wsl-transdebian/apt/ $(lsb_release -cs) main
deb-src https://arkane-systems.github.io/wsl-transdebian/apt/ $(lsb_release -cs) main
EOF
apt update
apt install systemd-genie
```
Instructions taken from https://kumekay.com/wsl2-and-systemd/
## Python
### Toolchains
```
curl -sSf https://rye-up.com/get | bash
```
### Tools
```
cat requirements.in | xargs -I '{}' rye install {}
```
## Node
```
curl https://mise.run | sh
mise install
```