summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO39
-rw-r--r--PKGBUILD98
-rw-r--r--mozilla-firefox-sync-server.install10
3 files changed, 101 insertions, 46 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 403e325d857a..44f298f93fa8 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,30 +1,31 @@
-# Generated by mksrcinfo v8
-# Fri Jun 8 07:29:36 UTC 2018
pkgbase = mozilla-firefox-sync-server
pkgdesc = Mozilla Sync Server for built-in Firefox Sync
pkgver = 1.8.0
- pkgrel = 1
+ pkgrel = 2
url = http://docs.services.mozilla.com/howtos/run-sync-1.5.html
install = mozilla-firefox-sync-server.install
- arch = any
- license = GPL
+ arch = i686
+ arch = x86_64
+ arch = arm
+ arch = armv6h
+ arch = armv7h
+ arch = aarch64
+ license = MPL2
depends = python2
- depends = python2-pyramid
- depends = python2-mozsvc
- depends = python2-konfig
- depends = python2-configparser
- depends = python2-tokenserver
- depends = python2-simplejson
- depends = python2-paste-deploy
- depends = python2-syncstorage
- depends = python2-pyramid-hawkauth
- depends = python2-tokenlib
- depends = python2-sqlalchemy
+ depends = python2-virtualenv
optdepends = uwsgi-plugin-python2: Serve the webapp using uwsgi
optdepends = mozilla-firefox-account-server: Run your own firefox account server
- backup = etc/webapps/mozilla-firefox-sync-server/syncserver.ini
- source = mozilla-firefox-sync-server-1.8.0.tar.gz::https://github.com/mozilla-services/syncserver/archive/1.8.0.tar.gz
- sha512sums = 73f7e32e900fac5e8385b2b7b521aed964ec85879283733daf84a8afe194e1775b654074ae19e7bf574a2e41a01a821104a10f4c4794eecacffb7a903814e093
+ options = !debug
+ backup = opt/mozilla-firefox-sync-server/syncserver.ini
+ source = https://github.com/mozilla-services/syncserver/archive/1.8.0.tar.gz
+ source = ffsync.service
+ source = ffsync.tmpfiles
+ sha256sums = 728206bcffec7a305e97e7cd4d465b3fa56f39f8e1fd55d98e49a866016d61e0
+ sha256sums = 8664ad8361d6751aad47e86900270d2efd8b65d520248cd1c164432baba42212
+ sha256sums = 462bfdccc672339a03622dbe0a76a2df1b4293de8b240e82fe127a6befaa1a89
+ sha384sums = 077129ce69d86cfe683401cb04f2678cdb9eae861f77fb052e97fc4f55d9780b5199259911c7a0d0adaa386e3aad0996
+ sha384sums = a7384b5b55b2377ee4445e45bfd0545435c2a6a19730ff4219340e3c6e8a3b51fcb46e4215093df860f9fa99a0b471ab
+ sha384sums = 236b285f7e390d31cd13a0ac78c524acfbc8a7325d7b0b114b39f69a5963535d5f1f73bdef575728b2f6e81860c4ea16
pkgname = mozilla-firefox-sync-server
diff --git a/PKGBUILD b/PKGBUILD
index df2693b2facd..acd1b9035040 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,37 +1,87 @@
-# Maintainer: Jonas Heinrich <onny@project-insanity.org>
+# Maintainer: Manuel Hüsers <aur@huesers.de>
# Contributor: Jonas Heinrich <onny@project-insanity.org>
# Contributor: Timothée Ravier <tim@siosm.fr>
pkgname=mozilla-firefox-sync-server
pkgver=1.8.0
-pkgrel=1
-pkgdesc="Mozilla Sync Server for built-in Firefox Sync"
-arch=('any')
+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=('GPL')
-depends=('python2' 'python2-pyramid' 'python2-mozsvc' 'python2-konfig' 'python2-configparser' 'python2-tokenserver'
- 'python2-simplejson' 'python2-paste-deploy' 'python2-syncstorage' 'python2-pyramid-hawkauth' 'python2-tokenlib' 'python2-sqlalchemy')
-source=("${pkgname}-${pkgver}.tar.gz::https://github.com/mozilla-services/syncserver/archive/${pkgver}.tar.gz")
-sha512sums=('73f7e32e900fac5e8385b2b7b521aed964ec85879283733daf84a8afe194e1775b654074ae19e7bf574a2e41a01a821104a10f4c4794eecacffb7a903814e093')
-backup=('etc/webapps/mozilla-firefox-sync-server/syncserver.ini')
-install='mozilla-firefox-sync-server.install'
+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')
+ 'mozilla-firefox-account-server: Run your own firefox account server')
prepare() {
- cd "syncserver-${pkgver}"
- sed -i 's/tmp\/syncserver.db/var\/lib\/mozilla-firefox-sync-server\/syncserver.db/' syncserver.ini
- sed -i 's/^\#sqluri/sqluri/' syncserver.ini
+ 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
}
-package() {
- cd "syncserver-${pkgver}"
- python2 setup.py install --root "${pkgdir}"
- install -dm 755 "${pkgdir}/usr/share/webapps/mozilla-firefox-sync-server" "${pkgdir}/etc/webapps/mozilla-firefox-sync-server" \
- "${pkgdir}/var/lib/mozilla-firefox-sync-server"
- cp syncserver.wsgi "${pkgdir}/usr/share/webapps/mozilla-firefox-sync-server/"
- cp syncserver.ini "${pkgdir}/etc/webapps/mozilla-firefox-sync-server/"
- ln -s /etc/webapps/mozilla-firefox-sync-server/syncserver.ini "${pkgdir}/usr/share/webapps/mozilla-firefox-sync-server/"
+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" {} \;
}
-# vim: ft=sh syn=sh ts=2 sw=2 et:
+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
+}
diff --git a/mozilla-firefox-sync-server.install b/mozilla-firefox-sync-server.install
index 2b78fee210d6..03e415d06349 100644
--- a/mozilla-firefox-sync-server.install
+++ b/mozilla-firefox-sync-server.install
@@ -1,12 +1,16 @@
post_install() {
getent group ffsync &>/dev/null || groupadd -r ffsync >/dev/null
getent passwd ffsync &>/dev/null || useradd -r -s /usr/bin/false \
- -g ffsync -G ffsync,http -d /var/lib/mozilla-firefox-sync-server ffsync >/dev/null
- chown -R ffsync:ffsync /var/lib/mozilla-firefox-sync-server /etc/webapps/mozilla-firefox-sync-server
+ -g ffsync -G ffsync,http -d /var/lib/ffsync ffsync >/dev/null
+
+ chown -R ffsync:ffsync /var/lib/ffsync
+ systemd-tmpfiles --create ffsync.conf
}
post_update() {
- chown -R ffsync:ffsync /var/lib/mozilla-firefox-sync-server /etc/webapps/mozilla-firefox-sync-server
+ chown -R ffsync:ffsync /var/lib/ffsync
+ chown -R ffsync:http /run/ffsync
+
echo ">> Documentation: https://wiki.archlinux.org/index.php/Mozilla_Firefox_Sync_Server"
}