Hello All,
A few days ago I got a chance to get my hands on an IBM server machine for linux experimentation. It was at my friend's workshop and he wanted to load RedHat. As I had RHEL 3 WS, I loaded it with 'All' as the packages option. Unfortunately it did not detect the network card. The IBM driver cds contained linux source drivers that needed to be compiled. I did as per the instructions in the cd's readme file. however the make, make install happened but the final instructions were not clear and the process was a waste of a few hours.
The reason for writing this mail is not to find out what went wrong but to suggest to the kernel writers that just like the Windows OS, Linux too could have a streamlined and simple method of installing device drivers.
In Windows, there are 2 methods. 1) An executable file that is run and it does the entire pprocess of installing the driver files. 2) A set of ini and other files in a folder. The device manager or new device installation wizard asks for the location of the driver files and one has to simply point to the folderthat contains the driver files.
Now Linux has evolved from a complicated command line system into a full scale gui system with easyto use interfaces that reduce installation time and effort. So it should not be difficult for kernel writers to incorporate a standard interface that automatically loads device drivers from source file folders ( the ones that are .tar.gz ). The other opption is to create rpm or deb files that will do the entire installation, but that will be too system specific and with too many distros, it may be difficult. The first option will allow the system to automatically create relavent driver files from the source files.
Regards,
Rony.
___________________________________________________________ Yahoo! Messenger - NEW crystal clear PC to PC calling worldwide with voicemail http://uk.messenger.yahoo.com
Sometime Today, Rony Bill assembled some asciibets to say:
The reason for writing this mail is not to find out what went wrong but to suggest to the kernel writers that just like the Windows OS, Linux too could have a streamlined and simple method of installing device drivers.
I won't tell you why it isn't that easy. All I'll tell you is this:
Windows is one system. There is only one system architecture on which it will work. There is only one set of APIs that it provides. You are guaranteed that no matter what the user has installed, a basic set of APIs, including GUI APIs are available.
On linux, this is not the case. You cannot even assume that people have keyboards, monitors and mice. A system will work perfectly with no console I/O devices. Even if these do exist, one cannot assume that the APIs that you want exist. It just isn't possible to write code that will run everywhere seamlessly as a binary. Providing source code means that people will build whatever application they need against their current set of APIs based on their current capabilities.
That said, what's wrong with "rpm -i driver-version.architecture.rpm"? Drivers are already provided in this fashion. IBM just didn't provide it.
Philip
On linux, this is not the case. You cannot even assume that people have keyboards, monitors and mice. A system will work perfectly with no console I/O devices. Even if these do exist, one cannot assume that the APIs that you want exist.
Isnt it better to decide on a say a set of common apis that most of the drivers will work on.. and then spread these through various distros and then write device drivers assumin that people will have those apis. Sure it will take time, but as far as I am concerned device support is one of the bigges obstacles to the spread of linux, so i would think its worth it. Writing drivers for systems that have the normal devices connected, and with some basic apis present will help a lot more people than writing drivers with the assumptions you mentioned.
People with special reqmts like no console i/o etc. should be the ones who should have to make the extra effort and not the guy with a normal desktop pc.
-- Puneet
Sometime on Mar 5, Puneet Lakhina assembled some asciibets to say:
Isnt it better to decide on a say a set of common apis that most of the drivers will work on.. and then spread these through various distros and
Drivers work already. I was talking about the GUI APIs for the installer program that Rony wants.
then write device drivers assumin that people will have those apis. Sure it will take time, but as far as I am concerned device support is one of the
It was done about 10 years ago.
bigges obstacles to the spread of linux, so i would think its worth it. Writing drivers for systems that have the normal devices connected, and with
Writing drivers requires one to know how the hardware works. You cannot just guess how it works and write a driver for it. Most hardware vendors refuse to provide details on how their hardware works and will not let anyone write an opensource driver for it. The problem is not lack of APIs, it's lack of willing vendors.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Philip Tellis wrote:
Writing drivers requires one to know how the hardware works. You cannot just guess how it works and write a driver for it. Most hardware vendors refuse to provide details on how their hardware works and will not let anyone write an opensource driver for it. The problem is not lack of APIs, it's lack of willing vendors.
Would agree with Philip on this. The reason provided by most Hardware Vendors is lack of business case. Which is partially true if one takes a look at the desktop front. One of the probable reasons that a large number of hardware (on the desktop) tends to just work is because vendors like Intel, AMD are actively contributing/reviewing code to make things work.
The difficult part lies in:
o Getting Indian Hardware Vendors to see the benefits of opening up hardware/firmware internals o Getting Hardware infrastructure in place to test them out
Simply put if you don't have the hardware it is nearly impossible to start creating drivers.
Rgds Sankarshan
- --
You see things; and you say 'Why?'; But I dream things that never were; and I say 'Why not?' - George Bernard Shaw
On 3/7/06, Sankarshan Mukhopadhyay sankarshan.mukhopadhyay@gmail.com wrote:
o Getting Indian Hardware Vendors to see the benefits of opening up hardware/firmware internals o Getting Hardware infrastructure in place to test them out
Simply put if you don't have the hardware it is nearly impossible to start creating drivers.
Indeed. For my interest, could I get a virtual hands up of people who work with IHVs?
Jon.
On Tuesday 07 March 2006 04:24, Sankarshan Mukhopadhyay wrote:
o Getting Indian Hardware Vendors to see the benefits of opening up hardware/firmware internals
does anything like an "Indian Hardware Vendor" exist? :| If they do exist then how widely are their "hardware" used?
Hi,
My thoughts below.
Sometime Today, Rony Bill assembled some asciibets to say:
The reason for writing this mail is not to find out what went wrong but to suggest to the kernel writers that just like the Windows OS, Linux too could have a streamlined and simple method of installing device drivers.
You are addressing this from a user-perspective for desktop usage.
But, the Linux kernel runs on so many different processors (check under arch/), different platforms/boards, for different needs.
The number of hardware it supports is enormous and each hardware is different.
In fact there are so many ways of booting the Linux kernel (network, USB, hard disk, et. al.) with different types of filesystems.
This versatility gives the end-user freedom to use what he/she wants.
You cannot generalize it.
SK
-- Shakthi Kannan, MS Software Engineer, Hexaware Technologies [E]: shakthimaan@yahoo.com [M]: (91) 98407-87007 [W]: http://www.shakthimaan.com [L]: Chennai, India
__________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
Philip Tellis wrote:
On linux, this is not the case. You cannot even assume that people have keyboards, monitors and mice. A system will work perfectly with no console I/O devices. Even if these do exist, one cannot assume that the APIs that you want exist. It just isn't possible to write code that will run everywhere seamlessly as a binary. Providing source code means that people will build whatever application they need against their current set of APIs based on their current capabilities.
That said, what's wrong with "rpm -i driver-version.architecture.rpm"? Drivers are already provided in this fashion. IBM just didn't provide it.
The distros already have gui interfaces for device setups with long list of available drivers, so the only addition to be made would be to integrate a 'make installer' into it as per the kernel's own requirements and directory structure. Is such a thing possible?
Regards,
Rony.
___________________________________________________________ Yahoo! Photos � NEW, now offering a quality print service from just 8p a photo http://uk.photos.yahoo.com
Sometime Today, RB cobbled together some glyphs to say:
The distros already have gui interfaces for device setups with long list of available drivers, so the only addition to be made would be to integrate a 'make installer' into it as per the kernel's own requirements and directory structure. Is such a thing possible?
rpm already exists. It already does everything that you have asked for. If the driver exists, then the driver provider _should_ provide it as an rpm. If he doesn't, then someone else should make one and host it.
Philip Tellis wrote:
rpm already exists. It already does everything that you have asked for. If the driver exists, then the driver provider _should_ provide it as an rpm. If he doesn't, then someone else should make one and host it.
I could be mistaken but after trying out various distros, I found that source drivers that can be compiled and installed on any system, are easily available compared to packages specifically created for individual distros.
Regards,
Rony.
___________________________________________________________ To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com
Sometime Today, RB cobbled together some glyphs to say:
I could be mistaken but after trying out various distros, I found that source drivers that can be compiled and installed on any system, are easily available compared to packages specifically created for individual distros.
So make it your job to take source drivers and convert them to packages for various distros. Why ask someone else to do it when you can?
Philip
Philip Tellis wrote:
Sometime Today, RB cobbled together some glyphs to say:
I could be mistaken but after trying out various distros, I found that source drivers that can be compiled and installed on any system, are easily available compared to packages specifically created for individual distros.
So make it your job to take source drivers and convert them to packages for various distros. Why ask someone else to do it when you can?
I am not asking you to do it. This is for the kernel writers and those who actually make distros. Maybe I did not explain properly. I don't want ready packages. I had suggested having a *package-builder* incorporated in every distro as per the distro's own directory structure and kernel so that source files can be automatically installed into the system without using make or make install manually.
Regards,
Rony.
___________________________________________________________ To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com
On 07/03/06 23:30 +0530, Rony Bill wrote:
<snip>
I am not asking you to do it. This is for the kernel writers and those who actually make distros. Maybe I did not explain properly. I don't want ready packages. I had suggested having a *package-builder* incorporated in every distro as per the distro's own directory structure and kernel so that source files can be automatically installed into the system without using make or make install manually.
You mean like portage, or BSD ports? Or wait, even RPM and debs let you do that. You just have to write your package file first.
Devdas Bhagat
Devdas Bhagat wrote:
You mean like portage, or BSD ports? Or wait, even RPM and debs let you do that. You just have to write your package file first.
I mean a gui utility to do 'make' and 'make install' automatically without worrying about the distro's directory structure. Kde and Gnome writers could add this as a utility in their packages.
Regards,
Rony.
___________________________________________________________ To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com
On 08/03/06 10:33 +0530, Rony Bill wrote:
Devdas Bhagat wrote:
You mean like portage, or BSD ports? Or wait, even RPM and debs let you do that. You just have to write your package file first.
I mean a gui utility to do 'make' and 'make install' automatically without worrying about the distro's directory structure. Kde and Gnome writers could add this as a utility in their packages.
make install needs to know the directory structure, or the distro needs to be LSB compliant.
The right way to do this would be for you to take the source, write up a configuration file for it for your package manager, and send it upstream as a patch. Then upstream can put out binaries, or source packages, or even a tarball with the spec/deb file inside so you can just convert it into a distribution package for _your_ kernel.
Package management has had a few years of history behind it, you might want to google for it.
Devdas Bhagat
On Wednesday 08 March 2006 05:03, Rony Bill wrote:
I mean a gui utility to do 'make' and 'make install' automatically without worrying about the distro's directory structure. Kde and Gnome writers could add this as a utility in their packages.
source install? http://www.gnu.org/software/sourceinstall/sourceinstall.html
On Tue, Mar 07, 2006 at 11:30:37PM +0530, Rony Bill wrote:
I am not asking you to do it. This is for the kernel writers and those who actually make distros. Maybe I did not explain properly. I don't
Perhaps you should post to the kernel maintainers' mailing list?
Sometime on Mar 7, RB cobbled together some glyphs to say:
I am not asking you to do it. This is for the kernel writers and those
kernel writers don't have the time to build packages for every single distro that exists, nor do they actually write all the drivers that you use. the drivers that you have a problem with are vendor supplied. ask your vendor to package them.
who actually make distros. Maybe I did not explain properly. I don't
again, the distro author cannot package that which does not exist.
want ready packages. I had suggested having a *package-builder* incorporated in every distro as per the distro's own directory structure
you mean like rpmbuild? it exists on your system. check.
Philip Tellis wrote:
you mean like rpmbuild? it exists on your system. check.
I use a debian based system. RHEL 3 WS which I used for the IBM server, did not have it in the cd. I had selected all packages during installation.
What I find is that many vendors give src.tar.gz files that can be compiled into any system. I wanted an automator for that. Anyway I am going through the sourceinstaller application link provided by Deb.
Regards,
Rony.
___________________________________________________________ Yahoo! Photos � NEW, now offering a quality print service from just 8p a photo http://uk.photos.yahoo.com
On 05/03/06 18:50 +0530, Rony Bill wrote: <snip>
The reason for writing this mail is not to find out what went wrong but to suggest to the kernel writers that just like the Windows OS, Linux too could have a streamlined and simple method of installing device drivers.
make install. Just the one method. It really can't get simpler. <insert quote about programmers, idiots and the universe>
In Windows, there are 2 methods.
- An executable file that is run and it does the entire pprocess of
installing the driver files. 2) A set of ini and other files in a folder. The device manager or new device installation wizard asks for the location of the driver files and one has to simply point to the folderthat contains the driver files.
Now Linux has evolved from a complicated command line system into a full scale gui system with easyto use interfaces that reduce installation
Surely you mean "from a simple commandline system into a complicated GUI with non-scriptable interfaces".
time and effort. So it should not be difficult for kernel writers to incorporate a standard interface that automatically loads device drivers
The easiest thing is for the vendors to get their drivers into the standard kernel. Then let the community worry about maintainance. If you want good hardware support, vote with your money instead of complaining here. Don't buy unsupported hardware. (BTW, you should have been able to get support from RH and/or IBM for the installation).
Would I trust a GUI to install drivers correctly? Probably not. Not with multiple kernels. make install works just fine :).
from source file folders ( the ones that are .tar.gz ). The other opption is to create rpm or deb files that will do the entire installation, but that will be too system specific and with too many distros, it may be difficult. The first option will allow the system to automatically create relavent driver files from the source files.
make(1) works.
Devdas Bhagat
Devdas Bhagat wrote:
The easiest thing is for the vendors to get their drivers into the standard kernel. Then let the community worry about maintainance. If you want good hardware support, vote with your money instead of complaining here. Don't buy unsupported hardware. (BTW, you should have been able to get support from RH and/or IBM for the installation).
This server is a cheaper version without an installed system. It comes with driver cds only. The RHEL 3 WS was given free to me during the RHEL course so there was no tech support possible. Besides, we were only experimenting for the best system possible. My friend reported that he later installed Suse 10 and that detected everything automatically. Now we will try FC4.
Regards,
Rony.
___________________________________________________________ To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com
On 3/5/06, Rony Bill ronbillypop@yahoo.co.uk wrote:
The reason for writing this mail is not to find out what went wrong but to suggest to the kernel writers that just like the Windows OS, Linux too could have a streamlined and simple method of installing device drivers.
Believe me, this is a hard problem to solve properly. But there are people working on various solutions - so your point is well known and not being ignored. I suggest at the moment that you check out DKMS:
http://linux.dell.com/projects.shtml
Jon.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Jon Masters wrote:
Believe me, this is a hard problem to solve properly. But there are people working on various solutions - so your point is well known and not being ignored. I suggest at the moment that you check out DKMS:
DKMS as a framework is getting some serious love from DELL in terms of upstream push. As a concept it does really meet some of the end-userland expectations. DELL has a very active DKMS mailing list that is populated with queries from users of SLES, RHEL etc...
However, at the best it is a working solution effort. The real work lies in continuously attempting to write *good* code and get it accepted upstream through the maintainers.
- -Sankarshan
- --
You see things; and you say 'Why?'; But I dream things that never were; and I say 'Why not?' - George Bernard Shaw