by incompatibility, I’m assuming that you just mean that you haven’t automated the other products to use the Lighttpd stack if selected. Is that correct?
Also, is there a quick list of which other apps will trigger a Webserver Stack to be installed?
personally, I’m interested in whether LinuxDash, PhpSysInfo, or phpMyAdmin are coded to trigger a webstack install?
I’m also curious if phpMyAdmin works with MariaDB? It’s my understanding that MariaDB is supposed to be a drop-in replacement for MySql, but I haven’t experimented with it yet.
P.S. I noticed that there isn’t a v109 posting in the Version History section.
A few automated installations automatically install the LASP Stack.
In your Case:
LinuxDash installs LASP
PHPSysInfo installs LASP
phpMyAdmin doesn’t install any Stack but it requires MySQL to be preinstalled!
Maybe FourDee can do some Code Magic and instead of automatically installing LASP Stack, ask for what Stack should be installed while installing LinuxDash or PHPSysInfo or any other Package that automatically installs LASP Stack.
DietPiCam is the only piece of software where Apache or Nginx should be enforced…
you just saved me a couple re-imaging reboots and/or code combing tonight…
instead, I’ll test phpMyAdmin with MariaDB. I’ve got to test if MySql gets installed automatically when you select phpMyAdmin, or if it just fails. I should also do some googling to see if MariaDB truly is a drop-in replacement.
Having an option to choose between apache2/nginx/lighttpd stacks for the above software would be great. The only issue is the sheer amount of additional testing and coding for each program using all combinations of the stacks. Its a vast job.
We choose to stick with apache2 for simplicity reasons. Not just for the coding side, but also for the end user. An example of this is LetsEncrpt, which at the time of adding to DietPi only supported Apache2 stacks.
Also, most web based software tutorials and guide use Apache2 as the base, so this ensures the end user of DietPi (no matter their skill level) can follow the guide on their existing LAMP/LASP install.
The Lighttpd and Nginx stacks are there for advanced users who want an optimized installation and webserver stack. The user is then required to setup their website programs manually.
ps. Good spot on the release notes. Added to my “list of things to do”
pps. MariaDB with phpymadmin. In theory it should work, both work in the same way, but i’ve not tried it yet.
Thanks. that link was exactly what I needed.
on the Lighttpd/MariaDB/phpMyAdmin topic…
the short answer is yes… On my test Pi2, I’ve got Lighttpd, MariaDB and phpMyAdmin working together. There was a long of trial and error and “undoing that attempt” situations… so I’ve got to rebuild the machine again tonight and try again to see if I can accomplish the goal in 1 swoop that is automatable…
As an example:
When I do a fresh DietPi install for testing, once the basic installation process is completed (eg: nothing installed), I create a dietpi-backup before doing anything else.
Once I’ve finished “fiddling” and testing, i simply restore the previous backup. Means I dont need to rewrite the DietPi image
Come to think of it, it’s only the web software that we install with apt-get that would be an issue for non-apache webstacks.
I know Owncloud is an apt-get (using opensuse repo), but I’ll have to look over the code for all of them to be sure.
argh… found my oversight… now I can’t wait to get home to verify… I’d have my wife swap out the cards, but she’s not home… ACK!
I’m pretty certain that all of these “default to LASP” packages can be added to the new if-block, but I have only tested DASH and PHPSYSINFO.
I found a PHP-FPM section further down in the code that was setting the cgi.fix_pathinfo=0, but this breaks phpMyAdmin. I couldn’t find any documentation to suggest why you set it to 0, so rather than add a specific WEBSERVER_LIGHTTPD test inside the WEBSERVER_MYADMINPHP block, i just set the original line equal to 1…
also, I found a potential bug in a couple of the debconf-set-selections lines of the phpMyAdmin install… per this doc: https://www.debian.org/releases/squeeze/i386/apbs03.html.en, there should only be 1 whitespace beteen and … any more and it is interpreted as part of the value. so, that’s fixed with this patch, as well.
--- dietpi/v109/dietpi-software 2016-02-23 13:48:59.470237319 -0500
+++ dietpi/v110/dietpi-software 2016-02-23 14:07:16.800237450 -0500
@@ -481,6 +481,16 @@
# Apply all "combo" installs that require webserver stack
+ # - Installs that require at least 1 webserver stack
+ # - If none set, then enable LASP stack
+ if (( $LINUXDASH == 1 || $PHPSYSINFO == 1 )); then
+ if (( $WEBSERVER_LASP == 0 && $WEBSERVER_LAMP == 0 && $WEBSERVER_LAAP == 0 && \
+ $WEBSERVER_LESP == 0 && $WEBSERVER_LEMP == 0 && $WEBSERVER_LEAP == 0 && \
+ $WEBSERVER_LLSP == 0 && $WEBSERVER_LLMP == 0 && $WEBSERVER_LLAP == 0 )); then
# - Installs that require WEBSERVER_LASP
if (( $GRASSHOPPER == 1 )); then
@@ -488,12 +498,12 @@
elif (( $RASPCONTROL == 1 )); then
- elif (( $LINUXDASH == 1 )); then
+# elif (( $LINUXDASH == 1 )); then
elif (( $PIHOLE == 1 )); then
- elif (( $PHPSYSINFO == 1 )); then
+# elif (( $PHPSYSINFO == 1 )); then
elif (( $PHPIMAGEGALLERY == 1 )); then
@@ -748,14 +758,18 @@
#Mysql must be running during install to allow debconf setup.
service mysql start &> /dev/null
- echo -e "phpmyadmin phpmyadmin/dbconfig-install boolean true" | debconf-set-selections
- echo -e "phpmyadmin phpmyadmin/database-type select mysql" | debconf-set-selections
+ echo -e "phpmyadmin phpmyadmin/dbconfig-install boolean true" | debconf-set-selections
+ echo -e "phpmyadmin phpmyadmin/database-type select mysql" | debconf-set-selections
echo -e "phpmyadmin phpmyadmin/app-password-confirm password dietpi" | debconf-set-selections
echo -e "phpmyadmin phpmyadmin/mysql/admin-pass password dietpi" | debconf-set-selections
echo -e "phpmyadmin phpmyadmin/password-confirm password dietpi" | debconf-set-selections
echo -e "phpmyadmin phpmyadmin/setup-password password dietpi" | debconf-set-selections
echo -e "phpmyadmin phpmyadmin/mysql/app-pass password dietpi" | debconf-set-selections
- echo -e "phpmyadmin phpmyadmin/reconfigure-webserver multiselect apache2" | debconf-set-selections
+ if (( $WEBSERVER_LIGHTTPD > 0 )); then
+ echo -e "phpmyadmin phpmyadmin/reconfigure-webserver multiselect lighttpd" | debconf-set-selections
+ echo -e "phpmyadmin phpmyadmin/reconfigure-webserver multiselect apache2" | debconf-set-selections
@@ -2478,7 +2492,7 @@
# - Php-FPM confs
cp /DietPi/dietpi/conf/php-fpm.conf /etc/php5/fpm/php-fpm.conf
cp /DietPi/dietpi/conf/php-fpm_pool.conf /etc/php5/fpm/pool.d/www.conf
- sed -i '/cgi.fix_pathinfo=/c\cgi.fix_pathinfo=0' /etc/php5/fpm/php.ini
+ sed -i '/cgi.fix_pathinfo=/c\cgi.fix_pathinfo=1' /etc/php5/fpm/php.ini
# - PHP5-fpm optimizations based on total cores
sed -i "/pm.max_children = /c\pm.max_children = $CPU_CORES_TOTAL" /etc/php5/fpm/pool.d/www.conf
I cant honestly remember. I usually leave notes in the code, so its possible its not needed as you said.
Have you ever used GitHub before? I’am just curious as this would allow you to contribute to the DietPi code and it would give you full credit for any work you completed.
Here is the testing branch, you can create a fork of this, make the changes then send a pull request so I can accept the changes.
there should only be 1 whitespace beteen and … any more and it is interpreted as part of the value
Intresting. Seems to work currently, which would imply this isnt true? The extra whitespaces are only for my benefit to line up the code: