mirror of
https://gitlab.com/marcandre.lureau/qemu-display.git
synced 2025-04-14 08:44:46 +00:00
doc(rdp): add README.md
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
This commit is contained in:
parent
1df9070d40
commit
ba7d12508e
93
qemu-rdp/README.md
Normal file
93
qemu-rdp/README.md
Normal file
@ -0,0 +1,93 @@
|
||||
# org.qemu.Display1 D-Bus RDP server
|
||||
|
||||
[](https://crates.io/crates/qemu-rdp)
|
||||
[](https://docs.rs/qemu-rdp)
|
||||
[](https://opensource.org/licenses/MIT)
|
||||
|
||||
RDP server for
|
||||
[org.qemu.Display1](https://www.qemu.org/docs/master/interop/dbus-display.html)
|
||||
interface (as exposed by `qemu -display dbus`).
|
||||
|
||||
The project was originally designed to work with QEMU, but it can be used with
|
||||
other displays/UI that implement the D-Bus interface.
|
||||
|
||||
## Features
|
||||
|
||||
- RDP server in Rust thanks to IronRDP
|
||||
- using TLS/CredSSP for secure connections
|
||||
- text clipboard sharing
|
||||
- audio playback
|
||||
- monitor resize
|
||||
- remotefx image codec
|
||||
- Opus audio codec (works with some clients, like FreeRDP)
|
||||
|
||||
## Installation & usage
|
||||
|
||||
```
|
||||
cargo install qemu-rdp
|
||||
```
|
||||
|
||||
To run the server against qemu, the simplest way is to use `qemu -display dbus` and
|
||||
run the server: (requires certificate and key)
|
||||
```bash
|
||||
qemu-rdp serve --bind-address YOUR_IP:3389 --cert=CERT.PEM --key=KEY.PEM
|
||||
```
|
||||
|
||||
Although for a complete setup (with audio devices, clipboard and such), you may
|
||||
want to wait for libvirt to support it.
|
||||
|
||||
## TODO
|
||||
|
||||
Some ideas to improve the project:
|
||||
|
||||
- [ ] some video/image codec (AV1/AVC/HEVC)
|
||||
- [ ] USB redirection
|
||||
- [ ] audio recording
|
||||
- [ ] more types clipboard redirection
|
||||
- [ ] file system redirection
|
||||
- [ ] multimonitor
|
||||
- tons of other stuff from RDP features, and a lot of bug fixes🐛
|
||||
|
||||
## Contributing
|
||||
|
||||
Contributions are welcome! Please feel free to submit a Pull Request. For major
|
||||
changes, please open an issue first to discuss what you would like to change.
|
||||
|
||||
Please make sure to update tests as appropriate.
|
||||
|
||||
### Development Setup
|
||||
|
||||
1. Clone the repository:
|
||||
```bash
|
||||
git clone https://gitlab.com/marcandre.lureau/qemu-display
|
||||
cd qemu-display/qemu-rdp
|
||||
```
|
||||
|
||||
2. Build the project:
|
||||
```bash
|
||||
cargo build
|
||||
```
|
||||
|
||||
## Changelog
|
||||
|
||||
### [0.1.0] - 2025-01-29
|
||||
- Initial release
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the MIT License - see the [LICENSE](https://opensource.org/licenses/MIT) file for details.
|
||||
|
||||
## Acknowledgments
|
||||
|
||||
- Thanks to contributors, especially [Mihnea
|
||||
Buzatu](https://github.com/mihneabuz) would did the initial work during GSoC
|
||||
2023
|
||||
- Credits to [IronRDP](https://github.com/Devolutions/IronRDP)
|
||||
- Red Hat!
|
||||
|
||||
## Contact
|
||||
|
||||
- Email: marcandre.lureau@gmail.com
|
||||
|
||||
---
|
||||
Built with ❤️ using Rust
|
Loading…
x
Reference in New Issue
Block a user