summaryrefslogtreecommitdiffstats
path: root/desktop/weston/README
blob: 5c0ccf7dcce468da97004e85f9bbdf1717664732 (plain)
Weston:  reference implementation of a Wayland compositor.
==========================================================

This README is current as of Weston 7.0.0.

Introduction
------------

Weston is the reference implementation of a Wayland compositor, as well
as a useful environment in and of itself.

Out of the box, Weston provides a very basic desktop, or a full-featured
environment for non-desktop uses such as automotive, embedded,
in-flight, industrial, kiosks, set-top boxes and TVs. It also provides a
library allowing other projects to build their own full-featured
environments on top of Weston's core.

A small suite of example or demo clients are also provided: though they
can be useful in themselves, their main purpose is to be an example or
test case for others building compositors or clients.


Slackware-specific Information
------------------------------

*****************************************
IMPORTANT:  MANUAL INTERVENTION REQUIRED.
*****************************************

This SlackBuild of Weston takes a fairly "hands off" approach, and there
are a few things users need to be aware of.

Firstly, it is, by default, patched to remove the PAM dependency. This
necessitates the elimination of the "-u" option of `weston-launch`, as
PAM is required for that feature to function.

To launch Weston, here are some required steps.

1. You must add a group to your system called "weston-launch". You may
do so, for instance, by running the following as root:

	# groupadd weston-launch

2. Add users to the "weston-launch" group that you would like to be able
to run weston-launch:

	# usermod -a -G weston-launch $USER

3. The `weston-launch` must be setuid root. This comes with the standard
warnings associated with doing so.

	# chmod +s /usr/bin/weston-launch

4. If you do not have another script exporting XDG_RUNTIME_DIR, you
should enable the one that comes with this SlackBuild:

	# chmod +x /etc/profile.d/weston.sh
		(or .csh, depending on your shell)

Once you've logged out and back in as a normal user that has been added to the
"weston-launch" group from a virtual console,  you should be able to run
`weston-launch` from that virtual console, and Weston will then launch and run
directly in that console.

You can use the Ctrl+Alt+Backspace keyboard combination to kill Weston.


PAM
---

Ordinarily, PAM is a mandatory dependency for Weston. This SlackBuild of
Weston is, by default, patched to remove that dependency. If you happen to
have PAM installed on your system and would like to build Weston with PAM
support, make sure the USE_PAM variable is set to "true" (nb: nothing else,
such as "1", "yes", "on", etc. will work) before running the SlackBuild. 
For example:

	# USE_PAM=true ./weston.SlackBuild


Optional Dependencies
---------------------

Above and beyond the hard dependencies listed in the .info file, Weston
contains many optional dependencies. Kindly consult the documentation
for a complete list.

At the present time, the only optional dependency that this SlackBuild
accounts for is colord, which is disabled by default. That is because
colord pulls in many large dependencies, most of which are present on
-current (at the time of writing) but not on 14.2, so disabling it seems
like a sensible default on a balance of convenience.

If you would like to enable colord functionality in this SlackBuild,
set the USE_COLORD variable to "true" before running the SlackBuild.


Known Issues
------------

I have not had success getting Weston to launch with the proprietary nvidia
drivers in use. YMMV. I have had the best luck with the Intel KMS drivers.