Skip to content

Commit

Permalink
pycharm doesn't like relative './' links
Browse files Browse the repository at this point in the history
  • Loading branch information
totaam committed Jun 15, 2024
1 parent c1ca425 commit 60b13d7
Show file tree
Hide file tree
Showing 35 changed files with 226 additions and 226 deletions.
2 changes: 1 addition & 1 deletion docs/Build/Debian.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ The debian packaging files can be found here: [packaging/debian](https://github.

Debian and Ubuntu also ships xpra packages, though their _stable_ versions are completely out of date, broken and unsupported, [they should not be used](https://github.com/Xpra-org/xpra/wiki/Distribution-Packages).

For general information, see [building](./README.md).
For general information, see [building](README.md).

## Build requirements
The easiest way to install the build dependencies
Expand Down
110 changes: 55 additions & 55 deletions docs/Build/Dependencies.md

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions docs/Build/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

## Platform specific instructions:
Please refer to the instructions most appropriate for your build platform:
* [Fedora, CentOS / RHEL](./RPM.md)
* [Debian and Ubuntu](./Debian.md)
* [MS Windows](./MSWindows.md)
* [MacOS](./MacOS.md)
* [Others](./Other.md)
* [Fedora, CentOS / RHEL](RPM.md)
* [Debian and Ubuntu](Debian.md)
* [MS Windows](MSWindows.md)
* [MacOS](MacOS.md)
* [Others](Other.md)


## Download the xpra source code
Expand All @@ -16,7 +16,7 @@ Use one of the following locations:
* `xpra.org`: https://xpra.org/src/ (releases only)

## Build
First, make sure that all the required [dependencies](./Dependencies.md) are installed, then:
First, make sure that all the required [dependencies](Dependencies.md) are installed, then:
```shell
git clone https://github.com/Xpra-org/xpra
cd xpra
Expand Down
2 changes: 1 addition & 1 deletion docs/Build/RPM.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ https://github.com/Xpra-org/xpra/tree/master/packaging/rpm/xpra.spec
```shell
dnf builddep xpra.spec
```
You may also refer to the more generic list of [dependencies](./Dependencies.md)
You may also refer to the more generic list of [dependencies](Dependencies.md)

Alternatively, if you want to install a more limited set of build dependencies,
you can use the `dev-env` build subcommand which will honour setup arguments. ie:
Expand Down
12 changes: 6 additions & 6 deletions docs/FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,16 +18,16 @@ Run `apt-get update --allow-releaseinfo-change`.
### Debian's Aptitude says *Some index files failed to download* when updating
See above.
### I found a security issue
Please [tell us](./SECURITY.md)
Please [tell us](SECURITY.md)

***


## Usage questions
### Where is xpra's system tray icon?
Some desktop environments [make it impossible to show a system tray icon](./Features/System-Tray.md#caveats).
Some desktop environments [make it impossible to show a system tray icon](Features/System-Tray.md#caveats).
### Why does Xpra use any CPU when the session is idle?
[Audio forwarding](./Features/Audio.md) will consume a fairly constant amount of CPU and bandwidth. Turn speaker forwarding off if you don't need it.\
[Audio forwarding](Features/Audio.md) will consume a fairly constant amount of CPU and bandwidth. Turn speaker forwarding off if you don't need it.\
Some applications will also repaint their windows unnecessarily. If you don't use them, try minimizing their windows.
### Why does the clipboard keep flashing? Why is clipboard synchronization unreliable?
Make sure that no other tool is also doing clipboard synchronization. Avoid clipboard managers at all cost.
Expand Down Expand Up @@ -65,7 +65,7 @@ Always start your applications with `xpra start --start=APP` and not `DISPLAY=:N

## Network
### How can I allow multiple users to connect through a single port?
Use the [proxy server](./Usage/Proxy-Server.md).
Use the [proxy server](Usage/Proxy-Server.md).
### How can I use an SSH key with MS Windows clients?
If your SSH key is not detected and used correctly by default, you may want to use `pageant`: [putty FAQ: How do I use public keys](http://www.chiark.greenend.org.uk/~sgtatham/putty/faq.html#faq-options) and tell xpra to use putty: `--ssh=plink`.

Expand All @@ -89,11 +89,11 @@ Use `machinectl shell --uid=username` instead of `su` / `sudo`.
* "`Failed to open the uinput device: Permission denied`" - you do not have the permissions required for opening the `/dev/uinput` device
### "`found an existing window manager on screen ...`"
Xpra is a window manager, you cannot run two window managers on the same X11 display at the same time.\
If you want to forward a whole desktop, including its window manager, see [desktop mode](./Usage/Desktop.md), otherwise stop the other window manager.
If you want to forward a whole desktop, including its window manager, see [desktop mode](Usage/Desktop.md), otherwise stop the other window manager.
### "`cannot register our notification forwarder ...`"
The xpra server was started from a GUI session which already had a dbus instance and a notification daemon, notifications forwarding cannot be enabled.
### "DPI set to NN x NN (wanted MM x MM), you may experience scaling problems, such as huge or small fonts, etc - to fix this issue, try the dpi switch, or use a patched Xorg dummy driver"
The vfb command in use does not preserve DPI settings. You may want to switch to using a patched [Xdummy](./Usage/Xdummy.md).
The vfb command in use does not preserve DPI settings. You may want to switch to using a patched [Xdummy](Usage/Xdummy.md).
### "`xpra [errno 2] no such file or directory`" when connecting via ssh.
Xpra is not installed on the remote host.
### X11 keyboard warnings: `Unsupported high keycode XXX for name <INNN> ignored`
Expand Down
2 changes: 1 addition & 1 deletion docs/Features/Audio.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# ![sound](../images/icons/sound.png) Audio

Unless you disable audio forwarding, you can start and stop it from the [system tray](./System-Tray.md) at any time.
Unless you disable audio forwarding, you can start and stop it from the [system tray](System-Tray.md) at any time.

The client and server will negotiate which codec to use. The most widely tested and supported codecs are [opus](http://opus-codec.org/), [vorbis](http://www.vorbis.com/), [flac](https://xiph.org/flac/) and mp3.

Expand Down
2 changes: 1 addition & 1 deletion docs/Features/DPI.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Xpra synchronizes the DPI from the client to the server, so that applications will render with the correct settings and "look right" on the client.
This may affect fonts, window sizes, cursors sizes, etc.

See also: [image depth](./Image-Depth.md)
See also: [image depth](Image-Depth.md)

## Important caveats:
* support varies greatly depending on the operating system and version, desktop environment, number of monitors attached and their resolution, etc
Expand Down
10 changes: 5 additions & 5 deletions docs/Features/Display.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# Display Settings

## Display Characteristics
* [Image Depth](./Image-Depth.md)
* [DPI](./DPI.md)
* [Image Depth](Image-Depth.md)
* [DPI](DPI.md)
* [Client OpenGL](../Usage/Client-OpenGL.md)
* [Server OpenGL](../Usage/OpenGL.md)
* [Xdummy](../Usage/Xdummy.md)
* [Encodings](../Usage/Encodings.md)

## See also
* [Keyboard](./Keyboard.md)
* [System tray](./System-Tray.md)
* [Notifications](./Notifications.md)
* [Keyboard](Keyboard.md)
* [System tray](System-Tray.md)
* [Notifications](Notifications.md)
2 changes: 1 addition & 1 deletion docs/Features/File-Transfers.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# ![Upload](../images/icons/upload.png) File Transfers

This feature shares most of the code with [printer forwarding](./Printing.md).
This feature shares most of the code with [printer forwarding](Printing.md).

This is not meant to replace a network filesystem, it is only there to facilitate the transfer of individual files between the client and server.

Expand Down
2 changes: 1 addition & 1 deletion docs/Features/Image-Depth.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Testing that high bit depth is actually in use can be tricky, for that the `xpra
* with versions older than 4.1, 30-bit rendering is only supported in the [opengl enabled client](../Usage/Client-OpenGL.md), and only the `rgb` encoding will preserve high bit depth
* 16-bit mode has no real native encoders and so the pixels are often upsampled to 24-bit before compression which is wasteful
* 8-bit mode is not optimized at all
* see also [DPI](./DPI.md)
* see also [DPI](DPI.md)

## Feature links
* [#1445](https://github.com/Xpra-org/xpra/issues/1445): 8-bit server support
Expand Down
2 changes: 1 addition & 1 deletion docs/Features/Keyboard.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ The exact key `#` stands for varies by platform and can be overriden in configur

In the Xpra Keyboard Shortcuts window, the `#` placeholder is named as "Prefix:":

![The Xpra Keyboard Shortcuts window as of v5.0.5-r27 in Ubuntu 20.04](./Keyboard-Shortcut-Window.png "Xpra Keyboard Shortcuts Window in Ubuntu 20.04")
![The Xpra Keyboard Shortcuts window as of v5.0.5-r27 in Ubuntu 20.04](Keyboard-Shortcut-Window.png "Xpra Keyboard Shortcuts Window in Ubuntu 20.04")

## Common Issues
* When connecting over high latency links, use the `--no-keyboard-sync` option to prevent keys from repeating.
Expand Down
2 changes: 1 addition & 1 deletion docs/Features/Printing.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

This feature allows printers connected to the client to show as virtual printers on the server so that printing can transparently be forwarded back to the client's printer(s).

This functionality shares most of the code with the [file transfers](./File-Transfers.md), as the print job is first rendered to a file before being sent to the client.
This functionality shares most of the code with the [file transfers](File-Transfers.md), as the print job is first rendered to a file before being sent to the client.

## Installation and platform support
* MS Windows and MacOS clients should work out of the box
Expand Down
22 changes: 11 additions & 11 deletions docs/Features/README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
# Features

## Device Forwarding
* [Audio](./Audio.md) : speaker and microphone
* [Printers](./Printing.md)
* [Webcams](./Webcam.md)
* [Keyboard](./Keyboard.md)
* [Audio](Audio.md) : speaker and microphone
* [Printers](Printing.md)
* [Webcams](Webcam.md)
* [Keyboard](Keyboard.md)

## Data Synchronization
* [Clipboard](./Clipboard.md)
* [File transfers](./File-Transfers.md)
* [System tray](./System-Tray.md)
* [Notifications](./Notifications.md)
* [Clipboard](Clipboard.md)
* [File transfers](File-Transfers.md)
* [System tray](System-Tray.md)
* [Notifications](Notifications.md)

## [Display Characteristics](./Display.md)
* [Image Depth](./Image-Depth.md)
* [DPI](./DPI.md)
## [Display Characteristics](Display.md)
* [Image Depth](Image-Depth.md)
* [DPI](DPI.md)


## See also
Expand Down
4 changes: 2 additions & 2 deletions docs/Network/AES.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Use this option if you can securely distribute the AES key to each client.\
It is somewhat similar to [SSL](./SSL.md) mode with a self-signed certificate.
It is somewhat similar to [SSL](SSL.md) mode with a self-signed certificate.

Xpra's AES [encryption](./Encryption.md) layer uses the [python cryptography](https://pypi.python.org/pypi/cryptography) library to encrypt the network packets with [AES-256 - Advanced Encryption Standard](http://en.wikipedia.org/wiki/Advanced_Encryption_Standard) in [CBC - Cipher Block Chaining](http://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#Cipher-block_chaining_.28CBC.29), [GCM - Galois/Counter Mode](https://en.wikipedia.org/wiki/Galois/Counter_Mode), [CTR - Counter Mode](https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#Counter_(CTR)) or [CFB - Cipher_feedback](https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#Cipher_feedback_(CFB)).
Xpra's AES [encryption](Encryption.md) layer uses the [python cryptography](https://pypi.python.org/pypi/cryptography) library to encrypt the network packets with [AES-256 - Advanced Encryption Standard](http://en.wikipedia.org/wiki/Advanced_Encryption_Standard) in [CBC - Cipher Block Chaining](http://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#Cipher-block_chaining_.28CBC.29), [GCM - Galois/Counter Mode](https://en.wikipedia.org/wiki/Galois/Counter_Mode), [CTR - Counter Mode](https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#Counter_(CTR)) or [CFB - Cipher_feedback](https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation#Cipher_feedback_(CFB)).

The encryption key can be stored in a keyfile or specified using the `keydata` socket option. If neither is present and an authentication module was used, the password will be used as key data.\
The key data is stretched using [PBKDF2](http://en.wikipedia.org/wiki/PBKDF2)(Password-Based Key Derivation Function 2).\
Expand Down
10 changes: 5 additions & 5 deletions docs/Network/Encryption.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# ![Authentication](../images/icons/authentication.png) Encryption

Access to Xpra's sessions over `TCP`, `websocket` and unix domain sockets (see [network](./README.md)) can be protected using [authentication modules](../Usage/Authentication.md) but those do not protect the network connection itself from man in the middle attacks.
Access to Xpra's sessions over `TCP`, `websocket` and unix domain sockets (see [network](README.md)) can be protected using [authentication modules](../Usage/Authentication.md) but those do not protect the network connection itself from man in the middle attacks.

For that, you need to use one of these three options:
* [TLS](./SSL.md)
* [AES](./AES.md)
* [SSH](./SSH.md)
* [TLS](SSL.md)
* [AES](AES.md)
* [SSH](SSH.md)


[QUIC](QUIC.md) connections must use [TLS](./SSL.md).
[QUIC](QUIC.md) connections must use [TLS](SSL.md).

---

Expand Down
2 changes: 1 addition & 1 deletion docs/Network/Protocol.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ The _protocol flags_ is an 8-bit bitmask value. \
It must contain the value `16` for `rencodeplus` packet data. Other values are no longer supported. \
This value can then be ORed with:
* `8` to set the `flush` flag which notifies the packet layer that there aren't any other packets immediately following this one
* `2` to set the `cipher` flag for [AES encrypted packets](./AES.md)
* `2` to set the `cipher` flag for [AES encrypted packets](AES.md)

### Compression Level

Expand Down
6 changes: 3 additions & 3 deletions docs/Network/QUIC.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# ![QUIC](../images/icons/quic.png) QUIC Transport

See also [network](./README.md)
See also [network](README.md)

***

Expand All @@ -10,8 +10,8 @@ The [xpra.org RPM repositories](https://github.com/Xpra-org/xpra/wiki/Download)
for running QUIC servers and clients, namely `aioquic` and its dependencies.

## SSL Options
SSL encryption is built into the QUIC protocol, so you need to provide the same
configuration options as [SSL](./SSL.md).
SSL encryption is built into the QUIC protocol, so you need to provide the same
configuration options as [SSL](SSL.md).

## Notes
* QUIC is UDP based, you need to open the UDP port of your choosing on your firewall.
Expand Down
14 changes: 7 additions & 7 deletions docs/Network/README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,24 @@
# ![Network](../images/icons/connect.png) Network

See also: [protocol](./Protocol.md), [authentication](../Usage/Authentication.md), [encryption](./Encryption.md) and [multicast DNS](./Multicast-DNS.md)
See also: [protocol](Protocol.md), [authentication](../Usage/Authentication.md), [encryption](Encryption.md) and [multicast DNS](Multicast-DNS.md)

## Connection Types
| Type | Bind option | Availability | Information |
|----------------------|--------------|------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------|
| `TCP` | `bind-tcp` | All |
| [QUIC](./QUIC.md) | `bind-quic` | All |
| [SSL](./SSL.md) | `bind-ssl` | All |
| [SSH](./SSH.md) | `bind-ssh` | All |
| [QUIC](QUIC.md) | `bind-quic` | All |
| [SSL](SSL.md) | `bind-ssl` | All |
| [SSH](SSH.md) | `bind-ssh` | All |
| `WebSocket` | `bind-ws` | All |
| `Secure WebSocket` | `bind-wss` | All |
| `RFB` | `bind-rfb` | [desktop](../Usage/Desktop.md) and [shadow](../Usage/Shadow.md) servers only | Allows VNC clients to connect |
| `unix domain socket` | `bind` | Posix | Local connections or via [SSH](./SSH.md) |
| `unix domain socket` | `bind` | Posix | Local connections or via [SSH](SSH.md) |
| `named-pipe` | `bind` | MS Windows | [#1150](https://github.com/Xpra-org/xpra/issues/1150) |
| `vsock` | `bind-vsock` | Linux | host - guest virtual machines connections - see [#983](https://github.com/Xpra-org/xpra/issues/983) |

`TCP` sockets can also be upgraded transparently to (`Secure`) `WebSocket`, `SSL`, `SSH` and `RFB`, so a single `TCP` port can support 6 different protocols automatically.\
Unencrypted modes like plain-`TCP` and plain-`WebSocket` can also be secured with [AES](./AES.md).\
All the sockets that can be accessed via a network connection (all but `vsock` and `named-pipe`) will usually be published via [multicast DNS](./Multicast-DNS.md). On Posix, `unix-domain-sockets` are exposed as `SSH` as we assume that a local SSH server is always available.
Unencrypted modes like plain-`TCP` and plain-`WebSocket` can also be secured with [AES](AES.md).\
All the sockets that can be accessed via a network connection (all but `vsock` and `named-pipe`) will usually be published via [multicast DNS](Multicast-DNS.md). On Posix, `unix-domain-sockets` are exposed as `SSH` as we assume that a local SSH server is always available.

By default, local unix domain sockets (`--bind=auto` which is the default) also create [`abstract sockets`](https://github.com/Xpra-org/xpra/issues/4098), use `--bind=noabstract` if needed.

Expand Down
2 changes: 1 addition & 1 deletion docs/Network/SSH.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# ![SSH](../images/icons/ssh.png) SSH Transport

See also [network](./README.md)
See also [network](README.md)

***

Expand Down
4 changes: 2 additions & 2 deletions docs/Network/SSL.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ Once a server is configured for `SSL` - usually by adding the `--ssl-cert` optio

The same way, any `ws` sockets specified with the `bind-ws` option can then be upgraded to `wss`.

This allows a single port to be used with multiple protocols (including also [SSH](./SSH.md)), which can more easily go through some firewalls and may be required by some network policies. Client certificates can also be used for authentication.
This allows a single port to be used with multiple protocols (including also [SSH](SSH.md)), which can more easily go through some firewalls and may be required by some network policies. Client certificates can also be used for authentication.

### SSL options
There are many options to configure and certificates to deal with.
Expand Down Expand Up @@ -73,7 +73,7 @@ For detailed instructions on using your own CA, click on:
See [The Most Dangerous Code in the World: Validating SSL Certificates in Non-Browser Software](https://www.cs.utexas.edu/~shmat/shmat_ccs12.pdf) and [Beware of Unverified TLS Certificates in PHP & Python](https://blog.sucuri.net/2016/03/beware-unverified-tls-certificates-php-python.html). \
See also: [Fallout from the Python certificate verification change](https://lwn.net/Articles/666353/).

Since the server certificate will not be signed by any recognized certificate authorities, you will need to send the verification data to the client via some other means... This will not be handled by xpra, it simply cannot be. (same as the AES key, at which point... you might as well use [AES](./AES)?)
Since the server certificate will not be signed by any recognized certificate authorities, you will need to send the verification data to the client via some other means... This will not be handled by xpra, it simply cannot be. (same as the AES key, at which point... you might as well use [AES](AES)?)
```
# generate your CA key and certificate:
openssl genrsa -out ca.key 4096
Expand Down
Loading

0 comments on commit 60b13d7

Please sign in to comment.