Skip to content

ToaaMusic/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My Arch Linux Configuration

简体中文

This repository contains my personal configuration for Arch Linux and some tools written by lua script.

Components

Component Description Official Doc Repository Folder
hyprland Wayland compositor https://wiki.hyprland.org/ hypr
nvim Text editor https://neovim.io/ nvim
fastfetch System info fetcher https://github.com/fastfetch-cli/fastfetch fastfetch
waybar Status bar https://github.com/Alexays/Waybar/wiki waybar
rofi App launcher https://github.com/davatorium/rofi rofi
kitty Terminal https://sw.kovidgoyal.net/kitty/ kitty
yazi Tui file manager https://yazi-rs.github.io/ yazi
mako Notification https://github.com/emersion/mako mako
cava Tui audio visualizer https://github.com/karlstav/cava cava

Installation

To apply my configurations, clone the repository to a safe location you like, for example ~/repos, and run ./link. Make sure to back up any existing configuration files before overwriting them.

git clone https://github.com/ToaaMusic/dotfiles.git
cd dotfiles
./link.sh

link.sh is a script that creates symbolic links from the repository to the appropriate configuration directories.

Like this:

~/.config  symlink to  ~/repos/dotfiles/config
├── hypr   --------->  ├── hypr
├── waybar --------->  ├── waybar
├── rofi   --------->  ├── rofi
├── kitty  --------->  ├── kitty
└── ...                      └── ...

By the way, .zshenv and hypr/hyprland/env.lua will set $HOME/repos/dotfiles/ as TOAAM_DOTFILES. And don't forget to rerun the ./link after moving this repo

Dependencies

  • hyprpaper: Wallpaper.
  • lua: Tool language. (IMPORTANT)
  • grim, slurp, wl-copy: Screenshot, Selection, and copy to clipboard
  • ffmpeg: Img tool.

After installing the key components, if you want the full experience or just lazy to customize everything, you can simply install them all.

sudo pacman -S hyprland neovim fastfetch waybar rofi kitty yazi mako cava hyprpaper
sudo pacman -S musicfox grim slurp wl-copy lua ffmpeg

Usage

Shortcuts

See markdown in config/hypr/ for more.

Default

Shortcut Action
ALT + Q Open Terminal
ALT + C Close active window
ALT + V Toggle floating mode
ALT + M Exit Hyprland
ALT + 1~0 Switch workspace 1~10
ALT + SHIFT + 1~0 Move window to workspace 1~10

Custom

Shortcut Action
ALT + F Open File Manager (Yazi)
ALT + Z Open Music Player (Musicfox)
ALT + W Set a random Wallpaper
ALT + SHIFT + W Open wallpaper gui selection
ALT + R Refresh display / Waybar
ALT + H Toggle Waybar layout
Print Grab screen selection to clipboard

Tools

tools/

  • colorscheme/

    Give gen.lua a ppm input and it will output *.g.* to ~/.config/*/, then those components will apply the color scheme by themselves.

    grim -t ppm - | lua gen.lua

    or

    ffmpeg -v error -i "$WALL" -f image2pipe -vcodec ppm - | lua gen.lua
  • todo/

    A lightweight Lua-based todo manager with interactive cross-day archive prompts and Markdown storage.

    lua todo.lua add "My new task"
    lua todo.lua ls
    lua todo.lua done 1
    lua todo.lua arch