Skip to content

Commit 6b0d61d

Browse files
committed
udev: Append plugdev group to users, to make Yubikey working
1 parent 25317b2 commit 6b0d61d

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
#!/usr/bin/env bash
2+
3+
set -euo pipefail
4+
5+
# Make Yubikey rules working by appending user to plugdev group
6+
7+
GROUP="$(getent group plugdev)"
8+
9+
if [[ -z "${GROUP}" ]]; then
10+
echo "Group plugdev does not exist, please assure that it's created correctly"
11+
exit 1
12+
fi
13+
14+
readarray -t AVAILABLE_USERS < <(getent passwd | awk -F: '/\/home/ {print $1}')
15+
16+
if [[ ${#AVAILABLE_USERS[@]} -eq 0 ]]; then
17+
echo "There are no users to append plugdev group to"
18+
exit 1
19+
fi
20+
21+
for user in "${AVAILABLE_USERS[@]}"; do
22+
if [[ ! "${GROUP}" =~ "${user}" ]]; then
23+
gpasswd -a "${user}" plugdev
24+
else
25+
echo "Group plugdev is already assigned to the user '${user}'"
26+
fi
27+
done
28+
29+
# Remove # symbol below when it's desired to remove plugdev group from the users
30+
31+
#for user in "${AVAILABLE_USERS[@]}"; do
32+
#if [[ "${GROUP}" =~ "${user}" ]]; then
33+
#echo "Removed user '${user}' from the plugdev group"
34+
#gpasswd -d "${user}" plugdev
35+
#else
36+
#echo "Group plugdev is already removed from the user '${user}'"
37+
#fi
38+
#done

0 commit comments

Comments
 (0)