summaryrefslogtreecommitdiff
path: root/gui-wm
diff options
context:
space:
mode:
authorAisha Tammy <gentoo@aisha.cc>2020-05-15 11:52:55 -0400
committerAaron Bauman <bman@gentoo.org>2020-05-17 11:54:36 -0400
commit72607ad00acb19416f8173803aa3767b4b4aeb62 (patch)
tree1cd300236d0cc86688e43765d04325c82a657b6e /gui-wm
parentgui-libs/wf-config: configuration manager for wayfire (diff)
downloadgentoo-72607ad00acb19416f8173803aa3767b4b4aeb62.tar.gz
gentoo-72607ad00acb19416f8173803aa3767b4b4aeb62.tar.bz2
gentoo-72607ad00acb19416f8173803aa3767b4b4aeb62.zip
gui-wm/wayfire: compiz like 3d wayland manager
Closes: https://bugs.gentoo.org/686854 compiz like eye-candy 3D wayland, with low memory footprint. Aims to bring desktop features such as 3D cube, fire burn, fisheye, wrot and all other desktop effects to wayland. Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Aisha Tammy <gentoo@aisha.cc> Signed-off-by: Aaron Bauman <bman@gentoo.org>
Diffstat (limited to 'gui-wm')
-rw-r--r--gui-wm/wayfire/Manifest1
-rw-r--r--gui-wm/wayfire/metadata.xml23
-rw-r--r--gui-wm/wayfire/wayfire-0.4.0.ebuild97
-rw-r--r--gui-wm/wayfire/wayfire-9999.ebuild97
4 files changed, 218 insertions, 0 deletions
diff --git a/gui-wm/wayfire/Manifest b/gui-wm/wayfire/Manifest
new file mode 100644
index 000000000000..f03e463761b8
--- /dev/null
+++ b/gui-wm/wayfire/Manifest
@@ -0,0 +1 @@
+DIST wayfire-0.4.0.tar.xz 588904 BLAKE2B b720297b3ffb868761ea61615b4d0fefc2687f8a2060208f8cc002ff7adaf7622da906ad98e25664c3e72c04de2fb74741d0a417cce4826483407bdf10d63b43 SHA512 e96cdb90ce36c005476e08608683983aa167e58aea80fcfd3b24ab0836ec4aa50fb5a7eeb0872a1b1014e3073ed826e1c83d3146b39d3cdb2a8b3a0895155649
diff --git a/gui-wm/wayfire/metadata.xml b/gui-wm/wayfire/metadata.xml
new file mode 100644
index 000000000000..c61941f4b35f
--- /dev/null
+++ b/gui-wm/wayfire/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <longdescription>
+ compiz like eye-candy 3D wayland, with low memory footprint.
+ Aims to bring desktop features such as 3D cube, fire burn,
+ fisheye, wrot and all other desktop effects to wayland.
+ </longdescription>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="gles2">use libglvnd to do animations more efficiently</flag>
+ <flag name='system-wfconfig'>use the system-wide wf-config, else build it as a submodule. DO NOT DISABLE UNLESS YOU KNOW WHAT YOU ARE DOING.</flag>
+ <flag name='system-wlroots'>use the system wide wlroots, else build it as a submodule. DO NOT DISABLE UNLESS YOU KNOW WHAT YOU ARE DOING.</flag>
+ <flag name='debug'>add debugging symbols for error reporting. DISABLE ALL SYSTEM USE FLAGS BEFORE REPORTING BUGS.</flag>
+ </use>
+</pkgmetadata>
diff --git a/gui-wm/wayfire/wayfire-0.4.0.ebuild b/gui-wm/wayfire/wayfire-0.4.0.ebuild
new file mode 100644
index 000000000000..96c6375e2b05
--- /dev/null
+++ b/gui-wm/wayfire/wayfire-0.4.0.ebuild
@@ -0,0 +1,97 @@
+# Copyright 2019-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit meson
+
+DESCRIPTION="compiz like 3D wayland compositor"
+HOMEPAGE="https://github.com/WayfireWM/wayfire"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/WayfireWM/${PN}.git"
+else
+ SRC_URI="https://github.com/WayfireWM/${PN}/releases/download/${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="+gles2 +system-wfconfig +system-wlroots elogind systemd debug"
+REQUIRED_USE="?? ( elogind systemd )"
+
+DEPEND="
+ dev-libs/libevdev
+ dev-libs/libinput
+ gui-libs/gtk-layer-shell
+ media-libs/glm
+ media-libs/mesa:=[gles2,wayland,X]
+ media-libs/libjpeg-turbo
+ media-libs/libpng
+ media-libs/freetype:=[X]
+ x11-libs/libdrm
+ x11-libs/gtk+:3=[wayland,X]
+ x11-libs/cairo:=[X,svg]
+ x11-libs/libxkbcommon:=[X]
+ x11-libs/pixman
+ gles2? ( media-libs/libglvnd[X] )
+ system-wfconfig? ( ~gui-libs/wf-config-${PV}[debug=] )
+ !system-wfconfig? ( !gui-libs/wf-config )
+ system-wlroots? ( >=gui-libs/wlroots-0.10.0[elogind=,systemd=,X] )
+ !system-wlroots? ( !gui-libs/wlroots )
+"
+
+RDEPEND="
+ ${DEPEND}
+ elogind? ( sys-auth/elogind )
+ systemd? ( sys-apps/systemd )
+ x11-misc/xkeyboard-config
+"
+
+BDEPEND="
+ ${DEPEND}
+ virtual/pkgconfig
+ >=dev-libs/wayland-protocols-1.18
+"
+
+src_compile(){
+ local emesonargs=(
+ $(meson_feature system-wfconfig use_system_wfconfig)
+ $(meson_feature system-wlroots use_system_wlroots)
+ $(meson_use gles2 enable_gles32)
+ )
+ if use debug; then
+ emesonargs+=(
+ "-Db_sanitize=address,undefined"
+ )
+ fi
+ meson_src_compile
+}
+
+src_install() {
+ default
+ meson_src_install
+ einstalldocs
+
+ insinto "/usr/share/wayland-sessions/"
+ insopts -m644
+ doins wayfire.desktop
+
+ dodoc wayfire.ini
+
+ if ! use systemd && ! use elogind; then
+ fowners root:0 /usr/bin/wayfire
+ fperms 4511 /usr/bin/wayfire
+ fi
+}
+
+pkg_postinst() {
+ if [ -z "${REPLACING_VERSIONS}" ]; then
+ elog "Wayfire has been installed but the session cannot be used"
+ elog "until you install a configuration file. The default config"
+ elog "file is installed at \"/usr/share/doc/${P}/wayfire.ini.bz2\""
+ elog "To install the file execute"
+ elog "\$ mkdir -p ~/.config && bzcat /usr/share/doc/${P}/wayfire.ini.bz2 > ~/.config/wayfire.ini"
+ fi
+}
diff --git a/gui-wm/wayfire/wayfire-9999.ebuild b/gui-wm/wayfire/wayfire-9999.ebuild
new file mode 100644
index 000000000000..96c6375e2b05
--- /dev/null
+++ b/gui-wm/wayfire/wayfire-9999.ebuild
@@ -0,0 +1,97 @@
+# Copyright 2019-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit meson
+
+DESCRIPTION="compiz like 3D wayland compositor"
+HOMEPAGE="https://github.com/WayfireWM/wayfire"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/WayfireWM/${PN}.git"
+else
+ SRC_URI="https://github.com/WayfireWM/${PN}/releases/download/${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="+gles2 +system-wfconfig +system-wlroots elogind systemd debug"
+REQUIRED_USE="?? ( elogind systemd )"
+
+DEPEND="
+ dev-libs/libevdev
+ dev-libs/libinput
+ gui-libs/gtk-layer-shell
+ media-libs/glm
+ media-libs/mesa:=[gles2,wayland,X]
+ media-libs/libjpeg-turbo
+ media-libs/libpng
+ media-libs/freetype:=[X]
+ x11-libs/libdrm
+ x11-libs/gtk+:3=[wayland,X]
+ x11-libs/cairo:=[X,svg]
+ x11-libs/libxkbcommon:=[X]
+ x11-libs/pixman
+ gles2? ( media-libs/libglvnd[X] )
+ system-wfconfig? ( ~gui-libs/wf-config-${PV}[debug=] )
+ !system-wfconfig? ( !gui-libs/wf-config )
+ system-wlroots? ( >=gui-libs/wlroots-0.10.0[elogind=,systemd=,X] )
+ !system-wlroots? ( !gui-libs/wlroots )
+"
+
+RDEPEND="
+ ${DEPEND}
+ elogind? ( sys-auth/elogind )
+ systemd? ( sys-apps/systemd )
+ x11-misc/xkeyboard-config
+"
+
+BDEPEND="
+ ${DEPEND}
+ virtual/pkgconfig
+ >=dev-libs/wayland-protocols-1.18
+"
+
+src_compile(){
+ local emesonargs=(
+ $(meson_feature system-wfconfig use_system_wfconfig)
+ $(meson_feature system-wlroots use_system_wlroots)
+ $(meson_use gles2 enable_gles32)
+ )
+ if use debug; then
+ emesonargs+=(
+ "-Db_sanitize=address,undefined"
+ )
+ fi
+ meson_src_compile
+}
+
+src_install() {
+ default
+ meson_src_install
+ einstalldocs
+
+ insinto "/usr/share/wayland-sessions/"
+ insopts -m644
+ doins wayfire.desktop
+
+ dodoc wayfire.ini
+
+ if ! use systemd && ! use elogind; then
+ fowners root:0 /usr/bin/wayfire
+ fperms 4511 /usr/bin/wayfire
+ fi
+}
+
+pkg_postinst() {
+ if [ -z "${REPLACING_VERSIONS}" ]; then
+ elog "Wayfire has been installed but the session cannot be used"
+ elog "until you install a configuration file. The default config"
+ elog "file is installed at \"/usr/share/doc/${P}/wayfire.ini.bz2\""
+ elog "To install the file execute"
+ elog "\$ mkdir -p ~/.config && bzcat /usr/share/doc/${P}/wayfire.ini.bz2 > ~/.config/wayfire.ini"
+ fi
+}