Makefile build for freed
[gpl/argeo-freed.git] / lib / systemd / user / argeo.service
diff --git a/lib/systemd/user/argeo.service b/lib/systemd/user/argeo.service
new file mode 100644 (file)
index 0000000..f6783f0
--- /dev/null
@@ -0,0 +1,31 @@
+[Unit]
+Description=Argeo user runtime
+
+[Service]
+Type=simple
+StateDirectory=argeo/slc
+LogsDirectory=argeo/slc
+ConfigurationDirectory=argeo/slc
+CacheDirectory=argeo/slc
+EnvironmentFile=/usr/local/etc/default/argeo
+WorkingDirectory=/usr/local/
+
+# Optional files
+ExecStartPre=/usr/bin/mkdir -p ${CONFIGURATION_DIRECTORY}
+ExecStartPre=/usr/bin/touch ${CONFIGURATION_DIRECTORY}/jvm.args
+
+ExecStart=java \
+-Djava.library.path=/usr/local/lib/a2/org.argeo.slc:/usr/local/lib/a2/org.argeo.tp.sys:/usr/local/lib/a2/swt/rcp/org.argeo.tp.swt \
+-Dosgi.framework.useSystemProperties=false \
+@/usr/local/etc/argeo/jvm.args \
+@/usr/local/etc/argeo/user/jvm.args \
+@${CONFIGURATION_DIRECTORY}/jvm.args \
+-cp "/usr/local/share/a2/osgi/equinox/org.argeo.tp.osgi/org.eclipse.osgi.3.18.jar:/usr/local/share/a2/org.argeo.cms/org.argeo.init.2.3.jar:/usr/local/lib/a2/org.argeo.slc/*:/usr/local/lib/a2/org.argeo.tp.sys/*:/usr/local/lib/a2/swt/rcp/org.argeo.tp.swt/*" \
+org.argeo.init.RuntimeManagerMain \
+etc/argeo/user/slc
+
+# Exit codes of the JVM when SIGTERM or SIGINT have been caught:
+SuccessExitStatus=143 130
+
+[Install]
+WantedBy=multi-user.target