From ecff6f53ba93acec49dd06b5b55ce44e75ff77d4 Mon Sep 17 00:00:00 2001 From: speidy Date: Wed, 21 Dec 2016 16:23:22 -0500 Subject: [PATCH] Add README.md --- Makefile.am | 1 + README.md | 125 ++++++++++++++++++++++++++++++++++++++++++++++++++++ readme.txt | 38 +--------------- 3 files changed, 127 insertions(+), 37 deletions(-) create mode 100644 README.md diff --git a/Makefile.am b/Makefile.am index a6ddaf1f..b1ee60a2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -3,6 +3,7 @@ AM_DISTCHECK_CONFIGURE_FLAGS = --without-systemdsystemunitdir EXTRA_DIST = \ COPYING \ + README.md \ astyle_config.as \ bootstrap \ coding_style.md \ diff --git a/README.md b/README.md new file mode 100644 index 00000000..7f6c5e72 --- /dev/null +++ b/README.md @@ -0,0 +1,125 @@ +[![Build Status](https://travis-ci.org/neutrinolabs/xrdp.svg?branch=devel)](https://travis-ci.org/neutrinolabs/xrdp) +[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/neutrinolabs/xrdp) +![Apache-License](https://img.shields.io/badge/License-Apache%202.0-blue.svg) + +*Current Version:* 0.9.1 + +# xrdp - an open source RDP server + +## Overview + +**xrdp** provides a graphical login to remote machines using Microsoft +Remote Desktop Protocol (RDP). xrdp accepts connections from a variety of +RDP clients: FreeRDP, rdesktop, NeutrinoRDP and Microsoft Remote Desktop +Client (for Windows, Mac OS, iOS and Android). + +RDP transport is encrypted using TLS by default. + +![demo](https://github.com/neutrinolabs/xrdp/raw/gh-pages/xrdp_demo.gif) + +## Features + +### Remote Desktop Access + + * Connect to a Linux desktop using RDP from anywhere (requires + [xorgxrdp](https://github.com/neutrinolabs/xorgxrdp) Xorg module) + * Reconnect to an existing session + * Session resizing + * RDP/VNC proxy (connect to another RDP/VNC server via xrdp) + +### Access to Remote Resources + * two-way clipboard transfer (text, bitmap, file) + * audio redirection + * drive redirection (mount local client drives on remote machine) + +## Quick Start + +Most Linux distributions should distribute the latest release of xrdp in their +repository. You would need xrdp and xorgxrdp packages for the best +experience. It is recommended that xrdp depends on xorgxrdp, so it should +be sufficient to install xrdp. If xorgxrdp is not provided, use Xvnc +server. + +### Ubuntu / Debian +```bash +apt-get install xrdp +``` + +### RedHat / CentOS / Fedora +```bash +yum install xrdp +``` + +## Environment + +**xrdp** primarily targets to GNU/Linux. Tested on x86, x86_64, SPARC and +PowerPC. + +xorgxrdp and RemoteFX Codec have special optimization for x86 and x86_64 using +SIMD instructions. + +FreeBSD is not a primary target of xrdp. It is working on FreeBSD except +for the drive redirection feature. + +Other operating systems such as Mac OS are not supported so far, but we +welcome your contributions. + +## Compiling + +See also https://github.com/neutrinolabs/xrdp/wiki#building-from-sources + +### Prerequisites + +To compile xrdp from the packaged sources, you need basic build tools - a +compiler (**gcc** or **clang**) and the **make** program. Additionally, +you would need **openssl-devel**, **pam-devel**, **libX11-devel**, +**libXfixes-devel**, **libXrandr-devel**. More additional software would +be needed depending on your configuration. + +To compile xrdp from a checked out git repository, you would additionally +need **autoconf**, **automake**, **libtool** and **pkgconfig**. + +### Get the source and build it + +If compiling from the packaged source, unpack the tarball and change to the +resulting directory. + +If compiling from a checked out repository, run `./bootstrap` first to +create `configure` and other required files. + +Then run following commands to compile and install xrdp: +``` +./configure +make +sudo make install +``` + +## Directory Structure + +``` +xrdp +├── common ------ common code +├── docs -------- documentation +├── fontdump ---- font dump for Windows +├── genkeymap --- keymap generator +├── instfiles --- installable data file +├── keygen ------ xrdp RSA key pair generator +├── libpainter -- painter library +├── librfxcodec - RFX codec library +├── libxrdp ----- core RDP protocol implementation +├── m4 ---------- Autoconf macros +├── mc ---------- media center module +├── neutrinordp - RDP client module for proxying RDP connections using NeutrinoRDP +├── pkgconfig --- pkg-config configuration +├── rdp --------- RDP client module for connecting to another RDP server +├── sesman ------ session manager for xrdp +├── tcutils ----- QT based utility program for thin clients +├── tests ------- tests for the code +├── vnc --------- VNC client module for xrdp +├── vrplayer ---- QT player redirecting video/audio to clients over xrdpvr channel +├── xorg -------- X11rdp, an Xorg backend for xrdp +├── xrdp -------- main server code +├── xrdpapi ----- virtual channel API +├── xrdpvr ------ API for playing media over RDP +└── xup --------- X11rdp and xorgxrdp client module +``` diff --git a/readme.txt b/readme.txt index f8abf3b6..b4a79af8 100644 --- a/readme.txt +++ b/readme.txt @@ -1,39 +1,3 @@ - xrdp 0.9.1 -Credits - This project is very much dependent on NeutrinoRDP, FreeRDP, rdesktop, and - the work of Matt Chapman and the NeutrinoRDP team members, of which I'm a - member. - - Mark from up 19.9 was the first to work with rdp server code. - -Tested with linux on i386, x64, sparc, and ppc. -I've got it compiling and working in windows with Borland free tools. -None of the sesman or Xserver stuff works in windows of course. - -xrdp directory is the main server code -vnc directory is a simple vnc client module for xrdp -sesman directory is a session manager for xrdp that uses Xvnc for the Xserver -libxrdp directory is a static library needed by xrdp -rdp is an rdp client module for connecting to another rdp server -xup is a module used to connect to an rdp specific X11 server -Xserver is the files needed to build an rdp specific X11 server -COPYING is the license file -design.txt is an attempt to explain the project design -coding_style.md describes the coding style for the project - -since version 0.5.0 we switch to autotools to build xrdp - -to build and install - -change to the xrdp directory and run -./bootstrap -./configure -make -then as root -make install - -see file-loc.txt to see what files are installed where - -Jay Sorg +The contents of this file has been moved to README.md