Created
July 27, 2021 11:45
-
-
Save glitsj16/638f7971bbe6bebfcfd25d1b65fef478 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Maintainer: Jonathon Fernyhough <jonathon+m2x.dev> | |
# Contributor: Luke Horwell <code@horwell.me> | |
# Contributor: Tomasz Gąsior <tomaszgasior.pl> | |
# This file is based on original PKGBUILD of GTK3 package. | |
# https://git.archlinux.org/svntogit/packages.git/plain/trunk/PKGBUILD?h=packages/gtk3 | |
__arch_pkg_commit="408873e9af613dc26f6d434fe489735fb8c5de75" | |
_gtkver=3.24.29 | |
pkgbase=gtk3-classic | |
pkgname=($pkgbase lib32-$pkgbase) | |
pkgver=${_gtkver} | |
pkgrel=1 | |
pkgdesc="GTK3 patched to provide a more classic experience" | |
url="https://github.com/lah7/gtk3-classic" | |
conflicts=(gtk3 gtk3-typeahead gtk3-print-backends) | |
provides=(gtk3=$_gtkver gtk3-typeahead=$_gtkver gtk3-mushrooms=$_gtkver gtk3-print-backends | |
libgtk-3.so libgdk-3.so libgailutil-3.so) | |
arch=(x86_64) | |
license=(LGPL) | |
makedepends=( | |
git gobject-introspection libcanberra gtk-doc sassc libcups meson quilt | |
atk cairo libxcursor libxinerama libxrandr libxi libepoxy gdk-pixbuf2 fribidi | |
libxcomposite libxdamage pango shared-mime-info at-spi2-atk wayland libxkbcommon | |
json-glib librsvg wayland-protocols desktop-file-utils mesa gtk-update-icon-cache | |
adwaita-icon-theme cantarell-fonts | |
lib32-atk lib32-cairo lib32-libxcursor lib32-libxinerama lib32-libxrandr lib32-libxi | |
lib32-libepoxy lib32-gdk-pixbuf2 lib32-fribidi lib32-libxcomposite lib32-libxdamage | |
lib32-pango lib32-at-spi2-atk lib32-wayland lib32-libxkbcommon lib32-json-glib | |
lib32-librsvg lib32-mesa lib32-libcups lib32-krb5 lib32-e2fsprogs | |
) | |
install=gtk3.install | |
source=( | |
git+$url.git#commit=fdbaeb4e4936e90f8b92abf23c2cb7dd46fbd03b | |
"https://download.gnome.org/sources/gtk+/${pkgver%.*}/gtk+-$_gtkver.tar.xz" | |
"gtk-query-immodules-3.0.hook::https://github.com/archlinux/svntogit-packages/raw/packages/gtk3/trunk/gtk-query-immodules-3.0.hook" | |
README.md | |
) | |
sha256sums=('SKIP' | |
'f57ec4ade8f15cab0c23a80dcaee85b876e70a8823d9105f067ce335a8268caa' | |
'a0319b6795410f06d38de1e8695a9bf9636ff2169f40701671580e60a108e229' | |
'1d2e3c41c7de03a31d717b09e053c88cbaca2ae74eefd982549c49de81c21ada') | |
prepare() | |
{ | |
cd gtk+-$_gtkver | |
QUILT_PATCHES=../$pkgbase quilt push -av | |
rm -f "$srcdir"/gtk+-"$_gtkver"/gtk/theme/Adwaita/gtk-contained{,-dark}.css | |
cat "$srcdir/$pkgbase/smaller-adwaita.css" | tee -a "$srcdir"/gtk+-"$_gtkver"/gtk/theme/Adwaita/gtk-contained{,-dark}.css > /dev/null | |
} | |
build() | |
{ | |
CFLAGS+=" -DG_ENABLE_DEBUG -DG_DISABLE_CAST_CHECKS" | |
# 64-bit | |
arch-meson gtk+-$_gtkver build \ | |
-D broadway_backend=true \ | |
-D colord=no \ | |
-D demos=true \ | |
-D examples=false \ | |
-D tests=false \ | |
-D installed_tests=false | |
ninja -C build | |
# 32-bit | |
export PKG_CONFIG_LIBDIR="/usr/lib32/pkgconfig" | |
export PKG_CONFIG_PATH="/usr/share/pkgconfig" | |
CFLAGS+=" -m32" | |
CXXFLAGS+=" -m32" | |
LDFLAGS+=" -m32" | |
linux32 arch-meson gtk+-$_gtkver build32 \ | |
-D broadway_backend=true \ | |
-D colord=no \ | |
-D demos=false \ | |
-D examples=false \ | |
-D introspection=false \ | |
-D tests=false \ | |
-D installed_tests=false \ | |
-D libdir=/usr/lib32 | |
linux32 ninja -C build32 | |
} | |
package_gtk3-classic() | |
{ | |
depends=( | |
atk cairo libxcursor libxinerama libxrandr libxi libepoxy gdk-pixbuf2 fribidi | |
libxcomposite libxdamage pango shared-mime-info at-spi2-atk wayland libxkbcommon | |
json-glib librsvg wayland-protocols desktop-file-utils mesa gtk-update-icon-cache | |
) | |
optdepends=( | |
'libcups: printers in printing dialog' | |
'dconf: default GSettings backend' | |
'libcanberra: sounds events' | |
'adwaita-icon-theme: default icon theme' | |
'cantarell-fonts: default font' | |
) | |
DESTDIR="$pkgdir" meson install -C build | |
install -Dm 644 /dev/stdin "$pkgdir"/usr/share/gtk-3.0/settings.ini <<END | |
[Settings] | |
gtk-icon-theme-name = Adwaita | |
gtk-theme-name = Adwaita | |
gtk-font-name = Cantarell 11 | |
END | |
install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 gtk-query-immodules-3.0.hook | |
rm "$pkgdir/usr/bin/gtk-update-icon-cache" | |
install -Dm644 "$srcdir"/README.md "$pkgdir/usr/share/gtk-3.0/README.md" | |
sed -i 's/mushrooms/classic/g' "$pkgdir/usr/share/gtk-3.0/README.md" | |
} | |
package_lib32-gtk3-classic() | |
{ | |
pkgdesc="GTK3 patched to provide a more classic experience (32-bit)" | |
depends=( | |
lib32-atk lib32-cairo lib32-libxcursor lib32-libxinerama lib32-libxrandr lib32-libxi | |
lib32-libepoxy lib32-gdk-pixbuf2 lib32-fribidi lib32-libxcomposite lib32-libxdamage | |
lib32-pango lib32-at-spi2-atk lib32-wayland lib32-libxkbcommon lib32-json-glib | |
lib32-librsvg lib32-mesa lib32-libcups lib32-krb5 lib32-e2fsprogs | |
"gtk3-classic>=$pkgver" | |
) | |
conflicts=("lib32-gtk3") | |
provides=("lib32-gtk3=$pkgver") | |
DESTDIR="$pkgdir" linux32 meson install -C build32 | |
rm -fr "$pkgdir"/etc | |
rm -fr "$pkgdir"/usr/{bin,share,include} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment