Siosm's blog

Some thoughts from a systemd, Rust and security aficionado

Give Wayland/Weston a try on Arch Linux

(Last updated on 2013-03-30)

Important note: Wayland and Weston have been moved to community/extra! Thus this How to is no longer necessary. I’m just keeping it here for reference. I may update *-git packages but I can’t promise I will do it frequently.

I’ve updated/fixed the PKGBUILDs and build the packages for everything you need for Weston to work on Arch Linux. As always, the PKGBUILDs are available in my siosm-aur PKGBUILD repository which is now also available on github.

So here are the steps to try Weston. This process is mostly safe and is getting safer as more and more packages are included in official Arch Linux repositories. But you still have to change some parts of the Linux graphics stack, so you should be comfortable with package management with pacman and ready to fix your system without any graphical interface.

  • First, have a look at Wayland in the ArchWiki and make sure you’re using a KMS enabled driver (basically intel/nouveau/radeon open source drivers).

  • Then make sure your system is up-to-date and that you have the following packages in your pacman cache:

1
# pacman -Sw cairo libegl
  • Add the siosm-aur package repository hosted on this server (Repositories) and install weston(-git). It will ask you to replace the two packages we fetched earlier:
1
# pacman -S weston(-git)
  • Make sure that you have a default cursor theme in the file ~/.icons/default/index.theme. I used the icon theme from KDE (more on this in this ArchWiki page):
1
2
3
Name=Default
Comment=Default white Oxygen theme
Inherits=Oxygen_White
  • Switch to a VT (tty1 for example), loggin, and launch:
1
$ weston-launch --tty /dev/tty1
  • To stop Weston, just switch to an other VT and kill it:
1
pkill -kill weston
  • Here is an example ~/.config/weston.ini weston config file inspired from the official weston.ini (which features horrible default colors!):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
[keyboard]
keymap_layout=fr

[shell]
type=desktop-shell.so
background-image=/path/to/your/wallpaper.jpg
background-color=0xff002244
panel-color=0x90ff0000
locking=true
animation=zoom
binding-modifier=ctrl
num-workspaces=6

#type=tablet-shell.so
#lockscreen-icon=/usr/share/icons/gnome/256x256/actions/lock.png
#lockscreen=/usr/share/backgrounds/gnome/Garden.jpg
#homescreen=/usr/share/backgrounds/gnome/Blinds.jpg
#animation=fade

[launcher]
icon=/usr/share/icons/gnome/24x24/apps/utilities-terminal.png
path=/usr/bin/gnome-terminal

[launcher]
icon=/usr/share/icons/gnome/24x24/apps/utilities-terminal.png
path=/usr/bin/weston-terminal

[screensaver]
# Uncomment path to disable screensaver
path=/usr/libexec/weston-screensaver
duration=600

#[output]
#name=LVDS1
#mode=1680x1050
#transform=90

#[output]
#name=VGA1
#mode=173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
#transform=flipped

#[output]
#name=X1
#mode=1024x768
#transform=flipped-270
1
2
3
# pacman -Rns weston(-git)
# pacman -S cairo libegl
# pacman -Rns wayland

Comments