summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJake2018-05-24 02:22:15 +0200
committerJake2018-05-24 02:22:15 +0200
commit97493b6c381febf60872db2167a430f09adcdb64 (patch)
tree0ecd05ce5ff1e67e3d1b4bc21c43509663c88b5d
parent77d2f17ae76c7824c24976a34b37e15bbd040e88 (diff)
downloadaur-97493b6c381febf60872db2167a430f09adcdb64.tar.gz
Use systemd sysusers
and improve home/settings dir creation
-rw-r--r--.SRCINFO4
-rw-r--r--PKGBUILD18
-rwxr-xr-xoctoprint.install10
-rw-r--r--octoprint.sysusers4
4 files changed, 22 insertions, 14 deletions
diff --git a/.SRCINFO b/.SRCINFO
index a856eda5aab6..cb17dd31d3bd 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = octoprint-venv
pkgdesc = The snappy snappy web interface for your 3D printer! (virtualenv installation type)
pkgver = 1.3.8
- pkgrel = 1
+ pkgrel = 2
url = http://octoprint.org/
install = octoprint.install
arch = any
@@ -13,8 +13,10 @@ pkgbase = octoprint-venv
conflicts = octoprint
source = https://github.com/foosel/OctoPrint/archive/1.3.8.tar.gz
source = octoprint.service
+ source = octoprint.sysusers
sha256sums = ca1bc5352ef20778722a6b2aedef4c8dbe28d0d82c2526f84f3db07245a01aad
sha256sums = 7f7aa02075901d7501a03bda082f050ba5862e58034f0216b5a76d2a25135d3a
+ sha256sums = 79d0f9fe053181eaa77f472b5235463ce217475d47fada9869f42d313b4651a9
pkgname = octoprint-venv
diff --git a/PKGBUILD b/PKGBUILD
index 5b861113144f..891da2379696 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,9 +1,9 @@
-# Maintainer: Jake <ja.ke@posteo.de>
+# Maintainer: Jake <aur@ja-ke.tech>
# This uses the install and service file from octoprint[AUR], thanks to all Maintainers/Contributors!
pkgname=octoprint-venv
pkgver=1.3.8
-pkgrel=1
+pkgrel=2
pkgdesc="The snappy snappy web interface for your 3D printer! (virtualenv installation type)"
arch=('any')
url="http://octoprint.org/"
@@ -15,9 +15,11 @@ provides=('octoprint')
conflicts=('octoprint')
install="octoprint.install"
source=("https://github.com/foosel/OctoPrint/archive/${pkgver}.tar.gz"
- 'octoprint.service')
+ 'octoprint.service'
+ 'octoprint.sysusers')
sha256sums=('ca1bc5352ef20778722a6b2aedef4c8dbe28d0d82c2526f84f3db07245a01aad'
- '7f7aa02075901d7501a03bda082f050ba5862e58034f0216b5a76d2a25135d3a')
+ '7f7aa02075901d7501a03bda082f050ba5862e58034f0216b5a76d2a25135d3a'
+ '79d0f9fe053181eaa77f472b5235463ce217475d47fada9869f42d313b4651a9')
package() {
@@ -25,9 +27,15 @@ package() {
virtualenv2 ${pkgdir}/opt/$pkgname
${pkgdir}/opt/$pkgname/bin/python2 setup.py install --optimize=1
- sed -i "s|${pkgdir}/opt/$pkgname|/opt/$pkgname|g" ${pkgdir}/opt/$pkgname/bin/*
+ sed -i "s|${pkgdir}/opt/$pkgname|/opt/$pkgname|g" ${pkgdir}/opt/$pkgname/bin/* # relocate without breaking plugin system
install -D -m644 ${srcdir}/octoprint.service ${pkgdir}/usr/lib/systemd/system/octoprint.service
+ install -Dm644 ${srcdir}/octoprint.sysusers $pkgdir/usr/lib/sysusers.d/octoprint.conf
+
install -d ${pkgdir}/usr/bin/
ln -s /opt/$pkgname/bin/octoprint ${pkgdir}/usr/bin/octoprint
+
+ install -d ${pkgdir}/var/lib/octoprint ${pkgdir}/etc/
+ ln -s /var/lib/octoprint/.octoprint/ ${pkgdir}/etc/octoprint
+
}
diff --git a/octoprint.install b/octoprint.install
index 216d54b5a10e..c87fe7524177 100755
--- a/octoprint.install
+++ b/octoprint.install
@@ -1,11 +1,5 @@
post_install() {
- local HOMEDIR=/var/lib/octoprint
- getent group octoprint > /dev/null || groupadd octoprint
- getent passwd octoprint > /dev/null || useradd -d $HOMEDIR -g octoprint -s /usr/bin/nologin octoprint
- usermod -a -G octoprint,network,uucp,tty octoprint
- mkdir -p $HOMEDIR
- chmod 700 $HOMEDIR
- chown -R octoprint:octoprint $HOMEDIR
+ chown -R octoprint:octoprint /var/lib/octoprint
chown -R octoprint:octoprint /opt/octoprint-venv
echo "To start octoprint, run: systemctl start octoprint"
@@ -19,5 +13,5 @@ post_upgrade() {
post_remove() {
echo "To stop octoprint, run: systemctl stop octoprint"
echo "To disable octoprint at boot, run: systemctl disable octoprint"
- echo "You may want to remove octoprint user and group"
+ echo "You may want to remove the octoprint user directory (/var/lib/octoprint)"
}
diff --git a/octoprint.sysusers b/octoprint.sysusers
new file mode 100644
index 000000000000..ef86b203f630
--- /dev/null
+++ b/octoprint.sysusers
@@ -0,0 +1,4 @@
+u octoprint - "OctoPrint 3D Print Server User" /var/lib/octoprint
+m octoprint uucp
+m octoprint network
+m octoprint tty