]> git.ipfire.org Git - thirdparty/lldpd.git/blame - osx/scripts/postinstall.in
osx: sync homebrew formula
[thirdparty/lldpd.git] / osx / scripts / postinstall.in
CommitLineData
b708297c
VB
1#!/bin/bash
2
3set -e
4
5user="@PRIVSEP_USER@"
6group="@PRIVSEP_GROUP@"
7
8dscl=/usr/bin/dscl
9$dscl . -read "/Users/${user}" &> /dev/null || {
10 # We need to find a free UID/GID
11 uid=200
12 while $($dscl . -list /Users uid | grep -q "\b${uid}$") || \
13 $($dscl . -list /Users gid | grep -q "\b${uid}$"); do
14 uid=$((${uid} + 1))
15 done
16 $dscl . -create /Groups/${group}
17 $dscl . -create /Groups/${group} PrimaryGroupID ${uid}
18 $dscl . -create /Groups/${group} Password "*"
19 $dscl . -create /Groups/${group} RealName "lldpd privilege separation group"
20 $dscl . -create /Users/${user}
2d52771d 21 $dscl . -create /Users/${user} UserShell /usr/bin/false
b708297c
VB
22 $dscl . -create /Users/${user} NFSHomeDirectory /var/empty
23 $dscl . -create /Users/${user} PrimaryGroupID ${uid}
24 $dscl . -create /Users/${user} UniqueID ${uid}
25 $dscl . -create /Users/${user} Password "*"
26 $dscl . -create /Users/${user} RealName "lldpd privilege separation user"
27}
28
29/bin/launchctl load "/Library/LaunchDaemons/im.bernat.lldpd.plist"