From 1eb2dd350edbc69af8b2b3671283e1e5656aff8a Mon Sep 17 00:00:00 2001 From: Benson Chu Date: Sun, 12 Apr 2026 17:51:56 -0500 Subject: [PATCH] Use i3wm for the second vnc server --- common/exprs/make-vncserver.nix | 8 ++++---- hosts/Ythotha/configuration.nix | 7 +++++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/common/exprs/make-vncserver.nix b/common/exprs/make-vncserver.nix index 39bbae9..683cca6 100644 --- a/common/exprs/make-vncserver.nix +++ b/common/exprs/make-vncserver.nix @@ -1,4 +1,4 @@ -pkgs: user: port: +pkgs: user: display: port: xstartup: { enable = true; environment = { @@ -15,9 +15,9 @@ pkgs: user: port: WorkingDirectory = "/home/${user}"; Restart = "always"; - ExecStartPre = "${pkgs.bash}/bin/bash -c '${pkgs.tigervnc}/bin/vncserver -kill :1 > /dev/null 2>&1 || :'"; - ExecStart = "${pkgs.xorg.xinit}/bin/xinit /home/${user}/.vnc/xstartup -- ${pkgs.tigervnc}/bin/Xvnc :1 -rfbauth /home/${user}/.vnc/passwd -rfbport ${port}"; - ExecStop = "${pkgs.tigervnc}/bin/vncserver -kill :1"; + ExecStartPre = "${pkgs.bash}/bin/bash -c '${pkgs.tigervnc}/bin/vncserver -kill ${display} > /dev/null 2>&1 || :'"; + ExecStart = "${pkgs.xorg.xinit}/bin/xinit /home/${user}/.vnc/${xstartup} -- ${pkgs.tigervnc}/bin/Xvnc ${display} -rfbauth /home/${user}/.vnc/passwd -rfbport ${port}"; + ExecStop = "${pkgs.tigervnc}/bin/vncserver -kill ${display}"; }; diff --git a/hosts/Ythotha/configuration.nix b/hosts/Ythotha/configuration.nix index a3d3564..0f6972c 100644 --- a/hosts/Ythotha/configuration.nix +++ b/hosts/Ythotha/configuration.nix @@ -22,9 +22,12 @@ networking.hostName = "Ythotha"; # Define your hostname. + services.xserver.windowManager.i3.enable = true; + # Make a VNC server available - systemd.services.vncserver = (import ../../common/exprs/make-vncserver.nix pkgs "benson" "5901"); - networking.firewall.allowedTCPPorts = [ 5901 ]; + systemd.services.vncserver_emacs = (import ../../common/exprs/make-vncserver.nix pkgs "benson" ":1" "5901" "xstartup"); + systemd.services.vncserver_i3 = (import ../../common/exprs/make-vncserver.nix pkgs "benson" ":2" "5902" "i3"); + networking.firewall.allowedTCPPorts = [ 5901 5902 ]; # Define a user account. Don't forget to set a password with ‘passwd’. users.users.benson = {