You are not logged in.
Hello,
I would like to run my own Sync server for Firefox. There doesn't seem to a package in AUR so I thought I'd ask here.
I've never made a PKGBUILD before (only did some edits here and there) and I thought this would be a nice opportunity to start; however, it seems this may be a little too complicated for a first PKGBUILD.
The makefile can be found here: https://hg.mozilla.org/services/server- … e/Makefile
As you can see, there is some rpm stuff going on. It also builds python-ldap, which I guess we can replace with a python2-ldap dependency?
There is also a readme here: https://hg.mozilla.org/services/server- … f3e/README
Thanks
Offline
So this is what I got so far:
PKGBUILD:
##
pkgname=sync-server-full
_pkgname=server-full
pkgver=0.1
pkgrel=1
arch=('i686' 'x86_64')
license=('GPL' 'LGPL' 'MPL')
pkgdesc="Firefox sync server python"
url="https://hg.mozilla.org/services/server-full"
makedepends=('mercurial')
depends=('python2' 'sqlite3' 'python2-ldap' 'python-virtualenv' 'pylint' 'python2-nose')
_hgroot="https://hg.mozilla.org/services"
_hgrepo="server-full"
build() {
cd "$srcdir/$_pkgname"
make build
}
edited Makefile:
APPNAME = sync-server-full
DEPS = server-core,server-reg,server-storage
VIRTUALENV = virtualenv
PYTHON = usr/bin/python2
EZ = bin/easy_install // <- no idea what this is.
NOSE = usr/bin/nose -s --with-xunit
FLAKE8 = usr/bin/flake8
COVEROPTS = --cover-html --cover-html-dir=html --with-coverage --cover-package=syncreg,syncstorage,services
TESTS = deps/server-core/services/tests deps/server-reg/syncreg/tests deps/server-storage/syncstorage/tests
PKGS = deps/server-core/services deps/server-reg/syncreg deps/server-storage/syncstorage
COVERAGE = bin/coverage // <- is this perl-pod-coverage?
PYLINT = usr/bin/pylint
SERVER = dev-auth.services.mozilla.com
SCHEME = https
.PHONY: all build mysqltest ldaptest test coverage build_extras qa oldtest hudson-coverage lint memcachedtest memcachedldaptest
all: build
# XXX we could switch to zc.buildout here
build:
rm -rf lib64 bin lib include // <- what is this removing?
$(VIRTUALENV) --no-site-packages --distribute .
$(PYTHON) build.py $(APPNAME) $(DEPS)
$(EZ) nose
$(EZ) coverage
$(EZ) flake8
$(EZ) mysql-python
$(EZ) pylint
$(EZ) pygments
$(EZ) python-memcached
$(EZ) pypi2rpm
$(EZ) WebTest
$(EZ) PasteDeploy
$(EZ) wsgi_intercept
memcachedtest:
WEAVE_TESTFILE=memcached $(NOSE) $(TESTS)
memcachedldaptest:
WEAVE_TESTFILE=memcachedldap $(NOSE) $(TESTS)
mysqltest:
WEAVE_TESTFILE=mysql $(NOSE) $(TESTS)
ldaptest:
WEAVE_TESTFILE=ldap $(NOSE) $(TESTS)
test:
$(NOSE) $(TESTS)
coverage:
rm -rf html
- WEAVE_TESTFILE=mysql $(NOSE) $(COVEROPTS) $(TESTS)
- WEAVE_TESTFILE=ldap $(NOSE) $(COVEROPTS) $(TESTS)
- $(NOSE) $(COVEROPTS) $(TESTS)
hudson-coverage:
cd deps/server-core; hg pull; hg up -C
cd deps/server-reg; hg pull; hg up -C
cd deps/server-storage; hg pull; hg up -C
rm -f coverage.xml
- $(COVERAGE) run --source=syncreg,syncstorage,services $(NOSE) $(TESTS); $(COVERAGE) xml
lint:
rm -f pylint.txt
- $(PYLINT) -f parseable --rcfile=pylintrc $(PKGS) > pylint.txt
qa:
rm -f deps/server-reg/syncreg/templates/*.py
$(FLAKE8) $(PKGS)
oldtest:
$(PYTHON) tests/functional/run_server_tests.py --scheme=$(SCHEME) --server=$(SERVER)
bench_one:
cd tests/loadtest; ../../bin/fl-run-test simple SimpleTest.test_simple
bench:
cd tests/loadtest; ../../bin/fl-run-bench simple SimpleTest.test_simple
PKGBUILD for flake8:
#
pkgname=flake8
pkgver=0.7
pkgrel=1
arch=('i686' 'x86_64')
license=('GPL') // not sure
pkgdesc="Flake8"
url="http://pypi.python.org/pypi/flake8/"
makedepends=('mercurial')
depends=('python2')
_hgroot="https://bitbucket.org/tarek"
_hgrepo="flake8"
build() {
cd "$srcdir/$pkgname"
python2 ./setup.py install --prefix=/usr --root=${pkgdir}
}
Added a few comments for things I don't understand. I would appreciate any tips.
Thanks
Last edited by bb10 (2011-02-22 03:50:38)
Offline
Did your PKGBUILD work in the end?
I'm stil running a minimal server and would like to change to the full build. I know apache quite good so I could help with the integration there.
Please post you newest PKGBUILD on AUR if possible (even if it is not yet finished, so everybody can work on it).
Offline