summaryrefslogtreecommitdiff
path: root/x11-wm/fvwm3
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-12-02 02:07:07 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-12-02 02:07:07 +0000
commitd4f65848c7ecabb56e2f93889cbd20078cd347f7 (patch)
tree180032f5afeb689db6a270d612f3e3364ed8fd2b /x11-wm/fvwm3
parentc635a4b7ddb6105bfc6fef130b188a087726677b (diff)
gentoo auto-resync : 02:12:2024 - 02:07:07
Diffstat (limited to 'x11-wm/fvwm3')
-rw-r--r--x11-wm/fvwm3/Manifest15
-rw-r--r--x11-wm/fvwm3/files/fvwm3-1.1.0-fix-go-detection-v2.patch50
-rw-r--r--x11-wm/fvwm3/files/fvwm3-1.1.1-desk-init.patch32
-rw-r--r--x11-wm/fvwm3/fvwm3-1.0.9-r1.ebuild202
-rw-r--r--x11-wm/fvwm3/fvwm3-1.1.1.ebuild (renamed from x11-wm/fvwm3/fvwm3-1.1.0-r1.ebuild)136
-rw-r--r--x11-wm/fvwm3/fvwm3-9999.ebuild47
-rw-r--r--x11-wm/fvwm3/metadata.xml3
7 files changed, 124 insertions, 361 deletions
diff --git a/x11-wm/fvwm3/Manifest b/x11-wm/fvwm3/Manifest
index 4f13ed53bb4a..e677abe3db17 100644
--- a/x11-wm/fvwm3/Manifest
+++ b/x11-wm/fvwm3/Manifest
@@ -1,9 +1,6 @@
-AUX fvwm3-1.1.0-fix-go-detection-v2.patch 1807 BLAKE2B e34c3110b0fe64a392a8c2a9369780e55bee4f043f6c403e8e0b9f216e657580125a7b1fe0481017fc41de89866e099ead38f4779bec5737f30fe52c63ae6dab SHA512 cb2716f0ec085c75cceb73c0f6d3ba838c162162c0c3e6ae83bcf93c099d7f15d6d29bad59bd5522e24f1f4305d36f70fe91150536d239d3e1a1abb8fc9b6a33
-DIST fvwm3-1.0.9-docs.tar.xz 234884 BLAKE2B f52da9eb2486f7a212ead77ccc190c57076e1d3c73a3997c3a94edcf60dbc72ec5d410a8df1d621ff18b346741b1c94b3f87170db68c3067caa3295782a9bb61 SHA512 e6c33b09b7bac32bd61f1bd2c0216e2c99fef3f0b51b52b229093c25a437828e4bece382284d0c1f0bbbaf5b7459f2c391dfc1d2fa4ba80be22f09094e976b03
-DIST fvwm3-1.0.9.tar.gz 4525552 BLAKE2B cb58181adb42f5b8d491c6413277eb1f4a5d89637d9c6bb323223925c719d808e84ed0f72a1d0ffc822ddb8295ebf2bb89c2351ebd591916b50ebc69728e59fa SHA512 de71d74b76da8e0cf1560d51ef916857e3f825b272d786d9b6b93aef9a82c399f580b9b941a47aff1f327b097d12e1ce05860924e792206e4150ff19a5c39ee3
-DIST fvwm3-1.1.0-docs.tar.xz 230964 BLAKE2B f431011a63a8d190e01e34301e74fd40750deb51c947b055474888379b7364910351c923ac637968948a094b89f49d8be5758429a85cd66107b8696b526b0004 SHA512 629794d0aef9ef2d9ce9a8e1ff3bc63fe2ef30f9f593938e2892e4e04bd960f51d2a90aaf5c95328495bccea6b1dbfd6fdeb76f18bb9a8bc6eb2649359023df8
-DIST fvwm3-1.1.0.tar.gz 4527424 BLAKE2B ee9a3f190ae7fa1f1dd703e17b0e12f04da63212cade30facdbc8339ded7f598de143d18f17dde39d3af8e24ff2b34855ad3e5b2b6c5ffe466072a7353895cd8 SHA512 47eea05cbdecf4da3313b9183fa938544b451b9f133d7a68062feb222c3c1af3873402f80b60485d603afe8cd23a03f3e86a503fc1f2070e1ad2e6e64d012341
-EBUILD fvwm3-1.0.9-r1.ebuild 4808 BLAKE2B 522e96330ee3730704e2544ab34a71816b5616e8565790cabacbb3a0ccfbebcf09d7b0e74acd289b1d092c9e828e58d995d6986257d32db55b58310b6aea866e SHA512 9a10669c760d02ac45339259c8d4c836dcb3cfcfaf368363838ba16bf415afc83bb20db326999d4a45c237771b0c617691d3639292517475b45961fe37174380
-EBUILD fvwm3-1.1.0-r1.ebuild 4759 BLAKE2B 562730695d29ac3f1d587ad37803719614107e8332ac96b8faab71e20186d961bd39155057875346aca7bf2c2588db6c104f2b4c84fda52752ef75c85f933176 SHA512 8740a4d2bc9a67d9f1b190f846ab07ce5fc0fb210348450bd9f120ae224d79fb6a1a9e7bb04dc6787dcb25779c760902f90416f9afa7355b01e77668eb01e0c7
-EBUILD fvwm3-9999.ebuild 4278 BLAKE2B 3f6bdccc4fb68c3794bccc66276c92d6b84240a95b8e25f8b32329c351af6ec67b75e443326cd1acfea842b4f692c97c7d7f61199094ea91ff75cd0f82febb5c SHA512 ee590160dfd9ca7979776ab6ad64ce2f948f1addec06d937c418633bb6fc2fe8885fd9b5aefebde88b03d2bff64fc2b43fde7b84d454d4b15416370267c78a37
-MISC metadata.xml 1012 BLAKE2B 5c5d08f16521594e1425ca8efbe5162c72ce6aff0557c0c79f1e2717dfc77ba855f90c493b45ff361d2e75f00b17e549b6853ee660c77c57cdeadce1df223f32 SHA512 a53bdde33366823f867bcff8b6c90e3cae6e0808945278fd02928502fd38df9d699fa4ace2fe66c1524e74d256242202a2b3139deb1331b67ac72f2fd0e9608f
+AUX fvwm3-1.1.1-desk-init.patch 1237 BLAKE2B f25ed4ba7cf2b5a5bc9bb4973d123d7afdcfc824f7eee64747534d8407f456fec5b2a3ec3f78fb80a0c81718cb11f216ca575b47fee9018d7a5667219c1f7f02 SHA512 c528fd645390bb5caa941a09f0d3fc19a932a332f45d568a00674c8cf4958145689bf05612dcacb0ec3109954ca07882cbbadf7f01610c6b6ac59b3ed74ddbd2
+DIST fvwm3-1.1.1-docs.tar.xz 241608 BLAKE2B fbdc789dce9e36a94a4b6c2541b4474548bd961e333d14507788a70e1e4103f0ae5df8223259670cd2aeaec43d3088f1b600b371d03543c2bbb4bce47c37815c SHA512 92385ff188269f85dfda0f079135d651973b1556ac13112cff087a2294256edd7dc2b99aa2c220f9f361df6a3a4d820c56e061dd5d818e58755b1f94df9b4e03
+DIST fvwm3-1.1.1.tar.gz 4016926 BLAKE2B 5654554d8bd6593f30cb5bdd05e424abd7fd3f298d12073d419d18967f17d2df58de797392af0b15a0bcf05d09c8fe7b3c273734d17cb97b617dcb9a5e7f4091 SHA512 66b044a2c463d56573c68f4cdd222a39a667a4acf3425d448c7e1c105e67a9d00abafff1e94c066f0781b4546d1b2b84bc9c20798a0b9ef4b0f673e743a2d4d0
+EBUILD fvwm3-1.1.1.ebuild 4626 BLAKE2B f45a9c81599a3d4bdf5498e10c72f03b48cdcd93730f4e2fe877fdfdb112436670298a6a363c5f54614d1e0080b67f65704746c1016d5545b8eba20996c6dafd SHA512 991d19d781d2a8f55206e5f99f11997f7626188e562c147e2ed774b9f4380255850154561adae2238d2a128234cc66e3d74c68f4bcc9c7cd50b44749307f42de
+EBUILD fvwm3-9999.ebuild 4577 BLAKE2B aa5e96cb2776be29ba25ddef3b29807fd5f437fdd7fa87970abb4866e56b7e8f1566c5c306a6676bb7cb69ec7da8cbfc4cd6c307dd30f6fd31b6690ce5a70a8e SHA512 b7743ebe4f01cff8047af792c9e55f7b7d71c8b48b5997a33802f9ed051c9bd80ae76865a345f5707d5d142cac3194950ec4df81e64157067c21d435e49126bc
+MISC metadata.xml 829 BLAKE2B 23828052466446a55db8d718ce60120ab06213bd53cd0a0e6d2be3b76d1ae39d629cd49236aeaf5c28b9493ef10854d2845281c88cbe0e7cdec4cce5d9368259 SHA512 f05606a0aaac1b7d7cda86991fc8b49d778d4fbc73c52ab19741e5f51dd62b07cef6bb7d32df7baad025b7654d0fe85c7a337a31fa9f254326f59b6eda7adb64
diff --git a/x11-wm/fvwm3/files/fvwm3-1.1.0-fix-go-detection-v2.patch b/x11-wm/fvwm3/files/fvwm3-1.1.0-fix-go-detection-v2.patch
deleted file mode 100644
index 5c17193728cc..000000000000
--- a/x11-wm/fvwm3/files/fvwm3-1.1.0-fix-go-detection-v2.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 9be90a96c537b4a743774b0be9ffc8ca5c6498da Mon Sep 17 00:00:00 2001
-From: Matt Jolly <kangie@gentoo.org>
-Date: Tue, 2 Apr 2024 20:47:38 +1000
-Subject: [PATCH] Use AX_COMPARE_VERSION macro for golang version checks
-
-The previous approach fragile, required manual updates,
-and results in unexpected outcomes when the user has updated
-golang.
-
-Reported-by: Denny Rivetti <denny.rivetti.me@gmail.com>
---- a/configure.ac
-+++ b/configure.ac
-@@ -80,23 +80,13 @@ AC_ARG_ENABLE(golang,
-
- if test ! x"$with_golang" = xno; then
- AC_CHECK_PROGS(GO, go)
-- if test -n "$GO" ; then
-- GOVERSIONOPTION=version
-- go_version=$($GO $GOVERSIONOPTION | sed -e 's/go version go//' | \
-- sed -e 's/ .*$//')
-- AC_MSG_CHECKING([whether go version is >= 1.14.x ($go_version)])
-- case "$go_version" in
-- 1.14*|1.15*|1.16*|1.17*|1.18*|1.19*|1.20*|1.21*|1.22*|1.23*)
-- AC_MSG_RESULT([yes - version is: $go_version])
-- with_golang="yes"
-- GO=
-- ;;
-- *)
-- AC_MSG_RESULT([no - version is: $go_version])
-- with_golang="no"
-- problem_golang=": version of go ($go_version) <= 1.14.x"
-- ;;
-- esac
-+ if test -n "$GO"; then
-+ GOVERSIONOPTION=version
-+ go_version=$($GO $GOVERSIONOPTION | sed -e 's/go version go//' | sed -e 's/ .*$//')
-+ AX_COMPARE_VERSION([$go_version], [ge], ["1.14.0"],
-+ [with_golang="yes"; GO=],
-+ [with_golang="no";
-+ AC_MSG_ERROR([Go version ($go_version) is lower than the minimum required version ($REQUIRED_GO_VERSION)])])
- fi
- fi
- AM_CONDITIONAL([FVWM_BUILD_GOLANG], [test x"$with_golang" = xyes])
-@@ -1514,4 +1504,4 @@ Fvwm3 Configuration:
- Build man pages? $with_mandoc$problem_mandoc
- Build html man pages? $with_htmldoc$problem_htmldoc
-
--"
-\ No newline at end of file
-+"
diff --git a/x11-wm/fvwm3/files/fvwm3-1.1.1-desk-init.patch b/x11-wm/fvwm3/files/fvwm3-1.1.1-desk-init.patch
new file mode 100644
index 000000000000..34b824f79dd2
--- /dev/null
+++ b/x11-wm/fvwm3/files/fvwm3-1.1.1-desk-init.patch
@@ -0,0 +1,32 @@
+From efef84cf5fcd2c4747ef75dd522605450efd278a Mon Sep 17 00:00:00 2001
+From: Jaimos Skriletz <jaimosskriletz@gmail.com>
+Date: Sat, 30 Nov 2024 16:40:21 -0700
+Subject: [PATCH] FvwmPager: Update current desk correctly during init.
+
+When FvwmPager is tracking the current desk and is run on any desk
+except desk 0, the current desk isn't updated during initialization
+because the monitor update is sent before the desk update, so the
+pager didn't realize the desk has changed.
+
+This ensures that the pager updates the current desk if either
+the desk changes or the new desk is not the same as the current
+desk to also catch updates during pager initialization.
+
+Fixes #1122
+---
+ modules/FvwmPager/messages.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules/FvwmPager/messages.c b/modules/FvwmPager/messages.c
+index c93ed3056..86cd32e70 100644
+--- a/modules/FvwmPager/messages.c
++++ b/modules/FvwmPager/messages.c
+@@ -454,7 +454,7 @@ void process_new_desk(unsigned long *body)
+ monitor_assign_virtual(fp->m);
+
+ /* If always tracking current desk. Update Desks[0]. */
+- if (fAlwaysCurrentDesk && oldDesk != newDesk)
++ if (fAlwaysCurrentDesk && (oldDesk != newDesk || desk1 != newDesk))
+ {
+ PagerWindow *t;
+
diff --git a/x11-wm/fvwm3/fvwm3-1.0.9-r1.ebuild b/x11-wm/fvwm3/fvwm3-1.0.9-r1.ebuild
deleted file mode 100644
index 104d32825e4e..000000000000
--- a/x11-wm/fvwm3/fvwm3-1.0.9-r1.ebuild
+++ /dev/null
@@ -1,202 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Doc generation requires pulls in asciidoc/ruby, we'll prebuild docs
-# for release ebuilds.
-# Scripting for this is in sam-gentoo-scripts.
-: ${FVWM3_DOCS_PREBUILT:=1}
-
-PYTHON_COMPAT=( python3_{10..12} )
-GO_OPTIONAL=1
-inherit autotools desktop flag-o-matic go-module python-single-r1 toolchain-funcs
-
-DESCRIPTION="A multiple large virtual desktop window manager derived from fvwm"
-HOMEPAGE="https://www.fvwm.org/"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/fvwmorg/fvwm3.git"
- EGIT_BRANCH="main"
-else
- SRC_URI="https://github.com/fvwmorg/fvwm3/releases/download/${PV}/${P}.tar.gz"
- if [[ ${FVWM3_DOCS_PREBUILT} == 1 ]]; then
- SRC_URI+=" https://deps.gentoo.zip/x11-wm/fvwm3/${P}-docs.tar.xz"
- fi
- KEYWORDS="~amd64 ~riscv"
-fi
-
-LICENSE="GPL-2+ FVWM
- go? ( Apache-2.0 BSD MIT )"
-SLOT="0"
-IUSE="bidi debug +go netpbm nls perl readline stroke svg tk lock"
-REQUIRED_USE="
- ${PYTHON_REQUIRED_USE}"
-
-DOCS=( NEWS )
-
-if [[ ${PV} == 9999 ]]; then
- DOCS+=(
- dev-docs/COMMANDS
- dev-docs/DEVELOPERS.md
- dev-docs/INSTALL.md
- dev-docs/PARSING.md
- dev-docs/TODO.md
- dev-docs/NEW-COMMANDS.md
- )
-fi
-
-BDEPEND="
- virtual/pkgconfig
- app-arch/unzip
- go? ( >=dev-lang/go-1.14 )
-"
-
-if [[ ${FVWM3_DOCS_PREBUILT} == 0 ]]; then
- BDEPEND+="
- dev-libs/libxslt
- dev-ruby/asciidoctor
- "
-fi
-
-RDEPEND="${PYTHON_DEPS}
- ${COMMON_DEPEND}
- !x11-wm/fvwm
- dev-lang/perl
- dev-libs/glib:2
- dev-libs/libevent:=
- media-libs/fontconfig
- media-libs/libpng:=
- sys-libs/zlib
- x11-libs/libICE
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libXau
- x11-libs/libxcb
- x11-libs/libXcursor
- x11-libs/libXdmcp
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXft
- x11-libs/libXpm
- x11-libs/libXrandr
- x11-libs/libXrender
- bidi? ( dev-libs/fribidi )
- lock? ( x11-misc/xlockmore )
- netpbm? ( media-libs/netpbm )
- perl? ( tk? (
- dev-lang/tk
- dev-perl/Tk
- >=dev-perl/X11-Protocol-0.56
- )
- )
- readline? (
- sys-libs/ncurses:=
- sys-libs/readline:=
- )
- stroke? ( dev-libs/libstroke )
- svg? (
- gnome-base/librsvg:2
- x11-libs/cairo
- )"
-
-DEPEND="${COMMON_DEPEND}
- x11-base/xorg-proto"
-
-src_prepare() {
- default
- use go && ( sed -e 's/GOFLAGS=-ldflags="-s -w"/GOFLAGS=/' \
- -i bin/FvwmPrompt/Makefile.am || die )
-
- eautoreconf
-}
-
-src_configure() {
- # Non-upstream email where bugs should be sent; used in fvwm-bug.
- export FVWM_BUGADDR="desktop-wm@nogentoo.org"
-
- # Recommended by upstream for release. Doesn't really matter for live ebuilds.
- append-flags -fno-strict-aliasing
-
- # Signed chars are required.
- for arch in arm arm64 ppc ppc64; do
- use $arch && append-flags -fsigned-chars
- done
-
- local myconf=(
- --with-imagepath=/usr/include/X11/bitmaps:/usr/include/X11/pixmaps:/usr/share/icons/fvwm
- --enable-package-subdirs
- $(use_enable bidi)
- $(use_enable go golang)
- $(use_enable nls)
- $(use_enable nls iconv)
- $(use_enable perl perllib)
- $(use_with readline readline-library)
- $(use_enable svg rsvg)
- --enable-png
- )
-
- if [[ ${FVWM3_DOCS_PREBUILT} == 0 ]]; then
- myconf+=(
- --enable-mandoc
- --enable-htmldoc
- )
- else
- # Probably not required, but let's be safe
- myconf+=(
- --disable-mandoc
- --disable-htmldoc
- )
- fi
-
- use readline && myconf+=( --without-termcap-library )
-
- econf "${myconf[@]}"
-}
-
-src_compile() {
- PREFIX="${EPREFIX}/usr" emake AR="$(tc-getAR)"
-}
-
-src_install() {
- # Since we're manually handling docs installation, let's do that first
- # and then install the rest of the files via emake
- local HTML_DOCS
- if [[ ${FVWM3_DOCS_PREBUILT} == 1 ]] ; then
- doman "${WORKDIR}"/${P}-docs/man/**/*.[0-8]
- HTML_DOCS="${WORKDIR}"/${P}-docs/html/*
- else
- HTML_DOCS="${S}"/doc/*.html
- doman "${S}"/doc/*.[0-8]
- fi
-
- einstalldocs
-
- emake DESTDIR="${ED}" prefix="/usr" exec_prefix="/usr" datarootdir="/usr/share" install
-
- exeinto /etc/X11/Sessions
- newexe - ${PN} <<-EOF
- #!/bin/sh
- ${PN}
- EOF
-
- python_scriptinto "/usr/bin"
- python_doscript "${ED}/usr/bin/FvwmCommand" "${ED}/usr/bin/fvwm-menu-desktop"
-
- make_session_desktop fvwm3 /usr/bin/fvwm3
-
-}
-
-pkg_postinst() {
- if use go; then
- ewarn "FvwmPrompt has been installed, it provides the functionality of both FvwmCommand and FvwmConsole."
- ewarn "For compatibility with the existing fvwm2 configurations, the ebuild will install a FvwmCommand wrapper."
- ewarn "If you need FvwmConsole, install ${PN} with USE=\"-go\";"
- ewarn "however FvwmPrompt and FvwmCommand will not be installed."
- else
- ewarn "FvwmConsole has been installed, but FvwmCommand and FvwmPrompt are no longer included in this ebuild."
- ewarn "If you need FvwmPrompt or FvwmCommand, install ${PN} with USE=\"go\"."
- ewarn "In that case, FvwmPrompt will replace FvwmConsole and provide the same functionality in a more flexible way."
- fi
-}
diff --git a/x11-wm/fvwm3/fvwm3-1.1.0-r1.ebuild b/x11-wm/fvwm3/fvwm3-1.1.1.ebuild
index 9fe8d41f042d..227108110a88 100644
--- a/x11-wm/fvwm3/fvwm3-1.1.0-r1.ebuild
+++ b/x11-wm/fvwm3/fvwm3-1.1.1.ebuild
@@ -8,9 +8,9 @@ EAPI=8
# Scripting for this is in sam-gentoo-scripts.
: ${FVWM3_DOCS_PREBUILT:=1}
-PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( python3_{10..13} )
GO_OPTIONAL=1
-inherit autotools desktop flag-o-matic go-module python-single-r1 toolchain-funcs
+inherit flag-o-matic go-module meson optfeature python-single-r1
DESCRIPTION="A multiple large virtual desktop window manager derived from fvwm"
HOMEPAGE="https://www.fvwm.org/"
@@ -19,6 +19,7 @@ if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/fvwmorg/fvwm3.git"
EGIT_BRANCH="main"
+ FVWM3_DOCS_PREBUILT=0
else
SRC_URI="https://github.com/fvwmorg/fvwm3/releases/download/${PV}/${P}.tar.gz"
if [[ ${FVWM3_DOCS_PREBUILT} == 1 ]]; then
@@ -30,9 +31,10 @@ fi
LICENSE="GPL-2+ FVWM
go? ( Apache-2.0 BSD MIT )"
SLOT="0"
-IUSE="bidi debug +go netpbm nls perl readline stroke svg tk lock"
-REQUIRED_USE="
- ${PYTHON_REQUIRED_USE}"
+IUSE="bidi +go nls readline svg"
+# Strictly speaking readline is not required for go,
+# but as most systems already have it installed we don't users to stub their toe on REQUIRED_USE
+REQUIRED_USE="${PYTHON_REQUIRED_USE} !go? ( readline )"
DOCS=( NEWS )
@@ -50,72 +52,59 @@ fi
BDEPEND="
virtual/pkgconfig
app-arch/unzip
- go? ( >=dev-lang/go-1.14 )
+ go? ( >=dev-lang/go-1.20 )
"
-if [[ ${FVWM3_DOCS_PREBUILT} == 0 ]]; then
+if [[ ${FVWM3_DOCS_PREBUILT} -ne 1 ]]; then
BDEPEND+="
dev-libs/libxslt
dev-ruby/asciidoctor
"
fi
-RDEPEND="${PYTHON_DEPS}
- ${COMMON_DEPEND}
- !x11-wm/fvwm
+COMMON_DEPEND="
dev-lang/perl
dev-libs/glib:2
dev-libs/libevent:=
media-libs/fontconfig
media-libs/libpng:=
- sys-libs/zlib
+ x11-base/xorg-proto
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
- x11-libs/libXau
x11-libs/libxcb
x11-libs/libXcursor
- x11-libs/libXdmcp
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXft
+ x11-libs/libxkbcommon
x11-libs/libXpm
x11-libs/libXrandr
x11-libs/libXrender
+ x11-libs/xtrans
+ x11-libs/libXfixes
bidi? ( dev-libs/fribidi )
- lock? ( x11-misc/xlockmore )
- netpbm? ( media-libs/netpbm )
- perl? ( tk? (
- dev-lang/tk
- dev-perl/Tk
- >=dev-perl/X11-Protocol-0.56
- )
- )
readline? (
- sys-libs/ncurses:=
sys-libs/readline:=
)
- stroke? ( dev-libs/libstroke )
svg? (
gnome-base/librsvg:2
x11-libs/cairo
- )"
+ )
+"
+
+RDEPEND="
+ ${COMMON_DEPEND}
+ ${PYTHON_DEPS}
+ !x11-wm/fvwm
+"
-DEPEND="${COMMON_DEPEND}
- x11-base/xorg-proto"
+DEPEND="${COMMON_DEPEND}"
PATCHES=(
- "${FILESDIR}"/fvwm3-1.1.0-fix-go-detection-v2.patch
+ "${FILESDIR}"/${P}-desk-init.patch
)
-src_prepare() {
- default
- use go && ( sed -e 's/GOFLAGS=-ldflags="-s -w"/GOFLAGS=/' \
- -i bin/FvwmPrompt/Makefile.am || die )
-
- eautoreconf
-}
-
src_configure() {
# Recommended by upstream for release. Doesn't really matter for live ebuilds.
append-flags -fno-strict-aliasing
@@ -125,68 +114,57 @@ src_configure() {
use $arch && append-flags -fsigned-chars
done
- local myconf=(
- --with-imagepath=/usr/include/X11/bitmaps:/usr/include/X11/pixmaps:/usr/share/icons/fvwm
- --enable-package-subdirs
- $(use_enable bidi)
- $(use_enable go golang)
- $(use_enable nls)
- $(use_enable nls iconv)
- $(use_enable perl perllib)
- $(use_with readline readline-library)
- $(use_enable svg rsvg)
- --enable-png
+ local emesonargs=(
+ "-Dpng=enabled"
+ "-Dsm=enabled"
+ "-Dxcursor=enabled"
+ "-Dxfixes=enabled"
+ "-Dxpm=enabled"
+ "-Dxrender=enabled"
+ $(meson_feature bidi)
+ $(meson_feature go golang)
+ $(meson_feature nls iconv)
+ $(meson_feature nls)
+ $(meson_feature readline) # not required for go but it won't hurt to enable it
+ $(meson_feature svg cairo) # Pick 1 of 'cairo', 'cairo-svg', or 'libsvg-cairo'; add the appropriate dependency
+ $(meson_feature svg)
+ "-Dcairo-svg=disabled"
+ "-Dlibsvg-cairo=disabled"
+ "-Ddocdir=${EPREFIX}/usr/share/doc/${PF}"
)
- if [[ ${FVWM3_DOCS_PREBUILT} == 0 ]]; then
- myconf+=(
- --enable-mandoc
- --enable-htmldoc
+ if [[ ${FVWM3_DOCS_PREBUILT} -ne 1 ]]; then
+ emesonargs+=(
+ "-Dhtmldoc=true"
+ "-Dmandoc=true"
)
else
# Probably not required, but let's be safe
- myconf+=(
- --disable-mandoc
- --disable-htmldoc
+ emesonargs+=(
+ "-Dhtmldoc=false"
+ "-Dmandoc=false"
)
fi
- use readline && myconf+=( --without-termcap-library )
-
- econf "${myconf[@]}"
-}
-
-src_compile() {
- PREFIX="${EPREFIX}/usr" emake AR="$(tc-getAR)"
+ meson_src_configure
}
src_install() {
# Since we're manually handling docs installation, let's do that first
- # and then install the rest of the files via emake
+ # and then install the rest of the files "normally".
local HTML_DOCS
if [[ ${FVWM3_DOCS_PREBUILT} == 1 ]] ; then
doman "${WORKDIR}"/${P}-docs/man/**/*.[0-8]
HTML_DOCS="${WORKDIR}"/${P}-docs/html/*
- else
- HTML_DOCS="${S}"/doc/*.html
- doman "${S}"/doc/*.[0-8]
fi
-
einstalldocs
- emake DESTDIR="${ED}" prefix="/usr" exec_prefix="/usr" datarootdir="/usr/share" install
-
- exeinto /etc/X11/Sessions
- newexe - ${PN} <<-EOF
- #!/bin/sh
- ${PN}
- EOF
-
- python_scriptinto "/usr/bin"
- python_doscript "${ED}/usr/bin/FvwmCommand" "${ED}/usr/bin/fvwm-menu-desktop"
-
- make_session_desktop fvwm3 /usr/bin/fvwm3
+ meson_src_install
+ if ! use go; then
+ python_scriptinto "/usr/bin"
+ python_doscript "${ED}/usr/bin/FvwmCommand" "${ED}/usr/bin/fvwm-menu-desktop"
+ fi
}
pkg_postinst() {
@@ -200,4 +178,8 @@ pkg_postinst() {
ewarn "If you need FvwmPrompt or FvwmCommand, install ${PN} with USE=\"go\"."
ewarn "In that case, FvwmPrompt will replace FvwmConsole and provide the same functionality in a more flexible way."
fi
+
+ optfeature_header "Useful optional features:"
+ optfeature "Screen locking" x11-misc/xlockmore
+ optfeature "NetPBM support (used by FvwmScript-ScreenDump)" media-libs/netpbm
}
diff --git a/x11-wm/fvwm3/fvwm3-9999.ebuild b/x11-wm/fvwm3/fvwm3-9999.ebuild
index b1eb858ae80b..20ea4b1d2fd7 100644
--- a/x11-wm/fvwm3/fvwm3-9999.ebuild
+++ b/x11-wm/fvwm3/fvwm3-9999.ebuild
@@ -10,7 +10,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
GO_OPTIONAL=1
-inherit flag-o-matic go-module meson python-single-r1
+inherit flag-o-matic go-module meson optfeature python-single-r1
DESCRIPTION="A multiple large virtual desktop window manager derived from fvwm"
HOMEPAGE="https://www.fvwm.org/"
@@ -31,8 +31,10 @@ fi
LICENSE="GPL-2+ FVWM
go? ( Apache-2.0 BSD MIT )"
SLOT="0"
-IUSE="bidi +go netpbm nls perl readline svg"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+IUSE="bidi +go nls readline svg"
+# Strictly speaking readline is not required for go,
+# but as most systems already have it installed we don't users to stub their toe on REQUIRED_USE
+REQUIRED_USE="${PYTHON_REQUIRED_USE} !go? ( readline )"
DOCS=( NEWS )
@@ -50,54 +52,54 @@ fi
BDEPEND="
virtual/pkgconfig
app-arch/unzip
- go? ( >=dev-lang/go-1.14 )
+ go? ( >=dev-lang/go-1.20 )
"
-if [[ ${FVWM3_DOCS_PREBUILT} == 0 ]]; then
+if [[ ${FVWM3_DOCS_PREBUILT} -ne 1 ]]; then
BDEPEND+="
dev-libs/libxslt
dev-ruby/asciidoctor
"
fi
-RDEPEND="${PYTHON_DEPS}
- ${COMMON_DEPEND}
- !x11-wm/fvwm
+COMMON_DEPEND="
dev-lang/perl
dev-libs/glib:2
dev-libs/libevent:=
media-libs/fontconfig
media-libs/libpng:=
- sys-libs/zlib
+ x11-base/xorg-proto
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
- x11-libs/libXau
x11-libs/libxcb
x11-libs/libXcursor
- x11-libs/libXdmcp
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXft
+ x11-libs/libxkbcommon
x11-libs/libXpm
x11-libs/libXrandr
x11-libs/libXrender
- x11-misc/xlockmore
- dev-lang/tk
- dev-perl/Tk
- >=dev-perl/X11-Protocol-0.56
+ x11-libs/xtrans
+ x11-libs/libXfixes
bidi? ( dev-libs/fribidi )
readline? (
- sys-libs/ncurses:=
sys-libs/readline:=
)
svg? (
gnome-base/librsvg:2
x11-libs/cairo
- )"
+ )
+"
-DEPEND="${COMMON_DEPEND}
- x11-base/xorg-proto"
+RDEPEND="
+ ${COMMON_DEPEND}
+ ${PYTHON_DEPS}
+ !x11-wm/fvwm
+"
+
+DEPEND="${COMMON_DEPEND}"
src_configure() {
# Recommended by upstream for release. Doesn't really matter for live ebuilds.
@@ -112,6 +114,7 @@ src_configure() {
"-Dpng=enabled"
"-Dsm=enabled"
"-Dxcursor=enabled"
+ "-Dxfixes=enabled"
"-Dxpm=enabled"
"-Dxrender=enabled"
$(meson_feature bidi)
@@ -126,7 +129,7 @@ src_configure() {
"-Ddocdir=${EPREFIX}/usr/share/doc/${PF}"
)
- if [[ ${FVWM3_DOCS_PREBUILT} == 0 ]]; then
+ if [[ ${FVWM3_DOCS_PREBUILT} -ne 1 ]]; then
emesonargs+=(
"-Dhtmldoc=true"
"-Dmandoc=true"
@@ -171,4 +174,8 @@ pkg_postinst() {
ewarn "If you need FvwmPrompt or FvwmCommand, install ${PN} with USE=\"go\"."
ewarn "In that case, FvwmPrompt will replace FvwmConsole and provide the same functionality in a more flexible way."
fi
+
+ optfeature_header "Useful optional features:"
+ optfeature "Screen locking" x11-misc/xlockmore
+ optfeature "NetPBM support (used by FvwmScript-ScreenDump)" media-libs/netpbm
}
diff --git a/x11-wm/fvwm3/metadata.xml b/x11-wm/fvwm3/metadata.xml
index 278a0067ac68..13311dfc28e1 100644
--- a/x11-wm/fvwm3/metadata.xml
+++ b/x11-wm/fvwm3/metadata.xml
@@ -11,9 +11,6 @@
</maintainer>
<use>
<flag name="go">Enable building <pkg>dev-lang/go</pkg> code (FvwmPrompt)</flag>
- <flag name="lock">Enable screen locking</flag>
- <flag name="netpbm">Enable NetPBM support (used by FvwmScript-ScreenDump)</flag>
- <flag name="stroke">Mouse Gesture support</flag>
</use>
<upstream>
<remote-id type="github">fvwmorg/fvwm3</remote-id>