Date: Friday, January 21, 2022 @ 08:04:10 Author: alerque Revision: 1111947
upgpkg: calibre 5.35.0-1 Modified: calibre/trunk/PKGBUILD ----------+ PKGBUILD | 177 +++++++++++++++++++++++++++++++++++++------------------------ 1 file changed, 108 insertions(+), 69 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2022-01-21 07:45:18 UTC (rev 1111946) +++ PKGBUILD 2022-01-21 08:04:10 UTC (rev 1111947) @@ -1,5 +1,5 @@ -# Maintainer: Jelle van der Waa <[email protected]> # Maintainer: Caleb Maclennan <[email protected]> +# Contributor: Jelle van der Waa <[email protected]> # Contributor: Eli Schwartz <[email protected]> # Contributor: Daniel Wallace <danielwallace at gtmanfred dot com> # Contributor: Giovanni Scafora <[email protected]> @@ -7,99 +7,138 @@ # Contributor: Andrea Fagiani <andfagiani _at_ gmail dot com> # Contributor: Larry Hajali <[email protected]> -pkgbase=calibre pkgname=calibre -pkgver=5.34.0 -pkgrel=2 -pkgdesc="Ebook management application" -arch=('x86_64') -url="https://calibre-ebook.com/" -license=('GPL3') -_py_deps=('apsw' 'beautifulsoup4' 'cchardet' 'cssselect' 'css-parser' 'dateutil' 'dnspython' - 'feedparser' 'html2text' 'html5-parser' 'jeepney' 'lxml' 'markdown' 'mechanize' 'msgpack' - 'netifaces' 'unrardll' 'pillow' 'psutil' 'py7zr' 'pychm' 'pygments' 'pyqt5' - 'pyqtwebengine' 'regex' 'zeroconf') -depends=('hunspell' 'hyphen' 'icu' 'jxrlib' 'libmtp' 'libstemmer' 'libusb' - 'libwmf' 'mathjax' 'mtdev' 'optipng' 'podofo' - "${_py_deps[@]/#/python-}" 'qt5-imageformats' 'qt5-svg' 'ttf-liberation' 'udisks2') -makedepends=('qt5-x11extras' 'sip' 'pyqt-builder' 'xdg-utils' 'rapydscript-ng') +pkgver=5.35.0 +pkgrel=1 +pkgdesc='Ebook management application' +arch=(x86_64) +url=https://calibre-ebook.com +license=(GPL3) +_pydeps=(apsw + beautifulsoup4 + cchardet + css-parser + cssselect + dateutil + dnspython + feedparser + html2text + html5-parser + jeepney + lxml + markdown + mechanize + msgpack + netifaces + pillow + psutil + py7zr + pychm + pygments + pyqt5 + pyqtwebengine + regex + unrardll + zeroconf) +depends=(hunspell + hyphen + icu + jxrlib + libmtp + libstemmer + libusb + libwmf + mathjax + mtdev + optipng + podofo + "${_pydeps[@]/#/python-}" + qt5-imageformats + qt5-svg + ttf-liberation + udisks2) +makedepends=(pyqt-builder + qt5-x11extras + rapydscript-ng + sip + xdg-utils) optdepends=('poppler: required for converting pdf to html' 'speech-dispatcher: TTS support in the viewer') -conflicts=('calibre-common' 'calibre-python3') -replaces=('calibre-common' 'calibre-python3') -source=("https://download.calibre-ebook.com/${pkgver}/calibre-${pkgver}.tar.xz" - "https://calibre-ebook.com/signatures/${pkgbase}-${pkgver}.tar.xz.sig" - https://github.com/kovidgoyal/calibre/commit/dafa08e9.patch) -sha256sums=('d4d401eefadc534851df4f3ff247949ffac785dbc993901bd2938c3f2894d7e3' - 'SKIP' - '72f5fa0a38b24867400efafac1dcb3bf71c1ba0ea8620c1dafdbbdde8c978b38') +conflicts=(calibre-common + calibre-python3) +replaces=("${replaces[@]}") +_archive="$pkgname-$pkgver" +source=("https://download.calibre-ebook.com/$pkgver/$_archive.tar.xz" + "$url/signatures/$_archive.tar.xz.sig") +sha256sums=('f45e9e12a1f67895a8f28a5050c2e63713d7bed8001159a7eae7f5f6ceb9836e' + 'SKIP') validpgpkeys=('3CE1780F78DD88DF45194FD706BC317B515ACE7C') # Kovid Goyal (New longer key) <[email protected]> prepare(){ - cd "${pkgbase}-${pkgver}" + cd "$_archive" - patch -p1 -i ../dafa08e9.patch # Fix python lib dir + # Desktop integration (e.g. enforce arch defaults) + # Use uppercase naming scheme, don't delete config files under fakeroot. + sed -e "/import config_dir/,/os.rmdir(config_dir)/d" \ + -e "s/'ctc-posml'/'text' not in mt and 'pdf' not in mt and 'xhtml'/" \ + -e "s/^Name=calibre/Name=Calibre/g" \ + -i src/calibre/linux.py - # Desktop integration (e.g. enforce arch defaults) - # Use uppercase naming scheme, don't delete config files under fakeroot. - sed -e "/import config_dir/,/os.rmdir(config_dir)/d" \ - -e "s/'ctc-posml'/'text' not in mt and 'pdf' not in mt and 'xhtml'/" \ - -e "s/^Name=calibre/Name=Calibre/g" \ - -i src/calibre/linux.py + cd resources - cd resources + # Remove unneeded files + rm $pkgname-portable.* mozilla-ca-certs.pem - # Remove unneeded files - rm ${pkgbase}-portable.* mozilla-ca-certs.pem - - # use system mathjax - rm -r mathjax + # use system mathjax + rm -r mathjax } build() { - cd "${pkgbase}-${pkgver}" + cd "$_archive" - LANG='en_US.UTF-8' python setup.py build - LANG='en_US.UTF-8' python setup.py gui - python setup.py liberation_fonts --path-to-liberation_fonts /usr/share/fonts/liberation --system-liberation_fonts - LANG='en_US.UTF-8' python setup.py mathjax --path-to-mathjax /usr/share/mathjax --system-mathjax - LANG='en_US.UTF-8' python setup.py rapydscript + LANG='en_US.UTF-8' python setup.py build + LANG='en_US.UTF-8' python setup.py gui + python setup.py liberation_fonts --path-to-liberation_fonts /usr/share/fonts/liberation --system-liberation_fonts + LANG='en_US.UTF-8' python setup.py mathjax --path-to-mathjax /usr/share/mathjax --system-mathjax + LANG='en_US.UTF-8' python setup.py rapydscript } check() { - cd "${pkgbase}-${pkgver}" + cd "$_archive" - _test_excludes=( - # merely testing if a runtime-optional feature optdepend is importable - 'speech_dispatcher' - # tests if a completely unused module is bundled - 'pycryptodome' - ) + _test_excludes=( + # merely testing if a runtime-optional feature optdepend is importable + 'speech_dispatcher' + # tests if a completely unused module is bundled + 'pycryptodome' + # only fails on local builds, and that intermittently + 'test_searching' + ) - LANG='en_US.UTF-8' python setup.py test "${_test_excludes[@]/#/--exclude-test-name=}" + LANG='en_US.UTF-8' python setup.py test "${_test_excludes[@]/#/--exclude-test-name=}" } package() { - cd "${pkgbase}-${pkgver}" + cd "$_archive" - # If this directory doesn't exist, zsh completion won't install. - install -d "${pkgdir}/usr/share/zsh/site-functions" + # If this directory doesn't exist, zsh completion won't install. + install -d "${pkgdir}/usr/share/zsh/site-functions" - LANG='en_US.UTF-8' python setup.py install \ - --staging-root="${pkgdir}/usr" \ - --prefix=/usr \ - --system-plugins-location=/usr/share/calibre/system-plugins + LANG='en_US.UTF-8' python setup.py install \ + --staging-root="${pkgdir}/usr" \ + --prefix=/usr \ + --system-plugins-location=/usr/share/calibre/system-plugins - cp -a man-pages/ "${pkgdir}/usr/share/man" + cp -a man-pages/ "${pkgdir}/usr/share/man" - # not needed at runtime - rm -r "${pkgdir}"/usr/share/calibre/rapydscript/ + # not needed at runtime + rm -r "${pkgdir}"/usr/share/calibre/rapydscript/ - # Compiling bytecode FS#33392 - # This is kind of ugly but removes traces of the build root. - while read -rd '' _file; do - _destdir="$(dirname "${_file#${pkgdir}}")" - python3 -m compileall -d "${_destdir}" "${_file}" - python3 -O -m compileall -d "${_destdir}" "${_file}" - done < <(find "${pkgdir}"/usr/lib/ -name '*.py' -print0) + # Compiling bytecode FS#33392 + # This is kind of ugly but removes traces of the build root. + while read -rd '' _file; do + _destdir="$(dirname "${_file#${pkgdir}}")" + python -m compileall -d "${_destdir}" "${_file}" + python -O -m compileall -d "${_destdir}" "${_file}" + done < <(find "${pkgdir}"/usr/lib/ -name '*.py' -print0) }
