XFCE Setup

From Alpine Linux
Jump to: navigation, search

Initial setup

Start by booting up Alpine (see these instructions on how to do that)
When Alpine is up and running, do the initial setup.


Install packages

Run the setup-xorg-base script to install the xorg base packages and to replace mdev with udev. We can also install xfce4 and the alpine-desktop selected packages while here.

This might take a few minutes depending on your network speed.


apk add xfce4

Video and Input packages

You will most likely want to install a package suitable for your video chipset and input devices.

For example, if you have an Sis video chipset install 'xf86-video-sis', for Intel video chipset install 'xf86-video-intel'.

apk add xf86-video-sis

and / or

apk add xf86-input-synaptics

To see available video driver packages run:

apk search xf86-video

Use xf86-video-modesetting for Qemu/KVM guests. Use xf86-video-vmware for Virtualbox/VMware guests. Use xf86-video-geode for Alix1D.

Tip: Probably for KVM/Qemu guests you want to use qxl Video and Display Spice. For this purpose install xf86-video-qxl on guest and run a Spice client on the host

To search for xf86-input driver packages run:

apk search xf86-input

As good choice for the start is:

apk add xf86-input-mouse xf86-input-keyboard

Configure xorg-server (optional)

On most systems, xorg should be able to autodetect all devices. However you can still configure xorg-server by hand by launching:

Xorg -configure

This will result in `/root/xorg.conf.new`. You can modify this file to fit your needs.
(When finished modifying and testing the above configuration file, move it to `/etc/X11/xorg.conf` for normal usage.)

If you decided to use a qxl Video on KVM/Qemu guest, add this configuration to `/etc/X11/xorg.conf`

Section "Device" Identifier "qxl" Driver "qxl" Option "ENABLE_SURFACES" "False" EndSection

Keyboard Layout

If you use a layout different than "us", you need to:

apk add setxkbmap setxkbmap <%a language layout from /usr/share/X11/xkb/rules/xorg.lst%>

In order to make it persistent add this section to /etc/X11/xorg.conf:

Section "InputClass" Identifier "Keyboard Default" MatchIsKeyboard "yes" Option "XkbLayout" "<%a language layout from /usr/share/X11/xkb/rules/xorg.lst%>" EndSection

Another way to change the keymap when logging into X is to use ~/.xinitrc. The following example loads a British keymap, simply add this line to the beginning of the file: setxkbmap gb &

Note that you will need the "setxkbmap" package for this to work! In addition you if you need to create the ~/.xinitrc file, add a second line like exec startxfce4

Create user accounts

Create a normal user account.

adduser -g 'Natanael Copa' ncopa

Optionally, give that user sudo permissions in /etc/sudoers. When doing so, it is important to use the command:


This ensures that only one user is changing the file at any given time. Visudo has two modes: Command mode and Insert mode. To edit the file, use the arrows to navigate to the appropriate line and enter Insert mode by pressing the 'i' key. To save and exit, enter Command mode by pressing the 'Esc' key, then ':w' + 'enter' to save, and finally ':q' + 'enter' to quit.

Start and enable dbus

Depending on your setup procedure dbus probably isn't running at this point, which will lead to issues like missing icons and keyboard shortcuts.

Start dbus first.

rc-service dbus start

You will likely also want dbus to start on boot.

rc-update add dbus

Start your desktop

Start lxdm and log in with your new user.

rc-service lxdm start

Once you have verified that it actually works you can make lxdm start up at boot:

rc-update add lxdm

If you're missing icons on menus and bars install a theme:

apk add faenza-icon-theme


If you are unable to login, check /var/log/lxdm.log, there may be output there from X to indicate failed modules, etc.

If your mouse / keyboard is not responding, try to install xf86-input-evdev (that will appeared in lxdm.log if you lack it). Or you can try to disable hotplug.

  Section "ServerFlags"
    Option "AutoAddDevices" "False"

If you Xorg server segfaults in kvm/qemu then add nomodeset as a boot option when booting up.

If you are unable to login, or you see an error "Failed to execute login command", you should check ~/.xinitrc (if you're using .xinitrc) with your preferred text editor (vi, nano, etc) and ensure that it is set to boot into xfce. To do this, the 'exec' line (usually the last line in the file) should read "exec startxfce4". If ~/.xinitrc does not exist, create it and add the exec line. this command will do it:

touch ~/.xinitrc && echo "exec startxfce4" >> ~/.xinitrc


alt text