# $Id: PKGBUILD 119667 2014-09-27 18:34:38Z jelle $ # Maintainer (Arch): Jelle van der Waa # Maintainer (Arch): Daniel Wallace # Contributor (Arch): Giovanni Scafora # Contributor (Arch): Petrov Roman # Contributor (Arch): Andrea Fagiani # Contributor (Arch): Larry Hajali # Maintainer: André Silva pkgname=calibre _pkgname=$pkgname-libre pkgver=2.4.0 pkgrel=1.parabola2 pkgdesc="Ebook management application, without nonfree decompression engine for RAR archives" arch=('i686' 'x86_64' 'mips64el') url="http://$pkgname-ebook.com/" license=('GPL3') depends=('python2-six' 'python2-dateutil' 'python2-cssutils' 'python2-cherrypy' 'python2-mechanize' 'podofo' 'libwmf' 'imagemagick' 'chmlib' 'python2-lxml' 'libusbx' 'python2-pillow' 'shared-mime-info' 'python2-dnspython' 'python2-pyqt5' 'python2-psutil' 'icu' 'libmtp' 'python2-netifaces' 'python2-cssselect' 'python2-apsw' 'qt5-webkit' 'qt5-svg' 'python2-chardet' 'python2-html5lib') makedepends=('python2-pycountry' 'qt5-x11extras') optdepends=("ipython2: to use $pkgname-debug" 'udisks: required for mounting certain devices' ) replaces=($_pkgname) conflicts=($_pkgname) install=$pkgname.install mksource=("http://download.$pkgname-ebook.com/${pkgver}/$pkgname-${pkgver}.tar.xz") source=("https://repo.parabolagnulinux.org/other/${_pkgname}/${_pkgname}-${pkgver}.tar.xz" 'libre.patch') mkmd5sums=('fc8f9b03879b959aa7d18b460f285eeb') md5sums=('4e044ab495aa4e6689765c8f7c4811d2' '343162b9d1c97c0463d4919a8b9ac500') mksource(){ cd "${srcdir}/${pkgname}-${pkgver}" # Remove nonfree unRAR utility files from the source rm -rv src/unrar } prepare(){ cd "${srcdir}/${pkgname}-${pkgver}" # Remove nonfree rar/cbr support and references rm -v src/$pkgname/{ebooks/metadata/rar.py,utils/unrar.{cpp,py}} rm -v resources/images/mimetypes/{cbr,rar}.png rm -v imgsrc/mimetypes/rar.svg patch -Np1 -i "${srcdir}/libre.patch" # Remove unneeded files and libs rm -rf resources/${pkgname}-portable.* \ src/six.py \ src/cherrypy \ src/html5lib \ src/chardet sed -i "s/shlex.split(ldflags)/& + ['-fPIC']/" setup/extensions.py #sed -i -e "s/ldflags = shlex.split(ldflags)/ldflags = shlex.split(ldflags) + ['-fPIC']/" setup/extensions.py # Use python2 sed -i 's:\(env[ ]\+python$\|/usr/bin/python$\):\12:g' $(find . -regex ".*\.py\|.*\.recipe") sed -i "/pyqt_sip_dir/ s:=.*:= '/usr/share/sip/Py2-PyQt5':" setup/build_environment.py # Desktop integration (e.g. enforce arch defaults) sed -e "/self.create_uninstaller()/,/os.rmdir(config_dir)/d" \ -e "/\(cc('xdg-icon-resource\|self.icon_resources.append\|'128'))\)/d" \ -e "/render_img/ s/\('calibre-.*\.png'\)/os.path.join(dir, \1)/g" \ -e "/dir, 'calibre-lrf.png'/i \ \ dir = os.path.join(self.opts.staging_sharedir,'../pixmaps')\n\ \ os.mkdir(dir)" \ -e "/f = open/ s/\('calibre-.*\.desktop'\)/os.path.join(dir, \1)/g" \ -e "/dir, 'calibre-lrfviewer.desktop'/i \ \ dir = os.path.join(self.opts.staging_sharedir,'../applications')\n\ \ os.mkdir(dir)" \ -e "s/'ctc-posml'/'text' not in mt and 'pdf' not in mt and 'xhtml'/" \ -e "s/^Name=calibre/Name=Calibre/g" \ -i src/$pkgname/linux.py } build() { cd "${srcdir}/${pkgname}-${pkgver}" LANG='en_US.UTF-8' python2 setup.py build # LANG='en_US.UTF-8' python2 setup.py resources # Don't build translations since building them is broken badly #LANG='en_US.UTF-8' python2 setup.py translations } package() { cd "${srcdir}/${pkgname}-${pkgver}" # 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" \ "${pkgdir}/usr/share/zsh/site-functions" LANG='en_US.UTF-8' python2 setup.py install --root="${pkgdir}" --prefix=/usr \ --staging-bindir="${pkgdir}/usr/bin" \ --staging-libdir="${pkgdir}/usr/lib" \ --staging-sharedir="${pkgdir}/usr/share" # Compiling bytecode FS#33392 python2 -m compileall "${pkgdir}/usr/lib/$pkgname/" python2 -O -m compileall "${pkgdir}/usr/lib/$pkgname/" }