IMPORTANT NOTES
This concept was taken from Drupal.org which offers tarballs of module and themes you can download to install in your installation. Instead we are now offering a set of pre-compiled packages that can be installed on your Ubuntu server with apt-get. This includes all the necessary security (SSL, MD5 and similar sums, key signatures, and also it can be auto-updated as required.)
However, we may want to have some form of a signal that tells websites whether they are up to date and whether an update is a security update (i.e. we can connect to a server that gives us information about all the plugins and whether they need upgrading because of security reasons.)
We can, from the front end, offer an administrator to run apt-get upgrade, and other such commands that would keep the server up to date. The user could choose to force automatic upgrades only when a security upgrade is offred. However, if we are using any debug plugin, it may not be advisable.
Finally, we could offer the full set of commands so one can add a PPA from someone anyone offering Snap Plugins and then run apt-get install to install new plugins. We would still offer the list of plugins to load in our website settings (so if you install a PPA offering 20 plugins, you could just install one of those plugins.)
As other PPA are created, we could also endorse some of them. That way these could appear in our settings and could be added with one click on the name of the extension.
Assuming we can offer a secure connection to customers, we want to offer pre-compiled versions of Snap! Websites that can auto-update themselves.
The server checks for updates and tells the owner of availability. Retrieve the new plug-in, install it, ask for a server restart (Snap! Websites server, not the entire computer.)
This being said, if we assume a "complex" Linux installation (between the Apache setup, the private files, multi-site, Cassandra...) then we may not need this type of a feature (the auto-install.)
On the other hand, it is nice to have such a feature. All the downloads would use encrypted connections and verify MD5-like sums to make sure the download worked as expected.
Snap! Websites
An Open Source CMS System in C++