added copy of ffsync from arch as base info for ubuntu

This commit is contained in:
Philipp Häfelfinger 2016-10-24 23:35:31 +02:00
parent b1980dd6e1
commit ca85334660
5 changed files with 132 additions and 0 deletions

76
firefox/sync/PKGBUILD Normal file
View File

@ -0,0 +1,76 @@
# Maintainer: Timothée Ravier <tim@siosm.fr>
pkgname=mozilla-firefox-sync-server-git
pkgver=1.5.2.r0.g3d216e9
pkgrel=1
pkgdesc="Mozilla Sync Server for built-in Firefox Sync - 1.5 version for Firefox 29+"
arch=('i686' 'x86_64')
url='http://docs.services.mozilla.com/howtos/run-sync-1.5.html'
license=('GPL')
depends=('python2' 'python-virtualenv')
makedepends=('git')
options=(!debug)
conflicts=('mozilla-firefox-sync-server-hg')
install=${pkgname}.install
source=("${pkgname}::git+https://github.com/mozilla-services/syncserver"
'ffsync.service'
'ffsync.tmpfiles')
sha256sums=('SKIP'
'f2e69486825f43f6a288adced31a6c2e51b0dbd84483aa427b2d85699c942446'
'462bfdccc672339a03622dbe0a76a2df1b4293de8b240e82fe127a6befaa1a89')
backup=('opt/mozilla-firefox-sync-server/syncserver.ini')
pkgver() {
cd ${pkgname}
git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
}
prepare() {
cd ${pkgname}
# Change default sqlite database location
sed -i "s|/tmp/syncserver.db|/var/lib/ffsync/sync_storage.db|g" syncserver.ini
}
build() {
cd ${pkgname}
make build
# Install gunicorn to use with nginx
local/bin/pip install gunicorn
# 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}/${pkgname}|/opt/${pkgname/-git}|g" {} \;
}
check() {
cd ${pkgname}
#make test
}
package() {
cd ${pkgname}
# There is no install target in the Makefile, installing manually
install -dm 755 "${pkgdir}"/opt/${pkgname/-git} "${pkgdir}"/var/lib/ffsync
cp -a * "${pkgdir}"/opt/${pkgname/-git}
# Manually fix permissions
cd "${pkgdir}"/opt/${pkgname/-git}
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
}
# vim: ft=sh syn=sh ts=2 sw=2 et:

View File

@ -0,0 +1,14 @@
[Unit]
Description=Gunicorn server running Mozilla's Firefox Sync Server - Version 1.5
After=network.target
[Service]
Type=simple
User=ffsync
Group=http
UMask=007
Restart=on-abort
ExecStart=/opt/mozilla-firefox-sync-server/local/bin/gunicorn --paste /opt/mozilla-firefox-sync-server/syncserver.ini
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1 @@
D /run/ffsync 0750 ffsync http

21
firefox/sync/install.md Normal file
View File

@ -0,0 +1,21 @@
# Installation of firefox sync 1.5 with systemd
## install packages
apt-get install python-dev git-core python-virtualenv g++ make
## add user and group
groupadd ffsync
useradd -r -s /usr/bin/false -g ffsync -G ffsync,http -d /var/lib/ffsync ffsync
## create installation directory
## create systemd config
### tempfiles config
### startup config
## configure server

View File

@ -0,0 +1,20 @@
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:ffsync /var/lib/ffsync
systemd-tmpfiles --create ffsync.conf
}
post_update() {
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"
}
pre_remove() {
getent passwd ffsync &>/dev/null && userdel ffsync >/dev/null
getent group ffsync &>/dev/null && groupdel ffsync >/dev/null
true
}