38 lines
673 B
Bash
Executable File
38 lines
673 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# This is a script to set up the right permissions in /dev in absence of e?(u|s?m)dev.
|
|
# Run this _after_ miscfs.
|
|
|
|
service_type='oneshot'
|
|
|
|
# Config
|
|
cfg_devices=(
|
|
'/dev/snd;root:audio;770'
|
|
'/dev/dri;root:video;770'
|
|
'/dev/fuse;root:root;777'
|
|
)
|
|
|
|
cfg_links=(
|
|
'/proc/self/fd;/dev/fd'
|
|
)
|
|
|
|
start() {
|
|
for d in "${cfg_devices[@]}"; do
|
|
IFS=';' read device owner perms <<< "$d"
|
|
|
|
[[ -e "$device" ]] && {
|
|
chown -R "$owner" "$device"
|
|
chmod -R "$perms" "$device"
|
|
}
|
|
done
|
|
|
|
for l in "${cfg_links[@]}"; do
|
|
IFS=';' read dest link <<< "$l"
|
|
|
|
[[ -e "$link" ]] || {
|
|
[[ -e "$dest" ]] && {
|
|
ln -s "$dest" "$link"
|
|
}
|
|
}
|
|
done
|
|
}
|