The Linux Page

Help other users realize that everything is possible, especially avoiding Windows for their own personal use.

Welcome to The Linux Page

Fox Trot by Bill Amend. Click to enlarge.
Click to enlarge

This site is a collection of my own work with Linux. Certain things are easy, others take time to decipher and if I ever need to repeat the work (which usually happens!), then I need to remember everything by memory or... have a site with all the steps taken and to take again.

The following are my most recent posts:

Various types of noodles sorted by category in a box with columns.


A QTableWidget uses QVariant as its value type. By default, though, it expects a string (in the construtor, you do not have support for QVariant).

Note that the QVariant uses the QTableWidthItem::setData() function and it keeps the variant as such.

This is great, only sometimes (always?!) you need a formatted number and that's not likely to work as expected because a formatted number requires you to use a string, not just a number and a format (which would be a better solution, i.e. a per column format such as defined by the QString::arg() functions.)

Setup a ...

Foggy train tracks that divides as threads in a process do.


Working on a project that creates many threads handling many messages using secure sockets for everything, I ran in an interesting error (I broke up the error on multiple lines so it's easier to read than a one liner with a scrollbar!):

# OpenSSL error
06/11/18 14:31:39:error: tcp_client_server.cpp/bio_log_errors(367):
       OpenSSL: [336236705/20|169|161]:[<no libname>]:[<no
       funcname>]:[<no reason>]:[ssl_lib.c]:[1963]:[(no details)]

# My library error
06/11/18 14:31:39:error: safe_thread.h/run(468): a standard
       exception occurred in ...

Find the Frog! (Many frogs sculptures on a mini-bench in various position such as kissing, taking a bath, dancing...)


Today, I got a rather weird C++ error. That is. My code is very simply doing a search using the std::find() function as follow:

    auto it(std::find(
        , headers.cend()
        , column_name));

Yet, it would not compile that simple line of  code.

Clearly, I use the begin() and end() of the same vector, and I use a value which is exactly what the vector is made of (we see that in the first line of error below: the std::vector<> T parameter is a basic string, which is what column_name is.)

Looking at the error, we see that it ...

Rows and columns of boxes with a name... similar to a database of domain names.


At some point in 2017, the WHOIS registry was split in two.

Before that, WHOIS was all in one place (at least from what I understand) and thus a query would return all the info you could get.

Once in a while, I would receive an email from GoDaddy (which is not my favorite registrar anymore, although they still have excellent service.) That email would say "You have to update your information with ICANN."

This email has stopped for a couple of years now and that's in link with the split. You now register with your registrar and not ICANN so the updates have to be ...

I got a Jetson TX2 not too long ago and was first looking into how to play a 4K video using the full accelerated GPU to see that it would be all smooth and play with the correct colors, etc.

My first experience with SBCs was with a Raspberry Pi and that board would display really crappy videos.

The first test I tried was to go to Chrome, the browser, and then attempt to play the video from there. Unfortunately, Chrome has difficulties to find the right wayt to accelerate video decompression and thus it did everything in software. It would use a good 100% of the 6 CPUs and  the video ...

Train track echanger


Today I got an email from rkhunter telling me that port 7000 is now opened by /usr/bin/keybase that looked as follow:

Warning: Network TCP port 7000 is being used by /usr/bin/keybase. Possible rootkit: Possible rogue IRC bot
         Use the 'lsof -i' or 'netstat -an' command to check this.

If you are also running rkhunter, you certainly got the exact same message.


After close look up, I could see that was safe.

1) The process listening on port 7000 is indeed keybase, try the following command:

sudo netstat -a64np
Proto Recv-Q Send-Q ...

Train Wreck, meaning that the driver is now in timeout!

Today I had to work with a customer who decided to use GoDaddy to host their WordPress website. It's not a bad platform, they actually include quite a bit of integration between the WordPress installation on your server and your GoDaddy account. It gives you access to various functions and keeps track of necessary upgrades.

The account for the Hosting also includes information about sFTP. You can connect to your server using the SSH (Secure SHell) server and use that to send FTP commands to handle file transfers securely.

Your account may also have an FTP, I did not try. Just ...

Black board with various math formulae

LibreOffice offers a Math editor which is very powerful and allows you to write complex Math Formulae. Unfortunately, it's not one to one compatible with LaTeX (in case you learned that Math Language) and so far I've not found pages that would explain all the different cases I often would like to use in my formulae.

Learn everything you need to know about LibreOffice Math
Get the book and learn everything that you need to know about LibreOffice Math. (Note: I'm an Amazon Affiliate.)

Indeed, a few things are not self explanatory (and even certain things have weird side effects, like using additional ...

A meteorite flying in Earth atmosphere, ready to smash the ground and kill 95% of the animals on the entire planet.

As per the following page:

Drupal 6.x is also at risk from this issue. You can download Drupal 7 or 8 and compare and find out what is different between both versions.

The only difference between 7.57 and 7.58, which makes a difference, is a class used to remove any parameter that starts with a hash (#). Drupal defines arrays with keys. To distinguish between regular values and keys, Drupal uses words that start with a hash (#) for those keys.

Here are two lines of code that show that '#...' key usage:

$form['#pre_render'][] = ...

Row of jars with hot peppers in olive oil and delicious herbs.

As I have been looking around for various tools to help me determine what is happening whenever I have a reader on my blog, I found this tool which offers quite a few features for free which is called: HotJar.

One step in the process of using HotJar is to download a small JavaScript and add it to your website header. This script includes your website identification and allows for tracking your customers and see what they are doing on your website. Pretty nice to get a better idea of what's happening.

The hit with the "hjVerifyInstall" parameter happens whenever you click the ...

Thank you for visiting my website.