summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO24
-rw-r--r--PKGBUILD46
-rwxr-xr-xcleaner.py10
3 files changed, 80 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..a9ae98695a65
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,24 @@
+pkgbase = ttf-dejavu-emojiless
+ pkgdesc = Derivate of DejaVu without characters listed as emoji, in order not to override color fonts
+ pkgver = 2.37
+ pkgrel = 1
+ url = http://dejavu-fonts.org/wiki/Main_Page
+ arch = any
+ license = custom
+ makedepends = fontforge
+ depends = fontconfig
+ depends = xorg-fonts-encodings
+ depends = xorg-mkfontscale
+ depends = xorg-mkfontdir
+ provides = ttf-font
+ provides = ttf-dejavu
+ conflicts = ttf-dejavu
+ source = http://downloads.sourceforge.net/project/dejavu/dejavu/2.37/dejavu-fonts-ttf-2.37.tar.bz2
+ source = https://github.com/iamcal/emoji-data/raw/master/emoji.json
+ source = cleaner.py
+ sha256sums = fa9ca4d13871dd122f61258a80d01751d603b4d3ee14095d65453b4e846e17d7
+ sha256sums = SKIP
+ sha256sums = 415ba5000c5dbaf15b56d91d137a60ee257b5ef31c17cb2fd54ed015220b1f8c
+
+pkgname = ttf-dejavu-emojiless
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..b45b530d5f53
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id$
+# Maintainer:
+# Contributor: 😂👌
+
+pkgname=ttf-dejavu-emojiless
+pkgver=2.37
+pkgrel=1
+pkgdesc="Derivate of DejaVu without characters listed as emoji, in order not to override color fonts"
+arch=('any')
+url="http://dejavu-fonts.org/wiki/Main_Page"
+license=('custom')
+depends=('fontconfig' 'xorg-fonts-encodings' 'xorg-mkfontscale' 'xorg-mkfontdir')
+makedepends=('fontforge')
+provides=('ttf-font' 'ttf-dejavu')
+conflicts=('ttf-dejavu')
+source=(http://downloads.sourceforge.net/project/dejavu/dejavu/${pkgver}/dejavu-fonts-ttf-${pkgver}.tar.bz2
+ https://github.com/iamcal/emoji-data/raw/master/emoji.json
+ cleaner.py)
+sha256sums=('fa9ca4d13871dd122f61258a80d01751d603b4d3ee14095d65453b4e846e17d7'
+ 'SKIP'
+ '415ba5000c5dbaf15b56d91d137a60ee257b5ef31c17cb2fd54ed015220b1f8c')
+
+prepare() {
+ ttfdir="${srcdir}"/dejavu-fonts-ttf-${pkgver}/ttf
+ for ttf in "${ttfdir}"/*.ttf; do
+ fontforge -script cleaner.py $ttf
+ done
+}
+
+package() {
+ install -dm755 "${pkgdir}"/etc/fonts/conf.avail
+ install -dm755 "${pkgdir}"/etc/fonts/conf.d
+ install -dm755 "${pkgdir}"/usr/share/fonts/TTF
+
+ cd "${srcdir}"/dejavu-fonts-ttf-${pkgver}
+ install -m644 ttf/*.ttf "${pkgdir}"/usr/share/fonts/TTF/
+ install -m644 fontconfig/*.conf "${pkgdir}"/etc/fonts/conf.avail/
+
+ pushd "${pkgdir}"/etc/fonts/conf.avail
+ for config in *; do
+ ln -sf ../conf.avail/${config} ../conf.d/${config}
+ done
+ popd
+
+ install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+} \ No newline at end of file
diff --git a/cleaner.py b/cleaner.py
new file mode 100755
index 000000000000..bf75d9251d05
--- /dev/null
+++ b/cleaner.py
@@ -0,0 +1,10 @@
+from json import load
+from sys import argv
+
+ttf = fontforge.open(argv[1])
+for emoji in load(open('emoji.json')):
+ try:
+ ttf.removeGlyph(int(emoji['unified'], 16))
+ except ValueError:
+ pass
+ttf.generate(argv[1])