--- /dev/null
+home=/home/"$sv"
+
+while ! sudo -u postgres psql </dev/null
+do sleep 1; done
+"$tool"/local/postgresql-user-create "$sv"
+"$tool"/local/postgresql-database-create "$sv"
+sudo -u postgres psql -AqtX "$sv" <<-EOF
+ \set ON_ERROR_STOP on
+ GRANT USAGE ON SCHEMA pg_catalog TO $sv;
+ GRANT SELECT ON TABLE pg_catalog.pg_attribute TO $sv;
+ GRANT SELECT ON TABLE pg_catalog.pg_class TO $sv;
+ GRANT SELECT ON TABLE pg_catalog.pg_constraint TO $sv;
+ GRANT SELECT ON TABLE pg_catalog.pg_indexes TO $sv;
+ GRANT SELECT ON TABLE pg_catalog.pg_proc TO $sv;
+ GRANT SELECT ON TABLE pg_catalog.pg_type TO $sv;
+ EOF
+
+"$tool"/local/adduser "$sv" \
+ --disabled-login \
+ --disabled-password \
+ --group \
+ --home "$home" \
+ --shell /bin/false \
+ --system
+"$tool"/local/adduser "$sv"-addon \
+ --disabled-login \
+ --disabled-password \
+ --group \
+ --home "$home"/addon.d \
+ --shell /bin/false \
+ --system
+
+sudo install -d -m 1777 -o root -g root \
+ /etc/openerp
+sudo install -d -m 3771 -o "$sv" -g "$sv" \
+ "$home"
+sudo -u "$sv" wget -c http://nightly.openerp.com/6.0/6.0/openerp-server-6.0.4-20130520-r3663.tar.gz -O /tmp/openerp-server.tar.gz
+sudo -u "$sv" tar -xf /tmp/openerp-server.tar.gz -C "$home"
+sudo install -d -m 2770 -o "$sv" -g "$sv"-addon \
+ "$home"/addon.d
+sudo install -d -m 750 -o "$sv" -g "$sv" \
+ "$home"/etc \
+ /etc/openerp/"${sv#openerp_}"
+sudo ln -fns \
+ /etc/openerp/"${sv#openerp_}" \
+ "$home"/etc/openerp
+
+sudo adduser git "$sv"-addon
+sudo adduser "$sv" "$sv"-addon
+sudo adduser "$sv" postgres-data
+
+for addon in \
+ lhc
+ do
+ sudo install -d -m 2771 -o "$sv" -g "$sv"-addon \
+ "$home"/addon.d/"$addon"
+ sudo ln -s "$home"/addon.d/lhc_custom_oe "$home"/addon.d/"$addon"
+ sudo -u git git \
+ --git-dir ~git-data/burette/"$addon".git \
+ --work-tree="$home"/addon.d/"$addon" \
+ checkout -f master
+ sudo -u git git \
+ --git-dir ~git-data/burette/"$addon".git \
+ --work-tree="$home"/addon.d/"$addon" \
+ clean -d -f -f -x
+ sudo chmod a-x \
+ /home/git/pub/burette/"$addon".git/hooks/post-update.sample
+ sudo install -m 550 -o git -g git /dev/stdin \
+ /home/git/pub/burette/"$addon".git/hooks/post-update <<-EOF
+ #!/bin/sh -efux
+ find . -type f -perm /+x -name 'post-update.*' |
+ while IFS= read -r hook
+ do "\$hook" "\$@"
+ done
+ EOF
+ sudo install -m 550 -o git -g git /dev/stdin \
+ /home/git/pub/burette/"$addon".git/hooks/post-update."$sv" <<-EOF
+ #!/bin/sh -efux
+ case \$1 in
+ (refs/heads/master)
+ git \\
+ --git-dir ~git-data/burette/"$addon".git \\
+ --work-tree="$home"/addon.d/"$addon" \\
+ checkout -f master
+ git \\
+ --git-dir ~git-data/burette/"$addon".git \\
+ --work-tree="$home"/addon.d/"$addon" \\
+ clean -d -f -f -x
+ #sv restart "$sv"
+ ;;
+ esac
+ EOF
+ done
+
+exit 42
--- /dev/null
+#!/bin/sh -eux
+exec 2>&1
+sv=${PWD#/etc/sv/}
+home=/home/"$sv"
+cd /
+export LOGNAME="$sv"
+ # NOTE: openerp utilise /tmp/oe-sessions-$LOGNAME
+
+test -e /etc/openerp/"${sv#openerp_}"/server.conf ||
+/usr/bin/chpst \
+ -u "$sv":"$sv":"$sv"-addon:postgres-data \
+ "$home"/openerp-server-6.0.4/bin/openerp-server.py \
+ --addons-path="$home"/addon.d \
+ --config /etc/openerp/"${sv#openerp_}"/server.conf \
+ --database="$sv" \
+ --db_host=/run/postgresql \
+ --db_user="$sv" \
+ --debug \
+ --init=lhc_custom_oe \
+ --load-language=fr_FR \
+ --no-database-list \
+ --no-xmlrpcs \
+ --osv-memory-age-limit=0.1 \
+ --save \
+ --stop-after-init \
+ --timezone="$(cat /etc/timezone)" \
+ --without-demo=base \
+ --xmlrpc-interface=127.0.0.1 \
+ --xmlrpc-port=8089 \
+ # NOTE: si --workers > 0
+ # --limit-memory-hard=$((300 * 1024 * 1024))
+ # --limit-memory-soft=$((150 * 1024 * 1024))
+
+exec /usr/bin/chpst \
+ -u "$sv":"$sv":"$sv"-addon:postgres-data \
+ "$home"/openerp-server-6.0.4/bin/openerp-server.py \
+ --config "$home"/etc/openerp/server.conf \
+ --load-language=fr_FR \
+ #--database="$sv"