Hau mitakolapi (hello my friends),
while I know some in our community have been working on things like unity or gnome-3, I choose recently to play with icewm. I had wanted to create a self contained virtual machine that included a lamp stack, some applications, and a preset browser, all of which come up together and then behave something like a desktop "application" when the virtual machine is executed. Originally the idea was to create a pre-bundled sipwitch/lamp environment (one thought was a pre-bundled friendika with sipwitch), and of course this could include a pre-configured voip desktop client as well. However, this seemed like it might work for other interesting and more general use cases.
The reason for icewm is both lightweight, and the ability to modify application window manager behavior in some detail, such as through ~/.icewm/winoptions. The browser can then be started auto-maximized and without a title bar easily, for one example. Other things like whether apps appear in trays, taskbars, and and window lists, or what buttons they have if a title bar is allowed, can also all be controlled. Runonce is also a very useful option in icewm to assure only one instance can be launched. The desktop workspace "buttons" can be made to act like tabs to select from multiple applications, each for example started maximized in a separate workspace as needed. This together helps create an illusion and behavior for the user of an "application" being ran rather than being a complete desktop in a virtual environment.
One idea that came out of this was for a pre-bundled secure computing virtual client, such as an iceweasel with tor, icedove with enigmail, pidgin with otr, twinkle with zrtp, all pre-installed and configured to come up together in a single instance virtual machine ready for use by human rights workers worldwide. However, the most interesting idea so far has been that of a virtual classroom that can be used for teaching and bringing together teachers and open courseware with Moodle prebundled with a browser in a complete and transportable virtual environment any teacher can setup and run without needing servers to host it or infrastructure to connect.
My interest in Moodle in particular, and in using sipwitch with it also, really started because the Cherokee council I choose to participate in has been discussing the need for distance learning to teach the Tsalagi (Cherokee) language. That Tsalagi speakers have been scattered across North America as a consequence of the Indian removal acts has often made it difficult to bring together those with the knowledge to teach with those who wish to learn, as they may often not even be geographically close.
My interest in using virtual machines with a complete lamp stack and preset web clients really came from my need to demonstrate sipwitch. Often when I needed to do so, I would configure some temporary install in some appropriate configuration as needed for the event I was speaking at. This meant that when I was not using my laptop, the configuration would grow stale (bit rot), and then I would have to update things and make it ready again with recent changes. If on the other hand I had a pre-configured virtual machine I could take with, all pre-configured from both the services and application level (browser), then suddenly it would become very easy to just take that with me remote, and maintain it locally when needed on my desktop machine. While icewm meant minimal resources to bring up such an environment, that I could make it launch and operate like a self-contained application was initially just an additional bonus, even almost a curiosity.
Some might ask why I am suggesting VirtualBox rather than QEMU. While I do not have need to make use of any special things like USB support, or guest editions in my work, there is one essential disadvantage I also do find in QEMU. They have moved away from supporting things like kqemu and instead have kvm which requires explicit cpu support (vt-x and amd-v) for x86 native acceleration. Most of my machines do not have cpu virtualization support (in fact I only have 1 machine that does), where VirtualBox does retain support for native accelerating x86 on non-virtualizing cpu's. When thinking about the human rights worker use case, it was also essential to consider the deployment and use of such virtual machines on all possible computing platforms, and VirtualBox also offers non-virtualizing acceleration support on all supported platforms, too, where kqemu, even when it was actively supported, was only a GNU/Linux hosted solution, as it existed only as a Linux kernel extension.
Support for non-hardware virtualizing cpu's is essential for people who have older or cheaper hardware, and falling back to pure translation is not an ideal answer as after all cryptographic apps are going to be particularly user-space compute-bound. Even in my own case, I actually only posses one machine that has the hardware virtualization support required by kvm, and I know many people worldwide that are politically active and do not have access to or own any machine with virtual extensions. On our reservations, too, where per capita income is often below $4000, there is little in the way of recent generation computing hardware, and asking people to "upgrade" is as practical as asking them to pay for a shuttle ride.
But getting back to Moodle, there were clear benefits unrelated at all to distance learning. If you bring a Moodle virtual machine locally to a connected classroom, using multicast dns everyone can then find and connect to it. Perhaps you could publish access to it over something like dyndns when your teaching remote or for student access after class. Or a teacher can bring it home each night and work on course materials for the next day without needing connectivity. These were the immediate use cases I was thinking about in regard to virtualizing Moodle bundled with a pre-configured browser as a complete self-contained environment. Certainly it gets around all the problems of having to provision a server to host your Moodle somewhere, or even the need to have internet connectivity to use it to teach. And being able to backup and clone configurations also becomes so very simple.
We are now looking to bring some of these ideas forward as an active project, and I anticipate with the active support of the Cherokee council I presently work with. I would be happy to hear from this community on ideas in this area. Given the size of the files needed for a complete virtual machine, it would seem to me something like bit-torrent would be a logical means of actual distribution rather than trying to find some multi-gig file hosting. We may also look at doing a UNESCO grant.
while I know some in our community have been working on things like unity or gnome-3, I choose recently to play with icewm. I had wanted to create a self contained virtual machine that included a lamp stack, some applications, and a preset browser, all of which come up together and then behave something like a desktop "application" when the virtual machine is executed. Originally the idea was to create a pre-bundled sipwitch/lamp environment (one thought was a pre-bundled friendika with sipwitch), and of course this could include a pre-configured voip desktop client as well. However, this seemed like it might work for other interesting and more general use cases.
The reason for icewm is both lightweight, and the ability to modify application window manager behavior in some detail, such as through ~/.icewm/winoptions. The browser can then be started auto-maximized and without a title bar easily, for one example. Other things like whether apps appear in trays, taskbars, and and window lists, or what buttons they have if a title bar is allowed, can also all be controlled. Runonce is also a very useful option in icewm to assure only one instance can be launched. The desktop workspace "buttons" can be made to act like tabs to select from multiple applications, each for example started maximized in a separate workspace as needed. This together helps create an illusion and behavior for the user of an "application" being ran rather than being a complete desktop in a virtual environment.
One idea that came out of this was for a pre-bundled secure computing virtual client, such as an iceweasel with tor, icedove with enigmail, pidgin with otr, twinkle with zrtp, all pre-installed and configured to come up together in a single instance virtual machine ready for use by human rights workers worldwide. However, the most interesting idea so far has been that of a virtual classroom that can be used for teaching and bringing together teachers and open courseware with Moodle prebundled with a browser in a complete and transportable virtual environment any teacher can setup and run without needing servers to host it or infrastructure to connect.
My interest in Moodle in particular, and in using sipwitch with it also, really started because the Cherokee council I choose to participate in has been discussing the need for distance learning to teach the Tsalagi (Cherokee) language. That Tsalagi speakers have been scattered across North America as a consequence of the Indian removal acts has often made it difficult to bring together those with the knowledge to teach with those who wish to learn, as they may often not even be geographically close.
My interest in using virtual machines with a complete lamp stack and preset web clients really came from my need to demonstrate sipwitch. Often when I needed to do so, I would configure some temporary install in some appropriate configuration as needed for the event I was speaking at. This meant that when I was not using my laptop, the configuration would grow stale (bit rot), and then I would have to update things and make it ready again with recent changes. If on the other hand I had a pre-configured virtual machine I could take with, all pre-configured from both the services and application level (browser), then suddenly it would become very easy to just take that with me remote, and maintain it locally when needed on my desktop machine. While icewm meant minimal resources to bring up such an environment, that I could make it launch and operate like a self-contained application was initially just an additional bonus, even almost a curiosity.
Some might ask why I am suggesting VirtualBox rather than QEMU. While I do not have need to make use of any special things like USB support, or guest editions in my work, there is one essential disadvantage I also do find in QEMU. They have moved away from supporting things like kqemu and instead have kvm which requires explicit cpu support (vt-x and amd-v) for x86 native acceleration. Most of my machines do not have cpu virtualization support (in fact I only have 1 machine that does), where VirtualBox does retain support for native accelerating x86 on non-virtualizing cpu's. When thinking about the human rights worker use case, it was also essential to consider the deployment and use of such virtual machines on all possible computing platforms, and VirtualBox also offers non-virtualizing acceleration support on all supported platforms, too, where kqemu, even when it was actively supported, was only a GNU/Linux hosted solution, as it existed only as a Linux kernel extension.
Support for non-hardware virtualizing cpu's is essential for people who have older or cheaper hardware, and falling back to pure translation is not an ideal answer as after all cryptographic apps are going to be particularly user-space compute-bound. Even in my own case, I actually only posses one machine that has the hardware virtualization support required by kvm, and I know many people worldwide that are politically active and do not have access to or own any machine with virtual extensions. On our reservations, too, where per capita income is often below $4000, there is little in the way of recent generation computing hardware, and asking people to "upgrade" is as practical as asking them to pay for a shuttle ride.
But getting back to Moodle, there were clear benefits unrelated at all to distance learning. If you bring a Moodle virtual machine locally to a connected classroom, using multicast dns everyone can then find and connect to it. Perhaps you could publish access to it over something like dyndns when your teaching remote or for student access after class. Or a teacher can bring it home each night and work on course materials for the next day without needing connectivity. These were the immediate use cases I was thinking about in regard to virtualizing Moodle bundled with a pre-configured browser as a complete self-contained environment. Certainly it gets around all the problems of having to provision a server to host your Moodle somewhere, or even the need to have internet connectivity to use it to teach. And being able to backup and clone configurations also becomes so very simple.
We are now looking to bring some of these ideas forward as an active project, and I anticipate with the active support of the Cherokee council I presently work with. I would be happy to hear from this community on ideas in this area. Given the size of the files needed for a complete virtual machine, it would seem to me something like bit-torrent would be a logical means of actual distribution rather than trying to find some multi-gig file hosting. We may also look at doing a UNESCO grant.