The setup on Fedora compared to Debian differs in the SELinux permissions I had to adjust. But besides that, the workflow is the same.

1. Download Linux drivers from the Brother home page (links bellow)

2. Install the drivers and fix SELinux permissions by running following commands:

$ sudo dnf install ql550lpr-1.0.1-0.i386.rpm
$ sudo dnf install ql550cupswrapper-1.0.1-0.i386.rpm
$ sudo setsebool -P domain_can_mmap_files 1

The reason I had to fix SELinux was following error I was experiencing when trying to print:

$ sudo ausearch -m avc,user_avc,selinux_err,user_selinux_err
fedora audit[16017]: AVC avc:  denied  { execmem } for  pid=16017 comm="brcupsconfpt1"

Point your browser to http://localhost:631/ if you need the CUPS management console.

Brother offers templates for LibreOffice, so don't forget to download their "P-touch Vorlagen für Linux Office Applikationen" from the support page as well.


sudo dnf install{free/fedora/rpmfusion-free,nonfree/fedora/rpmfusion-nonfree}-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install gstreamer1-libav gstreamer1-plugins-ugly unrar compat-ffmpeg28 ffmpeg-libs

You should reboot afterwards.

P.S. The above didn't work in zsh. You need to run it within a bash shell.


Install Docker CE

sudo dnf -y install dnf-plugins-core
sudo dnf config-manager \\n --add-repo \\n
sudo dnf install docker-ce docker-ce-cli
sudo systemctl start docker
sudo systemctl status docker

sudo groupadd docker
sudo usermod -aG docker $USER newgrp docker
sudo systemctl enable docker

Fix this error:

docker: Error response from daemon: OCI runtime create failed: container_linux.go:346: starting container process caused "process_linux.go:297: applying cgroup configuration for process caused \"open /sys/fs/cgroup/docker/cpuset.cpus.effective: no such file or directory\"": unknown.

sudo grubby --update-kernel=ALL --args="systemd.unified_cgroup_hierarchy=0" sudo reboot

Then re-test

docker run hello-world

Use - available on Windows, Mac and Linux.

Install Docker on a Debian 9 machine

$ sudo apt-get update
$ sudo apt-get install \
     apt-transport-https \
     ca-certificates \
     curl \
     gnupg2 \
$ curl -fsSL | sudo apt-key add -
$ sudo add-apt-repository \
   "deb [arch=amd64] \
   $(lsb_release -cs) \
$ sudo apt-get update
$ sudo apt-get install docker-ce
$ sudo gpasswd -a $USER docker

$ newgrp docker



In case you are tired of thinking of new passwords you can use a little nice program called pwgen.

Get the program in case you don't have it:

$ sudo apt-get install pwgen
$ pwgen -sy 13 1

-> generate a secret password containing special characters which is 13 chars in lenght. The 1 at the end tells the program how many passwords you need.

An another option you might find useful is this website:

Starting points:

The steps I took:

1. Create new VM
In KVM Front End (2 cores, 3096MB, 30GB HDD), boot from the Arch Linux image (you need to download an ISO image for that)
2. Boot into Arch
3. Partition table:
$ parted /dev/sda mklabel gpt
$ parted /dev/sda
> mkpart primary 1MiB 2MiB
> set 1 bios_grub on
> mkpart primary 2MiB 100%
> q
4. Get the file system ready:
$ mkfs -t ext4 /dev/sda2
$ mount /dev/sda2 /mnt
5. Install the basics
$ pacstrap -i /mnt base
6. Generate fstab
$ genfstab -U -p /mnt >> /mnt/etc/fstab
7. Set locales and timezone
$ arch-chroot /mnt
$ nano /etc/locale.gen
Uncomment the line with your locales and save the file.
$ echo LANG=de_DE.UTF-8 > /etc/locale.conf
In my case I choose German.
$ export LANG=de_DE.UTF-8
$ locale-gen
$ nano /etc/vconsole.conf
In my case I'm using German keyboard layout
$ ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
$ hwclock --systohc
8. Set password for root
$ passwd root
9. Install grub and os-prober
$ pacman -S grub os-prober
$ grub-install /dev/sda --target=i386-pc
$ grub-mkconfig -o /boot/grub/grub.cfg
9 Exit arch-chroot and restart
$ exit
$ shutdown -r now
10. Fix network
a) When I rebootet after the steps above taken, the network was broken - there was no network configuration within Arch. I'm using Virtual Network 'default': NAT and  rtl8139 as device model as my virtual network configuration (Hypervisor standard).
b) In order to figure out the IP address of the VM container so I can configure the ehternet settings, I had to start my other working VM: Ubuntu 17.10. Here, running ip addr will show the IP address (in my case By running traceroute I figured out which gateway IP to use ( in my case).
c) With this information I went back to Arch VM and adjusted my network settings:
$ cp /etc/netctl/examples/ethernet-static /etc/netctl
$ nano /etc/netctl/ethernet-static
Address=('' '')
Save the file, quit nano.
$ ip link set dev ens3 down
$ netctl start ethernet-static
$ netctl enable ethernet-static
The network access should work now. Test with:
$ ping

From here on, you can continue configuring your Arch as you wish. It's a good idea to create an another user first, add this user to sudoers and continue working as this user.

We've got some lovely landscape around us. Here some photographs from 2017.

When switching from Mac OS X to Linux, OpenShot is a great alternative to iMovie.

In order to install it under Debian 9 (the official repository contains Version 1.4.3-1.2) I was performing following steps:

 $ wget
 $ sudo mkdir /opt/openshot && cd /opt/openshot
 $ cp /home/martin/tmp/downloads/OpenShot-v2.4.1-x86_64.AppImage .
 $ chmod +x OpenShot-v2.4.1-x86_64.AppImage
 $ cd /usr/bin
 $ sudo ln -s /opt/openshot/OpenShot-v2.4.1-x86_64.AppImage openshot


Firtst, you download the app image. I'm using a tmp folder in my home dir. Second, I'm installing programs in /opt and then symlink from /usr/bin to the executables. Some people would rather use /usr/local/bin but as long as the path is in your $PATH you can install it wherever you want.

That's it. First time you run OpenShot it asks you if you want to create a desktop link (a link within your menu).

Recently I run into Spacevim which is a great vim distribution for vim. For me it felt first more like a ready-to-go IDE. But it's essentially a "layer" activated with the SPACE key above the normal vim functionality. When hitting the SPACE key further navigation is being displayed allowing you get around the included functionality fast.

I've got vim 8.0 (2016 Sep 12, compiled Sep 30 2017 18:21:38) installed.

After I've installed Spacevim I got an following error message which I wanted to get rid off:

Error message: [ SpaceVim ] [ Error ] Can not set language to en_US.utf8

martin at debian in ~ 12:06
> vim
[ SpaceVim ] [12:06:07] [ Error ] Can not set language to en_US.utf8
Betätigen Sie die EINGABETASTE oder geben Sie einen Befehl ein

I'm running Debian 9 with german locales:

> locale -a

Besides that vim didn't come with python3 support.

Fix: enable en_US.utf on your machine

SpaceVim uses English internally and for this it requires you to have en_US.utf8 available. For me, in order to do that, I had to edit my /etc/locale.gen (uncomment the line containing en_US.UTF-8 UTF-8) and then run sudo locale-gen in order to generate the locales. Running locale -a after that should show now en_US.utf8 besides de_DE.utf8.

Fix to enable +python3 feature

Instead to build vim from sources as recommended on different pages, I had to install the packages vim-gtk, vim-gtk3, vim-gnome. Simply run:

sudo apt-get install vim-gtk vim-gtk3 vim-gnome


But I'm admitting I'm not 100% sure if all three are really required. But the problem is gone.