Xorg: Difference between revisions

From Alpine Linux
(Moved more content from Alpine setup scripts page)
m (rephrased sentence)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Video Drivers ==
[https://www.x.org/wiki/ Xorg] is an open source implementation of the X Window System. It used to be the de-facto standard way to launch graphical applications. [[Wayland]] is its recent alternative. [https://gitlab.freedesktop.org/wayback/wayback Wayback] is a X11 compatibility layer which allows for running full X11 desktop environments using Wayland components.
{{Main|Graphics driver}}


To install X11 based [[Desktop environments and Window managers|desktop]], you may want to install specific Xorg xf86 driver packages for your video card's chipset, as they may support specific features, effects and acceleration modes, and avoid error messages during X initialization. However, the most basic X features should work fine with just using the default kernel video-modesetting drivers.
== Installation ==


{{Tip| xf86 driver packages follow standard naming conventions. So information found in  [https://wiki.archlinux.org/title/Xorg#Driver_installation ArchWiki], or [https://packages.gentoo.org/categories/x11-drivers Gentoo wiki] are to a large degree, also applicable to configuring the video hardware on Alpine Linux, except for proprietary drivers which are not available.}}
Xorg can be installed automatically by running the [[Alpine_setup_scripts#setup-xorg-base|setup-xorg-base]] script as follows:{{Cmd|# setup-xorg-base}}


To see available xf86 video driver packages run:
The above command installs the following packages {{pkg|xorg-server}}, {{pkg|xf86-input-libinput}}, {{pkg|xinit}}, {{pkg|eudev}}, {{pkg|mesa-dri-gallium}} and Sets up [[Include:Setup Device Manager|eudev]]
{{cmd|$ apk search xf86-video}}


* For Sis video chipset install {{pkg|xf86-video-sis}}
Install atleast one X11 based [[Desktop environments and Window managers|desktop]] before proceeding further.
* For VMware guests use {{pkg|xf86-video-vmware}}
* For VirtualBox guests use {{pkg|xf86-video-vboxvideo}}. Refer [[VirtualBox_guest_additions|VirtualBox guest additions]]
* For Hyper-V guests use {{pkg|xf86-video-fbdev}}. Refer [[Hyper-V_guest_services|Hyper-V guest services]].
* For KVM/QEMU guests refer [[QEMU#Using_Xorg_inside_Qemu|Xorg within QEMU]]


== Input packages ==
== Configuration ==


If the <b>Numlock</b> settings are not working, or getting <b>'setleds not found'</b> errors:
You may also want per-user configuration. Create the {{Path|~/.xinitrc}} file to start the window manager with <code>startx</code> or <code>xinit</code>. If you installed {{pkg|cwm}} desktop, the {{Path|~/.xinitrc}} file should be as follows:{{Cat|~/.xinitrc|exec cwm}}


{{cmd|# apk add kbd}}
If [[D-Bus#Installation|D-Bus]] is installed and enabled along with {{pkg|cwm}} desktop, the {{Path|~/.xinitrc}} file should be as follows:{{Cat|~/.xinitrc|exec dbus-launch --exit-with-session cwm}}


If some input device is not working at all, the available xf86-input drivers can be listed with:
Xorg sessions can be started via [[Display_manager|display manager]] or manually with command: {{Cmd|$ startx }}
{{cmd|$ apk search xf86-input}}


You probably at least want {{cmd| xf86-input-libinput}} or {{cmd| xf86-input-evdev}}
== Video drivers ==


libinput is for Wayland with wrapper for Xorg. evdev is Xorg only.<br><br>
Most basic X features should work fine with just using the default [[#Kernel Modesetting|kernel video-modesetting]] drivers. For better performance or in case of errors, install legacy [[Xf86 Video]] drivers or [[Graphics driver|graphics drivers]].


Typical legacy drivers (not packaged. at least as of 2/2022):
== Input packages ==


{{cmd|# apk add xf86-input-mouse xf86-input-keyboard}}
You probably at least want {{pkg|xf86-input-libinput}} or {{pkg|xf86-input-evdev}}. The former is for Wayland with wrapper for Xorg and is installed by the [[#Installation|setup-xorg-base]] script. The {{pkg|xf86-input-evdev}} package is Xorg only.


And for touchpad tapping support on many laptops, also:
For touchpad tapping support on many laptops:{{Cmd|# apk add xf86-input-synaptics}}


{{Cmd|# apk add xf86-input-synaptics}}
If the <b>Numlock</b> settings are not working, or getting <b>'setleds not found'</b> errors: {{cmd|# apk add kbd}}


== Configure xorg-server (optional) ==
If some input device is not working at all, the available xf86-input drivers can be listed with: {{cmd|$ apk search xf86-input}}


On most systems, xorg should be able to autodetect all devices. However you can still configure xorg-server by hand by launching:
The following legacy drivers are not packaged at least as of 2/2022:  
{{Cmd|# Xorg -configure}}
* xf86-input-mouse
This will create a {{Path|/root/xorg.conf.new}} file. You can modify this file to fit your needs.<BR>
* xf86-input-keyboard
(When finished modifying and testing the above configuration file, move it to {{Path|/etc/X11/xorg.conf}} for normal usage.)


== Keyboard Layout (optional) ==
== Configure xorg-server (optional) ==


If you use a keyboard layout different than "us", and you are using a window manager or desktop environment that does not support to configure the keyboard layout itself, then you need to
On most systems, xorg should be able to autodetect all devices. However you can still configure xorg-server by hand by launching: {{Cmd|# Xorg -configure}}


* [[Repositories#Enabling_the_community_repository|Enable the "community" repository]]
This will create a {{Path|/root/xorg.conf.new}} file. You can modify this file to fit your needs.  When finished modifying and testing the above configuration file, move it to {{Path|/etc/X11/xorg.conf}} for normal usage.


and install setxkbmap:
== Keyboard Layout (optional) ==
 
{{Cmd|# apk add setxkbmap}}


Then try
If you use a keyboard layout different than "us", and you are using a window manager or desktop environment that does not support to configure the keyboard layout itself, then you need to install {{pkg|setxkbmap}} package: {{Cmd|# apk add setxkbmap}}
{{Cmd|# setxkbmap <%a language layout from /usr/share/X11/xkb/rules/xorg.lst%>}}


Then try {{Cmd|# setxkbmap <%a language layout from /usr/share/X11/xkb/rules/xorg.lst%>}}


In order to make it persistent add this section to {{Path|/etc/X11/xorg.conf}}:
In order to make it persistent add this section to {{Path|/etc/X11/xorg.conf}}:
Line 65: Line 55:
}}
}}


Another way to change the keymap when logging into X is to use {{Path|~/.xinitrc}}. The following example loads a British keymap, simply add this line to the beginning of the file:
Another way to change the keymap when logging into X is to use {{Path|~/.xinitrc}}. The following example loads a British keymap, simply add this line to the beginning of the file as follows :{{Cat|~/.xinitrc|setxkbmap gb &
<code>setxkbmap gb &</code>
...}}


== See also ==


If you need to create the {{Path|~/.xinitrc}} file, you may also want to add a second line like <code>exec openbox-session</code> to still start the window manager with <code>startx</code> or <code>xinit</code>.
* [https://www.x.org/wiki/ Xorg Wiki]
* [[Wayland]]


<br>


[[category:Graphics]]
[[category: Drivers]]
[[category: Desktop]]
[[category: Desktop]]

Latest revision as of 06:55, 23 July 2025

Xorg is an open source implementation of the X Window System. It used to be the de-facto standard way to launch graphical applications. Wayland is its recent alternative. Wayback is a X11 compatibility layer which allows for running full X11 desktop environments using Wayland components.

Installation

Xorg can be installed automatically by running the setup-xorg-base script as follows:

# setup-xorg-base

The above command installs the following packages xorg-server, xf86-input-libinput, xinit, eudev, mesa-dri-gallium and Sets up eudev

Install atleast one X11 based desktop before proceeding further.

Configuration

You may also want per-user configuration. Create the ~/.xinitrc file to start the window manager with startx or xinit. If you installed cwm desktop, the ~/.xinitrc file should be as follows:

Contents of ~/.xinitrc

exec cwm

If D-Bus is installed and enabled along with cwm desktop, the ~/.xinitrc file should be as follows:

Contents of ~/.xinitrc

exec dbus-launch --exit-with-session cwm

Xorg sessions can be started via display manager or manually with command:

$ startx

Video drivers

Most basic X features should work fine with just using the default kernel video-modesetting drivers. For better performance or in case of errors, install legacy Xf86 Video drivers or graphics drivers.

Input packages

You probably at least want xf86-input-libinput or xf86-input-evdev. The former is for Wayland with wrapper for Xorg and is installed by the setup-xorg-base script. The xf86-input-evdev package is Xorg only.

For touchpad tapping support on many laptops:

# apk add xf86-input-synaptics

If the Numlock settings are not working, or getting 'setleds not found' errors:

# apk add kbd

If some input device is not working at all, the available xf86-input drivers can be listed with:

$ apk search xf86-input

The following legacy drivers are not packaged at least as of 2/2022:

  • 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 create a /root/xorg.conf.new file. 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.

Keyboard Layout (optional)

If you use a keyboard layout different than "us", and you are using a window manager or desktop environment that does not support to configure the keyboard layout itself, then you need to install setxkbmap package:

# apk add setxkbmap

Then try

# 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 as follows :

Contents of ~/.xinitrc

setxkbmap gb & ...

See also