diff --git a/README.md b/README.md index 37c35e2..c33de5c 100644 --- a/README.md +++ b/README.md @@ -2,12 +2,45 @@ This is the repository for my dotfiles for Sway, forked from [Flipe Facundes](https://github.com/felipefacundes/dotfiles). ## Dependencies + +> [!IMPORTANT] +> This dotfile has configuration specific to SwayFX, if you're using Sway, please comment out the configuration section used by SwayFX. + The dotfiles configuration references a lot of packages that may not be installed on your system: ``` -swayfx swayidle swaybg waybar rofi wlrctl cliphist lights ly kwalletd6 rofi-power-menu grim wl-clipboard xorg-xprop libpulse dunst +swayfx swayidle swaybg waybar rofi wlrctl cliphist lights ly kwalletd6 rofi-power-menu grim wl-clipboard xorg-xprop libpulse dunst rofi-pulse-select soteria keepmenu python-pykeepass ydotool ``` +
+ Dependency table + +| Name | Reason | +|-------------------|-------------------------------------------------------------------------------------------------------------------| +| swayfx | Window manager ¯\_(ツ)_/¯ | +| swayidle | Puts your computer to sleep after certain amount of time. | +| swaybg | Wallpaper util | +| waybar | Status bar | +| rofi | Application/power menu, also used for switching audio in/outputs and accessing KeePass DBs. | +| wlrctl | Moving the cursor with keyboard keybinds. | +| cliphist | Waybar's "[Clipboard]" button uses to show clipboard history. | +| lights | Backlight control | +| ly | Login screen | +| kwalletd6 | Keyring | +| rofi-power-menu | Power options provider for Rofi | +| grim | Used to select screen sections for screenshots, only needed for selection screenshot. | +| wl-clipboard | Provides control over Wayland clipboard. | +| xorg-xprop | Used to set XWayland display scale. | +| libpulse | | +| dunst | Delivers notifications, some apps (Electron-based) will hang when you receive a notification if it's not present. | +| rofi-pulse-select | Provides audio in/output for Rofi. | +| soteria | Polkit, asks for elevation when needed. Akin to Windows' ACL. | +| keepmenu | KeePass provider for Rofi | +| python-pykeepass | Dependency of KeepMenu | +| ydotool | KeepMenu uses this to type passwords. | + +
+ # SwayWM image @@ -20,64 +53,78 @@ In `.config/sway/config` replace XX from the line `import strings_XX` to a langu Edit `.config/sway/startup` and add `exec yourapplication`. ## Keyboard Shortcuts +
+ Default modifiers + +- `Mod` is Super by default. +- `Menu` is the context menu button, generally only present in full-size keyboards. + +
+ ### Window management -- `Super+Shift+[Arrow Keys]` Move windows -- `Super+Shift+Q` Close window +- `Mod+Shift+[Arrow Keys]` Move windows +- `Mod+Shift+Q` Close window - `Ctrl+Alt+Esc` Kill window -- `Super+Tab` Toggle floating window for selection +- `Mod+Tab` Toggle floating window for selection - `Alt+Tab` Toggle focus between floating and tiling windows -- `Super+Shift+C` Move window to center -- `Super+F` Toggle fullscreen mode -- `Super+S` Layout toggle split -- `Super+W` Layout toggle tabbed -- `Super+A` Layout toggle stacked -- `Super+Shift+[Arrow Keys]` Move window to workspace +- `Mod+Shift+C` Move window to center +- `Mod+F` Toggle fullscreen mode +- `Mod+S` Layout toggle split +- `Mod+W` Layout toggle tabbed +- `Mod+A` Layout toggle stacked +- `Mod+Shift+[Arrow Keys]` Move window to workspace In .config/sway/config replace XX from the line import strings_XX to a language code matching a language file in that same directory. + #### Resize mode -- `Super+R` Enter resize mode +- `Mod+R` Enter resize mode - `Esc`/`Return` Exit resize mode - `[Arrow Keys]` Resize window ### Window Navigation -- `Super+[Arrow Keys]` Navigate through windows -- `Super+[Number Keys]` Navigate through workspaces -- `Super+D` Go back and forth on workspaces +- `Mod+[Arrow Keys]` Navigate through windows +- `Mod+[Number Keys]` Navigate through workspaces +- `Mod+D` Go back and forth on workspaces ### Cursor navigation -- `Super+Equal`/`Super+Next` Right mouse button click -- `Super+Minus`/`Super+KP_7` Left mouse button click -- `Super+Ctrl+[Arrow Keys]` Move cursor +- `Mod+Equal`/`Mod+Next` Right mouse button click +- `Mod+Minus`/`Mod+KP_7` Left mouse button click +- `Mod+Ctrl+[Arrow Keys]` Move cursor ### Media - `XF86AudioRaiseVolume` (volume up button) raises volume - `XF86AudioLowerVolume` (volume down button) lowers volume - `XF86AudioMute` (mute button) mutes the volume -- `Super+P` Opens volume control (pavucontrol) +- `Mod+P` Opens volume control (pavucontrol) - `XF86MonBrightnessUp` (brightness up button) raises brightness - `XF86MonBrightnessDown` (brightness down button) lowers brightness - `XF86ScreenSaver` (screen saver button) set brightness to 0 - `Alt+Space` Pause media playback ### Applications -- `Super+Space` Application launcher (Rofi) -- `Super+Enter` Terminal (Alacritty) -- `Ctrl+Esc` Task manager (HTOP) -- `Ctrl+Super+F` Web browser (Floorp) -- `Super+E` File explorer (xdg-open) +- `Mod+Space` Application launcher (Rofi) +- `Mod+Enter` Terminal (Kitty) +- `Mod+Esc` Task manager (HTOP) +- `Ctrl+Mod+F` Web browser (Floorp) +- `Mod+E` File explorer (xdg-open) - `Print` Select screen area to save to clipboard - `Ctrl+Print` Saves a full screenshot to clipboard - `Ctrl+Shift+Print` Saves a full screenshot to `${HOME}/Pictures/Capture/${date + "%Y-%m-%d %H:%M:%S"} - Capture.png`) - `Ctrl+Alt+R` OBS Studio +#### KeePass +- `Menu` Access loaded KeePass DB (if not loaded it will prompt for the DB directory, use the shortcut below to open the default DB) +- `Mod+Menu` Load and open default DB (defined in the config) + ### System - `Ctrl+L` Lock with swaylock - `Ctrl+Shift+L` Power options (Rofi) - `Ctrl+Shift+Alt+Delete` Power off -- `Super+U` System update (`pacman -Syu`) -- `Super+Ctrl+R` Reload Sway -- `Super+Shift+E` Exit Sway -- `Ctrl+Super+Q` Kill Sway -- `Alt+Apostrophe` Change audio output +- `Mod+U` System update (`pacman -Syu`) +- `Mod+Ctrl+R` Reload Sway +- `Mod+Shift+E` Exit Sway +- `Ctrl+Mod+Q` Kill Sway +- `Alt+Apostrophe` Change audio output (sink) +- `Alt+Shift+Apostrophe` Change audio input (source) # ly display manager image