Skip to content

89iuv/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotfiles

Environment

Clone repo

git clone --recurse-submodules https://github.com/89iuv/dotfiles.git .dotfiles

System

Install platform specific build tools ex: make, gcc, etc.

Fedora

# git
sudo dnf group install c-development development-tools

# tmux dependencies
sudo dnf install acpi xclip

# btop dependencies for intel gpu
sudo dnf install intel_gpu_top

# run at every startup
# TODO: add systemd script to do this autmatic
# source: https://github.com/luisbocanegra/plasma-intel-gpu-monitor?tab=readme-ov-file#requirements
sudo setcap cap_perfmon=+ep /usr/bin/btop

# python
sudo dnf install make gcc patch zlib-devel bzip2 bzip2-devel \
readline-devel sqlite sqlite-devel openssl-devel tk-devel \
libffi-devel xz-devel libuuid-devel gdbm-libs libnsl2

Fedora Native (without Home Manager)

By installing this dependencies you can skip installing nix pkgs

# enable rpm fusion free and non free
sudo dnf install \
https://download1.rpmfusion.org\
/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm

sudo dnf install \
https://download1.rpmfusion.org\
/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

# enable copr repos
sudo dnf copr enable atim/lazygit -y

# install dependencies
sudo dnf install \
git-delta \
zsh zoxide bat fzf ripgrep fd jq stow \
curl wget lynx \
chafa ImageMagick \
lua luarocks compat-lua \
neovim tmux btop lazygit \
fastfetch

# manual instalation
wget -c https://github.com/\
eza-community/eza/releases/latest/download/\
eza_x86_64-unknown-linux-gnu.tar.gz -O - | tar xz

sudo chmod +x eza
sudo chown root:root eza
sudo mv eza /usr/local/bin/eza

Issues:

  • wordnet from the fedora package does not work

Ubuntu

# system
sudo apt install build-essentials inotify-tools

# python
sudo apt install make build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev curl git \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev

MacOS

# system
xcode-select --install

# brew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# python
brew install openssl readline sqlite3 xz zlib tcl-tk@8 libb2

Setup

Install dependencies using Home Manager

nix-shell -p home-manager --run "home-manager switch --impure"

Link dotfiles

cd ~/.dotfiles
stow --run "stow */"

Run integration scripts

cd ~/.dotfiles/catppuccin-bat && ./install.sh
cd ~/.dotfiles/catppuccin-delta && ./install.sh
cd ~/.dotfiles/catppuccin-btop && ./install.sh

Optional decouple dictionaries

rm -rf ~/.config/harper
cp -r ~/.dotfiles/harper/.config/harper ~/.config/harper

Change shell to zsh

which zsh > tmp.txt
sudo sh -c "cat tmp.txt >> /etc/shells"
chsh -s $(which zsh)
rm tmp.txt
zsh

Install Python

# download
curl -fsSL https://pyenv.run | bash

# setup
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init - zsh)"

# install
pyenv install 3
pyenv global 3

Install Nodejs

# download
curl -fsSL https://fnm.vercel.app/install \
  | bash -s -- --install-dir "$HOME/.fnm" --skip-shell --force-install

# setup
FNM_PATH="$HOME/.fnm"
export PATH="$HOME/.fnm:$PATH"
eval "$(fnm env --shell zsh)"

# install
fnm install 22

# install global packages
npm install -g @mermaid-js/mermaid-cli

Install github copilot cli

gh auth login
gh extension install github/gh-copilot

Install tiktoken for github copilot chat

luarocks install --lua-version 5.1 tiktoken_core --local

Update

Update Fedora

sudo dnf upgrade

Update Ubuntu

sudo apt update
sudo apt upgrade

Update MacOS

brew update
brew upgrade

Update Home Manager

cd ~/.config/home-manager
nix flake update
home-manager switch --impure

Update dotfiles

cd ~/.dotfiles
git pull
git submodule update --recursive --init

Update integrations

cd ~/.dotfiles/catppuccin-bat && ./install.sh
cd ~/.dotfiles/catppuccin-delta && ./install.sh
cd ~/.dotfiles/catppuccin-btop && ./install.sh

Optional update dictionaries

sort -U \
~/.dotfiles/harper/.config/harper/words.txt \
~/.config/harper/words.txt \
> ~/.config/harper/words.txt

Update others

  • Update tmux: ctrl+x U all
  • Update neovim: <leader>l U
  • Update mason: <leader>cm U

Issues

The following issues are found in:

  • MacBook Pro M1 → Parallels → Windows11 → Wsl1 → Ubuntu24.04:
    • marksman throws error: AdvSimd processor support required

About

Valentin's dotfiles

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published