Universal ATI/NVIDIA drivers
Posted: Wed 21 Jan 2009, 14:41
Hi mates!
I started using Puppy Linux a couple of weeks ago.
I think, I have finally found the thing. (tnx 2 Barry and all Puppy Linux team =)
After installing to USB Flash drive I had an opportunity to boot almost any computer I met on my way... the same Xorg with old but reliable Vesa and specific JWM presented nice desktops and funcs everywhere...
Once I got an idea to advance my Flash installation to make it support DRI of the most popular ATI and NVIDIA GPUs.
After analyzing three driver packages I dealed with: (EDITED)
- NVIDIA 71.86.06 legacy drivers - nvidia_old configuration
- NVIDIA 177.82 proprietary drivers - nvidia_new configuration
- ATI 8-12 proprietary drivers - fglrx_new configuration
- ATI 8.18 legacy drivers - fglrx_old configuration
(EDITED) ... I created the common installer for them and the scripts (fglrx_new, fglrx_old, nvidia_new, nvidia_old, opengl - they can be found in /usr/etc/X11) which do all necessary to switch between the drivers and introduced the way of their execution in xorg.conf. opengl is the default configuration and is applied if no #ggconf entries found in xorg.conf
For example:
#ggconf fglrx_new -- somewhere in xorg.conf means that fglrx_new configuration is applied before xinit gets started.
This method assumes xorg.conf of each hardware profile have #ggconf string, telling ggconf configurator which driver to use.
This means that after the xorgwizard and aticonfig/nvidia-xconfig configurations on each new profile, the user must edit xorg.conf and place #ggconf of the driver version needed.
Before finally modifying xorg.conf, you can probe for configuration:
Example probe commands: (EDITED)
nvidia-xconfig; echo "#ggconf nvidia_old" > /etc/X11/xorg.conf; xwin
nvidia-xconfig; echo "#ggconf nvidia_new" > /etc/X11/xorg.conf; xwin
aticonfig --initial; echo "#ggconf fglrx_old" > /etc/X11/xorg.conf; xwin
aticonfig --initial; echo "#ggconf fglrx_new" > /etc/X11/xorg.conf; xwin
etc.
The problem was to apply the configuration just before xinit starts. The only solution I made was to rename xinit to xinit.original.ggconf and instead of this create symbolic link to xinit.ext.ggconf, which applies the configuration and then runs original xinit. I know that looks weird. So I ask more experienced Puppy users for an advice on this problem.
Here is the package (Only for installation, not for uninstallation):
h t t p : //s3.mixal.org.ua/puppy/ggvideo-4.1.2.pet
EDIT: Sorry, initial package was buggy ang no longer available.
Here is a version, tested with nvidia_old, nvidia_new and fglrx_new configurations (going to test in fglrx_old asa I get onto old ATI machine):
http://s3.mixal.org.ua/puppy/ggvideo-fg ... ppy412.pet
Please feel free to post your test results/bugs here...
Sorry again for previous buggy package.
I plan to advance the package with more video drivers.
Happy using,
Taras
I started using Puppy Linux a couple of weeks ago.
I think, I have finally found the thing. (tnx 2 Barry and all Puppy Linux team =)
After installing to USB Flash drive I had an opportunity to boot almost any computer I met on my way... the same Xorg with old but reliable Vesa and specific JWM presented nice desktops and funcs everywhere...
Once I got an idea to advance my Flash installation to make it support DRI of the most popular ATI and NVIDIA GPUs.
After analyzing three driver packages I dealed with: (EDITED)
- NVIDIA 71.86.06 legacy drivers - nvidia_old configuration
- NVIDIA 177.82 proprietary drivers - nvidia_new configuration
- ATI 8-12 proprietary drivers - fglrx_new configuration
- ATI 8.18 legacy drivers - fglrx_old configuration
(EDITED) ... I created the common installer for them and the scripts (fglrx_new, fglrx_old, nvidia_new, nvidia_old, opengl - they can be found in /usr/etc/X11) which do all necessary to switch between the drivers and introduced the way of their execution in xorg.conf. opengl is the default configuration and is applied if no #ggconf entries found in xorg.conf
For example:
#ggconf fglrx_new -- somewhere in xorg.conf means that fglrx_new configuration is applied before xinit gets started.
This method assumes xorg.conf of each hardware profile have #ggconf string, telling ggconf configurator which driver to use.
This means that after the xorgwizard and aticonfig/nvidia-xconfig configurations on each new profile, the user must edit xorg.conf and place #ggconf of the driver version needed.
Before finally modifying xorg.conf, you can probe for configuration:
Example probe commands: (EDITED)
nvidia-xconfig; echo "#ggconf nvidia_old" > /etc/X11/xorg.conf; xwin
nvidia-xconfig; echo "#ggconf nvidia_new" > /etc/X11/xorg.conf; xwin
aticonfig --initial; echo "#ggconf fglrx_old" > /etc/X11/xorg.conf; xwin
aticonfig --initial; echo "#ggconf fglrx_new" > /etc/X11/xorg.conf; xwin
etc.
The problem was to apply the configuration just before xinit starts. The only solution I made was to rename xinit to xinit.original.ggconf and instead of this create symbolic link to xinit.ext.ggconf, which applies the configuration and then runs original xinit. I know that looks weird. So I ask more experienced Puppy users for an advice on this problem.
Here is the package (Only for installation, not for uninstallation):
h t t p : //s3.mixal.org.ua/puppy/ggvideo-4.1.2.pet
EDIT: Sorry, initial package was buggy ang no longer available.
Here is a version, tested with nvidia_old, nvidia_new and fglrx_new configurations (going to test in fglrx_old asa I get onto old ATI machine):
http://s3.mixal.org.ua/puppy/ggvideo-fg ... ppy412.pet
Please feel free to post your test results/bugs here...
Sorry again for previous buggy package.
I plan to advance the package with more video drivers.
Happy using,
Taras