added wine configs and installation (not tested)
This commit is contained in:
commit
931df6cc9a
|
|
@ -0,0 +1,32 @@
|
|||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is.
|
||||
|
||||
**To Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
|
||||
**Expected behavior**
|
||||
A clear and concise description of what you expected to happen.
|
||||
|
||||
**Screenshots**
|
||||
If applicable, add screenshots to help explain your problem.
|
||||
|
||||
**Versions (please complete the following information):**
|
||||
- OS: [e.g. Ubuntu 18.04]
|
||||
- image tag [e.g. develop]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Is your feature request related to a problem? Please describe.**
|
||||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
||||
|
||||
**Describe the solution you'd like**
|
||||
A clear and concise description of what you want to happen.
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
A clear and concise description of any alternative solutions or features you've considered.
|
||||
|
||||
**Additional context**
|
||||
Add any other context or screenshots about the feature request here.
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
# Built with arch: amd64 flavor: lxde image: ubuntu:18.04
|
||||
# Built with arch: amd64 flavor: lxde image: ubuntu:20.04
|
||||
#
|
||||
################################################################################
|
||||
# base system
|
||||
################################################################################
|
||||
|
||||
FROM ubuntu:18.04 as system
|
||||
FROM ubuntu:20.04 as system
|
||||
|
||||
|
||||
|
||||
|
|
@ -24,16 +24,22 @@ RUN apt update \
|
|||
&& apt autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
# install debs error if combine together
|
||||
RUN add-apt-repository -y ppa:fcwu-tw/apps \
|
||||
&& apt update \
|
||||
RUN apt update \
|
||||
&& apt install -y --no-install-recommends --allow-unauthenticated \
|
||||
xvfb x11vnc=0.9.16-1 \
|
||||
vim-tiny firefox chromium-browser ttf-ubuntu-font-family ttf-wqy-zenhei \
|
||||
&& add-apt-repository -r ppa:fcwu-tw/apps \
|
||||
xvfb x11vnc \
|
||||
vim-tiny firefox ttf-ubuntu-font-family ttf-wqy-zenhei \
|
||||
&& apt autoclean -y \
|
||||
&& apt autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN apt update \
|
||||
&& apt install -y gpg-agent \
|
||||
&& curl -LO https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \
|
||||
&& (dpkg -i ./google-chrome-stable_current_amd64.deb || apt-get install -fy) \
|
||||
&& curl -sSL https://dl.google.com/linux/linux_signing_key.pub | apt-key add \
|
||||
&& rm google-chrome-stable_current_amd64.deb \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN apt update \
|
||||
&& apt install -y --no-install-recommends --allow-unauthenticated \
|
||||
lxde gtk2-engines-murrine gnome-themes-standard gtk2-engines-pixbuf gtk2-engines-murrine arc-theme \
|
||||
|
|
@ -41,6 +47,16 @@ RUN apt update \
|
|||
&& apt autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ADD https://dl.winehq.org/wine-builds/winehq.key /Release.key
|
||||
|
||||
RUN echo "deb http://dl.winehq.org/wine-builds/ubuntu/ xenial main" >> /etc/apt/sources.list && \
|
||||
apt-key add Release.key && \
|
||||
dpkg --add-architecture i386 && \
|
||||
apt-get update && \
|
||||
apt-get install -y --install-recommends apt-utils winehq-devel && \
|
||||
rm -rf /var/lib/apt/lists/* /Release.key
|
||||
|
||||
ENV WINEARCH win32
|
||||
|
||||
# Additional packages require ~600MB
|
||||
# libreoffice pinta language-pack-zh-hant language-pack-gnome-zh-hant firefox-locale-zh-hant libreoffice-l10n-zh-tw
|
||||
|
|
@ -62,8 +78,9 @@ RUN apt update \
|
|||
COPY rootfs/usr/local/lib/web/backend/requirements.txt /tmp/
|
||||
RUN apt-get update \
|
||||
&& dpkg-query -W -f='${Package}\n' > /tmp/a.txt \
|
||||
&& apt-get install -y python-pip python-dev build-essential \
|
||||
&& pip install setuptools wheel && pip install -r /tmp/requirements.txt \
|
||||
&& apt-get install -y python3-pip python3-dev build-essential \
|
||||
&& pip3 install setuptools wheel && pip3 install -r /tmp/requirements.txt \
|
||||
&& ln -s /usr/bin/python3 /usr/local/bin/python \
|
||||
&& dpkg-query -W -f='${Package}\n' > /tmp/b.txt \
|
||||
&& apt-get remove -y `diff --changed-group-format='%>' --unchanged-group-format='' /tmp/a.txt /tmp/b.txt | xargs` \
|
||||
&& apt-get autoclean -y \
|
||||
|
|
@ -75,7 +92,7 @@ RUN apt-get update \
|
|||
################################################################################
|
||||
# builder
|
||||
################################################################################
|
||||
FROM ubuntu:18.04 as builder
|
||||
FROM ubuntu:20.04 as builder
|
||||
|
||||
|
||||
RUN sed -i 's#http://archive.ubuntu.com/ubuntu/#mirror://mirrors.ubuntu.com/mirrors.txt#' /etc/apt/sources.list;
|
||||
|
|
@ -85,7 +102,7 @@ RUN apt-get update \
|
|||
&& apt-get install -y --no-install-recommends curl ca-certificates gnupg patch
|
||||
|
||||
# nodejs
|
||||
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - \
|
||||
RUN curl -sL https://deb.nodesource.com/setup_12.x | bash - \
|
||||
&& apt-get install -y nodejs
|
||||
|
||||
# yarn
|
||||
|
|
@ -99,6 +116,7 @@ COPY web /src/web
|
|||
RUN cd /src/web \
|
||||
&& yarn \
|
||||
&& yarn build
|
||||
RUN sed -i 's#app/locale/#novnc/app/locale/#' /src/web/dist/static/novnc/app/ui.js
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -12,7 +12,11 @@ COPY --from=amd64 /usr/bin/qemu-aarch64-static /usr/bin/
|
|||
|
||||
|
||||
|
||||
<<<<<<< HEAD
|
||||
RUN sed -i 's#http://archive.ubuntu.com/ubuntu/#mirror://mirrors.ubuntu.com/mirrors.txt#' /etc/apt/sources.list;
|
||||
=======
|
||||
RUN sed -i 's#http://archive.ubuntu.com/ubuntu/#mirror://mirrors.ubuntu.com/mirrors.txt#' /etc/apt/sources.list;
|
||||
>>>>>>> develop
|
||||
|
||||
|
||||
# built-in packages
|
||||
|
|
@ -44,8 +48,13 @@ RUN apt update \
|
|||
&& apt autoclean -y \
|
||||
&& apt autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
<<<<<<< HEAD
|
||||
|
||||
|
||||
=======
|
||||
|
||||
|
||||
>>>>>>> develop
|
||||
# Additional packages require ~600MB
|
||||
# libreoffice pinta language-pack-zh-hant language-pack-gnome-zh-hant firefox-locale-zh-hant libreoffice-l10n-zh-tw
|
||||
|
||||
|
|
@ -78,14 +87,22 @@ RUN apt-get update \
|
|||
FROM ubuntu:18.04 as builder
|
||||
|
||||
|
||||
<<<<<<< HEAD
|
||||
RUN sed -i 's#http://archive.ubuntu.com/ubuntu/#mirror://mirrors.ubuntu.com/mirrors.txt#' /etc/apt/sources.list;
|
||||
=======
|
||||
RUN sed -i 's#http://archive.ubuntu.com/ubuntu/#mirror://mirrors.ubuntu.com/mirrors.txt#' /etc/apt/sources.list;
|
||||
>>>>>>> develop
|
||||
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y --no-install-recommends curl ca-certificates gnupg patch
|
||||
|
||||
# nodejs
|
||||
<<<<<<< HEAD
|
||||
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - \
|
||||
=======
|
||||
RUN curl -sL https://deb.nodesource.com/setup_12.x | bash - \
|
||||
>>>>>>> develop
|
||||
&& apt-get install -y nodejs
|
||||
|
||||
# yarn
|
||||
|
|
@ -99,6 +116,10 @@ COPY web /src/web
|
|||
RUN cd /src/web \
|
||||
&& yarn \
|
||||
&& npm run build
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
RUN sed -i 's#app/locale/#novnc/app/locale/#' /src/web/dist/static/novnc/app/ui.js
|
||||
>>>>>>> develop
|
||||
|
||||
|
||||
RUN cd /src/web/dist/static/novnc && patch -p0 < /src/web/novnc-armhf-1.patch
|
||||
|
|
|
|||
|
|
@ -85,7 +85,7 @@ RUN apt-get update \
|
|||
&& apt-get install -y --no-install-recommends curl ca-certificates gnupg patch
|
||||
|
||||
# nodejs
|
||||
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - \
|
||||
RUN curl -sL https://deb.nodesource.com/setup_12.x | bash - \
|
||||
&& apt-get install -y nodejs
|
||||
|
||||
# yarn
|
||||
|
|
@ -98,8 +98,8 @@ RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
|
|||
COPY web /src/web
|
||||
RUN cd /src/web \
|
||||
&& yarn \
|
||||
&& npm run build
|
||||
|
||||
&& yarn run build
|
||||
RUN sed -i 's#app/locale/#novnc/app/locale/#' /src/web/dist/static/novnc/app/ui.js
|
||||
|
||||
RUN cd /src/web/dist/static/novnc && patch -p0 < /src/web/novnc-armhf-1.patch
|
||||
|
||||
|
|
|
|||
|
|
@ -28,45 +28,38 @@ RUN apt update \
|
|||
&& apt autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
# install debs error if combine together
|
||||
RUN add-apt-repository -y ppa:fcwu-tw/apps \
|
||||
&& apt update \
|
||||
RUN apt update \
|
||||
&& apt install -y --no-install-recommends --allow-unauthenticated \
|
||||
xvfb x11vnc=0.9.16-1 \
|
||||
{%for package in addon_packages%}{{package}} {%endfor%} \
|
||||
&& add-apt-repository -r ppa:fcwu-tw/apps \
|
||||
xvfb x11vnc \
|
||||
vim-tiny firefox ttf-ubuntu-font-family ttf-wqy-zenhei \
|
||||
&& apt autoclean -y \
|
||||
&& apt autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
RUN apt update \
|
||||
&& apt install -y gpg-agent \
|
||||
&& curl -LO https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb \
|
||||
&& (dpkg -i ./google-chrome-stable_current_amd64.deb || apt-get install -fy) \
|
||||
&& curl -sSL https://dl.google.com/linux/linux_signing_key.pub | apt-key add \
|
||||
&& rm google-chrome-stable_current_amd64.deb \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
{%if desktop == "lxde" %}
|
||||
{%endif%}
|
||||
{%if desktop == "lxqt" %}
|
||||
{%endif%}
|
||||
{%if desktop == "xfce4" %}
|
||||
{%endif%}
|
||||
RUN apt update \
|
||||
&& apt install -y --no-install-recommends --allow-unauthenticated \
|
||||
lxde gtk2-engines-murrine gnome-themes-standard gtk2-engines-pixbuf gtk2-engines-murrine arc-theme \
|
||||
&& apt autoclean -y \
|
||||
&& apt autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
{%endif%}
|
||||
{%if desktop == "lxqt" %}
|
||||
RUN apt update \
|
||||
&& apt install -y --no-install-recommends --allow-unauthenticated \
|
||||
lxqt openbox gtk2-engines-murrine gnome-themes-standard gtk2-engines-pixbuf arc-theme \
|
||||
&& apt autoclean -y \
|
||||
&& apt autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
{%endif%}
|
||||
{%if desktop == "xfce4" %}
|
||||
RUN apt update \
|
||||
&& apt install -y --no-install-recommends --allow-unauthenticated \
|
||||
xubuntu-desktop \
|
||||
&& apt autoclean -y \
|
||||
&& apt autoremove -y \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
{%endif%}
|
||||
# Additional packages require ~600MB
|
||||
# libreoffice pinta language-pack-zh-hant language-pack-gnome-zh-hant firefox-locale-zh-hant libreoffice-l10n-zh-tw
|
||||
|
||||
# tini for subreap
|
||||
# tini to fix subreap
|
||||
ARG TINI_VERSION=v0.18.0
|
||||
ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini-{{arch}} /bin/tini
|
||||
ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /bin/tini
|
||||
RUN chmod +x /bin/tini
|
||||
|
||||
# ffmpeg
|
||||
|
|
@ -77,13 +70,13 @@ RUN apt update \
|
|||
&& mkdir /usr/local/ffmpeg \
|
||||
&& ln -s /usr/bin/ffmpeg /usr/local/ffmpeg/ffmpeg
|
||||
|
||||
|
||||
# python library
|
||||
COPY rootfs/usr/local/lib/web/backend/requirements.txt /tmp/
|
||||
RUN apt-get update \
|
||||
&& dpkg-query -W -f='${Package}\n' > /tmp/a.txt \
|
||||
&& apt-get install -y python-pip python-dev build-essential \
|
||||
&& pip install setuptools wheel && pip install -r /tmp/requirements.txt \
|
||||
&& apt-get install -y python3-pip python3-dev build-essential \
|
||||
&& pip3 install setuptools wheel && pip3 install -r /tmp/requirements.txt \
|
||||
&& ln -s /usr/bin/python3 /usr/local/bin/python \
|
||||
&& dpkg-query -W -f='${Package}\n' > /tmp/b.txt \
|
||||
&& apt-get remove -y `diff --changed-group-format='%>' --unchanged-group-format='' /tmp/a.txt /tmp/b.txt | xargs` \
|
||||
&& apt-get autoclean -y \
|
||||
|
|
@ -105,7 +98,7 @@ RUN apt-get update \
|
|||
&& apt-get install -y --no-install-recommends curl ca-certificates gnupg patch
|
||||
|
||||
# nodejs
|
||||
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash - \
|
||||
RUN curl -sL https://deb.nodesource.com/setup_12.x | bash - \
|
||||
&& apt-get install -y nodejs
|
||||
|
||||
# yarn
|
||||
|
|
@ -119,6 +112,7 @@ COPY web /src/web
|
|||
RUN cd /src/web \
|
||||
&& yarn \
|
||||
&& yarn build
|
||||
RUN sed -i 's#app/locale/#novnc/app/locale/#' /src/web/dist/static/novnc/app/ui.js
|
||||
|
||||
{%if arch == "armhf"%}
|
||||
RUN cd /src/web/dist/static/novnc && patch -p0 < /src/web/novnc-armhf-1.patch
|
||||
|
|
|
|||
6
Makefile
6
Makefile
|
|
@ -4,7 +4,8 @@
|
|||
REPO ?= dorowu/ubuntu-desktop-lxde-vnc
|
||||
TAG ?= latest
|
||||
# you can choose other base image versions
|
||||
IMAGE ?= ubuntu:18.04
|
||||
IMAGE ?= ubuntu:20.04
|
||||
# IMAGE ?= nvidia/cuda:10.1-cudnn7-devel-ubuntu18.04
|
||||
# choose from supported flavors (see available ones in ./flavors/*.yml)
|
||||
FLAVOR ?= lxde
|
||||
# armhf or amd64
|
||||
|
|
@ -20,13 +21,14 @@ build: $(templates)
|
|||
# Test run the container
|
||||
# the local dir will be mounted under /src read-only
|
||||
run:
|
||||
docker run --rm \
|
||||
docker run --privileged --rm \
|
||||
-p 6080:80 -p 6081:443 \
|
||||
-v ${PWD}:/src:ro \
|
||||
-e USER=doro -e PASSWORD=mypassword \
|
||||
-e ALSADEV=hw:2,0 \
|
||||
-e SSL_PORT=443 \
|
||||
-e RELATIVE_URL_ROOT=approot \
|
||||
-e OPENBOX_ARGS="--startup /usr/bin/galculator" \
|
||||
-v ${PWD}/ssl:/etc/nginx/ssl \
|
||||
--device /dev/snd \
|
||||
--name ubuntu-desktop-lxde-test \
|
||||
|
|
|
|||
92
README.md
92
README.md
|
|
@ -1,17 +1,33 @@
|
|||
docker-ubuntu-vnc-desktop
|
||||
=========================
|
||||
# docker-ubuntu-vnc-desktop
|
||||
|
||||
[](https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc/)
|
||||
[](https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc/)
|
||||
|
||||
Docker image to provide HTML5 VNC interface to access Ubuntu 16.04 LXDE desktop environment.
|
||||
docker-ubuntu-vnc-desktop is a Docker image to provide web VNC interface to access Ubuntu LXDE/LxQT desktop environment.
|
||||
|
||||
Quick Start
|
||||
-------------------------
|
||||
<!-- @import "[TOC]" {cmd="toc" depthFrom=2 depthTo=2 orderedList=false} -->
|
||||
|
||||
<!-- code_chunk_output -->
|
||||
|
||||
- [Quick Start](#quick-start)
|
||||
- [VNC Viewer](#vnc-viewer)
|
||||
- [HTTP Base Authentication](#http-base-authentication)
|
||||
- [SSL](#ssl)
|
||||
- [Screen Resolution](#screen-resolution)
|
||||
- [Default Desktop User](#default-desktop-user)
|
||||
- [Deploy to a subdirectory (relative url root)](#deploy-to-a-subdirectory-relative-url-root)
|
||||
- [Sound (Preview version and Linux only)](#sound-preview-version-and-linux-only)
|
||||
- [Generate Dockerfile from jinja template](#generate-dockerfile-from-jinja-template)
|
||||
- [Troubleshooting and FAQ](#troubleshooting-and-faq)
|
||||
- [License](#license)
|
||||
|
||||
<!-- /code_chunk_output -->
|
||||
|
||||
## Quick Start
|
||||
|
||||
Run the docker container and access with port `6080`
|
||||
|
||||
```
|
||||
```shell
|
||||
docker run -p 6080:80 -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||
```
|
||||
|
||||
|
|
@ -19,100 +35,95 @@ Browse http://127.0.0.1:6080/
|
|||
|
||||
<img src="https://raw.github.com/fcwu/docker-ubuntu-vnc-desktop/master/screenshots/lxde.png?v1" width=700/>
|
||||
|
||||
**Ubuntu Version**
|
||||
### Ubuntu Flavors
|
||||
|
||||
Choose your favorite Ubuntu version with [tags](https://hub.docker.com/r/dorowu/ubuntu-desktop-lxde-vnc/tags/)
|
||||
|
||||
- bionic: Ubuntu 18.04 (latest)
|
||||
- focal: Ubuntu 20.04 (latest)
|
||||
- focal-lxqt: Ubuntu 20.04 LXQt
|
||||
- bionic: Ubuntu 18.04
|
||||
- bionic-lxqt: Ubuntu 18.04 LXQt
|
||||
- xenial: Ubuntu 16.04
|
||||
- trusty: Ubuntu 14.04
|
||||
- xenial: Ubuntu 16.04 (deprecated)
|
||||
- trusty: Ubuntu 14.04 (deprecated)
|
||||
|
||||
VNC Viewer
|
||||
------------------
|
||||
## VNC Viewer
|
||||
|
||||
Forward VNC service port 5900 to host by
|
||||
|
||||
```
|
||||
```shell
|
||||
docker run -p 6080:80 -p 5900:5900 -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||
```
|
||||
|
||||
Now, open the vnc viewer and connect to port 5900. If you would like to protect vnc service by password, set environment variable `VNC_PASSWORD`, for example
|
||||
|
||||
```
|
||||
```shell
|
||||
docker run -p 6080:80 -p 5900:5900 -e VNC_PASSWORD=mypassword -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||
```
|
||||
|
||||
A prompt will ask password either in the browser or vnc viewer.
|
||||
|
||||
HTTP Base Authentication
|
||||
---------------------------
|
||||
## HTTP Base Authentication
|
||||
|
||||
This image provides base access authentication of HTTP via `HTTP_PASSWORD`
|
||||
|
||||
```
|
||||
```shell
|
||||
docker run -p 6080:80 -e HTTP_PASSWORD=mypassword -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||
```
|
||||
|
||||
SSL
|
||||
--------------------
|
||||
## SSL
|
||||
|
||||
To connect with SSL, generate self signed SSL certificate first if you don't have it
|
||||
|
||||
```
|
||||
```shell
|
||||
mkdir -p ssl
|
||||
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ssl/nginx.key -out ssl/nginx.crt
|
||||
```
|
||||
|
||||
Specify SSL port by `SSL_PORT`, certificate path to `/etc/nginx/ssl`, and forward it to 6081
|
||||
|
||||
```
|
||||
```shell
|
||||
docker run -p 6081:443 -e SSL_PORT=443 -v ${PWD}/ssl:/etc/nginx/ssl -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||
```
|
||||
|
||||
Screen Resolution
|
||||
------------------
|
||||
## Screen Resolution
|
||||
|
||||
The Resolution of virtual desktop adapts browser window size when first connecting the server. You may choose a fixed resolution by passing `RESOLUTION` environment variable, for example
|
||||
|
||||
```
|
||||
```shell
|
||||
docker run -p 6080:80 -e RESOLUTION=1920x1080 -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||
```
|
||||
|
||||
Default Desktop User
|
||||
--------------------
|
||||
## Default Desktop User
|
||||
|
||||
The default user is `root`. You may change the user and password respectively by `USER` and `PASSWORD` environment variable, for example,
|
||||
|
||||
```
|
||||
```shell
|
||||
docker run -p 6080:80 -e USER=doro -e PASSWORD=password -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc
|
||||
```
|
||||
|
||||
Deploy to a subdirectory (relative url root)
|
||||
--------------------------------------------
|
||||
## Deploy to a subdirectory (relative url root)
|
||||
|
||||
You may deploy this application to a subdirectory, for example `/some-prefix/`. You then can access application by `http://127.0.0.1:6080/some-prefix/`. This can be specified using the `RELATIVE_URL_ROOT` configuration option like this
|
||||
|
||||
```
|
||||
```shell
|
||||
docker run -p 6080:80 -e RELATIVE_URL_ROOT=some-prefix dorowu/ubuntu-desktop-lxde-vnc
|
||||
```
|
||||
|
||||
NOTE: this variable should not have any leading and trailing splash (/)
|
||||
|
||||
Sound (Preview version and Linux only)
|
||||
--------------------------------------
|
||||
## Sound (Preview version and Linux only)
|
||||
|
||||
It only works in Linux.
|
||||
|
||||
First of all, insert kernel module `snd-aloop` and specify `2` as the index of sound loop device
|
||||
|
||||
```
|
||||
```shell
|
||||
sudo modprobe snd-aloop index=2
|
||||
```
|
||||
|
||||
Start the container
|
||||
|
||||
```
|
||||
```shell
|
||||
docker run -it --rm -p 6080:80 --device /dev/snd -e ALSADEV=hw:2,0 dorowu/ubuntu-desktop-lxde-vnc
|
||||
```
|
||||
|
||||
|
|
@ -125,8 +136,9 @@ Following is the screen capture of these operations. Turn on your sound at the e
|
|||
[](http://www.youtube.com/watch?v=Kv9FGClP1-k)
|
||||
|
||||
|
||||
Generate Dockerfile from jinja template
|
||||
-------------------
|
||||
## Generate Dockerfile from jinja template
|
||||
|
||||
WARNING: Deprecated
|
||||
|
||||
Dockerfile and configuration can be generated by template.
|
||||
|
||||
|
|
@ -138,17 +150,15 @@ Dockerfile and configuration can be generated by template.
|
|||
|
||||
Dockerfile and configuration are re-generate if they do not exist. Or you may force to re-generate by removing them with the command `make clean`.
|
||||
|
||||
Troubleshooting and FAQ
|
||||
==================
|
||||
## Troubleshooting and FAQ
|
||||
|
||||
1. boot2docker connection issue, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/2
|
||||
2. Multi-language supports, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/80
|
||||
3. Autostart, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/85
|
||||
3. Autostart, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/85#issuecomment-466778407
|
||||
4. x11vnc arguments(multiptr), https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/101
|
||||
5. firefox/chrome crash (/dev/shm), https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/112
|
||||
6. resize display size without destroying container, https://github.com/fcwu/docker-ubuntu-vnc-desktop/issues/115#issuecomment-522426037
|
||||
|
||||
License
|
||||
==================
|
||||
## License
|
||||
|
||||
See the LICENSE file for details.
|
||||
|
|
|
|||
|
|
@ -13,28 +13,30 @@ server {
|
|||
root /usr/local/lib/web/frontend/;
|
||||
index index.html index.htm;
|
||||
|
||||
location ~ /api/ {
|
||||
try_files $uri @api;
|
||||
}
|
||||
|
||||
location ~ /resize$ {
|
||||
try_files $uri @api;
|
||||
}
|
||||
|
||||
#_RELATIVE_URL_ROOT_location /_RELATIVE_URL_ROOT_/ {
|
||||
#_RELATIVE_URL_ROOT_ rewrite /_RELATIVE_URL_ROOT_/(.*) /$1 break;
|
||||
#_RELATIVE_URL_ROOT_ root /usr/local/lib/web/frontend/;
|
||||
#_RELATIVE_URL_ROOT_}
|
||||
|
||||
location ~ /websockify$ {
|
||||
location ~ .*/(api/.*|websockify) {
|
||||
try_files $uri @api$http_upgrade;
|
||||
}
|
||||
|
||||
location / {
|
||||
rewrite /approot/(.*) /$1 break;
|
||||
root /usr/local/lib/web/frontend/;
|
||||
}
|
||||
|
||||
location @apiwebsocket {
|
||||
#_RELATIVE_URL_ROOT_rewrite /_RELATIVE_URL_ROOT_/(.*) $1 break;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_buffering off;
|
||||
proxy_connect_timeout 7d;
|
||||
proxy_send_timeout 7d;
|
||||
proxy_read_timeout 7d;
|
||||
proxy_buffering off;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_pass http://127.0.0.1:6081;
|
||||
}
|
||||
|
||||
|
|
@ -43,8 +45,8 @@ server {
|
|||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $remote_addr;
|
||||
proxy_set_header Host $host;
|
||||
proxy_pass http://127.0.0.1:6079;
|
||||
max_ranges 0;
|
||||
proxy_pass http://127.0.0.1:6079;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ priority=15
|
|||
directory=%HOME%
|
||||
command=/usr/bin/pcmanfm --desktop --profile LXDE
|
||||
user=%USER%
|
||||
stopwaitsecs=3
|
||||
environment=DISPLAY=":1",HOME="%HOME%",USER="%USER%"
|
||||
|
||||
|
||||
|
|
@ -52,7 +53,7 @@ stopsignal=KILL
|
|||
|
||||
[program:x11vnc]
|
||||
priority=20
|
||||
command=x11vnc -display :1 -xkb -forever -shared -repeat
|
||||
command=x11vnc -display :1 -xkb -forever -shared -repeat -capslock
|
||||
|
||||
[program:novnc]
|
||||
priority=25
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ stopsignal=KILL
|
|||
|
||||
[program:x11vnc]
|
||||
priority=20
|
||||
command=x11vnc -display :1 -xkb -forever -shared -repeat
|
||||
command=x11vnc -display :1 -xkb -forever -shared -repeat -capslock
|
||||
|
||||
[program:novnc]
|
||||
priority=25
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ if [ -n "$X11VNC_ARGS" ]; then
|
|||
fi
|
||||
|
||||
if [ -n "$OPENBOX_ARGS" ]; then
|
||||
sed -i "s#^command=/usr/bin/openbox.*#& ${OPENBOX_ARGS}#" /etc/supervisor/conf.d/supervisord.conf
|
||||
sed -i "s#^command=/usr/bin/openbox\$#& ${OPENBOX_ARGS}#" /etc/supervisor/conf.d/supervisord.conf
|
||||
fi
|
||||
|
||||
if [ -n "$RESOLUTION" ]; then
|
||||
|
|
@ -31,15 +31,18 @@ if [ "$USER" != "root" ]; then
|
|||
fi
|
||||
HOME=/home/$USER
|
||||
echo "$USER:$PASSWORD" | chpasswd
|
||||
cp -r /root/{.gtkrc-2.0,.asoundrc} ${HOME}
|
||||
cp -r /root/{.config,.gtkrc-2.0,.asoundrc} ${HOME}
|
||||
chown -R $USER:$USER ${HOME}
|
||||
[ -d "/dev/snd" ] && chgrp -R adm /dev/snd
|
||||
fi
|
||||
sed -i -e "s|%USER%|$USER|" -e "s|%HOME%|$HOME|" /etc/supervisor/conf.d/supervisord.conf
|
||||
|
||||
# home folder
|
||||
if [ ! -x "$HOME/.config/pcmanfm/LXDE/" ]; then
|
||||
mkdir -p $HOME/.config/pcmanfm/LXDE/
|
||||
ln -sf /usr/local/share/doro-lxde-wallpapers/desktop-items-0.conf $HOME/.config/pcmanfm/LXDE/
|
||||
chown -R $USER:$USER $HOME
|
||||
fi
|
||||
|
||||
# nginx workers
|
||||
sed -i 's|worker_processes .*|worker_processes 1;|' /etc/nginx/nginx.conf
|
||||
|
|
@ -69,4 +72,4 @@ fi
|
|||
PASSWORD=
|
||||
HTTP_PASSWORD=
|
||||
|
||||
exec /bin/tini -- /usr/bin/supervisord -n -c /etc/supervisor/supervisord.conf
|
||||
exec /bin/tini -- supervisord -n -c /etc/supervisor/supervisord.conf
|
||||
|
|
|
|||
|
|
@ -5,4 +5,4 @@ if [ -z "$ALSADEV" ]; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
exec /usr/bin/chromium-browser --no-sandbox --alsa-output-device="$ALSADEV" "$@"
|
||||
exec /usr/bin/google-chrome --no-sandbox --alsa-output-device="$ALSADEV" "$@"
|
||||
|
|
|
|||
|
|
@ -1,20 +1,19 @@
|
|||
backports.ssl-match-hostname==3.5.0.1
|
||||
certifi==2018.1.18
|
||||
backports.ssl-match-hostname==3.7.0.1
|
||||
certifi==2019.9.11
|
||||
chardet==3.0.4
|
||||
click==6.7
|
||||
Flask==1.0.2
|
||||
Click==7.0
|
||||
Flask==1.1.1
|
||||
Flask-Login==0.4.1
|
||||
gevent==1.2.2
|
||||
gevent==1.4.0
|
||||
gevent-websocket==0.10.1
|
||||
greenlet==0.4.13
|
||||
idna==2.6
|
||||
itsdangerous==0.24
|
||||
Jinja2==2.10
|
||||
MarkupSafe==1.0
|
||||
meld3==1.0.2
|
||||
requests==2.20.1
|
||||
six==1.11.0
|
||||
supervisor==3.2.0
|
||||
urllib3==1.23
|
||||
greenlet==0.4.15
|
||||
idna==2.8
|
||||
itsdangerous==1.1.0
|
||||
Jinja2==2.10.3
|
||||
MarkupSafe==1.1.1
|
||||
meld3==2.0.0
|
||||
requests==2.22.0
|
||||
six==1.12.0
|
||||
urllib3==1.25.6
|
||||
websocket-client==0.47.0
|
||||
Werkzeug==0.14.1
|
||||
Werkzeug==0.16.0
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env python
|
||||
#!/usr/bin/env python3
|
||||
from __future__ import (
|
||||
absolute_import, division, print_function, with_statement
|
||||
)
|
||||
|
|
@ -74,7 +74,7 @@ def main():
|
|||
|
||||
def run_server():
|
||||
import socket
|
||||
from gevent.wsgi import WSGIServer
|
||||
from gevent.pywsgi import WSGIServer
|
||||
from vnc.app import app
|
||||
|
||||
# websocket conflict: WebSocketHandler
|
||||
|
|
|
|||
|
|
@ -151,7 +151,7 @@ def liveflv():
|
|||
cmd,
|
||||
stdout=gsp.PIPE,
|
||||
stderr=gsp.PIPE,
|
||||
env={k: str(v) for k, v in xenvs.iteritems()},
|
||||
env={k: str(v) for k, v in xenvs.items()},
|
||||
)
|
||||
|
||||
def readerr(f):
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ class State(object):
|
|||
output = gsp.check_output([
|
||||
'supervisorctl', '-c', '/etc/supervisor/supervisord.conf',
|
||||
'status'
|
||||
])
|
||||
], encoding='UTF-8')
|
||||
for line in output.strip().split('\n'):
|
||||
if not line.startswith('web') and line.find('RUNNING') < 0:
|
||||
health = False
|
||||
|
|
@ -65,7 +65,7 @@ class State(object):
|
|||
'sed -i \'s#'
|
||||
'^exec /usr/bin/Xvfb.*$'
|
||||
'#'
|
||||
'exec /usr/bin/Xvfb :1 -screen 0 {}x{}x16'
|
||||
'exec /usr/bin/Xvfb :1 -screen 0 {}x{}x24'
|
||||
'#\' /usr/local/bin/xvfb.sh'
|
||||
).format(w, h), shell=True)
|
||||
self.size_changed_count += 1
|
||||
|
|
|
|||
|
|
@ -1,139 +1,221 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Chromium Web Browser Sound
|
||||
Name=Google Chrome Sound
|
||||
# Only KDE 4 seems to use GenericName, so we reuse the KDE strings.
|
||||
# From Ubuntu's language-pack-kde-XX-base packages, version 9.04-20090413.
|
||||
GenericName=Web Browser
|
||||
GenericName[ar]=متصفح الشبكة
|
||||
GenericName[ast]=Restolador web
|
||||
GenericName[bg]=Уеб браузър
|
||||
GenericName[bn]=ওয়েব ব্রাউজার
|
||||
GenericName[bs]=Web preglednik
|
||||
GenericName[ca]=Navegador web
|
||||
GenericName[ca@valencia]=Navegador web
|
||||
GenericName[cs]=WWW prohlížeč
|
||||
GenericName[da]=Browser
|
||||
GenericName[de]=Web-Browser
|
||||
GenericName[el]=Περιηγητής ιστού
|
||||
GenericName[en_AU]=Web Browser
|
||||
GenericName[en_GB]=Web Browser
|
||||
GenericName[eo]=Retfoliumilo
|
||||
GenericName[es]=Navegador web
|
||||
GenericName[et]=Veebibrauser
|
||||
GenericName[eu]=Web-nabigatzailea
|
||||
GenericName[fi]=WWW-selain
|
||||
GenericName[fil]=Web Browser
|
||||
GenericName[fr]=Navigateur Web
|
||||
GenericName[gl]=Navegador web
|
||||
GenericName[gu]=વેબ બ્રાઉઝર
|
||||
GenericName[he]=דפדפן אינטרנט
|
||||
GenericName[hi]=वेब ब्राउज़र
|
||||
GenericName[hr]=Web preglednik
|
||||
GenericName[hu]=Webböngésző
|
||||
GenericName[hy]=Ոստայն զննարկիչ
|
||||
GenericName[ia]=Navigator del Web
|
||||
GenericName[id]=Peramban Web
|
||||
GenericName[it]=Browser web
|
||||
GenericName[ja]=ウェブ・ブラウザ
|
||||
GenericName[ka]=ვებ ბრაუზერი
|
||||
GenericName[it]=Browser Web
|
||||
GenericName[ja]=ウェブブラウザ
|
||||
GenericName[kn]=ಜಾಲ ವೀಕ್ಷಕ
|
||||
GenericName[ko]=웹 브라우저
|
||||
GenericName[kw]=Peurel wias
|
||||
GenericName[lt]=Žiniatinklio naršyklė
|
||||
GenericName[lv]=Tīmekļa pārlūks
|
||||
GenericName[ml]=വെബ് ബ്രൌസര്
|
||||
GenericName[mr]=वेब ब्राऊजर
|
||||
GenericName[ms]=Pelayar Web
|
||||
GenericName[nb]=Nettleser
|
||||
GenericName[nl]=Webbrowser
|
||||
GenericName[or]=ଓ୍ବେବ ବ୍ରାଉଜର
|
||||
GenericName[pl]=Przeglądarka WWW
|
||||
GenericName[pt]=Navegador Web
|
||||
GenericName[pt_BR]=Navegador web
|
||||
GenericName[pt_BR]=Navegador da Internet
|
||||
GenericName[ro]=Navigator de Internet
|
||||
GenericName[ru]=Веб-браузер
|
||||
GenericName[sk]=WWW prehliadač
|
||||
GenericName[sl]=Spletni brskalnik
|
||||
GenericName[sr]=Интернет прегледник
|
||||
GenericName[sv]=Webbläsare
|
||||
GenericName[ta]=இணைய உலாவி
|
||||
GenericName[te]=మహాతల అన్వేషి
|
||||
GenericName[th]=เว็บเบราว์เซอร์
|
||||
GenericName[tr]=Web Tarayıcı
|
||||
GenericName[ug]=توركۆرگۈ
|
||||
GenericName[uk]=Навігатор Тенет
|
||||
GenericName[vi]=Bộ duyệt Web
|
||||
GenericName[zh_CN]=网页浏览器
|
||||
GenericName[zh_HK]=網頁瀏覽器
|
||||
GenericName[zh_TW]=網頁瀏覽器
|
||||
# Not translated in KDE, from Epiphany 2.26.1-0ubuntu1.
|
||||
GenericName[bn]=ওয়েব ব্রাউজার
|
||||
GenericName[fil]=Web Browser
|
||||
GenericName[hr]=Web preglednik
|
||||
GenericName[id]=Browser Web
|
||||
GenericName[or]=ଓ୍ବେବ ବ୍ରାଉଜର
|
||||
GenericName[sk]=WWW prehliadač
|
||||
GenericName[sr]=Интернет прегледник
|
||||
GenericName[te]=మహాతల అన్వేషి
|
||||
GenericName[vi]=Bộ duyệt Web
|
||||
# Gnome and KDE 3 uses Comment.
|
||||
Comment=Access the Internet
|
||||
Comment[ar]=الدخول إلى الإنترنت
|
||||
Comment[ast]=Accesu a Internet
|
||||
Comment[bg]=Достъп до интернет
|
||||
Comment[bn]=ইন্টারনেটে প্রবেশ করুন
|
||||
Comment[bs]=Pristup internetu
|
||||
Comment[ca]=Accediu a Internet
|
||||
Comment[ca@valencia]=Accediu a Internet
|
||||
Comment[bn]=ইন্টারনেটটি অ্যাক্সেস করুন
|
||||
Comment[ca]=Accedeix a Internet
|
||||
Comment[cs]=Přístup k internetu
|
||||
Comment[da]=Få adgang til internettet
|
||||
Comment[de]=Internetzugriff
|
||||
Comment[el]=Πρόσβαση στο Διαδίκτυο
|
||||
Comment[en_AU]=Access the Internet
|
||||
Comment[en_GB]=Access the Internet
|
||||
Comment[eo]=Akiri interreton
|
||||
Comment[es]=Acceda a Internet
|
||||
Comment[es]=Accede a Internet.
|
||||
Comment[et]=Pääs Internetti
|
||||
Comment[eu]=Sartu Internetera
|
||||
Comment[fi]=Käytä internetiä
|
||||
Comment[fil]=I-access ang Internet
|
||||
Comment[fr]=Accéder à Internet
|
||||
Comment[gl]=Acceda a Internet
|
||||
Comment[gu]=ઇંટરનેટ ઍક્સેસ કરો
|
||||
Comment[he]=גישה לאינטרנט
|
||||
Comment[he]=גישה אל האינטרנט
|
||||
Comment[hi]=इंटरनेट तक पहुंच स्थापित करें
|
||||
Comment[hr]=Pristupite Internetu
|
||||
Comment[hu]=Az internet elérése
|
||||
Comment[hy]=Մուտք համացանց
|
||||
Comment[ia]=Accede a le Interrete
|
||||
Comment[hr]=Pristup Internetu
|
||||
Comment[hu]=Internetelérés
|
||||
Comment[id]=Akses Internet
|
||||
Comment[it]=Accesso a Internet
|
||||
Comment[ja]=インターネットにアクセス
|
||||
Comment[ka]=ინტერნეტში შესვლა
|
||||
Comment[kn]=ಇಂಟರ್ನೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ
|
||||
Comment[ko]=인터넷에 연결합니다
|
||||
Comment[kw]=Hedhes an Kesrosweyth
|
||||
Comment[ko]=인터넷 연결
|
||||
Comment[lt]=Interneto prieiga
|
||||
Comment[lv]=Piekļūt internetam
|
||||
Comment[ml]=ഇന്റര്നെറ്റ് ആക്സസ് ചെയ്യുക
|
||||
Comment[mr]=इंटरनेटमध्ये प्रवेश करा
|
||||
Comment[ms]=Mengakses Internet
|
||||
Comment[nb]=Bruk internett
|
||||
Comment[nb]=Gå til Internett
|
||||
Comment[nl]=Verbinding maken met internet
|
||||
Comment[or]=ଇଣ୍ଟର୍ନେଟ୍ ପ୍ରବେଶ କରନ୍ତୁ
|
||||
Comment[pl]=Skorzystaj z internetu
|
||||
Comment[pt]=Aceder à Internet
|
||||
Comment[pt_BR]=Acessar a internet
|
||||
Comment[ro]=Accesați Internetul
|
||||
Comment[ro]=Accesaţi Internetul
|
||||
Comment[ru]=Доступ в Интернет
|
||||
Comment[sk]=Prístup do siete Internet
|
||||
Comment[sl]=Dostop do interneta
|
||||
Comment[sr]=Приступите Интернету
|
||||
Comment[sv]=Surfa på Internet
|
||||
Comment[sv]=Gå ut på Internet
|
||||
Comment[ta]=இணையத்தை அணுகுதல்
|
||||
Comment[te]=ఇంటర్నెట్ను ఆక్సెస్ చెయ్యండి
|
||||
Comment[th]=เข้าถึงอินเทอร์เน็ต
|
||||
Comment[tr]=İnternet'e erişin
|
||||
Comment[ug]=ئىنتېرنېت زىيارىتى
|
||||
Comment[uk]=Доступ до Інтернету
|
||||
Comment[vi]=Truy cập Internet
|
||||
Comment[zh_CN]=访问互联网
|
||||
Comment[zh_HK]=連線到網際網路
|
||||
Comment[zh_TW]=連線到網際網路
|
||||
Exec=/usr/local/bin/chromium-browser-sound.sh %U
|
||||
Terminal=false
|
||||
X-MultipleArgs=false
|
||||
Type=Application
|
||||
Icon=chromium-browser
|
||||
Categories=Network;WebBrowser;
|
||||
MimeType=text/html;text/xml;application/xhtml_xml;x-scheme-handler/http;x-scheme-handler/https;
|
||||
StartupNotify=true
|
||||
Actions=NewWindow;Incognito;TempProfile;
|
||||
X-AppInstall-Package=chromium-browser
|
||||
Terminal=false
|
||||
Icon=google-chrome
|
||||
Type=Application
|
||||
Categories=Network;WebBrowser;
|
||||
MimeType=application/pdf;application/rdf+xml;application/rss+xml;application/xhtml+xml;application/xhtml_xml;application/xml;image/gif;image/jpeg;image/png;image/webp;text/html;text/xml;x-scheme-handler/ftp;x-scheme-handler/http;x-scheme-handler/https;
|
||||
Actions=new-window;new-private-window;
|
||||
|
||||
[Desktop Action new-window]
|
||||
Name=New Window
|
||||
Name[am]=አዲስ መስኮት
|
||||
Name[ar]=نافذة جديدة
|
||||
Name[bg]=Нов прозорец
|
||||
Name[bn]=নতুন উইন্ডো
|
||||
Name[ca]=Finestra nova
|
||||
Name[cs]=Nové okno
|
||||
Name[da]=Nyt vindue
|
||||
Name[de]=Neues Fenster
|
||||
Name[el]=Νέο Παράθυρο
|
||||
Name[en_GB]=New Window
|
||||
Name[es]=Nueva ventana
|
||||
Name[et]=Uus aken
|
||||
Name[fa]=پنجره جدید
|
||||
Name[fi]=Uusi ikkuna
|
||||
Name[fil]=New Window
|
||||
Name[fr]=Nouvelle fenêtre
|
||||
Name[gu]=નવી વિંડો
|
||||
Name[hi]=नई विंडो
|
||||
Name[hr]=Novi prozor
|
||||
Name[hu]=Új ablak
|
||||
Name[id]=Jendela Baru
|
||||
Name[it]=Nuova finestra
|
||||
Name[iw]=חלון חדש
|
||||
Name[ja]=新規ウインドウ
|
||||
Name[kn]=ಹೊಸ ವಿಂಡೊ
|
||||
Name[ko]=새 창
|
||||
Name[lt]=Naujas langas
|
||||
Name[lv]=Jauns logs
|
||||
Name[ml]=പുതിയ വിന്ഡോ
|
||||
Name[mr]=नवीन विंडो
|
||||
Name[nl]=Nieuw venster
|
||||
Name[no]=Nytt vindu
|
||||
Name[pl]=Nowe okno
|
||||
Name[pt]=Nova janela
|
||||
Name[pt_BR]=Nova janela
|
||||
Name[ro]=Fereastră nouă
|
||||
Name[ru]=Новое окно
|
||||
Name[sk]=Nové okno
|
||||
Name[sl]=Novo okno
|
||||
Name[sr]=Нови прозор
|
||||
Name[sv]=Nytt fönster
|
||||
Name[sw]=Dirisha Jipya
|
||||
Name[ta]=புதிய சாளரம்
|
||||
Name[te]=క్రొత్త విండో
|
||||
Name[th]=หน้าต่างใหม่
|
||||
Name[tr]=Yeni Pencere
|
||||
Name[uk]=Нове вікно
|
||||
Name[vi]=Cửa sổ Mới
|
||||
Name[zh_CN]=新建窗口
|
||||
Name[zh_TW]=開新視窗
|
||||
Exec=/usr/bin/google-chrome-stable
|
||||
|
||||
[Desktop Action new-private-window]
|
||||
Name=New Incognito Window
|
||||
Name[ar]=نافذة جديدة للتصفح المتخفي
|
||||
Name[bg]=Нов прозорец „инкогнито“
|
||||
Name[bn]=নতুন ছদ্মবেশী উইন্ডো
|
||||
Name[ca]=Finestra d'incògnit nova
|
||||
Name[cs]=Nové anonymní okno
|
||||
Name[da]=Nyt inkognitovindue
|
||||
Name[de]=Neues Inkognito-Fenster
|
||||
Name[el]=Νέο παράθυρο για ανώνυμη περιήγηση
|
||||
Name[en_GB]=New Incognito window
|
||||
Name[es]=Nueva ventana de incógnito
|
||||
Name[et]=Uus inkognito aken
|
||||
Name[fa]=پنجره جدید حالت ناشناس
|
||||
Name[fi]=Uusi incognito-ikkuna
|
||||
Name[fil]=Bagong Incognito window
|
||||
Name[fr]=Nouvelle fenêtre de navigation privée
|
||||
Name[gu]=નવી છુપી વિંડો
|
||||
Name[hi]=नई गुप्त विंडो
|
||||
Name[hr]=Novi anoniman prozor
|
||||
Name[hu]=Új Inkognitóablak
|
||||
Name[id]=Jendela Penyamaran baru
|
||||
Name[it]=Nuova finestra di navigazione in incognito
|
||||
Name[iw]=חלון חדש לגלישה בסתר
|
||||
Name[ja]=新しいシークレット ウィンドウ
|
||||
Name[kn]=ಹೊಸ ಅಜ್ಞಾತ ವಿಂಡೋ
|
||||
Name[ko]=새 시크릿 창
|
||||
Name[lt]=Naujas inkognito langas
|
||||
Name[lv]=Jauns inkognito režīma logs
|
||||
Name[ml]=പുതിയ വേഷ പ്രച്ഛന്ന വിന്ഡോ
|
||||
Name[mr]=नवीन गुप्त विंडो
|
||||
Name[nl]=Nieuw incognitovenster
|
||||
Name[no]=Nytt inkognitovindu
|
||||
Name[pl]=Nowe okno incognito
|
||||
Name[pt]=Nova janela de navegação anónima
|
||||
Name[pt_BR]=Nova janela anônima
|
||||
Name[ro]=Fereastră nouă incognito
|
||||
Name[ru]=Новое окно в режиме инкогнито
|
||||
Name[sk]=Nové okno inkognito
|
||||
Name[sl]=Novo okno brez beleženja zgodovine
|
||||
Name[sr]=Нови прозор за прегледање без архивирања
|
||||
Name[sv]=Nytt inkognitofönster
|
||||
Name[ta]=புதிய மறைநிலைச் சாளரம்
|
||||
Name[te]=క్రొత్త అజ్ఞాత విండో
|
||||
Name[th]=หน้าต่างใหม่ที่ไม่ระบุตัวตน
|
||||
Name[tr]=Yeni Gizli pencere
|
||||
Name[uk]=Нове вікно в режимі анонімного перегляду
|
||||
Name[vi]=Cửa sổ ẩn danh mới
|
||||
Name[zh_CN]=新建隐身窗口
|
||||
Name[zh_TW]=新增無痕式視窗
|
||||
Exec=/usr/bin/google-chrome-stable --incognito
|
||||
|
|
|
|||
|
|
@ -136,7 +136,7 @@ export default {
|
|||
// console.trace()
|
||||
console.log(`connecting...`)
|
||||
this.errorMessage = ''
|
||||
let websockifyPath = 'websockify'
|
||||
let websockifyPath = location.pathname.substr(1) + 'websockify'
|
||||
if (force || this.vncState === 'stopped') {
|
||||
this.vncState = 'connecting'
|
||||
let hostname = window.location.hostname
|
||||
|
|
|
|||
1926
web/yarn.lock
1926
web/yarn.lock
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue