diff options
-rw-r--r-- | .SRCINFO | 19 | ||||
-rw-r--r-- | PKGBUILD | 29 | ||||
-rw-r--r-- | sheepit-client.conf | 39 | ||||
-rw-r--r-- | sheepit-client.service | 22 | ||||
-rw-r--r-- | sheepit-client.sysusers | 1 | ||||
-rw-r--r-- | sheepit-client.tmpfiles | 1 |
6 files changed, 111 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..9dac414dee96 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,19 @@ +pkgbase = sheepit-client-systemd + pkgdesc = Systemd service for SheepIt client + pkgver = 0.0.0 + pkgrel = 1 + arch = any + license = GPL2 + depends = sheepit-client-bin + conflicts = sheepit-client-git + backup = etc/conf.d/sheepit-client + source = sheepit-client.sysusers + source = sheepit-client.tmpfiles + source = sheepit-client.conf + source = sheepit-client.service + sha256sums = 9f79eb4c182e4c2b9da1a7a26724e6122e25b958615b3001c2708fb0243f7f11 + sha256sums = ba7e49757345d04ae42a8a86fcee3ff53eb9fc86ef8a5b3db8895b5e4b42440a + sha256sums = 543e6e050fcadae27e646a4f6cd654b893035c47f89f14cf04ed0f6c25bd0d61 + sha256sums = 42c9f6802ddeea2a2b9c8438e8c395689f4634c664fb04d7be7ecf30a9022f6c + +pkgname = sheepit-client-systemd diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..e401bd1aed29 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,29 @@ +# Maintainer: Xyem <xyem@electricjungle.org> +pkgname=sheepit-client-systemd +pkgver=0.0.0 +pkgrel=1 +pkgdesc="Systemd service for SheepIt client" +arch=('any') +license=('GPL2') +depends=('sheepit-client-bin') +conflicts=('sheepit-client-git') +backup=('etc/conf.d/sheepit-client') +source=( + 'sheepit-client.sysusers' + 'sheepit-client.tmpfiles' + 'sheepit-client.conf' + 'sheepit-client.service' +) +sha256sums=( + '9f79eb4c182e4c2b9da1a7a26724e6122e25b958615b3001c2708fb0243f7f11' + 'ba7e49757345d04ae42a8a86fcee3ff53eb9fc86ef8a5b3db8895b5e4b42440a' + '543e6e050fcadae27e646a4f6cd654b893035c47f89f14cf04ed0f6c25bd0d61' + '42c9f6802ddeea2a2b9c8438e8c395689f4634c664fb04d7be7ecf30a9022f6c' +) + +package() { + install -Dm644 "${pkgname%-systemd}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${pkgname%-systemd}.conf"; + install -Dm644 "${pkgname%-systemd}.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${pkgname%-systemd}.conf" + install -Dm644 "${pkgname%-systemd}.conf" "${pkgdir}/etc/conf.d/${pkgname%-systemd}" + install -Dm644 "${pkgname%-systemd}.service" "${pkgdir}/usr/lib/systemd/system/${pkgname%-systemd}.service" +} diff --git a/sheepit-client.conf b/sheepit-client.conf new file mode 100644 index 000000000000..b639792d1b61 --- /dev/null +++ b/sheepit-client.conf @@ -0,0 +1,39 @@ +# Configuration for the SheepIt client + +# Username and password (or render key) +login= +password= + +# Define which hardware can be used for rendering, defaults to 'CPU'. +# Can be set to one of the following: +# CPU CPU only +# GPU GPU only +# CPU_GPU CPU or GPU +#compute-method=CPU + +# Number of cores/threads used by the renderer, defaults to maximum available. +#cpu-cores=-1 + +# Maximum memory allowed to be used by renderer in MB, defaults to maximum +# available. +#ram=2000M + +# Device name of the GPU. +# See `sheepit-client --show-gpu` for detected devices. +#compute-gpu=CUDA_0 + +# Set render process priority, defaults to 19 (lowest). +#priority=19 + +# Maximum time to allow for each frame to be rendered in minutes. +#rendertime=20 + +# URL to use as a proxy. +#proxy=http://login:password@host:port + +############################################################################## +# The following settings are required for the function of the systemd service. +############################################################################## + +cache-dir=/var/cache/sheepit-client/ +ui=text diff --git a/sheepit-client.service b/sheepit-client.service new file mode 100644 index 000000000000..e934e04fc365 --- /dev/null +++ b/sheepit-client.service @@ -0,0 +1,22 @@ +[Unit] +Description=Service for SheepIt client +After=network.target + +[Service] +User=sheepit-client +ExecStart=/usr/bin/sheepit-client -config /etc/conf.d/sheepit-client +CacheDirectoryMode=700 +CacheDirectory=sheepit-client/ +NoNewPrivileges=true +PrivateDevices=true +ProtectControlGroups=true +ProtectHome=true +ProtectKernelTunables=true +ProtectSystem=strict +Restart=on-failure +RestartSec=60 +RestrictNamespaces=true +PrivateTmp=true + +[Install] +WantedBy=multi-user.target diff --git a/sheepit-client.sysusers b/sheepit-client.sysusers new file mode 100644 index 000000000000..f1d0599a1d2b --- /dev/null +++ b/sheepit-client.sysusers @@ -0,0 +1 @@ +u sheepit-client - - diff --git a/sheepit-client.tmpfiles b/sheepit-client.tmpfiles new file mode 100644 index 000000000000..ef0055cdbdc8 --- /dev/null +++ b/sheepit-client.tmpfiles @@ -0,0 +1 @@ +d /var/cache/sheepit-client 0700 sheepit-client sheepit-client |