#!/usr/bin/env make -f
PREFIX=/usr/local/share
LIBDIR=$(PREFIX)/mercurial-server
DOCDIR=$(PREFIX)/doc/mercurial-server
ETCDIR=/etc/mercurial-server
NEWUSER=hg
INSTALL=install
build: build/html/index.html pythonbuild
setup-adduser: installfiles adduser inituser
# WARNING: this is experimental
setup-useradd: installfiles useradd inituser
installetc:
$(INSTALL) -d $(ETCDIR)
$(INSTALL) -m 644 -t $(ETCDIR) \
src/init/conf/remote-hgrc src/init/conf/access.conf
$(INSTALL) -d $(ETCDIR)/keys/root
$(INSTALL) -d $(ETCDIR)/keys/user
installdoc: build/html/index.html
$(INSTALL) -d $(DOCDIR)
$(INSTALL) -m 644 -t $(DOCDIR) README build/html/index.html
build/html/index.html: doc/manual.docbook
xsltproc -o $@ /usr/share/xml/docbook/stylesheet/nwalsh/html/docbook.xsl $^
pythonbuild:
python setup.py build
pythoninstall:
python setup.py install \
--install-purelib=$(LIBDIR) \
--install-platlib=$(LIBDIR) \
--install-scripts=$(LIBDIR) \
--install-data=$(LIBDIR)
installfiles: installetc installdoc pythoninstall
adduser:
adduser --system --shell /bin/sh --group --disabled-password \
--home /var/lib/mercurial-server \
--gecos "Mercurial repositories" $(NEWUSER)
# WARNING: this is experimental
useradd:
useradd --system --shell /bin/sh \
--home /var/lib/mercurial-server --create-home \
--comment "Mercurial repositories" $(NEWUSER)
inituser:
su -l -c "$(LIBDIR)/init/hginit $(LIBDIR)" $(NEWUSER)