OpenVPN Install (Ubuntu 20.04)


This script will let you set up your own in no more than a minute, even if you haven't used before. It has been designed to be as unobtrusive and universal as possible.

GitHub: openvpn-install

I tested it on 20.04, and it works like a charm.


WP-CLI Error: PHP Deprecated: implode(): Passing glue string after array is deprecated.

I use WP-CLI to maintain my WordPress sites. It's simple, it handy, and it works without any issues.

For example, I can updates all my and (if updates are available) by executing wp theme update --all and wp plugin update --all. If core engine is available, I only need to run wp core update.

But there is a problem when I update recently. Running wp plugin update --all to update all available plugin updates give me an :

PHP Notice:  Trying to access array offset on value of type null in phar:///usr/local/bin/wp/vendor/wp-cli/extension-command/src/Plugin_Command.php on line 663
Notice: Trying to access array offset on value of type null in phar:///usr/local/bin/wp/vendor/wp-cli/extension-command/src/Plugin_Command.php on line 663

But, all updatable plugins were updated successfully. I tried to find the solutions, but I found nothing. I also try to use the nightly version via wp update --nightly, but still no luck.

Here are my wp --info

OS: Linux 5.4.0-42-generic #46-Ubuntu SMP Fri Jul 10 00:24:02 UTC 2020 x86_64
Shell: /bin/bash
PHP binary: /usr/bin/php7.4
PHP version: 7.4.3
php.ini used: /etc/php/7.4/cli/php.ini
MySQL binary: /usr/bin/mysql
MySQL version: mysql Ver 8.0.21-0ubuntu0.20.04.4 for Linux on x86_64 ((Ubuntu))
SQL modes:
WP-CLI root dir: phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI vendor dir: phar://wp-cli.phar/vendor
WP_CLI phar path: /home/path/to/my/directory/
WP-CLI packages dir:
WP-CLI global config:
WP-CLI project config:
WP-CLI version: 2.5.0-alpha-068c252


Adding Block Storage to an Existing Cloud at Linode

This is hosted at Linode's smallest package. Besides this blog, I have some other domains and small -based sites here. Most of them are not busy site. So, $5/mo is just gret. But, there is a small problem: .

Yesterday, I almost utilised 95% of the 25GB of storage limit. I was thinking of upgrading the to the higher specs. $10/mo is still a good deal. But, I only need the storage at this moment. Paying $10/mo will give me additional 25GB of storage.

I already knew that Linode also provides block storage, and I never looked up for this addons. So, I gave it try and tried to prove that the how-to works as written. So, from the panel, I chose to add 20GB of storage and follow the instruction in the input fields.

It took only than a minute I think to create the disk storage.

Once the disk created, I only need to run some commands as instructed in the page. It was that simple.

After that, I moved some of my files to the new partition, and changed some configurations. Also, I moved storage to this partition, because it utilises the most. the process also pretty straightforward.

And, I only need to pay extra $2/mo for 20GB additional storage.



OpenVPN Setup on Ubuntu 18.04 LTS

I could not remember exactly when I setup OpenVPN for the first time. As far as I remember, it was not an easy task. But, I need to have it installed, and I found it easier. Probably, because it's easier to setup on Ubuntu 18.04 LTS?

I need to have it setup because I have some sites blocked by my provider. Using 's ( or even ClouFlare's did not help either. Changing the DNS made my internet connection do not work.

So, I need to set up somewhere. I was thinking of having it setup on my own cloud server at Linode. Lucky that there is a straight-forward tutorial on how to setup OpenVPN on 18.04 LTS. I will write it down also here for my personal documentation.


First, update the system by running apt-get update and then apt-get upgrade. For me this is optional.


Compile ssh2 bindings extension for PHP7

Compile ssh2 bindings extension for PHP7. After moving to 7 on 16.04, this is a handy solution.


Switch to Letsencrypt

Since my Comodo PositiveSSL Certificate for this blog is about to expired, I decided to switch to Let's Encrypt. The implementation was easy. I was refering to DigitalOcean‘s : How To Secure Nginx with Let's Encrypt on Ubuntu 16.04.


Raspberry Pi 2

Raspiberry 2
Raspberry Pi 2 is on sale for $35. It has ~6x using a 900MHz quad-core ARM Cortex-A7 CPU compared to the previous product. It's also said to be supporting ARM GNU/ distributions, including Snappy Core, as well as 10. ( source: Hackaday)


Internet Browser Memory Battle

I have some browsers installed in my PC and like Opera, Firefox, Flock, Safari (for ) and also Internet Explorer. For my OpenSUSE and Ubuntu, I only have and . Among those, I only use two browsers regularly. For the other, I only use it for web purposes.
Even I — think — I have enough memory to run some at the same time, I love when those browsers do not eat too much memory. So far, I like Opera and Firefox (I use the latest version). Not only that I feel comfortable using them, but also because they have good memory management. If you want to reader some detailed analysis, there are some articles on the internet. Here are some:

The good think is that… I use my favorite , and they're also good. Nice.