summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimothée Ravier2015-06-09 12:34:06 +0200
committerTimothée Ravier2015-06-09 12:34:06 +0200
commit63aae2099abd262b318511ec503740decbe9206a (patch)
tree42fd991956b68e883bd77391d3bf14d0b19c944a
downloadaur-mozilla-firefox-sync-server-hg.tar.gz
Imported and fixed from the AURv3
-rw-r--r--.SRCINFO22
-rw-r--r--PKGBUILD81
-rw-r--r--ffsync.service14
-rw-r--r--mozilla-firefox-sync-server-hg.install21
4 files changed, 138 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..7a76b0b11c73
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,22 @@
+pkgbase = mozilla-firefox-sync-server-hg
+ pkgdesc = Mozilla Sync Server for built-in Firefox Sync - 1.1 version for Firefox <29
+ pkgver = 549.ba4bf783018f
+ pkgrel = 1
+ url = http://docs.services.mozilla.com/howtos/run-sync.html
+ install = mozilla-firefox-sync-server-hg.install
+ arch = i686
+ arch = x86_64
+ license = GPL
+ makedepends = mercurial
+ depends = python2-virtualenv
+ conflicts = mozilla-firefox-sync-server-git
+ options = !debug
+ backup = opt/mozilla-firefox-sync-server/development.ini
+ backup = opt/mozilla-firefox-sync-server/etc/sync.conf
+ source = mozilla-firefox-sync-server-hg::hg+https://hg.mozilla.org/services/server-full
+ source = ffsync.service
+ sha256sums = SKIP
+ sha256sums = c460ff42a1beeeef50fdb800dcc83be82fccc776d2e0756f00b45a0db9387cf3
+
+pkgname = mozilla-firefox-sync-server-hg
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..6f2a1de47efc
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,81 @@
+# Maintainer: Timothée Ravier <tim@siosm.fr>
+# Contributors: sergej, waddles, eigengrau, untitaker
+
+pkgname=mozilla-firefox-sync-server-hg
+pkgver=549.ba4bf783018f
+pkgrel=1
+pkgdesc="Mozilla Sync Server for built-in Firefox Sync - 1.1 version for Firefox <29"
+arch=('i686' 'x86_64')
+url='http://docs.services.mozilla.com/howtos/run-sync.html'
+license=('GPL')
+depends=('python2-virtualenv')
+makedepends=('mercurial')
+options=(!debug)
+conflicts=('mozilla-firefox-sync-server-git')
+install=${pkgname}.install
+source=("${pkgname}::hg+https://hg.mozilla.org/services/server-full"
+ 'ffsync.service')
+sha256sums=('SKIP'
+ 'c460ff42a1beeeef50fdb800dcc83be82fccc776d2e0756f00b45a0db9387cf3')
+backup=('opt/mozilla-firefox-sync-server/development.ini'
+ 'opt/mozilla-firefox-sync-server/etc/sync.conf')
+
+pkgver() {
+ cd ${pkgname}
+ echo "$(hg identify -n).$(hg identify -i)"
+}
+
+prepare() {
+ cd ${pkgname}
+
+ # Change default log file location
+ sed -i "s|/tmp/sync-error.log|/var/log/ffsync/sync-error.log|g" development.ini
+
+ # Change default sqlite database location
+ sed -i "s|/tmp/test.db|/var/lib/ffsync/sync_storage.db|g" etc/sync.conf
+
+ # Use HTTPS for pypi
+ sed -i "s|http://pypi.python.org/simple|https://pypi.python.org/simple|g" Makefile
+}
+
+build() {
+ cd ${pkgname}
+ make build VIRTUALENV=virtualenv2
+
+ # Install gunicorn to use with nginx
+ bin/easy_install gunicorn
+
+ # There is no install rule in the Makefile, so let's do some cleaning
+ rm -rf .hg .hgignore .hgtags \
+ _build.py build.py CENTOS.txt dev-reqs.txt Makefile \
+ tests tests*.ini tools \
+ bin/build* bin/easy_install* bin/pip* bin/pypi2rpm.py
+
+ # Remove all mercurial folders
+ rm -rf deps/{server-core,server-reg,server-storage}/.hg
+
+ # 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}/server-full|/opt/${pkgname/-hg}|g" {} \;
+ find . -type f -exec sed -i "s|${srcdir}/${pkgname}|/opt/${pkgname/-hg}|g" {} \;
+}
+
+package() {
+ install -Dm 644 ffsync.service "${pkgdir}"/usr/lib/systemd/system/ffsync.service
+
+ install -dm 755 "${pkgdir}"/opt/${pkgname/-hg}
+
+ cd ${pkgname}
+ cp -a ./* "${pkgdir}"/opt/${pkgname/-hg}
+
+ # Manually fix permissions
+ cd "${pkgdir}"/opt/${pkgname/-hg}
+ find . -exec chmod go-w {} \;
+ find . -type f -exec chmod a+r {} \;
+
+ install -dm 0755 "${pkgdir}"/var/log/ffsync "${pkgdir}"/var/lib/ffsync
+}
+
+# vim: ft=sh syn=sh
diff --git a/ffsync.service b/ffsync.service
new file mode 100644
index 000000000000..f41f287037d5
--- /dev/null
+++ b/ffsync.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=gunicorn server running Mozilla's Firefox Sync Server
+After=syslog.target network.target remote-fs.target nss-lookup.target
+
+[Service]
+Type=simple
+User=ffsync
+Group=http
+UMask=007
+Restart=on-abort
+ExecStart=/opt/mozilla-firefox-sync-server/bin/gunicorn --paste /opt/mozilla-firefox-sync-server/development.ini
+
+[Install]
+WantedBy=multi-user.target
diff --git a/mozilla-firefox-sync-server-hg.install b/mozilla-firefox-sync-server-hg.install
new file mode 100644
index 000000000000..da6fc45f8ca0
--- /dev/null
+++ b/mozilla-firefox-sync-server-hg.install
@@ -0,0 +1,21 @@
+post_install() {
+ getent group ffsync &>/dev/null || groupadd ffsync >/dev/null
+ getent passwd ffsync &>/dev/null || useradd -r -s /usr/bin/false \
+ -g ffsync -G ffsync,http -d /var/lib/ffsync ffsync >/dev/null
+
+ chown -R ffsync:log /var/log/ffsync
+ chown -R ffsync:ffsync /var/lib/ffsync
+}
+
+post_update() {
+ chown -R ffsync:log /var/log/ffsync
+ chown -R ffsync:ffsync /var/lib/ffsync
+
+ echo ">> Documentation: https://wiki.archlinux.org/index.php/Mozilla_Firefox_Sync_Server"
+}
+
+pre_remove() {
+ getent passwd ffsync &>/dev/null && userdel ffsync >/dev/null
+ getent group ffsync &>/dev/null && groupdel ffsync >/dev/null
+ true
+}