[BlueOnyx:25599] Re: AlmaLinux 9 - BlueOnyx 5211R development

Ernie ernie at info.eis.net.au
Sat Aug 27 08:49:13 -05 2022


Hi Michael,
I think a sandboxed environment for the admserv GUI is a better setup than
it was. You still have a market for the Solarspeed PHP package, as there are
lots of different PHP versions in use on BX. I still have people on php PHP 5.3.3 
because the bespoke site developer is no longer contactable!


- Ernie.




> Hi all,
> 
> Some more updates on the BlueOnyx 5211R development:
> 
> It turned out we need in fact a separate PHP for AdmServ. Which is 
> something we wanted to avoid for reasons posted above. But it turns out 
> it cannot be avoided for reasons beyond our control.
> 
> Shop PKGs with PHP GUI pages are encoded with IonCube encoder. Most 
> prominently the NewLinQ GUI pages, as these handle the license 
> management. Obviously we need to protect the means and methods used 
> within these. Hence the encoding in those and as proprietary commercial 
> add-ons they are shipped under a different license than BlueOnyx itself. 
> Whereas all GUI pages that ship with BlueOnyx itself are free of such 
> encoding to adhere to the Open Source ideals.
> 
> Now I got to a point where I was building the "solarspeed-ioncube" RPM 
> to satisfy the dependencies we need to let AdmServ (and the regular OS 
> provided PHP 8.0.13) use the IonCube Loader. Turns out: IonCube does NOT 
> offer a loader for PHP-8.0. They do have one for PHP-8.1, though.
> 
> When asked about this oddity they explained that they had skipped 
> PHP-8.0 to chafe off a few months of development and had gone straight 
> to PHP-8.1. "Which is better anyway." Yeah, sure <sigh>.
> 
> So ... no IonCube for PHP-8.0. What now?
> 
> That meant we had to use another PHP version for AdmServ. One for which 
> IonCube provides a loader. Like PHP-7.4 or PHP-8.1. Now PHP-7.4 would 
> have the benefit that the GUI would run on it "as is" w/o further 
> changes. At least as far as older CodeIgniter 3 and the PHP pages are 
> concerned. But I'll not ship BlueOnyx 5211R with an outdated CodeIgniter 
> and a PHP-7.4 that is already EOL or as good as EOL. I'm not even sure 
> if PHP-7.4 would compile on EL9 due to OpenSSL 3 and the more picky GCC 
> it uses.
> 
> So PHP-8.1.9 it is for the moment. I scripted an automatic update 
> process on a devel box that will spit out updated "admserv-php" RPMs for 
> 5211R whenever a new PHP-8.1 version is released. That script then 
> publishes the RPM and SRPM to an internal YUM repository from which I 
> can test them before release. So we got that covered nicely. Eventually 
> when PHP-8.1 goes EOL, the GUI will switch to a more modern PHP version.
> 
> The change to PHP-8.1 for AdmServ also necessitate the switch to 
> CodeIgniter 4.2 for the GUI, which is a process that was already started 
> anyway. PHP-8.1 also required that we ditch the PHP PECL extension 
> "crack". That provides PHP with an interface to "cracklib" for password 
> strength tests. That extension hasn't been maintained in more than a 
> decade. While it was still available for PHP-8.0 it finally doesn't play 
> nice with PHP-8.1 anymore. But we already had a replacement for that for 
> years (via an internal PHP Class), as it was clear that this would 
> eventually happen.
> 
> There are some more causalities:
> 
> * Mailman: "It's dead, Jim!"
> 
>    I can't get it to build and so far nobody has Mailman 3
>    RPMs/SRMS that work with EL9 due to an insane amount of Python 3
>    related dependencies.
> 
>    Should this situation change and evenutally someone builds EL9
>    RPMs for Mailman (and its dependencies!), then it will be added
>    back in. But for now: It's gone.
> 
> * Net2FTP: We used that PHP based file manager in 5209R and 5210R to
>    allow people with FTP, SCP or Shell access to manage their files
>    via the GUI. That project is dead since 2019 and the PHP code of it
>    failed horribly under PHP-8.0. I don't even need to test it under
>    PHP-8.1 to know that it won't work.
> 
>    So that one is a goner, too. Any other good solution I found is either
>    payware, or so horribly insecure or so bland, that it would be madness
>    to include it. Eventually I'll throw in a simple file manager via
>    regular GUI methods as replacement, though.
> 
> Other than that things are looking good. For the rest of the stuff I 
> have all dependencies satisfied. With CodeIgniter 3 and PHP-8.0 I had 
> the GUI working except for some minor glitches. And with PHP-8.1 and 
> CodeIgniter 4 I'm in a stage where I'm still sorting out a lot of 
> fundamentals because of the many changes in both CodeIgniter and PHP, 
> which require a lot of tinkering in pretty much any library, module and 
> GUI page.
> 
> That work is progressing nicely by the day (and nights), but it's too 
> early to say when an end to that might be in sight. But this is bread 
> and butter coding without any large surprises.
> 
> -- 
> With best regards
> 
> Michael Stauber
> _______________________________________________
> Blueonyx mailing list
> Blueonyx at mail.blueonyx.it
> http://mail.blueonyx.it/mailman/listinfo/blueonyx



More information about the Blueonyx mailing list