12 KiB
12 KiB
Linux Scripts and Configs
A collection of Linux scripts and configs for use across multiple machines.
Installation
Packages
Install all packages using yay:
yay -S $(grep -v '^\s*$' ~/scripts/packages.txt | tr '\n' ' ')
alacritty configuration
Add this to the .config/alacritty/alacritty.toml
import = [
"~/scripts/alacritty.toml"
]
tmux Configuration
This config uses tmux plugin manager to add session save / reloading with tmux-ressurect. Before using the config, please download the plugin manager with:
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
Then to use the config file, add to ~/.tmux.conf:
source ~/scripts/tmux.conf
Bash/Zsh Configuration
Add to ~/.bashrc or ~/.zshrc:
source ~/scripts/bashrc # or zshrc
export PATH="~/scripts/sh:$PATH"
Vim Configuration
Add to ~/.vimrc:
source ~/scripts/vimrc
i3 Configuration
ln -sf ~/scripts/i3/i3config ~/.config/i3/config
ln -sf ~/scripts/i3/i3blocks.conf ~/.config/i3blocks/config
ln -sf ~/scripts/i3/i3status.conf ~/.config/i3status/config
Hyprland Configuration
ln -sf ~/scripts/hyprland/hyprland.conf ~/.config/hypr/hyprland.conf
ln -sf ~/scripts/waybar/waybar_hyprland_config.json ~/.config/waybar/config
ln -sf ~/scripts/waybar/waybar_style.css ~/.config/waybar/style.css
Sway Configuration
ln -sf ~/scripts/sway/swayconfig ~/.config/sway/config
ln -sf ~/scripts/waybar/waybar_sway_config.json ~/.config/waybar/config
ln -sf ~/scripts/waybar/waybar_style.css ~/.config/waybar/style.css
Wofi Configuration
ln -sf ~/scripts/wofi/wofi_style.css ~/.config/wofi/style.css
Hatsune Miku Cursor
ln -sf ~/scripts/hatsune-miku-windows-linux-cursors/miku-cursor-linux ~/.local/share/icons/"Miku Cursor"
Keybindings
tmux Keybindings
| Keybinding | Description |
|---|---|
| M-f | Prefix key (similar to $mod in i3) |
| Prefix + Space | Send prefix |
| Prefix + Ctrl + s | Save session |
| Prefix + Ctrl + r | Restore session |
| Prefix + ? | List keys |
| Prefix + [ | Enter copy mode |
| Prefix + ] | Paste buffer |
| Prefix + r | Refresh client |
| Prefix + R | Reload tmux configuration |
| Prefix + g | Split window horizontally |
| Prefix + v | Split window vertically |
| Prefix + h/j/k/l | Select pane (left/down/up/right) |
| Prefix + H/J/K/L | Resize pane (left/down/up/right) |
| Prefix + w | Choose window |
| Prefix + 1-0 | Select window 1-10 |
| M-1 to M-0 | Create new window 1-10 |
| Prefix + !-) | Move current pane to window 1-10 |
| Prefix + q | Kill selected pane |
Hyprland Keybindings
| Keybinding | Description |
|---|---|
| $mod + Return | Start terminal (kitty) |
| $mod + Shift + q | Kill focused window |
| $mod + d | Launch wofi |
| $mod + Ctrl + m | Launch PulseAudio control |
| $mod + F2 | Launch Waterfox browser |
| $mod + F3 | Launch file manager (ranger) |
| $mod + Shift + F3 | Launch PCManFM |
| $mod + F5 | Launch mocp music player |
| $mod + Shift + d | Restart dunst |
| Screenshot (flameshot gui) | |
| $mod + Print | Screenshot region to clipboard |
| $mod + Shift + Print | Screenshot region to file |
| $mod + Ctrl + x | Kill window (hyprctl kill) |
| $mod + 9 | Lock screen (hyprlock) |
| $mod + m | Toggle waybar visibility |
| $mod + Shift + c | Reload Hyprland config |
| $mod + Shift + e | Exit Hyprland |
| $mod + 0 | Enter system submap (lock/suspend/etc.) |
| $mod + h/j/k/l | Move focus (left/down/up/right) |
| $mod + Shift + h/j/k/l | Move window (left/down/up/right) |
| $mod + f | Toggle fullscreen |
| $mod + g/v | Tile horizontally/vertically |
| $mod + e | Toggle split |
| $mod + Shift + Space | Toggle floating |
| $mod + Shift + s | Pin floating window |
| $mod + - | Toggle scratchpad |
| $mod + Shift + - | Move to scratchpad |
| $mod + b | Switch to previous workspace |
| $mod + Ctrl + ←/→ | Previous/next workspace |
| $mod + 1-8 | Switch to workspace 1-8 |
| $mod + Shift + 1-8 | Move window to workspace 1-8 |
| $mod + Ctrl + 1-8 | Move window to workspace silently |
| $mod + r | Enter resize submap (hjkl to resize) |
System submap ($mod + 0)
| Key | Action |
|---|---|
| l | Lock |
| s | Suspend |
| h | Hibernate |
| r | Reboot |
| Shift + s | Power off |
| e | Exit |
| Return/Esc | Cancel |
i3 Keybindings
| Keybinding | Description |
|---|---|
| $mod + Return | Start a terminal (Alacritty) |
| $mod + Shift + q | Kill focused window |
| $mod + d | Start program launcher (dmenu) |
| $mod + z | Launch categorized menu |
| $mod + Ctrl + m | Launch PulseAudio control |
| $mod + F2 | Launch Firefox browser |
| $mod + F3 | Launch PCManFM file manager |
| $mod + h/j/k/l | Change focus (left/down/up/right) |
| $mod + Shift + h/j/k/l | Move focused window |
| $mod + g/v | Split horizontally/vertically |
| $mod + f | Toggle fullscreen |
| $mod + 1-8 | Switch to workspace 1-8 |
| $mod + Shift + 1-8 | Move container to workspace 1-8 |
| $mod + Shift + c | Reload the configuration file |
| $mod + Shift + r | Restart i3 |
Additional Scripts
File Sharing Scripts
sharefile {filename}: Upload file to 0x0.st and return unique identifiergetfile {id}: Retrieve file from 0x0.st
Note: These scripts interact with https://0x0.st for file sharing.