From fa6617423d1cf34467bac0756626897bc7186596 Mon Sep 17 00:00:00 2001 From: Joe Bo Run Date: Tue, 28 Mar 2023 00:26:50 +0300 Subject: [PATCH] add remarkable wkhtmltopdf --- remarkable/369.patch | 34 +++++ remarkable/PKGBUILD | 67 +++++++++ remarkable/PKGBUILD-aur | 63 ++++++++ remarkable/clean | 1 + remarkable/deps | 12 ++ remarkable/remarkable.install | 7 + remarkable/stable.patch | 272 ++++++++++++++++++++++++++++++++++ wkhtmltopdf/PKGBUILD | 45 ++++++ wkhtmltopdf/PKGBUILD-aur | 35 +++++ wkhtmltopdf/clean | 1 + wkhtmltopdf/deps | 5 + wkhtmltopdf/key | 1 + wkhtmltopdf/time | 6 + 13 files changed, 549 insertions(+) create mode 100644 remarkable/369.patch create mode 100644 remarkable/PKGBUILD create mode 100644 remarkable/PKGBUILD-aur create mode 100644 remarkable/clean create mode 100644 remarkable/deps create mode 100644 remarkable/remarkable.install create mode 100644 remarkable/stable.patch create mode 100644 wkhtmltopdf/PKGBUILD create mode 100644 wkhtmltopdf/PKGBUILD-aur create mode 100644 wkhtmltopdf/clean create mode 100644 wkhtmltopdf/deps create mode 100644 wkhtmltopdf/key create mode 100644 wkhtmltopdf/time diff --git a/remarkable/369.patch b/remarkable/369.patch new file mode 100644 index 0000000..8db8fa0 --- /dev/null +++ b/remarkable/369.patch @@ -0,0 +1,34 @@ +From 2482e9ccf2eac4a24919d053d51588d8aa09db94 Mon Sep 17 00:00:00 2001 +From: Markus Neteler +Date: Mon, 30 Nov 2020 21:57:57 +0100 +Subject: [PATCH] tree.getiterator - update for Python 3.9+ + +tree.getiterator() has been deprecated in Python 2.7 and removed in Python 3.9 (see https://docs.python.org/3/whatsnew/3.9.html). + +This PR provides the needed changes. +--- + remarkable_lib/Builder.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/remarkable_lib/Builder.py b/remarkable_lib/Builder.py +index 4dd8a18..4998537 100755 +--- a/remarkable_lib/Builder.py ++++ b/remarkable_lib/Builder.py +@@ -89,7 +89,7 @@ def add_from_file(self, filename): + tree = ElementTree() + tree.parse(filename) + +- ele_widgets = tree.getiterator("object") ++ ele_widgets = tree.iter("object") + for ele_widget in ele_widgets: + name = ele_widget.attrib['id'] + widget = self.get_object(name) +@@ -111,7 +111,7 @@ def add_from_file(self, filename): + if connections: + self.connections.extend(connections) + +- ele_signals = tree.getiterator("signal") ++ ele_signals = tree.iter("signal") + for ele_signal in ele_signals: + self.glade_handler_dict.update( + {ele_signal.attrib["handler"]: None}) diff --git a/remarkable/PKGBUILD b/remarkable/PKGBUILD new file mode 100644 index 0000000..b201538 --- /dev/null +++ b/remarkable/PKGBUILD @@ -0,0 +1,67 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobcomm/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=remarkable +pkgver=1.87 +pkgrel=08 +pkgdesc="A free fully featured markdown editor for Linux." +url="http://remarkableapp.github.io" +depends=('python' 'python-cairo' 'python-gobject' 'python-markdown' 'python-beautifulsoup4' 'python-lxml' 'python-setuptools' 'webkit2gtk' 'wkhtmltopdf' 'gtksourceview3' ) +makedepends=('python') +optdepends=('python-lxml: export to HTML format support' + 'python-gtkspellcheck: Spellcheck (might cause problems)') + +install="remarkable.install" +source=("https://github.com/jamiemcg/Remarkable/archive/v${pkgver}.tar.gz" + "stable.patch::https://github.com/jamiemcg/Remarkable/compare/v1.87...mbloms:stable.patch" + "https://patch-diff.githubusercontent.com/raw/jamiemcg/Remarkable/pull/369.patch" + "remarkable.install") + +prepare() { + msg2 "Applying patches for webkit2gtk..." + cat *.patch | patch -p1 -d "${srcdir}/Remarkable-${pkgver}" +} + +package() { + _python_site=$(python -c 'import site; print(site.getsitepackages()[0]);') + [ -z ${_python_site} ] && echo "error: could not identify python site_packages directory" && return 1 + + + cd "Remarkable-${pkgver}" + + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + + install -Dm 755 "bin/remarkable" "${pkgdir}/usr/bin/remarkable" + install -D "debian/remarkable.mime" "${pkgdir}/usr/lib/mime/packages/remarkable" + install -D "data/media/remarkable.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/remarkable.svg" + install -D remarkable.desktop "${pkgdir}/usr/share/applications/remarkable.desktop" + + mv data/glib-2.0 "${pkgdir}/usr/share/" + + install -d "${pkgdir}/${_python_site}" + mv markdown pdfkit remarkable remarkable_lib "${pkgdir}/${_python_site}/" + + mv data "${pkgdir}/usr/share/remarkable/" +} + +#---- arch license gpg-key & sha256sums ---- + +arch=(x86_64) + +license=('MIT') + +sha1sums=('a492dc5d0a276f36846a99287ae93c02e22a5cd8' + '8c052787c16a81b9d4c325d2270cdd3412951f6c' + '0011947d35909e001e24b13f2f65d3e25061c9c2' + 'bdbfb750df9e5fb3022f47a46a80555259628cd1') + +sha256sums=(b77cd936bce74c7c34eb4a16c0e634111117361ef588e6dff154b53bf85ec7ca # v1.87.tar.gz + ede70f222c95d916558ebb43a4016bb4113c025542475ad1b3cd26320c988968 # stable.patch + 70a9b9512f05af7ca3a037f8e5b9fea0dbb8df7db592b7eed98c711098aabbe5 # 369.patch + 4dec596dfa2427f5f0517bf261826e50a0e7fc4afed448d26ac4f2c6b2373847) # remarkable.install + +## a6bd38993e520e447143f3e41091165fa75c94c182f35acb14284f4df2f226d3 remarkable-1.87-08-x86_64.pkg.tar.lz diff --git a/remarkable/PKGBUILD-aur b/remarkable/PKGBUILD-aur new file mode 100644 index 0000000..9f06690 --- /dev/null +++ b/remarkable/PKGBUILD-aur @@ -0,0 +1,63 @@ +# Maintainer: Mikael Blomstrand +# Contributor: MaryJaneInChain +# Contributor: Michael Goehler + +pkgname=remarkable +pkgver=1.87 +pkgrel=7 +pkgdesc="A free fully featured markdown editor for Linux." +arch=('any') +url="http://remarkableapp.github.io" +license=('MIT') +depends=('python' + 'python-cairo' + 'python-gobject' + 'python-markdown' + 'python-beautifulsoup4' + 'python-lxml' + 'python-setuptools' + 'webkit2gtk' + 'wkhtmltopdf' + 'gtksourceview3' + ) +makedepends=('python') +optdepends=('python-lxml: export to HTML format support' + 'python-gtkspellcheck: Spellcheck (might cause problems)') + +install="remarkable.install" +source=("https://github.com/jamiemcg/Remarkable/archive/v${pkgver}.tar.gz" + "stable.patch::https://github.com/jamiemcg/Remarkable/compare/v1.87...mbloms:stable.patch" + "https://patch-diff.githubusercontent.com/raw/jamiemcg/Remarkable/pull/369.patch" + "remarkable.install") + +sha1sums=('a492dc5d0a276f36846a99287ae93c02e22a5cd8' + '8c052787c16a81b9d4c325d2270cdd3412951f6c' + '0011947d35909e001e24b13f2f65d3e25061c9c2' + 'bdbfb750df9e5fb3022f47a46a80555259628cd1') + +prepare() { + msg2 "Applying patches for webkit2gtk..." + cat *.patch | patch -p1 -d "${srcdir}/Remarkable-${pkgver}" +} + +package() { + _python_site=$(python -c 'import site; print(site.getsitepackages()[0]);') + [ -z ${_python_site} ] && echo "error: could not identify python site_packages directory" && return 1 + + + cd "Remarkable-${pkgver}" + + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + + install -Dm 755 "bin/remarkable" "${pkgdir}/usr/bin/remarkable" + install -D "debian/remarkable.mime" "${pkgdir}/usr/lib/mime/packages/remarkable" + install -D "data/media/remarkable.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/remarkable.svg" + install -D remarkable.desktop "${pkgdir}/usr/share/applications/remarkable.desktop" + + mv data/glib-2.0 "${pkgdir}/usr/share/" + + install -d "${pkgdir}/${_python_site}" + mv markdown pdfkit remarkable remarkable_lib "${pkgdir}/${_python_site}/" + + mv data "${pkgdir}/usr/share/remarkable/" +} diff --git a/remarkable/clean b/remarkable/clean new file mode 100644 index 0000000..4b63e15 --- /dev/null +++ b/remarkable/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,v1*tar.gz} diff --git a/remarkable/deps b/remarkable/deps new file mode 100644 index 0000000..fb2e532 --- /dev/null +++ b/remarkable/deps @@ -0,0 +1,12 @@ +python +python-cairo +python-gobject +python-markdown +python-beautifulsoup4 +python-lxml +python-setuptools +webkit2gtk +wkhtmltopdf +gtksourceview3 + +libgit2 diff --git a/remarkable/remarkable.install b/remarkable/remarkable.install new file mode 100644 index 0000000..53bae98 --- /dev/null +++ b/remarkable/remarkable.install @@ -0,0 +1,7 @@ +post_install() { + /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas +} + +post_upgrade() { + post_install +} diff --git a/remarkable/stable.patch b/remarkable/stable.patch new file mode 100644 index 0000000..ea7f0c2 --- /dev/null +++ b/remarkable/stable.patch @@ -0,0 +1,272 @@ +From 926171f6343b6420b532140dd2f4dc2e43fd9d2c Mon Sep 17 00:00:00 2001 +From: Harald Weiner +Date: Sun, 23 Jul 2017 02:14:23 +0200 +Subject: [PATCH 1/4] fixes #184 (port to WebKit2Gtk) + +--- + remarkable/RemarkableWindow.py | 63 +++++++++++++++++++++++++--------- + 1 file changed, 47 insertions(+), 16 deletions(-) + +diff --git a/remarkable/RemarkableWindow.py b/remarkable/RemarkableWindow.py +index ffbc70b..893dc27 100644 +--- a/remarkable/RemarkableWindow.py ++++ b/remarkable/RemarkableWindow.py +@@ -24,10 +24,10 @@ + import gi + gi.require_version('Gtk', '3.0') + gi.require_version('GtkSource', '3.0') +-gi.require_version('WebKit', '3.0') ++gi.require_version('WebKit2', '4.0') + + from bs4 import BeautifulSoup +-from gi.repository import Gdk, Gtk, GtkSource, Pango, WebKit ++from gi.repository import Gdk, Gtk, GtkSource, Pango, WebKit2 + from locale import gettext as _ + from urllib.request import urlopen + import markdown +@@ -113,10 +113,10 @@ def finish_initializing(self, builder): # pylint: disable=E1002 + self.text_buffer.connect("changed", self.on_text_view_changed) + self.text_view.set_buffer(self.text_buffer) + self.text_view.set_wrap_mode(Gtk.WrapMode.WORD) +- +- self.live_preview = WebKit.WebView() +- self.live_preview.connect("console-message", self._javascript_console_message) # Suppress .js output +- self.live_preview.zoom_out() ++ ++ my_settings = self.create_webkit_settings() ++ self.live_preview = WebKit2.WebView.new_with_settings(my_settings) ++ self.zoom_out(self.live_preview) + + self.scrolledwindow_text_view = Gtk.ScrolledWindow() + self.scrolledwindow_text_view.add(self.text_view) +@@ -624,11 +624,11 @@ def on_toolbutton_redo_clicked(self, widget): + self.redo(self) + + def on_toolbutton_zoom_in_clicked(self, widget): +- self.live_preview.zoom_in() ++ self.zoom_in(self.live_preview) + self.scrollPreviewToFix(self) + + def on_toolbutton_zoom_out_clicked(self, widget): +- self.live_preview.zoom_out() ++ self.zoom_out(self.live_preview) + self.scrollPreviewToFix(self) + + def redo(self, widget): +@@ -1249,7 +1249,7 @@ def on_menuitem_handwritten_activate(self, widget): + styles.css = styles.handwriting_css + self.update_style(self) + self.update_live_preview(self) +- self.live_preview.zoom_in() ++ self.zoom_in(self.live_preview) + self.remarkable_settings['style'] = "handwriting_css" + self.write_settings() + +@@ -1347,12 +1347,12 @@ def on_menuitem_feedback_activate(self, widget): + window_feedback.set_title("Feedback Form") + window_feedback.set_default_size(640, 640) + window_feedback.set_position(Gtk.WindowPosition.CENTER) +- feedback_browser = WebKit.WebView() +- feedback_browser.connect("console-message", self._javascript_console_message) # Suppress .js output ++ my_settings = self.create_webkit_settings() ++ feedback_browser = WebKit2.WebView.new_with_settings(my_settings) + feedback_scroller = Gtk.ScrolledWindow() + feedback_scroller.add(feedback_browser) + window_feedback.add(feedback_scroller) +- feedback_browser.open("https://jamiemcgowan.typeform.com/to/ng5Lhc") ++ feedback_browser.load_uri("https://jamiemcgowan.typeform.com/to/ng5Lhc") + window_feedback.show_all() + + def on_menuitem_about_activate(self, widget): +@@ -1443,14 +1443,45 @@ def update_live_preview(self, widet): + html = self.default_html_start + html_middle + self.default_html_end + + # Update the display, supporting relative paths to local images +- self.live_preview.load_string(html, "text/html", "utf-8", "file://{}".format(os.path.abspath(self.name))) ++ self.live_preview.load_html(html, "file://{}".format(os.path.abspath(self.name))) + + """ +- This function suppresses the messages from the WebKit (live preview) console ++ This function returns WebKit settings instance to suppress ++ the messages from the WebKit (live preview) console + """ +- def _javascript_console_message(self, view, message, line, sourceid): +- return True ++ def create_webkit_settings(self): ++ result = WebKit2.Settings() ++ result.set_enable_write_console_messages_to_stdout(False) # Suppress .js output ++ return result + ++ """ ++ This function implements zoom_in for WebKit2.WebView ++ """ ++ def zoom_in(self, webView): ++ zoom_level = webView.get_zoom_level() ++ zoom_level = zoom_level + self.get_zoom_step() ++ webView.set_zoom_level(zoom_level) ++ ++ """ ++ This function implements zoom_out for WebKit2.WebView ++ """ ++ def zoom_out(self, webView): ++ zoom_level = webView.get_zoom_level() ++ zoom_level = zoom_level - self.get_zoom_step() ++ webView.set_zoom_level(zoom_level) ++ ++ """ ++ This function returns the same magic number as in previous WebKit API: ++ https://lazka.github.io/pgi-docs/WebKit-3.0/classes/WebSettings.html#WebKit.WebSettings.props.zoom_step ++ """ ++ def get_zoom_step(self): ++ return 0.10000000149011612 ++ ++ """ ++ This function resets the zoom_level to the default value ++ """ ++ def reset_zoom_level(self, webView): ++ webView.set_zoom_level(1.0) + + """ + This function deletes any temporary files that were created during execution + +From 63dc24917dfd36d7c4a7265dc3a0020deb75593c Mon Sep 17 00:00:00 2001 +From: Harald Weiner +Date: Fri, 28 Jul 2017 07:07:57 +0200 +Subject: [PATCH 2/4] fixes #175 (Live Preview Mode Executes JavaScript) + +--- + data/ui/RemarkableWindow.ui | 9 +++++++++ + remarkable/RemarkableWindow.py | 26 ++++++++++++++++++++++---- + 2 files changed, 31 insertions(+), 4 deletions(-) + +diff --git a/data/ui/RemarkableWindow.ui b/data/ui/RemarkableWindow.ui +index ab0007c..ca2396e 100644 +--- a/data/ui/RemarkableWindow.ui ++++ b/data/ui/RemarkableWindow.ui +@@ -405,6 +405,15 @@ + True + + ++ ++ ++ True ++ False ++ Enable Java-Script ++ True ++ True ++ ++ + + + True +diff --git a/remarkable/RemarkableWindow.py b/remarkable/RemarkableWindow.py +index 893dc27..6856042 100644 +--- a/remarkable/RemarkableWindow.py ++++ b/remarkable/RemarkableWindow.py +@@ -114,8 +114,8 @@ def finish_initializing(self, builder): # pylint: disable=E1002 + self.text_view.set_buffer(self.text_buffer) + self.text_view.set_wrap_mode(Gtk.WrapMode.WORD) + +- my_settings = self.create_webkit_settings() +- self.live_preview = WebKit2.WebView.new_with_settings(my_settings) ++ self.webkit_settings = self.create_webkit_settings() ++ self.live_preview = WebKit2.WebView.new_with_settings(self.webkit_settings) + self.zoom_out(self.live_preview) + + self.scrolledwindow_text_view = Gtk.ScrolledWindow() +@@ -199,7 +199,8 @@ def check_settings(self): + if not os.path.isfile(self.settings_path): + self.remarkable_settings = {} + self.remarkable_settings['css'] = '' +- self.remarkable_settings['font'] = "Sans 10" ++ self.remarkable_settings['font'] = "Sans 10" ++ self.remarkable_settings['js'] = True + self.remarkable_settings['line-numbers'] = True + self.remarkable_settings['live-preview'] = True + self.remarkable_settings['nightmode'] = False +@@ -234,6 +235,12 @@ def load_settings(self): + # Disable word wrap on startup + self.builder.get_object("menuitem_word_wrap").set_active(False) + self.on_menuitem_word_wrap_activate(self) ++ ++ if not 'js' in self.remarkable_settings: ++ self.remarkable_settings['js'] = True ++ if self.remarkable_settings['js'] == False: ++ # Disable Live Preview on startup ++ self.builder.get_object("menuitem_js").set_active(False) + + if self.remarkable_settings['live-preview'] == False: + # Disable Live Preview on startup +@@ -810,7 +817,16 @@ def toggle_live_preview(self, widget): + self.builder.get_object("toolbar1").set_visible(True) + self.update_live_preview(self) + self.write_settings() +- ++ ++ def on_menuitem_js_activate(self, widget): ++ self.toggle_js(self) ++ ++ def toggle_js(self, widget): ++ state = self.webkit_settings.get_enable_javascript() ++ state = not state ++ self.remarkable_settings['js'] = state ++ self.webkit_settings.set_enable_javascript(state) ++ self.write_settings() + + def on_menuitem_swap_activate(self, widget): + if self.live_preview.get_visible(): +@@ -1452,6 +1468,8 @@ def update_live_preview(self, widet): + def create_webkit_settings(self): + result = WebKit2.Settings() + result.set_enable_write_console_messages_to_stdout(False) # Suppress .js output ++ #js = self.remarkable_settings['js'] ++ result.set_enable_javascript(True) # JS-Kill-Switch for issue #175 + return result + + """ + +From 1b05770885a1bbfc8b21fdb877267b4bf9fb5e88 Mon Sep 17 00:00:00 2001 +From: Mikael Blomstrand +Date: Wed, 4 Apr 2018 13:07:30 +0200 +Subject: [PATCH 3/4] Spellcheck error message adapted to arch. + +--- + remarkable/RemarkableWindow.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/remarkable/RemarkableWindow.py b/remarkable/RemarkableWindow.py +index 6856042..a77f74c 100644 +--- a/remarkable/RemarkableWindow.py ++++ b/remarkable/RemarkableWindow.py +@@ -47,7 +47,7 @@ + from gtkspellcheck import SpellChecker + spellcheck_enabled = True + except: +- print("*Spellchecking not enabled.\n*To enable spellchecking install pygtkspellcheck\n*https://pypi.python.org/pypi/pygtkspellcheck/") ++ print("*Spellchecking not enabled.\n*To enable spellchecking install python-gtkspellcheck.\npacman -S --asdeps python-gtkspellcheck") + spellcheck_enabled = False + + import logging + +From eb33c22a6bf4100443b75e33e9897a85ad09d014 Mon Sep 17 00:00:00 2001 +From: Mikael Blomstrand +Date: Wed, 4 Apr 2018 13:12:26 +0200 +Subject: [PATCH 4/4] `import styles` correctly + +--- + remarkable/RemarkableWindow.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/remarkable/RemarkableWindow.py b/remarkable/RemarkableWindow.py +index a77f74c..e838330 100644 +--- a/remarkable/RemarkableWindow.py ++++ b/remarkable/RemarkableWindow.py +@@ -36,7 +36,7 @@ + import re, subprocess, datetime, os, webbrowser, _thread, sys, locale + import tempfile + import traceback +-import styles ++from remarkable import styles + import unicodedata + import warnings + import datetime diff --git a/wkhtmltopdf/PKGBUILD b/wkhtmltopdf/PKGBUILD new file mode 100644 index 0000000..a7b62fc --- /dev/null +++ b/wkhtmltopdf/PKGBUILD @@ -0,0 +1,45 @@ +#!/usr/bin/bash +# JOBoRun : Jwm OpenBox Obarun RUNit +# Maintainer : Joe Bo Run +# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobcomm/$pkgname" +# Website : https://pozol.eu +#-----------------------------------------| DESCRIPTION |--------------------------------------- + +pkgname=wkhtmltopdf +pkgver=0.12.6 +pkgrel=02 +pkgdesc="Command line tools to render HTML into PDF and various image formats" +url="https://wkhtmltopdf.org/" +depends=('qt5-webkit' 'qt5-svg' 'qt5-xmlpatterns') +makedepends=('git') +optdepends=('xorg-server: wkhtmltopdf needs X or Xvfb to operate') +source=("git+https://github.com/wkhtmltopdf/wkhtmltopdf.git#tag=$pkgver?signed") + +build() { + cd $pkgname + qmake-qt5 wkhtmltopdf.pro + make +} + +package() { + cd $pkgname + make INSTALL_ROOT="$pkgdir/usr" install + + # Generate and install man pages + install -d "$pkgdir/usr/share/man/man1" + LD_LIBRARY_PATH=bin ./bin/wkhtmltopdf --manpage \ + >"$pkgdir/usr/share/man/man1/wkhtmltopdf.1" + LD_LIBRARY_PATH=bin ./bin/wkhtmltoimage --manpage \ + >"$pkgdir/usr/share/man/man1/wkhtmltoimage.1" +} + +#---- arch license gpg-key & sha256sums ---- + +arch=(x86_64) + +license=('LGPL3') +validpgpkeys=('76C0969C076A23EC4849F462D3E3E8ACF99DE8EA') # Ashish Kulkarni (Open Source) +sha256sums=('SKIP') + +## 1fd8c8fa661b5355210e33ad8dec0add7cc3352c0ce367f9eceeb8d0cd6ad052 wkhtmltopdf-0.12.6-02-x86_64.pkg.tar.lz + diff --git a/wkhtmltopdf/PKGBUILD-aur b/wkhtmltopdf/PKGBUILD-aur new file mode 100644 index 0000000..9a9a38a --- /dev/null +++ b/wkhtmltopdf/PKGBUILD-aur @@ -0,0 +1,35 @@ +# Maintainer: + +pkgname=wkhtmltopdf +pkgver=0.12.6 +pkgrel=1 +pkgdesc="Command line tools to render HTML into PDF and various image formats" +arch=('x86_64') +url="https://wkhtmltopdf.org/" +license=('LGPL3') +depends=('qt5-webkit' 'qt5-svg' 'qt5-xmlpatterns') +makedepends=('git') +optdepends=('xorg-server: wkhtmltopdf needs X or Xvfb to operate') +source=("git+https://github.com/wkhtmltopdf/wkhtmltopdf.git#tag=$pkgver?signed") +sha256sums=('SKIP') +validpgpkeys=('76C0969C076A23EC4849F462D3E3E8ACF99DE8EA') # Ashish Kulkarni (Open Source) + +build() { + cd $pkgname + qmake-qt5 wkhtmltopdf.pro + make +} + +package() { + cd $pkgname + make INSTALL_ROOT="$pkgdir/usr" install + + # Generate and install man pages + install -d "$pkgdir/usr/share/man/man1" + LD_LIBRARY_PATH=bin ./bin/wkhtmltopdf --manpage \ + >"$pkgdir/usr/share/man/man1/wkhtmltopdf.1" + LD_LIBRARY_PATH=bin ./bin/wkhtmltoimage --manpage \ + >"$pkgdir/usr/share/man/man1/wkhtmltoimage.1" +} + +# vim:set ts=2 sw=2 et: diff --git a/wkhtmltopdf/clean b/wkhtmltopdf/clean new file mode 100644 index 0000000..b680066 --- /dev/null +++ b/wkhtmltopdf/clean @@ -0,0 +1 @@ +rm -rf {src,pkg,wkhtmltopdf} diff --git a/wkhtmltopdf/deps b/wkhtmltopdf/deps new file mode 100644 index 0000000..7909fd4 --- /dev/null +++ b/wkhtmltopdf/deps @@ -0,0 +1,5 @@ +git +qt5-webkit +qt5-svg +qt5-xmlpatterns + diff --git a/wkhtmltopdf/key b/wkhtmltopdf/key new file mode 100644 index 0000000..ed03c57 --- /dev/null +++ b/wkhtmltopdf/key @@ -0,0 +1 @@ +gpg -v --recv-key D3E3E8ACF99DE8EA diff --git a/wkhtmltopdf/time b/wkhtmltopdf/time new file mode 100644 index 0000000..c3dd1a1 --- /dev/null +++ b/wkhtmltopdf/time @@ -0,0 +1,6 @@ + + +real 1m58.053s +user 1m54.649s +sys 0m6.765s +