This is the repository for my dotfiles for Sway, forked from Flipe Facundes.
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 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. |
This is not a tutorial on changing your system language, this will only change the language of the configuration strings.
In .config/sway/config replace XX from the line import strings_XX to a language code matching a language file in that same directory.
Edit .config/sway/startup and add exec yourapplication.
Default modifiers
Modis Super by default.Menuis the context menu button, generally only present in full-size keyboards.
Mod+Shift+[Arrow Keys]Move windowsMod+Shift+QClose windowCtrl+Alt+EscKill windowMod+TabToggle floating window for selectionAlt+TabToggle focus between floating and tiling windowsMod+Shift+CMove window to centerMod+FToggle fullscreen modeMod+SLayout toggle splitMod+WLayout toggle tabbedMod+ALayout toggle stackedMod+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.
Mod+REnter resize modeEsc/ReturnExit resize mode[Arrow Keys]Resize window
Mod+[Arrow Keys]Navigate through windowsMod+[Number Keys]Navigate through workspacesMod+DGo back and forth on workspaces
Mod+Equal/Mod+NextRight mouse button clickMod+Minus/Mod+KP_7Left mouse button clickMod+Ctrl+[Arrow Keys]Move cursor
XF86AudioRaiseVolume(volume up button) raises volumeXF86AudioLowerVolume(volume down button) lowers volumeXF86AudioMute(mute button) mutes the volumeMod+POpens volume control (pavucontrol)XF86MonBrightnessUp(brightness up button) raises brightnessXF86MonBrightnessDown(brightness down button) lowers brightnessXF86ScreenSaver(screen saver button) set brightness to 0Alt+SpacePause media playback
Mod+SpaceApplication launcher (Rofi)Mod+EnterTerminal (Kitty)Mod+EscTask manager (HTOP)Ctrl+Mod+FWeb browser (Floorp)Mod+EFile explorer (xdg-open)PrintSelect screen area to save to clipboardCtrl+PrintSaves a full screenshot to clipboardCtrl+Shift+PrintSaves a full screenshot to${HOME}/Pictures/Capture/${date + "%Y-%m-%d %H:%M:%S"} - Capture.png)Ctrl+Alt+ROBS Studio
MenuAccess loaded KeePass DB (if not loaded it will prompt for the DB directory, use the shortcut below to open the default DB)Mod+MenuLoad and open default DB (defined in the config)
Ctrl+LLock with swaylockCtrl+Shift+LPower options (Rofi)Ctrl+Shift+Alt+DeletePower offMod+USystem update (pacman -Syu)Mod+Ctrl+RReload SwayMod+Shift+EExit SwayCtrl+Mod+QKill SwayAlt+ApostropheChange audio output (sink)Alt+Shift+ApostropheChange audio input (source)
You can also replace your display manager with ly, a TUI display manager. The config file in .config/ly/ will not work, you have to copy it to /etc/ly/config.ini after installing the package ly and enabling the systemd service (also, disable your current DM).