Skip to content

Commit

Permalink
Release v5.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
mviereck committed Aug 20, 2018
1 parent d3bfce8 commit 557f8cb
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 15 deletions.
5 changes: 2 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.

Project website: https://github.com/mviereck/x11docker

## [Unreleased]
## [5.0.0](https://github.com/mviereck/x11docker/releases/tag/v5.0.0) - 2018-08-20
### Added
- Support of MSYS2, Cygwin and WSL on MS Windows.
[(#55)](https://github.com/mviereck/x11docker/issues/55)
Expand All @@ -20,7 +20,6 @@ Project website: https://github.com/mviereck/x11docker
[(#61)](https://github.com/mviereck/x11docker/issues/61)
- `--cachebasedir`: Set custom cache base directory. Replaces `--cachedir`.
- `--homebasedir`: Set base directory where to store folders for `--home`.

### Changed
- **API CHANGE**: Syntax changed for custom `DOCKER_RUN_OPTIONS`
[(#58)](https://github.com/mviereck/x11docker/issues/58). New:
Expand All @@ -43,6 +42,7 @@ Project website: https://github.com/mviereck/x11docker
- `--pulseaudio` allows optional argument `=tcp` or `=socket`.
Defaults to connection over shared socket on Linux and to TCP connection
on MS Windows. On Linux both modes are possible, on MS Windows TCP only.
- `--verbose`: takes optional argument `c` for colored output, eg `-vc`.
### Deprecated
- `--cachedir`: Use `--cachebasedir` instead.
### Removed
Expand Down Expand Up @@ -75,7 +75,6 @@ Project website: https://github.com/mviereck/x11docker
- `--xorg`: Allow running Xorg as root from within X
if `/etc/X11/Xwrapper.config` is not configured to allow it.
- `--xpra`, `--xpra-xwayland`: Set maximal `--quality 100`.
- `--verbose`: takes optional argument `c` for colored output, eg `-vc`.

### Fixed
- `--xpra`: Check for tty timeout had a bug that caused all clients
Expand Down
15 changes: 12 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ System changes in running containers are discarded after use.
- Restricts container capabilities to bare minimum.
- Container user is same as host user to avoid root in container.
- No dependencies inside of docker images.
- No obliging [dependencies](#dependencies) on host beside X and docker. Recommended: `nxagent` and `Xephyr`.
- No obliging [dependencies](#dependencies) on host beside X and docker. Recommended: `xpra` and `Xephyr`.
- [Wayland](#wayland) support.
- [Optional features](#options):
- [Persistent data storage](#shared-folders-and-home-in-container) with shared host folders and a persistant `HOME` in container.
Expand All @@ -30,7 +30,7 @@ System changes in running containers are discarded after use.
- [Language locale](#language-locales) creation.
- [Network setup](#network-setup) with [SSH](#ssh-x-forwarding), [VNC](#vnc) or [HTML5](#html5-web-applications) possible.
- Supports [init systems](#init-system) `tini`, `runit`, `openrc`, `SysVinit` and `systemd` in container.
- Developed on debian 9. Tested on fedora 28, CentOS 7, openSUSE 42.3, Ubuntu 18.04, Manjaro 17, Mageia 6 and Arch Linux.
- Developed on debian 9. Tested on fedora 28, CentOS 7, openSUSE 42.3, Ubuntu 18.04, Manjaro 17, Mageia 6 and Arch Linux. Runs also on MS Windows in [MSYS2, Cygwin and WSL](#msys2-cygwin-and-wsl-on-ms-windows).
- Easy to use. [Examples](#examples):
- `x11docker jess/cathode`
- `x11docker --desktop --size 320x240 x11docker/lxde`
Expand All @@ -50,7 +50,8 @@ General syntax:
```
To run a docker image with new X server (auto-choosing X server):
x11docker [OPTIONS] IMAGE [COMMAND]
x11docker [OPTIONS] -- "[DOCKER_RUN_OPTIONS]" IMAGE [COMMAND [ARG1 ARG2 ...]]
x11docker [OPTIONS] -- IMAGE [COMMAND [ARG1 ARG2 ...]]
x11docker [OPTIONS] -- DOCKER_RUN_OPTIONS -- IMAGE [COMMAND [ARG1 ARG2 ...]]
To run a host application on a new X server:
x11docker [OPTIONS] --exe COMMAND
x11docker [OPTIONS] --exe -- COMMAND [ARG1 ARG2 ...]
Expand Down Expand Up @@ -422,6 +423,14 @@ In another terminal, start VNC viewer with `vncviewer localhost:5910`.
See `man x11vnc` for many details and further infos.
Option `-noshm` disables shared memory (MIT-SHM). To allow shared memory, remove `-noshm` and use isolation breaking x11docker option `--hostipc`.

# MSYS2, Cygwin and WSL on MS Windows
x11docker runs on MS Windows in [MSYS2](https://www.msys2.org/), [Cygwin](https://www.cygwin.com/)
and [WSL (Windows subsystem for Linux)](https://docs.microsoft.com/en-us/windows/wsl/about).
- Install X server [`VcXsrv`](https://sourceforge.net/projects/vcxsrv/) on Windows into `C:/Program Files/VcXsrv` (option `--vcxsrv`).
- Cygwin/X also provides `Xwin` (option `--xwin`). Install `xinit` package in Cygwin.
- For sound with option `--pulseaudio` install Cygwin in `C:/cygwin64` with package `pulseaudio`. It runs in MSYS2 and WSL, too.
- Error messages like `./x11docker: line 2: $'\r': command not found` indicate a wrong line ending conversion from git. Run `dos2unix x11docker`.

# Simple but insecure alternative
There are short and simple but insecure alternatives for x11docker.
### Alternative for single applications
Expand Down
15 changes: 6 additions & 9 deletions x11docker
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
# Type 'x11docker --help' or scroll down to read usage information.
# More documentation at: https://github.com/mviereck/x11docker

Version="5.0.0-beta"
Version="5.0.0"

usage() { # --help: show usage information
echo "
Expand Down Expand Up @@ -5391,10 +5391,9 @@ exit 0' >> /etc/rc.local"
# start dbus daemon and dbus services
case $Dbusdaemon in
yes)
warning "Will run DBus system services as root in container.
echo 'warning "Will run DBus system services as root in container.
If the image contains malicious applications started by DBus service files,
they may abuse their root privileges and may try to break out of container."
they may abuse their root privileges and may try to break out of container."'
echo "verbose 'DBus: removing failing or useless services.'"
echo "for Line in \$(find /usr/share/dbus-1/system-services /usr/share/dbus-1/services -type f); do"
echo ' Name="$(cat $Line | grep Name= | cut -d= -f2)"'
Expand Down Expand Up @@ -6320,16 +6319,13 @@ $(tail $Compositorlogfile)")"
}
######### ToDo notes for development
todo() {
# --dbus-system: give up restricted setup?
# ISSUE nested x11docker setup: parent x11docker `--stderr` prints with big delays
# MSYS2/Cygwin/WSL:
# needs test:
# --pulseaudio
# --wayland: Nested setup in WSL with weston may work:
# --wayland: Nested setup in WSL with weston may work if socket sharing succeeds:
# x11docker --stderr --exe -- x11docker --wayland x11docker/xfce xfce4-terminal
# not implemented, but maybe possible:
# --wayland: create nested setup for WSL in X?
# --sharessh: socket sharing impossible, but maybe similar setup?
# impossible:
# --alsa
Expand All @@ -6338,17 +6334,18 @@ todo() {
# useless:
# --showpid1 (shows pid in docker VM)
# --group-add: compare host and container GID? warn if group misses in container, or create it?
# BUG x11docker/cde fails
# jess/cathode fails with xcb error, needs bug report
# --dbus-system: give up restricted setup?
# check xhost +localhost
# further checks of pam.d
# error message window in wayland fails: xterm: no display. should use konsole
# x11docker-gui: menu entry management? persistant command storage?
# --update: regard possible location in /opt
# BUG arch: issues with x11docker/fluxbox, background missing, sometimes no context menu. where is the difference?
# --group-add: compare host and container GID? warn if group misses in container, or create it?
# --weston/x: allow tty switch/option --vt if running as root?
# --systemd: try to avoid xhost +SI:localuser:$Benutzer, needed by deepin, does not recognice XAUTHORITY
Expand Down

0 comments on commit 557f8cb

Please sign in to comment.