# Maintainer: Manuel Hüsers # Contributor: Jonas Heinrich # Contributor: Timothée Ravier pkgname=mozilla-firefox-sync-server pkgver=1.8.0 pkgrel=2 pkgdesc='Mozilla Sync Server for built-in Firefox Sync' arch=('i686' 'x86_64' 'arm' 'armv6h' 'armv7h' 'aarch64') url='http://docs.services.mozilla.com/howtos/run-sync-1.5.html' license=('MPL2') depends=('python2' 'python2-virtualenv') options=(!debug) install="${pkgname}.install" source=("https://github.com/mozilla-services/syncserver/archive/${pkgver}.tar.gz" 'ffsync.service' 'ffsync.tmpfiles') sha256sums=('728206bcffec7a305e97e7cd4d465b3fa56f39f8e1fd55d98e49a866016d61e0' '8664ad8361d6751aad47e86900270d2efd8b65d520248cd1c164432baba42212' '462bfdccc672339a03622dbe0a76a2df1b4293de8b240e82fe127a6befaa1a89') sha384sums=('077129ce69d86cfe683401cb04f2678cdb9eae861f77fb052e97fc4f55d9780b5199259911c7a0d0adaa386e3aad0996' 'a7384b5b55b2377ee4445e45bfd0545435c2a6a19730ff4219340e3c6e8a3b51fcb46e4215093df860f9fa99a0b471ab' '236b285f7e390d31cd13a0ac78c524acfbc8a7325d7b0b114b39f69a5963535d5f1f73bdef575728b2f6e81860c4ea16') backup=('opt/mozilla-firefox-sync-server/syncserver.ini') optdepends=('uwsgi-plugin-python2: Serve the webapp using uwsgi' 'mozilla-firefox-account-server: Run your own firefox account server') prepare() { cd "syncserver-${pkgver}" # Change default sqlite database location sed -i "s|/tmp/syncserver.db|/var/lib/ffsync/sync_storage.db|g" syncserver.ini sed -i "s|^\#sqluri|sqluri|" syncserver.ini # Remove obsolete parameter sed -i "s| --no-site-packages||g" Makefile # Remove incompatible setuptools sed -i "s| distribute||g" Makefile # Fix wrong python version being used for virtualenv sed -i "s|virtualenv|\$(SYSTEMPYTHON) -m virtualenv|g" Makefile } build() { cd "syncserver-${pkgver}" make build # MySQL support (should already be included) #local/bin/pip install PyMySQL # PostgreSQL support #local/bin/pip install psycopg2 # There is no install target in the Makefile, so let's do some cleaning rm -rf .git .gitignore Dockerfile Makefile MANIFEST.in README.rst setup.py \ local/bin/pep8 local/bin/build* local/bin/easy_install* local/bin/pip* \ local/COMPLETE # Remove compiled python files as they may cause issues find . -name '*.pyc' -delete # Manually fix install path find . -type f -exec sed -i "s|${srcdir}/syncserver-${pkgver}|/opt/${pkgname}|g" {} \; } check() { cd "syncserver-${pkgver}" #make test } package() { cd "syncserver-${pkgver}" # There is no install target in the Makefile, installing manually install -dm 755 "${pkgdir}"/opt/${pkgname} "${pkgdir}"/var/lib/ffsync cp -a * "${pkgdir}"/opt/${pkgname} # Manually fix permissions cd "${pkgdir}"/opt/${pkgname} find . -exec chmod go-w {} \; find . -type f -exec chmod a+r {} \; install -Dm 644 "${srcdir}"/ffsync.service "${pkgdir}"/usr/lib/systemd/system/ffsync.service install -Dm 644 "${srcdir}"/ffsync.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/ffsync.conf }