THIS README WAS GENERATED BY AI
A comprehensive collection of configuration files for a Linux desktop environment powered by i3 window manager and various terminal applications. Features a cohesive gruvbox-themed aesthetic with efficient development workflows.
Made by Chinychon
Here are some screenshots showcasing the setup in action:
This repository contains configuration files for:
- Window Manager: i3 (tiling window manager)
- Terminal: Alacritty with gruvbox theme
- Shell: Zsh with Powerlevel10k prompt
- Status Bar: Polybar with gruvbox colors
- Application Launcher: Rofi
- File Manager: Yazi (terminal-based)
- System Monitor: btop
- Notifications: Dunst
- And many more tools...
# For Ubuntu/Debian
sudo apt install git stow build-essential bc xrandr pgrep
# For Arch Linux
sudo pacman -S git stow base-devel bc xorg-xrandr procps-ng
# For Fedora
sudo dnf install git stow @development-tools bc xorg-xrandr procps-ng# Window Manager & Compositor
i3-gaps polybar picom
# Terminal & Shell
alacritty zsh oh-my-zsh
# Application Launcher & Notifications
rofi dunst
# System Monitoring & File Management
btop yazi bat
# Audio & Visual Tools
cava pavucontrolInstall Nerd Fonts for proper icon rendering:
# Clone the repository
git clone https://github.com/ryanoasis/nerd-fonts.git
cd nerd-fonts
./install.sh
# Or install via package manager
# Ubuntu/Debian
sudo apt install fonts-font-awesome ttf-nerd-fonts-symbols-common
# Arch Linux
yay -S ttf-nerd-fonts-symbols-common ttf-iosevka-nerd# Ruby version management
rbenv ruby-build
# Node version management
nvm (install via curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash)
# Python environment
miniconda or pyenv# For brightness control and calculations in polybar
bc
# For monitoring hardware status
xrandr
# For process management in polybar scripts
pgrep
# For system control
systemctl (usually pre-installed with systemd)
# For network status
tailscale (optional for VPN status in polybar)# For media info in Yazi
mediainfo
# For EXIF information in Yazi
exiftool
# For media playback in Yazi
mpv
# For extracting archives in Yazi
unzip unrar p7zip (for 7z files)
# For searching files by content
ripgrep
# For directory jumping
zoxide# For smart directory jumping (used in zsh config)
zoxide
# For safe deletion (used in zsh aliases)
trash-cli
# For modern ls replacement (used in zsh aliases)
ezablueman- Bluetooth managernvme-cli- For NVMe drive info in btopsmartmontools- For drive health monitoringlm-sensors- For hardware sensors in btophtop- Alternative system monitorneofetchorscreenfetch- System information displayfehornitrogen- Wallpaper setting toolsflameshot- Screenshot toolxss-lock- Screen locking utilityi3lock- Screen locker (used in i3 config)playerctl- Media player control
- Install Git
- Install GNU Stow (for managing symlinks)
- Clone the repository:
git clone https://github.com/Chinychon/dotfiles.git ~/.dotfiles
cd ~/.dotfiles- Install packages using Stow:
# Install all configurations
stow */ # This will install all packages
# Or install specific configurations
stow zsh
stow i3
stow alacritty
stow polybar
# etc.- Install Oh-My-Zsh (if not already installed):
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"- Install Powerlevel10k (if not already installed):
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k- Install Zsh plugins:
# Syntax highlighting
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
# Autosuggestions
git clone https://github.com/zsh-users/zsh-autosuggestions.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions- Set Zsh as your default shell:
chsh -s $(which zsh)- Reboot your system to ensure all configurations are loaded correctly.
The configuration includes special functions for switching between development environments:
use_conda- Activate Python environment with condause_ruby- Activate Ruby environment with rbenv- Aliases:
conda-envandruby-env
lsβeza(with icons)llβeza -lltβeza -T -L3(tree view)rmβtrash-put(safer deletion)
A unique feature in the polybar that shows the remaining days in the current year as a reminder of life's brevity.
All configurations follow a consistent gruvbox dark theme. You can customize the theme by:
- Changing the theme file in
alacritty/.config/alacritty/alacritty.toml - Modifying colors in
polybar/.config/polybar/config.ini - Updating the rofi theme in
rofi/.config/rofi/config.rasi
Feel free to fork this repository and adapt the configurations to your needs. If you have improvements, please submit a pull request!
- The configuration assumes a dual monitor setup (HDMI-0 and DP-0). Modify
i3/.config/i3/configto match your monitor setup. - Some scripts may need executable permissions:
chmod +x ~/.dotfiles/scripts/* - The configuration uses Iosevka Nerd Font. Make sure it's installed for proper icon rendering.
- BONUS: Thanks for reading the README. Check out this plugin for rendering markdown files in NVIM: https://github.com/MeanderingProgrammer/render-markdown.nvim






