[PATCH 0/5] Driver Disk Support

Brian C. Lane bcl at redhat.com
Fri Apr 26 17:32:20 UTC 2013


From: "Brian C. Lane" <bcl at redhat.com>

This set of patches adds support for rhdd3 driver update disks and
repositories. Martin did the original pass on this, and I expanded on that.
What it does is:

1. Hook into dracut to parse inst.dd/dd cmdline args, look for disks with
   OEMDRV labels. If neither of these are present it doesn't do anything.

2. Runs a python driver disk UI during dracut's pre-trigger stage. This checks
   for driver repos on the OEMDRV disks (and user specified disks). It searches
   the disk for repos, eliminating the need for a filesystem browser. If inst.dd/dd
   is passed with no args it will let the user select which drivers to install.

3. If a network URL is passed to inst.dd/dd it will download that rpm and re-run
   the UI and rescan for new OEMDRV devices.

I have tested these with a set of dummy driver files and installer enhancement
binaries and it works. The .ko files, etc. all end up in the expected places and
depmod complains that they don't have symbols.

A couple extra patches are included here. One to add a scratch-bumpver make
target which is useful when building full scratch packages without editing the
.spec by hand. It does the po-pull and bumpver part of make bumpver but doesn't
push the po back to transifex.

And the last is a total hack to make curl happy with the file:/// urls for the
driver repos. It should go away once curl/urlgrabber get themselves sorted out.

*** BLURB HERE ***

Brian C. Lane (5):
  Port driver update utilities from loader
  Add Driver Update Disk support to anaconda-dracut
  Add Driver Update Disk repo handling to Anaconda
  Add scratch-bumpver target
  Stupid hack to make curl happy

 Makefile.am                        |  14 +
 anaconda.spec.in                   |   6 +-
 configure.ac                       |   3 +
 dracut/Makefile.am                 |  11 +-
 dracut/README-dd                   |  51 ++++
 dracut/anaconda-depmod.sh          |   5 +
 dracut/anaconda-lib.sh             |  11 +
 dracut/anaconda-modprobe.sh        |   0
 dracut/anaconda-pre-shutdown.sh    |   0
 dracut/driver-updates              | 587 +++++++++++++++++++++++++++++++++++++
 dracut/driver-updates-net.sh       |  19 ++
 dracut/driver-updates-net at .service |  17 ++
 dracut/driver-updates.sh           |  31 ++
 dracut/driver-updates at .service     |  17 ++
 dracut/fetch-driver-net.sh         |  31 ++
 dracut/module-setup.sh             |  17 +-
 dracut/parse-anaconda-dd.sh        |  19 ++
 dracut/parse-anaconda-options.sh   |   3 +
 dracut/python-deps                 |  30 +-
 pyanaconda/packaging/yumpayload.py |  36 +++
 utils/Makefile.am                  |   4 +-
 utils/dd/Makefile.am               |  29 ++
 utils/dd/dd_extract.c              | 236 +++++++++++++++
 utils/dd/dd_list.c                 | 245 ++++++++++++++++
 utils/dd/dd_utils.h                |  31 ++
 utils/dd/rpmutils.c                | 437 +++++++++++++++++++++++++++
 utils/dd/rpmutils.h                |  88 ++++++
 27 files changed, 1954 insertions(+), 24 deletions(-)
 create mode 100644 dracut/README-dd
 create mode 100755 dracut/anaconda-depmod.sh
 mode change 100644 => 100755 dracut/anaconda-modprobe.sh
 mode change 100644 => 100755 dracut/anaconda-pre-shutdown.sh
 create mode 100755 dracut/driver-updates
 create mode 100755 dracut/driver-updates-net.sh
 create mode 100644 dracut/driver-updates-net at .service
 create mode 100755 dracut/driver-updates.sh
 create mode 100644 dracut/driver-updates at .service
 create mode 100755 dracut/fetch-driver-net.sh
 create mode 100755 dracut/parse-anaconda-dd.sh
 create mode 100644 utils/dd/Makefile.am
 create mode 100644 utils/dd/dd_extract.c
 create mode 100644 utils/dd/dd_list.c
 create mode 100644 utils/dd/dd_utils.h
 create mode 100644 utils/dd/rpmutils.c
 create mode 100644 utils/dd/rpmutils.h

-- 
1.8.1.4



More information about the anaconda-patches mailing list