Whisper – Simple App to Listen to Microphone in Linux

Want to hear your sound in microphone? Here’s a stupid simple tool to the job in Linux.

It’s Whisper, a new free and open-source GTK4 application, allowing listen to microphone through your speaker. Which, is useful for testing your microphone or for listening to your voice.

As the screenshot shows, the app is quite easy to use. Just select the microphone and speaker from the list, and click ‘Connect’. Then, you can say something or make some noise through microphone to see the magic.

As a GTK4 application, it follow system color scheme by switching between light and dark automatically. However, it needs both PulseAudio and Pipewire to make things work, which is default in Pop! OS 22.04, Ubuntu 22.10, Ubuntu 23.04, Fedora 35/36/37, etc.

How to Install Whisper in your Linux

As mentioned above, this application requires Pipewire audio server. For current Ubuntu 22.04 LTS, it’s NOT the default, though you can enable it by following this tutorial (NOT recommend for beginners).

Whisper is available to install as universal Flatpak package. You can install it by following the steps below one by one:

1. First, press Ctrl+Alt+T on keyboard to open terminal. When it opens, run command to install Flatpak daemon:

sudo apt install flatpak

Other Linux can follow this setup guide to enable Flatpak support.

2. Then, run command to install Whisper as Flatpak package:

flatpak install https://dl.flathub.org/repo/appstream/it.mijorus.whisper.flatpakref

3. After installation, search for and launch it from start menu (Show Applications) like normal app and enjoy!

How to Remove Whisper

To remove the software package, also open a terminal window and run command:

flatpak uninstall --delete-data it.mijorus.whisper

Also run flatpak uninstall --unused to remove useless runtime libraries.

How to check your SSD health in Ubuntu 22.04 / Linux Mint 21

This simple tutorial shows how to easily check your SSD health in Ubuntu and/or Linux Mint desktop.

I’ve been running Ubuntu Linux on my old laptop for about 7 years. Everything works well, but it recently refuses to boot sometimes when pressing on the physical power button. Not sure what’s the problem, but I guess it’s something to do the data reading issue from SSD drive.

In Windows 10, I prefer to use CrystalDiskInfo which is super easy to understand for beginners. For Linux, there’s a tool GSmartControl available for choice.

1. First, the tool is available in most Linux’s system repositories. User can just search for and install it from system package manager. For Ubuntu, it’s available to install via Ubuntu Software app:

For those familiar with Linux command can run a single command in terminal (Ctrl+Alt+T) to install it:

sudo apt install gsmartcontrol

2. After that, search for and launch it from start menu (or Activities overview). It will list your SSD drive in the app window.

By double-clicking on the disk icon or go menu “Device -> View Details” will open the information dialog that you need.

Things are not so easy to read for beginners. But it will highlight something that is not going well with red text font or background.

By moving mouse cursor over any item in the app window, there will be a tool-tip pop-over that explain with detailed information. As the screenshot below shows, it shows you:

  • power-on time.
  • total disk read and write.
  • read error rate.
  • temperature and other information.

For those prefer a percentage value of the device life, go “Statistics” tab and check the value of Percentage Used Endurance Indicator. In my case as the screenshot shows, there should be still 93% left.

And you can click on “View Output” button to view all the info as text, copy and paste them into online forums to ask for help! Or, run a “Self-Tests” manually to see if there’s any error.

SoCal Linux Expo Back For 20th Anniversary

 SoCal Linux Expo Back For 20th Anniversary

Now in its 20th year of supporting and promoting the FOSS community, SCaLE 20x – the Southern California Linux Expo – will be held at the Pasadena Convention Center March 9-12, 2023.

This 4-day annual event brings together the vibrant Open Source user community, tech industry leaders, developers, users and many more.  Session track themes have included security, developer, embedded, medical and legal to name a few.  The expert speakers have never failed to impress and inform.  Your biggest challenge will likely be trying to pick which session to attend.  One certainty: Saturday’s keynote by Arun Gupta will be standing room only.

Since my first SCaLE, way back to 3x, the expo floor has been my favorite hangout.  The expansive exhibit hall provides an opportunity to meet the people behind a favorite distribution or application.  There are compelling demonstrations of Open Source-based solutions, educational offerings and companies looking for top talent.  Oh, and SCaLE exhibitors always have the best swag.

Would you like a glimpse of the future of Linux/FOSS? SCALE is a family friendly event that welcomes all ages.   SCaLE: The Next Generation, the track focused on kids and the work they do in OSS, is back for 20x.  All sessions are delivered by K-12 students and highlight interesting work or projects these students have been working on. It also includes hands-on activities for younger attendees.  Topics are expected to include security, video editing, big data and more.  These young folks will leave you feeling confident in the future of FOSS.

Other co-located events include Ceph Days SoCal, Kubernetes Community Day, DevOpsDayLA, PostgreSQL @ SCaLE , SCaLE Kids and Embedded Apprentice Linux Engineer (E-ALE).  Always popular, the Hands-On Beginner Linux Training is here for 20x.  Book your spot early for this one.

LibreOffice 7.5 Released with New App Icons, Improved Dark Mode Support

LibreOffice, the default office suite in most Linux, announced the new 7.5 feature release today!

The new release has greatly improved the dark mode support. It now has fully dark appearance, instead of leaving the document background white in dark mode.

LibreOffice 7.5 now has new icons for standard app shortcuts, MIME types, and macOS specific app shortcuts. App start center now includes a filter box for Recent Documents.

A better single-toolbar user interface is available under “View -> User Interface” menu, with context-aware controls and their customization support.

The “Writer” app gains new Plain Text content control and Combo Box content control. And, Content Control now supports titles and tags, as well as exporting to PDF.

For “CALC”, data tables are now supported in charts, the Function Wizard allows to search for descriptions. And, Impress & Draw gets a new set of default table styles.

Other changes in LibreOffice 7.5 include:

  • Much more visible bookmarks in writer.
  • Initial machine translation based on DeepL translate APIs
  • Ability to define a custom color for Grammar mistakes in the Application Colors dialog.
  • “Spell out” number formats in CALC.
  • Ability to crop inserted videos in the slide and still play them
  • Run presenter console can run as a normal window.

See short video about new features of LibreOffice 7.5:

How to Install LibreOffice 7.5 in Ubuntu Linux.

LibreOffice is available to install in 4 different package formats: Deb, Flatpak, AppImage, and Snap.

NOTE: User can install all of them side by side in same machine, meaning have duplicated app icons in start menu (‘Activities’ overview search results).

Option 1: Deb package

Libreoffice website offers official .deb packages, which is however built for supporting all Debian based systems.

For better integration, the LibreOffice Fresh PPA is HIGHLY recommended for Ubuntu Linux. User can press Ctrl+Alt+T on keyboard to open terminal and run command to add it:

sudo add-apt-repository ppa:libreoffice/ppa

Then, run regular updates via Software Updater (Update Manager) app will update the pre-installed LibreOffice packages to the latest!

NOTE: A new feature release usually needs several days testing before made into PPA. Meaning the PPA at the moment is not updated for v7.5.

Option 2: Snap package

Snap is an universal package runs in sandbox. Ubuntu 20.04 and higher can easily search for and install LibreOffice as Snap from Ubuntu Software.

As mentioned, install LibreOffice Snap will cause duplicated app icons to the pre-installed package.

Option 3: Flatpak package

Flatpak is another universal package runs in sandbox. It’s a competitor to Snap. Users can run following commands one by one to install LibreOffice as Flatpak.

  • First, press Ctrl+Alt+T on keyboard to open terminal. Then run command to install Flatpak daemon:
    sudo apt install flatpak
  • Next, install the office suite as Flatpak via command:
    flatpak install https://dl.flathub.org/repo/appstream/org.libreoffice.LibreOffice.flatpakref

Option 4: AppImage

AppImage is an non-install package format runs in most Linux. It’s a good choice to try AppImage until the LibreOffice Fresh PPA updated for the new release packages.

Just grab the package from the official website:

Then, right-click and go file “Properties” dialog, add executable as program permission under Permission tab, and finally click run the AppImage to launch the office suite.


For the LibreOffice PPA package, open terminal and run command:

sudo apt install ppa-purge && sudo ppa-purge ppa:libreoffice/ppa

It will remove the PPA repository and downgrade the office suite to the pre-installed version.

For the Flatpak package, run the command below to remove it:

flatpak uninstall --delete-data org.libreoffice.LibreOffice

For other two, either uninstall via Ubuntu Software or just remove the package file.

How to Enable Minimize button in Elementary OS 7 App Windows

Elementary OS 7 is finally released! Here’s how to enable the “Minimize” title-bar button in its app windows.

Elementary OS 7 is based on Ubuntu 22.04 LTS. It was released on Tuesday with many improvements on its core applications as well as desktop experience.

Like Fedora workstation, this Linux Distro does not has a ‘Minimize’ button out-of-the-box. But changing the button-layout key via either dconf-editor or gsettings does not function.

Step 1: Install Pantheon Tweaks

Pantheon Tweaks is simple configuration tool adds more options to configure Elementary OS’ Pantheon desktop appearance.

1. First, search for and open a terminal window from top-left ‘Application’ menu.

2. When terminal opens, run command to install the package for the ability to add PPA repositories:

sudo apt install software-properties-common

Run sudo apt update first on a fresh OS to update package index.

3. Next, run command to add the Ubuntu PPA that contains the Pantheon Tweaks package:

sudo add-apt-repository ppa:philip.scott/pantheon-tweaks

4. After adding PPA, install the tool by running command:

sudo apt install pantheon-tweaks

Step 2: Enable Minimize button

After installing Pantheon Tweaks, open or re-open System Settings from the bottom dock launcher. When it opens, you’ll see a new “Tweaks” option under ‘Personal’.

Click on it to open the settings page. There’s a drop-down box for selecting layout of “Window Controls”. Just choose Windows, Ubuntu, macOS, add minimize, or whatever option that you prefer.

The title-bar button layout will change immediately! Done.

OnlyOffice Desktop Editors 7.3.0 Released! Native Dialogs & Better Flatpak/Snap Support

OnlyOffice announced the new 7.3.0 release for its desktop editors office suite one day ago.

For Linux users, the new release now use native dialog windows (e.g., file manager and print). And, it adds support for xdg-desktop-portal in the file dialog window, meaning better desktop integration for application installed as Flatpak and/or Snap packages.

This release also add a Quick Print button right beside the original print button. Instead of bringing to the print configuration page, it will directly send your entire document to the last selected or default printer.

For the Spreadsheet Editor, there’s new Watch Window under Formula tab, as well as new functions include TEXTBEFORE, TEXTAFTER, TEXTSPLIT, VSTACK, HSTACK, TOROW, TOCOL, WRAPROWS, WRAPCOLS, TAKE, DROP, CHOOSEROWS, CHOOSECOLS.

Other changes in OnlyOffice 7.3.0 include:

  • Advanced forms via Forms tab in DOCXF files -> Available fields and Manage Roles menu
  • SmartArt (e.g., List, Process, Cycle, Hierarchy, Matrix) under Insert tab.
  • Ability to password protect document while allowing filling forms, commenting, or tracking changes.
  • Ability to add links between several spreadsheets
  • New Date and time, Zip Code, Credit Card for creating forms.
  • Support for creating math equations in both Unicode and LaTeX syntax.
  • Show/hide left and right panel.
  • Ability to insert data from the XML Spreadsheet 2003 file

How to Install OnlyOffice Desktop Editors 7.3:

The office suite is available to install in Ubuntu Linux in 3 different package formats: Snap, Deb, and Flatpak. Choose either one that you prefer.

1. Snap

Snap is an universal package format that runs in sandbox. Ubuntu 20.04 and higher users can simply search for and install OnlyOffice as Snap from Ubuntu Software.

The snap automatically receive updates, though the package at the moment of writing is still at version 7.2.1.

ONLYOFFICE Snap in Ubuntu Software

2. Deb

Deb is the native package format for Debian/Ubuntu and their based Linux systems. OnlyOffice provides the .deb package along with RPM, EXE, MSI, and DMG packages for downloading at the github releases page:

Just select download the “onlyoffice-desktopeditors_amd64.deb” package, then click in file manager to open with Software Install and install it.

3. Flatpak

Linux Mint user may prefer the Flatpak package a bit more, since it’s available to install directly from the Software Manager.

It’s another universal package format runs in sandbox. Ubuntu user can install ONLYOFFICE Desktop Editors as Flatpak by following the steps below one by one:

First, press Ctrl+Alt+T on keyboard to open a terminal window. When it opens, run command to install the Flatpak daemon:

sudo apt install flatpak

Then, install the office suite via:

flatpak install https://dl.flathub.org/repo/appstream/org.onlyoffice.desktopeditors.flatpakref

The Flatpak package is also in v7.2.1 at the moment, use the command flatpak update org.onlyoffice.desktopeditors to update the package once new version published.

Uninstall ONLYOFFICE Desktop Editor

Depends on which package you installed, choose to run either command below in a terminal (Ctrl+Alt+T) window to remove the office suite.

For the Snap package, remove it either via Ubuntu Software or by running the command below:

snap remove --purge onlyoffice-desktopeditors

For the native deb package, run command to remove it:

sudo apt remove onlyoffice-desktopeditors --autoremove

And to remove the package installed as Flatpak, run command:

flatpak uninstall --delete-data org.onlyoffice.desktopeditors

Also clear useless runtime libraries via flatpak uninstall --unused command.

Monitoring Oracle Servers With Checkmk

Monitoring Oracle Servers With Checkmk

Databases are essential for many IT processes. Their performance and reliability depends on many factors and it makes sense to use a dedicated tool that helps you to stay on top of things. Monitoring your database with an external tool helps you identify performance issues proactively, but there are many factors to consider. With the wrong approach, you run the risk of missing valuable information and also can waste a lot of time configuring your database monitoring.

In this tutorial, I will give a quick guide on how to monitor Oracle Database with Checkmk, a universal monitoring tool for all kinds of IT assets. Oracle Database is one of the most common database management systems (DBMS) for relational databases and Checkmk comes with a great preconfigured Oracle monitoring, so it will only take you a few minutes to get started. This will not only ensure the best performance of your databases, but also give you the option to find optimization opportunities.


You need a Checkmk site up and running. For this article, I am using the Checkmk Free Edition version 2.1.0p19, which I installed on Ubuntu server (version 20.04). Checkmk runs on Linux, including RHEL, CentOS, Debian, and others, as well as in a container, or as a virtual appliance. You can download the latest Checkmk version for all platforms from the official Checkmk website and follow this video tutorial to take your first steps.

In this tutorial, I will use a simple Oracle server as an example. In my case, my Oracle database version 19.0 runs on a hardware server, and I use Rocky Linux version 9.0 as my operating system. I will show you how to configure and install the Checkmk agent. However, Checkmk can also monitor remote databases without the need to install an agent.

You don’t need any previous experience with Oracle monitoring, as Checkmk takes over the collection of the most important monitoring services and also sets threshold values for warnings and critical states. However, you need access rights to create user accounts for the database you want to monitor, you will do this in the first step.

Step 1: Creating an Oracle user account for the monitoring

First, you need to create a user account that Checkmk will use to query the monitoring data from your database. In my case, I am using SQL Plus and create the user through the terminal. The procedure differs depending on which Oracle environment and tool you are using. You can read more details about this in the Oracle documentation.

Find All Symbolic Links in Linux

Find All Symbolic Links in Linux

How do you find a soft link?

You can use the ls command. Some distributions show the links in a different color. The long listing is always reliable because it shows links with l.

lrwxrwxrwx 1 abhishek abhishek 14 Jan 31 18:07 my_link -> redirects.yaml

You can also use the tree command:

Find All Symbolic Links in Linux

This is okay if you have a couple of links in the current directory. But what if you want to see the links in a nested directory structure or the entire system?

In this tutorial, I will be showing you two ways to accomplish this mission:

  • Using the find command
  • Using the symlinks utility

So let’s start with the first one.

To find the symbolic links using the find command, you can use the following command syntax:

find Target_directory -type l

For example, here, I searched for available symbolic links inside the Links directory:

find Links/ -type l
Find All Symbolic Links in Linux

But by default, the find command will initiate the recursive search and if you want to limit the search to a certain depth, you will have to use the -maxdepth flag.

So let’s say I want to restrict the search to level 1 for the Links directory, I will be using the following:

find Links/ -maxdepth 1 -type l
Find All Symbolic Links in Linux

And if you want detailed output including the file permissions, user groups, etc. then you will have to pair the find command with -ls flag:

find Target_directory -type l -ls
Find All Symbolic Links in Linux

If you want a system-wide search, you can use / in the command.

This tool is what I used while pursuing my internship in networking.

But it does not come pre-installed though. You can install it using your distribution’s package manager. For Ubuntu/Debian, use:

sudo apt install symlinks

Once you are done with the installation, use the given command structure to look for available symbolic links:

symlinks -v target_directory
Find All Symbolic Links in Linux

Here, the -v option gives verbose output.

But by default, the symlinks utility won’t look into subdirectories. Enable recursive search with the -r option:

symlinks -vr target_directory
Find All Symbolic Links in Linux

The output has specific terms. Let me explain them.

  • relative indicates that links are relative to the current working directory in which the link resides.
  • other_fs means the link is indicating a different filesystem. In my case, it is indicated to the external drive.

Really, they might sound like a huge deal but we made sure to break the topic bit by bit.

Such as if you are a complete beginner, you can refer to the beginner’s guide to symbolic links:

How to Create Symbolic Links in Linux [Complete Guide]
This detailed tutorial tells you what are symbolic links, how to create a symbolic links and other important things associated with symlinks.
Find All Symbolic Links in Linux

And if you want to follow them to their origin, you can refer the following guide:

How to Follow Symbolic Links in Linux
You got a symbolic link and wondering about the actual source file? Here’s how to follow symlinks in Linux.
Find All Symbolic Links in Linux

I hope you will find this guide helpful. And if you have any queries or suggestions, be my guest in the comments section.

This Indicator Shows CPU, GPU, Memory Usage on Ubuntu 22.04 Panel

There are several Gnome Shell extensions to display system resource usage in Ubuntu, but in this tutorial I’m going to introduce an indicator that works in not only GNOME, but also Unity, MATE, and Budgie desktop environments.

It’s Indicator-SysMonitor, a free and open-source applet developed by the leader of Ubuntu Budgie team.

With it, user can display the usage and/or temperature of the following system resource in top-panel:

  • average CPU usage.
  • NVIDIA GPU utilization.
  • Memory usage.
  • network upload/download speed.
  • CPU, NVIDIA GPU temperature.
  • Swap usage.
  • Public IP address.

Most important is that user can customize the output, by setting which one or ones to display, in which order with which text. User just need to click the indicator on panel to open ‘Preferences’ dialog from pop-down menu, and format the output code in ‘Advanced’ tab.

How to Install Indicator-Sysmonitor

The developer has an Ubuntu PPA contains the packages for Ubuntu 18.04, Ubuntu 20.04, Ubuntu 22.04, Ubuntu 22.10, and even the next Ubuntu 23.04.

1. First, press Ctrl+Alt+T on keyboard to open a terminal window. When it opens, run command to add the PPA:

sudo add-apt-repository ppa:fossfreedom/indicator-sysmonitor

Type user password when it asks and hit Enter to continue.

2. For the old Ubuntu 18.04, you need to manually refresh package index after adding PPA:

sudo apt update

3. And, install the indicator applet via command:

sudo apt install indicator-sysmonitor

Finally, search for and open the applet like a normal application (it has same icon to System Monitor).

And click on the applet to open Preferences, and turn on start at login, configure output layout, refresh interval, etc.

Uninstall Indicator-Sysmonitor

You can close the applet by clicking on it in panel and select “Quit”. And remove the package at any time by running a single command in terminal window:

sudo apt remove indicator-sysmonitor

Also remove the PPA repository, either by running the command below or open “Software & Updates”and remove source line under “Other Software” tab.

sudo add-apt-repository --remove ppa:fossfreedom/indicator-sysmonitor

Netstat Command Examples in Linux

Netstat Command Examples in Linux

The netstat is one of the most popular utilities to monitor connections over your network.

It allows you to easily monitor incoming and outgoing connections, listening ports, statistics, and more.

In this tutorial, I will show you some of the most examples of the netstat command on Linux.

1. Find all the listening ports

To find all the ports (TCP and UDP), you will have to append the -l flag with the netstat command:

netstat -l
Netstat Command Examples in Linux

2. List listening and non-listening ports

If you want to get a list of available sockets on your system, you can use the -a flag with the netstat command:

netstat -a
Netstat Command Examples in Linux

Now, let’s get to more specific ones.

3. Find TCP listening ports

If you want to list ports using TCP protocol and in the listening state, you will have to use -l flag for listening and -t flag for TCP connections:

netstat -lt
Netstat Command Examples in Linux

4. Find UDP listening ports

To list every listening UDP port on your system, you will have to append -l and -u flag with the netstat command:

netstat -lu
Netstat Command Examples in Linux

5. List all TCP port connections

If you want to list every socket using a TCP connection including listening and non-listening, use the -at flag with the netstat command:

netstat -at
Netstat Command Examples in Linux

Want to know the difference between listening and an established state?

  • LISTENING means it is listening for incoming connections.
  • ESTABLISHED indicates that the socket has an established connection.

6. List all UDP connections

If you want to list every socket utilizing the UDP, you can use the combination of -a and -u flag:

netstat -au
Netstat Command Examples in Linux

7. Get a statistical summary of each protocol

This is one of the handiest features of netstat which allows you to find the number of connections established, the number of messages sent and received, and a lot more.

To get a summary of each protocol, all you need to do is append the -s flag:

netstat -s
Netstat Command Examples in Linux

But what if you want statistics on specific protocols? Here’s how you do it.

8. Get statistics for a specific connection

Let’s start with the TCP.

To get the statistics of TCP connections, all you need to do is use the -s and -t flag with the netstat command:

netstat -st
Netstat Command Examples in Linux

Similarly, if you want the same for UDP, you will have to use the -su flag:

netstat -su
Netstat Command Examples in Linux

9. Get raw network statistics

If you are looking for raw data rather than filtered one, it can easily be produced using the -s (for statistics) and --raw (for raw):

netstat -s --raw
Netstat Command Examples in Linux

10. Find services with PID

If you are into troubleshooting, getting the PID of the service can be very handy. To get PID, all you need to do is use the -p flag:

sudo netstat -p
Netstat Command Examples in Linux

11. Find a specific listening service on the network

To find a specific listening, you can use the grep command which makes a killer combination while troubleshooting.

So let’s suppose, I want to look for an HTTPS service on listening state which can be done through the following command:

sudo netstat -apl | grep -w https
Netstat Command Examples in Linux

Want to know how to get more out of grep? you can refer to our detailed guide on that topic:

Explained: What is Grep Command in Linux?
Grep is perhaps one of the most used commands in Linux. Learn why it was created and how it s used in this explainer article.
Netstat Command Examples in Linux

12. Show transactions of network interfaces

The netstat utility can also be used to list available network interfaces and to get transactions of each one.

For that, all you need to do is append the -i flag to the netstat:

netstat -i
Netstat Command Examples in Linux

13. Monitor the network continuously using the netstat command

If you want to monitor the network continuously, you can do it with -c the option:

netstat -c
Netstat Command Examples in Linux

You can use appropriate flags such as -lt with -c and it will look for listening TCP connections continuously:

netstat -ltc
Netstat Command Examples in Linux

Pretty handy. Right?

More on Networking in Linux

If you have just started your carries or studies on networking, we have a detailed guide on most basic networking commands:

21 Basic Linux Networking Commands You Should Know
It’s not every day at It’s FOSS that we talk about the “command line side” of Linux. But as some of you readers pointed out in the internal survey (exclusive for It’s FOSS newsletter subscribers), you would also like to learn some command line tricks. So I
Netstat Command Examples in Linux

Want to know more about ports? We got you covered on that too:

Common Networking Port Numbers in Linux
Here are the common networking ports you’ll encounter in Linux.
Netstat Command Examples in Linux

That was it from my side. And if you have any doubts or have tips for beginners, you can share your precious knowledge through the comments.