initial import
This commit is contained in:
18
gtk2/CVE-2024-6655.patch
Normal file
18
gtk2/CVE-2024-6655.patch
Normal file
@@ -0,0 +1,18 @@
|
||||
--- a/gtk/gtkmodules.c 2020-12-18 06:29:40.000000000 +0100
|
||||
+++ b/gtk/gtkmodules.c 2024-08-14 01:30:28.209803357 +0200
|
||||
@@ -229,13 +229,8 @@
|
||||
gchar *module_name;
|
||||
|
||||
module_name = _gtk_find_module (name, "modules");
|
||||
- if (!module_name)
|
||||
- {
|
||||
- /* As last resort, try loading without an absolute path (using system
|
||||
- * library path)
|
||||
- */
|
||||
- module_name = g_module_build_path (NULL, name);
|
||||
- }
|
||||
+ if (module_name == NULL)
|
||||
+ return NULL;
|
||||
|
||||
module = g_module_open (module_name, G_MODULE_BIND_LOCAL | G_MODULE_BIND_LAZY);
|
||||
|
||||
81
gtk2/PKGBUILD
Normal file
81
gtk2/PKGBUILD
Normal file
@@ -0,0 +1,81 @@
|
||||
# Maintainer: Jesus E. <heckyel@riseup.net>
|
||||
|
||||
pkgname=gtk2
|
||||
pkgver=2.24.33
|
||||
_debver=$pkgver
|
||||
_debrel=2
|
||||
pkgrel=4
|
||||
pkgdesc="GObject-based multi-platform GUI toolkit (legacy version)"
|
||||
arch=(i686 x86_64)
|
||||
url="https://www.gtk.org/"
|
||||
depends=(atk pango libxcursor libxinerama libxrandr libxi libxcomposite libxdamage
|
||||
shared-mime-info cairo libcups gtk-update-icon-cache librsvg-legacy
|
||||
desktop-file-utils arc-icon-theme xcursor-premium)
|
||||
makedepends=(gobject-introspection quilt)
|
||||
optdepends=('gnome-themes-extra: Default widget theme'
|
||||
'tauthon: gtk-builder-convert')
|
||||
license=(LGPL-2)
|
||||
install=gtk2.install
|
||||
source=("https://download.gnome.org/sources/gtk+/${pkgver:0:4}/gtk+-$pkgver.tar.xz"
|
||||
"https://deb.debian.org/debian/pool/main/g/gtk+2.0/gtk+2.0_$_debver-$_debrel.debian.tar.xz"
|
||||
gtkrc
|
||||
gtk-query-immodules-2.0.hook
|
||||
xid-collision-debug.patch
|
||||
remove-gtk-doc-support.patch
|
||||
CVE-2024-6655.patch)
|
||||
sha512sums=('71b588797c81f727dfac8dcb1be193f7436f717d30ecf18eae2d3aeb0f445b3be4743400acac16435490db8f564f01032065d3f42d27871317f80c98aef929d5'
|
||||
'2ddd60764df23d2f53f541835e7b6d11ee4d23ec4e8256ecbd217c19ad2b8e0eeacb2b35f4c56c71df3aba4f98412e90bc79e122dbb9c5d77f51ed017dc0bd23'
|
||||
'398760cf027a337f04d623c91b870752b9a5b41c6038069e04a84fd30aae610e084fe675c60faba62092b96f8149a7606947f9413347eac7b75c0b54ebfb1e2a'
|
||||
'be7a807046f27e5796f6069dfd2c88f9b7508e3b9e209d97c1575e0d809b279aacacd0e1247f1f7643fa47eede2d987bf433cd17cea0524526ad31982ae8d90d'
|
||||
'89e3223c86731a76b12d39245f1ec4cf8b4860ab1d11d74a10e5deb0db302f20b4bb5d9034da1d8aeb96369dbdeddcdd2f28943270dc501476c694562b960159'
|
||||
'771355046c218726356d7b8823fba4a0f69620936f40d67f18b44378d4f099deb62c2236806176446cb8784327dc555d86518d8bf3eddc6c203d586b0ca165dd'
|
||||
'b8c8c27e5ef5d8f41527196ef122f37a9e398bc122f1c36c97bfcc09b816c8f4ddacc9d69b75e598d24a27fb8daf0934d6ca977bc889ba6829f9bcc0580f4fe6')
|
||||
|
||||
prepare() {
|
||||
cd gtk+-$pkgver
|
||||
|
||||
if [[ ${pkgver%.*} = ${_debver%.*} ]]; then
|
||||
# Debian patches
|
||||
export QUILT_PATCHES=debian/patches
|
||||
export QUILT_REFRESH_ARGS='-p ab --no-timestamps --no-index'
|
||||
export QUILT_DIFF_ARGS='--no-timestamps'
|
||||
|
||||
mv "$srcdir"/debian .
|
||||
|
||||
quilt push -av
|
||||
fi
|
||||
|
||||
patch -Np1 -i $srcdir/xid-collision-debug.patch
|
||||
patch -Np1 -i $srcdir/remove-gtk-doc-support.patch
|
||||
patch -Np1 -i $srcdir/CVE-2024-6655.patch
|
||||
sed -i '1s/python$/tauthon/' gtk/gtk-builder-convert
|
||||
autoreconf -fvi
|
||||
}
|
||||
|
||||
build() {
|
||||
cd gtk+-$pkgver
|
||||
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--localstatedir=/var \
|
||||
--with-xinput=yes \
|
||||
--enable-man
|
||||
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=655517
|
||||
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
|
||||
|
||||
make
|
||||
}
|
||||
|
||||
package() {
|
||||
cd gtk+-$pkgver
|
||||
make DESTDIR="$pkgdir" install
|
||||
|
||||
install -Dm644 ../gtkrc "$pkgdir/usr/share/gtk-2.0/gtkrc"
|
||||
install -Dm644 ../gtk-query-immodules-2.0.hook "$pkgdir/usr/share/libalpm/hooks/gtk-query-immodules-2.0.hook"
|
||||
|
||||
install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
|
||||
|
||||
rm "$pkgdir/usr/bin/gtk-update-icon-cache"
|
||||
}
|
||||
11
gtk2/gtk-query-immodules-2.0.hook
Normal file
11
gtk2/gtk-query-immodules-2.0.hook
Normal file
@@ -0,0 +1,11 @@
|
||||
[Trigger]
|
||||
Type = File
|
||||
Operation = Install
|
||||
Operation = Upgrade
|
||||
Operation = Remove
|
||||
Target = usr/lib/gtk-2.0/2.10.0/immodules/*.so
|
||||
|
||||
[Action]
|
||||
Description = Probing GTK2 input method modules...
|
||||
When = PostTransaction
|
||||
Exec = /usr/bin/gtk-query-immodules-2.0 --update-cache
|
||||
3
gtk2/gtk2.install
Normal file
3
gtk2/gtk2.install
Normal file
@@ -0,0 +1,3 @@
|
||||
pre_remove() {
|
||||
rm -f /usr/lib/gtk-2.0/2.10.0/immodules.cache
|
||||
}
|
||||
5
gtk2/gtkrc
Normal file
5
gtk2/gtkrc
Normal file
@@ -0,0 +1,5 @@
|
||||
gtk-icon-theme-name = "Arc"
|
||||
gtk-theme-name = "Raleigh"
|
||||
gtk-font-name = "Cantarell 11"
|
||||
gtk-cursor-theme-name = "Premium"
|
||||
|
||||
201
gtk2/remove-gtk-doc-support.patch
Normal file
201
gtk2/remove-gtk-doc-support.patch
Normal file
@@ -0,0 +1,201 @@
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 8e3a2f1..35e94d2 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -2,7 +2,7 @@
|
||||
include $(top_srcdir)/Makefile.decl
|
||||
|
||||
SRC_SUBDIRS = gdk gtk modules demos tests perf
|
||||
-SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros build
|
||||
+SUBDIRS = po po-properties $(SRC_SUBDIRS) m4macros build
|
||||
|
||||
# require automake 1.4
|
||||
AUTOMAKE_OPTIONS = 1.7
|
||||
@@ -136,7 +136,6 @@ MAINTAINERCLEANFILES = \
|
||||
$(srcdir)/mkinstalldirs \
|
||||
$(srcdir)/omf.make \
|
||||
$(srcdir)/xmldocs.make \
|
||||
- $(srcdir)/gtk-doc.make \
|
||||
$(srcdir)/ChangeLog \
|
||||
`find "$(srcdir)" -type f -name Makefile.in -print`
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index 38b269b..e38194f 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -566,7 +566,7 @@ XVFB_START = \
|
||||
&& DISPLAY=:$$XID && export DISPLAY
|
||||
|
||||
SRC_SUBDIRS = gdk gtk modules demos tests perf
|
||||
-SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros build
|
||||
+SUBDIRS = po po-properties $(SRC_SUBDIRS) m4macros build
|
||||
|
||||
# require automake 1.4
|
||||
AUTOMAKE_OPTIONS = 1.7
|
||||
@@ -588,7 +588,6 @@ MAINTAINERCLEANFILES = \
|
||||
$(srcdir)/mkinstalldirs \
|
||||
$(srcdir)/omf.make \
|
||||
$(srcdir)/xmldocs.make \
|
||||
- $(srcdir)/gtk-doc.make \
|
||||
$(srcdir)/ChangeLog \
|
||||
`find "$(srcdir)" -type f -name Makefile.in -print`
|
||||
|
||||
diff --git a/aclocal.m4 b/aclocal.m4
|
||||
index db4c519..3cc030a 100644
|
||||
--- a/aclocal.m4
|
||||
+++ b/aclocal.m4
|
||||
@@ -723,120 +723,6 @@ sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD
|
||||
fi])
|
||||
|
||||
|
||||
-# -*- mode: autoconf -*-
|
||||
-#
|
||||
-# gtk-doc.m4 - configure macro to check for gtk-doc
|
||||
-# Copyright (C) 2003 James Henstridge
|
||||
-# 2007-2017 Stefan Sauer
|
||||
-#
|
||||
-# This program is free software: you can redistribute it and/or modify
|
||||
-# it under the terms of the GNU General Public License as published by
|
||||
-# the Free Software Foundation, either version 3 of the License, or
|
||||
-# (at your option) any later version.
|
||||
-#
|
||||
-# This program is distributed in the hope that it will be useful,
|
||||
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
-# GNU General Public License for more details.
|
||||
-#
|
||||
-# You should have received a copy of the GNU General Public License
|
||||
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-#
|
||||
-# As a special exception, the above copyright owner gives unlimited
|
||||
-# permission to copy, distribute and modify the configure scripts that
|
||||
-# are the output of Autoconf when processing the Macro. You need not
|
||||
-# follow the terms of the GNU General Public License when using or
|
||||
-# distributing such scripts, even though portions of the text of the
|
||||
-# Macro appear in them. The GNU General Public License (GPL) does govern
|
||||
-# all other use of the material that constitutes the Autoconf Macro.
|
||||
-
|
||||
-# serial 2
|
||||
-
|
||||
-dnl Usage:
|
||||
-dnl GTK_DOC_CHECK([minimum-gtk-doc-version])
|
||||
-AC_DEFUN([GTK_DOC_CHECK],
|
||||
-[
|
||||
- AC_REQUIRE([PKG_PROG_PKG_CONFIG])
|
||||
- AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
|
||||
- AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
|
||||
-
|
||||
- ifelse([$1],[],[gtk_doc_requires="gtk-doc"],[gtk_doc_requires="gtk-doc >= $1"])
|
||||
- AC_MSG_CHECKING([for gtk-doc])
|
||||
- PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no])
|
||||
- AC_MSG_RESULT($have_gtk_doc)
|
||||
-
|
||||
- if test "$have_gtk_doc" = "no"; then
|
||||
- AC_MSG_WARN([
|
||||
- You will not be able to create source packages with 'make dist'
|
||||
- because $gtk_doc_requires is not found.])
|
||||
- fi
|
||||
-
|
||||
- dnl check for tools we added during development
|
||||
- dnl Use AC_CHECK_PROG to avoid the check target using an absolute path that
|
||||
- dnl may not be writable by the user. Currently, automake requires that the
|
||||
- dnl test name must end in '.test'.
|
||||
- dnl https://bugzilla.gnome.org/show_bug.cgi?id=701638
|
||||
- AC_CHECK_PROG([GTKDOC_CHECK],[gtkdoc-check],[gtkdoc-check.test])
|
||||
- AC_PATH_PROG([GTKDOC_CHECK_PATH],[gtkdoc-check])
|
||||
- AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true])
|
||||
- AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf])
|
||||
-
|
||||
- dnl for overriding the documentation installation directory
|
||||
- AC_ARG_WITH([html-dir],
|
||||
- AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),,
|
||||
- [with_html_dir='${datadir}/gtk-doc/html'])
|
||||
- HTML_DIR="$with_html_dir"
|
||||
- AC_SUBST([HTML_DIR])
|
||||
-
|
||||
- dnl enable/disable documentation building
|
||||
- AC_ARG_ENABLE([gtk-doc],
|
||||
- AS_HELP_STRING([--enable-gtk-doc],
|
||||
- [use gtk-doc to build documentation [[default=no]]]),,
|
||||
- [enable_gtk_doc=no])
|
||||
-
|
||||
- AC_MSG_CHECKING([whether to build gtk-doc documentation])
|
||||
- AC_MSG_RESULT($enable_gtk_doc)
|
||||
-
|
||||
- if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then
|
||||
- AC_MSG_ERROR([
|
||||
- You must have $gtk_doc_requires installed to build documentation for
|
||||
- $PACKAGE_NAME. Please install gtk-doc or disable building the
|
||||
- documentation by adding '--disable-gtk-doc' to '[$]0'.])
|
||||
- fi
|
||||
-
|
||||
- dnl don't check for glib if we build glib
|
||||
- if test "x$PACKAGE_NAME" != "xglib"; then
|
||||
- dnl don't fail if someone does not have glib
|
||||
- PKG_CHECK_MODULES(GTKDOC_DEPS, glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0,,[:])
|
||||
- fi
|
||||
-
|
||||
- dnl enable/disable output formats
|
||||
- AC_ARG_ENABLE([gtk-doc-html],
|
||||
- AS_HELP_STRING([--enable-gtk-doc-html],
|
||||
- [build documentation in html format [[default=yes]]]),,
|
||||
- [enable_gtk_doc_html=yes])
|
||||
- AC_ARG_ENABLE([gtk-doc-pdf],
|
||||
- AS_HELP_STRING([--enable-gtk-doc-pdf],
|
||||
- [build documentation in pdf format [[default=no]]]),,
|
||||
- [enable_gtk_doc_pdf=no])
|
||||
-
|
||||
- if test -z "$GTKDOC_MKPDF"; then
|
||||
- enable_gtk_doc_pdf=no
|
||||
- fi
|
||||
-
|
||||
- if test -z "$AM_DEFAULT_VERBOSITY"; then
|
||||
- AM_DEFAULT_VERBOSITY=1
|
||||
- fi
|
||||
- AC_SUBST([AM_DEFAULT_VERBOSITY])
|
||||
-
|
||||
- AM_CONDITIONAL([HAVE_GTK_DOC], [test x$have_gtk_doc = xyes])
|
||||
- AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes])
|
||||
- AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes])
|
||||
- AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes])
|
||||
- AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"])
|
||||
- AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"])
|
||||
-])
|
||||
-
|
||||
# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
|
||||
#
|
||||
# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc.
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 2446551..6c6c59e 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1591,12 +1591,6 @@ fi
|
||||
|
||||
GOBJECT_INTROSPECTION_CHECK([0.9.3])
|
||||
|
||||
-##################################################
|
||||
-# Checks for gtk-doc and docbook-tools
|
||||
-##################################################
|
||||
-
|
||||
-GTK_DOC_CHECK([1.11])
|
||||
-
|
||||
AC_CHECK_PROG(DB2HTML, db2html, true, false)
|
||||
AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
|
||||
|
||||
@@ -1734,16 +1728,6 @@ demos/Makefile
|
||||
demos/gtk-demo/Makefile
|
||||
demos/gtk-demo/geninclude.pl
|
||||
tests/Makefile
|
||||
-docs/Makefile
|
||||
-docs/reference/Makefile
|
||||
-docs/reference/gdk/Makefile
|
||||
-docs/reference/gdk/version.xml
|
||||
-docs/reference/gtk/Makefile
|
||||
-docs/reference/gtk/version.xml
|
||||
-docs/reference/libgail-util/Makefile
|
||||
-docs/faq/Makefile
|
||||
-docs/tools/Makefile
|
||||
-docs/tutorial/Makefile
|
||||
build/Makefile
|
||||
build/win32/Makefile
|
||||
build/win32/vs9/Makefile
|
||||
15
gtk2/xid-collision-debug.patch
Normal file
15
gtk2/xid-collision-debug.patch
Normal file
@@ -0,0 +1,15 @@
|
||||
--- gtk+-2.18.3/gdk/x11/gdkxid.c 2009-06-19 04:59:18.000000000 +0200
|
||||
+++ gtk+-2.18.3/gdk/x11/gdkxid.c.new 2009-07-22 11:30:12.000000000 +0200
|
||||
@@ -56,10 +56,10 @@
|
||||
if (!display_x11->xid_ht)
|
||||
display_x11->xid_ht = g_hash_table_new ((GHashFunc) gdk_xid_hash,
|
||||
(GEqualFunc) gdk_xid_equal);
|
||||
-
|
||||
+/*
|
||||
if (g_hash_table_lookup (display_x11->xid_ht, xid))
|
||||
g_warning ("XID collision, trouble ahead");
|
||||
-
|
||||
+*/
|
||||
g_hash_table_insert (display_x11->xid_ht, xid, data);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user