-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Debian 10 (Buster) Installation
Note: these instructions are community-maintained and are not supported by sway.
This document will guide you through installing Sway on Debian 10 (Buster).
If you prefer to just run a script, you can use this gist: https://gist.github.com/davidrios/535c43cbaafe6be665b7c6bd345ea6f4.
Else, proceed with the manual steps below.
Make sure you have activated the contrib
and non-free
apt repositories.
Update apt cache:
sudo apt update
Create a directory to organize sources:
mkdir ~/sway-src
First we'll install wlroots 0.7 with almost all extra dependencies:
sudo apt install build-essential cmake meson libwayland-dev wayland-protocols \
libegl1-mesa-dev libgles2-mesa-dev libdrm-dev libgbm-dev libinput-dev \
libxkbcommon-dev libudev-dev libpixman-1-dev libsystemd-dev libcap-dev \
libxcb1-dev libxcb-composite0-dev libxcb-xfixes0-dev libxcb-xinput-dev \
libxcb-image0-dev libxcb-render-util0-dev libx11-xcb-dev libxcb-icccm4-dev \
freerdp2-dev libwinpr2-dev libpng-dev libavutil-dev libavcodec-dev \
libavformat-dev universal-ctags xwayland
cd ~/sway-src
git clone https://github.com/swaywm/wlroots.git
cd wlroots
git checkout 0.7.0
meson build
sudo ninja -C build install
Debian's json-c version is too old, we need to manually build a newer version:
sudo apt install autoconf libtool
cd ~/sway-src
git clone https://github.com/json-c/json-c.git
cd json-c
git checkout json-c-0.13.1-20180305
sh autogen.sh
./configure --enable-threading --prefix=/usr/local
CPUCOUNT=$(grep processor /proc/cpuinfo | wc -l)
make -j$CPUCOUNT
sudo make install
sudo ldconfig
scdoc is needed for manual pages generation, which I recommend, but Debian's scdoc version is also too old, we need to manually build a newer version:
cd ~/sway-src
git clone https://git.sr.ht/~sircmpwn/scdoc
cd scdoc
git checkout 1.9.7
make PREFIX=/usr/local -j$CPUCOUNT
sudo make PREFIX=/usr/local install
Next we'll install sway 1.2:
sudo apt install libpcre3-dev libcairo2-dev libpango1.0-dev libgdk-pixbuf2.0-dev
cd ~/sway-src
git clone https://github.com/swaywm/sway.git
cd sway
git checkout 1.2
meson build
sudo ninja -C build install
We need to install swaybg, or else the default configuration won't work:
cd ~/sway-src
git clone https://github.com/swaywm/swaybg.git
cd swaybg
git checkout 1.0
meson build
sudo ninja -C build install
A lightweight notification daemon for Wayland.
cd ~/sway-src
git clone https://github.com/emersion/mako
cd mako
meson build
ninja -C build
sudo ninja -C build install