commit:     a6947312b65b1f615a0701eab7a7b07632ddb9e5
Author:     NRK <nrk <AT> disroot <DOT> org>
AuthorDate: Sat Mar  8 20:31:05 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Mar 11 09:10:40 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a6947312

www-client/w3m: switch to rkta fork

the current upstream has been inactive for a long time.
switch to rkta's fork, specifically the oldstable branch which
"contains a very conservative set of bug fixes [potential CVE
fixes] to the last release of tats/w3m."

alpine, freebsd and openbsd has also switched to rkta's fork.
it's likely that other distros will do the same given that w3m
has a bunch of CVEs accumulated (some of which are potentially
fixed in the fork).

in the future we should consider switching over to master branch
instead of oldstable. oldstable is a more lower hanging fruit so
going with that for now.

Ref: https://github.com/tats/w3m/issues/304
Signed-off-by: NRK <nrk <AT> disroot.org>
Closes: https://github.com/gentoo/gentoo/pull/40968
Signed-off-by: Sam James <sam <AT> gentoo.org>

 www-client/w3m/Manifest                   |   1 +
 www-client/w3m/metadata.xml               |   4 -
 www-client/w3m/w3m-0.5.3_p20240916.ebuild | 136 ++++++++++++++++++++++++++++++
 3 files changed, 137 insertions(+), 4 deletions(-)

diff --git a/www-client/w3m/Manifest b/www-client/w3m/Manifest
index 1946192e9c98..52a313d01658 100644
--- a/www-client/w3m/Manifest
+++ b/www-client/w3m/Manifest
@@ -1 +1,2 @@
 DIST w3m-0.5.3+git20230121.tar.gz 2322709 BLAKE2B 
d4ebed126e7b4205c1282ec0dd7c7db34fb69768084142a0df9c4d051ac74642d5c62b4cff2be368a1db391c93ff6394842a52cfe68d1cdfcd9fb9c1a5c386e5
 SHA512 
f220aabf69cf11ca7560c1519a971bdb1cc0baa443b1b46cd8fca2a4defb614653dd9ba637afbf9315f3b63a349f972436348c2f93d06665573057e4232eab1c
+DIST w3m-0.5.3_p20240916.tar.gz 2322816 BLAKE2B 
13c85c4f99eaeb7acd755603e9ce07637fe9869188a775110aa9f8edf910c471da2f1c91e7e25b4f7a2faf6fc5ccf69f2aa72ef27b0959350c0f96fe03968f59
 SHA512 
976d11f6f2fb9bdc93693d51a2566b2017acbd4afa1f20d86aa838af1ef2c5a3630b88154220248bae5e5c096d5c4356cdd23dea30860773149787e8006c1e6d

diff --git a/www-client/w3m/metadata.xml b/www-client/w3m/metadata.xml
index 5472d90dcdaa..54f8f23c6f20 100644
--- a/www-client/w3m/metadata.xml
+++ b/www-client/w3m/metadata.xml
@@ -13,8 +13,4 @@
                <flag name="gdk-pixbuf">Enable support for 
<pkg>x11-libs/gdk-pixbuf</pkg></flag>
                <flag name="lynxkeymap">If you prefer Lynx-like key 
binding</flag>
        </use>
-       <upstream>
-               <remote-id type="sourceforge">w3m</remote-id>
-               <remote-id type="github">tats/w3m</remote-id>
-       </upstream>
 </pkgmetadata>

diff --git a/www-client/w3m/w3m-0.5.3_p20240916.ebuild 
b/www-client/w3m/w3m-0.5.3_p20240916.ebuild
new file mode 100644
index 000000000000..6396a086ec03
--- /dev/null
+++ b/www-client/w3m/w3m-0.5.3_p20240916.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools prefix toolchain-funcs flag-o-matic
+
+DESCRIPTION="Text based WWW browser, supports tables and frames"
+HOMEPAGE="https://git.sr.ht/~rkta/w3m";
+# based on oldstable branch
+COMMIT="b951c6ab75efd87810736b37ec053192c38cb80c"
+SRC_URI="https://git.sr.ht/~rkta/w3m/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/w3m-${COMMIT}"
+
+LICENSE="w3m"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 
~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="fbcon gdk-pixbuf gpm imlib l10n_ja lynxkeymap nls nntp ssl unicode X 
xface"
+
+REQUIRED_USE="
+       fbcon? ( ?? ( gdk-pixbuf imlib ) )
+       X? ( ?? ( gdk-pixbuf imlib ) )
+"
+
+RDEPEND="
+       dev-libs/boehm-gc:=
+       sys-libs/ncurses:0=
+       sys-libs/zlib
+       gdk-pixbuf? (
+               x11-libs/gdk-pixbuf
+               X? ( x11-libs/gdk-pixbuf-xlib )
+       )
+       !gdk-pixbuf? (
+               imlib? ( media-libs/imlib2[X?] )
+       )
+       gpm? ( sys-libs/gpm )
+       ssl? ( dev-libs/openssl:0= )
+       X? (
+               x11-base/xorg-proto
+               x11-libs/libXdmcp
+               x11-libs/libXext
+       )
+       xface? ( media-libs/compface )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       sys-devel/gettext
+       virtual/pkgconfig
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-0.5.3_p20210102-restore-gettext-macro.patch
+       "${FILESDIR}"/${PN}-0.5.3_p20210102-fix-configure-gettext.patch
+)
+
+src_prepare() {
+       default
+
+       sed -i "/^AR=/s:ar:$(tc-getAR):" {.,${PN}img,libwc}/Makefile.in || die
+       hprefixify acinclude.m4
+
+       AT_NOEAUTOHEADER="yes" AT_M4DIR="m4" eautoreconf
+}
+
+src_configure() {
+       local myconf=()
+       local image imagelib
+
+       # Bug: https://bugs.gentoo.org/943868
+       append-cflags -std=gnu17
+
+       if use gdk-pixbuf ; then
+               imagelib="gtk3"
+       elif use imlib ; then
+               imagelib="imlib2"
+       fi
+       if [[ -n "${imagelib}" ]] ; then
+               use X     && image="${image}${image:+,}x11"
+               use fbcon && image="${image}${image:+,}fb"
+       fi
+       # emacs-w3m doesn't like "--enable-m17n --disable-unicode,"
+       # so we better enable or disable both. Default to enable
+       # m17n and unicode, see bug #47046.
+       if use l10n_ja ; then
+               myconf+=( --enable-japanese=$(usex unicode U E) )
+       else
+               myconf+=( --with-charset=$(usex unicode UTF-8 US-ASCII) )
+       fi
+       # lynxkeymap IUSE flag. bug #49397
+       myconf+=( --enable-keymap=$(usex lynxkeymap lynx ${PN}) )
+
+       econf \
+               $(use_enable gpm mouse) \
+               $(use_enable nls) \
+               $(use_enable nntp) \
+               $(use_enable ssl digest-auth) \
+               $(use_enable xface) \
+               $(use_with ssl) \
+               --enable-image=${image:-no} \
+               --enable-m17n \
+               --enable-unicode \
+               --with-browser="${EPREFIX}/usr/bin/xdg-open" \
+               --with-editor="${EPREFIX}/usr/bin/vi" \
+               --with-imagelib="${imagelib:-no}" \
+               --with-mailer="${EPREFIX}/bin/mail" \
+               --without-migemo \
+               --with-termlib=yes \
+               "${myconf[@]}"
+}
+
+src_install() {
+       default
+
+       insinto /etc/${PN}
+       newins "${FILESDIR}"/${PN}.mailcap mailcap
+
+       insinto /usr/share/${PN}/Bonus
+       doins Bonus/{*.{cgi,rb},html*,makeref}
+
+       docinto en
+       dodoc doc/{HISTORY,README,keymap,menu}*
+       newdoc Bonus/README.eng README.Bonus
+       docinto html/en
+       dodoc doc/*.html
+
+       docinto de
+       dodoc doc-de/README*
+       docinto html/de
+       dodoc doc-de/*.html
+
+       docinto ja
+       dodoc doc-jp/{HISTORY,README,keymap,menu}*
+       newdoc Bonus/README README.Bonus
+       docinto html/ja
+       dodoc doc-jp/*.html
+}

Reply via email to