Death of CentOS? NOT… Think “rebirth” instead

I am active user of CentOS in production for many years and counting. While Windows was and still is my OS of choice on desktop, actively using WordPress and LAMP stack in general lead me to CentOS as a base platform to host our web applications and solutions. We are now equally using Debian in our deployments.

When RedHat announced shift of focus from CentOS Linux to CentOS Stream in December of last year it caused a stir in Linux/CentOS community. It was still acknowledged that announcement was botched and misleading. For me bells started to ring when IBM first acquired RedHat. Usually such changes lead to more “enterprisy” approach. And year later we now see it happening. How can we generate more $$$ for our shareholders has its meaning and drives future decisions. Yes, it is unclear what driven it and we would be told stories what lead to the decision, but there is old saying – follow the money – which most of the time is true.

Problem with CentOS was that it was sitting “downstream” from RHEL and led to the notion of “why pay for RedHat Unix when you can get even more stable CentOS for free”. Historically CentOS would receive changes even later than they are in RHEL/RedHat. I think thinking behind RedHat’s decision to move things around were rooted from the notion that CentOS cannibalizes on RedHat corporate sales.

New approach is that CentOS Stream, which is replacing CentOS Linux, is now moved “upstream” getting changes before RHEL gets them officially. This lead to a scare in the community and triggered people considering abandon then platform, i.e. “death of CentOS”.

“Reports of my death have been greatly exaggerated”, replied Mark Twain

or “The report of my death was an exaggeration” to be more accurate when asked to comment on rumor that he was dead.

CentOS is not dead. It changed its model. CentOS Project, it’s governing board and SIGs are still committed to CentOS growth.

Benjamin Porter wrote great detailed analysis of the story here – CentOS is NOT dead. Please Stop Saying It Is (at least until you read this). Please read it and don’t overlook links to internal blogs and announcements in the article, it worth the time spent reading ten fold.

Off course there is Debian and other Linux distros. Everyone is free to make their choices, just don’t base your decisions on misleading statements and news especially driven by enterprise marketing teams like these from RedHat FAQ.

If you’re using CentOS Linux in a commercial deployment, we suggest you look at moving to RHEL for the added management technologies, security, and support that are an integral part of the RHEL subscription. Our sales teams can help you identify the appropriate offerings that match your use case

Good luck and may the force of Open Source be with you always.

Posted in Piwigo, Technology | Tagged , , , , | Leave a comment

GreyDragon v.1.3.5 has been released

  • Verified compatibility with PIWIGO 11.x
  • Translation files synced from repo
  • Fix misalignment of admin section header for PW 11+
  • Fix issue with plugin detection

Posted in Piwigo, Technology, Web-design | Tagged , | Leave a comment

Making your network connected HP ENVY Photo 7855 print again

HP printers seems to always being stop-and-go solution. Anything from upgrading to new version of Windows, switching local to network or Wi-Fi can throw them off. Over years I had number of HP and Canon printers and latest device is HP ENVY Photo 7855.

It started all great – new printer arrived in good condition. Installation went well, Windows 10 recognized it and Store has proper apps to use. It appeared we have had a winner.

Note: Printer was connected over Wi-Fi with dedicated IP provisioned on secured locked down network.

After a while I started to notice that printer will not always register properly on restart/wake up and would become unresponsive to print requests. As a scanner it would continue operate without issues and scan as PDF to computer with ease.

Firmware, driver updates, software refresh did not address the issue that sending documents to be printed ended with generic error that printer unable to print. HP Smart was still recognizing printer presence. I was able to print status page, clean print heads, any other maintenance operations just fine, but trying to print from browser, PDF or other apps end up with failure. HP Print and Scan Doctor utility would consistently “fix” port issue.

This was a clue to follow…

When you dig in printer’s settings you will notice WSD port.

WSD is not a port but a ‘port monitor’. WSD devices communicate using a series of SOAP (Simple Object Access Protocol) messages over UDP and HTTPs BUT NOT local IP addresses. Therefore, there is not an IP address for WSD devices.

To find port associated with printer in Windows 10, open the Start menu by clicking the Windows icon on your taskbar. Start typing Control Panel until system finds it in apps and click to open. Select View devices and printers. Select your printer in Printers section and notice that Print server properties is activated in top bar – click to open.

Now the magic…

Scroll through the list of ports. You will see infamous WSD port – ignore it. Look for any ports marked as Standard TCP/IP Port. Check that none of them associated with your printer IP.

Printer IP can be found in your printer’s LED menu for your printer’s network connection. Printer must be setup to use Static IP. If you tap on network icon and drag it down, Info section would be opened and just below printer’s name, you will find printer’s IP Address. Write it down.

Go back to Print Server Properties and Add Port. In next step select Standard TCP/IP Port, click New Port and follow Wizard steps – provide you printer’s IP and Port Name (same as IP), complete other wizard steps. Once finished, a new port will be added into the list.

If port for our IP already existed, click Configure Port and verify that Printer Name or IP Address is correct, Raw protocol is being used, Raw port number is normally set to 9100. Click OK to exit Print Server Properties and save all your changes.

Almost done… but one more step – now we need to tell Windows which port to use.

In Devices and Printers dialog right click on your printer’s icon and select Printer Properties. Navigate to Ports… again. You will notice that port’s list now has check boxes next to ports available and WSD Port is selected. We need to fix that – find your new, just off the press Standard TCP/IP Port. Select it and make sure check box is ticked for it. Click Apply to save your great work.

Note: This last step most likely would need to be repeated every time a new driver update is installed as HP will revert your choices back and make printer inoperable again.

Switch to General tab and hold your breath in excitement while enjoying your beautiful test page being printed.

I have no idea why HP Printer Setup utility or HP Smart cannot configure printer properly for static IP use. It does see the printer. It communicates with it. HP Scan and Capture utility works just fine.

I cannot fathom why HP Smart drivers end up being not so smart.

I hope this little writing of mine helped someone avoid pain trying figure out why lovely HP printer is not so loving.

Posted in Scratch Pad, Technology | Tagged , , | Leave a comment

Firefox 77 and Awesome expanding address bar

Awesome design decisions

I do not have much time to write these days, but this situation made enough annoyance for me to warrant this content.

First, kudos to Firefox team for well maintained browser.


In general, I am one of the stubborn one, who do not like fluidity of Chrome and its ever changing behaviour. In the past, IE and Microsoft was the one breaking standards. Now it appears that these great minds moved to Google and every new version of Chrome will give you something new and unexpected from great wisdom of all-knowing and all-seeing company. 🙂

Firefox team seems to feel the pressure and joined the party of making users happier by delivering surprising features.

In last few months one of the great things to appear was expanding/enlarging address bar.

There is probably some great reason for it to behave this way, and I respect the decision Firefox UX team made, but it is really distracting.

In Firefox 75 and 76 advanced users could use about:config settings to suppress this behaviour, but it was taken away in Firefox 77, so I will skip referencing solution there and instead focus on awesome 77+ build and we would need to do some coding.

Taking control back

Chrome is creeping in. No way to avoid its influence these days.

As with Chrome, you can define your own CSS styles for Firefox as well, if you know the tags.

First, you need to enable CSS styles overrides for Firefox.
Visiting will help you with step by step instruction on how to do that here.

Once you give yourself tools, next step is to start using them – override how address bar is styled.

From the same site, you can grab ready to go userChrome.css file which will return your bar under control here then drop it into chrome folder under your Firefox user profile folder. It is important that you create chrome folder if it does not exist before placing CSS there.

After making sure toolkit.legacyUserProfileCustomizations.stylesheets is set to true in your about:config and restarting the Firefox, you will get your address bar back.

PS: Additional candy is that reviewing the CSS will tell you exactly how to modify the bar in any other way you like. Fave fun, give it color, make it big to take half the screen, go crazy. Just kidding.

Posted in Technology | Leave a comment

SearchWP and XPDF support


SearchWP is a nice WordPress plugin which allows to extend WordPress search capabilities to various content format beyond just page text.
Here I am focusing on PDF indexing specifically. If you have any PDF files published and want them be indexed SearchWP-XPDF extension can be deployed.


Problem is that SearchWP developers decided to rely on deployment of direct code from FooLabs.  If it is not deployed as a drop-in, functionality would be disabled.
Drop-in option is not always possible and in fact unnecessary for this plugin to function.

In distros like CentOS  PHP XPDF support is available out of the box and can be enabled by installing poppler_utils.


    • Install SearchWP Xpdf extension as you would normally do
    • In WP Dashboard warning would appear – “SearchWP Xpdf Integration requires you to download and install Xpdf…”
    • SSH to your server
    • Install poppler_utils using yum# yum install poppler_utils
    • Refresh your WP Dashboard page. Warning would not go away because code specifically looking for physical location instead of verifying XPDF support by OS
    • Now we do some hacking:
      • in your WP installation, navigate to /plugins/searchwp-xpdf/ and open searchwp-xpdf.php for edit
      • Look for “// see if Xpdf exists”
      • Comment out what follows
        // see if Xpdf exists
        if ( $continue && file_exists( $this->xpdfPath ) ) {
        echo 'Xpdf (pdftotext) was found, continuing<br />';
        } elseif ( $continue ) {
        echo 'Xpdf (pdftotext) was not found, aborting<br />';
        $continue = false;
      • Next look for function admin_notice()
      • Comment out content of the function to suppress Admin notice
        function admin_notice() {
        <?php }
    • Refresh WP Dashboard
    • Warning would now go away
    • Run indexing, PDF files should now be indexed properly


I did actually reach out to SearchWP team back in May 2017 and solution was acknowledged, but almost year later plugin still relies on custom drop-ins.


Posted in CentOS Maintenance, Scratch Pad | Tagged , , , , | Leave a comment

GreyDragon v.1.2.28 has been released

+ Translation improvements: CZ, LV, NL
+ Bootstrap CSS updated to 3.3.7
+ ADMIN: Small css improvements
+ Fixed issues with menus in various modes
+ CSS: Fixed issues with login page colors for controls
+ Added ID for download link

Posted in Piwigo | 6 Comments

WordPress Network and sub-domain setup

This is really a short note but may require some thinking when one run into it… so there you go.

Let me start by saying that I do have strong preference sub domain based WordPress Network instance over sub-folder.
In my opinion it is easier to maintain, and allow to manage stronger security.

Ok, “what is the problem?”, you ask.

Let’s say you have setup your blog as sub-domain to your main site. It may be the same machine or different instance altogether.
You run it for a while and there come time when you decided you want to host second blog and want to share the same WordPress instance.

Multi site support in WordPress is for a while and it is easy to setup and easy to maintain.

For most part that is it – simply follow these steps.

But there is a catch, if you run blog on the sub-domain, network setup wizard would warn you that you cannot enable network using sub-domain.
Not a problem – modify your wp-config.php by adding the following lines

/* Multisite */
define( 'WP_ALLOW_MULTISITE', true );

/* Multisite */
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', '<your-domain-name>');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

Now you can logoff and log back in and you should be able to create new sit using different sub-domain.

This is not all – what you will most likely run into is inability to use the same users across both sites.

Note: It is important to understand that by using the same names across multiple sites you may slightly reduce your security protection.
So make sure that you are:

  • Keep your Network instance up to date with updates
  • Using Security plugin like iThemes Security
  • Change admin user to something other than “admin”
  • Protect site from brute force attacks

What could happen is that when trying login to second site or switch between sites from Admin panel you would get message that your browser does not support cookies or you will not be able navigate to second site’s Dashboard.

What is the problem? Problem is how WordPress maintains user session using cookies.

To fix it add one more line into your wp-config.php file


Now you should be all set

Posted in Web-design | Tagged , , | Leave a comment