phenaproxima / starshot-prototype

Prototype of a new kind of Drupal, based on recipes and loaded up with contrib's best modules and themes. Not a fork or a distribution.
https://drupal.org/starshot
104 stars 36 forks source link

Don't require PHP and Composer on host machine for DDEV install #116

Closed gitressa closed 1 week ago

gitressa commented 1 week ago

Problem

The new DDEV installation works great. It is pretty fast, and the site is ready after about 1 minute, so thanks for that.

However, the new DDEV install method is not ideal, since running composer create-project requires that both PHP and Composer are installed on the host machine ...

This defeats one of the killer features of DDEV: The user has only a single environment for PHP as well as Composer, and the entire development environment is contained inside DDEV.

Having PHP installed on both the host machine, as well as DDEV is just a mess, which often leads to weird and mysterious conflicts ...

Those who follow best DDEV practice, and do not have PHP nor Composer installed on their host machine, cannot install Starshot with the current method.

Solution

Create a DDEV environment first, to allow running the DDEV command composer create, which places a Composer project in the present folder, from where the command is run.

Also, let's use PHP 8.3, since that's the recommended PHP version for Drupal 10.3, as well as required for Drupal 11 which is released next month.

phenaproxima commented 1 week ago

Yeah, I sorta ran into this problem last night. It is a bit messy.

What I don't love about this is that it makes the installation much more complicated, with a big set of commands to run. Eurgh. The one advantage of the current way is that you have exactly two commands, composer create-project, then the quick-start.

gitressa commented 1 week ago

Yes, I know ... But having to enter five lines is less of a headache and less error prone, than requiring PHP and Composer on the host machine ... and simply put, it's just not good practice.

gitressa commented 1 week ago

The PR was updated to use git clone instead, and Starshot with DDEV does not require PHP and Composer on the host machine.

phenaproxima commented 1 week ago

The fun thing about using git clone is that one could also just download a zipball, unzip it, and then run ddev quick-start in there. So you in theory wouldn't even need git!

gitressa commented 1 week ago

Heh, even more minimalistic!