Archives For Howtos

For Ubuntu 23.04, Fedora 38 and other Linux with Python 3.11 as default, Pithos 1.6.1 was released today to fix the plugin support!

Pithos is a simple free open-source GTK client for Pandora music & podcasts, writing in Python programming language.

The previous versions lack plugin support for the latest Linux Distributions due to Python 3.11. When you try to open the ‘Plugins’ tab in Preferences, it just shows a blank page.

If you start it from command line, it will output something look like:

Traceback (most recent call last):
  File "/usr/share/pithos/pithos/", line 147, in on_got_bus
    plugin = plugins[name] = load_plugin(name, window, bus)
  File "/usr/share/pithos/pithos/", line 101, in load_plugin
    module = __import__('pithos.plugins.' + name)
  File "/usr/share/pithos/pithos/plugins/", line 66, in 
    class PithosMprisService(DBusServiceObject):
  File "/usr/share/pithos/pithos/plugins/", line 647, in PithosMprisService
  File "/usr/share/pithos/pithos/plugins/dbus_util/", line 138, in decorator
    in_args = _create_arginfo_list(func, in_signature)
  File "/usr/share/pithos/pithos/plugins/dbus_util/", line 123, in _create_arginfo_list
    arg_names = inspect.getargspec(func).args

To fix the issue, the new 1.6.1 was released. Which, also fixed the issue that very short songs are being labeled as advertisements.

Nothing else!

How to Install Pithos 1.6.1 in Ubuntu via PPA

For all current Ubuntu releases, including Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04, Ubuntu 22.10, Ubuntu 23.04, and their based systems, I’ve uploaded the app package into this PPA repository.

To add the PPA and install Pithos package, do:

  1. First, press Ctrl+Alt+T key combination on keyboard to open terminal. When it opens, run the command below to add the PPA:
    sudo add-apt-repository ppa:ubuntuhandbook1/apps

    Type user password when it asks (no asterisk feedback) and hit Enter to continue.

  2. Then, run command to fresh the package cache for old Ubuntu 18.04 and Linux Mint:
    sudo apt update
  3. Finally, install or update the lightweight Pandora Radio client to listen online music:
    sudo apt install pithos

As the application does not update frequently, you may also download & install the .deb package directly from this page.

For most Linux, Pithos is also available to install as Flatpak package runs in sandbox.

Uninstall Pithos

To remove the Ubuntu PPA, open terminal and run command:

sudo add-apt-repository --remove ppa:ubuntuhandbook1/apps

Or, open ‘Software & Updates’ utility and remove the source line under ‘Other Software’ tab.

To remove Pithos, use command:

sudo apt remove --autoremove pithos

Ubuntu now provides expanded security maintenance (esm) updates for the packages in main/universe repositories through “Ubuntu Pro” service.

With it, you can get 5 years more (total of 10 years) security updates support for Ubuntu LTS. Meaning Ubuntu 22.04 support until 2032, Ubuntu 20.04 support until 2030, and Ubuntu 18.04 support until 2028.

For Ubuntu Server or Desktop users that use apt upgrade to install updates, you’ll get following prompt in the output:

Get more security updates through Ubuntu Pro with ‘esm-apps’ enabled: …

In this tutorial, I’m going to show you how to get rid of this “esm-apps” prompt by:

  • either enable Ubuntu Pro security updates.
  • or skip the esm-apps updates and disable the command line prompt.

Option 1: Enable Ubuntu Pro Security Updates

For each user, Ubuntu Pro is free for up to 5 machines for personal use! Here’s how to enable it in both graphical and command line ways!

For Ubuntu Desktop

1. For Desktop users, first search for and launch “Software & Updates” tool from ‘Activities’ overview.

2. When it opens, navigate to “Ubuntu Pro” tab, and click on “Enable Ubuntu Pro” button. In the pop-up dialog will show you a short code.

For Ubuntu 18.04, run sudo apt update && sudo apt full-upgrade command first if you don’t see the ‘Ubuntu Pro’ tab.

3. Next, in your web browser go to Login with your account (create for free if you don’t have one). Finally, enter the code you got in the last step, and then click “Submit”.

4. Finally, go back “Software & Updates” and click “Confirm” (see screenshot in step 2). When done, you’ll see the “Ubuntu Pro support is enabled” text in green. And, you can toggle the options to enable/disable ESM Infra, ESM apps, Kernel Livepatch as you want.

For Ubuntu Server (command line way)

For Server and those who prefer Linux command, this can be done by running a single command in console.

First, in web browser go to Log in with your account (create if you don’t have one), then copy or write down the key token.

Then, in terminal or command console, run:

sudo pro attach KEY_TOKEN_HERE

When done, it outputs the enabled and disabled services in terminal output. You can then run command to enable/disable your desired services:

  • Enable an Ubuntu Pro service.
    sudo pro enable SERVICE_NAME
  • Disable access an Ubuntu Pro service.
    sudo pro disable SERVICE_NAME

In the commands, replace SERVICE_NAME with one of esm-apps, esm-infra, livepatch, realtime-kernel.

To disable Ubuntu Pro, as well as all enabled services, run command:

sudo pro detach

Get Rid of “esm-apps” command line prompt without enabling Ubuntu Pro

If you don’t want to install the expanded security updates, you can also disable the command line prompt by removing the config file.

It’s handled by the “20apt-esm-hook.conf” config file under “/etc/apt/apt.conf.d/” directory.

First, press Ctrl+Alt+T on keyboard to open terminal. When it opens, run command to navigate to that directory:

cd /etc/apt/apt.conf.d/

Then, create a backup folder to store the config file as backup. So, you can restore the change at any time by moving the file back.

sudo mkdir -p /etc/apt/backup

Finally, moving the config file to backup folder you just created:

sudo mv 20apt-esm-hook.conf /etc/apt/backup/

To apply change, also run sudo apt update.

To restore, run command to move the file back:

sudo mv /etc/apt/backup/20apt-esm-hook.conf /etc/apt/apt.conf.d/ && sudo apt update

That’s all. Enjoy!

The KeePassXC password manager application released version 2.7.5 today! Here are the new features and how to install guide for Ubuntu / Linux Mint users.

KeePassXC 2.7.5 add a new “Allow Screen Capture” option under “View” menu, though it seems to be for Microsoft Windows only. By enabling this option, allows to temporarily take screenshot of the app window.

Allow screenshot option for Windows.

For Linux, the release added a new rule “SingleMainWindow=true” and “X-GNOME-SingleWindow=true” in the .desktop app shortcut file. So, there will be no longer “New Window” option when right-clicking the KeePassXC shortcut icon.

Other change in KeePassXC 2.7.5 include:

  • Add support for compiling with Botan 3
  • New shortcut “Ctrl + ,” to open Settings.
  • Greatly improved performance when having large amount of entries.
  • Increase max TOTP step to 24 hours
  • Improve HTML export layout
  • Turn search reset off by default
  • Various stability and other fixes.

How to Install KeePassXC 2.7.5 via PPA in Ubuntu/Linux Mint

For all current Ubuntu releases, including Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04, Ubuntu 22.10, Ubuntu 23.10, and Linux Mint 20/21, and their based systems, KeePassXC 2.7.5 is available to install via its Official PPA repository.

1. First, press Ctrl+Alt+T on keyboard to open terminal and run command to add the PPA:

sudo add-apt-repository ppa:phoerious/keepassxc

Type user password when it asks (no asterisk feedback) and hit Enter to continue.

2. If you have an old version of KeePassXC installed as .deb package, simply launch “Software Updater” or Update Manager to update it to the latest.

Or, run the apt command below in terminal to install the password manager:

sudo apt install keepassxc

NOTE: Linux Mint has to run sudo apt update first to update cache.

After installation, search for and open the tool either from ‘Activities’ overview or system start menu depends on your desktop environment.

Uninstall KeePassXC

To uninstall the password manager installed as native .deb package, either use Ubuntu Software app or open terminal and run command:

sudo apt remove --autoremove keepassxc

And remove the PPA repository either via ‘Software & Updates‘ tool under ‘Other Software‘ tab,

or command below in terminal:

sudo add-apt-repository --remove ppa:phoerious/keepassxc

That’s all. Enjoy!


I have an external disk mounted in my Ubuntu 22.04 with read and write permission. It however ran into issue recently. When I tried to boot Virtual Machine from that disk, it return error “NS_ERROR_FAILURE (0X80004005)“. And, when to save VM settings it output “Runtime error opening ‘/path/to/vm-machine.vbox-tmp’ for overwriting: -113 (Write protect error.).

I was thinking that’s an configuration error in /etc/fstab for auto-mounting disk partition. Until touch command returned “Read-only file system” while ls -al and file ‘Properties’ dialog did say I have both read and write permissions.

After digging around, I found that’s something to do with Microsoft Windows. I have Ubuntu dual boot with Microsoft Windows 10. Both systems are able to access that external disk. And the issue occurs sometime after making changes to that disk from Windows 10. And, the solution is just disable “Fast Startup” in Windows.

Disable Fast Startup in Windows 10

The configuration page varies a bit in different Windows editions. Here’s how to disable the feature in Windows 10.

1. First open “Settings” from start menu. When it opens, click “System” to go power settings page.

2. In next page, navigate to “Power & sleep” in the left pane. Then, click on “Additional power settings”.

3. Then, click the “Choose what the power button do” link in the left in next pop-up dialog.

4. Finally, click “Change settings are currently unavailable” link to unlock settings option, un-check “Turn on fast startup”, and finally save changes.

This tutorial shows how to automatically mount external disk partitions on startup of Ubuntu, Fedora, Debian, and most other Linux.

I bought a new SSD recently. Now, I have 2 solid-state drives (SSDs) connected on my computer. Ubuntu 22.04 is installed on one SSD drive, while another one contains VirtualBox Virtual Machine files.

As result, I have to click open the external SSD partition in file manager every time on startup to mount it. So the files on that SSD are accessible via mount point (usually “/media/username/xxx“). Or, all virtual machines in VirtualBox will be marked as “Inaccessible”.

To make life easier, it’s possible to auto-mount the external file partition. So user doesn’t have to make one more mouse click in file manager every time on startup. And, here’s what I did in Ubuntu 22.04.

Step 1: Get Device Name or ID of External Disk Partition

First, search for and open the “Disks” tool from system app launcher.

Launch Disk

When it opens, select the disk in left pane, and highlight the desired file partition in right. There, copy or write down the Device name (usually /dev/xxx), and UUID.

In my case, I need to get the info about:

  • UUID: 428E68968EE68846F
  • Device name: /dev/nvme0n1p2
  • file system type: NTFS (optional)

In case, your Linux Distro does not have “Disks” utility or you’re running a Linux server. Open terminal and run command:

df -h

Then find out the disk partition name you want to auto-mount on startup. (NOTE: You need to mount the external disk first).

Step 2: Get the user/group ID for current user

To auto-mount the external partition by using current user ownership, you also need to get the user ID and group ID.

For the default user that created while installing Linux, the ID is usually 1000. Just in case, open terminal and run command to get it:


get user id

Step 3: Enable Auto-Mount Disk Partition via /etc/fstab

Now, you can edit the “/etc/fstab” file to do the auto-mount configuration that works in most Linux!

To do so, open terminal and run command:

sudo gedit /etc/fstab

For Ubuntu 22.10+ and Fedora workstation, replace gedit with gnome-text-editor. For other Linux, either use your system text editor or nano that works in most Linux.

When the file opens, add the new line in the bottom:

UUID_or_Device_Name  Mount_Point  File_system_type  Options  0  0

In my case, I can use:

/dev/nvme0n1p2 /media/ji/sandisk  ntfs  defaults,uid=1000,gid=1000,umask=022  0  0

There are 6 parts in the new line separated with spaces. They are:

  • Part 1: the device name or UUID. See yours via Step 1.
  • Part 2: the mount point to access the external disk files. If you’ve associated your apps with the external disk files, it’s better to use the previous mount point (See screenshot in Step1).
  • Part 3: the file system type of disk partition (e.g., ext4, fat, ntfs). Get it in step 1, or use “auto” to auto-detect.
  • Part 4: mount options separated with commas but NO space between them. Here I use:
    • defaults – means rw (read & write), auto (auto mount), exec, dev, etc. Run man mount to see more about it.
    • uid – specify the owner.
    • gid – specify the group
    • umask – specify the permissions. The first 0 means read, write and execute permission for user, and the two number 2 mean read and execute permission for group/others.
  • Part 5: Either to backup. Set 0 to not backup.
  • Part 6: Either to check and repair file system. 0 for No.

When done, save the file. For nano text editor, press Ctrl+X, type y and hit Enter to save it. And, the change will apply in next boot.

In addition

The uid=1000,gid=1000,umask=022 section specify the ownership and permissions, but it only works for non-Linux file systems, such as NTFS, FAT, etc, disk partitions.

If you’re going to auto-mount external partition with Linux file-system, such as Ext2/3/4, XFS, JFS, try to change the ownership manually after mount.