summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorEspen Fossen2017-11-22 19:40:24 +0100
committerEspen Fossen2017-11-22 19:40:24 +0100
commite4acbecb16c075e792b67eb11eacb7434ed49860 (patch)
tree7fc3233b1d58edd68b44b127d2679d104a3c1175
downloadaur-e4acbecb16c075e792b67eb11eacb7434ed49860.tar.gz
Initial commit.
-rw-r--r--.SRCINFO20
-rw-r--r--PKGBUILD27
-rw-r--r--config.json9
-rw-r--r--mstream.install20
-rw-r--r--mstream.service13
5 files changed, 89 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..9ce201d491b4
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,20 @@
+pkgbase = mstream
+ pkgdesc = Music player server with a web-based interface
+ pkgver = 3.2.1
+ pkgrel = 1
+ url = http://mstream.io
+ install = mstream.install
+ arch = any
+ license = GPL3
+ makedepends = npm
+ depends = nodejs
+ noextract = mstream-3.2.1.tgz
+ source = https://registry.npmjs.org/mstream/-/mstream-3.2.1.tgz
+ source = mstream.service
+ source = config.json
+ md5sums = 5ff5a5816f5196b28ba429e3e84ee991
+ md5sums = 0b309cbd40d88a64f2c9159833df53bf
+ md5sums = 483d0a108cc082df206437ba62b5ddc9
+
+pkgname = mstream
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..71e9c080a911
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,27 @@
+# Maintainer: Espen Fossen <espfos@junta.no>
+
+pkgname=mstream
+pkgver=3.2.1
+pkgrel=1
+pkgdesc='Music player server with a web-based interface'
+arch=('any')
+url="http://mstream.io"
+license=('GPL3')
+depends=('nodejs')
+makedepends=('npm')
+install=mstream.install
+source=(https://registry.npmjs.org/$pkgname/-/$pkgname-$pkgver.tgz
+ mstream.service
+ config.json)
+noextract=($pkgname-$pkgver.tgz)
+
+package() {
+ mkdir -p "${pkgdir}/var/lib/${pkgname}/music"
+ npm install -g --user root --prefix "$pkgdir"/usr "$srcdir"/$pkgname-$pkgver.tgz
+ install -d -g 49 -o 49 "${pkgdir}/var/lib/${pkgname}"
+ install -Dm644 mstream.service "$pkgdir"/usr/lib/systemd/system/mstream.service
+ install -Dm644 -g 49 -o 49 "${srcdir}/config.json" "${pkgdir}/var/lib/${pkgname}/config.json"
+}
+md5sums=('5ff5a5816f5196b28ba429e3e84ee991'
+ '0b309cbd40d88a64f2c9159833df53bf'
+ '483d0a108cc082df206437ba62b5ddc9')
diff --git a/config.json b/config.json
new file mode 100644
index 000000000000..d33997f99e53
--- /dev/null
+++ b/config.json
@@ -0,0 +1,9 @@
+{
+ "port": 3030,
+ "database_plugin":{
+ "dbPath":"/var/lib/mstream/mstream.db"
+ },
+ "folders": {
+ "media": "/var/lib/mstream/music"
+ }
+}
diff --git a/mstream.install b/mstream.install
new file mode 100644
index 000000000000..4b7a7d54a786
--- /dev/null
+++ b/mstream.install
@@ -0,0 +1,20 @@
+post_install() {
+ getent group mstream &>/dev/null || groupadd -r -g 49 mstream >/dev/null
+ getent passwd mstream &>/dev/null || useradd -r -u 49 -g mstream -d /var/lib/mstream -s /bin/false -G audio mstream >/dev/null
+ usr/bin/systemd-tmpfiles --create mstream.conf || true
+ # fixup permissions
+ chmod 755 /usr/lib/node_modules \
+ /usr/lib/node_modules/mstream/node_modules \
+ /usr/lib/node_modules/mstream/node_modules/.bin
+}
+
+post_remove() {
+ getent passwd mstream &>/dev/null && userdel mstream >/dev/null
+ getent group mstream &>/dev/null && groupdel mstream >/dev/null
+ true
+}
+
+post_upgrade() {
+ post_install
+}
+
diff --git a/mstream.service b/mstream.service
new file mode 100644
index 000000000000..bc420eda6423
--- /dev/null
+++ b/mstream.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=mstream
+After=network.target
+
+[Service]
+User=mstream
+Type=simple
+WorkingDirectory=/var/lib/mstream
+ExecStart=/usr/bin/mstream /var/lib/mstream/config.json -m /var/lib/mstream/music
+
+[Install]
+WantedBy=multi-user.target
+