[GH-ISSUE #279] Linux support for the Server #136

Closed
opened 2026-02-27 15:49:00 +03:00 by kerem · 24 comments
Owner

Originally created by @gngeorgiev on GitHub (Jul 15, 2015).
Original GitHub issue: https://github.com/quasar/Quasar/issues/279

How about we make it possible run the server on a linux machine(Ubuntu, Arch, etc.). This will allow the RAT to have a bigger audience. I can do this if you see fit.

Originally created by @gngeorgiev on GitHub (Jul 15, 2015). Original GitHub issue: https://github.com/quasar/Quasar/issues/279 How about we make it possible run the server on a linux machine(Ubuntu, Arch, etc.). This will allow the RAT to have a bigger audience. I can do this if you see fit.
kerem 2026-02-27 15:49:00 +03:00
  • closed this issue
  • added the
    question
    label
Author
Owner

@MaxXor commented on GitHub (Jul 15, 2015):

Have you already tried running it with Mono, does it work, are there errors?

<!-- gh-comment-id:121585425 --> @MaxXor commented on GitHub (Jul 15, 2015): Have you already tried running it with Mono, does it work, are there errors?
Author
Owner

@gngeorgiev commented on GitHub (Jul 15, 2015):

Yeah, there are: NATUPNPLib does not work and the theming. Other things should be minor.

<!-- gh-comment-id:121585603 --> @gngeorgiev commented on GitHub (Jul 15, 2015): Yeah, there are: `NATUPNPLib` does not work and the theming. Other things should be minor.
Author
Owner

@MaxXor commented on GitHub (Jul 15, 2015):

Ah, alright. Yes the Listview calls some windows-only functions...
Maybe we could use an alternative to NATUPNPLib to have support for UPnP on Linux too.

<!-- gh-comment-id:121586024 --> @MaxXor commented on GitHub (Jul 15, 2015): Ah, alright. Yes the Listview calls some windows-only functions... Maybe we could use an alternative to NATUPNPLib to have support for UPnP on Linux too.
Author
Owner

@gngeorgiev commented on GitHub (Jul 15, 2015):

Yeah, I think we can use https://github.com/lontivero/Open.NAT. As it will work on bot windows and linux since NATUPNPLib is a COM library which can in no way be used in Linux.

<!-- gh-comment-id:121586233 --> @gngeorgiev commented on GitHub (Jul 15, 2015): Yeah, I think we can use https://github.com/lontivero/Open.NAT. As it will work on bot windows and linux since NATUPNPLib is a COM library which can in no way be used in Linux.
Author
Owner

@MaxXor commented on GitHub (Jul 15, 2015):

Alright, I'll make the library change later today so we can get rid of the COM library.

<!-- gh-comment-id:121587221 --> @MaxXor commented on GitHub (Jul 15, 2015): Alright, I'll make the library change later today so we can get rid of the COM library.
Author
Owner

@gngeorgiev commented on GitHub (Jul 15, 2015):

Refer the PR here so I can test it out 🌟

<!-- gh-comment-id:121587611 --> @gngeorgiev commented on GitHub (Jul 15, 2015): Refer the PR here so I can test it out :star2:
Author
Owner

@MaxXor commented on GitHub (Jul 15, 2015):

Sure!

<!-- gh-comment-id:121587661 --> @MaxXor commented on GitHub (Jul 15, 2015): Sure!
Author
Owner

@MaxXor commented on GitHub (Jul 15, 2015):

Library change complete! :) (using now https://github.com/nterry/Mono.Nat)

<!-- gh-comment-id:121610722 --> @MaxXor commented on GitHub (Jul 15, 2015): Library change complete! :) (using now https://github.com/nterry/Mono.Nat)
Author
Owner

@gngeorgiev commented on GitHub (Jul 15, 2015):

Great, gonna test it out sometime tonight probably.

<!-- gh-comment-id:121612077 --> @gngeorgiev commented on GitHub (Jul 15, 2015): Great, gonna test it out sometime tonight probably.
Author
Owner

@MaxXor commented on GitHub (Jul 15, 2015):

Thanks! I've tested it on Windows, worked very well.

<!-- gh-comment-id:121612443 --> @MaxXor commented on GitHub (Jul 15, 2015): Thanks! I've tested it on Windows, worked very well.
Author
Owner

@yankejustin commented on GitHub (Jul 15, 2015):

@MaxXor I would imagine that the Keylogger will be very broken since it relies on Windows' Hooks.

<!-- gh-comment-id:121672979 --> @yankejustin commented on GitHub (Jul 15, 2015): @MaxXor I would imagine that the Keylogger will be very broken since it relies on Windows' Hooks.
Author
Owner

@MaxXor commented on GitHub (Jul 15, 2015):

@yankejustin We are talking here about the Server only. :)

<!-- gh-comment-id:121673127 --> @MaxXor commented on GitHub (Jul 15, 2015): @yankejustin We are talking here about the Server only. :)
Author
Owner

@yankejustin commented on GitHub (Jul 15, 2015):

Oh, right. I apologize. :)

<!-- gh-comment-id:121673999 --> @yankejustin commented on GitHub (Jul 15, 2015): Oh, right. I apologize. :)
Author
Owner

@MaxXor commented on GitHub (Jul 19, 2015):

Now it's starting on Linux with Mono, gonna check the Builder too later.

<!-- gh-comment-id:122645580 --> @MaxXor commented on GitHub (Jul 19, 2015): Now it's starting on Linux with Mono, gonna check the Builder too later.
Author
Owner

@bitterypaul commented on GitHub (Jul 30, 2015):

Will the remote desktop work on linux

<!-- gh-comment-id:126272985 --> @bitterypaul commented on GitHub (Jul 30, 2015): Will the remote desktop work on linux
Author
Owner

@ghost commented on GitHub (Jul 30, 2015):

Remote Desktop currently as it is won't work on linux. We would just need to disallow the hooks that the keyboard input uses for it to work.

<!-- gh-comment-id:126284833 --> @ghost commented on GitHub (Jul 30, 2015): Remote Desktop currently as it is won't work on linux. We would just need to disallow the hooks that the keyboard input uses for it to work.
Author
Owner

@MaxXor commented on GitHub (Jul 30, 2015):

Yes, Remote Desktop should be disabled on Mono to prevent any crashes.

<!-- gh-comment-id:126295265 --> @MaxXor commented on GitHub (Jul 30, 2015): Yes, Remote Desktop should be disabled on Mono to prevent any crashes.
Author
Owner

@ghost commented on GitHub (Jul 30, 2015):

I'm currently working on keyboard input for Remote Desktop through Mono

<!-- gh-comment-id:126295816 --> @ghost commented on GitHub (Jul 30, 2015): I'm currently working on keyboard input for Remote Desktop through Mono
Author
Owner

@MaxXor commented on GitHub (Jul 30, 2015):

You don't need to do that, it's still incompatible with the entire UnsafeStreamCodec. ;)

<!-- gh-comment-id:126296065 --> @MaxXor commented on GitHub (Jul 30, 2015): You don't need to do that, it's still incompatible with the entire UnsafeStreamCodec. ;)
Author
Owner

@ghost commented on GitHub (Jul 30, 2015):

It is working for me on Ubuntu 14.04 :D, Mono JIT compiler version 4.0.3 (Stable 4.0.3.19)

<!-- gh-comment-id:126297120 --> @ghost commented on GitHub (Jul 30, 2015): It is working for me on Ubuntu 14.04 :D, Mono JIT compiler version 4.0.3 (Stable 4.0.3.19)
Author
Owner

@MaxXor commented on GitHub (Jul 30, 2015):

Oh, you are right, only the encoding uses functions (i.e. memcpy) from the msvcrt.dll. Decoding in the server is fine. 👍

<!-- gh-comment-id:126298558 --> @MaxXor commented on GitHub (Jul 30, 2015): Oh, you are right, only the encoding uses functions (i.e. `memcpy`) from the `msvcrt.dll`. Decoding in the server is fine. :+1:
Author
Owner

@ghost commented on GitHub (Jul 30, 2015):

Everything seems to work fine, from what I've tested on the Server with Mono.. I think using the .NET events for the picturebox (e.g. OnKeyDown) might be the best way to support keyboard input (for linux). Do you think this would be fine? If so, I can start working on it!

<!-- gh-comment-id:126304290 --> @ghost commented on GitHub (Jul 30, 2015): Everything seems to work fine, from what I've tested on the Server with Mono.. I think using the .NET events for the picturebox (e.g. OnKeyDown) might be the best way to support keyboard input (for linux). Do you think this would be fine? If so, I can start working on it!
Author
Owner

@MaxXor commented on GitHub (Jul 30, 2015):

Yes, you can easily change this I guess. So the only unsupported thing would be only the mouse wheel, but that's not really important.

<!-- gh-comment-id:126304598 --> @MaxXor commented on GitHub (Jul 30, 2015): Yes, you can easily change this I guess. So the only unsupported thing would be only the mouse wheel, but that's not really important.
Author
Owner

@ghost commented on GitHub (Jul 30, 2015):

Right, I believe if we were to implement the mouse wheel we would have to use a parent control to access the MouseWheel event.

<!-- gh-comment-id:126306426 --> @ghost commented on GitHub (Jul 30, 2015): Right, I believe if we were to implement the mouse wheel we would have to use a parent control to access the MouseWheel event.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/Quasar#136
No description provided.