Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Im too stupid to follow your guide =( #16

Open
oddsolberg81 opened this issue Jan 19, 2018 · 7 comments
Open

Im too stupid to follow your guide =( #16

oddsolberg81 opened this issue Jan 19, 2018 · 7 comments

Comments

@oddsolberg81
Copy link

oddsolberg81 commented Jan 19, 2018

I managed to install and configure Guacamole server on my Rasberry Pi (using apt-get).
I want to use it as a RDP/VNC gateway in my Tesla Model S webbrowser (i want to play monkey island 2 while supercharging) and make a guide that everyone can follow to do the same.
The webbrowser in my car will not even open the first guacamole login page, just shows a white screen.
I had lots of luck with using the opensource Myrtille RDP proxy, but i really want a Linux gateway.
I think Java is the root of the problem and i therefore want to try my luck with Guacamole-light.

But how can i install it in the simplest manner posible? (i dont need any fancy authentication, im just using it in my LAN) Im terrible at programming (i can only make really basic c programs).

My guacamole install resides in: /usr/share/guacamole/guacamole
I downloaded guacamole-light from github and unzipped it to /usr/share/guacamole/guacamole/guacamole-lite-master
From there i ran: sudo npm install --save

And now im stuck in my own incompetence, i dont know how to proceed to replace the local Guacamole java based loginpage with the guacamole-light version.
Can you please help me, if not all the way, give me a push in the right direction?

@vadimpronin
Copy link
Owner

To completely replace java-guacamole you'll have to replace the client part. Basically you need to create single html file (like index.html) which you'll access from your browser, include guacamole-common-js into it (you can try this package https://www.npmjs.com/package/guacamole-common-js ) and add some JavaScript code to initiate the connection to guacamole-lite as described is the official documentation http://guacamole.apache.org/doc/gug/guacamole-common-js.html.

I wish I could be more specific with the last part, but I'm not a front-end developer and never implemented the html/js for this project :) I'm not even sure if guacamole-common-js provides a ready-to-use client or you'll have to write the code to capture keyboard/mouse yourself. Probably there is a way to steal the working code from the original guacamole client by opening a connection via java-guacamole and inspecting the iframe that it creates for the client.

Or maybe @fredericosilva or @votsa can provide an example of such html/js file as they have implemented it in the past.

P.S. I persanally like Monkey Island 1 more than MI2 ;) Anyhow, if playing MI (and other LucasArts games) in the browser is your only goal, I would rather try installing browser version of scummvm on your raspberry with appropriate game images. In this case you won't need guacamole at all. I think this should work https://github.com/juj/emscripten-scummvm . Or even betted - buy a remastered version of MI for iPhone/Android :)

@oddsolberg81
Copy link
Author

oddsolberg81 commented Jan 22, 2018

Thank you for replying to me. Even though you couldn't give me a full guide (i didn't expect you to), your reply is very helpful to me. Awsome, thank you!
I'm sadly stupid at web-development, so if anyone can help me further along its wey welcome, but i will give it my best effort, my chances have at least improved a lot.
I have never played Monkey Island 1 through, but i will as soon as i get this to work.
There is two reasons that i cannot use browserversion of scummvm.
First, the browser in the car does not support it (Tesla has disabled browser support for everything thats not nessesarry to browse normal webpages like news, forums and such, if you get a html5 based game to work, its terrible slow, not playable).
Second, sound support is also disabled in the cars browser. Monkey Island without sound, is just not the same experience.
This is the reason i want to make a rasberry pi proxy RDP/VNC client, that would enable me to connect the car browser to a Rasberry Pi "Ad-Hoc WiFi" network and connect the Rasberry Pi to the bluetooth audio in the car. That would also enable me to use keyboard and mouse if i want to in addition to the touchscreen in the car when i want too.
The only drawback is that if i want to connect to the internet while using the rasberry pi RDP/VNC localhost service, i would need to connect the Rasberry Pi to a mobile phone and use that as a internet gateway. But this is not a problem for my usecase.

@lexcorp
Copy link

lexcorp commented Aug 16, 2019

Where puts guacamole-lite? On tomcat? On apache? My install of guacamole reside on /opt/tomcat/webapps/guacamole

@vadimpronin
Copy link
Owner

@lexcorp The original guacamole actually consists of 2 parts: guacd - the daemon that does all the RDP/VNC/SSH connections and converts them to guacamole protocol and guacamole - the java part that acts like middleware between browser and the guacd.

guacamole-lite basically replaces only the java part. You still need to install guacd or compile it from C sources. But you can throw away the java part and replace it with guacamole-lite.

To run guacamole-lite you don't need and web server like tomcat or apache - you just need nodejs. Once you create server script (you can take one from examples in readme) you just run it with nodejs and it starts accepting connections right away.

@ankitmhn
Copy link

Is there an implementation of the frontend part that anyone can point me to? I'm also trying to setup a similar. While this library takes care of the 'backend' (in place of the tomcat server), is there a reference implementation for the frontend? Thanks!

@nksCH
Copy link

nksCH commented Apr 29, 2020

@OddArneRoll / @ankitmhn
If you are looking for a fast way to get started (example-wise) this project https://github.com/linuxserver/gclient was super helpful to get things started.

@ankitmhn
Copy link

ankitmhn commented Apr 29, 2020

@nksCH Thank you for pointing me to the repo. It looks interesting, I'll try it out later this week. Although for now I have been able to use the guac-lite implementation itself.
Edit: Thank you for sharing the gclient library. This was really helpful!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants