From e28c7abf2073d86f5d28611345db385520075872 Mon Sep 17 00:00:00 2001 From: Jonas Juselius Date: Wed, 24 Aug 2022 10:45:54 +0200 Subject: [PATCH] move myvnc to separate module --- nixops/ekman/myvnc.nix | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 nixops/ekman/myvnc.nix diff --git a/nixops/ekman/myvnc.nix b/nixops/ekman/myvnc.nix new file mode 100644 index 0000000..51b8cc2 --- /dev/null +++ b/nixops/ekman/myvnc.nix @@ -0,0 +1,24 @@ +{ pkgs }: +pkgs.writeScriptBin "myvnc" '' + #!${pkgs.runtimeShell} + + uid=`id -u` + port=$((9000+$uid)) + shell=`getent passwd $(id -un) | awk -F : '{print $NF}'` + # vnc=${pkgs.tigervnc}/bin/vncserver + vnc=/nix/store/czp2b60dwk75widi8y287hr0xx1wgv2a-tigervnc-1.10.1/bin/vncserver + + case $1 in + -p|--port) shift; port=$1 ;; + kill|stop) + display=$($vnc -list | sed -n 's/^\(:[0-9]\+\).*/\1/p'| head -1) + $vnc -kill $display + exit 0 + ;; + esac + ps ax | sed '/grep/d' | grep "Xvnc.*-rfbport $port" >/dev/null 2>&1 + [ $? = 1 ] && $vnc -rfbport $port + echo "Xvnc server is running on port $port." + exec $shell -i + '' +