January 19, 2020

OpenSuse: Month 1 - Jan 2020 - Setting up the KDE Desktop

OpenSuse: Month 1 - Jan 2020 - Setting up the KDE Desktop

This is the first post from the first month of not Disto hopping for a whole year and sticking with one Distro, OpenSuse Tumbleweed, for 12 months (at least)

Disclaimer

Remember when reading  this, these are my personal opinions which mainly come from 20 years of  hands on Linux experience not suggestion, here say or third party input.  I’m not asking you to agree with me in any shape or form, I'm writing  this as a personal journey not as an effort to start a flame war over  which distro, desktop or package management tool is the best. This is  just one guys journey not a personal a affront against your beliefs
Also I know I can't spell and my grammer is terrible, you don't need to tell me.

I outlined the why of this in detail in a post at the end of 2019

https://tech.davidfield.co.uk/using-opensuse-the-year-begins-tumbleweed-on-my-dell-xps-13-2019/

They say with any addiction or process of change its the first month that hits hardest. As a consummate distro hopper i'm quite proud of myself I've stuck with problems, I've logged bug reports, had some great support, and I have also asked questions which are more than the community has answers for.

During this period I have totally redesigned my KDE experience to emulate the Mac I left behind and I've got Plasma Widgets starting services when I need them so they don't sit using Ram and CPU when I don't need them.

As a Homelab Geek its nice to have a static setup on my laptop which has all the SSH keys, scripts and tools I use daily.

This post is takes you through the desktop journey for the first month on OpenSuse Tumbleweed

My Interface

Theme - OSX

Right off the bat i'll be frank, this isn't going to be to everyones taste as a desktop. My main driver for going down this route is just one of appreciating the MacOS desktop. While I may not agree with some of the design choices of the OS. The Dock bar and Taskbar layout do appeal to me.

I can't lay claim to creating this desktop experience, I used the Youtube tutorial at https://youtu.be/OBCBqEC6sS8 to get the basics of the design together.

However as with most tutorials there were a few things which were missing or didn't exist as the person who made the video was using a deb based solution and not an RPM. Suse names many of the required dev packages a different name. So it does take a little googleing to work round that.

The Dock in the screenshot and Video is Latte Dock (https://github.com/KDE/latte-dock) and thankfully the OpenSuse repos (https://software.opensuse.org/package/latte-dock?search_term=latte+dock) have the up to date version of this dock and even if OSX isn't your thing as Docks go this is the best of the ones I tested for my usage needs.

Virtual Desktops

Having got the look and feel of OSX on KDE there were some features which I wanted to get working in KDE which I use a lot in OSX, the first of these was Virtual Desktops

Virtual Desktops are a great way of using space on any KDE desktop, and I've set mine up with 1 row of 4 Virtual desktops.

Have Applications open in a specific Virtual Desktop

Its possible to have applications launch each time on a specific Virtual desktop using the following steps:

Launch the Application and move it to the Virtual Desktop you want it to run in.

Press Alt -F3 then navigate to More Actions and select Special Windows Settings

This will present the Dialog Options

I selected

  • Position - Apply Intitially
  • Size - Apply Intitially
  • Desktop - Apply Intitially and the Virtual Desktop i want the application to open on
  • Fullscreen (this is up to you) - Apply Intitially

Click on OK

For my example this was Konsole and each time i open Konsole it does so on Virtual Desktop 4

The Apply Intially option is a nice one to select as this allows you to move the Window around if you need to, however the next time you open the application it will open on Virtual Desktop 4 in the way you want.

Moving Left and Right on a Virtual Desktop using keys

Something KDE on every desktop i've personally tried doesn't do is enable the ability to use a key combinations

This functionality is found under the System Settings

Select Shortcuts -> Global Settings - KWin and find

Switch one desktop to the left and Switch one desktop to the right

Assign your preferred key combination, mine was Ctrl+Alt+Left and Ctrl+Alt+Right respectivly.

Click on Apply and you should now be able to switch between the virtual desktops using the key combination you chose.

Use the Desktop Cube

As an additional bit of optional eye candy, you can set that switch between Virtual Desktops show as a Desktop Cube

Select System Settings -> Workspace Behaviour and scroll down to the Virtual Desktops and select Show animation when switching and select Desktop Cube Animation. Click on Apply

Three finger swipe

With all these Virtual Desktops setup i started craving for the 3 finger swipe left and right that comes with the Mac. I'm honestly suprised that KDE doesn't come with this option built into the Desktop Environment its really handy.

Do have this work a 3rd party service needs to be installed.

My initial Google searches mainly revolved around libinput-gestures which I couldn't get working on its own, however not one to be scuppered by such a problem i ran across a project called Fusuma which in turn lead me to a howto guide

How to customize touchpad gestures on Linux using Fusuma
Fusuma add touchpad gestures to run commands or common tasks, such as changing workspaces, back or forward on a browser, etc.

This guide is written for a deb based distro, however the packages and Ruby versions worked when using Zypper

Once installed I edited my ~/.config/fusuma/config.yml file to look as follows

swipe:
3:
left:
command: 'xdotool key ctrl+alt+Right'
right:
command: 'xdotool key ctrl+alt+Left'
up:
command: 'xdotool key ctrl+t'
down:
command: 'xdotool key ctrl+w'
threshold:
swipe: 0.3
pinch: 0.1
interval:
swipe: 1
pinch: 1

Note:

Yaml files are notoriously format sensitive, copy and paste of the above may not work so this is what the code looks like in the terminal

And added Fusuma to Settings -> Startup & Shutdown -> Autostart

Add a startup script for Fusuma

Apply

After a reboot you can use 3 finger swipe to rotate Virtual Desktops left and right.

Plasma Widgets

With the themes enabled and the virtual desktops setup I started looking at Plasma Widgets, and to be honest I don't like a desktop full of Widgets. So i've got two I've added to my desktop

Simple System Monitor

Simple System Monitor
A simple monitor for plasma, completely written in QML and Javascript.<br /> <br /> Currently can show OS info, CPU load/temp and memory load.<br /> <br /> Support for:<br /> * Background translucent and crystal<br /> * Change...

This is a pretty display which covers the basics of my system monitoring needs and updates in realtime.

SystemD Widget

naraesk/plasma-systemd
Simple plasma widget for controlling systemd services - naraesk/plasma-systemd

I have some services installed which i want to sue, but I don't want all the time and this Plasma Widget is a toggle switch for turning services on and off.

Information:

Because i'm using Fish and not Bash in my command prompt I had some issues getting this installed the guy who wrote the software was great and worked out what the problem was. This is documented here:

what is the expected result after a sucessful run of these commands? · Issue #7 · naraesk/plasma-systemd
Hi, so i got all of the commands to successfully run after running up a lot of dependencies installed on opensuse tumble weed, having done a no error make install, should i expect to see this as an...

Some Interesting Apps

Fish

fish shell
A smart and user-friendly command line shell

This is a replacement for Bash and its a fully operational shell, its been around for quite a while and offers some great auto complete features and colour highlighting.

The theming video I followed suggests Fish instead of Bash as a shell and in the most part its been great. I did have a problem with cmake when installing the SystemD widget however i'm happy to work around these for the autocomplete features alone.

Hiri

Hiri best email client for Windows, Mac and Linux
Hiri is the best email client for Managers on Windows, Mac and Linux.

Right out of the gate this is paid software however it far out weighs Evolution in support of Exchange/Office365 mail and as a user of such a system this is a really good mail client.

Offering a well thought out interface and quick setup the application provides access to your mail, contacts and calendar.

Termius

Termius
The #1 cross-platform terminal with built-in ssh client which works as your own portable server management system in any situation.

I starte using this application on Android a year or so back because it was a simple way of not needing to setup the ssh on multiple Android devices. The application is also available on Windows, Mac and as a Snap for Linux.

Its a great SSH client, very customizable, and is cross platform.

Microsoft Teams

Download Microsoft Teams on any Device
Get Microsoft Teams on all your devices. We have desktop apps for Windows and MacOS, as well as mobile apps for iOS, Android, and Windows Phone

Having MSTeams in Linux used to mean an Electron wrapper for the Web interface. Microsoft however in its attempt to knock Slack off the top spot for collaboration software have created a native RPM (and Deb) installer for Linux.

This is the real deal, and while it is still in beta i've been making heavy use of it and can say i've done Video Conferences, shared displays, had chats and done everything you'd expect from the application on Windows or Mac and it works find in Linux.

Observations

Support

So, i've had a couple of support questions the main of which was I have been trying to use YaST to setup my login as my Windows AD Account. I'm able to get Winbind and Samba to work so a wbinfo -U or -G works fine and displays the AD users and groups respectivly it seems getting the KDE login to work online or offline with my AD creds as the login just doesn't work.

I logged this on Suse's Forum pages

https://forums.opensuse.org/showthread.php/538663-Trying-to-connect-OS-TW-to-my-Windows-2016-AD

As with most things I log i've tried to break down the problem in a readable manner with as much information as possible and I cross posted to Reddit just in case but have had no response.

Interestingly Reddits OpenSuse Subreddit seems to be very active and a great place for helpful advice. The people on it are not condecending and giving great options and feedback which can be seen on the post i put up when I was getting issues sorting out the SystemD widget

I'm trying to get a widget that launches services. from kde

I've not had much else other than this to use the support Forum for, other than occasionally running over it and seeing if there is anything I can help with.

Installation and Howto Guides

This is an interesting one, as you can see from manyof the links i've posted the howto guides and install guides for a lot of software will target .DEB based software installs usually for Ubuntu.

While its not fair to say that there are no install guides for OpenSuse because there are, many are over 5 years old and incorrect.

I don't know if I was a new Linux user if OpenSuse would be the best place to start only because a lot of the packages in ubuntu are nammed differently in OpenSuse.

This isn't a critism of the OS, I understand why this is, its more of an observation. Lots of cool things exist out there and they do so for OpenSuse users who can read between the lines.

Using it

Got to say, using this OS with the themeing i've done is great, i've had no issue with Dual screen at home or in the office and the new OfficeJet Pritner scanner works flawlessly after installing the hp driver package. While I have had a want to swap a few times, the effort put in themeing the desktop has stopped me.