Browse Source

desktop/weston: Cleanups to docs and SlackBuild.

Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
pull/182/head
Logan Rathbone 4 years ago
committed by Robby Workman
parent
commit
f5a99298d5
  1. 203
      desktop/weston/README.SBo
  2. 2
      desktop/weston/slack-desc
  3. 56
      desktop/weston/weston.SlackBuild

203
desktop/weston/README.SBo

@ -1,112 +1,91 @@
Weston: reference implementation of a Wayland compositor.
==========================================================
This README is current as of Weston 9.0.0.
*** NOTE ***
------------
This is the bleeding edge version of this SlackBuild that is ONLY compatible
with Slackware Current which has been relatively newly PAM-ified as of the
time of writing (May, 2020).
If you are running Slackware stable (14.2 at the time of writing), you are NOT
in the right place. Please utilize the Slackbuild from slackbuilds.org ( git:
https://git.slackbuilds.org/slackbuilds/ ).
In addition to this SlackBuild not working unless your Slackware install is
PAM-ified, Weston >= 8.0.0 will not work on Slackware 14.2 as the graphics
stack is simply too old.
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.
To launch Weston, here are some required steps.
Please note that setting weston-launch suid root is NOT required any longer
under PAM-ified Slackware Current.
1. 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)
(NOTE: You may want to grep your /etc/profile.d directory for other
scripts setting XDG_RUNTIME_DIR before doing this. AlienBob's ktown Plasma5
install, for instance, already includes a script that sets up XDG_RUNTIME_DIR,
so doubling up by doing Step 1 above may cause unwanted behaviour.)
2. Logout (if necessary) and re-login as root.
Once you've logged out and back in as root, run:
`exec weston-launch -u $USER`
where $USER is the username of the normal user you would like to launch Weston
as.
To launch with Xwayland support, run:
`exec weston-launch -u $USER -- --xwayland`
You can use the Ctrl+Alt+Backspace keyboard combination to kill Weston.
Optional Dependencies
---------------------
At the present time, the only optional dependency for this SlackBuild is
colord, which is disabled by default. That is because colord pulls in many
dependencies, while building Weston without colord requires no dependencies at
all on Slackware current, which may be more desirable for users that just want
to quickly test out Wayland by getting Weston up and running.
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.
* In testing 8.0.0 on the newly PAM-ified Slackware current, I have found that
after running Ctrl+Alt+Backspace to quit, I am brought back to a blank,
black screen. If this happens, try waiting a few seconds and then hit
Ctrl+Alt+F2 (for instance) followed by Ctrl+Alt+F1 to get back to the console.
* I want to stress and emphasize that this is still relatively experimental
software, that talks to your hardware at a fairly low level. For the most
part, I have not had any major issues, but I have seen some odd bugs and
behaviour, including Weston hard-locking my system upon exit and having to
reboot. I have also returned to my shell to find that some keystrokes I had
inputted while using Weston had been inputted into my console with a series of
"Command not found" errors. I do not believe Weston has been widely tested on
non-systemd/logind systems such as Slackware. Use at your own risk.
Weston: reference implementation of a Wayland compositor.
==========================================================
This README is current as of Weston 9.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.
To launch Weston, here are some required steps.
Please note that setting weston-launch suid root is NOT required any longer
under PAM-ified Slackware Current.
1. 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)
2. Logout (if necessary) and re-login as root.
Once you've logged out and back in as root, run:
`exec weston-launch -u $USER`
where $USER is the username of the normal user you would like to launch Weston
as.
To launch with Xwayland support, run:
`exec weston-launch -u $USER -- --xwayland`
You can use the Ctrl+Alt+Backspace keyboard combination to kill Weston.
Optional Dependencies
---------------------
At the present time, the only optional dependency for this SlackBuild is
colord, which is disabled by default. That is because colord pulls in many
dependencies, while building Weston without colord requires no dependencies at
all on Slackware current, which may be more desirable for users that just want
to quickly test out Wayland by getting Weston up and running.
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.
* In testing 8.0.0 on the newly PAM-ified Slackware current, I have found that
after running Ctrl+Alt+Backspace to quit, I am brought back to a blank,
black screen. If this happens, try waiting a few seconds and then hit
Ctrl+Alt+F2 (for instance) followed by Ctrl+Alt+F1 to get back to the console.
* I want to stress and emphasize that this is still relatively experimental
software, that talks to your hardware at a fairly low level. For the most
part, I have not had any major issues, but I have seen some odd bugs and
behaviour, including Weston hard-locking my system upon exit and having to
reboot. I have also returned to my shell to find that some keystrokes I had
inputted while using Weston had been inputted into my console with a series of
"Command not found" errors. I do not believe Weston has been widely tested on
non-systemd/logind systems such as Slackware. Use at your own risk.

2
desktop/weston/slack-desc

@ -14,6 +14,6 @@ weston:
weston: Out of the box, Weston provides a very basic desktop or a
weston: full-featured environment for non-desktop users.
weston:
weston: IMPORTANT: Please read README.Slackware before attempting to run.
weston: IMPORTANT: Please read README.SBo before attempting to run.
weston:
weston: Homepage: http://wayland.freedesktop.org/

56
desktop/weston/weston.SlackBuild

@ -2,7 +2,7 @@
# Slackware build script for Weston
# Copyright 2019-2020 Logan Rathbone <poprocks@gmail.com>
# Copyright 2019-2021 Logan Rathbone <poprocks@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=weston
VERSION=${VERSION:-9.0.0}
BUILD=${BUILD:-1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@ -81,28 +81,26 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# "./configure"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
meson build/ \
--prefix=/usr \
--mandir=man \
--libdir=lib${LIBDIRSUFFIX} \
-Dlauncher-logind=false \
-Dbackend-rdp=false \
-Dsystemd=false \
-Dpipewire=false \
-Dsimple-dmabuf-drm=auto \
-Dcolor-management-colord=${USE_COLORD:-false}
# "make"
"${NINJA:=ninja}"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
$NINJA -C build
# "make install"
DESTDIR=$PKG $NINJA -C build/ install
# nb: pipewire is disabled for now as >= 0.3 not yet supported
mkdir build
cd build
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
meson .. \
--prefix=/usr \
--mandir=man \
--libdir=lib${LIBDIRSUFFIX} \
-Dlauncher-logind=false \
-Dbackend-rdp=false \
-Dsystemd=false \
-Dpipewire=false \
-Dsimple-dmabuf-drm=auto \
-Dcolor-management-colord=${USE_COLORD:-false}
ninja
DESTDIR=$PKG ninja install
cd ..
# strip
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
@ -172,16 +170,6 @@ EOF
# config-ify the profile.d stuff
# FIXME - I tried many things to try to creatively preserve the perms
# of weston-launch as well (ie, in case someone suid's it and wants to
# keep it that way upon upgrade), but this is really difficult if not
# impossible to implement with Slackware's packaging system without
# allowing for stray binaries (which would have been setuid by the
# user) lingering around, which I'd really rather avoid, for safety.
#
# At this juncture, users will simply have to manually setuid-root the
# binary upon each upgrade.
cat << EOF >> $PKG/install/doinst.sh
preserve_perms etc/profile.d/${PRGNAM}.sh.new
preserve_perms etc/profile.d/${PRGNAM}.csh.new

Loading…
Cancel
Save