mirror of
https://gitdl.cn/https://github.com/chakralinux/desktop.git
synced 2025-01-24 10:32:13 +08:00
82 lines
3.1 KiB
Bash
82 lines
3.1 KiB
Bash
# maintainer: UtG <utg[dot]chakra.linux[at]gmail[dot]com>
|
|
|
|
pkgname=calibre
|
|
pkgver=1.41.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' 'python2-dbus' 'python-lxml' 'python2-beautifulsoup' 'python2-dateutil'
|
|
'python2-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=('cd869d35ee0c27534f6b243cd7ea6980b2fb0e5e6b465bbf5316bedd206d5343'
|
|
'3792961a86f953ccbdb72b245bbcc5fddc385d713ebee9caa7fcd2bffdf4d5d9'
|
|
'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}
|
|
|
|
python2 setup.py build
|
|
python2 setup.py translations
|
|
}
|
|
|
|
package() {
|
|
cd ${pkgname}
|
|
|
|
patch -Np1 -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/"
|
|
}
|