In this post we'll be using docker to preview the latest version of KDE Neon with Plasma 5.10, according to instructions contained in the following kde.org post:
sudo apt install docker.io xserver-xephyr
sudo usermod -aG docker $(whoami)
newgrp docker
docker pull kdeneon/plasma:dev-unstable
In this case I ran the commands and was greeted by the following error message(s):
sudo service docker start
Job for docker.socket failed.
See "systemctl status docker.socket" and "journalctl -xe" for details.
Failed to start docker.service: Unit docker.service is masked.
systemctl status docker.socket
● docker.socket - Docker Socket for the API
Loaded: loaded (/lib/systemd/system/docker.socket; enabled; vendor preset: enabled)
Active: inactive (dead) since Fri 2017-06-02 02:46:49 PDT; 24min ago
Listen: /var/run/docker.sock (Stream)
Jun 01 21:08:38 desktop systemd[1]: Starting Docker Socket for the API.
Jun 01 21:08:38 desktop systemd[1]: Listening on Docker Socket for the API.
Jun 02 02:46:49 desktop systemd[1]: Closed Docker Socket for the API.
Jun 02 03:10:56 desktop systemd[1]: docker.socket: Socket service docker.service not loaded, refusing.
Jun 02 03:10:56 desktop systemd[1]: Failed to listen on Docker Socket for the API.
After which point I began following the official docker install instructions:
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
ca-certificates is already the newest version (20160104ubuntu1).
apt-transport-https is already the newest version (1.3.5).
curl is already the newest version (7.50.1-1ubuntu1.1).
software-properties-common is already the newest version (0.96.24.7.2).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
It appears everything is updated and the required packages are present. We'll continue by adding Docker's official GPG key (as of 2017/06/02) with the following command according to their instructions:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
OK
and verify the key:
sudo apt-key fingerprint 0EBFCD88
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) <docker@docker.com>
sub rsa4096 2017-02-22 [S]
Setup the Docker Repository
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
Install the Most Recent Version of Docker From the Repository
sudo apt install docker-ce
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
bridge-utils containerd runc ubuntu-fan
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
docker.io
The following NEW packages will be installed:
docker-ce
0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
Need to get 21.0 MB of archives.
After this operation, 26.0 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 https://download.docker.com/linux/ubuntu yakkety/stable amd64 docker-ce amd64 17.03.1~ce-0~ubuntu-yakkety [21.0 MB]
Fetched 21.0 MB in 3s (5,259 kB/s)
(Reading database ... 228350 files and directories currently installed.)
Removing docker.io (1.12.6-0ubuntu1~16.10.1) ...
'/usr/share/docker.io/contrib/nuke-graph-directory.sh' -> '/var/lib/docker/nuke-graph-directory.sh'
Selecting previously unselected package docker-ce.
(Reading database ... 228261 files and directories currently installed.)
Preparing to unpack .../docker-ce_17.03.1~ce-0~ubuntu-yakkety_amd64.deb ...
Unpacking docker-ce (17.03.1~ce-0~ubuntu-yakkety) ...
Setting up docker-ce (17.03.1~ce-0~ubuntu-yakkety) ...
Installing new version of config file /etc/default/docker ...
Installing new version of config file /etc/init.d/docker ...
Installing new version of config file /etc/init/docker.conf ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for systemd (231-9ubuntu4) ...
Processing triggers for man-db (2.7.5-1) ...
Check You've Installed the Correct Docker Version
apt-cache madison docker-ce
docker-ce | 17.03.1~ce-0~ubuntu-yakkety | https://download.docker.com/linux/ubuntu yakkety/stable amd64 Packages
docker-ce | 17.03.0~ce-0~ubuntu-yakkety | https://download.docker.com/linux/ubuntu yakkety/stable amd64 Packages
Confirm Docker is Working Correctly by Running the 'Hello World' Image
sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
78445dd45222: Pull complete
Digest: sha256:c5515758d4c5e1e838e9cd307f6c6a0d620b5e07e6f927b07d05f6d12a1ac8d7
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker ID:
https://cloud.docker.com/
For more examples and ideas, visit:
https://docs.docker.com/engine/userguide/
At this point, we'll rejoin the initial project to install KDE Neon with Plasma 5.10 using Docker by re-attempting the following command from earlier:
docker pull kdeneon/plasma:dev-unstable
dev-unstable: Pulling from kdeneon/plasma
b6f892c0043b: Pull complete
55010f332b04: Pull complete
2955fb827c94: Pull complete
3deef3fcbd30: Pull complete
cf9722e506aa: Pull complete
5a001ba78576: Pull complete
34aaf99653d3: Pull complete
65cd72ea47fa: Pull complete
f1f7fa527cf9: Pull complete
Digest: sha256:0ad6066a0d990717ec38de66ec7e602e838a38771554c902cd163206df8ddf6a
Status: Downloaded newer image for kdeneon/plasma:dev-unstable
Scan through the requested file in the next step prior to running it by visiting it's URL:
https://cgit.kde.org/docker-neon.git/plain/neondocker/neondocker.rb.
Download neondocker.rb and Install the Required Ruby Gems
wget https://cgit.kde.org/docker-neon.git/plain/neondocker/neondocker.rb
chmod +x neondocker.rb
sudo gem install docker-api
Fetching: excon-0.56.0.gem (100%)
Successfully installed excon-0.56.0
Fetching: docker-api-1.33.4.gem (100%)
Successfully installed docker-api-1.33.4
Parsing documentation for excon-0.56.0
Installing ri documentation for excon-0.56.0
Parsing documentation for docker-api-1.33.4
Installing ri documentation for docker-api-1.33.4
Done installing documentation for excon, docker-api after 1 seconds
2 gems installed
Attempt to Run neondocker.rb
./neondocker.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h
Potentially need to install the ruby-dev
package:
sudo apt-get install ruby-dev
At this point everything worked! I executed the neondocker.rb
script again and the VM launched and I was presented with a fresh installation of KDE-Neon.
I was met with a bug after adjusting the settings for the Icon preview thumbnails. After selecting all of the displayed options and saving / applying, the desktop icons appeared to break. The system appears to be attempting to show a preview of the underlying icon folder, possibly, as you can see some plain text configuration directives that seem to have to do with the folder.
I ran the following according the kde.org instructions to attempt a Wayland session:
./neondocker.rb -wkap
Downloading image kdeneon/all:dev-unstable
Which did not seem to work. The VM window immediately closed after running the command. I did not debug the wayland attempt further.