diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index aab5e28..57bfbe2 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -27,8 +27,8 @@ jobs:
run: |
git clone https://github.com/virtualsquare/vde-2.git /tmp/vde-2
cd /tmp/vde-2
- # Aug 6, 2021
- git checkout 8c65ebc464b2f986d5f1f4e6ae829ef4480c9d5a
+ # Aug 31, 2021
+ git checkout 50964c3fb0776e82f8bd1ecdc527683966f3d52c
autoreconf -fis
./configure --prefix=/opt/vde
make
diff --git a/README.md b/README.md
index 6a88ccc..2ae0e5c 100644
--- a/README.md
+++ b/README.md
@@ -12,6 +12,8 @@ Requires macOS 10.15 or later.
### Step 1: Install vde-2 (`vde_switch`)
+The version of `vde-2` must be [commit 50964c3f](https://github.com/virtualsquare/vde-2/tree/50964c3f) (2021-08-31) or later.
+
The `--prefix` dir below does not necessarily need to be `/opt/vde`, however, it is highly recommended
to set the prefix to a directory that can be only written by the root.
diff --git a/etc_sudoers.d/vde_vmnet b/etc_sudoers.d/vde_vmnet
index 2a98a3a..37304d1 100644
--- a/etc_sudoers.d/vde_vmnet
+++ b/etc_sudoers.d/vde_vmnet
@@ -7,9 +7,9 @@
# - sudo /opt/vde/bin/vde_vmnet ...
# Entries for shared mode (192.168.105.0/24)
-%staff ALL=(daemon:staff) NOPASSWD:NOSETENV: /opt/vde/bin/vde_switch --sock=/var/run/vde.ctl --pidfile=/var/run/vde.pid --group=staff --dirmode=0770
+%staff ALL=(daemon:staff) NOPASSWD:NOSETENV: /opt/vde/bin/vde_switch --sock=/var/run/vde.ctl --pidfile=/var/run/vde.pid --group=staff --dirmode=0770 --nostdin
%staff ALL=(root:root) NOPASSWD:NOSETENV: /opt/vde/bin/vde_vmnet --vmnet-gateway=192.168.105.1 /var/run/vde.ctl
# Entries for bridged mode (en0)
-%staff ALL=(daemon:staff) NOPASSWD:NOSETENV: /opt/vde/bin/vde_switch --sock=/var/run/vde.bridged.en0.ctl --pidfile=/var/run/vde.bridged.en0.pid --group=staff --dirmode=0770
+%staff ALL=(daemon:staff) NOPASSWD:NOSETENV: /opt/vde/bin/vde_switch --sock=/var/run/vde.bridged.en0.ctl --pidfile=/var/run/vde.bridged.en0.pid --group=staff --dirmode=0770 --nostdin
%staff ALL=(root:root) NOPASSWD:NOSETENV: /opt/vde/bin/vde_vmnet --vmnet-mode=bridged --vmnet-interface=en0 /var/run/vde.bridged.en0.ctl
diff --git a/launchd/io.github.virtualsquare.vde-2.vde_switch.bridged.en0.plist b/launchd/io.github.virtualsquare.vde-2.vde_switch.bridged.en0.plist
index 5e20ca0..1e6fdc4 100644
--- a/launchd/io.github.virtualsquare.vde-2.vde_switch.bridged.en0.plist
+++ b/launchd/io.github.virtualsquare.vde-2.vde_switch.bridged.en0.plist
@@ -7,14 +7,20 @@
Label
io.github.virtualsquare.vde-2.vde_switch.bridged.en0.plist
Program
- /bin/sh
+ /usr/local/bin/vde_switch
ProgramArguments
-
-
- /bin/sh
- -euc
- /opt/vde/bin/vde_switch --daemon --sock=/var/run/vde.bridged.en0.ctl --pidfile=/var/run/vde.bridged.en0.pid --group=staff --dirmode=0770 && trap 'kill $(cat /var/run/vde.pid)' EXIT ; tail -f /dev/null
+ /opt/vde/bin/vde_switch
+ --sock
+ /var/run/vde.bridged.en0.ctl
+ --pidfile
+ /var/run/vde.bridged.en0.pid
+ --group
+ staff
+ --dirmode
+ 0770
+
+ --nostdin
StandardErrorPath
/var/run/vde.bridged.en0.stderr
diff --git a/launchd/io.github.virtualsquare.vde-2.vde_switch.plist b/launchd/io.github.virtualsquare.vde-2.vde_switch.plist
index cd96a8e..248e689 100644
--- a/launchd/io.github.virtualsquare.vde-2.vde_switch.plist
+++ b/launchd/io.github.virtualsquare.vde-2.vde_switch.plist
@@ -7,14 +7,20 @@
Label
io.github.virtualsquare.vde-2.vde_switch.plist
Program
- /bin/sh
+ /usr/local/bin/vde_switch
ProgramArguments
-
-
- /bin/sh
- -euc
- /opt/vde/bin/vde_switch --daemon --sock=/var/run/vde.ctl --pidfile=/var/run/vde.pid --group=staff --dirmode=0770 && trap 'kill $(cat /var/run/vde.pid)' EXIT ; tail -f /dev/null
+ /opt/vde/bin/vde_switch
+ --sock
+ /var/run/vde.ctl
+ --pidfile
+ /var/run/vde.pid
+ --group
+ staff
+ --dirmode
+ 0770
+
+ --nostdin
StandardErrorPath
/var/run/vde.stderr