Custom color scheme for KDE/Plasma

Customizing the KDE/Plasma color scheme can be stricky

Customizing the KDE/Plasma color scheme can be stricky

Sometimes I wish to create a custom color scheme, but not all the colors were used. For example widgets (like application starter and task bars) do not use the custom color scheme. Here are some solutions that may help:

Create a color scheme

Color schemes are stored in /usr/share/color-schemes/FooBar.color. To create a new one, just copy an existing one:

  • cp /usr/share/color-schemes/FooBar.color ~/.local/share/color-schemes/MyScheme.color

Customize color scheme

Now you have to fix the metadata of the scheme and customize the colors:

  • Metadata are in the MySchema.color at the button in the [General] section
  • Change the Name here

Now you can adjust the colors. KDE has a tool for that, just search for “Colors”, select your scheme and change the colors. Unfortunately the changes are written to a local files called ~/.config/kdeglobals, which is not your new color scheme. I just copied the content to my color scheme, so what I did was:

  • Use the KDE tool to customize colors (just search for “Colors”)
  • Copy color-relevant content from ~/.config/kdeglobals
  • Replace the old section in MySchema.color with the ones you just copied

All properties that can be set are listed here: https://hig.kde.org/style/color/dark.html

Create a desktop theme

(more…)

Fix Blender error amdgpu_query_info failed (-9)

After a downgrade of libdrm, Blender works like a charm.

After a downgrade of libdrm, Blender works like a charm.

Since I switched to Arch Linux with the xf86-video-amdgpu graphics driver for my AMD RX 570, blender crashes immediately after start. Also running as root or reinstalling the drivers didn’t help.

This error message occurs:

~ $ blender
amdgpu_device_initialize: amdgpu_query_info(ACCEL_WORKING) failed (-9)
Segmentation fault (core dumped)

If we look at the dump (either in /tmp/bmw27_gpu.crash.txt or /tmp/blender.crash.txt), it looks something like this:

# Blender 2.79 (sub 0), Commit date: 2018-05-26 21:51, Hash 32432d91bbe

# backtrace
blender(BLI_system_backtrace+0x34) [0x5607730d03f4]
blender(+0xb7b562) [0x56077265c562]
/usr/lib/libc.so.6(+0x37e00) [0x7f5b39807e00]
/usr/lib/libdrm_amdgpo.so.1(amdgpu_get_marketing_name+0xc) [0x7f5afcb35bdf] [...weitere Zeilen...]
(complete dump: pastebin)

The solution

The solution comes from a StackExchange user, who suggests a downgrade on the libdrm to version 2.4.93-1.

In Arch I just used the tool downgrade to do so:

  1. Install from the AUR with e.g. yay -S downgrade
  2. Find available versions: downgrade libdrm
  3. Pick a version and downgrade to it (for me 2.4.93-1 worked)

After that, everything worked like a charm.

Use Steam Play in Linux Mint 18.2 with AMD GPU

With Steam Play it's possible to play Windows games in Linux

With Steam Play it’s possible to play Windows games in Linux.

Users of the Linux Mint 18.4 distribution won’t have any problems to get latest driver for their AMD GPU. Users of the 18.2 version will have these problems, because there aren’t latest drivers available.

I show you how to install the latest drivers (18.30-641594 at the time I wrote this article) to finally play games using Steam Play.

My system

Every system is different, this is mine:

  • CPU: Intel Xeon E3-1231 v3
  • GPU: AMD Radeon RX570
  • Graphics driver before installation: amdgpu 17.40
  • Linux Mint 18.2
    • Kernel: 4.13.0-16

Download the drivers

I just went to the driver support site and downloaded the driver for my configuration. You’ll be redirected to a list with operation systems. Navigate to the Ubuntu x86 64-Bit section and you’ll find a part for Ubuntu 16.04.5 in there. When I went there, the version was 18.30. (more…)

Use Vim as a simple IDE

Vim already has all functionalities to use it as an IDE.

Vim already has all functionalities to use it as an IDE.

Everybody can install an IDE and use it, but how to use vim as an IDE? I’ll show you settings, shortcuts and features of vim, which turns it into an IDE without using plugins or magic, just plain vim features.

These are the features I’ll focus on:

  • Features out of the box:
    • Basic usages: Open, save, close, …
    • File explorer
    • Create tabs and use them
    • Split the window
  • Navigation in vim:
    • Find, replace, …
    • Jump (e.g. to the next occurrence, definition, …)
  • Build and run software
    • Debugging
  • Create own settings:
    • Line numbers, syntax highlighting, highlight cursor line, …
    • Auto completion in a drop-down menu

These are all adjustments to vim.

Basic usage

Even if you should be familiar with the modes in vim, here’re are some basic commands:

Open a file (without tabs): :e /path/to/file
Save a file: :w
Close a file: :q and without saving :q!
Show information on a command: :help command

Built-in File explorer

(more…)

Parsing command line arguments in Bash

Parsing arguments is not that difficult. Not even in bash scripts.

Parsing arguments is not that difficult. Not even in bash scripts.

There’re many ways to parse arguments that were passed to a bash script. I’ll show two similar methods to parse the parameter schema -o /foo/ and --output=/foo/. The second example can also handle commands.

String manipulation just using Bash

If you’re not familiar with manipulation of string (like ${var#=*} or similar) keep on reading. We’ll select sub-strings from the arguments in the following scripts. The command to do so looks like this: ${<VARIABLE><SPLIT-CHARS><REGEX>}

The split chars define what the result is, which is always one single string. There’re four different ones: (more…)