Summary
---------------
Driver On demand is a driver management system designed for Linux, which is designed to automatically install drivers by using a httpd server. Its other intention is to create a universal driver standard for Linux, allowing drivers to be installed easier. Its only purpose is to allow any device you plug in, to work instantly with no installation of drivers required.
Alpha 1 is the first release of this software, and has a wide variety of features including:
- Local installation of drivers
- Automatic installation of PCI devices
- Kernel 2.6 support (kernel 2.4 is supported with a workaround, read below, but its more limited)
- Server lookup's for devices
- Ability to use packages specific to your distribution
- Server digital signatures and vendor side digital signatures to protect drivers against modifications by hackers
- Ability to restrict components of the client
- Full hotplug support.. You plug a PCI/PCMCIA device into the system, hotplug will automatically run driver on demand for that device if theres no existing driver.
- XML based drivers, which even when digitally signed, are easily human editable.
- Simple submission script of new drivers
- Support of multiple different drivers within a single driver definition file, where the driver can be determined manually, or automatically
- Support for different architectures besides ix86 (only AMD64 and ix86 is selectable at this time, but on alpha 2, I'll allow any architecture)
- Kernel matching, which allows drivers to be only installable on certain kernels, to prevent them being installed on unsupported ones.
Expectations for Alpha 2:
---------------------------------------
Alpha 2 will have generic bus support and work for PCI, PCI-express, firewire, or any other possible bus generically. Due to the move to sysfs needed for this, kernel 2.4 users will no longer be able to use driver on demand even with the workaround. The bonus is that Driver On Demand will perform faster and better.
A better signature system to allow 3rd party drivers to be signed.
XML validation.. I'm going to fully format my system and try to get it working again.
Unfortunately, I need a lot of donations of hardware to get Alpha 2 done (especially for testing of firewire and pci-express), so if you work at a hardware store, have some free hardware lying around, or sick of your developmental PCI-express motherboards, and they work in kernel 2.6 (with external drivers or otherwise), please consider providing access of them to me so I can finish Alpha 2 quickly. Even if you don't have any such hardware, think about sending other donations, to help this project.
Expect Alpha 2 to be out as early as 2 weeks from now, however it depends on the amount of time I have and whether I receive access to the hardware I need for testing, because I obviously cant even determine the format I need to support firewire devices or PCI devices when I don't have them.
How Can I help?
------------------------
At the moment I need:
-A server to host the driver profiles on.
-Money to support the project and allow me to buy a bigger hard disk to do the stuff I want to do later (UML/sandboxing of distribution specific drivers to analyse them).. This money will also allow me to buy more hardware to test driver on demand with. Also it will allow me to spend more time programming this because I wont have to seek a job as quickly
-Donate hardware for testing.
At this time I'm not looking for bug testers, because I am aware of the majority of the bugs.
Where can I get help?
-----------------------------------
If you need help, try out IRC channel..
Server: irc.freenode.net
Channel: #Driver On Demand
How can I contact the developer of this software?
---------------------------------------------------------------------------
Either use the IRC server, or try emailing me at auzy@users.sourceforge.net .
Whats the web page for this project?
------------------------------------------------------
http://Driverondemand.sourceforge.net
Workarounds for kernel 2.4:
-------------------------------------------
Be aware that kernel 2.4 wont work anymore with this software (even with a workaround) from alpha 2, unless you use a back ported sysfs.
To get it working on kernel 2.4.. edit line 193, to be:
sub initInstalledDevices {
return;
#FIXME:don't die when preinstalled drivers aren't known
Be aware that if you run driverondemand.pl normally (instead of using hotplug (run on boot up automatically by the computer), that in all mode, if there is a driver in the database for that device, it will try to install regardless of if theres a driver installed already.. This problem wont occur on kernel 2.6, or will do so VERY rarely.