Gentoo Archives: gentoo-commits

From: Patrice Clement <monsieurp@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/sway/
Date: Thu, 08 Nov 2018 22:12:51
Message-Id: 1541715138.91396769767b5d2f56f3bc6cf53e1b78b0f7145c.monsieurp@gentoo
commit:     91396769767b5d2f56f3bc6cf53e1b78b0f7145c
Author:     Niccolò Scatena <speedjack95 <AT> gmail <DOT> com>
AuthorDate: Mon Oct 22 15:45:17 2018 +0000
Commit:     Patrice Clement <monsieurp <AT> gentoo <DOT> org>
CommitDate: Thu Nov  8 22:12:18 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=91396769

dev-libs/sway: version bump to 1.0_beta1.

This commit adds the first Sway 1.0 beta release based on wlroots
(should be merged first). Release by upstream on Oct 21.

Closes: https://bugs.gentoo.org/669256
Signed-off-by: Niccolò Scatena <speedjack95 <AT> gmail.com>
Package-Manager: Portage-2.3.51, Repoman-2.3.11
Closes: https://github.com/gentoo/gentoo/pull/10201
Signed-off-by: Patrice Clement <monsieurp <AT> gentoo.org>

 dev-libs/sway/Manifest              |  1 +
 dev-libs/sway/metadata.xml          | 30 +++++++-----
 dev-libs/sway/sway-1.0_beta1.ebuild | 95 +++++++++++++++++++++++++++++++++++++
 3 files changed, 115 insertions(+), 11 deletions(-)

diff --git a/dev-libs/sway/Manifest b/dev-libs/sway/Manifest
index 499346e4411..f6de05a43d7 100644
--- a/dev-libs/sway/Manifest
+++ b/dev-libs/sway/Manifest
@@ -1 +1,2 @@
 DIST sway-0.15.2.tar.gz 5398956 BLAKE2B 6bb527e802b7837ef39cb1e29597d55fd33831231dbfb7f12225e50c38e49ae17d8bf2eb43672c195c6e074986d254b1680bac7c9d60b80b84feaf07e09718df SHA512 c457ace514f5c69ebd366d313cce93a76b199bb51c7540debc9c0586bff490401e6374f9725c784474afdfcca15bcab686a972c6c178117e45e2de83825ed370
+DIST sway-1.0_beta1.tar.gz 5444424 BLAKE2B b2803b6770ac3fbb3c21b892a208008e60780b6002e983e6d144d4f97e04992d3a3e5589abe36042221d67a107e31f5e76ae193cbf3e36c71fcf027095140944 SHA512 745b16be7641446c54e1b8777be1f8a26e8275f7826590f594bf4a2001a6de42e394b602e1ccd26a1e8ebe256fde6f9b393f5560a1dd0a610867819076645c69

diff --git a/dev-libs/sway/metadata.xml b/dev-libs/sway/metadata.xml
index a4e44bee20a..2533f9dd5ac 100644
--- a/dev-libs/sway/metadata.xml
+++ b/dev-libs/sway/metadata.xml
@@ -22,19 +22,27 @@
 		something else.
 	</longdescription>
 	<use>
-		<flag name="gdk-pixbuf">
-			Enable additional image format support via the
-			<pkg>x11-libs/gdk-pixbuf</pkg> library.
-		</flag>
-		<flag name="swaybar">Build 'swaybar': sway's status bar component.</flag>
-		<flag name="swaybg">Build 'swaybg': allows to set a desktop background image.</flag>
-		<flag name="swaygrab">Build 'swaygrab': allows taking screenshots or screencasts.</flag>
-		<flag name="swaylock">Build 'swaylock': sway's screen locker.</flag>
-		<flag name="swaymsg">Build 'swaymsg': tool for communicating with a running sway instance.</flag>
-		<flag name="wallpapers">Install sway's default wallpaper image.</flag>
-		<flag name="tray">Enable support for StatusNotifierItem tray specification.</flag>
+		<flag name="elogind">Enable support for rootless session via elogind</flag>
+		<flag name="filecaps">Use Linux capability SYS_CAP_ADMIN rather than set*id for sway binary</flag>
+		<flag name="fish-completion">Enable fish completion support</flag>
+		<flag name="gdk-pixbuf">Enable additional image format support via the <pkg>x11-libs/gdk-pixbuf</pkg> library</flag>
+		<flag name="swaybar">Install 'swaybar': sway's status bar component</flag>
+		<flag name="swaybg">Install 'swaybg': allows to set a desktop background image</flag>
+		<flag name="swaygrab">Install 'swaygrab': allows taking screenshots or screencasts</flag>
+		<flag name="swaylock">Install 'swaylock': sway's screen locker</flag>
+		<flag name="swaymsg">Install 'swaymsg': tool for communicating with a running sway instance</flag>
+		<flag name="tray">Enable support for StatusNotifierItem tray specification</flag>
+		<flag name="wallpapers">Install sway's default wallpaper image</flag>
+		<flag name="X">Enable support for X11 applications (XWayland)</flag>
 	</use>
 	<upstream>
 		<remote-id type="github">swaywm/sway</remote-id>
+		<maintainer status="active">
+			<email>sir@×××××.com</email>
+			<name>Drew DeVault</name>
+		</maintainer>
+		<bugs-to>https://github.com/swaywm/sway/issues</bugs-to>
+		<doc>https://github.com/swaywm/sway/wiki</doc>
+		<changelog>https://github.com/swaywm/sway/releases</changelog>
 	</upstream>
 </pkgmetadata>

diff --git a/dev-libs/sway/sway-1.0_beta1.ebuild b/dev-libs/sway/sway-1.0_beta1.ebuild
new file mode 100644
index 00000000000..76a39cb5232
--- /dev/null
+++ b/dev-libs/sway/sway-1.0_beta1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+if [[ ${PV} == 9999 ]] ; then
+		EGIT_REPO_URI="https://github.com/swaywm/sway.git"
+		inherit git-r3
+else
+		# Version format: major.minor-beta.betanum
+		SWAY_PV="$(ver_cut 1-2)-$(ver_cut 3).$(ver_cut 4)"
+		SRC_URI="https://github.com/swaywm/sway/archive/${SWAY_PV}.tar.gz -> ${P}.tar.gz"
+		S="${WORKDIR}/sway-${SWAY_PV}"
+		KEYWORDS="~amd64 ~x86"
+fi
+
+inherit eutils fcaps meson pam
+
+DESCRIPTION="i3-compatible Wayland window manager"
+HOMEPAGE="https://swaywm.org"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="elogind fish-completion +swaybar +swaybg +swaylock systemd +tray wallpapers X zsh-completion"
+REQUIRED_USE="?? ( elogind systemd )"
+
+RDEPEND="~dev-libs/wlroots-0.1[systemd=,elogind=,X=]
+	>=dev-libs/json-c-0.13:0=
+	>=dev-libs/libinput-1.6.0:0=
+	dev-libs/libpcre
+	dev-libs/wayland
+	>=dev-libs/wayland-protocols-1.14
+	x11-libs/cairo
+	x11-libs/libxkbcommon
+	x11-libs/pango
+	x11-libs/pixman
+	elogind? ( >=sys-auth/elogind-237 )
+	swaybar? ( x11-libs/gdk-pixbuf:2[jpeg] )
+	swaybg? ( x11-libs/gdk-pixbuf:2[jpeg] )
+	swaylock? (
+		virtual/pam
+		x11-libs/gdk-pixbuf:2[jpeg]
+	)
+	systemd? ( >=sys-apps/systemd-237 )
+	tray? ( >=sys-apps/dbus-1.10 )
+	X? ( x11-libs/libxcb:0=[xkb] )"
+DEPEND="${RDEPEND}"
+BDEPEND="app-text/scdoc
+	virtual/pkgconfig"
+
+FILECAPS=( cap_sys_admin usr/bin/sway )
+
+src_prepare() {
+	default
+
+	use swaybar || sed -e "s/subdir('swaybar')//g" -i meson.build || die
+	use swaybg || sed -e "s/subdir('swaybg')//g" -i meson.build || die
+	use swaylock || sed -e "s/subdir('swaylock')//g" -i meson.build || die
+}
+
+src_configure() {
+	local emesonargs=(
+		"-Dsway-version=${SWAY_PV}"
+		$(meson_use wallpapers default-wallpaper)
+		$(meson_use zsh-completion zsh-completions)
+		$(meson_use fish-completion fish-completions)
+		$(meson_use X enable-xwayland)
+		"-Dbash-completions=true"
+		"-Dwerror=false"
+	)
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	use swaylock && newpamd swaylock/pam/swaylock.linux swaylock
+}
+
+pkg_postinst() {
+	elog "You must be in the input group to allow sway to access input devices!"
+	local dbus_cmd=""
+	if use tray ; then
+		elog ""
+		optfeature "experimental xembed tray icons support" kde-plasma/xembed-sni-proxy
+		dbus_cmd="dbus-launch --sh-syntax --exit-with-session "
+	fi
+	if ! use systemd && ! use elogind ; then
+		fcaps_pkg_postinst
+		elog ""
+		elog "If you use ConsoleKit2, remember to launch sway using:"
+		elog "exec ck-launch-session ${dbus_cmd}sway"
+	fi
+}