]> git.draconx.ca Git - gentoo-fixes.git/commitdiff
app-emulation/wine-vanilla-4.0.4: Adapt mpg123 dependency. master
authorNick Bowler <nbowler@draconx.ca>
Sat, 17 Feb 2024 19:18:10 +0000 (14:18 -0500)
committerNick Bowler <nbowler@draconx.ca>
Sat, 17 Feb 2024 19:20:26 +0000 (14:20 -0500)
Gentoo has split this into multiple packages.  We should only need
the decoder libraries, I think, in media-sound/mpg123-base.

53 files changed:
app-emulation/wine-vanilla/Manifest [new file with mode: 0644]
app-emulation/wine-vanilla/files/4.0.4-configure-fixes.patch [new file with mode: 0644]
app-emulation/wine-vanilla/wine-vanilla-4.0.4-r2.ebuild [new file with mode: 0644]
dev-python/pycairo/Manifest
dev-python/pycairo/pycairo-1.18.2-r6.ebuild [moved from dev-python/pycairo/pycairo-1.18.2-r3.ebuild with 68% similarity]
dev-python/pygobject/Manifest
dev-python/pygobject/pygobject-2.28.6-r59.ebuild [moved from dev-python/pygobject/pygobject-2.28.6-r57.ebuild with 55% similarity]
dev-python/pygtk/Manifest
dev-python/pygtk/pygtk-2.24.0-r8.ebuild [moved from dev-python/pygtk/pygtk-2.24.0-r6.ebuild with 72% similarity]
dev-python/python-musicbrainz-ngs/Manifest [deleted file]
dev-python/python-musicbrainz-ngs/files/python-musicbrainz-ngs-0.6-fix-test-submit.patch [deleted file]
dev-python/python-musicbrainz-ngs/python-musicbrainz-ngs-0.6.ebuild [deleted file]
eclass/mozconfig-v6.52.eclass [new file with mode: 0644]
eclass/mozcoreconf-v5.eclass [new file with mode: 0644]
media-fonts/urw-fonts/Manifest [new file with mode: 0644]
media-fonts/urw-fonts/urw-fonts-2.4.9.ebuild [new file with mode: 0644]
media-plugins/gimp-resynthesizer/Manifest [deleted file]
media-plugins/gimp-resynthesizer/gimp-resynthesizer-2.0.3-r5.ebuild [deleted file]
media-plugins/gimp-resynthesizer/metadata.xml [deleted file]
media-sound/apulse/Manifest [new file with mode: 0644]
media-sound/apulse/apulse-0.1.13-r2.ebuild [new file with mode: 0644]
media-sound/apulse/files/apulse [new file with mode: 0755]
media-sound/apulse/files/check-key-before-remove.patch [new file with mode: 0644]
media-sound/apulse/files/man.patch [new file with mode: 0644]
media-sound/apulse/files/sdk.patch [new file with mode: 0644]
media-sound/picard/Manifest [deleted file]
media-sound/picard/picard-2.4.2.ebuild [deleted file]
net-nntp/pan/Manifest [new file with mode: 0644]
net-nntp/pan/pan-0.149.ebuild [new file with mode: 0644]
sys-apps/man/Manifest
sys-apps/man/man-1.6g-r3.ebuild [moved from sys-apps/man/man-1.6g-r2.ebuild with 89% similarity]
virtual/man/Manifest
virtual/man/man-0-r4.ebuild [new file with mode: 0644]
www-client/firefox/Manifest [new file with mode: 0644]
www-client/firefox/files/firefox-52.9.0-blessings-TERM.patch [new file with mode: 0644]
www-client/firefox/files/firefox-52.9.0-fix-idb-name-conflict.patch [new file with mode: 0644]
www-client/firefox/files/firefox-52.9.0-fix-missing-includes.patch [new file with mode: 0644]
www-client/firefox/files/firefox-52.9.0-fix-thebes-templates.patch [new file with mode: 0644]
www-client/firefox/files/firefox-52.9.0-glibc-2.30.patch [new file with mode: 0644]
www-client/firefox/files/firefox-52.9.0-glibc-2.36.patch [new file with mode: 0644]
www-client/firefox/files/firefox-52.9.0-less-werror.patch [new file with mode: 0644]
www-client/firefox/files/gentoo-default-prefs.js-1 [new file with mode: 0644]
www-client/firefox/files/gentoo-hwaccel-prefs.js-1 [new file with mode: 0644]
www-client/firefox/files/icon/firefox.desktop [new file with mode: 0644]
www-client/firefox/firefox-52.9.0-r3.ebuild [new file with mode: 0644]
x11-base/xorg-x11/Manifest
x11-base/xorg-x11/xorg-x11-7.4-r5.ebuild [moved from x11-base/xorg-x11/xorg-x11-7.4-r3.ebuild with 88% similarity]
x11-wm/fvwm/Manifest
x11-wm/fvwm/files/fvwm-2.5.27-translucent-menus.diff
x11-wm/fvwm/files/fvwm-2.6.5-ar.patch
x11-wm/fvwm/files/fvwm-2.6.5-mouse-buttons.patch
x11-wm/fvwm/files/fvwm-2.6.8-perl528.patch
x11-wm/fvwm/fvwm-2.6.9.ebuild

diff --git a/app-emulation/wine-vanilla/Manifest b/app-emulation/wine-vanilla/Manifest
new file mode 100644 (file)
index 0000000..9407c5a
--- /dev/null
@@ -0,0 +1,4 @@
+AUX 4.0.4-configure-fixes.patch 523 BLAKE2B 8cb555cdf763b734dcf27c6f6892867f597de5481ce69f975df17844518842b9f8f6f0190f8b3690eb4b7f5978f6daa508525eebb07d8349e84f314969c16d90 SHA512 5d67d43d7bcfe6497826ac1f8e2d8f1ac63bc724c31a44caa6cb91d9f5a1004be5a56d0d6f03891c9acb2530fb7f14503f7cc950ff650ebdad31868ee6b1c7b6
+DIST gentoo-wine-patches-20180120.tar.xz 58672 BLAKE2B 84d621075b65475cec41a06429680b518d7eafb938cefd903f3f8aa71ea3049ac9d8de05af48f9f4f4a1b9172c7ef17784540413e410eb8ec11e8ec4a63858c6 SHA512 5b354a409c7a2b77499aaa593b9248a1d15d755e3687b095755faacc30068bfcdbdd5c2a2a78617cb1a78c46d2931162bd69ec3379b035d81494bea7108263c2
+DIST wine-4.0.4.tar.xz 21686868 BLAKE2B 3ba9afef38a33e53eb1979aa4e7bbb120370692a8480e7bc15fc6959fb326c0c1f2151bb96355220e534858c0be56e1c35813e5e31b8a85db89c701466edac21 SHA512 21780b3c846bfa7a54572fe78939d7a2579a2b96654fc578e8e70d20b50262b4bfb43a0431f4089264cf8f83202c2fc67dd6a4c89257e951b64e7c91ee3bdf4e
+EBUILD wine-vanilla-4.0.4-r2.ebuild 17945 BLAKE2B 14856ae26a71d12128d1f23840c9f995bed33846cd3662aad0a9d114996c38544e4a9c341f39202217238ad2f62fbfb0dfb50f043c8aa8c66961184c069dc4d7 SHA512 f81c26ed094f18385f1aefc1ff63315edf0a946f7ee7eb63f18023a04658640c4f2ed64f3056ffcdfc55bec289562d5ffbde638a56680b9261cbdc5f4e6a32a4
diff --git a/app-emulation/wine-vanilla/files/4.0.4-configure-fixes.patch b/app-emulation/wine-vanilla/files/4.0.4-configure-fixes.patch
new file mode 100644 (file)
index 0000000..8c8a931
--- /dev/null
@@ -0,0 +1,13 @@
+diff --git a/aclocal.m4 b/aclocal.m4
+index 25ac678..1d41d6a 100644
+--- a/aclocal.m4
++++ b/aclocal.m4
+@@ -28,7 +28,7 @@ dnl Like AC_CHECK_TOOL but without the broken fallback to non-prefixed name
+ dnl
+ AC_DEFUN([WINE_CHECK_HOST_TOOL],
+ [AS_VAR_SET_IF([ac_tool_prefix],
+-  AC_CHECK_PROG([$1],[${ac_tool_prefix}$2],[${ac_tool_prefix}$2],,[$4]))
++  [AC_CHECK_PROG([$1],[${ac_tool_prefix}$2],[${ac_tool_prefix}$2],,[$4])])
+ AS_VAR_IF([ac_cv_prog_$1],[],
+   [AS_VAR_IF([cross_compiling],[yes],[],
+     [AS_UNSET([ac_cv_prog_$1])
diff --git a/app-emulation/wine-vanilla/wine-vanilla-4.0.4-r2.ebuild b/app-emulation/wine-vanilla/wine-vanilla-4.0.4-r2.ebuild
new file mode 100644 (file)
index 0000000..6b227bd
--- /dev/null
@@ -0,0 +1,551 @@
+# This ebuild is a modified version of the work originally distributed with
+# Gentoo GNU/Linux, covered by the following copyright and permission notice:
+#
+#   Copyright 1999-2021 Gentoo Authors
+#   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications are:
+#
+#   * Apply patch to build successfully with Autoconf 2.71 (2021-11)
+#   * Build with -fcommon to get compatible behaviour from GCC 10 (2022-04)
+#   * Port to EAPI 8 for compatibility with current eclasses (2022-12)
+#   * Update media-sound/mpg123 -> media-sound/mpg123-base (2024-02)
+
+EAPI=8
+
+PLOCALES="ar bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru si sk sl sr_RS@cyrillic sr_RS@latin sv ta te th tr uk wa zh_CN zh_TW"
+PLOCALE_BACKUP="en"
+
+inherit autotools estack flag-o-matic multilib multilib-minimal pax-utils plocale toolchain-funcs virtualx wrapper xdg-utils
+
+MY_PN="${PN%%-*}"
+MY_P="${MY_PN}-${PV}"
+
+if [[ ${PV} == "9999" ]] ; then
+       EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
+       EGIT_BRANCH="master"
+       inherit git-r3
+       SRC_URI=""
+       #KEYWORDS=""
+else
+       MAJOR_V=$(ver_cut 1)
+       MINOR_V=$(ver_cut 2)
+       SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.${MINOR_V}/${MY_P}.tar.xz"
+       KEYWORDS="-* ~amd64 ~x86"
+fi
+S="${WORKDIR}/${MY_P}"
+
+GWP_V="20180120"
+PATCHDIR="${WORKDIR}/gentoo-wine-patches"
+
+DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"
+HOMEPAGE="https://www.winehq.org/"
+SRC_URI="${SRC_URI}
+       https://dev.gentoo.org/~np-hardass/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
+"
+
+LICENSE="LGPL-2.1"
+SLOT="${PV}"
+IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +fontconfig +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks v4l vkd3d vulkan +X +xcomposite xinerama +xml"
+REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
+       X? ( truetype )
+       elibc_glibc? ( threads )
+       osmesa? ( opengl )
+       test? ( abi_x86_32 )
+       vkd3d? ( vulkan )" # osmesa-opengl #286560 # X-truetype #551124
+
+# FIXME: the test suite is unsuitable for us; many tests require net access
+# or fail due to Xvfb's opengl limitations.
+RESTRICT="test"
+
+BDEPEND="virtual/pkgconfig
+       sys-devel/bison
+       sys-devel/flex"
+
+COMMON_DEPEND="
+       X? (
+               x11-libs/libXcursor[${MULTILIB_USEDEP}]
+               x11-libs/libXext[${MULTILIB_USEDEP}]
+               x11-libs/libXfixes[${MULTILIB_USEDEP}]
+               x11-libs/libXrandr[${MULTILIB_USEDEP}]
+               x11-libs/libXi[${MULTILIB_USEDEP}]
+               x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
+       )
+       alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
+       capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
+       cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
+       fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
+       gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
+       gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
+       gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
+       gstreamer? (
+               media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
+               media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
+       )
+       jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
+       kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
+       lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
+       ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
+       mp3? (
+               || (
+                       >=media-sound/mpg123-base-1.5.0[${MULTILIB_USEDEP}]
+                       >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}]
+               )
+       )
+       ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
+       netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
+       nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
+       odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
+       openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
+       opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
+       opengl? (
+               virtual/glu[${MULTILIB_USEDEP}]
+               virtual/opengl[${MULTILIB_USEDEP}]
+       )
+       osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
+       pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
+       png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
+       pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
+       scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
+       sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
+       ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
+       truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
+       udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
+       udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+       v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
+       vkd3d? ( app-emulation/vkd3d[${MULTILIB_USEDEP}] )
+       vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
+       xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
+       xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
+       xml? (
+               dev-libs/libxml2[${MULTILIB_USEDEP}]
+               dev-libs/libxslt[${MULTILIB_USEDEP}]
+       )"
+
+RDEPEND="${COMMON_DEPEND}
+       app-emulation/wine-desktop-common
+       >app-eselect/eselect-wine-0.3
+       !app-emulation/wine:0
+       dos? ( >=games-emulation/dosbox-0.74_p20160629 )
+       gecko? ( app-emulation/wine-gecko:2.47[abi_x86_32?,abi_x86_64?] )
+       mono? ( app-emulation/wine-mono:4.7.5 )
+       perl? (
+               dev-lang/perl
+               dev-perl/XML-Simple
+       )
+       pulseaudio? (
+               realtime? ( sys-auth/rtkit )
+       )
+       samba? ( >=net-fs/samba-3.0.25[winbind] )
+       selinux? ( sec-policy/selinux-wine )
+       udisks? ( sys-fs/udisks:2 )"
+
+# tools/make_requests requires perl
+DEPEND="${COMMON_DEPEND}
+       >=sys-kernel/linux-headers-2.6
+       X? ( x11-base/xorg-proto )
+       prelink? ( sys-devel/prelink )
+       xinerama? ( x11-base/xorg-proto )"
+
+# These use a non-standard "Wine" category, which is provided by
+# /etc/xdg/applications-merged/wine.menu
+QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
+usr/share/applications/wine-notepad.desktop
+usr/share/applications/wine-uninstaller.desktop
+usr/share/applications/wine-winecfg.desktop"
+
+PATCHES=(
+       "$FILESDIR/$PV-configure-fixes.patch"
+       "${PATCHDIR}/patches/${MY_PN}-1.5.26-winegcc.patch" #260726
+       "${PATCHDIR}/patches/${MY_PN}-1.9.5-multilib-portage.patch" #395615
+       "${PATCHDIR}/patches/${MY_PN}-1.6-memset-O3.patch" #480508
+       "${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
+)
+PATCHES_BIN=()
+
+# https://bugs.gentoo.org/show_bug.cgi?id=635222
+if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${PV} == 9999 ]]; then
+       DEPEND+=" dev-util/patchbin"
+fi
+
+wine_compiler_check() {
+       [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+       # GCC-specific bugs
+       if tc-is-gcc; then
+               # bug #549768
+               if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
+                       ebegin "Checking for gcc-5 ms_abi compiler bug"
+                       $(tc-getCC) -O2 "${PATCHDIR}/files/pr66838.c" -o "${T}"/pr66838 || die
+                       # Run in subshell to prevent "Aborted" message
+                       ( "${T}"/pr66838 || false ) >/dev/null 2>&1
+                       if ! eend $?; then
+                               eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
+                               eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
+                               eerror "or use gcc-config to select a different compiler version."
+                               eerror "See https://bugs.gentoo.org/549768"
+                               eerror
+                               return 1
+                       fi
+               fi
+               # bug #574044
+               if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
+                       ebegin "Checking for gcc-5-3 stack realignment compiler bug"
+                       # Compile in subshell to prevent "Aborted" message
+                       ( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${PATCHDIR}/files/pr69140.c" -o "${T}"/pr69140 ) >/dev/null 2>&1
+                       if ! eend $?; then
+                               eerror "Wine cannot be built with this version of gcc-5.3"
+                               eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
+                               eerror "or use gcc-config to select a different compiler version."
+                               eerror "See https://bugs.gentoo.org/574044"
+                               eerror
+                               return 1
+                       fi
+               fi
+       fi
+
+       # Ensure compiler support
+       if use abi_x86_64; then
+               ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
+               # Compile in subshell to prevent "Aborted" message
+               ( $(tc-getCC) -O2 "${PATCHDIR}/files/builtin_ms_va_list.c" -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
+               if ! eend $?; then
+                       eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
+                       eerror
+                       eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
+                       eerror
+                       return 1
+               fi
+       fi
+}
+
+wine_build_environment_check() {
+       [[ ${MERGE_TYPE} = "binary" ]] && return 0
+
+       if use abi_x86_64; then
+               if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
+                       eerror "You need gcc-4.4+ to compile 64-bit wine"
+                       die
+               elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
+                       eerror "You need clang-3.8+ to compile 64-bit wine"
+                       die
+               fi
+       fi
+       if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
+               ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
+               ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
+               ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
+       fi
+       if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
+               if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
+                       ewarn "Compilation can hang with CFLAGS=\"-march=i686\".  You can temporarily work"
+                       ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
+                       ewarn "See package.env in man 5 portage for more information on how to do this."
+                       ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
+               fi
+       fi
+
+       if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
+               eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
+               eerror "See https://bugs.gentoo.org/487864 for more details."
+               eerror
+               return 1
+       fi
+}
+
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "EGIT_OVERRIDE_COMMIT_WINE"
+               eerror
+               return 1
+       fi
+}
+
+pkg_pretend() {
+       wine_build_environment_check || die
+
+       # Verify OSS support
+       if use oss && ! use kernel_FreeBSD; then
+               if ! has_version ">=media-sound/oss-4"; then
+                       eerror "You cannot build wine with USE=oss without having support from a"
+                       eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
+                       eerror
+                       die
+               fi
+       fi
+}
+
+pkg_setup() {
+       wine_build_environment_check || die
+       wine_env_vcs_vars || die
+
+       WINE_VARIANT="${PN#wine}-${PV}"
+       WINE_VARIANT="${WINE_VARIANT#-}"
+
+       MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
+       MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
+       MY_DATADIR="${MY_DATAROOTDIR}"
+       MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
+       MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
+       MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
+       MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
+       MY_MANDIR="${MY_DATADIR}/man"
+}
+
+src_unpack() {
+       if [[ ${PV} == "9999" ]] ; then
+               EGIT_CHECKOUT_DIR="${S}" git-r3_src_unpack
+       fi
+
+       default
+
+       plocale_find_changes "${S}/po" "" ".po"
+}
+
+src_prepare() {
+
+       eapply_bin(){
+               local patch
+               for patch in ${PATCHES_BIN[@]}; do
+                       patchbin --nogit < "${patch}" || die
+               done
+       }
+
+       local md5="$(md5sum server/protocol.def)"
+
+       default
+       eapply_bin
+       eautoreconf
+
+       # Modification of the server protocol requires regenerating the server requests
+       if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
+               einfo "server/protocol.def was patched; running tools/make_requests"
+               tools/make_requests || die #432348
+       fi
+       sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
+       if ! use run-exes; then
+               sed -i '/^MimeType/d' loader/wine.desktop || die #117785
+       fi
+
+       # Edit wine.desktop to work for specific variant
+       sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
+
+       # hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
+       cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
+
+       plocale_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
+
+       # Fix manpage generation for locales #469418 and abi_x86_64 #617864
+
+       # Duplicate manpages input files for wine64
+       local f
+       for f in loader/*.man.in; do
+               cp ${f} ${f/wine/wine64} || die
+       done
+       # Add wine64 manpages to Makefile
+       if use abi_x86_64; then
+               sed -i "/wine.man.in/i \
+                       \\\twine64.man.in \\\\" loader/Makefile.in || die
+               sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
+\164\2/' loader/Makefile.in || die
+       fi
+
+       rm_man_file(){
+               local file="${1}"
+               loc=${2}
+               sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
+       }
+
+       while read f; do
+               plocale_for_each_disabled_locale rm_man_file "${f}"
+       done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
+}
+
+src_configure() {
+       wine_compiler_check || die
+
+       export LDCONFIG=/bin/true
+       use custom-cflags || strip-flags
+       append-flags -fcommon
+
+       multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+       local myconf=(
+               --prefix="${MY_PREFIX}"
+               --datarootdir="${MY_DATAROOTDIR}"
+               --datadir="${MY_DATADIR}"
+               --docdir="${MY_DOCDIR}"
+               --includedir="${MY_INCLUDEDIR}"
+               --libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
+               --libexecdir="${MY_LIBEXECDIR}"
+               --localstatedir="${MY_LOCALSTATEDIR}"
+               --mandir="${MY_MANDIR}"
+               --sysconfdir=/etc/wine
+               $(use_with alsa)
+               $(use_with capi)
+               $(use_with lcms cms)
+               $(use_with cups)
+               $(use_with ncurses curses)
+               $(use_with udisks dbus)
+               $(use_with fontconfig)
+               $(use_with ssl gnutls)
+               $(use_enable gecko mshtml)
+               $(use_with gphoto2 gphoto)
+               $(use_with gsm)
+               $(use_with gssapi)
+               $(use_with gstreamer)
+               --without-hal
+               $(use_with jpeg)
+               $(use_with kerberos krb5)
+               $(use_with ldap)
+               $(use_enable mono mscoree)
+               $(use_with mp3 mpg123)
+               $(use_with netapi)
+               $(use_with nls gettext)
+               $(use_with openal)
+               $(use_with opencl)
+               $(use_with opengl)
+               $(use_with osmesa)
+               $(use_with oss)
+               $(use_with pcap)
+               $(use_with png)
+               $(use_with pulseaudio pulse)
+               $(use_with threads pthread)
+               $(use_with scanner sane)
+               $(use_with sdl)
+               $(use_enable test tests)
+               $(use_with truetype freetype)
+               $(use_with udev)
+               $(use_with v4l)
+               $(use_with vkd3d)
+               $(use_with vulkan)
+               $(use_with X x)
+               $(use_with X xfixes)
+               $(use_with xcomposite)
+               $(use_with xinerama)
+               $(use_with xml)
+               $(use_with xml xslt)
+       )
+
+       local PKG_CONFIG AR RANLIB
+       # Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
+       # set AR and RANLIB to make QA scripts happy; #483342
+       tc-export PKG_CONFIG AR RANLIB
+
+       if use amd64; then
+               if [[ ${ABI} == amd64 ]]; then
+                       myconf+=( --enable-win64 )
+               else
+                       myconf+=( --disable-win64 )
+               fi
+
+               # Note: using --with-wine64 results in problems with multilib.eclass
+               # CC/LD hackery. We're using separate tools instead.
+       fi
+
+       ECONF_SOURCE=${S} \
+       econf "${myconf[@]}"
+       emake depend
+}
+
+multilib_src_test() {
+       # FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
+       if [[ ${ABI} == x86 ]]; then
+               if [[ $(id -u) == 0 ]]; then
+                       ewarn "Skipping tests since they cannot be run under the root user."
+                       ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
+                       return
+               fi
+
+               WINEPREFIX="${T}/.wine-${ABI}" \
+               Xemake test
+       fi
+}
+
+multilib_src_install_all() {
+       local DOCS=( ANNOUNCE AUTHORS README )
+       add_locale_docs() {
+               local locale_doc="documentation/README.$1"
+               [[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
+       }
+       plocale_for_each_locale add_locale_docs
+
+       einstalldocs
+       find "${ED}" -name *.la -delete || die
+
+       if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
+               rm "${D%/}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
+                       "${D%/}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
+       fi
+
+       # Remove wineconsole if neither backend is installed #551124
+       if ! use X && ! use ncurses; then
+               rm "${D%/}${MY_PREFIX}"/bin/wineconsole* || die
+               rm "${D%/}${MY_MANDIR}"/man1/wineconsole* || die
+               rm_wineconsole() {
+                       rm "${D%/}${MY_PREFIX}/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
+               }
+               multilib_foreach_abi rm_wineconsole
+       fi
+
+       use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
+       use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
+
+       if use abi_x86_64 && ! use abi_x86_32; then
+               dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
+               dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
+       fi
+
+       # Failglob for binloops, shouldn't be necessary, but including to stay safe
+       eshopts_push -s failglob #615218
+       # Make wrappers for binaries for handling multiple variants
+       # Note: wrappers instead of symlinks because some are shell which use basename
+       local b
+       for b in "${D%/}${MY_PREFIX}"/bin/*; do
+               make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
+       done
+       eshopts_pop
+}
+
+pkg_postinst() {
+       eselect wine register ${P}
+       if [[ ${PN} == "wine-vanilla" ]]; then
+               eselect wine register --vanilla ${P} || die
+       fi
+
+       eselect wine update --all --if-unset || die
+
+       xdg_desktop_database_update
+
+       if ! use gecko; then
+               ewarn "Without Wine Gecko, wine prefixes will not have a default"
+               ewarn "implementation of iexplore.  Many older windows applications"
+               ewarn "rely upon the existence of an iexplore implementation, so"
+               ewarn "you will likely need to install an external one, like via winetricks"
+       fi
+       if ! use mono; then
+               ewarn "Without Wine Mono, wine prefixes will not have a default"
+               ewarn "implementation of .NET.  Many windows applications rely upon"
+               ewarn "the existence of a .NET implementation, so you will likely need"
+               ewarn "to install an external one, like via winetricks"
+       fi
+}
+
+pkg_prerm() {
+       eselect wine deregister ${P}
+       if [[ ${PN} == "wine-vanilla" ]]; then
+               eselect wine deregister --vanilla ${P} || die
+       fi
+
+       eselect wine update --all --if-unset || die
+}
+
+pkg_postrm() {
+       xdg_desktop_database_update
+}
index e9f8ccf88300c68792e33d114686cb069c1bb821..ffb988b90929bce57db3fab753da6bef3fdbc1e1 100644 (file)
@@ -1,4 +1,4 @@
 AUX pycairo-1.18.2-no-setuptools.patch 390 BLAKE2B 2e96d663534447de9aadd2a688dd6277a35ff2f9f3ea3f8a9bd060d4fffca36c565ac0ba4dff2b1fe470ac55cace671b7875a387d85fcaf307a289727f922190 SHA512 31775030b33a756a5075b793f5a4b6c3998f42b6a98f612aa991a2c8ed72263363aaf2dcf43bbd2357adb8897f372e3cd88526fe1b14f3ed645cde53386127f0
 AUX pycairo-1.19.1-py39.patch 890 BLAKE2B 8ee84005e17fd485f568213e751dd30bcb904806d4016088d0c6882958ce7edeba2517f3ab4b8139a8f923e3baec435bc9a21cf3546b60f4459c5cc9ad7a54d6 SHA512 607d6f2cf6bcaec394b755f452d3c4bc0f6edb39bea185a18258c1ee0db11a99d84c7605dbe9db83906518d41baf065b2b8d9261db3736f8a737a2a8f7dff266
 DIST pycairo-1.18.2.tar.gz 200462 BLAKE2B 1f755dc90fe3ee50aa68273a0816752312f144831ff857709e1a4695a58646ffe6be518733480ed37231c213a11d4e5aaf8dfd1cfa68104873bc7d4192435b89 SHA512 279ea80413ba55d493d51455685da09afa1f5c45e2930c3fca3e417a8afe6645a0d8131201f79482de59e5ec56cfef62eac65ed88fe88866bfcc06503dcc59e0
-EBUILD pycairo-1.18.2-r3.ebuild 1714 BLAKE2B d86b6b31c5d4d84b5342f732759ed173bdd30210db792751948573ddaca2a87af67015b8640e46912fe30f0cfd8397d7a3bb222e4ca9e49e9644bb7cf9448be1 SHA512 ca1dc55c53fe187970064c84ccdfe024c21ffba3dd76052ab00dc1c1f9e9c7145411e77ca9b6f953f3ee905244685af08405ce63486c54c42d3c2685d1853d2b
+EBUILD pycairo-1.18.2-r6.ebuild 1757 BLAKE2B 0fb036e6a75a406c2727ee8bed057c97640e115e6b959413642f07d33a3a934f5179a6a3b6b8aa41924541f81802c3b3c83eb573144b6e5d6e4998641fafec2e SHA512 ed791996e0b35df6ee743f46a5ee8d41b427858634511505030547d53e749572a57a5bfdcd5507ddbee8eff0c10acf75482d24080583f9f72db9230c2aa07d10
similarity index 68%
rename from dev-python/pycairo/pycairo-1.18.2-r3.ebuild
rename to dev-python/pycairo/pycairo-1.18.2-r6.ebuild
index a9338d31efc65633170473f6843a0aa34a5c1a48..b6ad641f8a07e2ceb8816e1caef2e6e13a8f285e 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright © 2020-2021 Nick Bowler
+# Copyright © 2020-2023 Nick Bowler
 #
 # License GPLv2+: GNU General Public License version 2 or any later version.
 # This is free software: you are free to change and redistribute it.
@@ -9,16 +9,15 @@
 #
 #   Copyright 1999-2020 Gentoo Authors
 #   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications are:
+#
+#   * Resurrect python2 version installable alongside newer version (2020-11)
+#   * Avoid python eclasses as there is no more python2 support (2022-12)
+#   * Fix deps against newer cairo ebuilds w/o "svg" USE flag (2023-01)
 
 EAPI=7
 
-_PYTHON_ALLOW_PY27=1
-PYTHON_COMPAT=( python2_7 )
-PYTHON_REQ_USE="threads(+)"
-DISTUTILS_USE_SETUPTOOLS=no
-
-inherit distutils-r1
-
 DESCRIPTION="Python bindings for the cairo library"
 HOMEPAGE="https://www.cairographics.org/pycairo/ https://github.com/pygobject/pycairo"
 SRC_URI="https://github.com/pygobject/${PN}/releases/download/v${PV}/${P}.tar.gz"
@@ -31,30 +30,27 @@ IUSE="examples"
 # Strong block on old pycairo w/ python2 support because the merge will
 # otherwise not work properly due to replacing a directory with a file.
 
-RDEPEND=">=x11-libs/cairo-1.13.1[svg]
+DEPEND=">=x11-libs/cairo-1.13.1[svg(+)]
        !!dev-python/pycairo:0[python_targets_python2_7]"
-DEPEND=$RDEPEND
+RDEPEND="$DEPEND
+       dev-lang/python:2.7[threads(+)]"
+BDEPEND="dev-lang/python:2.7"
 
 PATCHES=(
        "$FILESDIR/$P-no-setuptools.patch"
        "$FILESDIR/$PN-1.19.1-py39.patch"
 )
 
-distutils_enable_tests setup.py
-
-python_test() {
-       einfo "Skipping tests on Python 2 to unblock deps"
+src_compile () {
+       python2.7 setup.py build || die
 }
 
-python_install() {
-       distutils-r1_python_install \
-               install_pkgconfig --pkgconfigdir="${EPREFIX}/usr/$(get_libdir)/pkgconfig"
-}
+src_install () {
+       default
 
-python_install_all() {
        if use examples; then
                dodoc -r examples
        fi
 
-       distutils-r1_python_install_all
+       python2.7 setup.py install --skip-build --root="$D" || die
 }
index e52e9d6d6f9185ce4ce722c70811754da014ac3b..2a547a4039b502685d88b445a24855515e231d04 100644 (file)
@@ -8,4 +8,4 @@ AUX pygobject-2.28.6-python-byte-compile.patch 539 BLAKE2B b2d64ab0ad8943948c7bf
 AUX pygobject-2.28.6-set_qdata.patch 847 BLAKE2B 696aa6c48ee900db738f8a92265a625a3ab7b59afece84157bf0b9abd0aca5ae68b7ac8cc627a47a5b1a688029d592abcc38e403543a4144e055bcdac68285e4 SHA512 19025af51a8387061276ec9d6c8eb0ecadb5124bba2c4ab3755ab653df467896d19c366d80ce9313fd46e43b493b7c536f780014cf18a6ac47f4b1d2ad4bedb4
 AUX pygobject-2.28.6-tests-no-introspection.patch 1257 BLAKE2B 7ff0587b4b40a1519927f8837b5487847ad0d0aa25f57dbaa4b10eaed2eff79f52d6581ca29f1688ebdbe71db231aba56de06c3aa8b246fdd1799320d9a15cc3 SHA512 7d57cb9bbd0b16f4fb0ed9d5eca310c47daf86b89daefa41fb0cf5dd470a6f6a31d0dad31dd261332c039d39bd778f9de8de7260c5856f1b718f72b9aabc01b4
 DIST pygobject-2.28.6.tar.xz 747248 BLAKE2B 5f92794034b2d0559a623db4a7d273a7dc3f099cae87ede91b17e81acac085a9298c6b81b45b4b8540b6a75ced97e474a993437dbfcfc2133d3321d6a979b541 SHA512 37544ea2377258758169b25a2969d5ee1c9ffb9b6e63e05bc7a0471a49ac9169c51ec587d4489172c7d256f53df878a81c1992a08059aa7e43dbbb69f799545c
-EBUILD pygobject-2.28.6-r57.ebuild 3815 BLAKE2B 13bdd3340133165e52ccb240be031a7c0734ded439b0a0fa8f37dfd70c9769d9db04f240fbd2dc5921ab30a504f50862f749164e13de037bd721ebb45da3f7cd SHA512 98644b9e87663905975455384609196c1e9026a54644a748487683d9dfbf202f29ac29ea289ba38d987796e38e4496e011b6b7cdaa702fc37e9210d176bbe0a4
+EBUILD pygobject-2.28.6-r59.ebuild 2859 BLAKE2B 6de822503f961d5ee6cb8b8139b13308c13e179f51b6d811d44f65affac57d985ae3805520ec7e51abb5d375377fc40b1700f8d630fc76dd66713e20a535f0cb SHA512 9ed57cbd24cb251c0369779df82899398126f82c5c47c2ca15823e87d564d6f994eeecbb2206fad6404058e70052780732261e41c2ea36ea7f4e55626308e461
similarity index 55%
rename from dev-python/pygobject/pygobject-2.28.6-r57.ebuild
rename to dev-python/pygobject/pygobject-2.28.6-r59.ebuild
index 78e9cfeff7f3a6cdbbcfc27188352ba86b2d977c..4b2aeef4210857b848bef88d8879978409a69520 100644 (file)
@@ -1,43 +1,40 @@
-# Copyright © 2020-2021 Nick Bowler
-#
-# License GPLv2+: GNU General Public License version 2 or any later version.
-# This is free software: you are free to change and redistribute it.
-# There is NO WARRANTY, to the extent permitted by law.
-#
-# This is a modified version of the original ebuild from Gentoo GNU/Linux,
-# covered by the following copyright and permission notice:
+# This ebuild is a modified version of the work originally distributed with
+# Gentoo GNU/Linux, covered by the following copyright and permission notice:
 #
 #   Copyright 1999-2020 Gentoo Authors
 #   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications are:
+#
+#   * Resurrect python2 version installable alongside newer version (2020-11)
+#   * Avoid python eclasses as there is no more python2 support (2022-12)
+#   * Drop unused eutils inherit (2023-09)
 
 EAPI=7
 
 GNOME2_LA_PUNT=yes
 GNOME2_EAUTORECONF=yes
 
-_PYTHON_ALLOW_PY27=1
-PYTHON_COMPAT=( python2_7 )
+inherit autotools virtualx gnome2
 
-inherit autotools eutils gnome2 python-r1 virtualx
-
-DESCRIPTION="GLib's GObject library bindings for Python"
+DESCRIPTION="GLib's GObject library bindings for Python 2"
 HOMEPAGE="http://www.pygtk.org/"
 
 LICENSE="LGPL-2.1+"
 SLOT="2"
 KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
 IUSE="examples libffi test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE=$PYTHON_REQUIRED_USE
+
+# Tests seem to require network access which can't work.
+RESTRICT="test"
 
 BDEPEND="virtual/pkgconfig
        dev-util/gtk-doc-am"
 
 RDEPEND=">=dev-libs/glib-2.24.0:2
-       dev-lang/python-exec:2
        libffi? ( dev-libs/libffi:= )
        !<dev-python/pygtk-2.23
-       $PYTHON_DEPS"
+       dev-lang/python:2.7"
 
 DEPEND="$RDEPEND
        test? (
@@ -78,15 +75,6 @@ src_prepare() {
                configure.ac || die
 
        gnome2_src_prepare
-
-       python_copy_sources
-       prepare_shebangs() {
-               # Make a backup with unconverted shebangs to keep python_doscript happy
-               cp codegen/codegen.py pygobject-codegen-2.0
-               sed -e "s%#! \?/usr/bin/env python%#!${PYTHON}%" \
-                       -i codegen/*.py || die "shebang convertion failed"
-       }
-       python_foreach_impl run_in_build_dir prepare_shebangs
 }
 
 src_configure() {
@@ -98,45 +86,27 @@ src_configure() {
                --disable-introspection
                --disable-cairo
                $(use_with libffi ffi)
+               PYTHON=python2.7
        )
 
-       python_foreach_impl run_in_build_dir gnome2_src_configure "${myconf[@]}"
-}
-
-src_compile() {
-       python_foreach_impl run_in_build_dir gnome2_src_compile
+       gnome2_src_configure "${myconf[@]}"
 }
 
 # FIXME: With python multiple ABI support, tests return 1 even when they pass
 src_test() {
        unset DBUS_SESSION_BUS_ADDRESS
        export GIO_USE_VFS="local" # prevents odd issues with deleting ${T}/.gvfs
+       export XDG_CACHE_HOME="${T}/${EPYTHON}"
+
+       virtx emake -j1 check
 
-       testing() {
-               export XDG_CACHE_HOME="${T}/${EPYTHON}"
-               run_in_build_dir Xemake -j1 check
-               unset XDG_CACHE_HOME
-       }
-       python_foreach_impl testing
-       unset GIO_USE_VFS
+       unset XDG_CACHE_HOME GIO_USE_VFS
 }
 
 src_install() {
-       installing() {
-               local f prefixed_sitedir
-
-               gnome2_src_install
-
-               python_doscript pygobject-codegen-2.0
-
-               # Don't keep multiple copies of pygobject-codegen-2.0 script
-               prefixed_sitedir=$(python_get_sitedir)
-               dosym "${prefixed_sitedir#${EPREFIX}}/gtk-2.0/codegen/codegen.py" "/usr/lib/python-exec/${EPYTHON}/pygobject-codegen-2.0"
-       }
-       python_foreach_impl run_in_build_dir installing
+       gnome2_src_install
 
        if use examples; then
-               insinto /usr/share/doc/${PF}
-               doins -r examples
+               dodoc -r examples
        fi
 }
index 764e90713f213118ddcbc1fad24bdc4e29706a7a..579ebbf90d92635ded271051dd031af3d5128278 100644 (file)
@@ -6,4 +6,4 @@ AUX pygtk-2.24.0-quartz-objc.patch 1023 BLAKE2B 2fca6b1b92f424e853a6724857372f70
 AUX pygtk-2.24.0-test-fail.patch 252 BLAKE2B 9d808e50d9e64f481cd8d83e4693a60f472d4cf75b3d356c49d73056939b25d48842a1a64becbb17220ac74adb466deec0d1a42081144c7f853a5f5d1c7fddfa SHA512 22965a5ccc14ba842551ca07ca31d3a26f246354e35a7a24f66c34ace41fa1ee51a46ab404a103a8824957d5a197469ff6762eb829e236269420ba1842cb351b
 AUX pygtk-2.24.0-test_dialog.patch 961 BLAKE2B 035021b5a4a94e487f8e4fdd69b83e54d2baea1891ce1bf8378e7375749de4a45477acdfe2a07e259d907bb182c2951bb512e7ded0ffdeed138ab4fce81f81b7 SHA512 13254063895412641b51cb536892f2c4b9bb76ac1ffa92f8d82fa20b80f5c7748392a968315af3731def20392de917a0ae2b4ac0607cee9e2f38911283d33ca9
 DIST pygtk-2.24.0.tar.bz2 2361097 BLAKE2B 35b8ad94f242dcfb5d0593762eaa5480928e63bfbf8d030dd199200daa1dd6fd1769c878517cbb56e3beeaeecedb554b06b04cc35f9b2eefd2d8ec4381daf707 SHA512 64f4344fcf7636e0b2016ffd5310250b5c02a1bf87e44aef39b5d4cf4a5fc50d27cb4f030d4c6802cff61fffb88dee7752821e3d8a4cd1c34dc3745d9ff2f0da
-EBUILD pygtk-2.24.0-r6.ebuild 3127 BLAKE2B 42e8978d176855b454cdc31ecaccb58be0d0f2a29522fd8d69dc58256c2a36d2f97f95dce7d504a5dc43f1d9aca5511cb6119126cdb99a1a15afcdc5f5cd4455 SHA512 a720ff7f946c596ec64efcf29a457e8130fd5190d19ed4bd92dabef1dae397367b67ad9741646690fc6072b3d62378ba6b870b774a753dc193dd3523616c6f40
+EBUILD pygtk-2.24.0-r8.ebuild 2902 BLAKE2B 0528958d1fe1ce4235607569e8c515755848f264f5b8787af4dbdde43231884709805449b0db3799c77a7c81f2f8234cd335ac7724f6c49fe4db0c016f92ec03 SHA512 ba340123b039c74c401b18098da9a60fd8f95205dafb9ae42ed17f918b1ad8fc856dceac0aafba5454601f91e94a379ca80dcd7421d64ff677981f7a425faa7e
similarity index 72%
rename from dev-python/pygtk/pygtk-2.24.0-r6.ebuild
rename to dev-python/pygtk/pygtk-2.24.0-r8.ebuild
index a73bcd51fea2597cf953f92b22d587e09fb058e6..7bb2810ab9dd7bb251b959b8077576e362333515 100644 (file)
@@ -9,15 +9,17 @@
 #
 #   Copyright 1999-2020 Gentoo Authors
 #   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications are:
+#
+#   * Resurrect python2 version (2020-11)
+#   * Avoid python eclasses as there is no more python2 support (2022-12)
 
 EAPI=7
 
 GNOME_TARBALL_SUFFIX="bz2"
 
-_PYTHON_ALLOW_PY27=1
-PYTHON_COMPAT=( python2_7 )
-
-inherit autotools flag-o-matic gnome2 python-r1 virtualx
+inherit autotools flag-o-matic virtualx gnome2
 
 DESCRIPTION="GTK+2 bindings for Python"
 HOMEPAGE="https://gitlab.gnome.org/Archive/pygtk"
@@ -26,20 +28,20 @@ LICENSE="LGPL-2.1"
 SLOT="2"
 KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ~ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
 IUSE="doc examples test"
-REQUIRED_USE=$PYTHON_REQUIRED_USE
 
 RESTRICT="!test? ( test )"
 
-RDEPEND="${PYTHON_DEPS}
-       >=dev-libs/glib-2.8:2
+DEPEND=">=dev-libs/glib-2.8:2
        >=x11-libs/pango-1.16
        >=dev-libs/atk-1.12
        >=x11-libs/gtk+-2.24:2
-       >=dev-python/pycairo-1.0.2:2[$PYTHON_USEDEP]
-       >=dev-python/pygobject-2.26.8-r53:2[$PYTHON_USEDEP]
+       >=dev-python/pycairo-1.0.2:2[python_targets_python2_7(+)]
+       >=dev-python/pygobject-2.26.8-r53:2[python_targets_python2_7(+)]
        >=gnome-base/libglade-2.5:2.0"
-DEPEND=$RDEPEND
-BDEPEND="virtual/pkgconfig
+RDEPEND="$DEPEND
+       dev-lang/python:2.7"
+BDEPEND="dev-lang/python:2.7
+       virtual/pkgconfig
        doc? ( dev-libs/libxslt
                >=app-text/docbook-xsl-stylesheets-1.70.1 )"
 
@@ -70,27 +72,19 @@ src_prepare() {
                -i configure.ac || die #466968
 
        AT_M4DIR="m4" eautoreconf
-
-       prepare_pygtk() {
-               mkdir -p "${BUILD_DIR}" || die
-       }
-       python_foreach_impl prepare_pygtk
 }
 
 src_configure() {
        use hppa && append-flags -ffunction-sections
-       configure_pygtk() {
-               ECONF_SOURCE="${S}" gnome2_src_configure \
-                       $(use_enable doc docs) \
-                       --disable-numpy \
-                       --with-glade \
-                       --enable-thread
-       }
-       python_foreach_impl run_in_build_dir configure_pygtk
-}
-
-src_compile() {
-       python_foreach_impl run_in_build_dir gnome2_src_compile
+       myconf=(
+               $(use_enable doc docs)
+               --disable-numpy
+               --with-glade
+               --enable-thread
+               PYTHON=python2.7
+       )
+
+       gnome2_src_configure "${myconf[@]}"
 }
 
 src_test() {
@@ -98,11 +92,7 @@ src_test() {
        gnome2_environment_reset
        unset DBUS_SESSION_BUS_ADDRESS
 
-       testing() {
-               cd tests
-               virtx emake check-local
-       }
-       python_foreach_impl run_in_build_dir testing
+       cd tests && virtx emake check-local
 }
 
 src_install() {
@@ -113,6 +103,6 @@ src_install() {
                dodoc -r examples
        fi
 
-       python_foreach_impl run_in_build_dir gnome2_src_install
+       gnome2_src_install
        find "${D}" -name '*.la' -type f -delete || die
 }
diff --git a/dev-python/python-musicbrainz-ngs/Manifest b/dev-python/python-musicbrainz-ngs/Manifest
deleted file mode 100644 (file)
index d0c7e25..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-AUX python-musicbrainz-ngs-0.6-fix-test-submit.patch 993 BLAKE2B 3347bd841f0f1b23477f387275ad8e6d40fcffc434150e93c0d57c9291c239639018c28e519032ee2cb251371343d0f3ce6c070b960d4ca8bd1dc5b5b480511f SHA512 ed5b6b674edddcc1d6047bfd97ffdbc1bd4ae3b83e61100b0389cabad84014dce894857faf5555824f245eacaea7541ee18424f630881698b8f2bebceabf8b78
-DIST python-musicbrainzngs-0.6.tar.gz 110948 BLAKE2B 9528d966565f7c927a98d311dcbb6db73a84614efa3eb071fe944b29b655526f9dd6e8a4a217428883d30b93c18e45c3d752d321d3c0689e5af00423b5fd7faa SHA512 901729f736b207f2f086e3d44a3515d405f6621706ad9c7ca07dd304349e048c5790bb16b054393651808bac4905ceb9493dd66d9fb17a1612692427c0bd3bd4
-EBUILD python-musicbrainz-ngs-0.6.ebuild 1556 BLAKE2B 6061a0f7e82a645955c422199a19eb298f680b502d305bf628f1a1885bafb60f91264bad96d69cf1099c56ea253f87775c88cee7fc5e6673eb958de17426ed1d SHA512 aaea28dedc01871f2c7ba6efcd00fe2f58159d1738602bf10f8fe61618e1f6432f2fd80dc290ca29959dd87c2c86e3da4d30863997e0a096792955f058abaa54
diff --git a/dev-python/python-musicbrainz-ngs/files/python-musicbrainz-ngs-0.6-fix-test-submit.patch b/dev-python/python-musicbrainz-ngs/files/python-musicbrainz-ngs-0.6-fix-test-submit.patch
deleted file mode 100644 (file)
index 4881936..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-diff --git a/test/test_submit.py b/test/test_submit.py
-index bce5362..2d13811 100644
---- a/test/test_submit.py
-+++ b/test/test_submit.py
-@@ -1,13 +1,23 @@
- import unittest
--import os
--import sys
--sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), "..")))
--
- import musicbrainzngs
- from musicbrainzngs import musicbrainz
- from test import _common
-+
- class SubmitTest(unittest.TestCase):
-+
-+    def setUp(self):
-+        self.orig_opener = musicbrainzngs.compat.build_opener
-+        musicbrainz.set_useragent("test_client", "1.0")
-+        musicbrainz.auth("user", "password")
-+
-+    def tearDown(self):
-+        musicbrainzngs.compat.build_opener = self.orig_opener
-+        musicbrainz._useragent = ""
-+        musicbrainz._client = ""
-+        musicbrainz.user = ""
-+        musicbrainz.password = ""
-+
-     def test_submit_tags(self):
-         self.opener = _common.FakeOpener("<response/>")
-         musicbrainzngs.compat.build_opener = lambda *args: self.opener
diff --git a/dev-python/python-musicbrainz-ngs/python-musicbrainz-ngs-0.6.ebuild b/dev-python/python-musicbrainz-ngs/python-musicbrainz-ngs-0.6.ebuild
deleted file mode 100644 (file)
index f9a26cd..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright © 2020 Nick Bowler
-# License GPLv2+: GNU General Public License version 2 or any later version.
-# This is free software: you are free to change and redistribute it.
-# There is NO WARRANTY, to the extent permitted by law.
-#
-# This is a modified version of the original ebuild from Gentoo GNU/Linux,
-# covered by the following copyright and permission notice:
-#
-#   Copyright 2019-2020 Gentoo Authors
-#   Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 python3_{6,7} )
-
-inherit distutils-r1
-
-MY_PN=${PN%-ngs}ngs
-MY_P=$MY_PN-$PV
-
-DESCRIPTION="Python bindings for the MusicBrainz NGS and the Cover Art Archive webservices"
-HOMEPAGE="https://github.com/alastair/python-musicbrainzngs"
-SRC_URI="https://github.com/alastair/$MY_PN/archive/v$PV.tar.gz -> $MY_P.tar.gz"
-
-LICENSE="BSD-2 ISC"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="doc examples test"
-RESTRICT="!test? ( test )"
-
-S=$WORKDIR/$MY_P
-
-PATCHES="$FILESDIR/$PN-0.6-fix-test-submit.patch"
-
-DEPEND="dev-python/setuptools[$PYTHON_USEDEP]
-       doc? ( dev-python/sphinx[$PYTHON_USEDEP] )"
-
-python_prepare_all() {
-       # Prevent un-needed d'loading
-       sed -e "s/^ *'sphinx.ext.intersphinx'//" -i docs/conf.py || die
-       distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
-       use doc && emake -C docs html
-}
-
-python_test() {
-       esetup.py test --verbosity=2
-}
-
-python_install_all() {
-       use doc && local HTML_DOCS=( docs/_build/html/. )
-
-       if use examples; then
-               dodoc -r examples
-               docompress -x "/usr/share/doc/$PF/examples"
-       fi
-
-       distutils-r1_python_install_all
-}
diff --git a/eclass/mozconfig-v6.52.eclass b/eclass/mozconfig-v6.52.eclass
new file mode 100644 (file)
index 0000000..fe2cb69
--- /dev/null
@@ -0,0 +1,396 @@
+# This eclass is a modified version of the work originally distributed with
+# Gentoo GNU/Linux, covered by the following copyright and permission notice:
+#
+#   Copyright 1999-2020 Gentoo Authors
+#   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications are:
+#
+#   * Update libffi dependency (2022-12)
+#   * Update to EAPI 8 (2023-04)
+#
+# @ECLASS: mozconfig-v6.52.eclass
+# @MAINTAINER:
+# mozilla team <mozilla@gentoo.org>
+# @SUPPORTED_EAPIS: 7 8
+# @BLURB: the new mozilla common configuration eclass for FF33 and newer, v6
+# @DESCRIPTION:
+# This eclass is used in mozilla ebuilds (firefox, thunderbird, seamonkey)
+# to provide a single common place for the common mozilla engine compoments.
+#
+# The eclass provides all common dependencies as well as common use flags.
+#
+# Some use flags which may be optional in particular mozilla packages can be
+# supported through setting eclass variables.
+#
+# This eclass inherits mozconfig helper functions as defined in mozcoreconf-v3,
+# and so ebuilds inheriting this eclass do not need to inherit that.
+
+case ${EAPI} in
+       0|1|2|3|4|5|6)
+               die "EAPI=${EAPI} not supported"
+               ;;
+esac
+
+inherit flag-o-matic toolchain-funcs mozcoreconf-v5
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_WIFI
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild needs to provide
+# optional necko-wifi support via IUSE="wifi".  Currently this would include
+# ebuilds for firefox, and potentially seamonkey.
+#
+# Leave the variable UNSET if necko-wifi support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_JIT
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild needs to provide
+# deterministic jit support via IUSE="jit".  The upstream default will be used
+# otherwise, which is generally to enable jit unless support for the platform
+# is missing.
+#
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_GTK3
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild can provide
+# optional gtk3 support via IUSE="force-gtk3".  Currently this would include
+# thunderbird and seamonkey in the future, once support is ready for testing.
+#
+# Leave the variable UNSET if gtk3 support should not be optionally available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+# If gtk+:3 is to be the standard toolkit, do not use this and instead use
+# MOZCONFIG_OPTIONAL_GTK2ONLY.
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_GTK2ONLY
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild can provide
+# optional gtk2-only support via IUSE="gtk2".
+#
+# Note that this option conflicts directly with MOZCONFIG_OPTIONAL_GTK3, both
+# variables cannot be set at the same time and this variable will be ignored if
+# MOZCONFIG_OPTIONAL_GTK3 is set.
+#
+# Leave the variable UNSET if gtk2-only support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# @ECLASS-VARIABLE: MOZCONFIG_OPTIONAL_QT5
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# Set this variable before the inherit line, when an ebuild can provide
+# optional qt5 support via IUSE="qt5".  Currently this would include
+# ebuilds for firefox, but thunderbird and seamonkey could follow in the future.
+#
+# Leave the variable UNSET if qt5 support should not be available.
+# Set the variable to "enabled" if the use flag should be enabled by default.
+# Set the variable to any value if the use flag should exist but not be default-enabled.
+
+# use-flags common among all mozilla ebuilds
+IUSE="${IUSE} dbus debug +jemalloc neon pulseaudio selinux startup-notification system-cairo
+       system-harfbuzz system-icu system-jpeg system-libevent system-sqlite system-libvpx"
+
+# some notes on deps:
+# gtk:2 minimum is technically 2.10 but gio support (enabled by default) needs 2.14
+# media-libs/mesa needs to be 10.2 or above due to a bug with flash+vdpau
+
+RDEPEND=">=app-text/hunspell-1.2:=
+       dev-libs/atk
+       dev-libs/expat
+       >=x11-libs/cairo-1.10[X]
+       >=x11-libs/gtk+-2.18:2
+       x11-libs/gdk-pixbuf
+       >=x11-libs/pango-1.22.0
+       >=media-libs/libpng-1.6.25:0=[apng]
+       >=media-libs/mesa-10.2:*
+       media-libs/fontconfig
+       >=media-libs/freetype-2.4.10
+       kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
+       pulseaudio? ( || ( media-sound/pulseaudio
+               >=media-sound/apulse-0.1.9 ) )
+       virtual/freedesktop-icon-theme
+       dbus? ( >=sys-apps/dbus-0.60
+               >=dev-libs/dbus-glib-0.72 )
+       startup-notification? ( >=x11-libs/startup-notification-0.8 )
+       >=dev-libs/glib-2.26:2
+       >=sys-libs/zlib-1.2.3
+       >=dev-libs/libffi-3.0.10:=
+       media-video/ffmpeg
+       x11-libs/libX11
+       x11-libs/libXcomposite
+       x11-libs/libXdamage
+       x11-libs/libXext
+       x11-libs/libXfixes
+       x11-libs/libXrender
+       x11-libs/libXt
+       system-cairo? ( >=x11-libs/cairo-1.12[X,xcb(+)] >=x11-libs/pixman-0.19.2 )
+       system-icu? ( >=dev-libs/icu-58.1:= )
+       system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
+       system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
+       system-sqlite? ( >=dev-db/sqlite-3.17.0:3[secure-delete,debug=] )
+       system-libvpx? ( >=media-libs/libvpx-1.5.0:0=[postproc] )
+       system-harfbuzz? ( >=media-libs/harfbuzz-1.3.3:0= >=media-gfx/graphite2-1.3.8 )
+"
+
+if [[ -n ${MOZCONFIG_OPTIONAL_GTK3} ]]; then
+       MOZCONFIG_OPTIONAL_GTK2ONLY=
+       if [[ ${MOZCONFIG_OPTIONAL_GTK3} = "enabled" ]]; then
+               IUSE+=" +force-gtk3"
+       else
+               IUSE+=" force-gtk3"
+       fi
+       RDEPEND+=" force-gtk3? ( >=x11-libs/gtk+-3.4.0:3 )"
+elif [[ -n ${MOZCONFIG_OPTIONAL_GTK2ONLY} ]]; then
+       if [[ ${MOZCONFIG_OPTIONAL_GTK2ONLY} = "enabled" ]]; then
+               IUSE+=" +gtk2"
+       else
+               IUSE+=" gtk2"
+       fi
+       RDEPEND+=" !gtk2? ( >=x11-libs/gtk+-3.4.0:3 )"
+fi
+if [[ -n ${MOZCONFIG_OPTIONAL_WIFI} ]]; then
+       if [[ ${MOZCONFIG_OPTIONAL_WIFI} = "enabled" ]]; then
+               IUSE+=" +wifi"
+       else
+               IUSE+=" wifi"
+       fi
+       RDEPEND+="
+       wifi? (
+               kernel_linux? ( >=sys-apps/dbus-0.60
+                       >=dev-libs/dbus-glib-0.72
+                       net-misc/networkmanager )
+       )"
+fi
+
+BEPEND="app-arch/zip
+       app-arch/unzip
+       sys-apps/findutils"
+
+DEPEND="$RDEPEND
+       pulseaudio? ( media-libs/libpulse )"
+
+RDEPEND+="
+       pulseaudio? ( || ( media-libs/libpulse
+               >=media-sound/apulse-0.1.9 ) )
+       selinux? ( sec-policy/selinux-mozilla )"
+
+# @FUNCTION: mozconfig_config
+# @DESCRIPTION:
+# Set common configure options for mozilla packages.
+# Call this within src_configure() phase, after mozconfig_init
+#
+# Example:
+#
+# inherit mozconfig-v6.46
+#
+# src_configure() {
+#      mozconfig_init
+#      mozconfig_config
+#      # ... misc ebuild-unique settings via calls to
+#      # ... mozconfig_{annotate,use_with,use_enable}
+#      mozconfig_final
+# }
+
+mozconfig_config() {
+       # Migrated from mozcoreconf-2
+       mozconfig_annotate 'system_libs' \
+               --with-system-zlib \
+               --with-system-bz2
+
+       if has bindist ${IUSE}; then
+               mozconfig_use_enable !bindist official-branding
+               if [[ ${PN} == firefox ]] && use bindist ; then
+                       mozconfig_annotate '' --with-branding=browser/branding/aurora
+               fi
+       fi
+
+       # Enable position independent executables
+       mozconfig_annotate 'enabled by Gentoo' --enable-pie
+       mozconfig_use_enable debug
+       mozconfig_use_enable debug tests
+
+       if ! use debug ; then
+               mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols
+       else
+               mozconfig_annotate 'enabled by Gentoo' --enable-debug-symbols
+       fi
+
+       mozconfig_use_enable startup-notification
+
+       if [[ -n ${MOZCONFIG_OPTIONAL_WIFI} ]] ; then
+               # wifi pulls in dbus so manage both here
+               mozconfig_use_enable wifi necko-wifi
+               if use kernel_linux && use wifi && ! use dbus; then
+                       echo "Enabling dbus support due to wifi request"
+                       mozconfig_annotate 'dbus required by necko-wifi on linux' --enable-dbus
+               else
+                       mozconfig_use_enable dbus
+               fi
+       else
+               mozconfig_use_enable dbus
+               mozconfig_annotate 'disabled' --disable-necko-wifi
+       fi
+
+       if [[ -n ${MOZCONFIG_OPTIONAL_JIT} ]]; then
+               mozconfig_use_enable jit ion
+       fi
+
+       # These are enabled by default in all mozilla applications
+       mozconfig_annotate '' --with-system-nspr --with-nspr-prefix="${SYSROOT}${EPREFIX}"/usr
+       mozconfig_annotate '' --with-system-nss --with-nss-prefix="${SYSROOT}${EPREFIX}"/usr
+       mozconfig_annotate '' --x-includes="${SYSROOT}${EPREFIX}"/usr/include --x-libraries="${SYSROOT}${EPREFIX}"/usr/$(get_libdir)
+       if use system-libevent; then
+               mozconfig_annotate '' --with-system-libevent="${SYSROOT}${EPREFIX}"/usr
+       fi
+       mozconfig_annotate '' --prefix="${EPREFIX}"/usr
+       mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
+       mozconfig_annotate 'Gentoo default' --enable-system-hunspell
+       mozconfig_annotate '' --disable-gnomeui
+       mozconfig_annotate '' --enable-gio
+       mozconfig_annotate '' --disable-crashreporter
+       mozconfig_annotate 'Gentoo default' --with-system-png
+       mozconfig_annotate '' --enable-system-ffi
+       mozconfig_annotate 'Gentoo default to honor system linker' --disable-gold
+       mozconfig_annotate '' --disable-gconf
+       mozconfig_annotate '' --with-intl-api
+
+       # skia has no support for big-endian platforms
+       if [[ $(tc-endian) == "big" ]]; then
+               mozconfig_annotate 'big endian target' --disable-skia
+       else
+               mozconfig_annotate '' --enable-skia
+       fi
+
+       # default toolkit is cairo-gtk2, optional use flags can change this
+       local toolkit="cairo-gtk2"
+       local toolkit_comment=""
+       if [[ -n ${MOZCONFIG_OPTIONAL_GTK3} ]]; then
+               if use force-gtk3; then
+                       toolkit="cairo-gtk3"
+                       toolkit_comment="force-gtk3 use flag"
+               fi
+       fi
+       if [[ -n ${MOZCONFIG_OPTIONAL_GTK2ONLY} ]]; then
+               if ! use gtk2 ; then
+                       toolkit="cairo-gtk3"
+               else
+                       toolkit_comment="gtk2 use flag"
+               fi
+       fi
+       if [[ -n ${MOZCONFIG_OPTIONAL_QT5} ]]; then
+               if use qt5; then
+                       toolkit="cairo-qt"
+                       toolkit_comment="qt5 use flag"
+                       # need to specify these vars because the qt5 versions are not found otherwise,
+                       # and setting --with-qtdir overrides the pkg-config include dirs
+                       local i
+                       for i in qmake moc rcc; do
+                               echo "export HOST_${i^^}=\"$(qt5_get_bindir)/${i}\"" \
+                                       >> "${S}"/.mozconfig || die
+                       done
+                       echo 'unset QTDIR' >> "${S}"/.mozconfig || die
+                       mozconfig_annotate '+qt5' --disable-gio
+               fi
+       fi
+       mozconfig_annotate "${toolkit_comment}" --enable-default-toolkit=${toolkit}
+
+       # Use jemalloc unless libc is not glibc >= 2.4
+       # at this time the minimum glibc in the tree is 2.9 so we should be safe.
+       if use elibc_glibc && use jemalloc; then
+               # We must force-enable jemalloc 4 via .mozconfig
+               echo "export MOZ_JEMALLOC4=1" >> "${S}"/.mozconfig || die
+               mozconfig_annotate '' --enable-replace-malloc
+       fi
+
+       # Instead of the standard --build= and --host=, mozilla uses --host instead
+       # of --build, and --target intstead of --host.
+       # Note, mozilla also has --build but it does not do what you think it does.
+       # Set both --target and --host as mozilla uses python to guess values otherwise
+       mozconfig_annotate '' --target="${CHOST}"
+       mozconfig_annotate '' --host="${CBUILD:-${CHOST}}"
+
+       mozconfig_use_enable pulseaudio
+       # force the deprecated alsa sound code if pulseaudio is disabled
+       if use kernel_linux && ! use pulseaudio ; then
+               mozconfig_annotate '-pulseaudio' --enable-alsa
+       fi
+
+       mozconfig_use_enable system-cairo
+       mozconfig_use_enable system-sqlite
+       mozconfig_use_with system-jpeg
+       mozconfig_use_with system-icu
+       mozconfig_use_with system-libvpx
+       mozconfig_use_with system-harfbuzz
+       mozconfig_use_with system-harfbuzz system-graphite2
+
+       # Modifications to better support ARM, bug 553364
+       if use neon ; then
+               mozconfig_annotate '' --with-fpu=neon
+               mozconfig_annotate '' --with-thumb=yes
+               mozconfig_annotate '' --with-thumb-interwork=no
+       fi
+       if [[ ${CHOST} == armv* ]] ; then
+               mozconfig_annotate '' --with-float-abi=hard
+               if ! use system-libvpx ; then
+                       sed -i -e "s|softfp|hard|" \
+                               "${S}"/media/libvpx/moz.build
+               fi
+       fi
+}
+
+# @FUNCTION: mozconfig_install_prefs
+# @DESCRIPTION:
+# Set preferences into the prefs.js file specified as a parameter to
+# the function.  This sets both some common prefs to all mozilla
+# packages, and any prefs that may relate to the use flags administered
+# by mozconfig_config().
+#
+# Call this within src_install() phase, after copying the template
+# prefs file (if any) from ${FILESDIR}
+#
+# Example:
+#
+# inherit mozconfig-v6.46
+#
+# src_install() {
+#      cp "${FILESDIR}"/gentoo-default-prefs.js \
+#      "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js"  \
+#      || die
+#
+#      mozconfig_install_prefs \
+#      "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js"
+#
+#      ...
+# }
+
+mozconfig_install_prefs() {
+       local prefs_file="${1}"
+
+       einfo "Adding prefs from mozconfig to ${prefs_file}"
+
+       # set dictionary path, to use system hunspell
+       echo "pref(\"spellchecker.dictionary_path\", \"${EPREFIX}/usr/share/myspell\");" \
+               >>"${prefs_file}" || die
+
+       # force the graphite pref if system-harfbuzz is enabled, since the pref cant disable it
+       if use system-harfbuzz ; then
+               echo "sticky_pref(\"gfx.font_rendering.graphite.enabled\",true);" \
+                       >>"${prefs_file}" || die
+       fi
+
+       # force cairo as the canvas renderer on platforms without skia support
+       if [[ $(tc-endian) == "big" ]] ; then
+               echo "sticky_pref(\"gfx.canvas.azure.backends\",\"cairo\");" \
+                       >>"${prefs_file}" || die
+               echo "sticky_pref(\"gfx.content.azure.backends\",\"cairo\");" \
+                       >>"${prefs_file}" || die
+       fi
+}
diff --git a/eclass/mozcoreconf-v5.eclass b/eclass/mozcoreconf-v5.eclass
new file mode 100644 (file)
index 0000000..feb7b1a
--- /dev/null
@@ -0,0 +1,277 @@
+# This eclass is a modified version of the work originally distributed with
+# Gentoo GNU/Linux, covered by the following copyright and permission notice:
+#
+#   Copyright 1999-2022 Gentoo Authors
+#   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications are:
+#
+#   * Avoid python eclasses which no longer support python2 (2022-12)
+#   * Remove versionator inherit which seems unused (2023-04)
+#   * Update to EAPI 8 (2023-04)
+#
+# @DEAD
+# @ECLASS: mozcoreconf-v5.eclass
+# @MAINTAINER:
+# Mozilla team <mozilla@gentoo.org>
+# @BLURB: core options and configuration functions for mozilla
+# @DESCRIPTION:
+#
+# inherit mozconfig-v6.* or above for mozilla configuration support
+
+# @ECLASS_VARIABLE: MOZILLA_FIVE_HOME
+# @DESCRIPTION:
+# This is an eclass-generated variable that defines the rpath that the mozilla
+# product will be installed in.  Read-only
+
+if [[ ! ${_MOZCORECONF} ]]; then
+
+inherit multilib toolchain-funcs flag-o-matic
+
+IUSE="${IUSE} custom-cflags custom-optimization"
+
+BDEPEND="dev-lang/python:2.7[ncurses,sqlite,ssl,threads(+)]
+       virtual/pkgconfig"
+
+# @FUNCTION: mozconfig_annotate
+# @DESCRIPTION:
+# add an annotated line to .mozconfig
+#
+# Example:
+# mozconfig_annotate "building on ultrasparc" --enable-js-ultrasparc
+# => ac_add_options --enable-js-ultrasparc # building on ultrasparc
+mozconfig_annotate() {
+       declare reason=$1 x ; shift
+       [[ $# -gt 0 ]] || die "mozconfig_annotate missing flags for ${reason}\!"
+       for x in ${*}; do
+               echo "ac_add_options ${x} # ${reason}" >>.mozconfig
+       done
+}
+
+# @FUNCTION: mozconfig_use_enable
+# @DESCRIPTION:
+# add a line to .mozconfig based on a USE-flag
+#
+# Example:
+# mozconfig_use_enable truetype freetype2
+# => ac_add_options --enable-freetype2 # +truetype
+mozconfig_use_enable() {
+       declare flag=$(use_enable "$@")
+       mozconfig_annotate "$(use $1 && echo +$1 || echo -$1)" "${flag}"
+}
+
+# @FUNCTION: mozconfig_use_with
+# @DESCRIPTION:
+# add a line to .mozconfig based on a USE-flag
+#
+# Example:
+# mozconfig_use_with kerberos gss-api /usr/$(get_libdir)
+# => ac_add_options --with-gss-api=/usr/lib # +kerberos
+mozconfig_use_with() {
+       declare flag=$(use_with "$@")
+       mozconfig_annotate "$(use $1 && echo +$1 || echo -$1)" "${flag}"
+}
+
+# @FUNCTION: mozconfig_use_extension
+# @DESCRIPTION:
+# enable or disable an extension based on a USE-flag
+#
+# Example:
+# mozconfig_use_extension gnome gnomevfs
+# => ac_add_options --enable-extensions=gnomevfs
+mozconfig_use_extension() {
+       declare minus=$(use $1 || echo -)
+       mozconfig_annotate "${minus:-+}$1" --enable-extensions=${minus}${2}
+}
+
+moz_pkgsetup() {
+       # Ensure we use C locale when building
+       export LANG="C"
+       export LC_ALL="C"
+       export LC_MESSAGES="C"
+       export LC_CTYPE="C"
+
+       # Ensure we use correct toolchain
+       export HOST_CC="$(tc-getBUILD_CC)"
+       export HOST_CXX="$(tc-getBUILD_CXX)"
+       tc-export CC CXX LD PKG_CONFIG
+
+       # Ensure that we have a sane build enviroment
+       export MOZILLA_CLIENT=1
+       export BUILD_OPT=1
+       export NO_STATIC_LIB=1
+       export USE_PTHREADS=1
+       export ALDFLAGS=${LDFLAGS}
+       # ensure MOZCONFIG is not defined
+       unset MOZCONFIG
+
+       # set MOZILLA_FIVE_HOME
+       export MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
+
+       # nested configure scripts in mozilla products generate unrecognized options
+       # false positives when toplevel configure passes downwards.
+       export QA_CONFIGURE_OPTIONS=".*"
+
+       export PYTHON=python2.7
+}
+
+# @FUNCTION: mozconfig_init
+# @DESCRIPTION:
+# Initialize mozilla configuration and populate with core settings.
+# This should be called in src_configure before any other mozconfig_* functions.
+mozconfig_init() {
+       declare enable_optimize pango_version myext x
+       declare XUL=$([[ ${PN} == xulrunner ]] && echo true || echo false)
+       declare FF=$([[ ${PN} == firefox ]] && echo true || echo false)
+       declare SM=$([[ ${PN} == seamonkey ]] && echo true || echo false)
+       declare TB=$([[ ${PN} == thunderbird ]] && echo true || echo false)
+       declare WF=$([[ ${PN} == waterfox* ]] && echo true || echo false)
+
+       ####################################
+       #
+       # Setup the initial .mozconfig
+       # See http://www.mozilla.org/build/configure-build.html
+       #
+       ####################################
+
+       case ${PN} in
+               *xulrunner)
+                       cp xulrunner/config/mozconfig .mozconfig \
+                               || die "cp xulrunner/config/mozconfig failed" ;;
+               *firefox|waterfox*)
+                       cp browser/config/mozconfig .mozconfig \
+                               || die "cp browser/config/mozconfig failed" ;;
+               seamonkey)
+                       # Must create the initial mozconfig to enable application
+                       : >.mozconfig || die "initial mozconfig creation failed"
+                       mozconfig_annotate "" --enable-application=suite ;;
+               *thunderbird)
+                       # Must create the initial mozconfig to enable application
+                       : >.mozconfig || die "initial mozconfig creation failed"
+                       mozconfig_annotate "" --enable-application=mail ;;
+       esac
+
+       ####################################
+       #
+       # CFLAGS setup and ARCH support
+       #
+       ####################################
+
+       # Set optimization level
+       mozconfig_annotate "Workaround known breakage" --enable-optimize=-O2
+
+       if [[ ${ARCH} == hppa ]]; then
+               mozconfig_annotate "more than -O0 causes a segfault on hppa" --enable-optimize=-O0
+       elif [[ ${ARCH} == x86 ]]; then
+               mozconfig_annotate "less then -O2 causes a segfault on x86" --enable-optimize=-O2
+       elif use custom-optimization || [[ ${ARCH} =~ (alpha|ia64) ]]; then
+               # Set optimization level based on CFLAGS
+               if is-flag -O0; then
+                       mozconfig_annotate "from CFLAGS" --enable-optimize=-O0
+               elif [[ ${ARCH} == ppc ]] && has_version '>=sys-libs/glibc-2.8'; then
+                       mozconfig_annotate "more than -O1 segfaults on ppc with glibc-2.8" --enable-optimize=-O1
+               elif is-flag -O4; then
+                       mozconfig_annotate "from CFLAGS" --enable-optimize=-O4
+               elif is-flag -O3; then
+                       mozconfig_annotate "from CFLAGS" --enable-optimize=-O3
+               elif is-flag -O1; then
+                       mozconfig_annotate "from CFLAGS" --enable-optimize=-O1
+               elif is-flag -Os; then
+                       mozconfig_annotate "from CFLAGS" --enable-optimize=-Os
+               else
+                       mozconfig_annotate "Gentoo's default optimization" --enable-optimize=-O2
+               fi
+       else
+               # Enable Mozilla's default
+               mozconfig_annotate "mozilla default" --enable-optimize
+       fi
+
+       # Strip optimization so it does not end up in compile string
+       filter-flags '-O*'
+
+       # Strip over-aggressive CFLAGS
+       use custom-cflags || strip-flags
+
+       # Additional ARCH support
+       case "${ARCH}" in
+       arm)
+               # Reduce the memory requirements for linking
+               append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
+               ;;
+       alpha)
+               # Historically we have needed to add -fPIC manually for 64-bit.
+               # Additionally, alpha should *always* build with -mieee for correct math
+               # operation
+               append-flags -fPIC -mieee
+               ;;
+       ia64)
+               # Historically we have needed to add this manually for 64-bit
+               append-flags -fPIC
+               ;;
+       ppc64)
+               append-flags -fPIC -mminimal-toc
+               # Reduce the memory requirements for linking
+               append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
+               ;;
+       esac
+
+       # We need to append flags for >= gcc-6 support
+       append-cxxflags -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2
+
+       # Use the MOZILLA_FIVE_HOME for the rpath
+       append-ldflags -Wl,-rpath="${MOZILLA_FIVE_HOME}",--enable-new-dtags
+       # Set MOZILLA_FIVE_HOME in mozconfig
+       mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
+
+       ####################################
+       #
+       # mozconfig setup
+       #
+       ####################################
+
+       mozconfig_annotate disable_update_strip \
+               --disable-updater \
+               --disable-strip \
+               --disable-install-strip
+
+       # jemalloc won't build with older glibc
+       ! has_version ">=sys-libs/glibc-2.4" && mozconfig_annotate "we have old glibc" --disable-jemalloc
+}
+
+# @FUNCTION: mozconfig_final
+# @DESCRIPTION:
+# Apply EXTRA_ECONF values to .mozconfig
+# Display a table describing all configuration options paired
+# with reasons, then clean up extensions list.
+# This should be called in src_configure at the end of all other mozconfig_* functions.
+mozconfig_final() {
+       declare ac opt hash reason
+
+       # Apply EXTRA_ECONF entries to .mozconfig
+       if [[ -n ${EXTRA_ECONF} ]]; then
+               IFS=\! read -a ac <<<${EXTRA_ECONF// --/\!}
+               for opt in "${ac[@]}"; do
+                       mozconfig_annotate "EXTRA_ECONF" --${opt#--}
+               done
+       fi
+
+       echo
+       echo "=========================================================="
+       echo "Building ${PF} with the following configuration"
+       grep ^ac_add_options .mozconfig | while read ac opt hash reason; do
+               [[ -z ${hash} || ${hash} == \# ]] \
+                       || die "error reading mozconfig: ${ac} ${opt} ${hash} ${reason}"
+               printf "    %-30s  %s\n" "${opt}" "${reason:-mozilla.org default}"
+       done
+       echo "=========================================================="
+       echo
+
+       # Resolve multiple --enable-extensions down to one
+       declare exts=$(sed -n 's/^ac_add_options --enable-extensions=\([^ ]*\).*/\1/p' \
+               .mozconfig | xargs)
+       sed -i '/^ac_add_options --enable-extensions/d' .mozconfig
+       echo "ac_add_options --enable-extensions=${exts// /,}" >> .mozconfig
+}
+
+_MOZCORECONF=1
+fi
diff --git a/media-fonts/urw-fonts/Manifest b/media-fonts/urw-fonts/Manifest
new file mode 100644 (file)
index 0000000..0420237
--- /dev/null
@@ -0,0 +1,2 @@
+DIST urw-fonts-2.4-9.fc13.src.rpm 3198315 BLAKE2B 9f4c026af2ee6b472454be43b4e1d11616770cb63841fe022762f18a7c71abc37e442102a3d54b880a6a34117442cf45b2d65133ef9cca564e55a26ac1179824 SHA512 cd8c9eb9e56480e70129c14cc744b944fe51fc616b8b5da46b7251520c84486c6c4354afdd7517569ba7874255c00b755aace076dc2cf1a1d8bdd30e41322d4b
+EBUILD urw-fonts-2.4.9.ebuild 1888 BLAKE2B 82ee73a1701d792c325b45f93dfec63a05ee1c0d524fafa267917d4830a9c94757a18b54722b7b05437e7cd57ed3783723cf4805d49c610a6aac70ec946fe464 SHA512 da2d97c4d1642c41e011dc452058e5fd43d04a07cae6d4c76d3c46737840387245de67e504772c1da76a03c5599e1fb1a4b11717d49810c4e85d2ad8c7b19eee
diff --git a/media-fonts/urw-fonts/urw-fonts-2.4.9.ebuild b/media-fonts/urw-fonts/urw-fonts-2.4.9.ebuild
new file mode 100644 (file)
index 0000000..7ee816d
--- /dev/null
@@ -0,0 +1,53 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# At some point URW++ released fonts under GPL license. After that they were took
+# and improved by Valek Filippov and this work was somehow related with AFPL...
+# At least it can be found on their svn server:
+# http://svn.ghostscript.com/ghostscript/trunk/urw-fonts/
+
+# Also, some time ago, sources where published on sf.net:
+# https://sourceforge.net/projects/gs-fonts/files/
+# At this point this package was published on a nuber of other sites
+# (gimp.org/cups.org) and media-fonts/gnu-gs-fonts-std was added to the tree.
+# But nobody use that old releases any mover and everybody syncs with
+# svn.ghostscript.com. The most recent tag there is:
+# http://svn.ghostscript.com/ghostscript/tags/urw-fonts-1.0.7pre44/
+
+# But note that version we have is different from upstream tag. This happened
+# because we started to use redhat versions and followed their versioning. It's
+# hard to say why they use such strange version since they also sync with
+# svn.ghostscript.com. Redhat's ChangeLog states:
+# Tue Jan 8 23:00:00 2008 Than Ngo 2.4-2
+#  - update to 1.0.7pre44
+
+inherit estack rpm font
+
+MY_PV=$(ver_rs 2 -)
+
+DESCRIPTION="free good quality fonts gpl'd by URW++"
+HOMEPAGE="http://www.urwpp.de/"
+SRC_URI="mirror://gentoo/${PN}-${MY_PV}.fc13.src.rpm"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="
+       !media-fonts/gnu-gs-fonts-std
+       !media-fonts/gnu-gs-fonts-other"
+
+S="${WORKDIR}"
+
+DOCS="ChangeLog README*"
+FONT_S="${S}"
+FONT_SUFFIX="afm pfb pfm"
+
+pkg_postinst() {
+       font_pkg_postinst
+
+       elog "If you upgraded from ${PN}-2.1-r2 some fonts will look a bit"
+       elog "different. Take a look at bug #208990 if interested."
+}
diff --git a/media-plugins/gimp-resynthesizer/Manifest b/media-plugins/gimp-resynthesizer/Manifest
deleted file mode 100644 (file)
index b458af3..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST gimp-resynthesizer-2.0.3.tar.gz 11097693 BLAKE2B 51e064ed1a5d31dc3162a27b76c8b68d7652e3efdf2acad1844f4c76b47a6485b4e43788993c344a7154cddd8d2ac1ebda7c24f871ea8d6af332b1f15759f396 SHA512 de18fa41f5c3feaeff3365cc57b49f404f20439c6f84b212bc5cc76ee21f34566b8d093bebef1e6f27dbe3df6a23570dc091d23044a0967957ec0e97a16fa7c4
-EBUILD gimp-resynthesizer-2.0.3-r5.ebuild 1123 BLAKE2B 56bf4315af558cb323faa5880cd8cbaf7c9617e98b471fe3c4e969f2cbc13d90c8311e0e6a1472f94cf7445718d3445da3c99997476b32510b60789447804faf SHA512 121153223ea1ffc8119a88c5299ada94dec6c1ca51dd2b8704c1bc3ab3ba111aa73c713240395472cf4d3b65ab3bdb7669a2303f98e5e3d7423380eeb2724e43
-MISC metadata.xml 651 BLAKE2B fce88379f37caa26affce3b55ab152952ab8ca7578b5f2cc19daf93228ec11211c32e278b194c2f9d55ed330c4de94abfdfdf0b99f2612bb85e1bf5187f431f9 SHA512 ee4c49df50d6e834d27093eaf2c6639749b625402003fd3a2575ad514a73cb0e71a3a0d8dbed807660ad0011a4fa6fac7c5d7e0899bcd137cc43749197f93501
diff --git a/media-plugins/gimp-resynthesizer/gimp-resynthesizer-2.0.3-r5.ebuild b/media-plugins/gimp-resynthesizer/gimp-resynthesizer-2.0.3-r5.ebuild
deleted file mode 100644 (file)
index 90fafb8..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright © 2020-2021 Nick Bowler
-#
-# License GPLv2+: GNU General Public License version 2 or any later version.
-# This is free software: you are free to change and redistribute it.
-# There is NO WARRANTY, to the extent permitted by law.
-#
-# This is a modified version of the original ebuild from Gentoo GNU/Linux,
-# covered by the following copyright and permission notice:
-#
-#   Copyright 1999-2020 Gentoo Authors
-#   Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-_PYTHON_ALLOW_PY27=1
-PYTHON_COMPAT=( python2_7 )
-
-inherit autotools python-single-r1
-
-MY_PN=${PN#gimp-}
-MY_P=$MY_PN-$PV
-
-DESCRIPTION="Suite of GIMP plugins for texture synthesis"
-HOMEPAGE="https://github.com/bootchk/resynthesizer"
-SRC_URI="https://github.com/bootchk/$MY_PN/archive/v$PV.tar.gz -> $P.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-BDEPEND="virtual/pkgconfig"
-DEPEND="$PYTHON_DEPS
-       || (
-               media-plugins/gimp-python[$PYTHON_SINGLE_USEDEP]
-               media-gfx/gimp[python(-),$PYTHON_SINGLE_USEDEP] )"
-RDEPEND=$DEPEND
-REQUIRED_USE=$PYTHON_REQUIRED_USE
-
-S=$WORKDIR/$MY_P
-
-src_prepare() {
-       default
-       eautoreconf
-}
diff --git a/media-plugins/gimp-resynthesizer/metadata.xml b/media-plugins/gimp-resynthesizer/metadata.xml
deleted file mode 100644 (file)
index 9a606d4..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
-       <longdescription lang="en">
-               This is a suite of GIMP plugins known as the 'Resynthesizer'.
-               The most commonly used is 'Heal selection' but all use the plugin
-               whose full interface is found at 'Filters>Map>Resynthesize.'
-       </longdescription>
-       <upstream>
-               <maintainer status="active">
-                       <email>bootch@nc.rr.com</email>
-                       <name>Lloyd Konneker</name>
-               </maintainer>
-               <remote-id type="github">bootchk/resynthesizer</remote-id>
-               <bugs-to>https://github.com/bootchk/resynthesizer/issues</bugs-to>
-       </upstream>
-</pkgmetadata>
diff --git a/media-sound/apulse/Manifest b/media-sound/apulse/Manifest
new file mode 100644 (file)
index 0000000..290cc01
--- /dev/null
@@ -0,0 +1,6 @@
+AUX apulse 488 BLAKE2B 20231c1041e1658e993ecc5f0dbd37f1d7e718aa5095b0bcb18b6c78639da5da29d5aa72fe77c774598d199e8284cceaab9fdb9aa07cf734957fb1c2d8d617c0 SHA512 2b1ebb3d574af2469f50a42e324b3367b5e08d3de00076620ce2133226d544ab2507e6d752ff3ed427319978ab5e1a0e73189368666a5c7f5ed61f1294417228
+AUX check-key-before-remove.patch 1888 BLAKE2B d8bee7f8acac213396d18d44740703746653a57d300c8d86967e83c24b73aca7d8ba5e91e38d7c3683d40c2a520cacb29210e2c1d739bf4b0403199beb9bda81 SHA512 e7edf75cdddc94a433ce387853cc59cfa40ef7fbdc955357141f42133bf9bde4e6528078d75c7d58001ab07dcaf209b0437a92445d770f6cd08f9b919e97caa4
+AUX man.patch 1054 BLAKE2B 37228832250f1c1e06edf79d00a4a4d7d5433f2d9b28ebb10eacb54bcfb7478d9ef64459e87f7f43a94be0b194eba024cde60175fc324ef6dad7a4ef9e2c1db3 SHA512 c2b05dd8c42f79994ae3be5df5ac495e95bfbc14355423faa75b23863418bad4bbc33524e2b86abc9e346678256c1ff454c160ebb5e09f48d466ef99cdfa407c
+AUX sdk.patch 4357 BLAKE2B ad43209ebf78f1f8937bfde54c88034a9c0f426caf62da5aa70b6171e29546af97c374765bed081cdf13827add3d02e5cdb6b30adccaae03318c102dba4cff65 SHA512 f1f743d049c120f3c8d6d1387577b53e9637881d9d5e007c55b4e42feca21b170ee24146c5fb0cc050c3eb1c26659dc6363e673710ae08c76f2844306a1ca01d
+DIST apulse-0.1.13.tar.gz 117369 BLAKE2B 8cf527daf21420a72e46968a3b07ab61029f404a2b6574ac1f08dd40528f3e6e4baf7e38f5914b0c89252e16eec5e8f3722be51e5a61b6a71c683e994740b4bf SHA512 366385ae2304f7ff697ba70951d0753a5b1630310922e3763fd0813a73e0b4088b715135295aa2fa9111b8edcf91d82849dc31346b292b2e9db598bcdd47b007
+EBUILD apulse-0.1.13-r2.ebuild 1880 BLAKE2B 689292db6b86fbb62ddc5a2b84afd15933b96632c3ac19cb46cbe9d473fa66486895abccd794fa4b915cd7afc0057ca54eb511cf4cfb8114ed255d941c19f0b8 SHA512 c95060daeb354d3019b9c77cb8e7f69b451b401a60b3068705f0081581e98933b4ce781a1625f6960ef1b7476a5d85844c94b0c86deba5a3270a63df486481f9
diff --git a/media-sound/apulse/apulse-0.1.13-r2.ebuild b/media-sound/apulse/apulse-0.1.13-r2.ebuild
new file mode 100644 (file)
index 0000000..76f3591
--- /dev/null
@@ -0,0 +1,77 @@
+# This is a modified version of the original ebuild from Gentoo GNU/Linux,
+# covered by the following copyright and permission notice:
+#
+#   Copyright 1999-2022 Gentoo Authors
+#   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications include:
+#
+#   * Removed pointless alsa-plugins blocker (2022-04)
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+inherit cmake-multilib multiprocessing
+
+DESCRIPTION="PulseAudio emulation for ALSA"
+HOMEPAGE="https://github.com/i-rinat/apulse"
+SRC_URI="https://github.com/i-rinat/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~ppc64 x86"
+
+IUSE="debug sdk test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-libs/glib:2[${MULTILIB_USEDEP}]
+       media-libs/alsa-lib[${MULTILIB_USEDEP}]
+       sdk? ( !media-libs/libpulse !media-sound/pulseaudio ) "
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+       "${FILESDIR}/sdk.patch"
+       "${FILESDIR}/check-key-before-remove.patch"
+       "${FILESDIR}/man.patch"
+)
+
+src_prepare() {
+       cmake_src_prepare
+
+       if ! use sdk; then
+               # Ensure all relevant libdirs are added, to support all ABIs
+               DIRS=
+               _add_dir() { DIRS="${EPREFIX}/usr/$(get_libdir)/apulse${DIRS:+:${DIRS}}"; }
+               multilib_foreach_abi _add_dir
+               sed -e "s#@@DIRS@@#${DIRS}#g" "${FILESDIR}"/apulse > "${T}"/apulse || die
+       fi
+}
+
+multilib_src_configure() {
+       local mycmakeargs=(
+               "-DINSTALL_SDK=$(usex sdk)"
+               "-DLOG_TO_STDERR=$(usex debug)"
+               "-DWITH_TRACE=$(usex debug)"
+       )
+       cmake_src_configure
+}
+
+multilib_src_test() {
+       _test() {
+               pushd tests || die
+               cmake -S "${S}/tests" -B . || die
+               emake test_ringbuffer
+               ctest -j "$(makeopts_jobs)" --test-load "$(makeopts_loadavg)" || die
+               popd || die
+       }
+       multilib_foreach_abi _test
+}
+
+multilib_src_install_all() {
+       if ! use sdk; then
+               _install_wrapper() { newbin "${BUILD_DIR}/apulse" "${CHOST}-apulse"; }
+               multilib_foreach_abi _install_wrapper
+               dobin "${T}/apulse"
+       fi
+       einstalldocs
+}
diff --git a/media-sound/apulse/files/apulse b/media-sound/apulse/files/apulse
new file mode 100755 (executable)
index 0000000..32633b2
--- /dev/null
@@ -0,0 +1,14 @@
+#!/bin/sh
+# Author:  Daniel Campbell <zlg@gentoo.org>
+# License: Creative Commons Public Domain Dedication (CC0 1.0)
+#          <https://creativecommons.org/publicdomain/zero/1.0/>
+
+# apulse needs at least one argument
+if [ $# -lt 1 ]; then
+       echo "Usage: apulse <app-path> [options]"
+       exit
+fi
+
+# Set library path for the application so it'll use apulse. DIRS is
+# replaced by the ebuild to include the correct paths
+LD_LIBRARY_PATH=@@DIRS@@${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} exec "$@"
diff --git a/media-sound/apulse/files/check-key-before-remove.patch b/media-sound/apulse/files/check-key-before-remove.patch
new file mode 100644 (file)
index 0000000..28fe0fc
--- /dev/null
@@ -0,0 +1,54 @@
+From bf146f0d711ce3e48cdc8ba772039d843d590b47 Mon Sep 17 00:00:00 2001
+From: "Miouyouyou (Myy)" <myy@miouyouyou.fr>
+Date: Sun, 20 Oct 2019 05:09:29 +0200
+Subject: [PATCH] stream: Check the key before invoking g_hash_table_remove
+
+Turns out that I hit a bug where pa_stream_unref would
+call g_hash_table_remove with a NULL key.
+
+Thanks for the lightweight and smooth error handling from
+Glib, g_hash_table_remove generated an ABORT call, crashing
+some Unity3D games I was trying to start.
+Now, you also CANNOT call g_hash_table_lookup with a NULL
+key. That also generate a crash... Ugh...
+
+So, yeah, we first check that the key is not 0, then check
+if the key is actually inside the Hash table and THEN remove
+it.
+
+Note, here's my ~/.asoundrc, just in case :
+defaults.pcm.!card Audio
+defaults.ctl.!card Audio
+
+Audio being :
+card 3: Audio [DigiHug USB Audio], device 0: USB Audio [USB Audio]
+  Subdevices: 0/1
+  Subdevice #0: subdevice #0
+card 3: Audio [DigiHug USB Audio], device 1: USB Audio [USB Audio #1]
+  Subdevices: 1/1
+  Subdevice #0: subdevice #0
+
+I'm using a FiiO device for sound output.
+
+Signed-off-by: Miouyouyou (Myy) <myy@miouyouyou.fr>
+---
+ src/apulse-stream.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/src/apulse-stream.c b/src/apulse-stream.c
+index 84b18bb..1de4885 100644
+--- a/src/apulse-stream.c
++++ b/src/apulse-stream.c
+@@ -1019,7 +1019,11 @@ pa_stream_unref(pa_stream *s)
+     s->ref_cnt--;
+     if (s->ref_cnt == 0) {
+-        g_hash_table_remove(s->c->streams_ht, GINT_TO_POINTER(s->idx));
++        GHashTable * __restrict const streams_ht =
++            s->c->streams_ht;
++        void const * key = GINT_TO_POINTER(s->idx);
++        if (key && g_hash_table_lookup(streams_ht, key))
++            g_hash_table_remove(streams_ht, key);
+         ringbuffer_free(s->rb);
+         free(s->peek_buffer);
+         free(s->write_buffer);
diff --git a/media-sound/apulse/files/man.patch b/media-sound/apulse/files/man.patch
new file mode 100644 (file)
index 0000000..a26e32d
--- /dev/null
@@ -0,0 +1,30 @@
+From 2c2bf366599d957837acbdf54eb300526fc125a1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=C3=89rico=20Rolim?= <erico.erc@gmail.com>
+Date: Tue, 5 May 2020 14:24:52 -0300
+Subject: [PATCH] Add ENVIRONMENT to man-page.
+
+---
+ man/apulse.1 | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/man/apulse.1 b/man/apulse.1
+index cd67cf3..df75c60 100644
+--- a/man/apulse.1
++++ b/man/apulse.1
+@@ -36,6 +36,16 @@ compatibility layer between OSS programs and \fBALSA\fR, \fBapulse\fR was
+ designed to be compatibility layer between PulseAudio applications and
+ \fBALSA\fR.
++.SH ENVIRONMENT
++
++The following environment variables can be used to configure the devices used
++by \fBapulse\fR. Try \fIhw:0,0\fR, \fIplughw:0,0\fR and the like.
++Refer to the ALSA user guide for a full list of device names.
++
++\fIAPULSE_CAPTURE_DEVICE\fR: Can be used to configure the capture device.
++
++\fIAPULSE_PLAYBACK_DEVICE\fR: Can be used to configure the playback device.
++
+ .SH RETURN VALUE
+ \fBapulse\fR is a simple shell wrapper script that calls \fBexec\fR on the
diff --git a/media-sound/apulse/files/sdk.patch b/media-sound/apulse/files/sdk.patch
new file mode 100644 (file)
index 0000000..bc12090
--- /dev/null
@@ -0,0 +1,103 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 072f3b1..5fe6bcd 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,5 +1,6 @@
+ project(apulse)
+ cmake_minimum_required (VERSION 2.8)
++include(GNUInstallDirs)
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -Wall -fPIC -fvisibility=hidden")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror=implicit-function-declaration")
+@@ -28,6 +29,8 @@ else()
+     include_directories(${PA_INCLUDE_DIRECTORIES})
+ endif()
++set(INSTALL_SDK 0 CACHE BOOLEAN "Install SDK files to build applications with apulse (Pulse Audio headers and pkg-config files) instead of system ones")
++
+ link_directories(${REQ_LIBRARY_DIRS})
+ add_library(trace-helper STATIC
+@@ -72,12 +75,30 @@ target_link_libraries(pulse-simple ${SYMBOLMAP} trace-helper ${REQ_LIBRARIES})
+ add_subdirectory(tests)
+-set(APULSEPATH "${CMAKE_INSTALL_PREFIX}/lib/apulse" CACHE PATH "library installation directory")
+-set(APULSE_SEARCH_PATHS "${APULSEPATH}" CACHE PATH "directory list for LD_LIBRARY_PATH")
+-configure_file("${CMAKE_CURRENT_SOURCE_DIR}/src/apulse.template"
+-               "${CMAKE_CURRENT_BINARY_DIR}/apulse" @ONLY)
++if (${INSTALL_SDK})
++    set(APULSEPATH "${CMAKE_INSTALL_LIBDIR}" CACHE PATH "library installation directory")
++
++    configure_file("${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/libpulse.pc.in"
++                   "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/libpulse.pc" @ONLY)
++    configure_file("${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/libpulse-simple.pc.in"
++                   "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/libpulse-simple.pc" @ONLY)
++    configure_file("${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/libpulse-mainloop-glib.pc.in"
++                   "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/libpulse-mainloop-glib.pc" @ONLY)
++else()
++    set(APULSEPATH "${CMAKE_INSTALL_LIBDIR}/apulse" CACHE PATH "library installation directory")
++    set(APULSE_SEARCH_PATHS "${CMAKE_INSTALL_PREFIX}/${APULSEPATH}" CACHE PATH "directory list for LD_LIBRARY_PATH")
++
++    configure_file("${CMAKE_CURRENT_SOURCE_DIR}/src/apulse.template"
++                   "${CMAKE_CURRENT_BINARY_DIR}/apulse" @ONLY)
++endif()
+-install(FILES "${CMAKE_CURRENT_BINARY_DIR}/apulse" DESTINATION bin
+-        PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
+ install(TARGETS pulse-simple pulse pulse-mainloop-glib DESTINATION "${APULSEPATH}")
+-install(FILES "${CMAKE_SOURCE_DIR}/man/apulse.1" DESTINATION share/man/man1)
++
++if (${INSTALL_SDK})
++    install(DIRECTORY "${CMAKE_SOURCE_DIR}/3rdparty/pulseaudio-headers/pulse" DESTINATION include)
++    install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig" DESTINATION "${CMAKE_INSTALL_LIBDIR}")
++else()
++    install(FILES "${CMAKE_CURRENT_BINARY_DIR}/apulse" DESTINATION bin
++            PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
++    install(FILES "${CMAKE_SOURCE_DIR}/man/apulse.1" DESTINATION share/man/man1)
++endif()
+diff --git a/pkgconfig/libpulse-mainloop-glib.pc.in b/pkgconfig/libpulse-mainloop-glib.pc.in
+new file mode 100644
+index 0000000..957e3b2
+--- /dev/null
++++ b/pkgconfig/libpulse-mainloop-glib.pc.in
+@@ -0,0 +1,9 @@
++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
++
++Name: libpulse-mainloop-glib
++Description: PulseAudio GLib 2.0 Main Loop Wrapper (apulse)
++Version: 5.0
++Libs: -L${libdir} -lpulse-mainloop-glib -pthread
++Cflags: -I${includedir}
++Requires: glib-2.0
+diff --git a/pkgconfig/libpulse-simple.pc.in b/pkgconfig/libpulse-simple.pc.in
+new file mode 100644
+index 0000000..57d917f
+--- /dev/null
++++ b/pkgconfig/libpulse-simple.pc.in
+@@ -0,0 +1,9 @@
++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
++
++Name: libpulse-simple
++Description: PulseAudio Simplified Synchronous Client Interface (apulse)
++Version: 5.0
++Libs: -L${libdir} -lpulse-simple -pthread
++Cflags: -I${includedir}
++Requires: glib-2.0
+diff --git a/pkgconfig/libpulse.pc.in b/pkgconfig/libpulse.pc.in
+new file mode 100644
+index 0000000..edcbbd8
+--- /dev/null
++++ b/pkgconfig/libpulse.pc.in
+@@ -0,0 +1,9 @@
++libdir=@CMAKE_INSTALL_FULL_LIBDIR@
++includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
++
++Name: libpulse
++Description: PulseAudio Client Interface (apulse)
++Version: 5.0
++Libs: -L${libdir} -lpulse -pthread
++Cflags: -I${includedir}
++Requires: glib-2.0 alsa
diff --git a/media-sound/picard/Manifest b/media-sound/picard/Manifest
deleted file mode 100644 (file)
index eebc80c..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST picard-2.4.2.tar.gz 4096438 BLAKE2B a44e82ac1a0ad776eb371309ad13f0a5e9afe4a0fe8b898dbbcb71ac554da3ff7cf4a2d88a8e476c811dfeb515ca7371ca8effb326b9285e6c53ebeac6795c15 SHA512 17f6015dd06a1282e6dc216726a74cc7bf2a54a5694e09e2d7ae6f1b4c85f2f60f3de1218d952fa2c4e088b3330d1fd12e4b41cf819d7c3d2d96278532338e15
-EBUILD picard-2.4.2.ebuild 1625 BLAKE2B 7c2be47b06fa47bb929ca77a14223bc4a0b36d3bf4ada6cc0fda6225403ea7e1e34d1374e13899e762f86ad0133ca8ab9fdba7ba9187d17f8c2cf38349707d27 SHA512 078d4118194374548acbc6316a7d5b654af07e35edd3a8c0a20b37f6c8867f4dbfb3613cd15a8b1ef6bbd3e5e8d3721441eed882de1fc796c0c907a216a677e9
diff --git a/media-sound/picard/picard-2.4.2.ebuild b/media-sound/picard/picard-2.4.2.ebuild
deleted file mode 100644 (file)
index 513e8f9..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-DISTUTILS_SINGLE_IMPL=1
-DISABLE_AUTOFORMATTING=true
-inherit distutils-r1 xdg
-
-if [[ ${PV} = *9999* ]]; then
-       EGIT_REPO_URI="https://github.com/metabrainz/picard"
-       inherit git-r3
-else
-       SRC_URI="https://musicbrainz.osuosl.org/pub/musicbrainz/${PN}/${P}.tar.gz"
-       KEYWORDS="amd64 x86"
-       S="${WORKDIR}/${PN}-release-${PV}"
-fi
-
-DESCRIPTION="Cross-platform music tagger"
-HOMEPAGE="https://picard.musicbrainz.org"
-
-LICENSE="GPL-2+"
-SLOT="0"
-IUSE="discid fingerprints nls"
-
-BDEPEND="
-       nls? ( dev-qt/linguist-tools:5 )
-"
-RDEPEND="
-       $(python_gen_cond_dep '
-               dev-python/PyQt5[declarative,gui,network,widgets,${PYTHON_MULTI_USEDEP}]
-               dev-python/python-dateutil[${PYTHON_MULTI_USEDEP}]
-               media-libs/mutagen[${PYTHON_MULTI_USEDEP}]
-               discid? ( dev-python/python-discid[${PYTHON_MULTI_USEDEP}] )
-       ')
-       dev-qt/qtgui:5
-       fingerprints? ( media-libs/chromaprint[tools] )
-"
-
-RESTRICT="test" # doesn't work with ebuilds
-
-python_compile() {
-       local build_args=(
-               --disable-autoupdate
-       )
-       if ! use nls; then
-               build_args+=( --disable-locales )
-       fi
-       distutils-r1_python_compile ${build_args[@]}
-}
-
-python_install() {
-       local install_args=(
-               --disable-autoupdate
-               --skip-build
-       )
-       if ! use nls; then
-               install_args+=( --disable-locales )
-       fi
-       distutils-r1_python_install ${install_args[@]}
-}
-
-python_install_all() {
-       distutils-r1_python_install_all
-
-       elog "If you are upgrading Picard and it does not start, try removing"
-       elog "Picard's settings:"
-       elog "        rm ~/.config/MusicBrainz/Picard.conf"
-}
diff --git a/net-nntp/pan/Manifest b/net-nntp/pan/Manifest
new file mode 100644 (file)
index 0000000..f7e29de
--- /dev/null
@@ -0,0 +1,2 @@
+DIST pan-0.149.tar.bz2 2328015 BLAKE2B 6c40c215a63f14bc0a9585c0476f5c92c96c0547de67767b353ec79c0999a1ad3a9e3fd23740ae25f29c32ce51ac3d48995aac622997f16ccd06ab842ed9a653 SHA512 2e558f53bbc0c9ae907c566fe8efd56ed2ef0edeffa23f922b63c956f16096c2ad1ea0bd43c31f82ee096899550bf47cb7011f354a6941a1d53cb6c6eaa5e5a6
+EBUILD pan-0.149.ebuild 1389 BLAKE2B 3b01b468928056c3bf14a80fce8c2829720efc74fbeefec1adf73a864fc079a765df9bb3b843f476d4615b636abc18a7ddd1460345cbdf9bf571cf5064152d05 SHA512 dfc2ddcf3c7600a9175713bcc7b0961358ee4ff3aaec43fc9a640e89c537b0f94a279443f653fa10a4d0e6ae3536da82e1c2aeb534261d356eefb5d912f5523f
diff --git a/net-nntp/pan/pan-0.149.ebuild b/net-nntp/pan/pan-0.149.ebuild
new file mode 100644 (file)
index 0000000..2915a7a
--- /dev/null
@@ -0,0 +1,53 @@
+# This ebuild is a modified version of the work originally distributed with
+# Gentoo GNU/Linux, covered by the following copyright and permission notice:
+#
+#   Copyright 1999-2020 Gentoo Authors
+#   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications are:
+#
+#   * Update for gmime-3 support in newer pan (2022-06)
+
+EAPI=6
+inherit gnome2
+
+DESCRIPTION="A newsreader for GNOME"
+HOMEPAGE="http://pan.rebelbase.com/"
+SRC_URI="http://pan.rebelbase.com/download/releases/${PV}/source/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+IUSE="dbus gnome-keyring libnotify spell ssl"
+
+RDEPEND="
+       >=dev-libs/glib-2.26:2
+       dev-libs/gmime:3.0
+       >=sys-libs/zlib-1.2.0
+       >=x11-libs/gtk+-2.16:2
+       gnome-keyring? ( >=gnome-base/libgnome-keyring-3.2 )
+       libnotify? ( >=x11-libs/libnotify-0.4.1:0= )
+       spell? (
+               >=app-text/enchant-1.6:0/0
+               >=app-text/gtkspell-2.0.7:2 )
+       ssl? ( >=net-libs/gnutls-3:0= )
+"
+DEPEND="${RDEPEND}
+       app-text/yelp-tools
+       >=sys-devel/gettext-0.19.7
+       virtual/pkgconfig
+"
+
+src_configure() {
+       # Wait for webkitgtk4 support
+       # gtk3 support is still not ready (follow what Fedora does)
+       gnome2_src_configure \
+               --with-yelp-tools \
+               --without-gtk3 \
+               --without-webkit \
+               $(use_with dbus) \
+               $(use_enable gnome-keyring gkr) \
+               $(use_with spell gtkspell) \
+               $(use_enable libnotify) \
+               $(use_with ssl gnutls)
+}
index 73a41e597660bf10d1093e8152b4f49a9f8f91dd..7816a7c57c737836a0d914984ba1b50c3b6b1165 100644 (file)
@@ -12,4 +12,4 @@ AUX man-1.6g-fbsd.patch 366 BLAKE2B 882b3b3048e3dcb4f64f38e94d7603ae577038dce663
 AUX man-1.6g-nonportable-echo.patch 607 BLAKE2B c04845b50fc1f7e962ff40e6173e14293c83b675c1db87de9f9a442ac8fdb4a27fe75d6d83a587da611f7fee214a79e4a449bd3d5f00afa6925798068674fb64 SHA512 ddbbe14755a0ccea627a734c37428485a5f310ab916a230707b45ed503e629518cc7ea81aa5097b0bd403f2fa6e1305dce246c01e791987f5f11901b1d100b6e
 AUX man-1.6g-xz.patch 1848 BLAKE2B 6a0855eda72386a0f48e715e9ba620b3473b3aa854c42fabd93bc02b7c9cd44fbd07f2608257fe953bdfa9b02e8fa35876d651ba5aab99937fe42325fcfb7b69 SHA512 6a883fa800a6d3b11c76a70e1a31c0736d380271c9f21315863ddaca9529e3d613b587724287fb94bab2b0d97215f6ccb3f1438a5c5e339e5a2edf872c92515c
 DIST man-1.6g.tar.gz 256906 BLAKE2B f13e21400aecd41a5f001b37bf3c6f9fd8463ff627f761cfd0a6846c7b8dac48a6dc87ff2cf4786b55800a558141cffcc0d66420943e46f708292f5653b42d51 SHA512 c786fa2201aed92293e5590dc3ad5d550cf14e5059fa274ef7719af86ee4c892e747576495b6dc0a09286e73e2f0f0caf860216e0c8032d9ef13e5d26853048b
-EBUILD man-1.6g-r2.ebuild 3930 BLAKE2B e6af0c063cce75b40ac6ab16581586304fb28ca0f0c53ed04ad52fe980c902ab484be01bbc947a558782402297c2e32e1d3fb9fb55101ed875cf65e94c6c4003 SHA512 e3cd0c582bfeb01155bed8ffaf52f095a522f65bfcd15e92dc4484df41b021b57fd5e915c2dc380a2ae02dd026e421d737b932b30fc50eb9629fc685f8d44075
+EBUILD man-1.6g-r3.ebuild 4155 BLAKE2B 22fb00df938c79208486fa99e2fe99a21784a48a4d44a39ff15ab2026d7281b3848ec712f6173fc40367601ea75c1189b6fc64f4088be17b4269262b6aea578b SHA512 aa6ee1a335d10aaadd7f983f5e9539077bef154e85953af5fb2ddb1bc4a1b95f0328542a86384a7bd23526cce147fedca388e045fa510d413583b48d07e2f7aa
similarity index 89%
rename from sys-apps/man/man-1.6g-r2.ebuild
rename to sys-apps/man/man-1.6g-r3.ebuild
index d4574946b723b23bfc4b3d43fbe348b1049f3a69..853c4af42c9c2bf4d11c21839dff8552da9ca39b 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright © 2018 Nick Bowler
+# Copyright © 2018-2019, 2022 Nick Bowler
 # License GPLv2+: GNU General Public License version 2 or any later version.
 # This is free software: you are free to change and distribute it.
 # There is NO WARRANTY, to the extent permitted by law.
@@ -8,10 +8,17 @@
 #
 #   Copyright 1999-2018 Gentoo Foundation
 #   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications are:
+#
+#   * Fix nonportable "echo" usage (2018-10)
+#   * Convert to EAPI 6 patch application (2019-03)
+#   * Improve /etc/cron.daily/makewhatis installation (2019-03)
+#   * Convert from user.eclass to GLEP 81 user/group packages (2022-12)
 
 EAPI="6"
 
-inherit eutils prefix toolchain-funcs user
+inherit eutils prefix toolchain-funcs
 
 DESCRIPTION="Standard commands to read man pages"
 HOMEPAGE="http://primates.ximian.com/~flucifredi/man/"
@@ -27,12 +34,9 @@ RDEPEND="|| ( >=sys-apps/groff-1.19.2-r1 app-doc/heirloom-doctools )
        !sys-apps/man-db
        !<app-arch/lzma-4.63
        lzma? ( app-arch/xz-utils )
-       selinux? ( sec-policy/selinux-makewhatis )"
-
-pkg_setup() {
-       enewgroup man 15
-       enewuser man 13 -1 /usr/share/man man
-}
+       selinux? ( sec-policy/selinux-makewhatis )
+       acct-group/man
+       acct-user/man"
 
 PATCHES=(
        "${FILESDIR}"/man-1.6f-man2html-compression-2.patch
index 4d4bc1374fef447158419003b8cd6a68b53a7788..25da951a6c48d2c806c5c61c3f58241040dd1a2a 100644 (file)
@@ -1 +1,2 @@
 EBUILD man-0-r3.ebuild 436 BLAKE2B 57053faa703d6cdd8f5cfccaa5583aeb70d67997fabf0dd5c66e90fcb4aa7fa0a619e0f95509d0290a62d8e810ede4fe3d8fb2ec390458a22556d9f1a3745c95 SHA512 1289ab250fcd8f76ede9697872da3bb482f621516e95b60f272c44a2adf7afdec4334ab04b723e0898d6ba606a39db5b8d363e54dee344f72d529a1cf121356f
+EBUILD man-0-r4.ebuild 455 BLAKE2B a645748286f3a89ff33ea107fa61dce45c6687f69587a41c6231355ca485d4435e1b4ca81b6000faa73dced907f71a8b6fae844ebadc3e3408500da867c34697 SHA512 b771fdc301cab3fa52fcf354464161196d15c4e9b98bba2617f6a2f484522e286c8f6c48ef65896043e2d0a19c3d31005e508f276b0c9fee1a9c3319e1b235b3
diff --git a/virtual/man/man-0-r4.ebuild b/virtual/man/man-0-r4.ebuild
new file mode 100644 (file)
index 0000000..99dd20f
--- /dev/null
@@ -0,0 +1,16 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Virtual for man"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+
+RDEPEND="
+       || (
+               sys-apps/man
+               sys-apps/man-db
+               >=app-text/mandoc-1.14.5-r1[system-man]
+       )
+"
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
new file mode 100644 (file)
index 0000000..52fa9e4
--- /dev/null
@@ -0,0 +1,104 @@
+AUX firefox-52.9.0-blessings-TERM.patch 2276 BLAKE2B 2413368995dd8421a634e2a50f4bd9ee01062043a18bef4cd07645ecca05459891ff5aaa294f3abbc85e7ed9515e8936ede8b7faacfb19fadd81ec98ff8080b0 SHA512 08f8d2ba3258b3ef6bda1d2f8ea429e579e1f616dd940f6dc25ef231199d9155b22631f4366908c77ec5b9c4ce63310c9b9e075a6a7a7503b6423e13082f2b91
+AUX firefox-52.9.0-fix-idb-name-conflict.patch 10116 BLAKE2B 0f285f2918b1c3f50c5b31cfb6527b8cdf4593f4a21f09a6ee200f7c2c8b0840b99eac58c6a0dc24beb873c7cd1b451ce3cc9d39f8e336d2c4094d70766bb9e9 SHA512 848aef9eb4eb5e677e69522be3051afb1bfa508f098f8b06eec9f224356c2480f10a36e053c8555d74454ad40ecca13708c2abb140ad857d9bd5663a0b469ed3
+AUX firefox-52.9.0-fix-missing-includes.patch 1238 BLAKE2B 7046a0c6e5846732ef7ab3714c2e98bf6b77d0a711a5ae616cadb3dc65f2c82cbf2efdc4af932d0e2b1eb1497b6124b9b453d143f52d2e07d6531535738d5279 SHA512 ef6aa3c6d50ced3cde973429b3ce9a227e608463cdb8130cb3a4329ce01694765782c4cfa4a14284e29d98262bdf33cc5b7bcee7a925135d580c12139e74860f
+AUX firefox-52.9.0-fix-thebes-templates.patch 5806 BLAKE2B 568d3bd61f43daa84957c719f38bad93c8cbbdb863156c9f350d96a2af020ff3c1f32e3dd211b2636f822bb34116c98c82c101e25d3d0b3c147b07ee77279467 SHA512 5d5f28fbd3cd6818aa11bf8dd2d14e6a6887f2b44d04a5e824696151e176273a7a2a384772ba748761ff2c2c9c6e1f6b43d6355e64a293cb3b76715313194798
+AUX firefox-52.9.0-glibc-2.30.patch 492 BLAKE2B a73d3da636cb65c882ad4f06a8aae26df32ce77aea74b8d9477eb7f6aa9eb1046ad9acf47f4a70dde55c9c98da6506846f83e75a4cf5f09d63d56a883effa8f6 SHA512 d028c35d3e33f2cfc1f3e806d16975810be5a5fad4b4e9c68a02d0159aed9258b5540728bbcadd31d7959691cfed5940e90b47a9733d1b1a6e1b944216e38174
+AUX firefox-52.9.0-glibc-2.36.patch 2475 BLAKE2B 93c6eeab26f5fcdc5a9a5acf6a78834b35839dd7511499edea0fbb9ea70b7c3a95982b4488619f6c132ec03f63f97c7b4c7c22b02d77d010bd469f180f60175c SHA512 3efa72a036a49f48461f6b36e39a71c79c03e7a41e55cc9195175886fc299e6bcf5966c98b52200aa0b84c3eadbe273a5db0dc88087165dfbf43ec3cf479c5bd
+AUX firefox-52.9.0-less-werror.patch 395 BLAKE2B 32310b52988d6b54a4acfdba5fbb0b2baff5a5b1383b5e1336dc55c3c11c9f8d444bbdb68ed280fdece828c0d4b6969e86a60a6bd6c0bcc50c4530f6e661b4a2 SHA512 caacf8522ce05fa1fe1461719cf8381a2dac4f928c0077f7862c3b41103f9bfcc7710cd053e9d1f68c6bfd86406c68a960538a9ad4e6623a3edbb7480f01700f
+AUX gentoo-default-prefs.js-1 821 BLAKE2B 2af9a9e9f3a71fae918a4098397e931c02df5a8021d0bc87ebc4981076674aba99d88c5b8acf2380c915e92ad07a7636891ea8a07cfc850e9c4d15e58d0cd276 SHA512 b63542c51edfe0158ce487b317ea6d36ffc17cf8457534adb6aa3f613d9a027f4285c9dcf76eb1b96de6bbc10ba09948fa6c081e00cfb25ca47450cbc32923f2
+AUX gentoo-hwaccel-prefs.js-1 100 BLAKE2B 08be790b58524077a5681cc06e10890b72dc6e8155c9e03e6ef9165035087d4b8cbcac4a6b8997f61db3721895c9247a12171eec7d082fa15e1d5312bf51fbee SHA512 cf5385c793056e66b8853fd641dce2e7804d6878675afd24485487f2201801e1bdd5d27c15cb0d483eb34bfb75e7a21c01f1bbf701cb1c2dfa48f8f6422ed42c
+AUX icon/firefox.desktop 277 BLAKE2B 944a7b4706ba5f6b93a1369416adc31203dfaf0d12291a035ce05830f2c79bd14d1f7d5324c16d3e5be21fdda2a9237223901030a974f3ff778b1def7f8bb3e3 SHA512 99b57d36601bba420bb2e6647e0fa4baa1c31f15bf7c602ac43a347d7fe78f4350b3fb10af3a709a5aac02a4c4f283dcfacd780bacb43e7e8ed46b83b97d6f4d
+DIST firefox-52.5-patches-02.tar.xz 15084 BLAKE2B 538dd61dbb7b290add4782b323a62f9ab4dbc57326a9a085710d207752118c504eb030a8741c1eed2e281c8d18e5453210b1905d71439250caa588137bbc37d0 SHA512 b80f9acaf49226cd5c2864714826c5b0e7e918e94c31ec81521b90c47edbb88ea85faa34fc22791efefbcd3867ddc413c563de58ca0f8ce21e10a3858899efce
+DIST firefox-52.9.0esr-ach.xpi 420286 BLAKE2B 41643f6cdc43722dc2a61249720902a503c5f547979e80ace08bef097e2efef7b67d6d44b04a66965ee80722194b2183feed15d3b2f13d5b6ccdc993415eb9e3 SHA512 8a28262b9bb44592801e063348401924b2dc8ab1b4e042d11f560d892e276b7d14279a1a2ab3f6ad27068113969ca59377493839f1efbdd61a77f5246815989c
+DIST firefox-52.9.0esr-af.xpi 429469 BLAKE2B 224617fcee13cbc62863dca9ecde4f45f1dc1a83535780a0f3b13f74ddd492ffd46b544ba93cb0ba505e99afc7327a5398c7bce735ba2d24612ea5ea80717221 SHA512 a723edc72c1e373e250fb878a73024054c670f0fd3ceadbd4a1306981f8cb560ec8f078a017cafb84dc49a11bb0d17046b102a6f67dba65b67d64946d909b189
+DIST firefox-52.9.0esr-an.xpi 437887 BLAKE2B 5be731c8d5f044c773ae34ac27009dae5f8bf9c87fb0c6a50d64e752810fd497533b74a5d409b98f53fbfab58b037904c418f5fe45da70c9da79ee1be3d6293f SHA512 07cbdfc2296a96b9fa9d286d803b1acabc14bffedefaf009ffb324909e4c4a923ca4a023cab92562821c1a5d30abd23debbc825ecd1121476924216c3668bed8
+DIST firefox-52.9.0esr-ar.xpi 466028 BLAKE2B e431e58c94de1c00d019534c4025977861864d1eaa32f5acc51052252ef7d20818464fc4c92b39ca955eff063b4b6df50cc3ccc0fb2322412d4d711dddc9def8 SHA512 037336c659890256fecc4bf0028c14a73a6e52fd0524da29bf4d58efc61a89a66fcb8a32f4a31e789e0ec7a7a376ddc232f9e0f850fc485e7e908b2caab00b96
+DIST firefox-52.9.0esr-as.xpi 479635 BLAKE2B 7ba88cc70b21a90dfce4ffee844434ea4ee756cf8d0d425f82e71009d325d74b8728fb28a7b8c1ab0826accf71144b126ee6f91d84821dd3ab037864aaf15303 SHA512 62038ed87f45c865a3fe2d10487ba69dc48cdb6f166e040cb2942f02afb9222bf7ff325bb47d2c0dd3582e752fe20e89440fd488028dd3f1b9cba5f696107a6a
+DIST firefox-52.9.0esr-ast.xpi 432775 BLAKE2B 391aeaba518ac560d789fc7b6771b08c7f2437075767231b13e5575cb552d5fc388329ea794843a43dd4dd6ba68831fa28330a6120eafda60b215899543589c4 SHA512 97582f59348f18ec858bf09d8e496632ed618088d88a030a4d2801627f6c54c70e67595008483065e1df33d02661410fa49c17fe5a6625c7fb97140bb1749ea1
+DIST firefox-52.9.0esr-az.xpi 454923 BLAKE2B d6172b0ec8e90f843617f1b5e749b722dad8adfda51d5a0c8a464238202884f11f0583a19e4bbc005eea0d5bb94a0637d9be34693ccd78c473ddfb70bb52ffd4 SHA512 beb7758cc3d369b14dfe606144e1c6e64c3a6f6178f69ee91a64e5a3fb9df827e103afc6d8490a3a1359efd766d1c73bbfe2d00814c66f9d95d13c3be9a9d81f
+DIST firefox-52.9.0esr-bg.xpi 487891 BLAKE2B a1acf93b23a68374f1af0e4cb017ee3da8ab33c54891b1aad62e6e5ed7ce5616f646df988a82fe58fb92b2d844de0cf5f8bc882a46166695fda1980b4d009d1e SHA512 cf416bfebeb56c32ac0a985cd3e3c532f7f6900833dd15c3d1ddb915189a18a382376b8b0909c1d4ba4beedd4dbbe652ebaa29fa0f1a480736effd1b2c6992a5
+DIST firefox-52.9.0esr-bn-BD.xpi 504634 BLAKE2B 17b4b7c8befe136b99ce869223dbf7e7172c878e07a0705726a04b41539596639c5c8299b01e50dba19b4d88a7da59ea9dd311abe43968f517b9181e991ecd5e SHA512 092e92a29700c9d5fe344aa027a5a01a6ffbae4aca4e15e852c5fa032eea81d7744f8901712efcca5819813d3d37877d104c3d96abf9c57732d3fe3a13a1bfe9
+DIST firefox-52.9.0esr-bn-IN.xpi 502114 BLAKE2B 26b90f95451b92d5c112e70687a99b9a24e6f3f948fac9fbd46aefb11d19e02a498111eec9673e3289a56995a92df0d86f7401e744b5e2ddf9e586565d0b79f8 SHA512 767016400fa3f582fe11e120250f158347270d66ba0b297961a3f362f09bbcaa8ad588c0b5ec25682e3b87bebb0cd68279d9a52e6ba91cf9f33264b7a63b5cfd
+DIST firefox-52.9.0esr-br.xpi 428216 BLAKE2B 173495fad24e1bd24b2f8fd47e05256df47866bb0af3d1f254dd747cd753ef2d6555e83a1733a8bfc56b0c0b2ff83e5c8dca0ff0360c10354ff82def4c0233ef SHA512 78bc39ae71ce041d6cf8c202f6f0f9370711113363b6b01c14157b0762455c9f2da86539c77574d47402d3765bd05c6ab6798f9ffdd8b512b1c50fab768ce86b
+DIST firefox-52.9.0esr-bs.xpi 434428 BLAKE2B 9f29aad62bab6480653a891249d2e922ee0828d6660e511f40ef064affe73486bd4e242831497f437477246cf8cc90e0517cfcf3575df8530a66eea6ea67458c SHA512 5d1377013e08e066b683d6b25677eb9fef4aa10a8fe3999b2e332c7f9971dcd571787e0268baf65a9288ce6a4bfdb6cb763692f0334ef76a7c7abff0a9467e28
+DIST firefox-52.9.0esr-ca.xpi 443304 BLAKE2B 9d9496eed906a40ca8c69e380c7849d5d927af1ec1cf754d6ee3da79d6de9c99551269a7b4593ec3a29594724c2c232b67441d3423bc54fe96d52862f1e85f4e SHA512 dbb2b09fbffbe3b69916ec36658764820e69125f51fae7be490e1d903444db7fdfea05736c4ab791b6cda3070aba592a736c787bb7fe283820fc91009ec10e4b
+DIST firefox-52.9.0esr-cak.xpi 451911 BLAKE2B 4dbb016fe0f5dc5634d94f564514672583a324d2bf48f067aa2c911b0b6dd4239e9fea9405d4f4e34ccbaa48cd80a04218d229cb54a41ceebaccb76894c9aa07 SHA512 266bf767a4cc8ee7611b5e92903eecb8ff0f89b13cabb5bd2cb547a6345e20a52f1bcb59ed34f0b8f991c46d03062b0bb0a6edcf4732f7ca800f79cb1675626f
+DIST firefox-52.9.0esr-cs.xpi 444075 BLAKE2B a39d90b7cdcc5bcc45e8bfbe971bd80036f1b01154dd65d14d2d68f2ed0468938d2a58e9db11841fdfc04c63496ba37fefef76da2b9c0b9a102a20bff38a1842 SHA512 8e3ca731a99c6aa774564aa8aba0de8ce0cd2c5c81d9f1bfd31a78546f03d2ba07999d296cd12bf02ebdff6e4874d7a82e58b412d21f6862dcfea296e90ef3fc
+DIST firefox-52.9.0esr-cy.xpi 429300 BLAKE2B dba43dd71e970295b810bd6d27a7ead237e3ac67b83c5700b7cc26085b58c6ec3130f63146f72e3c7e688606905ed58ad4712d3ea535b96a91be47337ad36f81 SHA512 dc643461bf3ea0b7ef480bdef805522d0eac83ca0e41e9fa211282bc7e7b8110a5e06c76789e5d3f9f55da2699769c8622d06b351ad86569a2852d06ca4ac0cf
+DIST firefox-52.9.0esr-da.xpi 424394 BLAKE2B 64018098d96ffda08caa6b260bfd6820844d94fb8d2bf02677812d10934068ed6ac7439bed93c559b16ecf731ef6f3744718bb98f390485015491a2667260c54 SHA512 80dc86a3dfa15c5cb4dfd349411a226267f12ecdb548e27f436750feb126bfed06d60389da3184432617f02853d62e8a2d98bcfb19c154f67144d42604435023
+DIST firefox-52.9.0esr-de.xpi 435228 BLAKE2B 7daaf9b278dd4cf48c5183dd92978f01719d06cb88a6b15c3e8059c423be9ef2a17760934e2746a3dff5e3211fe90109c53b60cb5a6d2c53ced87a84d1a965a2 SHA512 827fe20427fa3f9b81e1c256418c27ae917f964960ae3baa38ac3754530b682fbd6b54cfb8eaa943992180b16d72a474ad84fa7b02e1f809cf1c973a09c3840a
+DIST firefox-52.9.0esr-dsb.xpi 452168 BLAKE2B 07a033dc80b73446d2342eb1a549a9b96a7ac5ab58ae53d2544a6c60f05767c350958d0c188b8e768b29880fb02b561ffa925bc80d480f5c18028d353782363c SHA512 494cfefce19ad75f254a4fda494f8a215773bff610ee88bd241ba034353ee2e4b7327791eb8c658a30b249e62e2f5430cff894c3e8e9064fe9f567e5c5e2669e
+DIST firefox-52.9.0esr-el.xpi 509237 BLAKE2B 9391cd81457b15d5aa0bd62891e4e7e480a090e61e3cccdc789d8ac055a26071ba58963daeb66ffa8a2476f1d61ef55cd22ac196eb99dbca0b09a8d9944e5462 SHA512 9f4fc865795804b67d89542b28fe82c18a7b9ccdd3683928f876e24442336c43100a7881e4127439a1bf97dab90d919dd88e464410d321fe10a2cde116e8c38a
+DIST firefox-52.9.0esr-en-GB.xpi 412038 BLAKE2B c5001c4f3a65d2427c8eab998852e7ef33f62735f6e423521e8bb281ff85bf8dadda7888aa3555b9e40a6d8ebb438345a21375fc1df4c54913f43e46f26993c2 SHA512 c16fb52dbb09c8e6ffdcb19c3e4ceca780ec69d521f5f422da3b0c58bce8da15d34c5c85dbf3f004865040f03de0c8c0b8ee0c4b21dfbc2be00dca04fc82358e
+DIST firefox-52.9.0esr-en-ZA.xpi 412212 BLAKE2B 893c371bd5f8a8a84f3161395827d3b1e5dbdf1c31319f5e10f20d860324fce344795abe175eec8aef44c60f9c0ade56ee301d7810495dbcfb38370cbb8dc3a8 SHA512 12d2e7608c8a5964bdd237882cccb6b1e824918366ab7788a80b741046e8cb14cd5fa1c1c7d9d3b0641a03aab16e3ae5ed1af64d79cf384884bff26b7cad4395
+DIST firefox-52.9.0esr-eo.xpi 430117 BLAKE2B e707d92b1b02f42aa936ccddc3a613020f4ba73083e5f095670dc3e41628bdc2c530b8f83695a6bda92765a934f7e8ed823e0e1b040bba4a4af69de397e50d02 SHA512 a48039bc9e060fb6b7939effc5d0c7e223dcd47080d01fcbd8b4f1fca90621024dae408cc052b166f085e694d00ffc40d48c6a434006dfde088e75e4b509ec25
+DIST firefox-52.9.0esr-es-AR.xpi 438659 BLAKE2B de1cbb21cbbc4da5b608fd51ea4d3b21eef83ead67200e21a71887456b9837f641dd42fde33ffec40d1d3052950f70279af1a80a02eaa7c842957d3b8085ef61 SHA512 fb3d70ea97af2cfa3b0023473be9e6fb474e15c0622b9c247961222424e563027ff57a451e3dbb32b73d2fde06f6f857aca0d367ee38b8ed1d777ec1f2b21378
+DIST firefox-52.9.0esr-es-CL.xpi 438407 BLAKE2B 5bf5c07b5715762a81fd7b35338a3d4bf8d384de3df42e76940e386ab83c207ff7d9a11b7211e4bb3925e0e4f47a8ee8ccd82edb27f9fb9f2d7ec277ca9ab9e3 SHA512 a08d2de92afdcbd2ca238f70d425887154caf7fdc7df5df1c0475b21d4e40c2ae00192d6985986a8a30f81d29538832ae573da06c5b924723a19894a9f747702
+DIST firefox-52.9.0esr-es-ES.xpi 337614 BLAKE2B 3df8f326ebe81ea688b3b1c7ad2351f6d3aa3ddd954f923f5551a02fdcb3c1dd5dcc170140f0a202ea9ee102a3adba97331751bfa1d293789ae209a0dcaf871a SHA512 e4e8d5c434313416b8f07ce656a0d73de53e65412e99c29a41ccc3436d76eb3584df79351e56a6334ec2e46dff3c8c0c486b2a1be08b88ff3880d04502123ca8
+DIST firefox-52.9.0esr-es-MX.xpi 441127 BLAKE2B 97563eafb96234cd7f03e2a9c5092879812d0056037004ca023fd494d7163ad75842c1613ccab792a415aaba3eec786fd87b0ce5b84c9de667b03717574784ab SHA512 47cc9989fcdd99960befc310c259b84695a298b4472ea99a4f42a3c4b0024e6690b0957ef2588fe66a6cca2ec2a819df2264a6943da2caa1a293c1cd33a51965
+DIST firefox-52.9.0esr-et.xpi 425113 BLAKE2B 493abaf01932eb9e956cc805ea83036590186b8a3a40380d9b16119d8608ad034d5a0d332174b1de62ce365d443f3b9a70f2edfb7aa99fee0df4495123300348 SHA512 c8c26d1f60fa5d40bd34cb3c7d1f0e97f1a49f27ac43d7219bef2e8bf496cb8b358df30749118c21449393f9a5b1a9d2cbdda893fc90e6d4351efb648b86e122
+DIST firefox-52.9.0esr-eu.xpi 431124 BLAKE2B ed8ec8c178ea21befe2826dc08622e0d59f288f5f3ab23eb1de2ffa0caec2654800e4298ce5179e2366f46e11b2a35721e9ab3c2c783a9dec4e7b546225e0758 SHA512 4e5368994ed64f06fee4b5e7da0aea6f0b2f275b8d8a3d64ca0f09031b14efcf9198f62dfc7fccb273fc0028a963d9501e174224019780814fdd151e66261c64
+DIST firefox-52.9.0esr-fa.xpi 483990 BLAKE2B 4e94c51a04212f482dba4c1cdb20d5c36bc38da422d2038a1f3f03e04316a7f6bdffc11b26a1577021b396ee65cad60911694caa8e65d5bfc7501da2f38b2a73 SHA512 1ca907bb17f608d2225ea0749a25dfee5c76b7231fd95c21cc14e84db2c3ab09a55a2615560c51e88b47071ce1ada31ae8d23c92ed6246bbabb3109f536a5ac5
+DIST firefox-52.9.0esr-ff.xpi 433662 BLAKE2B b8a851374299b440ffed1b7ead4dbc6771eee3aee006802edaf3845566e53879547d244e1c84179ebeed8d6c66b0cc19bc8916bd6257ccf003ef01a2d417b49f SHA512 b537fc8239672e2d0ecb7439782052e196c41ba450abc05e5d2286711243d8dbabea81f376b85be904f9f77c3d1a1f5fb91b9eb2701e9af377d587d0868356e1
+DIST firefox-52.9.0esr-fi.xpi 422807 BLAKE2B cbaa72baf469b30f2d7d95b27bbf7f388e0555e45468a23f6b2b6b0305904c8bef8538c505202c0cf87099b15dc32b8cd85a464fc6e84b79e68eeea03bea1747 SHA512 3b86434f57fe6f5ce481f8e36187d6eafad0d467039eb62ca4e002634f911cfc9876c182557f39217c8bf80b0f14d0bbc6b654fdc43d0f9222aa980e8202482a
+DIST firefox-52.9.0esr-fr.xpi 442944 BLAKE2B 8affb0817ac4108ae5f8102d7b03a6d097f0b7aad9435d39649c75e2efd20c617d1939594849b40c4af563b81c07dea8a330eb6219b0177e37298adfc3d7b535 SHA512 dc23b244ea163571beb8aa2a89f8f3fa63cd7afe63b2eb18e215133c2adb4aaeee5b262e08d5b64877a3374d53ab962baa1e85dff178680122f0560e6f788cea
+DIST firefox-52.9.0esr-fy-NL.xpi 437699 BLAKE2B d31af005d37ce674e8397c8235cdc8718c8277708d788c342e53701a77589b5379a5868b67f3d8f68343bdd0029b3666622cda505e3b71b0488595724ebb921d SHA512 5d7a1b9ee9c95c785b73a618087bd3e9dda30dcd1396a3d107f0beb43caa67d75dc0def13f87177ff9a7a4f8d5c2b99b18834ddedf89e1d5013ae3ba33b219dc
+DIST firefox-52.9.0esr-ga-IE.xpi 450875 BLAKE2B d80b05ccf9935d634ca6562f4785493ba392f2cee27b0d841b80317b67782e3644a76e16d5c77e132a1c551363827e03e5321426cbd77c6f02acc5b183c269f8 SHA512 2db28cc2b5223c3d8b48eb58049634ef1e3a1a954bfd77a31e3fa12fb28535ab65605c18b6672e3b5805afc12a3739b1e7a9a5563cdc3267214fcdd25916dc7e
+DIST firefox-52.9.0esr-gd.xpi 439988 BLAKE2B f3e10713438a46a97281c56dc4fd58173684c7a38453bf88914b908dddd282f220bab86b14d5b164a795b301783fb5cf24250560c080ae8fd31e3d1f7f06794b SHA512 aef56c42cdd5a82349f9ded656a4c11a941ea3279fe0d2ee7a5229d33c67bc8b9ead560a4427c372e62385834b1b8ef1bcda2d50c92e94213a1f5135704d1f6b
+DIST firefox-52.9.0esr-gl.xpi 440039 BLAKE2B 619cd93b30e041a6dbacd7357e7f24be16d14435e6c834ccf4f10c326440bc603e2de2e13ff66a2b000093769ae375a3879798262bc4cd72b69d449c010e926c SHA512 7972dda939fa001100cb212adaf946dbbf7b03e54216f67dc45885ceb764d9b8a5e3b819360c55b59cd7c1aa6168c945186d39be8b5280b6c3ed50c816353835
+DIST firefox-52.9.0esr-gn.xpi 448957 BLAKE2B 11b41c30a8cdae5a10047c7aff568844a74462359cf9853e7b20d7e4c21aa1c39c226bddc8b15c5c7a445556faccc1982d524ca39287a4f9455756065e58b2f4 SHA512 211b1a2f31fdbec47b0e77023671b080f55da7b19699fb4e32e7004e0813bd20aa6cbbfe8a1abe5d47ab0c93d3b5a0bbce75db1714b0a217f2081288e6bd0d32
+DIST firefox-52.9.0esr-gu-IN.xpi 482104 BLAKE2B 3c14cf446fa5d2c1c8ee4c2b4db8806396339b571ce9e6e1d4b7db25ea8b567d7d22dea6b19269e152d55cd25dde715acfc9ee4ac7714c74ac0592f77256e97e SHA512 d86e9a8b606ded3fb76b233b1513cd38e99be8bc882e8b2b8c5df7a332fcb4fb03dfaa286e52387e93ad744fe94a30cac41e80b42ed63b5b4744049349b4a390
+DIST firefox-52.9.0esr-he.xpi 447928 BLAKE2B f4978a409669d8d99f46ce7479a8e9f44b289d3094277f612065a95b867a68fe4a443dbaedb50593f420abb6f3d6767a29b0eb140cad60d11b39a4fa8d123a5c SHA512 f628411851367bc7dcc417cddba235a05e4f12dece9684f241a35d0c9f9b1c8841f75cc9c52f1f25759f45f0e894f6d43e161381ac4ce3ebd71f0c07c71f115c
+DIST firefox-52.9.0esr-hi-IN.xpi 499257 BLAKE2B 3f3869f5265ec60c0a53ea11c61fa01508bf92817e97bc8a581f55c3b2bf0967ea767da48d644e246c93bda74221af6fe34fc6e1d44596795b3df17897514b0b SHA512 cbac7d87136df32d148682e1d82d8b0fd3c35720bdcc0b81be64ebd77a3ee1dc7e97bbdbb21d5afb3772eedd9d9202e17d915deca07463fcc1dc123a0ca7391a
+DIST firefox-52.9.0esr-hr.xpi 440149 BLAKE2B 2e9a24250360014d8de360efda6d18ab007ac6641784b9fa709879aa9c712a34f61481f8f10dece5cdaacaf37f0c91c69dfb3cfce9f18a482139024037fd2660 SHA512 cdb66c3a0ef98c8016c3bcd1d3cf3d450c558a14abc1196b157621c4492f07f23dc93f915cdbbfe59444d2155fe088418e6d9c4b7f1f73ffe5ad9bb48627113f
+DIST firefox-52.9.0esr-hsb.xpi 450002 BLAKE2B dcb67bf9a0162b7c2688f1ec3ab25b279e876dc957c1defbb8a84f4be2a1215dbd7cd5113fe9f3c98b3aa69703d1cc591d80c400074ffd3dc06e894e1f068e65 SHA512 159dfe8bbeef38643abb7392c57b427bc9e1bbf1402e6dca3ad8fd356f62702d67f499d2fd26be81b14cfc83a4b01169d9df9a0f29f0c085e88a921c252ff513
+DIST firefox-52.9.0esr-hu.xpi 451496 BLAKE2B 212e7bb20a4b98c6949160e39c4f47ea932fe415fa7ac0404b2515695e002e9fa0e75fba064a43c7098f950c65d1e1be92c8754c5d0bad775c6b4b46466413b9 SHA512 6f5a22354c7d9d9eb89611e94c80a9af7e6d7f0ef1b725bc16524ebe074c7e257e76255e831791640b98b19c055e82f8dd55be91697cf3d5e916c8199a05af2e
+DIST firefox-52.9.0esr-hy-AM.xpi 488414 BLAKE2B d819c52642f4415d2b5d08e356051968f9cdfaea32be30fff3f7fb047ac0b351fff5bb9a1544720489c43eb075a199466bf1a44b68c6bf75a3121d7e6d6046d5 SHA512 65b11ceaeeb469eae121094f3d0213c7bfdca597de41a0d4b9cedafcc7d88c96ab7d5b9b26278b043f9630bc9e07b2aed5fc159d42c17960225c886e8f031959
+DIST firefox-52.9.0esr-id.xpi 418764 BLAKE2B ddefdf19d968ca8e638af6732704ef705384321a6329d2c481f7fff5d368ad4038c34072192739f2059269852f9d6a811e126323e0fc7d4bfa23fbfa6302bf30 SHA512 141482d12faea6e43a504d8e31328c3062d82c8022745caa4bd23a73e5df9ed64d853752597599ae414049ce9ea632e44c8e86ed3ae707546f75f94f96fa8e42
+DIST firefox-52.9.0esr-is.xpi 435339 BLAKE2B d0766d545566a90f6a5375d11fc773e2ec1c8a85ca9ae98bd0ad606e37fc22e63450f26991f303add43ca5b79bf9848fd9479dc80b6ff9b5df21056e9afe8cac SHA512 b0221f06de4c601443048149803be8cd5c69e9f304d6d9eedcd37cbf6bd26d0604c5152616a1f870c74926380a725a4b842e82eb182d271bf0b51f03490e4b47
+DIST firefox-52.9.0esr-it.xpi 331969 BLAKE2B 98959c1dc78bf6bfd30699e38f903ca8b00065da68b46cbacc858a585bb65e4469ebc80b9dd8ad6811f30cb1de4888bd354229944295bbb19bcc109be4cfa843 SHA512 67e7f2078fe373e31df041b569d3c90b69b32527a681b14e32ccb9af625daabfc6e68fd95ec4362600f894e8342839da907b71e30c8ef843f2ceaf3b68c2ebcb
+DIST firefox-52.9.0esr-ja.xpi 488343 BLAKE2B 81418ab2289e83b81f33e6dc44cd1ed3fb4df15e572b23e94e2ab2b004aa09003459ba54b1d7fa014e06e877c71be88ea7eba53caceeec98c28668f49d052ac0 SHA512 e29fdfc09d780d9dfd952731fa12410a7709c3e2abfcde6b7d3e2bdf8476b2d0379390bf24590df5ad4815b85c4dce5b3a91d9c38caabe08f15f5cdaefbed809
+DIST firefox-52.9.0esr-ka.xpi 468023 BLAKE2B 3c167ea7fb92261d169bd3d23ee337534816e6ffa95538d202ac136dcf9a5c9a35eeddcd1bebd5d64ed43a9aa74981a9707ebf0bcde39c8c984200a8f77adc05 SHA512 bf0a4392b10479b7929786b6e8aa6a1065db19ee7c1c14fc472ecbf25d881558885b0905454c840bd25535b299253dcd154ed9c283720b3595e9d9ea33a99eb9
+DIST firefox-52.9.0esr-kab.xpi 437247 BLAKE2B dd9494064d6fcd4cdfd26b982800c4a9307b06110d5a95f3263eb62f04fef174e634b0fa92423644fc0bcd638b9192986ef189ff2bf977c6b89825b1f8ef184c SHA512 5d195c1f971a526881a1173542624ca9e3719e695a273421ceda8146f3d77d4a201f4906e4c0b5b29a14999447222818b1ec0b32959e710488bbb25092ac4c42
+DIST firefox-52.9.0esr-kk.xpi 496939 BLAKE2B ec2e0b3268761a9d87617551ea427d68c459dfacfeaeff1f0032a367ddf3e8ab69d0f5a6c9677e248787927a27945dbb0396455716611e75efe860efb8cb4558 SHA512 74ba2bf40a6a848639dec9503c2b3dcc827db260ee5afc58db127ea6a8c89e8b2e480313c2bd9a9de04e4fd2cef6cad478d331e5063447a9c4b73cc5b0def770
+DIST firefox-52.9.0esr-km.xpi 512989 BLAKE2B af9f819c635161285d8839b6920101208c20ac3b4022c052b03b01cce4ac06e630744268850ae9f2cb6a41e00f95e6b61ecb2b44e0f82a6a5d0d16c31706374f SHA512 87b6e4084321c996e1a806b1750f53158a4703ca5cd3042036bb6e961a1ac4c43f3163563c7e55b5c918559da3192e5e21d9c969e9f52e9d440dfa5f7248d02f
+DIST firefox-52.9.0esr-kn.xpi 512200 BLAKE2B 37bfa1e3ecbd4c506241b91d18f9369e061b0b31f130577b78e2955699a88095f47202bb810c81b4c152925149869266e803c6890185f2ecc539cd9c2604fa76 SHA512 97cbf192278271ac9a80c02373ab69addd9c4be9403347a2a9da2dfdba4ffb8f772d7b4ee680ce6f48a9b6afd725cd6ae2dc6726776b8becc78c59ec973f0d6a
+DIST firefox-52.9.0esr-ko.xpi 463630 BLAKE2B 1c782d20719976b59177e4f55794ae80bcac0c514fcd7f3e7ae1813f09ee29f0c8a28ef53443b6ec2d1f1c2bd913aa658782252d9a53b12dd2ec79ef29a9ee27 SHA512 b7533be9612d558f33a49fea3f071c84dbdc7a8faefe3791f458412d5107d5583534264166454170aff3daa9390bdee5d2f13c8b8077990e27631309f9820b5f
+DIST firefox-52.9.0esr-lij.xpi 413817 BLAKE2B f5b2a630847dda4cc54d0795c5da95ccd0722e4e7f825c892fd18747be3545d900794638c8fd5af7e9ef99e99a5e62e4c72ff78686012f2127287c3294cc4e16 SHA512 fb45a04b078de54c1d9d8c395b839465efa7ded0db0733b9946d84a0dd38e6ac02d5de4fecda8e15036575d64ff20899cecc767d6531d4640d198eadc6925150
+DIST firefox-52.9.0esr-lt.xpi 452235 BLAKE2B a9938a725c35f5e515faa6b502785056712bb4faff2b4da396a39746c4c0207984989dc52123d00f1565b71c0de07eb2175fc9991a4982f6d9f5e214bc64d8a5 SHA512 912e6391587794457f2b314f36c77f395d634e41a2a0be7956015f3395b59c94b3cb854c0c9f424f6283f683934aab88732dcf36fbcbc8a26c860f354a516e1f
+DIST firefox-52.9.0esr-lv.xpi 441096 BLAKE2B bf0ad68435f5224a24a4c994c592e38ed1e61d8200a71e47b6c4cdd3f8df4539a1780d840a6a46dde9265c10ee8097bfaa7e43061caa88f9552d2be4e334fa19 SHA512 a102f7d8e16ed9769b6d57a8fd7042e55b6fd66501f128e8d18ec22600997d66aba2c0ec0483fb7d5ed13fc539feeb64d93520f5298a982bf9840ab07932fba3
+DIST firefox-52.9.0esr-mai.xpi 492585 BLAKE2B 0e934428b6b81c427d340f373ab890c28ae8aa8c59e12ca2f53e8920196540088f3a656be43966e93c4fab90cb021d0a35db6e912f44b9c2b2e569ab9c558a4f SHA512 a545589ce072654cd68020da0bd31b48e780ebd9b2c2af0126bd96787c4a44931382de2b46f0d4e85c177f120263db5f1d1e10dfc961d0e420845a9e64e9368d
+DIST firefox-52.9.0esr-mk.xpi 488846 BLAKE2B 674db9b2a50abd25e3002d6f0d16431137140f66f0cc5fd9462e43169cfe0f0f35a3cebdc6180e2b4747ffbcbf629c53952d66cb7023bade03b363844372d6d8 SHA512 7e0aa7aaebc4913b3ba7b688caa4d1013df635e768cbc33f4a018301ceae352ae9485c3b31e1237d98922f12e45046c875b09ce9ce0d02efe17d36eab040d5b6
+DIST firefox-52.9.0esr-ml.xpi 516487 BLAKE2B 2eee153f1a39c6c7064997c80026344e53fdd58cc503c437f1326644ca11eec835675ec16ee84d64816545bde8c456c6ccca2076928a1ae42d27c09d58b0d99d SHA512 d4adebc0a02e2d4ce05b5e83f688f4bca3cd4dce4eec34421c52e9c2452e11ca93e228b4a6d75aa67a9d9242f0ed34c0e802c70cd1c7d413ff5e8eb9da588174
+DIST firefox-52.9.0esr-mr.xpi 495178 BLAKE2B c1670230e9b26cf3a7e5b276d9fde1791056184155cbf96d36068124d46e57f696bfbfacb6793e2d24a594ca60d0152a13f2e106ae8aa620ac05185cd294b663 SHA512 2d9e642e9ec6719857fdf72577482d6a1a06620c9631970d4d67c07311c2a62bbf93da183a969b4b8c8c76f319d411867a199f4e31613b777ab80ea213a99ad0
+DIST firefox-52.9.0esr-ms.xpi 428635 BLAKE2B ba80493bd652777b9da12f98d698098a4f92db9c205a4ffd523023ae57aa1e5c10a4a54778f42d6ef0fa6a7ad2302f51a16e41f66f57387335b21e9ec3427a6c SHA512 ed7501b04c69782b810540b81df84ad4db48947ce8cb0f39b6f61b3d7cee155ca913edc31282b27f35a9c6d2971da802eafee7dbfe275eba101d19555eba7074
+DIST firefox-52.9.0esr-nb-NO.xpi 427148 BLAKE2B dcf7467a6c975b175668f05768dd8d1f9fca226fcc4241c2fab0a70148d0471fb457fdcfaaebc46cab35328b13813a55fe320f034cf62f909f881326c43515ff SHA512 0a00c4c4aa1522ce68f3303f08c510215e5273d35e7f7406c19fb85ae08fde86553f2ea9c2787555ebc3aefa20f18f7ecf630ff1314f317f994207e74f4aa380
+DIST firefox-52.9.0esr-nl.xpi 432007 BLAKE2B 371536f670062f6ec72363f2bc80d90993970fa17f1ae9de4d3e148ffe8ee23e621b43ecb123251985fd6c946fd10eb7e0523615c52f23a0ea2f0d9d8741c24a SHA512 bb3e47867fd63a2d0a92ad4502d51c57c210e9d46974a954e6f1f11c796b59a808063ff843d6126b5988c62b79dee654792a996502acf636fb4967b385aff1ed
+DIST firefox-52.9.0esr-nn-NO.xpi 428645 BLAKE2B d0f230de22c79e8b36b585c0804a94cb48a1f75d775fdf84fde6b0f4c480a06e0622813ad3b0dd7e00c283ff76e7fdcee6f1b04ae748c01c12e532e49d88b0e0 SHA512 53cc4f9b1b77652dbbf3a3e3b665ab1b3e8fb5de4d02895104a2d10a9921729e6a2d5f8218d837f0af4ed041efcb376bdc1f6e6f8168a50921919d6883c0d765
+DIST firefox-52.9.0esr-or.xpi 489664 BLAKE2B 50423a7676ae406b32d4740c0503e1da4ca85335498f73d1f365636d6ad23f3e93491762bda54dd796a0b4c142f2e9936e460220ef62b28221d306873993be24 SHA512 10d32ec4ce701449e2bcf1b4189eb92d264f60cf023b2f570d51948beae90fbdff2727df94fd627a313795f7d92baaf3b0dd01b3db4fc73dd5ab2661f8c7868c
+DIST firefox-52.9.0esr-pa-IN.xpi 469325 BLAKE2B 5921ceb576a2ea1889bab794b946c13c40906f5670e95e514aafe3009f3f29375891ec570f80e4a3cf4ae51ae4bf9a039086eac3060304a04cff025fdd8b8bd2 SHA512 e31cd78bfbea7eb1814fe094b2ece31c09fd024b20e090ff32c5af061a399ca5aedebff14a2db5fa47d35bfa7e417acf559dd7e5e766a72b5f900d19c6eef07f
+DIST firefox-52.9.0esr-pl.xpi 352851 BLAKE2B 8c9b74f45b944ccb81483e25a4680bc03b02c7c85bab7ce922c69d215dd159a7cd9dd43fc90da081f631bb31ea5a7dbbbe5b02bb8c867013de47de4c8c0e63b6 SHA512 aa7f20805ee5acf997d613cc3001c255f362a6272fc59f1fa114f4fb57e901fcdd0aa8eb28ac588b30032165661dc5d2d075d8dd17fd7339774df1c233b641b0
+DIST firefox-52.9.0esr-pt-BR.xpi 430903 BLAKE2B 0f40107be529b3880129ebcdd1c5a56f5dcf4e70d25315015a8d9e8b68df098fdfd1a9d006577286e80dc1e4aa86146e060d4ca2ee4adcd1939ef56e4f0f82f1 SHA512 8643b1e7f5fd5a9b07b69a47b210a0e4d3749d03c5ab63d52517e88d126c6c76627fb09b31943bf35a5380864af8af5ff361092e7591aaa22070a373942068d4
+DIST firefox-52.9.0esr-pt-PT.xpi 436727 BLAKE2B 4a7aa318484d7c9e6ecc055b29d3f5b82d82b63e3763faa3f577864e96546e4de10fce6bad91a6a48f97f964bd16df72400144e9b345e253ef9b9c5c5ac827aa SHA512 eef828d957fc473ce6584a30f2ea3671ffc27d411ada3071336f1a2cd91f69dcf6d9f360a58efb7a40bdc5c8f5c413f3eaf2c4f430187f66c4701b8027a76352
+DIST firefox-52.9.0esr-rm.xpi 427342 BLAKE2B f66e25ea7da4af8adc91a54be715757c391df7b09957e5fab09dc4166d0324aa03a1acc19b83041d178b2bc3f9298e070da4e810eb95568fd4ac5aaeb930a766 SHA512 d927b6a139f385dce58efa16fade8f3c20912ceacfe565d3fd75ca68de3c57978bbc086aea990f835ecac2947fe66c555f6033871917b03ce1e14c4074d31ee6
+DIST firefox-52.9.0esr-ro.xpi 442585 BLAKE2B fc94f31cdef97ebc32098a38b2ac983431996dec99f8d11eea75bec52345d2fc4baef389e88ba5fe8c5757a15704a0b99cecc0bca870796dc643ffde569f4fe0 SHA512 476f07dd570526a21521d79c037caae93af7f3ee35fa02ed4979e9b9467ef6bfa92f1dcb55dbf903057111eccf384c309733d258096a6ac61698e22b4486d277
+DIST firefox-52.9.0esr-ru.xpi 395364 BLAKE2B e3d84689499863008c8e2232a66162aeb64549daafc4577cd71b6dccee3ec9c5d5acdc9f85d73a25992d2c67a85bfb82215dfcb07e97506f14c449506aac87b6 SHA512 7ab459b8a5612a2c9febcd092e6635058888323b72f243c39b22e066e2551b58d83c0168322499b2d1b452ee143e9de3c50b65667ee6c78879a3c91b5a55e91c
+DIST firefox-52.9.0esr-si.xpi 484605 BLAKE2B f6f7427c96f9c4a96514104ac6eb3442b99ce776a3f57d78c86ef242b66df8c75ca752d5ef1639e53b85e2a2c4e815d6e32c9521260acb6d171bada4997e056a SHA512 8af28e2638d5ea386e9590af105eaa4df3e233a7b823b8a77cf1e9d1ec76abeb2479140fb6367657fbc80c0baf304cd0a42f09183e4c062b48011580c948ae11
+DIST firefox-52.9.0esr-sk.xpi 455820 BLAKE2B 57f5df2145aa45f7990a1d5de43a9b270ba00a4d52822aa1d617f170d950b11af04a0cb35c92f6ba946e2068e829cbdaaae825adcf08759254bd27dce3a832c6 SHA512 38bcf41427b96c021bcfd4f738ff2c33bb29cf5178cf0011a4e5f6549eca85e4d04ac8bbbe38c964e962d07b10227ee072c7a22c2594ce73e4efdf8927fe1c8b
+DIST firefox-52.9.0esr-sl.xpi 433482 BLAKE2B cf3b598ad3daf81394f540d06663677fd1315a2896d69dfcf9aaa495f1d8bdd5f983dae8a4d0f0ab4226cbfef1c8a3d5e4e95b0feb985f2449ac75a07ff93c81 SHA512 0f17e2066f020a6117ecd5a1c7fbde6ace96cef3b0a14b481722a2d473e849ca9cff67500a33d56ddcb6ae420b5e7afe54483256c4d7fc11fa7b834c80172ff8
+DIST firefox-52.9.0esr-son.xpi 427860 BLAKE2B 1849c829572ee203a8210c150ec67276277618e3388110593c095bc18cfc9f61bc6bfa5c896b3569994a10aa8e51c19862296ef56e5ce5c969fc2c051807ef5f SHA512 6061748dd7b0694910c512d8af070e4e3372df47dd24ff707a9c4c0f9083cb0f60afe5eccc34c1bb7f091624604bc488a04a2e0682c321bcfad7bd6fc091a2cf
+DIST firefox-52.9.0esr-sq.xpi 440802 BLAKE2B 3279141a3c7dd3fb84f26c1fdcf44a48314dc403488454ef26375fd065db3578277824116f0dd4169e97a65ebd128d1a5324c2f6f288892339719d5bf00fa462 SHA512 edfae845dacbe0a43946bdd8ccd4b9a6117d8f96b874a40ab00e0be739c6071f8b7fb680792c1a6fc3f218d6f2f000f5577b4ea3c4474bf4f455cb1a038f188d
+DIST firefox-52.9.0esr-sr.xpi 463395 BLAKE2B 7cffd36615b93071b3eca75b581e055d23abab4aa41f53b473e4cf542696c381083176bfdf0a1120821b8f19389f2462bce76e4a795cc49263963d6ac011a1cd SHA512 069908acbfcfdc659b1da9148dd7b24af07b37112799f51c8c091f1af308f5f3d936b4473d0636c29550a3a8ed63e3f48638c981b7fe2d0b856a789c43e2f20b
+DIST firefox-52.9.0esr-sv-SE.xpi 433908 BLAKE2B c3e8553b7963d3d1d291ef9ea7a4c081044cc6f54a5eb359575b9e60ad6cd824e478bee9b1a07087d1250090bb70f3768dda5f2c59948a19b82aa543044e464d SHA512 94dae19d2d94673d266eea3e9d496c39426ed9ef578bc65fa74cb2ab23153c824467ce75bb6e76c8115bbe939d8b07d8f75350dc6dcdf9729c10ea4d0792eafa
+DIST firefox-52.9.0esr-ta.xpi 487541 BLAKE2B 41826cf559bb4e2d5c5471cf41e0903e81f5d1f01ced19a286905a13398cd43f25e9b3767324457b2a8a45061c7d203a09a4ed3d5aea7b55555bd3235f7db9a8 SHA512 e60a24bc6111ca3f3923c14ea59b4bb1a2bd8ea244bef2e0ecc123192f23f2e5e198b893811bc6edf4187fc11fb21935b4d8a35bc9010d5ac416770f4eec9e1a
+DIST firefox-52.9.0esr-te.xpi 507988 BLAKE2B e362ddf9ac9b30a54800a3654849793f34d13a2ac00f349e0f9f77b1b7f6b8ea63582a418f73b237c334bafdf108d5dffde6cf70a7f95dd8ad320555b866a235 SHA512 2506b3c7be92a75dfb9cf0d91c049efc383ef6c3a08806f93b8909a89badef175d994b4b68d67d3bea8e1dd45a5293a796777c6b5b8764718a6ce3e604f351ba
+DIST firefox-52.9.0esr-th.xpi 482022 BLAKE2B 19b036e40247d3eaf2c3098894ddb34e42e55fd261314c63192eec512d4aba1a43230be22ce5ad539a34d17dfc8a68d01535631c17cfcd90a38a9ca11f779400 SHA512 3c4c849a8b427f2e73d40ee8967713f5449b695a12e77c21f8d09ce18d605f68c0cdcaaf7edc6aa8d18f7c8e8e2a3467f6e1ed8b0f124ef43cc5c24a70980e5d
+DIST firefox-52.9.0esr-tr.xpi 443673 BLAKE2B df7fb2fc035db9b965aba2ca5fe4658c9e4f10c09f15036449155e07f805ba3f09b0ead560df76aeaaf786d0d3d4fe45001c1b5c817fa0866c25abcf363a2b64 SHA512 3b36df56158713957a2b8b257623cf98a1b7955d079cf677b17f92e59639c69f144dd856688436ab10cfcadb1285173d73af8119e96b52e7a266f72286672c46
+DIST firefox-52.9.0esr-uk.xpi 495095 BLAKE2B 72202898138dfcd667c15b79fe22e9a5fb17b96473d674deea34c749477f1f09532a3c088d40c5d61d66aad51f63a1761ea534997780450eb7bf75a77eccfa8d SHA512 ab4d62f1198eeca113e68898e1af280644518cf934c94445d961cdcb8219ce9235d4f5208de8b27db2a6c741ab1f627f396b88e3414043e0d511e61d975b4c31
+DIST firefox-52.9.0esr-uz.xpi 440565 BLAKE2B 848c6fc36556fd89d026bd62b3b6005da3bc44b10c814492fed17d96ef92df5827fb230c036f606afa13e9066dde27a2ab5066f270bc27e84850e75a58b3335a SHA512 8f5df148343de6d01eb5125fe2933a349c491a63ad4f8a4b6f60efe7555bd4512c84160b24d653e5bd1ea48f9cc4a9ad900fb67fb5cd96b1cfc3c492c611ab83
+DIST firefox-52.9.0esr-vi.xpi 450805 BLAKE2B 9dacebac235a738cf7f068e16335b8b15ca977ec4a1f8787ce1bf2998442b2a80b4d027f70d3df0f1e565566e3530fd4aca4dc9813dea13786b6b74590c53142 SHA512 cff7ae8ef44ea5d19710f7e604847d7020e1d5ad4b33ccb990df6d37fa52da296f3fbebf53dab0573bacf57e20c3cb9fee45aa0f276a1693aebc4489104ca771
+DIST firefox-52.9.0esr-xh.xpi 441173 BLAKE2B 3e1b907a7659c639d17d25a1825f472853242891d55f6a5ad93c1f5a12e12f05706173dc6ef5594f27e049d9b9a4c748d7371780843f1da204c5d93a39213197 SHA512 54ac64f0c119ab42d4f87dd2663ba7e14310c215a1ea76acd463b4c1a9073491f8df8c9b03d391ecc6f9ffbbdccc3756a7b13ed559336a6d1527fad3097ddb53
+DIST firefox-52.9.0esr-zh-CN.xpi 461679 BLAKE2B 745b2cfb86e93a379e13fa73b7e3721bae06694768316e31a2aed608e3050f585a9603375cd35b90affca11b3e5e44401b1e676f9c8050ade287ed0feb442a7a SHA512 ca62e0e2ab075086741159b185b5eba44c6bdfc29fd9ba1cf25808f127c1aed8875ea61c1c33e4f742fa26af4455a8873730f96ad9c7bec1f66aed0595f253f1
+DIST firefox-52.9.0esr-zh-TW.xpi 453068 BLAKE2B 84e08ea4fd119db1f1c6f84b212fbbb5d6999c5ac6010c0e7836d8734726d281107f3d91ba7bac1aeaf855dc36d3b018ae3913dccdbe2b11aad02a8d8aaa893c SHA512 a99042ef7d00820e341dfcf2c45a8b5bd77eaf2cc8ecf0ff5ee982b7bd9beac7cb4bf051c57ef3b7a5d9b67cd35858dca396d21e65718e248f3b1fdba5273999
+DIST firefox-52.9.0esr.source.tar.xz 214087304 BLAKE2B eba5305ae3fc9a4306cbcbcd8d4610272ca5b75e369367961e9d94919b003de8aae8f3c58fe1c628787d98105a85fab575ae2b051e92a0b35bbb8b402c100766 SHA512 bfca42668ca78a12a9fb56368f4aae5334b1f7a71966fbba4c32b9c5e6597aac79a6e340ac3966779d2d5563eb47c054ab33cc40bfb7306172138ccbd3adb2b9
+EBUILD firefox-52.9.0-r3.ebuild 13505 BLAKE2B 4f56743732f815d442b68237a166ffcc5d1ce87cca4c11d0c2f2d731b3589ff09dc7940cedc6ffcaa34b61644abc0b6a373d32289358df3c23eab4fe7cc88979 SHA512 15db6300858d841a3ec643c11a675ea2880768f1c24016ba5aced9585c0040343c23e7de58c7b10a56ad1d0f009b3a131e53e58b359a1c56a482b3784753e3ec
diff --git a/www-client/firefox/files/firefox-52.9.0-blessings-TERM.patch b/www-client/firefox/files/firefox-52.9.0-blessings-TERM.patch
new file mode 100644 (file)
index 0000000..271a62a
--- /dev/null
@@ -0,0 +1,56 @@
+https://github.com/erikrose/blessings/pull/137
+
+Fixes: https://bugs.gentoo.org/654316
+
+From 5fefc65c306cf9ec492e7b422d6bb4842385afbc Mon Sep 17 00:00:00 2001
+From: Jay Kamat <jaygkamat@gmail.com>
+Date: Fri, 24 Aug 2018 11:11:57 -0700
+Subject: [PATCH 1/2] Fix error when TERM is unset or improperly set
+
+---
+ blessings/__init__.py | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/blessings/__init__.py b/blessings/__init__.py
+index 98b75c3..3872b5f 100644
+--- a/python/blessings/blessings/__init__.py
++++ b/python/blessings/blessings/__init__.py
+@@ -94,8 +94,13 @@ def __init__(self, kind=None, stream=None, force_styling=False):
+             # init sequences to the stream if it has a file descriptor, and
+             # send them to stdout as a fallback, since they have to go
+             # somewhere.
+-            setupterm(kind or environ.get('TERM', 'unknown'),
+-                      self._init_descriptor)
++            try:
++                setupterm(kind or environ.get('TERM', 'dumb') or 'dumb',
++                          self._init_descriptor)
++            except:
++                # There was an error setting up the terminal, either curses is
++                # not supported or TERM is incorrectly set. Fall back to dumb.
++                self._does_styling = False
+         self.stream = stream
+
+From d885df78c6f931abf3259343aaaa897e16c8cba1 Mon Sep 17 00:00:00 2001
+From: Jay Kamat <jaygkamat@gmail.com>
+Date: Sat, 1 Sep 2018 13:20:32 -0700
+Subject: [PATCH 2/2] Explicitly catch curses.error
+
+---
+ blessings/__init__.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/blessings/__init__.py b/blessings/__init__.py
+index 3872b5f..fdceb09 100644
+--- a/python/blessings/blessings/__init__.py
++++ b/python/blessings/blessings/__init__.py
+@@ -97,7 +97,7 @@ def __init__(self, kind=None, stream=None, force_styling=False):
+             try:
+                 setupterm(kind or environ.get('TERM', 'dumb'),
+                           self._init_descriptor)
+-            except:
++            except curses.error:
+                 # There was an error setting up the terminal, either curses is
+                 # not supported or TERM is incorrectly set. Fall back to dumb.
+                 self._does_styling = False
diff --git a/www-client/firefox/files/firefox-52.9.0-fix-idb-name-conflict.patch b/www-client/firefox/files/firefox-52.9.0-fix-idb-name-conflict.patch
new file mode 100644 (file)
index 0000000..8026f62
--- /dev/null
@@ -0,0 +1,226 @@
+diff --git a/dom/indexedDB/ActorsParent.cpp b/dom/indexedDB/ActorsParent.cpp
+index 1118ece64..ac8e28828 100644
+--- a/dom/indexedDB/ActorsParent.cpp
++++ b/dom/indexedDB/ActorsParent.cpp
+@@ -11529,7 +11529,7 @@ AutoSavepoint::~AutoSavepoint()
+     MOZ_ASSERT(mDEBUGTransaction->GetMode() == IDBTransaction::READ_WRITE ||
+                mDEBUGTransaction->GetMode() ==
+                  IDBTransaction::READ_WRITE_FLUSH ||
+-               mDEBUGTransaction->GetMode() == IDBTransaction::CLEANUP ||
++               mDEBUGTransaction->GetMode() == IDBTransaction::IDB_MODE_CLEANUP ||
+                mDEBUGTransaction->GetMode() == IDBTransaction::VERSION_CHANGE);
+     if (NS_FAILED(mConnection->RollbackSavepoint())) {
+@@ -11545,7 +11545,7 @@ AutoSavepoint::Start(const TransactionBase* aTransaction)
+   MOZ_ASSERT(aTransaction);
+   MOZ_ASSERT(aTransaction->GetMode() == IDBTransaction::READ_WRITE ||
+              aTransaction->GetMode() == IDBTransaction::READ_WRITE_FLUSH ||
+-             aTransaction->GetMode() == IDBTransaction::CLEANUP ||
++             aTransaction->GetMode() == IDBTransaction::IDB_MODE_CLEANUP ||
+              aTransaction->GetMode() == IDBTransaction::VERSION_CHANGE);
+   DatabaseConnection* connection = aTransaction->GetDatabase()->GetConnection();
+@@ -14692,7 +14692,7 @@ Database::AllocPBackgroundIDBTransactionParent(
+   if (NS_WARN_IF(aMode != IDBTransaction::READ_ONLY &&
+                  aMode != IDBTransaction::READ_WRITE &&
+                  aMode != IDBTransaction::READ_WRITE_FLUSH &&
+-                 aMode != IDBTransaction::CLEANUP)) {
++                 aMode != IDBTransaction::IDB_MODE_CLEANUP)) {
+     ASSERT_UNLESS_FUZZING();
+     return nullptr;
+   }
+@@ -14701,7 +14701,7 @@ Database::AllocPBackgroundIDBTransactionParent(
+   // has write access.
+   if (NS_WARN_IF((aMode == IDBTransaction::READ_WRITE ||
+                   aMode == IDBTransaction::READ_WRITE_FLUSH ||
+-                  aMode == IDBTransaction::CLEANUP) &&
++                  aMode == IDBTransaction::IDB_MODE_CLEANUP) &&
+                  mPrincipalInfo.type() == PrincipalInfo::TSystemPrincipalInfo &&
+                  !mChromeWriteAccessAllowed)) {
+     return nullptr;
+@@ -14767,7 +14767,7 @@ Database::RecvPBackgroundIDBTransactionConstructor(
+   MOZ_ASSERT(aMode == IDBTransaction::READ_ONLY ||
+              aMode == IDBTransaction::READ_WRITE ||
+              aMode == IDBTransaction::READ_WRITE_FLUSH ||
+-             aMode == IDBTransaction::CLEANUP);
++             aMode == IDBTransaction::IDB_MODE_CLEANUP);
+   MOZ_ASSERT(!mClosed);
+   if (IsInvalidated()) {
+@@ -14926,7 +14926,7 @@ StartTransactionOp::DoDatabaseWork(DatabaseConnection* aConnection)
+   Transaction()->SetActiveOnConnectionThread();
+-  if (Transaction()->GetMode() == IDBTransaction::CLEANUP) {
++  if (Transaction()->GetMode() == IDBTransaction::IDB_MODE_CLEANUP) {
+     nsresult rv = aConnection->DisableQuotaChecks();
+     if (NS_WARN_IF(NS_FAILED(rv))) {
+       return rv;
+@@ -15245,7 +15245,7 @@ TransactionBase::VerifyRequestParams(const RequestParams& aParams) const
+     case RequestParams::TObjectStoreDeleteParams: {
+       if (NS_WARN_IF(mMode != IDBTransaction::READ_WRITE &&
+                      mMode != IDBTransaction::READ_WRITE_FLUSH &&
+-                     mMode != IDBTransaction::CLEANUP &&
++                     mMode != IDBTransaction::IDB_MODE_CLEANUP &&
+                      mMode != IDBTransaction::VERSION_CHANGE)) {
+         ASSERT_UNLESS_FUZZING();
+         return false;
+@@ -15269,7 +15269,7 @@ TransactionBase::VerifyRequestParams(const RequestParams& aParams) const
+     case RequestParams::TObjectStoreClearParams: {
+       if (NS_WARN_IF(mMode != IDBTransaction::READ_WRITE &&
+                      mMode != IDBTransaction::READ_WRITE_FLUSH &&
+-                     mMode != IDBTransaction::CLEANUP &&
++                     mMode != IDBTransaction::IDB_MODE_CLEANUP &&
+                      mMode != IDBTransaction::VERSION_CHANGE)) {
+         ASSERT_UNLESS_FUZZING();
+         return false;
+@@ -23959,7 +23959,7 @@ CommitOp::WriteAutoIncrementCounts()
+   mTransaction->AssertIsOnConnectionThread();
+   MOZ_ASSERT(mTransaction->GetMode() == IDBTransaction::READ_WRITE ||
+              mTransaction->GetMode() == IDBTransaction::READ_WRITE_FLUSH ||
+-             mTransaction->GetMode() == IDBTransaction::CLEANUP ||
++             mTransaction->GetMode() == IDBTransaction::IDB_MODE_CLEANUP ||
+              mTransaction->GetMode() == IDBTransaction::VERSION_CHANGE);
+   const nsTArray<RefPtr<FullObjectStoreMetadata>>& metadataArray =
+@@ -24027,7 +24027,7 @@ CommitOp::CommitOrRollbackAutoIncrementCounts()
+   mTransaction->AssertIsOnConnectionThread();
+   MOZ_ASSERT(mTransaction->GetMode() == IDBTransaction::READ_WRITE ||
+              mTransaction->GetMode() == IDBTransaction::READ_WRITE_FLUSH ||
+-             mTransaction->GetMode() == IDBTransaction::CLEANUP ||
++             mTransaction->GetMode() == IDBTransaction::IDB_MODE_CLEANUP ||
+              mTransaction->GetMode() == IDBTransaction::VERSION_CHANGE);
+   nsTArray<RefPtr<FullObjectStoreMetadata>>& metadataArray =
+@@ -24161,7 +24161,7 @@ CommitOp::Run()
+       connection->FinishWriteTransaction();
+-      if (mTransaction->GetMode() == IDBTransaction::CLEANUP) {
++      if (mTransaction->GetMode() == IDBTransaction::IDB_MODE_CLEANUP) {
+         connection->DoIdleProcessing(/* aNeedsCheckpoint */ true);
+         connection->EnableQuotaChecks();
+diff --git a/dom/indexedDB/IDBCursor.cpp b/dom/indexedDB/IDBCursor.cpp
+index e5d8913f9..4ef7e8c7c 100644
+--- a/dom/indexedDB/IDBCursor.cpp
++++ b/dom/indexedDB/IDBCursor.cpp
+@@ -696,7 +696,7 @@ IDBCursor::Update(JSContext* aCx, JS::Handle<JS::Value> aValue,
+     return nullptr;
+   }
+-  if (mTransaction->GetMode() == IDBTransaction::CLEANUP ||
++  if (mTransaction->GetMode() == IDBTransaction::IDB_MODE_CLEANUP ||
+       IsSourceDeleted() ||
+       !mHaveValue ||
+       mType == Type_ObjectStoreKey ||
+diff --git a/dom/indexedDB/IDBDatabase.cpp b/dom/indexedDB/IDBDatabase.cpp
+index 5592e7f93..49f18093d 100644
+--- a/dom/indexedDB/IDBDatabase.cpp
++++ b/dom/indexedDB/IDBDatabase.cpp
+@@ -668,7 +668,7 @@ IDBDatabase::Transaction(JSContext* aCx,
+       break;
+     case IDBTransactionMode::Readwrite:
+       if (mQuotaExceeded) {
+-        mode = IDBTransaction::CLEANUP;
++        mode = IDBTransaction::IDB_MODE_CLEANUP;
+         mQuotaExceeded = false;
+       } else {
+         mode = IDBTransaction::READ_WRITE;
+@@ -678,7 +678,7 @@ IDBDatabase::Transaction(JSContext* aCx,
+       mode = IDBTransaction::READ_WRITE_FLUSH;
+       break;
+     case IDBTransactionMode::Cleanup:
+-      mode = IDBTransaction::CLEANUP;
++      mode = IDBTransaction::IDB_MODE_CLEANUP;
+       mQuotaExceeded = false;
+       break;
+     case IDBTransactionMode::Versionchange:
+@@ -713,7 +713,7 @@ IDBDatabase::Transaction(JSContext* aCx,
+   transaction->SetBackgroundActor(actor);
+-  if (mode == IDBTransaction::CLEANUP) {
++  if (mode == IDBTransaction::IDB_MODE_CLEANUP) {
+     ExpireFileActors(/* aExpireAll */ true);
+   }
+@@ -863,7 +863,7 @@ IDBDatabase::AbortTransactions(bool aShouldWarn)
+             // We warn for any transactions that could have written data.
+             case IDBTransaction::READ_WRITE:
+             case IDBTransaction::READ_WRITE_FLUSH:
+-            case IDBTransaction::CLEANUP:
++            case IDBTransaction::IDB_MODE_CLEANUP:
+             case IDBTransaction::VERSION_CHANGE:
+               transactionsThatNeedWarning.AppendElement(transaction);
+               break;
+diff --git a/dom/indexedDB/IDBObjectStore.cpp b/dom/indexedDB/IDBObjectStore.cpp
+index c28979c87..4694746cc 100644
+--- a/dom/indexedDB/IDBObjectStore.cpp
++++ b/dom/indexedDB/IDBObjectStore.cpp
+@@ -1406,7 +1406,7 @@ IDBObjectStore::AddOrPut(JSContext* aCx,
+   MOZ_ASSERT(aCx);
+   MOZ_ASSERT_IF(aFromCursor, aOverwrite);
+-  if (mTransaction->GetMode() == IDBTransaction::CLEANUP ||
++  if (mTransaction->GetMode() == IDBTransaction::IDB_MODE_CLEANUP ||
+       mDeletedSpec) {
+     aRv.Throw(NS_ERROR_DOM_INDEXEDDB_NOT_ALLOWED_ERR);
+     return nullptr;
+diff --git a/dom/indexedDB/IDBTransaction.cpp b/dom/indexedDB/IDBTransaction.cpp
+index a50489898..ef9d02414 100644
+--- a/dom/indexedDB/IDBTransaction.cpp
++++ b/dom/indexedDB/IDBTransaction.cpp
+@@ -216,7 +216,7 @@ IDBTransaction::Create(JSContext* aCx, IDBDatabase* aDatabase,
+   MOZ_ASSERT(aMode == READ_ONLY ||
+              aMode == READ_WRITE ||
+              aMode == READ_WRITE_FLUSH ||
+-             aMode == CLEANUP);
++             aMode == IDB_MODE_CLEANUP);
+   RefPtr<IDBTransaction> transaction =
+     new IDBTransaction(aDatabase, aObjectStoreNames, aMode);
+@@ -871,7 +871,7 @@ IDBTransaction::GetMode(ErrorResult& aRv) const
+     case READ_WRITE_FLUSH:
+       return IDBTransactionMode::Readwriteflush;
+-    case CLEANUP:
++    case IDB_MODE_CLEANUP:
+       return IDBTransactionMode::Cleanup;
+     case VERSION_CHANGE:
+diff --git a/dom/indexedDB/IDBTransaction.h b/dom/indexedDB/IDBTransaction.h
+index 1c3e8be99..4fc189902 100644
+--- a/dom/indexedDB/IDBTransaction.h
++++ b/dom/indexedDB/IDBTransaction.h
+@@ -59,7 +59,7 @@ public:
+     READ_ONLY = 0,
+     READ_WRITE,
+     READ_WRITE_FLUSH,
+-    CLEANUP,
++    IDB_MODE_CLEANUP,
+     VERSION_CHANGE,
+     // Only needed for IPC serialization helper, should never be used in code.
+@@ -189,7 +189,7 @@ public:
+     AssertIsOnOwningThread();
+     return mMode == READ_WRITE ||
+            mMode == READ_WRITE_FLUSH ||
+-           mMode == CLEANUP ||
++           mMode == IDB_MODE_CLEANUP ||
+            mMode == VERSION_CHANGE;
+   }
+diff --git a/dom/indexedDB/ProfilerHelpers.h b/dom/indexedDB/ProfilerHelpers.h
+index 63fdafcce..b9192d5d6 100644
+--- a/dom/indexedDB/ProfilerHelpers.h
++++ b/dom/indexedDB/ProfilerHelpers.h
+@@ -129,7 +129,7 @@ public:
+       case IDBTransaction::READ_WRITE_FLUSH:
+         AppendLiteral("\"readwriteflush\"");
+         break;
+-      case IDBTransaction::CLEANUP:
++      case IDBTransaction::IDB_MODE_CLEANUP:
+         AppendLiteral("\"cleanup\"");
+         break;
+       case IDBTransaction::VERSION_CHANGE:
diff --git a/www-client/firefox/files/firefox-52.9.0-fix-missing-includes.patch b/www-client/firefox/files/firefox-52.9.0-fix-missing-includes.patch
new file mode 100644 (file)
index 0000000..7f57d32
--- /dev/null
@@ -0,0 +1,37 @@
+diff --git a/gfx/2d/BaseRect.h b/gfx/2d/BaseRect.h
+index 57d01ba09..b1eed9ddb 100644
+--- a/gfx/2d/BaseRect.h
++++ b/gfx/2d/BaseRect.h
+@@ -9,6 +9,7 @@
+ #include <algorithm>
+ #include <cmath>
+ #include <ostream>
++#include <limits>
+ #include "mozilla/Assertions.h"
+ #include "mozilla/FloatingPoint.h"
+diff --git a/gfx/2d/Matrix.h b/gfx/2d/Matrix.h
+index 22a01ca10..e221ba3d2 100644
+--- a/gfx/2d/Matrix.h
++++ b/gfx/2d/Matrix.h
+@@ -13,6 +13,7 @@
+ #include "Quaternion.h"
+ #include <iosfwd>
+ #include <math.h>
++#include <limits>
+ #include "mozilla/Attributes.h"
+ #include "mozilla/DebugOnly.h"
+ #include "mozilla/FloatingPoint.h"
+diff --git a/media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.cc b/media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.cc
+index 941e635b1..3668a5047 100644
+--- a/media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.cc
++++ b/media/webrtc/trunk/webrtc/modules/audio_coding/codecs/opus/audio_encoder_opus.cc
+@@ -8,6 +8,8 @@
+  *  be found in the AUTHORS file in the root of the source tree.
+  */
++#include <limits>
++
+ #include "webrtc/modules/audio_coding/codecs/opus/interface/audio_encoder_opus.h"
+ #include "webrtc/base/checks.h"
diff --git a/www-client/firefox/files/firefox-52.9.0-fix-thebes-templates.patch b/www-client/firefox/files/firefox-52.9.0-fix-thebes-templates.patch
new file mode 100644 (file)
index 0000000..ac62839
--- /dev/null
@@ -0,0 +1,183 @@
+diff --git a/gfx/thebes/gfxFont.cpp b/gfx/thebes/gfxFont.cpp
+index d0b747fff..9ec629285 100644
+--- a/gfx/thebes/gfxFont.cpp
++++ b/gfx/thebes/gfxFont.cpp
+@@ -2535,85 +2535,6 @@ IsBoundarySpace(char16_t aChar, char16_t aNextChar)
+     return 0;
+ }
+-#ifdef __GNUC__
+-#define GFX_MAYBE_UNUSED __attribute__((unused))
+-#else
+-#define GFX_MAYBE_UNUSED
+-#endif
+-
+-template<typename T>
+-gfxShapedWord*
+-gfxFont::GetShapedWord(DrawTarget *aDrawTarget,
+-                       const T    *aText,
+-                       uint32_t    aLength,
+-                       uint32_t    aHash,
+-                       Script      aRunScript,
+-                       bool        aVertical,
+-                       int32_t     aAppUnitsPerDevUnit,
+-                       uint32_t    aFlags,
+-                       gfxTextPerfMetrics *aTextPerf GFX_MAYBE_UNUSED)
+-{
+-    // if the cache is getting too big, flush it and start over
+-    uint32_t wordCacheMaxEntries =
+-        gfxPlatform::GetPlatform()->WordCacheMaxEntries();
+-    if (mWordCache->Count() > wordCacheMaxEntries) {
+-        NS_WARNING("flushing shaped-word cache");
+-        ClearCachedWords();
+-    }
+-
+-    // if there's a cached entry for this word, just return it
+-    CacheHashKey key(aText, aLength, aHash,
+-                     aRunScript,
+-                     aAppUnitsPerDevUnit,
+-                     aFlags);
+-
+-    CacheHashEntry *entry = mWordCache->PutEntry(key);
+-    if (!entry) {
+-        NS_WARNING("failed to create word cache entry - expect missing text");
+-        return nullptr;
+-    }
+-    gfxShapedWord* sw = entry->mShapedWord.get();
+-
+-    bool isContent = !mStyle.systemFont;
+-
+-    if (sw) {
+-        sw->ResetAge();
+-        Telemetry::Accumulate((isContent ? Telemetry::WORD_CACHE_HITS_CONTENT :
+-                                   Telemetry::WORD_CACHE_HITS_CHROME),
+-                              aLength);
+-#ifndef RELEASE_OR_BETA
+-        if (aTextPerf) {
+-            aTextPerf->current.wordCacheHit++;
+-        }
+-#endif
+-        return sw;
+-    }
+-
+-    Telemetry::Accumulate((isContent ? Telemetry::WORD_CACHE_MISSES_CONTENT :
+-                               Telemetry::WORD_CACHE_MISSES_CHROME),
+-                          aLength);
+-#ifndef RELEASE_OR_BETA
+-    if (aTextPerf) {
+-        aTextPerf->current.wordCacheMiss++;
+-    }
+-#endif
+-
+-    sw = gfxShapedWord::Create(aText, aLength, aRunScript, aAppUnitsPerDevUnit,
+-                               aFlags);
+-    entry->mShapedWord.reset(sw);
+-    if (!sw) {
+-        NS_WARNING("failed to create gfxShapedWord - expect missing text");
+-        return nullptr;
+-    }
+-
+-    DebugOnly<bool> ok =
+-        ShapeText(aDrawTarget, aText, 0, aLength, aRunScript, aVertical, sw);
+-
+-    NS_WARNING_ASSERTION(ok, "failed to shape word - expect garbled text");
+-
+-    return sw;
+-}
+-
+ bool
+ gfxFont::CacheHashEntry::KeyEquals(const KeyTypePointer aKey) const
+ {
+diff --git a/gfx/thebes/gfxFont.h b/gfx/thebes/gfxFont.h
+index ead0b7666..c38d06675 100644
+--- a/gfx/thebes/gfxFont.h
++++ b/gfx/thebes/gfxFont.h
+@@ -2220,4 +2220,88 @@ struct EmphasisMarkDrawParams {
+     bool isVertical;
+ };
++#include "mozilla/Telemetry.h"
++#include "mozilla/DebugOnly.h"
++
++#ifdef __GNUC__
++#define GFX_MAYBE_UNUSED __attribute__((unused))
++#else
++#define GFX_MAYBE_UNUSED
++#endif
++
++template<typename T>
++gfxShapedWord*
++gfxFont::GetShapedWord(DrawTarget *aDrawTarget,
++                       const T    *aText,
++                       uint32_t    aLength,
++                       uint32_t    aHash,
++                       Script      aRunScript,
++                       bool        aVertical,
++                       int32_t     aAppUnitsPerDevUnit,
++                       uint32_t    aFlags,
++                       gfxTextPerfMetrics *aTextPerf GFX_MAYBE_UNUSED)
++{
++    using namespace mozilla;
++
++    // if the cache is getting too big, flush it and start over
++    uint32_t wordCacheMaxEntries =
++        gfxPlatform::GetPlatform()->WordCacheMaxEntries();
++    if (mWordCache->Count() > wordCacheMaxEntries) {
++        NS_WARNING("flushing shaped-word cache");
++        ClearCachedWords();
++    }
++
++    // if there's a cached entry for this word, just return it
++    CacheHashKey key(aText, aLength, aHash,
++                     aRunScript,
++                     aAppUnitsPerDevUnit,
++                     aFlags);
++
++    CacheHashEntry *entry = mWordCache->PutEntry(key);
++    if (!entry) {
++        NS_WARNING("failed to create word cache entry - expect missing text");
++        return nullptr;
++    }
++    gfxShapedWord* sw = entry->mShapedWord.get();
++
++    bool isContent = !mStyle.systemFont;
++
++    if (sw) {
++        sw->ResetAge();
++        Telemetry::Accumulate((isContent ? Telemetry::WORD_CACHE_HITS_CONTENT :
++                                   Telemetry::WORD_CACHE_HITS_CHROME),
++                              aLength);
++#ifndef RELEASE_OR_BETA
++        if (aTextPerf) {
++            aTextPerf->current.wordCacheHit++;
++        }
++#endif
++        return sw;
++    }
++
++    Telemetry::Accumulate((isContent ? Telemetry::WORD_CACHE_MISSES_CONTENT :
++                               Telemetry::WORD_CACHE_MISSES_CHROME),
++                          aLength);
++#ifndef RELEASE_OR_BETA
++    if (aTextPerf) {
++        aTextPerf->current.wordCacheMiss++;
++    }
++#endif
++
++    sw = gfxShapedWord::Create(aText, aLength, aRunScript, aAppUnitsPerDevUnit,
++                               aFlags);
++    entry->mShapedWord.reset(sw);
++    if (!sw) {
++        NS_WARNING("failed to create gfxShapedWord - expect missing text");
++        return nullptr;
++    }
++
++    DebugOnly<bool> ok =
++        ShapeText(aDrawTarget, aText, 0, aLength, aRunScript, aVertical, sw);
++
++    NS_WARNING_ASSERTION(ok, "failed to shape word - expect garbled text");
++
++    return sw;
++}
++
+ #endif
diff --git a/www-client/firefox/files/firefox-52.9.0-glibc-2.30.patch b/www-client/firefox/files/firefox-52.9.0-glibc-2.30.patch
new file mode 100644 (file)
index 0000000..caa1141
--- /dev/null
@@ -0,0 +1,13 @@
+diff --git a/tools/profiler/core/platform.h b/tools/profiler/core/platform.h
+index 2e736d97c..8f9c2ede3 100644
+--- a/tools/profiler/core/platform.h
++++ b/tools/profiler/core/platform.h
+@@ -61,7 +61,7 @@
+ // We need a definition of gettid(), but Linux libc implementations don't
+ // provide a wrapper for it (except for Bionic)
+-#if defined(__linux__)
++#if defined(__linux__) && __GLIBC__ <= 2 && __GLIBC_MINOR__ < 30
+ #include <unistd.h>
+ #if !defined(__BIONIC__)
+ #include <sys/syscall.h>
diff --git a/www-client/firefox/files/firefox-52.9.0-glibc-2.36.patch b/www-client/firefox/files/firefox-52.9.0-glibc-2.36.patch
new file mode 100644 (file)
index 0000000..774e903
--- /dev/null
@@ -0,0 +1,61 @@
+diff --git a/ipc/chromium/src/third_party/libevent/evutil_rand.c b/ipc/chromium/src/third_party/libevent/evutil_rand.c
+index 3bab23121..c1e8a98ef 100644
+--- a/ipc/chromium/src/third_party/libevent/evutil_rand.c
++++ b/ipc/chromium/src/third_party/libevent/evutil_rand.c
+@@ -39,7 +39,7 @@
+ #include "util-internal.h"
+ #include "evthread-internal.h"
+-#ifdef _EVENT_HAVE_ARC4RANDOM
++#if _EVENT_HAVE_ARC4RANDOM
+ #include <stdlib.h>
+ #include <string.h>
+ int
+@@ -58,7 +58,7 @@ evutil_secure_rng_global_setup_locks_(const int enable_locks)
+ static void
+ ev_arc4random_buf(void *buf, size_t n)
+ {
+-#if defined(_EVENT_HAVE_ARC4RANDOM_BUF) && !(defined(__APPLE__) || defined(__ANDROID__))
++#if _EVENT_HAVE_ARC4RANDOM_BUF && !(defined(__APPLE__) || defined(__ANDROID__))
+       arc4random_buf(buf, n);
+ #else
+       unsigned char *b = buf;
+@@ -139,7 +139,7 @@ evutil_secure_rng_get_bytes(void *buf, size_t n)
+       ev_arc4random_buf(buf, n);
+ }
+-#if !defined(__OpenBSD__) && !defined(ANDROID)
++#if 0
+ void
+ evutil_secure_rng_add_bytes(const char *buf, size_t n)
+ {
+diff --git a/ipc/chromium/src/third_party/libevent/include/event2/util.h b/ipc/chromium/src/third_party/libevent/include/event2/util.h
+index 42a28adcb..ed6b6207f 100644
+--- a/ipc/chromium/src/third_party/libevent/include/event2/util.h
++++ b/ipc/chromium/src/third_party/libevent/include/event2/util.h
+@@ -672,7 +672,7 @@ void evutil_secure_rng_get_bytes(void *buf, size_t n);
+  */
+ int evutil_secure_rng_init(void);
+-#if !defined(__OpenBSD__) && !defined(ANDROID)
++#if 0
+ /** Seed the random number generator with extra random bytes.
+     You should almost never need to call this function; it should be
+diff --git a/ipc/chromium/src/third_party/libevent/linux/event2/event-config.h b/ipc/chromium/src/third_party/libevent/linux/event2/event-config.h
+index 56ebd3aba..21717abed 100644
+--- a/ipc/chromium/src/third_party/libevent/linux/event2/event-config.h
++++ b/ipc/chromium/src/third_party/libevent/linux/event2/event-config.h
+@@ -24,10 +24,10 @@
+ /* #undef _EVENT_DISABLE_THREAD_SUPPORT */
+ /* Define to 1 if you have the `arc4random' function. */
+-/* #undef _EVENT_HAVE_ARC4RANDOM */
++#define _EVENT_HAVE_ARC4RANDOM (__GLIBC__ >= 2 && __GLIBC_MINOR__ >= 36)
+ /* Define to 1 if you have the `arc4random_buf' function. */
+-/* #undef _EVENT_HAVE_ARC4RANDOM_BUF */
++#define _EVENT_HAVE_ARC4RANDOM_BUF _EVENT_HAVE_ARC4RANDOM
+ /* Define to 1 if you have the <arpa/inet.h> header file. */
+ #define _EVENT_HAVE_ARPA_INET_H 1
diff --git a/www-client/firefox/files/firefox-52.9.0-less-werror.patch b/www-client/firefox/files/firefox-52.9.0-less-werror.patch
new file mode 100644 (file)
index 0000000..7e624e3
--- /dev/null
@@ -0,0 +1,13 @@
+diff --git a/js/src/moz.build b/js/src/moz.build
+index 1162cb70c..595ea9842 100644
+--- a/js/src/moz.build
++++ b/js/src/moz.build
+@@ -785,7 +785,7 @@ if CONFIG['JS_HAS_CTYPES']:
+         DEFINES['FFI_BUILDING'] = True
+ if CONFIG['GNU_CXX']:
+-    CXXFLAGS += ['-Wno-shadow', '-Werror=format']
++    CXXFLAGS += ['-Wno-shadow']
+ # Suppress warnings in third-party code.
+ if CONFIG['CLANG_CXX']:
diff --git a/www-client/firefox/files/gentoo-default-prefs.js-1 b/www-client/firefox/files/gentoo-default-prefs.js-1
new file mode 100644 (file)
index 0000000..22a51ff
--- /dev/null
@@ -0,0 +1,17 @@
+pref("app.update.enabled",                 false);
+pref("app.update.autoInstallEnabled",      false);
+pref("browser.display.use_system_colors",  true);
+pref("browser.link.open_external",         3);
+pref("general.smoothScroll",               true);
+pref("general.autoScroll",                 false);
+pref("browser.tabs.tabMinWidth",           15);
+pref("browser.backspace_action",           0);
+pref("browser.urlbar.hideGoButton",        true);
+pref("accessibility.typeaheadfind",        true);
+pref("browser.shell.checkDefaultBrowser",  false); 
+pref("browser.EULA.override",              true); 
+pref("general.useragent.vendor", "Gentoo");
+pref("intl.locale.matchOS", true);
+pref("general.useragent.locale", "chrome://global/locale/intl.properties");
+pref("extensions.autoDisableScopes", 0);
+pref("layout.css.dpi", 0);
diff --git a/www-client/firefox/files/gentoo-hwaccel-prefs.js-1 b/www-client/firefox/files/gentoo-hwaccel-prefs.js-1
new file mode 100644 (file)
index 0000000..0cb92b0
--- /dev/null
@@ -0,0 +1,2 @@
+pref("layers.acceleration.force-enabled",  true);
+pref("webgl.force-enabled",                true);
diff --git a/www-client/firefox/files/icon/firefox.desktop b/www-client/firefox/files/icon/firefox.desktop
new file mode 100644 (file)
index 0000000..1affce8
--- /dev/null
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=@NAME@
+Comment=Web Browser
+Exec=firefox %u
+Icon=@ICON@
+Terminal=false
+Type=Application
+MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
+Categories=Network;WebBrowser;
+
diff --git a/www-client/firefox/firefox-52.9.0-r3.ebuild b/www-client/firefox/firefox-52.9.0-r3.ebuild
new file mode 100644 (file)
index 0000000..5c08255
--- /dev/null
@@ -0,0 +1,424 @@
+# This ebuild is a modified version of the work originally distributed with
+# Gentoo GNU/Linux, covered by the following copyright and permission notice:
+#
+#   Copyright 1999-2020 Gentoo Authors
+#   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications are:
+#
+#   * Apply patches to build on modern systems (2022-12)
+#   * Update to EAPI 8 (2023-04)
+
+EAPI=8
+VIRTUALX_REQUIRED="pgo"
+WANT_AUTOCONF="2.1"
+MOZ_ESR=1
+
+# This list can be updated with scripts/get_langs.sh from the mozilla overlay
+MOZ_LANGS=( ach af an ar as ast az bg bn-BD bn-IN br bs ca cak cs cy da de dsb
+el en en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy-NL ga-IE
+gd gl gn gu-IN he hi-IN hr hsb hu hy-AM id is it ja ka kab kk km kn ko lij lt lv
+mai mk ml mr ms nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq
+sr sv-SE ta te th tr uk uz vi xh zh-CN zh-TW )
+
+# Convert the ebuild version to the upstream mozilla version, used by mozlinguas
+MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI
+MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
+MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI
+
+if [[ ${MOZ_ESR} == 1 ]]; then
+       # ESR releases have slightly different version numbers
+       MOZ_PV="${MOZ_PV}esr"
+fi
+
+# Patch version
+PATCH="${PN}-52.5-patches-02"
+MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
+
+MOZCONFIG_OPTIONAL_GTK2ONLY=1
+MOZCONFIG_OPTIONAL_WIFI=1
+
+inherit check-reqs flag-o-matic toolchain-funcs desktop mozconfig-v6.52 pax-utils xdg-utils autotools virtualx mozlinguas-v2
+
+DESCRIPTION="Firefox Web Browser"
+HOMEPAGE="https://www.mozilla.org/firefox"
+
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux"
+
+SLOT="0"
+LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
+IUSE="bindist eme-free +gmp-autoupdate hardened hwaccel jack pgo rust selinux test"
+RESTRICT="!bindist? ( bindist ) !test? ( test )"
+
+PATCH_URIS=( https://dev.gentoo.org/~{anarchy,axs,polynomial-c}/mozilla/patchsets/${PATCH}.tar.xz )
+SRC_URI="${SRC_URI}
+       ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz
+       ${PATCH_URIS[@]}"
+
+ASM_DEPEND=">=dev-lang/yasm-1.1"
+
+RDEPEND="
+       jack? ( virtual/jack )
+       >=dev-libs/nss-3.28.3
+       >=dev-libs/nspr-4.13.1
+       selinux? ( sec-policy/selinux-mozilla )"
+
+DEPEND="${RDEPEND}
+       pgo? ( >=sys-devel/gcc-4.5 )
+       rust? ( virtual/rust )
+       amd64? ( ${ASM_DEPEND} virtual/opengl )
+       x86? ( ${ASM_DEPEND} virtual/opengl )"
+
+S="${WORKDIR}/firefox-${MOZ_PV}"
+
+QA_PRESTRIPPED="usr/lib*/${PN}/firefox"
+
+BUILD_OBJ_DIR="${S}/ff"
+
+# allow GMP_PLUGIN_LIST to be set in an eclass or
+# overridden in the enviromnent (advanced hackers only)
+if [[ -z $GMP_PLUGIN_LIST ]]; then
+       GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
+fi
+
+pkg_setup() {
+       moz_pkgsetup
+
+       # Avoid PGO profiling problems due to enviroment leakage
+       # These should *always* be cleaned up anyway
+       unset DBUS_SESSION_BUS_ADDRESS \
+               DISPLAY \
+               ORBIT_SOCKETDIR \
+               SESSION_MANAGER \
+               XDG_SESSION_COOKIE \
+               XAUTHORITY
+
+       if ! use bindist; then
+               einfo
+               elog "You are enabling official branding. You may not redistribute this build"
+               elog "to any users on your network or the internet. Doing so puts yourself into"
+               elog "a legal problem with Mozilla Foundation"
+               elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag"
+       fi
+
+       if use pgo; then
+               einfo
+               ewarn "You will do a double build for profile guided optimization."
+               ewarn "This will result in your build taking at least twice as long as before."
+       fi
+
+       if use rust; then
+               einfo
+               ewarn "This is very experimental, should only be used by those developing firefox."
+       fi
+}
+
+pkg_pretend() {
+       # Ensure we have enough disk space to compile
+       if use pgo || use debug || use test ; then
+               CHECKREQS_DISK_BUILD="8G"
+       else
+               CHECKREQS_DISK_BUILD="4G"
+       fi
+       check-reqs_pkg_setup
+}
+
+src_unpack() {
+       unpack ${A}
+
+       # Unpack language packs
+       mozlinguas_src_unpack
+}
+
+src_prepare() {
+       xdg_environment_reset
+
+       # Apply our patches
+       rm -f "${WORKDIR}"/firefox/2007_fix_nvidia_latest.patch
+       eapply "${WORKDIR}/firefox"
+
+       eapply "${FILESDIR}"/${P}-blessings-TERM.patch # 654316
+       eapply "${FILESDIR}"/${P}-fix-missing-includes.patch
+       eapply "${FILESDIR}"/${P}-fix-idb-name-conflict.patch
+       eapply "${FILESDIR}"/${P}-glibc-2.30.patch
+       eapply "${FILESDIR}"/${P}-glibc-2.36.patch
+       eapply "${FILESDIR}"/${P}-less-werror.patch
+       eapply "${FILESDIR}"/${P}-fix-thebes-templates.patch
+
+       # Enable gnomebreakpad
+       if use debug ; then
+               sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
+                       "${S}"/build/unix/run-mozilla.sh || die "sed failed!"
+       fi
+
+       # Drop -Wl,--as-needed related manipulation for ia64 as it causes ld sefgaults, bug #582432
+       if use ia64 ; then
+               sed -i \
+               -e '/^OS_LIBS += no_as_needed/d' \
+               -e '/^OS_LIBS += as_needed/d' \
+               "${S}"/widget/gtk/mozgtk/gtk2/moz.build \
+               "${S}"/widget/gtk/mozgtk/gtk3/moz.build \
+               || die "sed failed to drop --as-needed for ia64"
+       fi
+
+       # Ensure that our plugins dir is enabled as default
+       sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \
+               "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!"
+       sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \
+               "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!"
+
+       # Fix sandbox violations during make clean, bug 372817
+       sed -e "s:\(/no-such-file\):${T}\1:g" \
+               -i "${S}"/config/rules.mk \
+               -i "${S}"/nsprpub/configure{.in,} \
+               || die
+
+       # Don't exit with error when some libs are missing which we have in
+       # system.
+       sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
+               -i "${S}"/browser/installer/Makefile.in || die
+
+       # Don't error out when there's no files to be removed:
+       sed 's@\(xargs rm\)$@\1 -f@' \
+               -i "${S}"/toolkit/mozapps/installer/packager.mk || die
+
+       # Keep codebase the same even if not using official branding
+       sed '/^MOZ_DEV_EDITION=1/d' \
+               -i "${S}"/browser/branding/aurora/configure.sh || die
+
+       # Allow user to apply any additional patches without modifing ebuild
+       eapply_user
+
+       # Autotools configure is now called old-configure.in
+       # This works because there is still a configure.in that happens to be for the
+       # shell wrapper configure script
+       eautoreconf old-configure.in
+
+       # Must run autoconf in js/src
+       cd "${S}"/js/src || die
+       eautoconf old-configure.in
+
+       # Need to update jemalloc's configure
+       cd "${S}"/memory/jemalloc/src || die
+       WANT_AUTOCONF= eautoconf
+}
+
+src_configure() {
+       MEXTENSIONS="default"
+       # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
+       # Note: These are for Gentoo Linux use ONLY. For your own distribution, please
+       # get your own set of keys.
+       _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc
+
+       ####################################
+       #
+       # mozconfig, CFLAGS and CXXFLAGS setup
+       #
+       ####################################
+
+       mozconfig_init
+       mozconfig_config
+
+       # enable JACK, bug 600002
+       mozconfig_use_enable jack
+
+       use eme-free && mozconfig_annotate '+eme-free' --disable-eme
+
+       # It doesn't compile on alpha without this LDFLAGS
+       use alpha && append-ldflags "-Wl,--no-relax"
+
+       # Add full relro support for hardened
+       use hardened && append-ldflags "-Wl,-z,relro,-z,now"
+
+       # Only available on mozilla-overlay for experimentation -- Removed in Gentoo repo per bug 571180
+       #use egl && mozconfig_annotate 'Enable EGL as GL provider' --with-gl-provider=EGL
+
+       # Setup api key for location services
+       echo -n "${_google_api_key}" > "${S}"/google-api-key
+       mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key"
+
+       mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+
+       mozconfig_use_enable rust
+
+       # Allow for a proper pgo build
+       if use pgo; then
+               echo "mk_add_options PROFILE_GEN_SCRIPT='EXTRA_TEST_ARGS=10 \$(MAKE) -C \$(MOZ_OBJDIR) pgo-profile-run'" >> "${S}"/.mozconfig
+       fi
+
+       echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
+       echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig
+
+       # Finalize and report settings
+       mozconfig_final
+
+       if [[ $(gcc-major-version) -lt 4 ]]; then
+               append-cxxflags -fno-stack-protector
+#      else
+#              append-cxxflags -fpermissive
+       fi
+
+       # workaround for funky/broken upstream configure...
+       SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+       emake -f client.mk configure
+}
+
+src_compile() {
+       if use pgo; then
+               addpredict /root
+               addpredict /etc/gconf
+
+               # Firefox tries to use dri stuff when it's run, see bug 380283
+               shopt -s nullglob
+               cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+               if test -z "${cards}"; then
+                       cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g')
+                       if test -n "${cards}"; then
+                               # Binary drivers seem to cause access violations anyway, so
+                               # let's use indirect rendering so that the device files aren't
+                               # touched at all. See bug 394715.
+                               export LIBGL_ALWAYS_INDIRECT=1
+                       fi
+               fi
+               shopt -u nullglob
+               [[ -n "${cards}" ]] && addpredict "${cards}"
+
+               MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+               virtx emake -f client.mk profiledbuild
+       else
+               MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+               emake -f client.mk realbuild
+       fi
+
+}
+
+src_install() {
+       cd "${BUILD_OBJ_DIR}" || die
+
+       # Pax mark xpcshell for hardened support, only used for startupcache creation.
+       pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
+
+       # Add our default prefs for firefox
+       cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
+               "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+               || die
+
+       mozconfig_install_prefs \
+               "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js"
+
+       # Augment this with hwaccel prefs
+       if use hwaccel ; then
+               cat "${FILESDIR}"/gentoo-hwaccel-prefs.js-1 >> \
+               "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+               || die
+       fi
+
+       echo "pref(\"extensions.autoDisableScopes\", 3);" >> \
+               "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+               || die
+
+       local plugin
+       use gmp-autoupdate || use eme-free || for plugin in "${GMP_PLUGIN_LIST[@]}" ; do
+               echo "pref(\"media.${plugin}.autoupdate\", false);" >> \
+                       "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \
+                       || die
+       done
+
+       MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
+       emake DESTDIR="${D}" install
+
+       # Install language packs
+       mozlinguas_src_install
+
+       local size sizes icon_path icon name
+       if use bindist; then
+               sizes="16 32 48"
+               icon_path="${S}/browser/branding/aurora"
+               # Firefox's new rapid release cycle means no more codenames
+               # Let's just stick with this one...
+               icon="aurora"
+               name="Aurora"
+
+               # Override preferences to set the MOZ_DEV_EDITION defaults, since we
+               # don't define MOZ_DEV_EDITION to avoid profile debaucles.
+               # (source: browser/app/profile/firefox.js)
+               cat >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" <<PROFILE_EOF
+pref("app.feedback.baseURL", "https://input.mozilla.org/%LOCALE%/feedback/firefoxdev/%VERSION%/");
+sticky_pref("lightweightThemes.selectedThemeID", "firefox-devedition@mozilla.org");
+sticky_pref("browser.devedition.theme.enabled", true);
+sticky_pref("devtools.theme", "dark");
+PROFILE_EOF
+
+       else
+               sizes="16 22 24 32 256"
+               icon_path="${S}/browser/branding/official"
+               icon="${PN}"
+               name="Mozilla Firefox"
+       fi
+
+       # Install icons and .desktop for menu entry
+       for size in ${sizes}; do
+               insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
+               newins "${icon_path}/default${size}.png" "${icon}.png"
+       done
+       # The 128x128 icon has a different name
+       insinto "/usr/share/icons/hicolor/128x128/apps"
+       newins "${icon_path}/mozicon128.png" "${icon}.png"
+       # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
+       newicon "${icon_path}/content/icon48.png" "${icon}.png"
+       newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop"
+       sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \
+               "${ED}/usr/share/applications/${PN}.desktop" || die
+
+       # Add StartupNotify=true bug 237317
+       if use startup-notification ; then
+               echo "StartupNotify=true"\
+                        >> "${ED}/usr/share/applications/${PN}.desktop" \
+                       || die
+       fi
+
+       # Required in order to use plugins and even run firefox on hardened.
+       pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container}
+}
+
+pkg_preinst() {
+       # if the apulse libs are available in MOZILLA_FIVE_HOME then apulse
+       # doesn't need to be forced into the LD_LIBRARY_PATH
+       if use pulseaudio && has_version ">=media-sound/apulse-0.1.9" ; then
+               einfo "APULSE found - Generating library symlinks for sound support"
+               local lib
+               pushd "${ED}"${MOZILLA_FIVE_HOME} &>/dev/null || die
+               for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
+                       # a quickpkg rolled by hand will grab symlinks as part of the package,
+                       # so we need to avoid creating them if they already exist.
+                       if ! [ -L ${lib##*/} ]; then
+                               ln -s "${lib}" ${lib##*/} || die
+                       fi
+               done
+               popd &>/dev/null || die
+       fi
+}
+
+pkg_postinst() {
+       # Update mimedb for the new .desktop file
+       xdg_desktop_database_update
+       xdg_icon_cache_update
+
+       if ! use gmp-autoupdate && ! use eme-free ; then
+               elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
+               elog "installing into new profiles:"
+               local plugin
+               for plugin in "${GMP_PLUGIN_LIST[@]}"; do elog "\t ${plugin}" ; done
+       fi
+
+       if use pulseaudio && has_version ">=media-sound/apulse-0.1.9" ; then
+               elog "Apulse was detected at merge time on this system and so it will always be"
+               elog "used for sound.  If you wish to use pulseaudio instead please unmerge"
+               elog "media-sound/apulse."
+       fi
+}
+
+pkg_postrm() {
+       xdg_desktop_database_update
+       xdg_icon_cache_update
+}
index d2306658650fb4c4e67a4459ad9897f69c03e8bf..67412ab845791b46ccfc2ef5a78a2c8e7891080d 100644 (file)
@@ -1,2 +1,2 @@
-EBUILD xorg-x11-7.4-r3.ebuild 3797 BLAKE2B d87d8f37f7440d5171695c698a723c34bc85c24ec9565f112733e3b8de064d54fd7d94238957daca7f7f066c228dc68cbe4669c54029f79aae31c7e3e9d1db2a SHA512 1a8c057764d50bbe7ca90d2a6915409157a17d79c7e43a446421099a2803255293b57f00e92b9970044f26f9ca90f0ced1b76d01fcc0d7fb1d8e3541878db258
+EBUILD xorg-x11-7.4-r5.ebuild 3748 BLAKE2B 21741a7c0e40cbe6670bb16b2ccfe2086220cbf1fd0a0fc3719d3f7cc82961e677d77e39f42136408b9014e00cc4f2853fab5f456d6711bc0f8e04b096c5dfc7 SHA512 53e1b43b0191cd19b59d2ab42c691e7c6062021c1233f3fb961cf3fa22359453fd51175b0602d3be0e727cc2108c7c17c926fb47ec6ba1e77a4543bdcebd4c9f
 MISC metadata.xml 233 BLAKE2B 275dfed53b44f8c976a9b718cfbdb421c28ad80097e632173f27a3400ce32f2eaf7f686929b486626b9aa23afa40cd49f61b975a3876a8e61e1577c3c1db9405 SHA512 a06995e9f52455988091f273b40be5bbfa56c864d45f5fe73f731f0aaa9a317804305bd87c36eaa39ffd6b6d096c1fc54559221a0e11fa56ac2f01e0b959e12e
similarity index 88%
rename from x11-base/xorg-x11/xorg-x11-7.4-r3.ebuild
rename to x11-base/xorg-x11/xorg-x11-7.4-r5.ebuild
index d9a447ff5442fde2ac78fb3aadeee10cae0ea594..2e36863478579906968e5cf0d52fc27dc4799d70 100644 (file)
@@ -1,13 +1,14 @@
-# Copyright © 2014,2017-2018,2020 Nick Bowler
-# License GPLv2+: GNU General Public License version 2 or any later version.
-# This is free software: you are free to change and redistribute it.
-# There is NO WARRANTY, to the extent permitted by law.
-#
-# This a modified version of the original ebuild from Gentoo GNU/Linux,
-# covered by the following copyright and permission notice:
+# This ebuild is a modified version of the work originally distributed with
+# Gentoo GNU/Linux, covered by the following copyright and permission notice:
 #
 #   Copyright 1999-2020 Gentoo Authors
 #   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications are:
+#
+#   * Add bh-fonts USE flag to avoid installing nonfree B&H fonts (2014-09)
+#   * Remove dependency on unsupported bitstreem-speedo fonts (2023-05)
+#   * Remove dependency on xf86dga application (2023-07)
 
 EAPI=6
 
@@ -43,7 +44,6 @@ RDEPEND="${RDEPEND}
        x11-apps/xdpyinfo
        x11-apps/xdriinfo
        x11-apps/xev
-       x11-apps/xf86dga
        x11-apps/xgamma
        x11-apps/xhost
        x11-apps/xinput
@@ -99,7 +99,6 @@ RDEPEND="${RDEPEND}
                )
                media-fonts/font-bitstream-100dpi
                media-fonts/font-bitstream-75dpi
-               media-fonts/font-bitstream-speedo
                media-fonts/font-bitstream-type1
                media-fonts/font-cronyx-cyrillic
                media-fonts/font-cursor-misc
index 3606e7652949ca04201e5b0bbe9fce0dc38d4118..93e54538d080ccaabd950506628c9cae73a5afa3 100644 (file)
@@ -1,10 +1,10 @@
 AUX README.translucency 3723 BLAKE2B aae37e9dbdf8f7b730b6947d55f0e286c1269d5cacc9ce6d2481562b054c2fa9010acf6ee0d6c994ea3cee64d3df99ef6d08dfa8c6b58706bc9bb8b477095e1b SHA512 a64ef5147e52e07d4cec8a2f3ebd1340827d0139031ef7ddaf27fc144fcc58858c3ec40eee854034423f853b2c7bdd813f66236c8a9679977084f4a2176a8ffa
-AUX fvwm-2.5.27-translucent-menus.diff 15765 BLAKE2B 85623d5d671d97842ffe819ddfa1045b91ef76101ccf8cc6fdf4854c1675b397715977efafb174e340c487bafed12677a1cacb83e201424a9fed43bdfa7f8475 SHA512 92f78b624ea2bfddb88f825f40930a0a7e4bb1d284276e62985f189cd5b72ee8a92131f7d2a91efdbf508fc8ef002f5b4168188b12b0e23e28fb1ebec471969d
-AUX fvwm-2.6.5-ar.patch 1077 BLAKE2B ebd3226a706087c7e7f7935a9862c59e628551e19be66d110441075839484b6bb26667104090258267b3e484c6fc0b0650349488902d216f3cf841c23e45b59e SHA512 fc66ee5c79b96860705d72b18aab3f8c8f8ad84fead47c4f8f944474a6bfbe0569ee08aa51e8a4d7982541eecd5c302499f99ebf8568f4b4fb1c9e2369233e45
-AUX fvwm-2.6.5-mouse-buttons.patch 519 BLAKE2B 23b31933e9dcc456d73be15573226017fc213da59156040136ff447b208b45691fca00b5d16cdaf57ab8411e2834d759b3bb7e53550b13ec72de4b7f70486abb SHA512 d28a9724697859ca7beac1cc2813c12413654e1c0749297c34fb0ef8bbf97369ac8039d2a82ec673d885b39e1544259b70cecf292639caa9ff99c1b42d34c196
-AUX fvwm-2.6.8-perl528.patch 515 BLAKE2B 44df7b8aef71d85c3aefefb40ab45b9e6227ef6a13aaab60cec8956db669013b4ee4dc869216972e1a443d1f69e6550e7f80dc81cdf8b7642d6c49ae46793b2a SHA512 ab35b8aef3c6d8a07f1e03290c209736ee892729d98fece3d0134fd9994f8c57bdd5703492b405a6eb52cfcd67cd9cd72c16bc25a729a46560eb6e21f2d7918f
+AUX fvwm-2.5.27-translucent-menus.diff 15793 BLAKE2B 4f650c0de57d97d7c4cf6ba00728acf482f9e819e4594d540411fb790211a3e2343090ddacaffe8d25eb17f11ca80d2e7046f99c4d40bb857120d3b46551dfc3 SHA512 90427feb28cf19d9e5b92705e41d80371a7c8874fe47b5a94cf4a3f64c297536f0070ea27f749c854a5fa7b32479be48f59e6cfb8559a85f2d489c79b9bc3de6
+AUX fvwm-2.6.5-ar.patch 1077 BLAKE2B 521f2f8bdde469a158b617949f9cbc6dca2530fee377871927d0d91d1bf531e067f3e5d6aecb025512e274b1759ee3522eea639888cc2fd53737e27c3fb54f2d SHA512 fbac194b9fafafbeb1b833d842d25fd6983c041d69a4484f3d7fb75063f4ec400b55f0a5a328113cdaa93e40159552d5920e36b6885fbcd6e76549befc9135b4
+AUX fvwm-2.6.5-mouse-buttons.patch 523 BLAKE2B 3d30cdf5d9137d1d67f2795bb06256d7658bd9fe3cec6d2f1f9c3979f8dd0facd939b9bd9fef9030fbc8e3c0fcd18439563355521f7ad93f0c65d9e6844789d6 SHA512 4481397f6941f61e6962347411ab3adc66f1d3c3d443fb166840673ae404c874e8ea0c60b7df6e112d3972f3beeff94c91bd3431a7db4b62c65046ae544109e3
+AUX fvwm-2.6.8-perl528.patch 519 BLAKE2B 2e1e0e59a10dbe52275c6ef1d73e41813fba0c8e7fb6446999235b926f86fb893b3689964635b7f40599e06c67dd36984a962ec805fc4f8f5ee44dc241137cfb SHA512 8b6c960bf1ce92548288ce11e5c29e95bd60cb67505dd8051adf849c42f80a6baeaa30e3b3d67c0554d41082e7ef472bac6c6ea4c4a3ec979525a18481b18797
 AUX fvwm-2.6.9-bundled-manpage.patch 340 BLAKE2B 5a63e18490342637ce1e692333db2faa19a175ab27516f02374cd29dff030b52e906e52d6eb0bd2914cd7105caf0c23ccc73a2cd0b743efec157e9db8bda5ad0 SHA512 de4cc81da91416f4183f61ec205b91650336d532194ea285298ea629610a1567bb1f6a6f95eda4003e247a110d3d2f2d5236cdfa795c636715f03813a0e1f9db
 AUX fvwm-2.6.9-respect-docdir.patch 455 BLAKE2B d4272d43e010a8a4456965033dff2c88a9965c6fa2c89040fa49855cd8fb7e84bf6a1fdb634359ac9f667501b29a23bf8dc052107119f53f5b9468eac2d43498 SHA512 ff17efd2f1c5e2e252ce78d6647617430582f5dad946ef6672f2893fbc383991d93725709631df671c9f10546d8f3d7fe7c634fadebfac70f1d63cc1c9f1df99
 AUX fvwm-2.6.9-respect-htmldir.patch 655 BLAKE2B 3199958847a2dee691fdecc3148f630ff4c13c74845053bf4e3d566712ef6791c34a02d091c8d2966458b19ef5f1ff16b25ed7eb93cbea2ab2ee026ae177a6e0 SHA512 a20b734342d2bd6dc3e1392852dc7fc20c0f1aaa0f7aa494f0da988c41b2f6f0d8cee8811de5d56afe67715d84fa72a072ffae1206f56425ab3c9763d9ce7fdc
 DIST fvwm-2.6.9.tar.gz 3942859 BLAKE2B 8faf2d420d96049ab0528a6c6a5dc6ed8ee9449f8e533b9ad9bb526faea86030684fc0aa8ed0d307cb64575457676611298adf582b1249c37a3db35a72b43bf1 SHA512 a9c2214ad19edd17da81446a6d4250284cc50b59b53c233212f2a9354c01143dbb870521392752f272f00af50bee2dd8f0b6bf6176b0d4b3075694d2a61a623e
-EBUILD fvwm-2.6.9.ebuild 4673 BLAKE2B 470385ab61dbadc9f7f2bea1f561e77e67ab4333912857f77f59f21d2ca38f4d7d447f686ddeece1576b7e5895fdce906ae55173ec87515e6a9e4891f2ce5f05 SHA512 c065d284de98f0521447804c88a0c1a88bdf731f72a5f6295e02c8e809675ae3ecd7aa0c7e4fd98b0766de66f40d455927d20a5f5477adafc23b4e8972f01ca7
+EBUILD fvwm-2.6.9.ebuild 4787 BLAKE2B 542457d8ca2fdf758eb2c1ff704e6e9358db90d95d0b30797f9161b4370d2e2f98c0a55bf5cb01122fc71b3d45b4567cbac8e87a5112b891ca8d827ced760f5a SHA512 84ab1dd8c5981fec343ec0846ee5cd2a6b3221fb044ee0911e7c14deb1b606227305e08ca809002a83f8bfb9c9d346106dbf854153d71d20456c465baba0ff92
index 1c49f69007d067c74e97ea0ef99fc07ef929cd2a..f3019e6fbec2320f7acca82d1e24f0ed3cd44399 100644 (file)
@@ -3,8 +3,8 @@ Index: fvwm/colorset.c
 RCS file: /home/cvs/fvwm/fvwm/fvwm/colorset.c,v
 retrieving revision 1.52
 diff -u -r1.52 colorset.c
---- fvwm/colorset.c    27 Jan 2007 11:33:15 -0000      1.52
-+++ fvwm/colorset.c    5 Feb 2007 19:15:51 -0000
+--- a/fvwm/colorset.c  27 Jan 2007 11:33:15 -0000      1.52
++++ b/fvwm/colorset.c  5 Feb 2007 19:15:51 -0000
 @@ -164,6 +164,8 @@
        "NoIconTint",
        "IconAlpha",
@@ -123,8 +123,8 @@ Index: fvwm/menuroot.h
 RCS file: /home/cvs/fvwm/fvwm/fvwm/menuroot.h,v
 retrieving revision 1.3
 diff -u -r1.3 menuroot.h
---- fvwm/menuroot.h    13 Jan 2007 15:07:14 -0000      1.3
-+++ fvwm/menuroot.h    5 Feb 2007 19:17:37 -0000
+--- a/fvwm/menuroot.h  13 Jan 2007 15:07:14 -0000      1.3
++++ b/fvwm/menuroot.h  5 Feb 2007 19:17:37 -0000
 @@ -146,6 +146,9 @@
                int d_npixels;
        } stored_pixels;
@@ -140,8 +140,8 @@ Index: fvwm/menus.c
 RCS file: /home/cvs/fvwm/fvwm/fvwm/menus.c,v
 retrieving revision 1.409
 diff -u -r1.409 menus.c
---- fvwm/menus.c       27 Jan 2007 11:51:15 -0000      1.409
-+++ fvwm/menus.c       5 Feb 2007 19:17:50 -0000
+--- a/fvwm/menus.c     27 Jan 2007 11:51:15 -0000      1.409
++++ b/fvwm/menus.c     5 Feb 2007 19:17:50 -0000
 @@ -75,6 +75,19 @@
  
  /* ---------------------------- local macros ------------------------------- */
@@ -442,8 +442,8 @@ Index: fvwm/menus.h
 RCS file: /home/cvs/fvwm/fvwm/fvwm/menus.h,v
 retrieving revision 1.111
 diff -u -r1.111 menus.h
---- fvwm/menus.h       27 Jan 2007 11:51:15 -0000      1.111
-+++ fvwm/menus.h       5 Feb 2007 19:17:50 -0000
+--- a/fvwm/menus.h     27 Jan 2007 11:51:15 -0000      1.111
++++ b/fvwm/menus.h     5 Feb 2007 19:17:50 -0000
 @@ -15,6 +15,9 @@
  #define IS_MENU_RETURN(x) \
    ((x)==MENU_DONE || (x)==MENU_ABORTED || (x)==MENU_SUBMENU_TORN_OFF)
@@ -459,8 +459,8 @@ Index: libs/Colorset.h
 RCS file: /home/cvs/fvwm/fvwm/libs/Colorset.h,v
 retrieving revision 1.38
 diff -u -r1.38 Colorset.h
---- libs/Colorset.h    10 Jan 2007 00:34:27 -0000      1.38
-+++ libs/Colorset.h    5 Feb 2007 19:19:00 -0000
+--- a/libs/Colorset.h  10 Jan 2007 00:34:27 -0000      1.38
++++ b/libs/Colorset.h  5 Feb 2007 19:19:00 -0000
 @@ -51,6 +51,10 @@
        Bool dither;
        Bool allows_buffered_transparency;
@@ -497,8 +497,8 @@ Index: libs/PictureGraphics.c
 RCS file: /home/cvs/fvwm/fvwm/libs/PictureGraphics.c,v
 retrieving revision 1.29
 diff -u -r1.29 PictureGraphics.c
---- libs/PictureGraphics.c     27 Jan 2007 11:33:16 -0000      1.29
-+++ libs/PictureGraphics.c     5 Feb 2007 19:19:49 -0000
+--- a/libs/PictureGraphics.c   27 Jan 2007 11:33:16 -0000      1.29
++++ b/libs/PictureGraphics.c   5 Feb 2007 19:19:49 -0000
 @@ -1340,7 +1340,7 @@
        }
  }
@@ -513,8 +513,8 @@ Index: libs/PictureGraphics.h
 RCS file: /home/cvs/fvwm/fvwm/libs/PictureGraphics.h,v
 retrieving revision 1.13
 diff -u -r1.13 PictureGraphics.h
---- libs/PictureGraphics.h     9 May 2006 20:46:29 -0000       1.13
-+++ libs/PictureGraphics.h     5 Feb 2007 19:19:49 -0000
+--- a/libs/PictureGraphics.h   9 May 2006 20:46:29 -0000       1.13
++++ b/libs/PictureGraphics.h   5 Feb 2007 19:19:49 -0000
 @@ -122,7 +122,9 @@
        Display *dpy, Window win, Pixel tint, int tint_percent,
        Drawable dest, Bool dest_is_a_window, GC gc, GC mono_gc, GC alpha_gc,
index b1d62006967fc98c88314b1c428da97789b730b5..df3f39ccf72dbb67e0605e1c03844abb62ba64ea 100644 (file)
@@ -1,5 +1,5 @@
---- configure.ac       2012-04-20 12:58:29.000000000 +0200
-+++ configure_new.ac   2013-07-21 18:26:17.513904607 +0200
+--- a/configure.ac     2012-04-20 12:58:29.000000000 +0200
++++ b/configure.ac     2013-07-21 18:26:17.513904607 +0200
 @@ -209,6 +209,10 @@
  # optional libraries.
  AC_PROG_CC
@@ -11,8 +11,8 @@
  
  # added -Wall for gcc, what about for others?
  if test "x$GCC" = "xyes"; then
---- libs/Makefile.in   2012-04-20 13:03:55.000000000 +0200
-+++ libs/Makefile_new.in       2013-07-21 18:27:17.443992505 +0200
+--- a/libs/Makefile.in 2012-04-20 13:03:55.000000000 +0200
++++ b/libs/Makefile.in 2013-07-21 18:27:17.443992505 +0200
 @@ -48,7 +48,7 @@
  CONFIG_CLEAN_FILES =
  CONFIG_CLEAN_VPATH_FILES =
@@ -22,8 +22,8 @@
  ARFLAGS = cru
  libfvwm_a_AR = $(AR) $(ARFLAGS)
  libfvwm_a_DEPENDENCIES = @LIBOBJS@ @ALLOCA@
---- modules/FvwmScript/Widgets/Makefile.in     2012-04-20 13:03:56.000000000 +0200
-+++ modules/FvwmScript/Widgets/Makefile_new.in 2013-07-21 18:27:23.844001892 +0200
+--- a/modules/FvwmScript/Widgets/Makefile.in   2012-04-20 13:03:56.000000000 +0200
++++ b/modules/FvwmScript/Widgets/Makefile.in   2013-07-21 18:27:23.844001892 +0200
 @@ -46,7 +46,7 @@
  CONFIG_CLEAN_FILES =
  CONFIG_CLEAN_VPATH_FILES =
index 7eaa3e20b7c78a525775a0fc3c239949ca17683f..0c46690845043e7519281f81bebc82f94f0598db 100644 (file)
@@ -1,5 +1,5 @@
---- libs/defaults.h    2011-08-15 18:25:40.000000000 +0200
-+++ libs/defaults.h    2012-04-12 21:13:47.000000000 +0200
+--- a/libs/defaults.h  2011-08-15 18:25:40.000000000 +0200
++++ b/libs/defaults.h  2012-04-12 21:13:47.000000000 +0200
 @@ -25,7 +25,7 @@
  /* The "extended" buttons do not provide the full functionality because X has
   * no bit mask value for them.  Things like dragging windows don't work with
index 5735fb1f89b72bf0ffcbe2194ffab31fce8566a2..5555560d4d2e685d8637db5e40e39bab3f7f3647 100644 (file)
@@ -1,5 +1,5 @@
---- modules/FvwmPerl/FvwmPerl.in       2018-04-28 07:46:28.000000000 -0400
-+++ modules/FvwmPerl/FvwmPerl.in       2019-01-06 20:44:59.035950968 -0500
+--- a/modules/FvwmPerl/FvwmPerl.in     2018-04-28 07:46:28.000000000 -0400
++++ b/modules/FvwmPerl/FvwmPerl.in     2019-01-06 20:44:59.035950968 -0500
 @@ -319,11 +319,11 @@
                $FVWM_DATADIR = $FVWM_DATADIR || $module->site_data_dir;
                $FVWM_USERDIR = $FVWM_USERDIR || $module->user_data_dir;
index 2f03c11a78e3f0f344b7795be715c74faab4167a..0ad1fcc5aa173ed5367332201f3f0ba0b255c2fa 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright © 2021 Nick Bowler
+# Copyright © 2021-2022 Nick Bowler
 # License GPLv2+: GNU General Public License version 2 or any later version.
 # This is free software: you are free to change and redistribute it.
 # There is NO WARRANTY, to the extent permitted by law.
@@ -6,19 +6,25 @@
 # This is a modified version of the original ebuild from Gentoo GNU/Linux,
 # covered by the following copyright and permission notice:
 #
-#   Copyright 1999-2020 Gentoo Authors
+#   Copyright 1999-2022 Gentoo Authors
 #   Distributed under the terms of the GNU General Public License v2
+#
+# The modifications include:
+#
+#   * patch build system to install bundled manpage (2021-02)
+#   * fix prefixed installation in src_install (2021-02)
+#   * convert patches to -p1 (2022-06)
 
 EAPI=7
 inherit autotools flag-o-matic desktop
 
 DESCRIPTION="An extremely powerful ICCCM-compliant multiple virtual desktop window manager"
-HOMEPAGE="http://www.fvwm.org/"
+HOMEPAGE="https://www.fvwm.org/"
 SRC_URI="https://github.com/fvwmorg/fvwm/releases/download/${PV}/${P}.tar.gz"
 
-LICENSE="GPL-2 FVWM"
+LICENSE="GPL-2+ FVWM"
 SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~ia64 ppc ~ppc64 ~sparc x86"
+KEYWORDS="~alpha amd64 ~arm ~ia64 ppc ~ppc64 ~riscv ~sparc x86"
 IUSE="bidi debug doc netpbm nls perl png readline rplay stroke svg tk truetype +vanilla xinerama lock"
 
 COMMON_DEPEND="
@@ -53,6 +59,7 @@ COMMON_DEPEND="
 "
 RDEPEND="${COMMON_DEPEND}
        dev-lang/perl
+       sys-apps/debianutils
        perl? ( tk? (
                        dev-lang/tk
                        dev-perl/Tk
@@ -61,8 +68,7 @@ RDEPEND="${COMMON_DEPEND}
        )
        rplay? ( media-sound/rplay )
        lock? ( x11-misc/xlockmore )
-       userland_GNU? ( sys-apps/debianutils )
-       !x86-fbsd? ( netpbm? ( media-libs/netpbm ) )
+       netpbm? ( media-libs/netpbm )
 "
 DEPEND="${COMMON_DEPEND}
        virtual/pkgconfig
@@ -70,25 +76,21 @@ DEPEND="${COMMON_DEPEND}
        doc? ( dev-libs/libxslt )
 "
 
-PATCHES=(      
+PATCHES=(
+       "$FILESDIR/$PN-2.6.5-ar.patch"      #474528
+       "$FILESDIR/$PN-2.6.8-perl528.patch" # Fix for Perl 5.28
        "$FILESDIR/$PN-2.6.9-respect-docdir.patch"
        "$FILESDIR/$PN-2.6.9-respect-htmldir.patch"
        "$FILESDIR/$PN-2.6.9-bundled-manpage.patch"
 )
-
 src_prepare() {
-       if ! use vanilla; then
+       use vanilla || PATCHES+=(
                # Enables fast translucent menus; patch from fvwm-user mailing list.
-               eapply -p0 "${FILESDIR}/${PN}-2.5.27-translucent-menus.diff"
+               "$FILESDIR/$PN-2.5.27-translucent-menus.diff"
 
                # Allow more mouse buttons, bug #411811
-               eapply -p0 "${FILESDIR}/${PN}-2.6.5-mouse-buttons.patch"
-       fi
-
-       eapply -p0 "${FILESDIR}/${PN}-2.6.5-ar.patch" #474528
-
-       # Fix for Perl 5.28
-       eapply -p0 "${FILESDIR}/${PN}-2.6.8-perl528.patch"
+               "$FILESDIR/$PN-2.6.5-mouse-buttons.patch"
+       )
 
        default
        eautoreconf