summaryrefslogtreecommitdiff
path: root/testing/jack/jack.install
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2011-10-14 23:14:43 +0000
committerroot <root@rshg054.dnsready.net>2011-10-14 23:14:43 +0000
commit4232b74445f80f4175c1485a53a02c79b37a63f1 (patch)
treeff7a0dde570bf886cc5006918a9ee339efecde1c /testing/jack/jack.install
parente426a2696568231fa5a863cb80f4db9088193732 (diff)
Fri Oct 14 23:14:43 UTC 2011
Diffstat (limited to 'testing/jack/jack.install')
-rw-r--r--testing/jack/jack.install57
1 files changed, 57 insertions, 0 deletions
diff --git a/testing/jack/jack.install b/testing/jack/jack.install
new file mode 100644
index 000000000..2d0db58e7
--- /dev/null
+++ b/testing/jack/jack.install
@@ -0,0 +1,57 @@
+_addgroup() {
+ # _addgroup $GROUPNAME $GID
+ [ ${#@} -ne 2 ] && return 1
+
+ echo -n " > Checking if '$1' group exists..."
+ if ! getent group $1 > /dev/null; then
+ echo "no"
+ echo " > Add '$1' group"
+ echo -n " >> checking if GID is in use..."
+ # no other package or user is supposed to use this gid
+ # delete the group and re-add it at the end without static gid
+ if getent group $2 > /dev/null; then
+ echo "yes"
+ firstgroup=$(getent group $2 | sed 's/:.*//')
+ firstusers=$(getent group $2 | sed 's/.*://')
+ echo " >> delete group '$firstgroup'"
+ groupdel $firstgroup
+ else
+ echo "no"
+ fi
+
+ echo " >> add our group with proper GID"
+ groupadd -g $2 $1
+
+ if [ -n "$firstgroup" ]; then
+ echo " >> restore group '$firstgroup' with dynamic GID"
+ groupadd $firstgroup
+ [ -n "$firstusers" ] && gpasswd -M $firstusers $firstgroup
+ fi
+ else
+ echo "yes (all good)"
+ fi
+}
+
+post_install() {
+ _addgroup realtime 112
+ echo
+ echo " * You must be part of the 'realtime' group to use RT scheduling"
+ echo " * You don't need an 'RT kernel' to use RT scheduling"
+ echo " * If you don't need RT start jack with '--no-realtime'"
+ echo " * If you don't record or sequence audio you don't need RT"
+}
+
+post_upgrade() {
+ _addgroup realtime 112
+ echo
+ echo " * You must be part of the 'realtime' group to use RT scheduling"
+ echo " * Configuring RT through limits.conf has been deprecated"
+ echo " * See /etc/security/limits.d/99-realtime.conf instead"
+}
+
+post_remove() {
+ [ "$(getent group realtime | cut -d ':' -f 3)" = '112' ] && \
+ groupdel realtime || true
+}
+
+# vim:set ts=2 sw=2 et: