Neon/Docker: Difference between revisions

From KDE Community Wiki
(Improve wording and formatting)
m (Update screenshot showing KDE running in containers. Also swap the ruby install and the gem install command as the ruby install has to come before the gem install)
Line 3: Line 3:
Do you want to test KDE applications from master without installing KDE neon Dev Unstable edition?  Maybe you have Dev Unstable edition installed but want to develop on your stable branch?  Maybe you like your [https://en.wikipedia.org/wiki/Larswm larswm] setup but wonder if Plasma is the desktop for you and are looking for an easy way to test it out?  KDE neon Docker images are the solution to quickly give you access to use or develop another branch without reinstalling your system or spending hours compiling.
Do you want to test KDE applications from master without installing KDE neon Dev Unstable edition?  Maybe you have Dev Unstable edition installed but want to develop on your stable branch?  Maybe you like your [https://en.wikipedia.org/wiki/Larswm larswm] setup but wonder if Plasma is the desktop for you and are looking for an easy way to test it out?  KDE neon Docker images are the solution to quickly give you access to use or develop another branch without reinstalling your system or spending hours compiling.


https://c1.staticflickr.com/1/747/32111280196_9b2875a809_b.jpg
[[File:Screenshot 20211110 195707.png|KDE running in container images|1080px|center|]]


The above screenshot shows a computer running its normal Plasma desktop with three KDE neon Docker containers.  One is a full Plasma session of KDE neon User Edition, one is a full Plasma session of KDE neon Developer Unstable edition and one is a single app from Developer Stable edition running Okular.
The above screenshot shows a computer running its normal Plasma desktop with three KDE neon Docker containers.  One is a full Plasma session of KDE neon User Edition, one is a full Plasma session of KDE neon Developer Unstable edition and one is a single app from Developer Stable edition running Okular.
Line 48: Line 48:
wget https://invent.kde.org/packaging/docker-neon/-/raw/master/neondocker/neondocker.rb -O neondocker
wget https://invent.kde.org/packaging/docker-neon/-/raw/master/neondocker/neondocker.rb -O neondocker
chmod +x neondocker
chmod +x neondocker
sudo gem install --version '1.22.0' docker-api
sudo apt-get install ruby-dev
sudo apt-get install ruby-dev</nowiki>}}
sudo gem install --version '1.22.0' docker-api</nowiki>}}


By default it will run a full session inside a Xephyr window.
By default it will run a full session inside a Xephyr window.

Revision as of 01:27, 11 November 2021

KDE neon on Docker

Do you want to test KDE applications from master without installing KDE neon Dev Unstable edition? Maybe you have Dev Unstable edition installed but want to develop on your stable branch? Maybe you like your larswm setup but wonder if Plasma is the desktop for you and are looking for an easy way to test it out? KDE neon Docker images are the solution to quickly give you access to use or develop another branch without reinstalling your system or spending hours compiling.

The above screenshot shows a computer running its normal Plasma desktop with three KDE neon Docker containers. One is a full Plasma session of KDE neon User Edition, one is a full Plasma session of KDE neon Developer Unstable edition and one is a single app from Developer Stable edition running Okular.

KDE neon Docker Images comes in two variants each with the same Plasma editions as our archives. Plasma images (~2GB) come with the same software as our installable ISOs, Plasma and minimal applications. All Applications images (~4GB) come with all applications built on KDE neon. Note that all applications image is outdated.

Available flavours
Plasma minimal All applications
kdeneon/plasma:unstable kdeneon/all:unstable
kdeneon/plasma:testing kdeneon/all:testing
kdeneon/plasma:user kdeneon/all:user
kdeneon/plasma:plasma kdeneon/all:plasma
kdeneon/plasma:developer kdeneon/all:developer
kdeneon/plasma:plasma_lts kdeneon/all:plasma_lts

Default user is neon and password is blank. The user has password-free sudo access.

To give it a try first set up Docker as you would for your distro. For Ubuntu distros that means running:

sudo apt install docker.io xserver-xephyr
sudo usermod -aG docker $(whoami)
newgrp docker
systemctl unmask docker.service
systemctl unmask docker.socket
systemctl start docker.service

This will download the latest unstable image from Docker Hub:

docker pull kdeneon/plasma:unstable

The neondocker or x11docker [1] script lets you run Neon docker images easily, this is pre-installed on recent KDE neon installs but works on any distro

wget https://invent.kde.org/packaging/docker-neon/-/raw/master/neondocker/neondocker.rb -O neondocker
chmod +x neondocker
sudo apt-get install ruby-dev
sudo gem install --version '1.22.0' docker-api

By default it will run a full session inside a Xephyr window.

./neondocker

Or you can tell it to run a single app

./neondocker okular

This will give you a Bash prompt, you can code as you would on your host machine and run X apps. Type exit to quit, the ~/src directory will be preserved on your host machine.

For a Wayland session running in a window under either X or Wayland run. (This seems to stop any more X apps running though, spooky.)

./neondocker -w
  • For the container to persist after you have closed the window add -k
  • To update to the latest build add -p
  • To use the Neon All build which has more apps add -a
  • To run a different edition add -e unstable/plasma_lts

You can also commit your Docker images if you make changes you would like to come back to such as installing applications. For more information on using Docker see Docker Engine user guide.

For an interactive session where you have access to your coding directory ~/src run

xhost +
docker run -ti -v /tmp/.X11-unix:/tmp/.X11-unix -v ~/src:/home/neon/src -e DISPLAY=:0 kdeneon/plasma:unstable bash