[ANNOUNCE] firmware-addon-dell 1.2.6
Michael E Brown
Michael_E_Brown at dell.com
Thu Mar 29 23:32:53 CST 2007
All,
I have released version 1.2.6 of firmware-addon-dell. It is
available for source download at
http://linux.dell.com/libsmbios/download/firmware-addon-dell/. It has
been pushed to the Dell repo at http://linux.dell.com/repo/software, as
well as Fedora Extras 6, Fedora devel (F7), and EPEL5. Push to EPEL4 is
building and should hit the repo in 24 hours or so.
The only change for this release is the addition of a yum plugin
that sets $sys_ven_id and $sys_dev_id variables if (and only if) run on
a Dell system. The $sys_ven_id is always "1028". The $sys_dev_id is the
value of the Dell System ID as returned by "getSystemId" from the
libsmbios package.
What this means is that you can set up a set of repos with
hardware or system specific RPMs for each system. Note that the repos
must exist on the server, or yum will throw an error. A way around this
is to specify a CGI script as a mirrorlist and let the mirrorlist cgi
redirect to an empty repo for the case where the system-specific repo
does not exist. For a reference implementation of such a script see the
(***BETA***) Dell hardware repository that is under development at
http://linux.dell.com/repo/hardware/. (WARNING: Contents of this repo
are *under*development* and may eat your system. I'm not kidding.) This
Dell hardware repo is not currently populated, but has been put up as a
test of the functionality of the script. (separate announcement will be
sent out when this repo is ready.)
Examples are below.
--
Michael
======================================================
Example of a yum *.repo file using the new variables:
# cat /etc/yum.repos.d/dell-hw.repo
[dell-hardware]
name=Dell Hardware-specific Repository
#baseurl=http://linux.dell.com/yum/hardware/system.ven_0x$sys_ven_id.dev_0x$sys_dev_id/fc$releasever
mirrorlist=http://linux.dell.com/yum/hardware/mirrors.pl?sys_ven_id=$sys_ven_id,sys_dev_id=$sys_dev_id,osname=fc$releasever
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-dell
======================================================
======================================================
Example mirror cgi script:
# cat mirror.pl
#!/usr/bin/perl -w -T
use strict;
use CGI;
my $cgi = new CGI;
use File::Basename;
use Cwd 'abs_path'; # aka realpath()
print "Content-type: text/plain\n\n";
my $ven_id = $cgi->param('sys_ven_id') || "null_VEN";
my $dev_id = $cgi->param('sys_dev_id') || "null_DEV";
my $osname = $cgi->param('osname') || "null_OS";
my $thisdir=abs_path(dirname($0));
if (-d ($thisdir . "/system.ven_0x${ven_id}.dev_0x${dev_id}/${osname}"))
{
print "http://linux.dell.com/repo/hardware/system.ven_0x${ven_id}.dev_0x${dev_id}/${osname}\n";
} else {
print "http://linux.dell.com/repo/hardware/emptyrepo/\n";
}
======================================================
More information about the firmware-tools-devel
mailing list