---
user/rxvt-unicode/APKBUILD | 71 +++++++++++++++++++++++++++++++
user/rxvt-unicode/gentables.patch | 8 ++++
user/rxvt-unicode/kerning.patch | 21 +++++++++
3 files changed, 100 insertions(+)
create mode 100644 user/rxvt-unicode/APKBUILD
create mode 100644 user/rxvt-unicode/gentables.patch
create mode 100644 user/rxvt-unicode/kerning.patch
diff --git a/user/rxvt-unicode/APKBUILD b/user/rxvt-unicode/APKBUILD
new file mode 100644
index 0000000..3422473
--- /dev/null
+++ b/user/rxvt-unicode/APKBUILD
@@ -0,0 +1,71 @@
+# Contributor: Moritz Wilhelmy
+# Contributor: Sören Tempel <soeren+alpine(a)soeren-tempel.net>
+# Contributor: Jakub Skrzypnik <j.skrzypnik(a)openmailbox.org>
+# Contributor: William Pitcock <nenolod(a)dereferenced.org>
+# Maintainer: Max Rees <maxcrees(a)me.com>
+pkgname=rxvt-unicode
+pkgver=9.22
+pkgrel=4
+pkgdesc="Fork of the rxvt terminal emulator with improved unicode support"
+url="http://software.schmorp.de/pkg/rxvt-unicode.html"
+arch="all"
+options="!check" # No test suite.
+license="(GPL-2.0+ OR BSD-2-Clause) AND GPL-2.0+ AND GPL-3.0+"
+depends="$pkgname-terminfo"
+makedepends="libx11-dev libxft-dev ncurses fontconfig-dev
+ gdk-pixbuf-dev libxrender-dev perl-dev startup-notification-dev"
+subpackages="$pkgname-doc $pkgname-terminfo::noarch"
+source="http://dist.schmorp.de/$pkgname/$pkgname-$pkgver.tar.bz2
+ gentables.patch
+ kerning.patch"
+
+build() {
+ cd "$builddir"
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --with-terminfo=/usr/share/terminfo \
+ --enable-256-color \
+ --enable-font-styles \
+ --enable-xim \
+ --enable-keepscrolling \
+ --enable-selectionscrolling \
+ --enable-smart-resize \
+ --enable-pixbuf \
+ --enable-transparency \
+ --enable-frills \
+ --enable-perl \
+ --enable-mousewheel \
+ --enable-text-blink \
+ --enable-fading \
+ --enable-startup-notification \
+ --enable-unicode3 \
+ --disable-utmp \
+ --disable-wtmp \
+ --disable-lastlog
+ make
+}
+
+package() {
+ # despite having a separate terminfo subpackage
+ # TERMINFO env var is used by rxvt-unicode makefile
+ # leaving it as is ~skrzyp
+ export TERMINFO="$pkgdir/usr/share/terminfo"
+ mkdir -p "$TERMINFO"
+
+ cd "$builddir"
+ make DESTDIR="$pkgdir" install
+}
+
+terminfo() {
+ pkgdesc="$pkgdesc (terminfo data)"
+ depends=""
+
+ mkdir -p "$subpkgdir"/usr/share
+ mv "$pkgdir"/usr/share/terminfo "$subpkgdir"/usr/share/terminfo
+}
+
+sha512sums="b39f1b2cbe6dd3fbd2a0ad6a9d391a2b6f49d7c5e67bc65fe44a9c86937f8db379572c67564c6e21ff6e09b447cdfd4e540544e486179e94da0e0db679c04dd9
rxvt-unicode-9.22.tar.bz2
+2a973e001dacf900895d0c1045dfffd5a1ca7650669853bd5fdf09819b19a750bb59d913f8bdc83b103e5e0e7cce7f0d2b6184f36a29c1bac86e90c08ae6a475
gentables.patch
+d2fb68b3e11a78328ded4d2d646ffbaae657e9f23f3b4b81e11bc4350dd3e1e7585eeaeee47a70246bdfb7e12fbb667e40a7766989154235064f56ed4ad0a987
kerning.patch"
diff --git a/user/rxvt-unicode/gentables.patch b/user/rxvt-unicode/gentables.patch
new file mode 100644
index 0000000..8e3d82b
--- /dev/null
+++ b/user/rxvt-unicode/gentables.patch
@@ -0,0 +1,8 @@
+--- ./src/gentables.orig Wed Aug 4 04:59:09 2004
++++ ./src/gentables Tue Aug 10 00:03:21 2004
+@@ -1,4 +1,4 @@
+-#!/opt/bin/perl
++#!/usr/bin/perl
+
+ # the generated tables mostly have NOT been checked so far!
+
diff --git a/user/rxvt-unicode/kerning.patch b/user/rxvt-unicode/kerning.patch
new file mode 100644
index 0000000..2c80333
--- /dev/null
+++ b/user/rxvt-unicode/kerning.patch
@@ -0,0 +1,21 @@
+--- a/src/rxvtfont.C 2008-07-09 12:21:45.000000000 +0400
++++ b/src/rxvtfont.C 2009-10-30 14:32:53.000000000 +0300
+@@ -1195,12 +1195,14 @@
+ XGlyphInfo g;
+ XftTextExtents16 (disp, f, &ch, 1, &g);
+
+- g.width -= g.x;
+-
++/*
++ * bukind: don't use g.width as a width of a character!
++ * instead use g.xOff, see e.g.:
http://keithp.com/~keithp/render/Xft.tutorial
++ */
+ int wcw = WCWIDTH (ch);
+- if (wcw > 0) g.width = (g.width + wcw - 1) / wcw;
++ if (wcw > 1) g.xOff = g.xOff / wcw;
++ if (width < g.xOff) width = g.xOff;
+
+- if (width < g.width ) width = g.width;
+ if (height < g.height ) height = g.height;
+ if (glheight < g.height - g.y) glheight = g.height - g.y;
+ }
--
2.17.1