This is a very rough proof of concept patch, but the basic idea is to provide a simple command that gets users a working Drupal site, with nothing but php and Drush installed and with as close to zero configuration as possible.
To use it, run something like "drush -y qd mysite", and the command will:
- Download the latest stable Drupal into ./mysite/drupal.
- Install it, using SQLite at ./mysite/mysite.sqlite for the database.
- Generate a login link for user 1
- Initiate runserver to serve the site
- Open the default browser with the login link
While you can easily do each of these things separately, this just seems really convenient - both for new developers who just want to get started with minimum hassle, and for other developers who maintain different sandboxes for different core/contrib patches/projects (and have sample config/content appropriate to each patch).
I had trouble coming up with a descriptive enough name for this - in the end I went with with "quick-drupal", but I guess "auto", "start" or some other phrasing may make more sense. Also no idea if this should be with core, or part of runserver.
The command should accept almost any available option for each of the subcommands, so is pretty flexible. It is also pretty quick (especially with --cache - 13 seconds on my laptop), and it manages to do all the steps in a single incremental bootstrap. I am not 100% sure about the browser opening, skipping this may be better - it does work for me though (didn't test on OS X, although in theory "open" should do it). An interesting addition could be if arguments (after the site name) could accept contrib modules to download (and enable if drush can figure out the name).