From 04ba75e300b1bc7d4535b526b5379515d0903046 Mon Sep 17 00:00:00 2001 From: Emiliano Vavassori Date: Sun, 4 Oct 2015 04:24:34 +0200 Subject: [PATCH] Adding pulseaudio fix script. --- roles/preseed/files/pulseaudio-perms.sh | 27 +++++++++++++++++++++++++ roles/preseed/tasks/preseed.yml | 6 ++++++ 2 files changed, 33 insertions(+) create mode 100755 roles/preseed/files/pulseaudio-perms.sh diff --git a/roles/preseed/files/pulseaudio-perms.sh b/roles/preseed/files/pulseaudio-perms.sh new file mode 100755 index 0000000..9025660 --- /dev/null +++ b/roles/preseed/files/pulseaudio-perms.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +domaingroup="domain users" +localgroups="pulse pulse-access" + +baseusers="bglug" +domainusers="$(getent group "${domaingroup}" | awk 'BEGIN { FS = ":" } ; { print $4 }' | sed -e 's/,/ /g')" + +users="${baseusers} ${domainusers}" + +for group in ${localgroups}; do + actualusers=$(getent group '${group}' | awk 'BEGIN { FS = ":" }; { print $4 }' | sed -e 's/,/ /g') + + # Removing users not in the group + for user in ${actualusers}; do + whuser=${user//[[:space:]]/} + echo "removing ${user}" + [[ "${users}" =~ "${whuser}" ]] || gpasswd -d "${whuser}" "${group}" + unset whuser + done + + # Adding users to group + for user in ${users}; do + whuser=${user//[[:space:]]/} + [[ "${actualusers}" =~ "${whuser}" ]] || gpasswd -a "${whuser}" "${group}" + done +done diff --git a/roles/preseed/tasks/preseed.yml b/roles/preseed/tasks/preseed.yml index 9a213d7..32d107a 100644 --- a/roles/preseed/tasks/preseed.yml +++ b/roles/preseed/tasks/preseed.yml @@ -51,3 +51,9 @@ - postseed-client.sh - postseed-docenti.sh sudo: yes + +- name: Copia script per pulseaudio + copy: + src: preseed/pulseaudio-perms.sh + dest: /var/lib/nethserver/ibay/ks/preseed/pulseaudio-perms.sh + sudo: yes