Change:
Project description <!-- Describe the project a little: --This is a electron-based app client for Pritunl server Metadata homepage URL: source URL: license: Non-Commercial platforms: linux
Pending review in

Discussion:
<del> { lib, buildGoModule, fetchFromGitHub, installShellFiles }: buildGoModule rec { pname = "pritunl-client"; </del> <ins> { lib , stdenv , fetchFromGitHub , runtimeShell , runCommand , makeWrapper , installShellFiles , buildGoModule , coreutils , which , gnugrep , gnused , openresolv , systemd , iproute2 , openvpn , electron }: let </ins> version = "1.3.3584.5"; src = fetchFromGitHub { owner = "pritunl"; repo = "pritunl-client-electron";

sha256 = "sha256-wWpP2u+oQSESjkRvAn5by7efvssYtKBYg2E+FZ/+tg0="; }; <del> modRoot = "cli"; vendorHash = "sha256-miwGLWpoaavg/xcw/0pNBYCdovBnvjP5kdaaGPcRuWk="; </del> <ins> cli = buildGoModule { pname = "pritunl-cli"; inherit version src; modRoot = "cli"; vendorHash = "sha256-miwGLWpoaavg/xcw/0pNBYCdovBnvjP5kdaaGPcRuWk="; postInstall = '' mv $out/bin/cli $out/bin/pritunl-client ''; }; service = buildGoModule { pname = "pritunl-client-service"; inherit version src; modRoot = "service"; vendorHash = "sha256-9Fv8m3eWlxv4WWDSdI0VMavgy+0OSIVZ98dkDBwm4Gc="; nativeBuildInputs = [ makeWrapper ]; postPatch = '' sed -Ei service/profile/scripts.go  -e 's|#!s*(/usr)?/bin/(env )?bashb|#! ${runtimeShell}|g' '' + lib.optionalString stdenv.isLinux '' sed -Ei service/profile/scripts.go  -e 's|(/usr)?/s?bin/busctlb|busctl|g'  -e 's|(/usr)?/s?bin/resolvectlb|resolvectl|g'  -e 's|(/usr)?/s?bin/ipb|ip|g' ''; postInstall = '' mv $out/bin/service $out/bin/pritunl-client-service '' + lib.optionalString stdenv.isLinux '' mkdir -p $out/lib/systemd/system/ cp $src/resources_linux/pritunl-client.service $out/lib/systemd/system/ substituteInPlace $out/lib/systemd/system/pritunl-client.service  --replace "/usr" "$out" ''; postFixup = let hookScriptsDeps = [ coreutils which gnused gnugrep ] ++ lib.optionals stdenv.isLinux [ openresolv systemd iproute2 ]; openvpn-wrapped = runCommand "openvpn-wrapped" { nativeBuildInputs = [ makeWrapper ]; } '' mkdir -p $out/bin makeWrapper ${openvpn}/bin/openvpn $out/bin/openvpn  --prefix PATH : ${lib.makeBinPath hookScriptsDeps}  --add-flags "--setenv PATH $PATH" ''; in lib.optionalString stdenv.isLinux '' wrapProgram $out/bin/pritunl-client-service  --prefix PATH : "${lib.makeBinPath ([ openvpn-wrapped ])}" ''; }; in stdenv.mkDerivation { pname = "pritunl-client"; inherit version src; dontBuild = true; dontConfigure = true; </ins> nativeBuildInputs = [ <ins> makeWrapper </ins> installShellFiles ]; <del> postInstall = '' mv $out/bin/cli $out/bin/pritunl-client </del> <ins> installPhase = '' runHook preInstall mkdir -p $out/bin/ ln -s ${cli}/bin/pritunl-client $out/bin/ ln -s ${service}/bin/pritunl-client-service $out/bin/ mkdir -p $out/lib/ cp -r client $out/lib/pritunl_client_electron makeWrapper ${electron}/bin/electron $out/bin/pritunl-client-electron  --add-flags $out/lib/pritunl_client_electron '' + lib.optionalString stdenv.isLinux '' mkdir -p $out/lib/systemd/system/ ln -s ${service}/lib/systemd/system/pritunl-client.service $out/lib/systemd/system/ mkdir -p $out/share/icons/ cp -r resources_linux/icons $out/share/icons/hicolor mkdir -p $out/share/applications/ cp resources_linux/pritunl-client-electron.desktop $out/share/applications/ substituteInPlace $out/share/applications/pritunl-client-electron.desktop  --replace "/usr/lib/pritunl_client_electron/Pritunl" "$out/bin/pritunl-client-electron" '' + '' # install shell completions for pritunl-client </ins> installShellCompletion --cmd pritunl-client  --bash <($out/bin/pritunl-client completion bash)  --fish <($out/bin/pritunl-client completion fish)  --zsh <($out/bin/pritunl-client completion zsh) <ins> runHook postInstall </ins> ''; meta = with lib; { <del> description = "Pritunl OpenVPN client CLI"; homepage = "https://github.com/pritunl/pritunl-client-electron/tree/master/cli"; </del> <ins> description = "Pritunl OpenVPN client"; homepage = "https://client.pritunl.com/"; </ins> license = licenses.unfree; <del> maintainers = with maintainers; [ minizilla ]; </del> <ins> maintainers = with maintainers; [ minizilla andrevmatos ]; </ins> }; }