KDE Bugsquad – Gwenview Bug Day on March 30th, 2019

We will be holding a Bug Day on March 30th, 2019, focusing on Gwenview. Join at any time, the event will be occurring all day long!

This is a great opportunity for anyone, especially non-developers to get involved!


  1. Check out our Bug Triaging guide for a primer on how to go about confirming and triaging bugs.
  2. Log into KDE Phabricator and join the Bugsquad!
  3. Join the #kde-bugs IRC channel on Freenode to chat with us in real-time as we go through the list.
  4. Open the shared Etherpad for this event (use your KDE Identity login) to select your block of bugs and cross them off.

If you need any help, contact me!

USB Stick Frustrations

Recently I had a USB stick that had a live ISO written to it. On it were a few partitions, Linux formatted with the standard system files you would expect written to it.

I needed to wipe it and format it FAT to move a file. I happened to have a Windows system at the moment. Easy to do, right?

NO! Of course not!

Here was my experience:

  1. In File Manager, right-click the drive to try and erase and re-format it. Nope! That apparently cannot be done.
  2. Open Windows Partition Manager to try and delete the partitions. Partition Manager refused to perform any operations on the drive.
  3. I went and got a Linux system. Move the USB stick to it, and erase the partitions.
  4. I move the USB stick back back to the Windows system to format it and move the file.
  5. Open Windows Partition Manager again and try to make a new partition on this blank USB stick. It consistently locks up trying to make a new partition on it.
  6. Back to Linux! I make a new partition and format it FAT32.
  7. Back to Windows, try to drop the file onto it. File is too large. Ok, that is my fault, I forgot the 4GB limit. Right-click the USB stick to format it exFAT. NOPE! Doesn’t work.
  8. Back to Linux! I format it exFAT.
  9. Back to Windows, drop the file onto it. FINALLY!

ALL I WANTED TO DO WAS FORMAT A USB STICK AND MOVE A FILE!

Ukuu Goes Closed Source

Some of you noticed in my My KDE-Centric Linux Laptop Setup – Part 1 post that I used Ukuu to get the latest mainline Linux kernel. Well, things have changed lately with Ukuu…

As explained by Tony in the Ukuu v19.01 release post:

gothicVI: So ukuu now completely turned into a closed source project?

Tony George: Yes.
Older versions are still open-source. Somebody can develop that version further if they have the time and interest. I may open the source again if I stop working on it (it won’t happen anytime soon).

Comments section of https://teejeetech.in/2019/01/20/ukuu-v19-01/

So, unfortunately Ukuu has gone closed source, and now requires a paid license. If you check my laptop setup post now, I have removed reference to Ukuu due to this, as I just cannot support that. I understand that Tony wants to sustain himself, but there are ways to do that without closing the source and forcing payment:

  • Make the donate button more prominent.
  • Make a donation pop-up to remind people.
  • Set up a Patreon and direct people there to support you (which he had last year, but now seems gone).
  • Move your app to a storefront such as elementary’s AppCenter where you can add a price to your app.
  • Lock certain features behind a “premium” version of the app, but leave the core open source.

Moving to closed source is the wort of the options, and it is a shame to see that happen.

This is a good time to mention to my readers, if you enjoy an app or distro, please donate. Over the years I’ve done exactly that over the years for dozens of projects, even if it is just a few bucks. Especially try to donate using recurring methods such as Patreon if you can. Any little bit helps, and ensures we continue to have a rich open source ecosystem.

KDE Bugsquad – Back in 2019! Ark/Kcalc/Spectacle Bug Day on February 12th, 2019

I hope everyone has had an enjoyable holiday season! The KDE Bugsquad is back in 2019, almost 50 members strong! How awesome is that? We have 11 months left in 2019, and will be continuing our every-other-week schedule as last year, with one event on a Tuesday, one on Saturday, with one project per month. Hopefully that provides you some opportunities to fit it into your schedule.

Our first project this year will actually be a variety pack of smaller projects, each with less bugs than the usual targets. I wanted to start out with some easier ones, while still targeting some important utilities most KDE users use. So, without further delay:

We will be holding a Bug Day on February 12th, 2019, focusing on ark, kcalc, and Spectacle. Join at any time, the event will be occurring all day long!

This is a great opportunity for anyone, especially non-developers to get involved!


  1. Check out our Bug Triaging guide for a primer on how to go about confirming and triaging bugs.
  2. Log into KDE Phabricator and join the Bugsquad!
  3. Join the #kde-bugs IRC channel on Freenode to chat with us in real-time as we go through the list.
  4. Open the shared Etherpad for this event (use your KDE Identity login) to select your block of bugs and cross them off.

If you need any help, contact me!

KDE Bugsquad – Kdenlive Bug Day on December 15th, 2018 (Today!)

We will be holding a Bug Day on December 15th, 2018, focusing on Kdenlive. Join at any time, the event will be occurring all day long!

This is a great opportunity for anyone, especially non-developers to get involved!

  1. Mascot_konqi-support-bughunt.pngCheck out our Bug Triaging guide for a primer on how to go about confirming and triaging bugs.
  2. Log into KDE Phabricator and join the Bugsquad!
  3. Join the #kde-bugs IRC channel on Freenode to chat with us in real-time as we go through the list.
  4. Open the shared Etherpad for this event (use your KDE Identity login) to select your block of bugs and cross them off.

If you need any help, contact me!

My KDE-Centric Linux Laptop Setup – Part 1

The following are my notes on how I like to set up my Linux systems, specifically my primary laptop (Dell XPS 13). These are notes more for myself, for future reference. But others may find it useful for their systems as well. Part 1 covers the software I like to install for various purposes. Part 2 will cover configuration file changes, including for power and performance.

This is currently based on running KDE Neon. Other distros will be slightly different based on pre-installed packages and installation methods available.

Software Changes

Prerequisites

Desktop

  • Install Latte Dock for a beautiful top bar:
    • sudo apt install latte-dock
  • Install Yakuake to provide a quick access drop-down terminal:
    • sudo apt install yakuake
    • Note: Add an entry in Auto Start to have it load on login.
  • Install additional wallpapers:
    • sudo apt install plasma5-workspace-wallpapers
  • Install Redshift to reduce eye strain:
    • sudo apt install redshift
    • Note: Additionally, install the Redshift Control Plasma widget from the KDE Store.
  • Install libinput-gestures and required packages to allow for touchpad gestures:
    • sudo apt install xdotool wmctrl libinput-tools
    • sudo gpasswd -a $USER input
    • mkdir ~/.bin
    • cd ~/.bin
    • git clone https://github.com/bulletmark/libinput-gestures
    • cd libinput-gestures
    • sudo ./libinput-gestures-setup install
    • libinput-gestures-setup autostart

Peripherals

  • Install HP Linux Imaging and Printing with the full GUI package to provide networked printing and scanning capabilities for my printer:
    • sudo apt install hplip-gui
  • Install Skanlite to provide a scanning application:
    • sudo apt install skanlite

Multimedia

  • Install simplescreenrecorder to easily produce screencasts:
    • sudo add-apt-repository ppa:maarten-baert/simplescreenrecorder
    • sudo apt update
    • sudo apt install simplescreenrecorder
  • Install Peek to easily create screencast GIFs, useful for bug reporting and blog posts:
    • sudo add-apt-repository ppa:peek-developers/stable
    • sudo apt update
    • sudo apt install peek
  • Install screenkey and required packages to provide an on-screen display to keyboard input for screencasts:
    • sudo apt install slop python-gtk cairo fontawesome-fonts python2 python-gtk2 python-setuptools python-distutils-extra
    • cd ~/.bin
    • git clone https://github.com/wavexx/screenkey
    • cd screenkey
    • sudo ./setup.py install
  • Install Kdenlive for video editing:
    • sudo apt install kdenlive
  • Install Audacity for audio editing:
    • sudo apt install audacity

System Maintenance

  • Install htop to improve process management:
    • sudo apt install htop
  • Install neofetch for screenshot information display:
    • sudo apt install neofetch
  • Install PowerTOP to provide power usage insight:
    • sudo apt install powertop
  • Install TLP to provide laptop power management services:
    • sudo apt install tlp
  • Install KBackup to provide a backup GUI:
    • sudo apt install kbackup
  • Install Filelight to provide graphical insight into disk usage:
    • sudo apt install filelight
  • Install KDE Partition Manager to easily adjust device partitions:
    • sudo apt install partitionmanager

Productivity

  • Install the Fresh version of LibreOffice and the Breeze style for it:
    • sudo add-apt-repository ppa:libreoffice/ppa
    • sudo apt update
    • sudo apt install libreoffice libreoffice-style-breeze
  • Install Virtual Machine Manager to run VMs with QEMU/KVM:
    • sudo apt install virt-manager
    • sudo apt install virt-viewer
    • Note: virt-viewer is the recommended client by the virt-manager team, especially for SPICE connections (which I use).
  • Install Syncthing synchronization client:
  • Install Kate to provide additional text editing features over the included KWrite:
    • sudo apt install kate
  • Install Atom for editing AsciiDoc (Asciidoctor) files:
  • Install KRDC for Remote Desktop usage:
    • sudo apt install krdc
  • Install Krita for basic image manipulation:
    • sudo apt install krita
  • Install Kolourpaint for quick image annotation:
    • sudo apt install kolourpaint

Gaming

  • Install Vulkan drivers for gaming:
    • sudo apt install mesa-vulkan-drivers
  • Upgrade to the latest graphics drivers with the Oibaf PPA:
    • sudo add-apt-repository ppa:oibaf/graphics-drivers
    • sudo apt update
    • sudo apt upgrade
  • Install Steam from Flathub:
    • flatpak install flathub com.valvesoftware.Steam
    • Note: This is required because of package incompatibilities with the Oibaf graphics driver upgrade. You can’t install the native Steam package via apt.

KDE Bugsquad – Okular Bug Day on November 27th, 2018

We will be holding a Bug Day on November 27th, 2018, focusing on Okular. Join at any time, the event will be occurring all day long!

This is a great opportunity for anyone, especially non-developers to get involved!

  1. Mascot_konqi-support-bughunt.pngCheck out our Bug Triaging guide for a primer on how to go about confirming and triaging bugs.
  2. Log into KDE Phabricator and join the Bugsquad!
  3. Join the #kde-bugs IRC channel on Freenode to chat with us in real-time as we go through the list.
  4. Open the shared Etherpad for this event (use your KDE Identity login) to select your block of bugs and cross them off.

If you need any help, contact me!

KDE Bugsquad – Okular Bug Day on November 17th, 2018

Thank you to everyone who participated last Bug Day! We had a turnout of about six people, who worked through about half of the existing REPORTED (unconfirmed) Konsole bugs. Lots of good discussion occurred on #kde-bugs as well, thank you for joining the channel and being part of the team!

We will be holding a Bug Day on November 17th, 2018, focusing on Okular. Join at any time, the event will be occurring all day long!

This is a great opportunity for anyone, especially non-developers to get involved!

  1. Mascot_konqi-support-bughunt.pngCheck out our Bug Triaging guide for a primer on how to go about confirming and triaging bugs.
  2. Log into KDE Phabricator and join the Bugsquad!
  3. Join the #kde-bugs IRC channel on Freenode to chat with us in real-time as we go through the list.
  4. Open the shared Etherpad for this event (use your KDE Identity login) to select your block of bugs and cross them off.

If you need any help, contact me!

The Future is Rolling

I love rolling distros.

I find the idea of continual improvement in software very appealing. If you’ve ever used a piece of software hosted on a website (SaaS), you’ve probably already experienced it. Think about it, how often have you had to go to Gmail v2 and upgrade your email?

Never.

Take that same general idea, and apply it to your operating system on your computer. Instead of receiving a major upgrade every few years, requiring a nail-biting update process and possible data migration, you get incremental upgrades more often.

Yes, you still receive security updates and small bug fixes in a standard, stable release system. But there are a lot of improvements that are delayed for years, that are just as important for users. Having become involved in KDE, I now see the daily improvements that occur. New features, enhancements, and adjustments, that someone on a stable release will not receive until they go through that upgrade process. I understand the reason for it, though.

Stability.

But, again, having been involved in KDE now, I see the other side. Our code goes through a rigorous peer review process before acceptance. The odds of a bug being introduced is very slim. The risk, just isn’t there, in my opinion.

There are ways to mitigate the remaining risk.

Automated tests with systems such as Jenkins and openQA, and continuous integration can greatly assist with ensuring any issues are quickly caught.

I believe rolling Linux distros like Manjaro, Arch, openSuSE, and Solus are the future. Are they ready today? I don’t know, I’m not so sure. I’m not convinced we have enough automated tests, and quality control to declare them the only way forward. But they are a good start. I genuinely enjoy Manjaro and Solus.

Even Microsoft is on board.

Windows 10 is now intended to be (in their own words) “the last version of Windows”, with Microsoft converting it into a rolling SaaS product.

Just like a rolling Linux distro.

Remote Server/Host Access and Root Login Using SSH

Learn about remote server/host access and root login using SSH in this guest post by Tajinder Kalsi, an information security and Linux expert.

Secure Shell (SSH) is a protocol that is used to log onto remote systems securely and is the most commonly used method for accessing remote Linux systems.

Getting ready

To see how to use SSH, you need two Ubuntu systems. One will be used as the server and the other as the client.

How to do it…

To use SSH, you can use freely available software called OpenSSH. Once the software is installed, it can be used by the ssh command. Take a look at how to use this tool in detail:

  1. If OpenSSH server is not already installed, it can be installed using the following command:

sudo apt-get install openssh-server

openssh-1

  1. Next, you need to install the client version of the software:

sudo apt-get install openssh-client

openssh-2

  1. For the latest versions, the SSH service starts running as soon as the software is installed. If it is not running by default, you can start the service by using the command:

sudo service ssh start

openssh-3

  1. Now, to log in to the server from any other system using SSH, you can use the following command:

ssh remote_ip_address

Here, remote_ip_address refers to the IP address of the server system. Also, this command assumes that the username on the client machine is the same as on the server machine:

openssh-4

If we want to log in for a different user, the command will be as follows:

ssh username@remote_ip_address

openssh-5

  1. Next, you need to configure SSH to use it as per your requirements. The main configuration file for sshd in Ubuntu is located at /etc/ssh/sshd_config. Before making any changes to the original version of this file, create a backup using the following command:

sudo cp /etc/ssh/sshd_config{,.bak}

The configuration file defines the default settings for SSH on the server system.

  1. Opening the file in a text editor, you can see that the default port declaration on which the sshd server listens for the incoming connections is 22. You can change this to any non-standard port to secure the server from random port scans, thus making it more secure. Suppose you change the port to 888, then the next time the client wants to connect to the SSH server, the command will be as follows:

ssh -p port_numberremote_ip_address

openssh-6

As you can see, when you run the command without specifying the port number, the connection is refused. When you mention the correct port number, the connection is established.

How it works…

SSH is used to connect a client program to an SSH server. On one system, you install the openssh-server package to make it the SSH server, and on the other system, you install the openssh-client package to use it as the client.

Now, keeping the SSH service running on the server system, you try to connect to it through the client.

You can use the configuration file of SSH to change the settings such as the default port for connecting.

Enabling and disabling root login over SSH

Linux systems have a root account that is enabled by default. Unauthorized users gaining root access to the system can be really dangerous.

You can disable or enable the root login for SSH as per your requirements to prevent the chances of an attacker getting access to the system.

Getting ready

You need two Linux systems to be used as server and client. On the server system, install the openssh-server package, as shown in the previous recipe.

How to do it…

First, take a look at how to disable SSH root login and then you’ll also see how to enable it again:

  1. First, open the main configuration file of SSH, /etc/ssh/sshd_config, in any editor:

sudo nano /etc/ssh/sshd_config

  1. Now look for the line that reads as follows:

PermitRootLogin yes

  1. Change the value yes to no. Then save and close the file:

PermitRootLogin no

openssh-7.png

  1. Once done, restart the SSH daemon service using the following command:

openssh-8

  1. Now try to log in as root. You should get an error:

Permission Denied

This is because the root login has been disabled:

openssh-9.png

  1. Now whenever you want to log in as root, you’ll first have to log in as a normal user. After this, you can use the su command and switch to the root user. So, the user accounts that are not listed in the /etc/sudoers file will not be able to switch to root user and the system will be more secure:

openssh-10

  1. Now, if you want to enable SSH root login again, you just need to edit the /etc/ssh/sshd_config file again and change the no option to yes:

PermitRootLogin yes

openssh-11.png

  1. Then restart the service again by using the following command:

openssh-12

  1. Now if you try to log in as root again, it will work:

openssh-13

How it works…

When you try to connect to a remote system using SSH, the remote system checks its configuration file at /etc/ssh/sshd_config. According to the details mentioned in this file, it decides whether the connection should be allowed or refused.

There’s more…

Suppose you have many user accounts on the systems. You need to edit the /etc/ssh/sshd_config file in such a way that remote access is allowed only to few mentioned users:

sudo nano /etc/ssh/sshd_config

Add the following line:

AllowUsers tajinder user1

Now restart the SSH service:

sudo service ssh restart

Now when you’ll try to log in with  user1, the login is successful. However, when you try to log in with user2, which has not been added in the /etc/ssh/sshd_config file, the login fails and you get  Permission denied error, as shown here:

openssh-14

That’s it! If this article piqued your interest in learning more about security with Linux, you can explore Practical Linux Security Cookbook – Second Edition. Packed with numerous hands-on recipes to secure a Linux environment from modern-day attacks, Practical Linux Security Cookbook – Second Edition is a must-read for all Linux users.