desktop/calibre/PKGBUILD

82 lines
3.1 KiB
Bash

# maintainer: almack
pkgname=calibre
pkgver=1.6.0
pkgrel=1
pkgdesc="Ebook management application"
arch=('x86_64')
url="http://calibre.kovidgoyal.net/"
license=('GPL3')
depends=('python2' 'python2-imaging' 'libusb' 'python2-pyqt4' 'python-mechanize'
'imagemagick' 'dbus-python' 'python-lxml' 'python2-beautifulsoup' 'python2-dateutil'
'python-cssutils' 'desktop-file-utils' 'python2-dns' 'libmtp'
'podofo' 'xdg-utils' 'cherrypy' 'python2-pdf' 'unrar' 'chmlib' 'poppler'
'poppler-qt' 'icu' 'libwmf' 'libffi' 'python2-six' 'python2-netifaces' 'python2-cssselect'
'python2-apsw')
makedepends=('python2-pycountry' 'qt-private-headers')
#optdepends=('ipython: to use calibre-debug')
screenshot=('https://lh5.googleusercontent.com/_lG58t3XWd3c/TcNwiXkAx_I/AAAAAAAAAEc/M34I4uY9UUY/s800/gui.jpeg')
install=${pkgname}.install
source=("http://download.calibre-ebook.com/${pkgver}/${pkgname}-${pkgver}.tar.xz"
'desktop_integration.patch'
'calibre-mount-helper')
sha256sums=('51e752967824992d75738551bf7b6ed7fde54e10cef01460f370aa37bd11e6ca'
'6f236dcf44f3c5d1f227302a2a0b51dd82043cf8f3eb9efb1150b7acac9b945b'
'1cdbd23edfea0b08f7bd089e3302ca9601737aac18537406f0408b449aea32d1')
prepare() {
cd ${pkgname}
rm -rf src/cherrypy
rm -rf resources/${pkgname}-portable.*
mkdir -p src/calibre/plugins
sed -i -e "s/ldflags = shlex.split(ldflags)/ldflags = shlex.split(ldflags) + ['-fPIC']/" \
setup/extensions.py
# Fix for shebang in meta.py
sed -i -e "s:#!usr:#!/usr:g" src/calibre/ebooks/markdown/extensions/meta.py
sed -i -e 's:\(#!/usr/bin/env[ ]\+python$\|#!/usr/bin/python$\):\12:g' \
$(find . -regex ".*.py\|.*.recipe")
}
build() {
cd ${pkgname}
LANG='en_US.UTF-8' python2 setup.py build
#LANG='en_US.UTF-8' python2 setup.py translations
}
package() {
cd ${pkgname}
patch -p1 -i "${srcdir}/desktop_integration.patch"
# More on desktop integration (e.g. enforce Chakra defaults)
sed -i -e "/self.create_uninstaller()/,/os.rmdir(config_dir)/d" \
-e "s|self.opts.staging_sharedir, 'man/man1'|self.opts.staging_root, 'usr/share/man/man1'|" \
-e "s|manpath, prog+'.1'+__appname__+'.bz2'|manpath, prog+'.1'+'.bz2'|" \
-e "s|old_udev = '/etc|old_udev = '${pkgdir}/etc|" \
-e "s/^Name=calibre/Name=Calibre/g" src/calibre/linux.py
# Fix the environment module location
sed -i -e "s|(prefix=.*)|(prefix='$pkgdir/usr')|g" setup/install.py
install -d "${pkgdir}/usr/lib/python2.7/site-packages"
install -d "${pkgdir}/usr/share/zsh/site-functions"
python2 setup.py install --root="${pkgdir}" --prefix=/usr \
--staging-bindir="${pkgdir}/usr/bin" \
--staging-libdir="${pkgdir}/usr/lib" \
--staging-sharedir="${pkgdir}/usr/share"
find "${pkgdir}" -type d -empty -delete
# See http://lwn.net/SubscriberLink/465311/7c299471a5399167/
rm -rf "${pkgdir}/usr/bin/calibre-mount-helper"
install -m 755 "${srcdir}/calibre-mount-helper" "${pkgdir}/usr/bin"
python2 -m compileall "${pkgdir}/usr/lib/calibre/"
python2 -O -m compileall "${pkgdir}/usr/lib/calibre/"
}