What is Sway?
The Sway Window Manager is a tiling Wayland compositor and a drop-in replacement for the i3 window manager for X11. It works with your existing i3 configuration and supports most of i3's features, plus a few extras.
Sway is not available as an option in the Debian Installer but can be added post-installation in Debian 11/Bullseye and newer.
Sway does not support the proprietary NVIDIA drivers in any form.
Contents
Installation
Installing Sway from the repos in Debian 11 and newer is often as easy as typing:
# apt install sway
This brings in a minimal installation. Additional packages are also available, such as:
sway-backgrounds - This package contains a set of desktop backgrounds that come with Sway.
swaybg - Sway's wallpaper utility for Wayland compositors.
swayidle - Sway's idle management daemon. swayidle listens for idle activity on your Wayland compositor and executes tasks on various idle-related events.
swaylock - Sway's screenlocking utility for Wayland.
At this step, do not start your session on Sway as you will most likely be stuck. Configure it first.
Configuration
From i3
If you're coming from i3, it's best to read the brief official i3 migration guide.
To migrate existing i3 files:
$ mkdir ~/.config/sway $ cp ~/.config/i3/config ~/.config/sway/config $ cat ~.Xresources >> ~/.Xdefaults
You also need to have your keyboard layout information. This can help:
$ swaymsg -t get_inputs
Add something like this in your ~/.config/sway/config file:
input * xkb_layout "us,de,ru" input * xkb_variant "colemak,,typewriter" input * xkb_options "grp:win_space_toggle" input "MANUFACTURER1 Keyboard" xkb_model "pc101" input "MANUFACTURER2 Keyboard" xkb_model "jp106"
You probably also want this in your Sway configuration file:
include /etc/sway/config.d/*
When it’s done, you can disconnect yourself from your i3 session and log back to Sway.
From scratch
The best reference for configuring Sway from scratch can be found on their official wiki: https://github.com/swaywm/sway/wiki
See also