[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#207709: ITP: module-assistant -- helper script to automate kernel module building



Package: wnpp
Version: unavailable; reported 2003-08-28
Severity: wishlist

* Package name    : module-assistant
  Version         : 0.1 (currently beeing written)
  Upstream Author : myself, nativ package
* URL             : http://modass.alioth.debian.org (when it has been approved)
* License         : LGPL
  Description     : helper script to automate kernel module building

Here the current usage info and rationale, package description will be
done when the most functionality is there:

#
# Script to assist users with building of the kernel modules
# First purpose: automate as much as possible for Joe User
# Second purpose: have a database about the source of module packages
# (and all steps needed to get it)
# Third purpose: provide general debian/rules include snippets
#

USAGE:

# autobuild name|all|dir-list [ alternatives headers dir, list ]
#     locate the right kernel source or headers directory and build the
#     given modules with them. Primary choice for most people.
#
# auto-install (ai)
#     like autobuild but also tries to install the created packages
#
# list-available (la), list-installed (li), list-everything (le)
# get name|all|dir-list [ alternative headers dir, list ]
# download (gets implies download)
# update (update the lists, version numbers)
# build name|all|dir-list [ alternatives headers dir, list ]

# Lists are collon-separated

Directory tree of the module-assistant

How does the whole thing work?

Every package that should be controlled with modass provides a
maintainer script (see below) that accepts the following commands:

 update
        updates the intenal data when needed, eg. version number.
        Scripts can do whatever they want, any may use the
        /var/lib/modass/cache directory as playground for caching the
        data.
        
 version
        outputs the current version of the package; syntax == dpkg-style
 
 lastpkg
        outputs the filename (full path) of the last built package.
        Empty if the build was not successful.
 
 download
        installs the source package or fetches the source with
        apt-get/apt-src/whatever
 
 unpack
        unpacks the downloaded package source in $MODULE_LOC
 
 purge
        removes the working source directory and cached data
 
 purge-all
        like purge plus removes the binary packages built from the
        source
 
Ressource directory (planned location: /usr/share/modass)

modass
|-- include     (files to be sourced by package maintaining scripts and
                 makefile includes)
|-- overrides   (package maintscripts taking precedence over the default ones)
`-- packages    (some default scripts, provided by the modass package itself)

Package maintainence scripts are either shipped with module-assistant or
installed by other binary package that have something to do with the
modules. For example, cloop-utils installs one into modass/overrides/.

Of course no module source package does support all this know. For this
reason, I plan to import them all in a big SVN repository on alioth,
having the Debian branch and Modified branch and working on them. All
good things from their rules files will be extracted and merged into
common rules which will become part of module-assistang (similar to the
story of dbs and dpatch packages).

Eduard.

-- System Information:
Debian Release: testing/unstable
Architecture: i386
Kernel: Linux debian 2.4.20-wolk4.6s #1 Mi Aug 6 11:42:42 CEST 2003 i686
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8




Reply to: