Skip to content

Latest commit

 

History

History
242 lines (194 loc) · 5.64 KB

README.md

File metadata and controls

242 lines (194 loc) · 5.64 KB

Dotfiles

This repository contains most if not all of the changes made to my machines that run Arch Linux, Fedora, Ubuntu, or CentOS, but primarily Arch Linux as it's what I use on my personal computers. It should support both sway and i3.

Example ~/.config/chezmoi/chezmoi.toml

[data]
[data.monitors]
[data.monitors.left]
name = "Dell Inc. DELL U3219Q F2XWXV2"
mode = "3840x2160@60Hz"
position = "0x0"
scale = "1.3"

[data.monitors.center]
name = "Acer Technologies XV340CK P T5Y000013E00"
mode = "3440x1440@144Hz"
position = "1661x465"
scale = "1"

[data.monitors.right]
name = "Dell Inc. DELL U2515H 9X2VY6A80A8L"
mode = "2560x1440@144Hz"
position = "5101x227"
scale = "1"

[data.monitors.laptop]
name = "LG Display 0x0662"
mode = "1920x1080@60Hz"
position = "3181x1905"
scale = "1"

[edit]
    command = "code"
    args = ["--wait"]

[git]
    autoCommit = true
    autoPush = true

Unstaged File Templates

.config/.local-variables

#!/usr/bin/env zsh

# Optionally name the location of your shell environment.
export ENV_LOCATION=""

# You can use variables from ~/.config/.variables.
export MONITOR_LEFT="$MONITOR_HOME_LEFT"
export MONITOR_CENTER="$MONITOR_HOME_CENTER"
export MONITOR_RIGHT="$MONITOR_HOME_RIGHT"
# export MONITOR_TV="$MONITOR_HOME_TV"
# export MONITOR_LAPTOP=""

# export MONITOR_HOME_CENTER_REFRESH_RATE="144.06"

# If you want to disable the monitors cli.
# export DISABLE_MONITORS="yes"

# Borg backup settings.
export BORG_REPO=""
export BORG_BASE_DIR=""

.config/.secrets

# borg backup
export BORG_PASSPHRASE=""

# spotifatius
export RSPOTIFY_CLIENT_ID=""
export RSPOTIFY_CLIENT_SECRET=""

# spotifycl
export SPOTIPY_CLIENT_ID=""
export SPOTIPY_CLIENT_SECRET=""
export SPOTIPY_REDIRECT_URI="http://localhost"

# GitHub
export GITHUB_TOKEN=""

Installation

echo ".cfg" >> .gitignore
git clone --bare [email protected]:AndreasBackx/dotfiles.git $HOME/.cfg
alias config='/usr/bin/git --git-dir=$HOME/.cfg/ --work-tree=$HOME'
mkdir -p .config-backup
config checkout 2>&1 | egrep "\s+\." | awk {'print $1'} | xargs -I{} mv {} .config-backup/{}
config checkout
config config --local status.showUntrackedFiles no

touch ~/.config/.secrets
touch ~/.config/.local-variables

source ~/.zprofile
source ~/.zshenv
source ~/.zshrc

# Homebrew
git clone https://github.com/Homebrew/brew ~/.homebrew
brew update

# oh-my-zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --keep-zshrc

# spaceship-prompt
git clone [email protected]:denysdovhan/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt" --depth=1
ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"

# zsh-autosuggestions
git clone [email protected]:zsh-users/zsh-autosuggestions.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
chmod 755 ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions -R

# zsh-syntax-highlighting
git clone [email protected]:zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
chmod 755 ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting -R

# zsh-completions
git clone [email protected]:zsh-users/zsh-completions ${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh}/custom}/plugins/zsh-completions

# zsh-autocomplete
# git clone [email protected]:marlonrichert/zsh-autocomplete ${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh}/custom}/plugins/zsh-autocomplete

# autoupdate
git clone [email protected]:TamCore/autoupdate-oh-my-zsh-plugins.git ${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh}/custom}/plugins/autoupdate

# fzf
## Arch Linux
paru -S fzf
## Fedora
sudo dnf install fzf
## Debian
sudo apt-get install fzf
## MacOS
brew install fzf

# pyenv
git clone [email protected]:pyenv/pyenv.git $PYENV_ROOT
cd $PYENV_ROOT && src/configure && make -C src
git clone [email protected]:pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
git clone [email protected]:pyenv/pyenv-update.git $(pyenv root)/plugins/pyenv-update

# ddcutil i2c
sudo groupadd --system i2c
sudo usermod $(whoami) -aG i2c
sudo cp /usr/share/ddcutil/data/45-ddcutil-i2c.rules /etc/udev/rules.d

# Or change the permissions
# For current boot
sudo chmod a+rw /dev/i2c-*
# Or after quick logout
sudo chgrp i2c /dev/i2c-*

# oh-my-tmux
git clone [email protected]:gpakosz/.tmux.git
ln -s -f .tmux/.tmux.conf

# delta
## Arch Linux
paru -S git-delta
## Fedora
sudo dnf install git-delta
## MacOS
brew install git-delta
## Other: https://github.com/dandavison/delta#installation

# bat
## Arch linux
paru -S bat
## Fedora
sudo dnf install rust-bat
## Debian
sudo apt-get install rust-bat
## MacOS
brew install bat
## Other: https://github.com/sharkdp/bat#installation

# lsd
## Arch linux
paru -S lsd
## Fedora
sudo dnf install lsd
## MacOS
brew install lsd
## Other: https://github.com/Peltoche/lsd#installation

# duf
## Arch Linux
paru -S duf
## MacOS
brew install duf
## Other: https://github.com/muesli/duf#installation

# ripgrep
## Arch Linux
paru -S ripgrep
## Fedora
sudo dnf install ripgrep
## Debian
sudo apt-get install ripgrep
## MacOS
brew install ripgrep
## Other: https://github.com/BurntSushi/ripgrep#installation

# choose
## Arch Linux
paru -S choose-rust-git
## Fedora
sudo dnf copr enable atim/choose
sudo dnf install choose
## MacOS
brew install choose-rust
## Other: https://github.com/theryangeary/choose#compilation-and-installation


# hyperfine
## Arch Linux
paru -S hyperfine
## Fedora
sudo dnf install hyperfine
## MacOS
brew install hyperfine
## Other: https://github.com/sharkdp/hyperfine#installation

gammastep

Make sure gammastep, gammastep-gtk, and geoclue are installed. Then add the following to /etc/geoclue/geoclue.conf:

[gammastep]
allowed=true
system=false
users=