As we all know wikipedia is a bitch to set up. now that we are talking about switching from one distro to another, it will be even more of a bitch to set up.
Here is the solution: UML, user mode linux (it lets you run an complet emulation of linux inside your own linux box). So: instead of telling people they need php 4.3.2 and apache 2.0.48 with this and that compile option (a combination which might not be available to some distros), simply: use dd to create a running image that people can run right off the bat (they could probably use the thing that lets you run linux inside windows as well...).
The beautiful thing about UML is that it has no hardware requirements: eg no kernel compile need be done by the image makers (like knoppix for example which just throws every imaginable driver on there), eg up and running within minutes.
But does the beauty of this idea stop here ? NO. This is fine for testing purposes (running a slow UML image that is), but if someone wants to run wikipedia without limits then they can simply find a kernel that works for their machine, drop it into the image (maybe a small touch of hacking required by us to create a utility to drop a kernel in), and then use a tool designed to plop images directly onto a harddrive (like the proprietary "symantec ghost").
Aside from allowing the world an unprecentedly easy way to hack,tinker,consider,or use wikipedia on their own, this process will make operations inside wikipedia easier. Yes, all code should be included in this image, the database code the web code: so that any machine can be an: all-in-one, or database-only eg...with an /etc/wikipedia-node.conf file (this would help when new machines come in AND when important machines go down).
This idea originally spawned out of the fact that all parts of wikipedia's code are not on sourceforge, when i asked why i was told "there is some site specific code". The only thing that is site specific in my mind are the passwords everything else should be exactly what the public is getting, down to the byte. And its great to make it in an extrememly easy to use format as well which defeats the difficult-to-setup aspect.
Well as I hope you can understand, its better for all that its wholly open setup and why not make it easy!
I hereby declare wikipedia an OS.
-Hunter Peress
__________________________________ Do you Yahoo!? Exclusive Video Premiere - Britney Spears http://launch.yahoo.com/promos/britneyspears/
Hunter Peress wrote:
Here is the solution: UML, user mode linux (it lets you run an complet emulation of linux inside your own linux box).
While I'm not opposed to someone doing this, it's a pretty nonstandard way of doing things, isn't it?
So: instead of telling people they need php 4.3.2 and apache 2.0.48 with this and that compile option (a combination which might not be available to some distros), simply: use dd to create a running image that people can run right off the bat (they could probably use the thing that lets you run linux inside windows as well...).
Hmmm, I think a better approach (meaning, more mainstream in the *nix world) would be to examine to what degree we do have unnecessary dependence on particular versions of this, that, and the other.
And then work to make sure someone can download, untar, configure, make, make test, make install and have it be likely that everything would work.
If you're talking about having a standalone reader, then Magnus's work seems like the right way to go with that.
But if you're talking about having an easy-to-install full version of MediaWiki, well, it *is* a website, not a standalone app, and so there's going to *have* to be some work for the end user in terms of making sure that the prerequisites are installed.
--Jimbo
wikitech-l@lists.wikimedia.org