This is an automated email from the git hooks/post-receive script. x2go pushed a change to branch master in repository x2gohtmlclient. from 3662281 Improve JSON parsing. new 81f273e Rename folders to make project resemble a bit more to a Javascript code project. new 44ec403 src/x2godomcontroller.js: Use asset_path variable for all loaded / referenced asset files. new a8bd0bb Use absolute /assets/.../ paths in all references. new daa86a2 x2gokdriveclient.html: Expect this file in folder '/x2go/' of the VirtualHost. new bb29bcd src/x2gokdrivehtmlclient.js: Don't confuse syntax highlighters by putting unterminated quotes into comments. new 361c5ca minify.sh: Adjust, so that a minified and a non-minified .js file results from this script. new fe08529 dist/.placeholder: Keep empty dist/ directory in Git. new 15c77be package.json: Add sample package.json file. new 1762f32 conf/nginx/: Add Nginx configuration files (http-no-SSL support only for now). new 634eb4c src/x2gohtmlclient.js: Switch to ws:// (unencrypted) for a start, SSL support for the complete package will be re-introduced soon. new f6fa5dd index.html: White-space only cleanup (drop TABs). new 115a7e3 debian/: Initial packaging draft. The 12 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Summary of changes: .../nginx/sites-available/x2gohtmlclient-demo.conf | 22 +++ conf/nginx/snippets/libjs-x2goclient.conf | 29 ++++ conf/nginx/snippets/x2gohtmlclient-css.conf | 9 ++ conf/nginx/snippets/x2gohtmlclient-rpc.conf | 6 + conf/nginx/snippets/x2gohtmlclient-wswrapper.conf | 18 +++ {CSS => css}/x2gostyle.css | 0 debian/changelog | 6 + debian/compat | 1 + debian/control | 64 ++++++++ debian/copyright | 32 ++++ debian/libjs-x2goclient.dirs | 1 + debian/libjs-x2goclient.install | 8 + debian/rules | 22 +++ debian/source/format | 1 + debian/x2gohtmlclient.install | 8 + dist/.placeholder | 0 {src => img/backgrounds/svg}/x2gobg.svg | 0 {src => img/buttons/png}/attach.png | Bin {src => img/buttons/png}/clip_close.png | Bin {src => img/buttons/png}/clip_copy_close.png | Bin {src => img/buttons/png}/clip_from.png | Bin {src => img/buttons/png}/clip_to.png | Bin {src => img/buttons/png}/detach.png | Bin {src => img/buttons/png}/stop.png | Bin {src => img/buttons/png}/suspend.png | Bin src/morph_attach.svg => img/buttons/svg/attach.svg | 0 .../buttons/svg/clip_close.svg | 0 .../buttons/svg/clip_copy_close.svg | 0 .../buttons/svg/copy_from.svg | 0 .../buttons/svg/copy_to.svg | 0 src/morph_detach.svg => img/buttons/svg/detach.svg | 0 src/morph_stop.svg => img/buttons/svg/stop.svg | 0 .../buttons/svg/suspend.svg | 0 index.html | 172 ++++++++++----------- minify.sh | 3 +- package.json | 25 +++ src/x2godomcontroller.js | 8 +- src/x2gohtmlclient.js | 2 +- src/x2gokdrivehtmlclient.js | 4 +- x2gokdriveclient.html | 14 +- 40 files changed, 354 insertions(+), 101 deletions(-) create mode 100644 conf/nginx/sites-available/x2gohtmlclient-demo.conf create mode 100644 conf/nginx/snippets/libjs-x2goclient.conf create mode 100644 conf/nginx/snippets/x2gohtmlclient-css.conf create mode 100644 conf/nginx/snippets/x2gohtmlclient-rpc.conf create mode 100644 conf/nginx/snippets/x2gohtmlclient-wswrapper.conf rename {CSS => css}/x2gostyle.css (100%) create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/copyright create mode 100644 debian/libjs-x2goclient.dirs create mode 100644 debian/libjs-x2goclient.install create mode 100755 debian/rules create mode 100644 debian/source/format create mode 100644 debian/x2gohtmlclient.install create mode 100644 dist/.placeholder rename {src => img/backgrounds/svg}/x2gobg.svg (100%) rename {src => img/buttons/png}/attach.png (100%) rename {src => img/buttons/png}/clip_close.png (100%) rename {src => img/buttons/png}/clip_copy_close.png (100%) rename {src => img/buttons/png}/clip_from.png (100%) rename {src => img/buttons/png}/clip_to.png (100%) rename {src => img/buttons/png}/detach.png (100%) rename {src => img/buttons/png}/stop.png (100%) rename {src => img/buttons/png}/suspend.png (100%) rename src/morph_attach.svg => img/buttons/svg/attach.svg (100%) rename src/morph_clip_close.svg => img/buttons/svg/clip_close.svg (100%) rename src/morph_clip_copy_close.svg => img/buttons/svg/clip_copy_close.svg (100%) rename src/morph_copy_from.svg => img/buttons/svg/copy_from.svg (100%) rename src/morph_copy_to.svg => img/buttons/svg/copy_to.svg (100%) rename src/morph_detach.svg => img/buttons/svg/detach.svg (100%) rename src/morph_stop.svg => img/buttons/svg/stop.svg (100%) rename src/morph_suspend.svg => img/buttons/svg/suspend.svg (100%) create mode 100644 package.json -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit daa86a2ab98e66eb1c46510a09b3be1ddcfc0002 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Jun 23 17:33:47 2021 +0200 x2gokdriveclient.html: Expect this file in folder '/x2go/' of the VirtualHost. --- src/x2godomcontroller.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/x2godomcontroller.js b/src/x2godomcontroller.js index 19c8141..f74d664 100644 --- a/src/x2godomcontroller.js +++ b/src/x2godomcontroller.js @@ -249,7 +249,7 @@ X2GoDOMController } let cl = app.__x2goclient; app.updateStatus("X2Go session with ID <b>" + cl.__sessionID + "</b> displayed in other window"); - let wnd = window.open("/assets/x2go-plugin/x2gokdriveclient.html", "X2Go Client", "toolbar=no,resizable=yes,location=no,menubar=no,status=no,titlebar=no"); + let wnd = window.open("/x2go/x2gokdriveclient.html", "X2Go Client", "toolbar=no,resizable=yes,location=no,menubar=no,status=no,titlebar=no"); app.__sepWnd = wnd; console.log("deatch session to", wnd); setTimeout(function () -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit 44ec40303d2a5be9b5dd470ea4cc4cc109b1f729 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Jun 23 17:26:49 2021 +0200 src/x2godomcontroller.js: Use asset_path variable for all loaded / referenced asset files. --- src/x2godomcontroller.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/x2godomcontroller.js b/src/x2godomcontroller.js index 81f0e0f..19c8141 100644 --- a/src/x2godomcontroller.js +++ b/src/x2godomcontroller.js @@ -390,7 +390,7 @@ X2GoDOMController { this.__inputClip=true; this.__clipFocused=false; - this.__clipElementCloseImg.src="/assets/x2go-plugin/IMG/clip_copy_close.png" + this.__clipElementCloseImg.src=asset_path + "clip_copy_close.png" this.__clipElementText.style.color="grey"; this.__clipElementText.innerText= "Paste text or image here"; this.__clipElementText.contentEditable=true; @@ -399,7 +399,7 @@ X2GoDOMController { // console.log(data); this.__inputClip=false; - this.__clipElementCloseImg.src="/assets/x2go-plugin/IMG/clip_close.png" + this.__clipElementCloseImg.src=asset_path + "clip_close.png" this.__clipFocused=true; this.__clipElementText.style.color="black"; if(data.type && data.type=="image/png") @@ -490,7 +490,7 @@ X2GoDOMController getBackground() { - return "/assets/x2go-plugin/IMG/x2gobg.svg"; + return asset_path + "x2gobg.svg"; } -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit a8bd0bb4156a2a82728617c2a26ed1d5d6bfdb13 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Jun 23 17:27:57 2021 +0200 Use absolute /assets/.../ paths in all references. Also: - No capital letters in asset paths. - Shorten asset paths (esp. drop 'x2go-plugin/'). --- index.html | 20 ++++++++++---------- x2gokdriveclient.html | 14 +++++++------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/index.html b/index.html index 0e16f28..ba8f171 100644 --- a/index.html +++ b/index.html @@ -22,7 +22,7 @@ <html> <head> <h1>X2Go HTML Client</h1> -<link rel="stylesheet" href="CSS/x2gostyle.css"> +<link rel="stylesheet" href="/assets/css/x2gostyle.css"> </head> <body> @@ -148,7 +148,7 @@ Don't have it yet? <a href="http://www.x2go.org">Check installation instructions <div id="x2goclip" class="x2goclip" style="display:inline-block;"> <div id="x2goclip_text" contentEditable="true" class= "x2gocliptext"> Paste text or image here </div> - <button id="close_clip" class="x2goimgbut x2goclipbut" ><img id="x2goclip_close_img" src="/assets/x2go-plugin/IMG/clip_copy_close.png"></button> + <button id="close_clip" class="x2goimgbut x2goclipbut" ><img id="x2goclip_close_img" src="/assets/img/clip_copy_close.png"></button> </div> @@ -159,7 +159,7 @@ Don't have it yet? <a href="http://www.x2go.org">Check installation instructions <div class="x2gotooltip"> <span class="x2gotooltiptext">X2Go to Clipboard</span> - <button id="copy_from" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;"><img src="/assets/x2go-plugin/IMG/clip_from.png"></button> + <button id="copy_from" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;"><img src="/assets/img/clip_from.png"></button> </div> @@ -171,22 +171,22 @@ Don't have it yet? <a href="http://www.x2go.org">Check installation instructions <div class="x2gotooltip"> <span class="x2gotooltiptext">Clipboard to X2Go</span> - <button id="copy_to" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;" ><img src="/assets/x2go-plugin/IMG/clip_to.png"></button> + <button id="copy_to" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;" ><img src="/assets/img/clip_to.png"></button> </div> <div class="x2gotooltip"> <span class="x2gotooltiptext">Suspend session</span> - <button id="suspend" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;" ><img src="/assets/x2go-plugin/IMG/suspend.png"></button> + <button id="suspend" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;" ><img src="/assets/img/suspend.png"></button> </div> <div class="x2gotooltip"> <span class="x2gotooltiptext">Terminate session</span> - <button id="terminate" class="x2goimgbut" style="vertical-align:middle;margin-bottom:5px;" ><img src="/assets/x2go-plugin/IMG/stop.png"></button> + <button id="terminate" class="x2goimgbut" style="vertical-align:middle;margin-bottom:5px;" ><img src="/assets/img/stop.png"></button> </div> <div class="x2gotooltip"> <span id="detach_span" class="x2gotooltiptext">New window</span> - <button id="detach" class="x2goimgbut" style="vertical-align:middle;margin-bottom:5px;" ><img id="detach_img" src="/assets/x2go-plugin/IMG/detach.png"></button> + <button id="detach" class="x2goimgbut" style="vertical-align:middle;margin-bottom:5px;" ><img id="detach_img" src="/assets/img/detach.png"></button> </div> </div> @@ -197,8 +197,8 @@ Don't have it yet? <a href="http://www.x2go.org">Check installation instructions -var RPC_path="/assets/x2go-plugin/RPC/x2gorpc.cgi"; -var asset_path="/assets/x2go-plugin/IMG/"; +var RPC_path="/assets/rpc/x2gorpc.cgi"; +var asset_path="/assets/img/"; var name="X2Go Server"; @@ -496,4 +496,4 @@ function getProxyPass() </script> <canvas id="canvas" width="1280" height="920" style="display:none;border:1px solid lightgrey;" tabindex='1' ></canvas> -<script type="text/javascript" src="/assets/x2go-plugin/JS/x2goclient.js"></script> +<script type="text/javascript" src="/assets/js/x2goclient.min.js"></script> diff --git a/x2gokdriveclient.html b/x2gokdriveclient.html index 33765c7..ef1858f 100644 --- a/x2gokdriveclient.html +++ b/x2gokdriveclient.html @@ -21,7 +21,7 @@ <html> <head> -<link rel="stylesheet" href="CSS/x2gostyle.css"> +<link rel="stylesheet" href="/assets/css/x2gostyle.css"> </head> <body> @@ -34,7 +34,7 @@ <div id="x2goclip" class="x2goclip" style="display:inline-block;"> <div id="x2goclip_text" contentEditable="true" class= "x2gocliptext"> Paste text or image here </div> - <button id="close_clip" class="x2goimgbut x2goclipbut" ><img id="x2goclip_close_img" src="/assets/x2go-plugin/IMG/clip_copy_close.png"></button> + <button id="close_clip" class="x2goimgbut x2goclipbut" ><img id="x2goclip_close_img" src="/assets/img/clip_copy_close.png"></button> </div> @@ -44,7 +44,7 @@ <div class="x2gotooltip"> <span class="x2gotooltiptext">X2Go to Clipboard</span> - <button id="copy_from" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;"><img src="/assets/x2go-plugin/IMG/clip_from.png"></button> + <button id="copy_from" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;"><img src="/assets/img/clip_from.png"></button> </div> <div class="x2gotip" style="display:inline-block;"> @@ -55,22 +55,22 @@ <div class="x2gotooltip"> <span class="x2gotooltiptext">Clipboard to X2Go</span> - <button id="copy_to" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;" ><img src="/assets/x2go-plugin/IMG/clip_to.png"></button> + <button id="copy_to" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;" ><img src="/assets/img/clip_to.png"></button> </div> <div class="x2gotooltip"> <span class="x2gotooltiptext">Suspend session</span> - <button id="suspend" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;" ><img src="/assets/x2go-plugin/IMG/suspend.png"></button> + <button id="suspend" class="x2goimgbut" style="vertical-align:middle;margin-left:10px;margin-bottom:5px;" ><img src="/assets/img/suspend.png"></button> </div> <div class="x2gotooltip"> <span class="x2gotooltiptext">Terminate session</span> - <button id="terminate" class="x2goimgbut" style="vertical-align:middle;margin-bottom:5px;" ><img src="/assets/x2go-plugin/IMG/stop.png"></button> + <button id="terminate" class="x2goimgbut" style="vertical-align:middle;margin-bottom:5px;" ><img src="/assets/img/stop.png"></button> </div> <div class="x2gotooltip"> <span class="x2gotooltiptext">Back to Morpheus</span> - <button id="attach" class="x2goimgbut" style="vertical-align:middle;margin-bottom:5px;" ><img src="/assets/x2go-plugin/IMG/attach.png"></button> + <button id="attach" class="x2goimgbut" style="vertical-align:middle;margin-bottom:5px;" ><img src="/assets/img/attach.png"></button> </div> </div> -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit 81f273e3a08517f22be66cd6b25b726ba31d7a58 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Jun 23 17:20:09 2021 +0200 Rename folders to make project resemble a bit more to a Javascript code project. --- {CSS => css}/x2gostyle.css | 0 {src => img/backgrounds/svg}/x2gobg.svg | 0 {src => img/buttons/png}/attach.png | Bin {src => img/buttons/png}/clip_close.png | Bin {src => img/buttons/png}/clip_copy_close.png | Bin {src => img/buttons/png}/clip_from.png | Bin {src => img/buttons/png}/clip_to.png | Bin {src => img/buttons/png}/detach.png | Bin {src => img/buttons/png}/stop.png | Bin {src => img/buttons/png}/suspend.png | Bin src/morph_attach.svg => img/buttons/svg/attach.svg | 0 src/morph_clip_close.svg => img/buttons/svg/clip_close.svg | 0 .../buttons/svg/clip_copy_close.svg | 0 src/morph_copy_from.svg => img/buttons/svg/copy_from.svg | 0 src/morph_copy_to.svg => img/buttons/svg/copy_to.svg | 0 src/morph_detach.svg => img/buttons/svg/detach.svg | 0 src/morph_stop.svg => img/buttons/svg/stop.svg | 0 src/morph_suspend.svg => img/buttons/svg/suspend.svg | 0 18 files changed, 0 insertions(+), 0 deletions(-) diff --git a/CSS/x2gostyle.css b/css/x2gostyle.css similarity index 100% rename from CSS/x2gostyle.css rename to css/x2gostyle.css diff --git a/src/x2gobg.svg b/img/backgrounds/svg/x2gobg.svg similarity index 100% rename from src/x2gobg.svg rename to img/backgrounds/svg/x2gobg.svg diff --git a/src/attach.png b/img/buttons/png/attach.png similarity index 100% rename from src/attach.png rename to img/buttons/png/attach.png diff --git a/src/clip_close.png b/img/buttons/png/clip_close.png similarity index 100% rename from src/clip_close.png rename to img/buttons/png/clip_close.png diff --git a/src/clip_copy_close.png b/img/buttons/png/clip_copy_close.png similarity index 100% rename from src/clip_copy_close.png rename to img/buttons/png/clip_copy_close.png diff --git a/src/clip_from.png b/img/buttons/png/clip_from.png similarity index 100% rename from src/clip_from.png rename to img/buttons/png/clip_from.png diff --git a/src/clip_to.png b/img/buttons/png/clip_to.png similarity index 100% rename from src/clip_to.png rename to img/buttons/png/clip_to.png diff --git a/src/detach.png b/img/buttons/png/detach.png similarity index 100% rename from src/detach.png rename to img/buttons/png/detach.png diff --git a/src/stop.png b/img/buttons/png/stop.png similarity index 100% rename from src/stop.png rename to img/buttons/png/stop.png diff --git a/src/suspend.png b/img/buttons/png/suspend.png similarity index 100% rename from src/suspend.png rename to img/buttons/png/suspend.png diff --git a/src/morph_attach.svg b/img/buttons/svg/attach.svg similarity index 100% rename from src/morph_attach.svg rename to img/buttons/svg/attach.svg diff --git a/src/morph_clip_close.svg b/img/buttons/svg/clip_close.svg similarity index 100% rename from src/morph_clip_close.svg rename to img/buttons/svg/clip_close.svg diff --git a/src/morph_clip_copy_close.svg b/img/buttons/svg/clip_copy_close.svg similarity index 100% rename from src/morph_clip_copy_close.svg rename to img/buttons/svg/clip_copy_close.svg diff --git a/src/morph_copy_from.svg b/img/buttons/svg/copy_from.svg similarity index 100% rename from src/morph_copy_from.svg rename to img/buttons/svg/copy_from.svg diff --git a/src/morph_copy_to.svg b/img/buttons/svg/copy_to.svg similarity index 100% rename from src/morph_copy_to.svg rename to img/buttons/svg/copy_to.svg diff --git a/src/morph_detach.svg b/img/buttons/svg/detach.svg similarity index 100% rename from src/morph_detach.svg rename to img/buttons/svg/detach.svg diff --git a/src/morph_stop.svg b/img/buttons/svg/stop.svg similarity index 100% rename from src/morph_stop.svg rename to img/buttons/svg/stop.svg diff --git a/src/morph_suspend.svg b/img/buttons/svg/suspend.svg similarity index 100% rename from src/morph_suspend.svg rename to img/buttons/svg/suspend.svg -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit bb29bcdc5227effb12f4f3be012b3cf32f795061 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Jun 23 17:34:57 2021 +0200 src/x2gokdrivehtmlclient.js: Don't confuse syntax highlighters by putting unterminated quotes into comments. --- src/x2gokdrivehtmlclient.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/x2gokdrivehtmlclient.js b/src/x2gokdrivehtmlclient.js index 8641ee6..9cfd1c8 100644 --- a/src/x2gokdrivehtmlclient.js +++ b/src/x2gokdrivehtmlclient.js @@ -508,7 +508,7 @@ X2GoKDriveHTMLClient { //1st row case 192: - return 49; //` + return 49; //` (putting a second accent grave here, so that MCEdit does not get confused with syntax highlighting) ` case 49: return 10; //1 case 50: @@ -590,7 +590,7 @@ X2GoKDriveHTMLClient case 186 : return 47; //; case 222 : - return 48; //' + return 48; //' (putting a second apostrophe here, so that MCEdit does not get confused with syntax highlighting) ' case 220 : return 51; //\ -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit 634eb4c0879828b387d1d4aa0eae97b18f0ac59c Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Jun 23 17:05:03 2021 +0200 src/x2gohtmlclient.js: Switch to ws:// (unencrypted) for a start, SSL support for the complete package will be re-introduced soon. --- src/x2gohtmlclient.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/x2gohtmlclient.js b/src/x2gohtmlclient.js index 6764dad..c581451 100644 --- a/src/x2gohtmlclient.js +++ b/src/x2gohtmlclient.js @@ -132,7 +132,7 @@ X2GoHTMLClient } d.updateStatus("resuming X2Go session with ID <b>" + resp.session.id + "</b>"); - c.initSocket("wss://" + window.location.hostname + "/x2gows/" + resp.session.wsport, + c.initSocket("ws://" + window.location.hostname + "/x2gows/" + resp.session.wsport, resp.session.cookie); }); c.renderBackground(); -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit f6fa5dd0c1a1a72a45b952f2cc68c557ad3e5109 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Jun 23 17:06:22 2021 +0200 index.html: White-space only cleanup (drop TABs). --- index.html | 152 ++++++++++++++++++++++++++++++------------------------------- 1 file changed, 76 insertions(+), 76 deletions(-) diff --git a/index.html b/index.html index ba8f171..811e111 100644 --- a/index.html +++ b/index.html @@ -289,31 +289,31 @@ sshproxytype=SSH\n\ width=1024\n\ height=768\n\ user="+getUname()+"\n"; - if(getProxy()) - { - text+="usesshproxy=true\n"; - } - else - { - text+="usesshproxy=false\n"; - } - if(document.getElementById("pr_same_pass").checked) - { - text+="sshproxysamepass=true\n"; - } - else - { - text+="sshproxysamepass=false\n"; - } - if(document.getElementById("pr_same_user").checked) - { - text+="sshproxysameuser=true\n"; - } - else - { - text+="sshproxysameuser=false\n"; - text+="sshproxyuser="+getProxyUser()+"\n"; - } + if(getProxy()) + { + text+="usesshproxy=true\n"; + } + else + { + text+="usesshproxy=false\n"; + } + if(document.getElementById("pr_same_pass").checked) + { + text+="sshproxysamepass=true\n"; + } + else + { + text+="sshproxysamepass=false\n"; + } + if(document.getElementById("pr_same_user").checked) + { + text+="sshproxysameuser=true\n"; + } + else + { + text+="sshproxysameuser=false\n"; + text+="sshproxyuser="+getProxyUser()+"\n"; + } let filename = name+".x2go"; download(filename, text); @@ -369,29 +369,29 @@ function validateForm() { if(!proxyUser) { - alert("Please enter Proxy Username"); - return false; + alert("Please enter Proxy Username"); + return false; + } + if (document.getElementById("embed").className.indexOf("active") !=-1 && !proxyPass) + { + alert("Please enter Proxy Password"); + return false; } - if (document.getElementById("embed").className.indexOf("active") !=-1 && !proxyPass) - { - alert("Please enter Proxy Password"); - return false; - } } return true; } function download(filename, text) { - let element = document.createElement('a'); - element.setAttribute('href', 'data:application/x-x2go;charset=utf-8,' + encodeURIComponent(text)); - element.setAttribute('download', filename); + let element = document.createElement('a'); + element.setAttribute('href', 'data:application/x-x2go;charset=utf-8,' + encodeURIComponent(text)); + element.setAttribute('download', filename); - element.style.display = 'none'; - document.body.appendChild(element); + element.style.display = 'none'; + document.body.appendChild(element); - element.click(); + element.click(); - document.body.removeChild(element); + document.body.removeChild(element); } @@ -411,29 +411,29 @@ function client_choice(e) { if(e.target.dataset.type=="embed") { - document.getElementById("pass-input").style.display="table-row"; - document.getElementById("proxy-pass-input").style.display="table-row"; - document.getElementById("nx-radio").style.display="none"; - document.getElementById("kdr-radio").style.display="none"; - document.getElementById("con-btn").style.display="block"; - document.getElementById("con-btn_t").style.display="none"; - document.getElementById("client_installer").style.display="none"; - - document.getElementById("embed").className="chart-type active"; - document.getElementById("native").className="chart-type"; + document.getElementById("pass-input").style.display="table-row"; + document.getElementById("proxy-pass-input").style.display="table-row"; + document.getElementById("nx-radio").style.display="none"; + document.getElementById("kdr-radio").style.display="none"; + document.getElementById("con-btn").style.display="block"; + document.getElementById("con-btn_t").style.display="none"; + document.getElementById("client_installer").style.display="none"; + + document.getElementById("embed").className="chart-type active"; + document.getElementById("native").className="chart-type"; } else { - document.getElementById("pass-input").style.display="none"; - document.getElementById("proxy-pass-input").style.display="none"; - document.getElementById("nx-radio").style.display="inline"; - document.getElementById("kdr-radio").style.display="inline"; - document.getElementById("con-btn").style.display="none"; - document.getElementById("con-btn_t").style.display="block"; - document.getElementById("client_installer").style.display="table-row"; - - document.getElementById("embed").className="chart-type"; - document.getElementById("native").className="chart-type active"; + document.getElementById("pass-input").style.display="none"; + document.getElementById("proxy-pass-input").style.display="none"; + document.getElementById("nx-radio").style.display="inline"; + document.getElementById("kdr-radio").style.display="inline"; + document.getElementById("con-btn").style.display="none"; + document.getElementById("con-btn_t").style.display="block"; + document.getElementById("client_installer").style.display="table-row"; + + document.getElementById("embed").className="chart-type"; + document.getElementById("native").className="chart-type active"; } } @@ -445,52 +445,52 @@ document.getElementById("server").focus(); function getServer() { - return document.getElementById("server").value; + return document.getElementById("server").value; } function getUname() { - return document.getElementById("uname").value; + return document.getElementById("uname").value; } function getPass() { - return document.getElementById("pass").value; + return document.getElementById("pass").value; } function getCommand() { - return document.getElementById("cmd").value; + return document.getElementById("cmd").value; } function getName() { - return name; + return name; } function getProxy() { - let proxy=document.getElementById("proxy").value; - return proxy; + let proxy=document.getElementById("proxy").value; + return proxy; } function getProxyUser() { - if(document.getElementById("pr_same_user").checked) - { - return getUname(); - } + if(document.getElementById("pr_same_user").checked) + { + return getUname(); + } - return document.getElementById("pr_uname").value; + return document.getElementById("pr_uname").value; } function getProxyPass() { - if(document.getElementById("pr_same_pass").checked) - { - return getPass(); - } - return document.getElementById("pr_pass").value; + if(document.getElementById("pr_same_pass").checked) + { + return getPass(); + } + return document.getElementById("pr_pass").value; } </script> -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit fe0852995242324a9701ec332469eef18bc7b782 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Jun 18 23:15:22 2021 +0200 dist/.placeholder: Keep empty dist/ directory in Git. --- dist/.placeholder | 0 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/dist/.placeholder b/dist/.placeholder new file mode 100644 index 0000000..e69de29 -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit 115a7e39b30a2347aa760910636b2a0858186d22 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Jun 18 23:15:00 2021 +0200 debian/: Initial packaging draft. --- debian/changelog | 6 ++++ debian/compat | 1 + debian/control | 64 +++++++++++++++++++++++++++++++++++++++++ debian/copyright | 32 +++++++++++++++++++++ debian/libjs-x2goclient.dirs | 1 + debian/libjs-x2goclient.install | 8 ++++++ debian/rules | 22 ++++++++++++++ debian/source/format | 1 + debian/x2gohtmlclient.install | 8 ++++++ 9 files changed, 143 insertions(+) diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..038d391 --- /dev/null +++ b/debian/changelog @@ -0,0 +1,6 @@ +x2gohtmlclient (1.0-0x2go1) UNRELEASED; urgency=medium + + [ Mike Gabriel ] + * Initial release. + + -- Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Tue, 04 Jun 2019 11:10:43 +0200 diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..f11c82a --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 \ No newline at end of file diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..1258662 --- /dev/null +++ b/debian/control @@ -0,0 +1,64 @@ +Source: x2gohtmlclient +Section: x11 +Priority: optional +Maintainer: X2Go Developers <x2go-dev@lists.x2go.org> +Uploaders: + Oleksandr Shneyder <o.schneydr@phoca-gmbh.de>, + Mike Gabriel <mike.gabriel@das-netzwerkteam.de>, + Mihai Moldovan <ionic@ionic.de>, +Build-Depends: + debhelper (>= 9), + quilt, +Standards-Version: 4.5.1 +Homepage: https://code.x2go.org/releases/source/x2gohtmlclient +Vcs-Git: git://code.x2go.org/x2gohtmlclient.git +Vcs-Browser: https://code.x2go.org/gitweb?p=x2gohtmlclient.git;a=summary + +Package: x2gohtmlclient +Architecture: any +Depends: + libjs-x2goclient, + ${misc:Depends}, +Recomends: + nginx, + x2gowebrpc, + x2gowswrapper, +Suggests: + x2goserver, + x2goserver-x2gokdrive, +Description: X2Go HTML5 Client (example html page) + X2Go is a server based computing environment with + - session resuming + - low bandwidth support + - session brokerage support + - client-side mass storage mounting support + - client-side printing support + - audio support + - authentication by smartcard and USB stick + . + The X2Go HTML5 Client provides X2Go session access via webbrowser + technology (supported by X2Go KDrive Xserver backend only). + . + This package contains a demo HTML site utilizing X2Go HTML5 Javascript + Client. + +Package: libjs-x2goclient +Architecture: any +Depends: + ${misc:Depends}, +Suggests: + x2gohtmlclient, +Description: X2Go HTML5 Client (JS library) + X2Go is a server based computing environment with + - session resuming + - low bandwidth support + - session brokerage support + - client-side mass storage mounting support + - client-side printing support + - audio support + - authentication by smartcard and USB stick + . + The X2Go HTML5 Client provides X2Go session access via webbrowser + technology (supported by X2Go KDrive Xserver backend only). + . + This package contains the Javascript code of X2Go HTML Client. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..86c5bd3 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,32 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: X2Go HTML KDrive Client +Upstream-Contact: Oleksandr Shneyder <o.schneydr@phoca-gmbh.de> +Source: https://code.x2go.org/releases/source/x2gohtmlclient/ + +Files: * +Copyright: 2020-2021, Oleksandr Shneyder <o.schneydr@phoca-gmbh.de> +License: GPL-2+ + +Files: debian/* +Copyright: 2021, Mike Gabriel <mike.gabriel@das-netzwerkteam.de> +License: GPL-2+ + +License: GPL-2+ + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program; if not, write to the + Free Software Foundation, Inc., + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + . + On Debian systems, the full text of the GNU General Public + License version 2 can be found in the file + `/usr/share/common-licenses/GPL-2'. diff --git a/debian/libjs-x2goclient.dirs b/debian/libjs-x2goclient.dirs new file mode 100644 index 0000000..135d906 --- /dev/null +++ b/debian/libjs-x2goclient.dirs @@ -0,0 +1 @@ +usr/share/javascript/x2goclient \ No newline at end of file diff --git a/debian/libjs-x2goclient.install b/debian/libjs-x2goclient.install new file mode 100644 index 0000000..15dc687 --- /dev/null +++ b/debian/libjs-x2goclient.install @@ -0,0 +1,8 @@ +dist/x2goclient.js usr/share/javascript/x2goclient/ +dist/x2goclient.min.js usr/share/javascript/x2goclient/ +img/buttons/png/clip_*_close.png usr/share/x2gohtmlclient/img/ +img/buttons/png/attach.png usr/share/x2gohtmlclient/img/ +img/buttons/png/detach.png usr/share/x2gohtmlclient/img/ +img/backgrounds/svg/x2gobg.svg usr/share/x2gohtmlclient/img/ +conf/nginx/snippets/libjs-x2goclient.conf etc/nginx/snippets/ +x2gokdriveclient.html usr/share/x2gohtmlclient/ \ No newline at end of file diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..7d55574 --- /dev/null +++ b/debian/rules @@ -0,0 +1,22 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +%: + dh $@ --with quilt + +override_dh_auto_build: + dh_auto_build + $(CURDIR)/minify.sh + +override_dh_auto_clean: + dh_auto_clean + rm -f dist/x2goclient.js + rm -f dist/x2goclient.min.js diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..d3827e7 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +1.0 diff --git a/debian/x2gohtmlclient.install b/debian/x2gohtmlclient.install new file mode 100644 index 0000000..8d3a017 --- /dev/null +++ b/debian/x2gohtmlclient.install @@ -0,0 +1,8 @@ +css/ usr/share/x2gohtmlclient/ +index.html usr/share/x2gohtmlclient/demo/ +conf/nginx/sites-available/x2gohtmlclient-demo.conf etc/nginx/sites-available/ +conf/nginx/snippets/x2gohtmlclient-*.conf etc/nginx/snippets/ +img/buttons/png/clip_from.png usr/share/x2gohtmlclient/img/ +img/buttons/png/clip_to.png usr/share/x2gohtmlclient/img/ +img/buttons/png/stop.png usr/share/x2gohtmlclient/img/ +img/buttons/png/suspend.png usr/share/x2gohtmlclient/img/ -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit 1762f32f3bc572ac22ed85ab3506b1d927697632 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Jun 23 17:06:54 2021 +0200 conf/nginx/: Add Nginx configuration files (http-no-SSL support only for now). --- .../nginx/sites-available/x2gohtmlclient-demo.conf | 22 ++++++++++++++++ conf/nginx/snippets/libjs-x2goclient.conf | 29 ++++++++++++++++++++++ conf/nginx/snippets/x2gohtmlclient-css.conf | 9 +++++++ conf/nginx/snippets/x2gohtmlclient-rpc.conf | 6 +++++ conf/nginx/snippets/x2gohtmlclient-wswrapper.conf | 18 ++++++++++++++ 5 files changed, 84 insertions(+) diff --git a/conf/nginx/sites-available/x2gohtmlclient-demo.conf b/conf/nginx/sites-available/x2gohtmlclient-demo.conf new file mode 100644 index 0000000..7eb8e4c --- /dev/null +++ b/conf/nginx/sites-available/x2gohtmlclient-demo.conf @@ -0,0 +1,22 @@ +server { + + listen 80; + +# listen 443 ssl; +# server_name <your-host>; +# ssl_certificate <your-SSL-cert>; +# ssl_certificate_key <your-SSL-key>; +# ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384; +# ssl_protocols TLSv1.2; +# ssl_prefer_server_ciphers off; +# ssl_session_timeout 5m; +# ssl_session_cache builtin:1000 shared:SSL:10m; +# ssl_session_tickets off; + + root /usr/share/x2gohtmlclient/demo; + + include snippets/libjs-x2goclient.conf; + include snippets/x2gohtmlclient-css.conf; + include snippets/x2gohtmlclient-rpc.conf; + include snippets/x2gohtmlclient-wswrapper.conf; +} diff --git a/conf/nginx/snippets/libjs-x2goclient.conf b/conf/nginx/snippets/libjs-x2goclient.conf new file mode 100644 index 0000000..fb7907a --- /dev/null +++ b/conf/nginx/snippets/libjs-x2goclient.conf @@ -0,0 +1,29 @@ +location /x2go/x2gokdriveclient.html { + alias /usr/share/x2gohtmlclient/x2gokdriveclient.html; + add_header Strict-Transport-Security "max-age=31536000"; + add_header Content-Security-Policy "default-src 'self' 'unsafe-inline' data: blob: ws: wss:; script-src 'self' 'unsafe-inline'"; + add_header Feature-Policy "vibrate 'none' ; microphone 'none' ; camera 'none' ; gyroscope 'none' ; magnetometer 'none' ; geolocation 'none' ; midi 'self' ; notifications 'self' ; push 'self' ; sync-xhr 'self'"; + add_header Referrer-Policy "same-origin"; + add_header X-Content-Type-Options "nosniff"; + add_header X-Frame-Options "SAMEORIGIN"; +} + +location /assets/js/ { + alias /usr/share/javascript/x2goclient/; + add_header Strict-Transport-Security "max-age=31536000"; + add_header Content-Security-Policy "default-src 'self' 'unsafe-inline' data: blob: ws: wss:; script-src 'self' 'unsafe-inline'"; + add_header Feature-Policy "vibrate 'none' ; microphone 'none' ; camera 'none' ; gyroscope 'none' ; magnetometer 'none' ; geolocation 'none' ; midi 'self' ; notifications 'self' ; push 'self' ; sync-xhr 'self'"; + add_header Referrer-Policy "same-origin"; + add_header X-Content-Type-Options "nosniff"; + add_header X-Frame-Options "SAMEORIGIN"; +} + +location /assets/img/ { + alias /usr/share/x2gohtmlclient/img/; + add_header Strict-Transport-Security "max-age=31536000"; + add_header Content-Security-Policy "default-src 'self' 'unsafe-inline' data: blob: ws: wss:; script-src 'self' 'unsafe-inline'"; + add_header Feature-Policy "vibrate 'none' ; microphone 'none' ; camera 'none' ; gyroscope 'none' ; magnetometer 'none' ; geolocation 'none' ; midi 'self' ; notifications 'self' ; push 'self' ; sync-xhr 'self'"; + add_header Referrer-Policy "same-origin"; + add_header X-Content-Type-Options "nosniff"; + add_header X-Frame-Options "SAMEORIGIN"; +} diff --git a/conf/nginx/snippets/x2gohtmlclient-css.conf b/conf/nginx/snippets/x2gohtmlclient-css.conf new file mode 100644 index 0000000..f7dab63 --- /dev/null +++ b/conf/nginx/snippets/x2gohtmlclient-css.conf @@ -0,0 +1,9 @@ +location /assets/css/ { + alias /usr/share/x2gohtmlclient/css/; + add_header Strict-Transport-Security "max-age=31536000"; + add_header Content-Security-Policy "default-src 'self' 'unsafe-inline' data: blob: ws: wss:; script-src 'self' 'unsafe-inline'"; + add_header Feature-Policy "vibrate 'none' ; microphone 'none' ; camera 'none' ; gyroscope 'none' ; magnetometer 'none' ; geolocation 'none' ; midi 'self' ; notifications 'self' ; push 'self' ; sync-xhr 'self'"; + add_header Referrer-Policy "same-origin"; + add_header X-Content-Type-Options "nosniff"; + add_header X-Frame-Options "SAMEORIGIN"; +} diff --git a/conf/nginx/snippets/x2gohtmlclient-rpc.conf b/conf/nginx/snippets/x2gohtmlclient-rpc.conf new file mode 100644 index 0000000..c2990d3 --- /dev/null +++ b/conf/nginx/snippets/x2gohtmlclient-rpc.conf @@ -0,0 +1,6 @@ +location /assets/rpc/x2gorpc.cgi { + alias /usr/lib/cgi-bin/x2gorpc.cgi; + gzip off; + include /etc/nginx/fastcgi_params; + fastcgi_pass unix:/var/run/fcgiwrap.socket; +} diff --git a/conf/nginx/snippets/x2gohtmlclient-wswrapper.conf b/conf/nginx/snippets/x2gohtmlclient-wswrapper.conf new file mode 100644 index 0000000..9500b96 --- /dev/null +++ b/conf/nginx/snippets/x2gohtmlclient-wswrapper.conf @@ -0,0 +1,18 @@ +# Provide port based access to x2gowswrapper launched by x2gorpc.cgi (aka x2gowebrpc) + +proxy_read_timeout 300; + +location ~ ^/x2gows/(.*)$ { + proxy_pass http://127.0.0.1:$1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_http_version 1.1; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header Host $http_host; + proxy_intercept_errors on; + proxy_redirect off; + proxy_cache_bypass $http_upgrade; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-NginX-Proxy true; + proxy_ssl_session_reuse off; +} -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit 361c5caed5355e4d854076e6cc2989c5c3cffaa5 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Wed Jun 23 17:59:53 2021 +0200 minify.sh: Adjust, so that a minified and a non-minified .js file results from this script. --- minify.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/minify.sh b/minify.sh index fa1b8f1..fc96050 100755 --- a/minify.sh +++ b/minify.sh @@ -17,4 +17,5 @@ # Free Software Foundation, Inc., # 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. -minify src/x2godomcontroller.js src/x2gokdrivehtmlclient.js src/x2gohtmlclient.js > dist/x2goclient.js +cat src/x2godomcontroller.js src/x2gokdrivehtmlclient.js src/x2gohtmlclient.js > dist/x2goclient.js +minify dist/x2goclient.js > dist/x2goclient.min.js -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2gohtmlclient. commit 15c77be9a60790365e616122dddbedf552c82754 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Jun 18 23:15:47 2021 +0200 package.json: Add sample package.json file. --- package.json | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/package.json b/package.json new file mode 100644 index 0000000..0f00f8d --- /dev/null +++ b/package.json @@ -0,0 +1,25 @@ +{ + "name": "x2gohtmlclient", + "version": "1.0.0", + "description": "X2Go HTML Client for X2GoKDrive", + "main": "dist/x2goclient.js", + "scripts": { + "build": "./minifyjs.sh" + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "https://code.x2go.org/x2gohtmlclient.git" + }, + "keywords": [ + "X2Go", + "HTML", + "Client", + "KDrive", + "remote", + "session", + "desktop" + ], + "author": "Oleksandr Shneyder", + "license": "AGPL-3.0-or-later" +} -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2gohtmlclient.git