summarylogtreecommitdiffstats
path: root/qwikaccess.install
blob: 06686ed586b25f3fa47a60bd62bfaf11a0df2b74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
msg() {
    ALL_OFF="\e[1;0m"
    BOLD="\e[1;1m"
    GREEN="${BOLD}\e[1;32m"
	local mesg=$1; shift
	printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}" "$@" >&2
}

add_users() {
    _l="/etc/login.defs"
    _p="/etc/passwd"
 
    ## get mini UID limit ##
    l=$(grep "^UID_MIN" $_l)
 
    ## get max UID limit ##
    l1=$(grep "^UID_MAX" $_l)
 
    ## use awk to print if UID >= $MIN and UID <= $MAX and shell is not /sbin/nologin   ##
    users=$(awk -F':' -v "min=${l##UID_MIN}" -v "max=${l1##UID_MAX}" '{ if ( $3 >= min && $3 <= max  && $7 != "/sbin/nologin" ) print $0 }' "$_p" | cut -d: -f1)
    for i in $users; do
        msg "Adding user '$i' to user-group 'input,video,plugdev'"
        usermod -a -G input $i
        usermod -a -G video $i
        usermod -a -G plugdev $i
    done
}

add_group() {
    getent group "input" &>/dev/null || groupadd -r input
    getent group "video" &>/dev/null || groupadd -r video
    getent group "plugdev" &>/dev/null || groupadd -r plugdev
    add_users
}

post_upgrade() {
  add_group
  echo ""
  msg "Please add new users to 'input,video,plugdev' group."
  echo ""
}

post_install() {
  add_group
  echo ""
  msg "Please add new users to 'input,video,plugdev' group."
  msg "Reboot your system, so changes will take effect.."
  echo ""
}

# vim: ts=2 sw=2 et: