diff options
Diffstat (limited to 'gui-wm')
| -rw-r--r-- | gui-wm/sway/Manifest | 1 | ||||
| -rw-r--r-- | gui-wm/sway/files/sway-portals.conf | 6 | ||||
| -rw-r--r-- | gui-wm/sway/metadata.xml | 41 | ||||
| -rw-r--r-- | gui-wm/sway/sway-1.10.ebuild | 109 | ||||
| -rw-r--r-- | gui-wm/sway/sway-9999.ebuild | 109 |
5 files changed, 266 insertions, 0 deletions
diff --git a/gui-wm/sway/Manifest b/gui-wm/sway/Manifest new file mode 100644 index 0000000..b967b9f --- /dev/null +++ b/gui-wm/sway/Manifest @@ -0,0 +1 @@ +DIST sway-1.10.tar.gz 5581219 BLAKE2B c2b2bb0155b141faadc5946b65d25a8478bdf7647250d6bc47deb30aab33475b442e65d6740f30e2bd5ed91c2aeb8815b80fb41b812bf2995fb54444b4b5cc4e SHA512 d5585fe85d8dfc66f12fc4a48f6883025b7906436f0f457094b6aff12896bdb85891aa0e95bbed5c64374d39a3078c8de097ca5959145251974aa29209bc5e07 diff --git a/gui-wm/sway/files/sway-portals.conf b/gui-wm/sway/files/sway-portals.conf new file mode 100644 index 0000000..aa046f6 --- /dev/null +++ b/gui-wm/sway/files/sway-portals.conf @@ -0,0 +1,6 @@ +[preferred] +# Use xdg-desktop-portal-gtk for every portal interface... +default=gtk +# ... except for the ScreenCast and Screenshot +org.freedesktop.impl.portal.ScreenCast=wlr +org.freedesktop.impl.portal.Screenshot=wlr diff --git a/gui-wm/sway/metadata.xml b/gui-wm/sway/metadata.xml new file mode 100644 index 0000000..54aab2e --- /dev/null +++ b/gui-wm/sway/metadata.xml @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>prometheanfire@gentoo.org</email> + <name>Matthew Thode</name> + </maintainer> + <maintainer type="person" proxied="yes"> + <email>speedjack95@gmail.com</email> + <name>Niccolò Scatena</name> + </maintainer> + <longdescription lang="en"> + "SirCmpwn's Wayland window manager" is an i3-compatible window manager + for Wayland. + + sway was created to fill the need of an i3-like window manager for + Wayland. The upstream i3 developers have no intention of porting i3 to + Wayland, and projects proposed by others ended up as vaporware. Many + thanks to the i3 folks for providing such a great piece of software, so + good that your users would rather write an entirely new window manager + from scratch that behaved *exactly* like i3 rather than switch to + something else. + </longdescription> + <use> + <flag name="swaybar">Install 'swaybar': sway's status bar component</flag> + <flag name="swaynag">Install 'swaynag': shows a message with buttons</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@cmpwn.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/gui-wm/sway/sway-1.10.ebuild b/gui-wm/sway/sway-1.10.ebuild new file mode 100644 index 0000000..44eee21 --- /dev/null +++ b/gui-wm/sway/sway-1.10.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit fcaps meson optfeature + +DESCRIPTION="i3-compatible Wayland window manager" +HOMEPAGE="https://swaywm.org" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/swaywm/${PN}.git" +else + MY_PV=${PV/_rc/-rc} + SRC_URI="https://github.com/swaywm/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86" + S="${WORKDIR}/${PN}-${MY_PV}" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="+man +swaybar +swaynag tray wallpapers X" +REQUIRED_USE="tray? ( swaybar )" + +DEPEND=" + >=dev-libs/json-c-0.13:0= + >=dev-libs/libinput-1.21.0:0= + virtual/libudev + sys-auth/seatd:= + dev-libs/libpcre2 + >=dev-libs/wayland-1.20.0 + x11-libs/cairo + >=x11-libs/libxkbcommon-1.5.0:0= + x11-libs/pango + x11-libs/pixman + media-libs/libglvnd + swaybar? ( x11-libs/gdk-pixbuf:2 ) + tray? ( || ( + sys-apps/systemd + sys-auth/elogind + sys-libs/basu + ) ) + wallpapers? ( gui-apps/swaybg[gdk-pixbuf(+)] ) + X? ( + x11-libs/libxcb:0= + x11-libs/xcb-util-wm + ) +" +# x11-libs/xcb-util-wm needed for xcb-iccm +if [[ ${PV} == 9999 ]]; then + DEPEND+="~gui-libs/wlroots-9999:=[X?]" +else + DEPEND+=" + >=gui-libs/wlroots-0.17:=[X?] + <gui-libs/wlroots-0.18:=[X?] + " +fi +RDEPEND=" + x11-misc/xkeyboard-config + ${DEPEND} +" +BDEPEND=" + >=dev-libs/wayland-protocols-1.24 + >=dev-build/meson-0.60.0 + virtual/pkgconfig + man? ( >=app-text/scdoc-1.11.3 ) +" + +FILECAPS=( + cap_sys_nice usr/bin/${PN} # bug 919298 +) + +src_configure() { + local emesonargs=( + $(meson_feature man man-pages) + $(meson_feature tray) + $(meson_feature swaybar gdk-pixbuf) + $(meson_use swaynag) + $(meson_use swaybar) + $(meson_use wallpapers default-wallpaper) + -Dfish-completions=true + -Dzsh-completions=true + -Dbash-completions=true + ) + + meson_src_configure +} + +src_install() { + meson_src_install + insinto /usr/share/xdg-desktop-portal + doins "${FILESDIR}/sway-portals.conf" +} + +pkg_postinst() { + fcaps_pkg_postinst + + optfeature_header "There are several packages that may be useful with sway:" + optfeature "wallpaper utility" gui-apps/swaybg + optfeature "idle management utility" gui-apps/swayidle + optfeature "simple screen locker" gui-apps/swaylock + optfeature "lightweight notification daemon" gui-apps/mako + echo + einfo "For a list of additional addons and tools usable with sway please" + einfo "visit the official wiki at:" + einfo "https://github.com/swaywm/sway/wiki/Useful-add-ons-for-sway" + einfo "Please note that some of them might not (yet) available on gentoo" +} diff --git a/gui-wm/sway/sway-9999.ebuild b/gui-wm/sway/sway-9999.ebuild new file mode 100644 index 0000000..44eee21 --- /dev/null +++ b/gui-wm/sway/sway-9999.ebuild @@ -0,0 +1,109 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit fcaps meson optfeature + +DESCRIPTION="i3-compatible Wayland window manager" +HOMEPAGE="https://swaywm.org" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/swaywm/${PN}.git" +else + MY_PV=${PV/_rc/-rc} + SRC_URI="https://github.com/swaywm/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86" + S="${WORKDIR}/${PN}-${MY_PV}" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="+man +swaybar +swaynag tray wallpapers X" +REQUIRED_USE="tray? ( swaybar )" + +DEPEND=" + >=dev-libs/json-c-0.13:0= + >=dev-libs/libinput-1.21.0:0= + virtual/libudev + sys-auth/seatd:= + dev-libs/libpcre2 + >=dev-libs/wayland-1.20.0 + x11-libs/cairo + >=x11-libs/libxkbcommon-1.5.0:0= + x11-libs/pango + x11-libs/pixman + media-libs/libglvnd + swaybar? ( x11-libs/gdk-pixbuf:2 ) + tray? ( || ( + sys-apps/systemd + sys-auth/elogind + sys-libs/basu + ) ) + wallpapers? ( gui-apps/swaybg[gdk-pixbuf(+)] ) + X? ( + x11-libs/libxcb:0= + x11-libs/xcb-util-wm + ) +" +# x11-libs/xcb-util-wm needed for xcb-iccm +if [[ ${PV} == 9999 ]]; then + DEPEND+="~gui-libs/wlroots-9999:=[X?]" +else + DEPEND+=" + >=gui-libs/wlroots-0.17:=[X?] + <gui-libs/wlroots-0.18:=[X?] + " +fi +RDEPEND=" + x11-misc/xkeyboard-config + ${DEPEND} +" +BDEPEND=" + >=dev-libs/wayland-protocols-1.24 + >=dev-build/meson-0.60.0 + virtual/pkgconfig + man? ( >=app-text/scdoc-1.11.3 ) +" + +FILECAPS=( + cap_sys_nice usr/bin/${PN} # bug 919298 +) + +src_configure() { + local emesonargs=( + $(meson_feature man man-pages) + $(meson_feature tray) + $(meson_feature swaybar gdk-pixbuf) + $(meson_use swaynag) + $(meson_use swaybar) + $(meson_use wallpapers default-wallpaper) + -Dfish-completions=true + -Dzsh-completions=true + -Dbash-completions=true + ) + + meson_src_configure +} + +src_install() { + meson_src_install + insinto /usr/share/xdg-desktop-portal + doins "${FILESDIR}/sway-portals.conf" +} + +pkg_postinst() { + fcaps_pkg_postinst + + optfeature_header "There are several packages that may be useful with sway:" + optfeature "wallpaper utility" gui-apps/swaybg + optfeature "idle management utility" gui-apps/swayidle + optfeature "simple screen locker" gui-apps/swaylock + optfeature "lightweight notification daemon" gui-apps/mako + echo + einfo "For a list of additional addons and tools usable with sway please" + einfo "visit the official wiki at:" + einfo "https://github.com/swaywm/sway/wiki/Useful-add-ons-for-sway" + einfo "Please note that some of them might not (yet) available on gentoo" +} |
