module-assistant man page on Knoppix

Man page or keyword search:  
man Server   3132 pages
apropos Keyword Search (all sections)
Output format
Knoppix logo
[printable version]

MODULE-ASSISTANT(8)					   MODULE-ASSISTANT(8)

NAME
       module-assistant - manage kernel modules packages

SYNOPSIS
       module-assistant	 [  -fihnqstv  ]  [ -k source/headers directory ] [ -l
       kernel versions ] { update | search | prepare | auto-install |  list  |
       list-available | list-installed | auto-unpacked | get | build | install
       | clean | purge | fakesource } [ pkg ... ]

       m-a ...

DESCRIPTION
       module-assistant is the command-line tool  for  handling	 module-source
       packages	 that have been prepared for the Debian distribution. It helps
       users to build and install module package(s) easily  for	 one  or  more
       custom kernels.

       Unless  the  -h,	 or  --help option is given, one of the commands below
       should be present to invoke a function explicitly. If no (or no	valid)
       command is specified and the dialog tool is available, a simple graphi‐
       cal user interface will pop up and guide you trough the available func‐
       tionality.

       NOTE: don't even think about using some random linux-source-x.y.z pack‐
       age contents (or linux-x.y.z tarball from the Internet) to specify  the
       kernel source for your currently running kernel. Don't! Those source is
       not exactly what have been used to build the  running  kernel  and  its
       configuration most likely does not match yours. You need the configured
       kernel source directory or at least the derived linux-headers-... pack‐
       age  containing	the  kernel configuration for the exact kernel version
       (complete version string).  If you do not understand  anything  of  the
       above, run "m-a prepare" and/or look at the description and contents of
       some linux-headers-... package.	Please run the	module-assistant  pre‐
       pare command once before you do anything else.

       For  some  packages,  linux-headers (reduced source) is not enough. You
       will have the choice to run  a  completely  customized  kernel,	or  to
       recreate	 the  source that have been used to build the current one. The
       fakesource function may be useful, see below.

       In order to configure a kernel source properly, you need to  make  sure
       that  the file version.h is generated. To get it, configure the options
       as usual (make menuconfig etc.)	and run make dep (for kernel 2.4.x) or
       make prepare (for newer ones).

COMMANDS
       Most  commands  require	a specification of the package names that they
       should be applied on.  pkg can be a single word (package name) or  mul‐
       tiple names. The word all will be expanded to the list of all available
       packages, the word alli to the list  of	currently  installed  (source)
       packages	 and  the  word	 allu will be expanded to the list of packages
       that seem to be installed and unpacked in the  base  source  directory.
       If a source package with the given name is not available, module-assis‐
       tant (abbreviated: m-a) will extend the package name with  the  popular
       suffixes	 like  -kernel,	 -driver, -module, -source and combinations of
       them.

       Multiple	 commands  can	be  specified  in  one	invocation,  eg.  "m-a
       clean,get,build	arla cdfs" is the short way to write "module-assistant
       clean arla-modules-source ; module-assistant clean cdfs-src  ;  module-
       assistant  get  arla-modules-source  cdfs-src  ; module-assistant build
       arla-modules-source cdfs-src" (or similar).

       If you do not like the dialog/whiptail GUI, feel free  to  use  the  -t
       switch to disable it.

       update update  is  used	to  resynchronize the version index files from
	      their sources. This happens with helper scripts provided by  the
	      packages.	 module-assistant  has	a default built-in list of the
	      packages that it should look for but other packages can be  reg‐
	      istered  by  module-assistant  if the maintainer adds the helper
	      script.

       prepare
	      Tries to determine the name of the required linux-headers	 pack‐
	      age (either the one matching the currently running kernel or for
	      the versions specified with -l), installs it if needed and  cre‐
	      ates  the	 /usr/src/linux	 symlink  if needed. Also installs the
	      build-essential package to ensure that a sane compiler  environ‐
	      ment is established.

       fakesource
	      Experimental  function  which tries to determine the name of the
	      required/compatible linux-source package, installs it,  modifies
	      the  Makefile to look like the original source and runs configu‐
	      ration routines as needed. Warning: DO NOT RELY ON THE RESULTING
	      SOURCE. It may be very different from the original version.

       list | list-available | la
	      list-available  (abbreviated with la) presents a list of details
	      about specified packages, including installed  version,  instal‐
	      lable  versions and recently built binary packages. If the pack‐
	      age names are omitted, shows all known packages. With -v, prints
	      long package paths.

       list-installed | li
	      Synonym  to  list	 alli. Acts like list-available but limits the
	      list to the installed source packages.

       search Synonym to list -s. Looks for locally  compiled  packages	 first
	      and (if none found) searches for alternative installation candi‐
	      dates with apt-cache.

       get    get followed by the package list installs	 the  package  source,
	      downloading source packages when needed.

       build  build  is followed by one or more source packages that should be
	      built. It chooses the kernel source  appropriate	for  the  cur‐
	      rently  running  kernel  unless  different directories have been
	      specified. If the build fails, look for the most recent log file
	      in /var/cache/modass (or the user-specified location).

       install
	      install  is followed by one or more packages desired for instal‐
	      lation. The last built package for the current running kernel is
	      chosen.

       auto-install | a-i
	      auto-install  is	followed  by  one or more packages desired for
	      installation. It will run prepare to configure  your  system  to
	      build  packages, get the package source, try to build it for the
	      current kernel and install it.  You can use alli or allu	short‐
	      cuts  to	select	all  installed modules source packages or only
	      those that have been unpacked before (similar to	the  make-kpkg
	      tool normally does, looking in $MODULE_LOC)

       auto-build | a-b
	      like auto-install but does not install the package immediately

       clean  clean clears the build directories of the kernel packages.

       purge  purge  clears  the  information  cache  of  a source package and
	      removes all binary packages locally built from it (that  module-
	      assistant knows about). USE WITH CARE!

OPTIONS
       -t

       --text-mode
	      Show pure build/install/update logs, no progress bars.

       -k

       --kernel-dir
	      The  kernel  source  directories	to be used for builds. You can
	      specify multiple directories with multiple options or  separated
	      by   commas   or	 line	separators   (e.g   using   -k	"`echo
	      /usr/src/linux-headers-*`" ).  The kernel versions  detected  in
	      this  directories	 are automatically added to the list of target
	      kernel versions (see --kvers-list for details).

       -l

       --kvers-list
	      List of kernel version strings (as in KVERS) to act on. If omit‐
	      ted,  the	 version  string  of  the  currently running kernel is
	      inserted. If --kernel-dir specifies additional  source  directo‐
	      ries,  the  kernel versions that belong to them will be inserted
	      too.

	      The locations of the kernel source (or headers) that  belong  to
	      this  kernel  versions  are  either  detected by a lookup in the
	      "usual" locations on Linux systems, or they  must	 be  specified
	      with the --kernel-dir option.

       -v

       --verbose
	      Shows  a	bit  more  information,	 like full paths of the binary
	      packages.

       -n

       --no-rebuild
	      If a package that is to be generated does already exist  in  the
	      target  directory	 (maybe in on older version), -n prevents from
	      building the package again.

	      The default behaviour is to skip	when  exactly  the  same  file
	      (with  the  same	filename)  is  to be generated as the one that
	      already exists, and the new filename could  be  detected	before
	      starting the build process (depends on the module package).

       -f

       --force
	      Never  look  for	target	file  (in another version) and force a
	      build.  For the get command, download a newer version of a pack‐
	      age even if it is already installed.

       -u

       --userdir
	      All relevant environment variables with paths will be redirected
	      to new directories under the one specified with this option.

       -i

       --non-inter
	      When the package build was not successful,  just	continue  with
	      other  candidates.  By default, module-assistant will suggest to
	      examine the build log. This option may also modify the behaviour
	      of dpkg and apt-get to reduce the need for human interaction and
	      install build dependencies as needed.

       -o

       --unpack-once
	      Try to not unpack twice. The option needs to be  also  specified
	      when  the package is being unpacked for the first time.  Experi‐
	      mental option, don't rely on it.

       -O

       --not-unpack
	      Never unpack the source tarball. Usefull after manual  manipula‐
	      tion of module source.

       -q

       --quiet
	      Suppress some of the noisy messages during the processing.

       -S

       --sudo-cmd
	      A	 replacement command for superuser commands to be used instead
	      of sudo.

       -s

       --apt-search
	      See search command for details.

       -h

       --help Prints the usage overview.

ENVIRONMENT VARIABLES
       You can export the following environment variables to modify the behav‐
       iour  of	 the build scripts. Some packages may ignore them or interpret
       them differently.

       KPKG_DEST_DIR
	      KPKG_DEST_DIR specify the target directory where	the  resulting
	      Debian  package should be installed into. However, many packages
	      ignore this variable and install the  file  into	the  directory
	      above  the  kernel  source directory or above the current direc‐
	      tory.

       KERNELDIRS
	      KERNELDIRS specifies or extends the list of kernel source/header
	      directory	 which	m-a  should build modules for. See /-k/-Option
	      for details.

       SIGNCHANGES
	      If SIGNCHANGES is set, .changes files will be generated (calling
	      kdist_image  rule	 instead of kdist) and debsign (or gpg or pgp)
	      will be executed to sign the changes.

       KMAINT | DEBFULLNAME | DEBNAME
	      Specifies the  realname  of  the	person	building  the  package
	      (interesting for .changes file only)

       KEMAIL | DEBEMAIL
	      Specifies	 the  email address of the person building the package
	      (interesting for .changes file only).

       MODULE_LOC
	      A different location for the (already extracted)	module	source
	      directories. Default is /usr/src/modules.

       MA_VARDIR
	      A	 different  location  for  cached data, used by helper scripts
	      from module-assistant. Default is /var/cache/modass.

       MA_APTCMD
	      Command to download install packages, to use instead of the apt-
	      get.

       MOD_SRCDIR
	      A	 different  location  for  module  source tarballs. Default is
	      /usr/src.

       ROOT_CMD
	      Wrapper command to execute command as root. If you are not root,
	      fakeroot	is  chosen automatically. This variable must be inter‐
	      preted by individual packages so some of	them  may  ignore  it.
	      However,	you  can  still	 run  module-assistant	inside	of the
	      ROOT_CMD wrapper.

NON-ROOT USAGE
       module-assistant can work without being root. However you won't be able
       to use apt-get or dpkg to install the packages, and you cannot write to
       /var/cache/modass on a normal Debian system. So the commands  are  get,
       install, auto-install and prepare are taboo for regular users. However,
       if the sudo program is installed, it will be invoked  for  apt-get  and
       dpkg  operations.   All remaining commands except of list require addi‐
       tional environment variables to move  the  target  paths	 to  locations
       writable for the user. They all can be trimmed to a certain location (a
       writable directory) using the -u switch.

FILES
       /usr/share/modass/packages/*
	      List of helper scripts shipped with the  module-assistant	 pack‐
	      age.

       /usr/share/modass/overrides/*
	      Helper scripts installed by other packages.

SEE ALSO
       make-kpkg(1), /usr/share/doc/module-assistant/README

BUGS
       See  the module-assistant bug page <URL:http://bugs.debian.org/src:mod‐
       ule-assistant>.	If you wish  to	 report	 a  bug	 in  module-assistant,
       please use the reportbug(1) command.

RETURN CODES
       0      Success

       1..249 various errors during the build process

       254    problem with permissions

       255    fixable error after user intervention

TODO
       Quicklist (fast output without details)

       Integration into APT and/or into the init system

       "Aggressive" debianisation using the templates set (to generate a pack‐
       age with guessed name from any source that looks like being  compatible
       with kernel 2.6 build system)

       Automatic transformation of kernel sources to generate .udeb packages

AUTHOR
       Module-Assistant was written by Eduard Bloch <blade@debian.org> for the
       Debian distribution.

				 29 June 2011		   MODULE-ASSISTANT(8)
[top]

List of man pages available for Knoppix

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net