---
name: "cdd-install-helper"
section: "1"
platform: "linux"
package: "cdd-dev"
version: "0.3.11.1"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/cdd-install-helper"
---

# cdd-install-helper(1)

install menu and link to helper bin and according manpage

## NAME

**cdd-install-helper** - install menu and link to helper bin and according manpage

## SYNOPSIS

**cdd-install-helper**

## DESCRIPTION

This script can be used in debian/rules file to install the user menu files to /etc/cdd/*\<cdd\>*/menu/*\<package\>*,  a link for the helper script of every *\<cdd\>*-\* package and the link to the manpage for this script.

- *menu*

  If a directory *menu* exists in the building directory it checks subdirectories *menu/\<task\>* (named like meta package without the "cdd-" name prefix).  This subdirectory might contain three types of files:

-

  *\<dep\>.menu* These files should be valid menu files as they are provided for Debian packages in debian/menu.   They will be copied to *usr/share/cdd/\<cdd\>/menu/\<dep\>* and can be used to override the menu items which are provided by the maintainer of the package *\<dep\>* in case the meta package author likes to change the normal menu item for the user menus.

-

  *\<dep\>.html* These files might contain documentation of the dependency in HTML format if it makes no sense to provide a menu entry to actually call a program in the package.

-

  *\<dep\>.txt* These files might contain documentation of the dependency in text format if it makes no sense to provide a menu entry to actually call a program in the package.

  The rationale of the latter both types is to enable a menu entry in the user menus for **every** call a certain program via the menu.  These files should provide reasonable information how to use this program in text form.  This is better than having no menu entry at all because the target user might use the menu as the first interface of information of his system.

- *common*

  If there exists a file *common/common* and has a size greater than 0 a \<cdd\>-common package is builded.  The file *common/control* was just used to build the appropriate *debian/control* file using the **[cdd-gen-control(1)](/cdd-gen-control/1.md)** tool.

- *conf*

  If there exists a file *common/conf* and has a size greater than 0 this is used as special configuration file */etc/cdd/\<cdd\>/\<cdd\>.conf* which can override variables from the general configuration file */etc/cdd/cdd.conf* or add further variables. Because it is sourced from shell it has to follow shell syntax.

- *install*

  Here the extra files which might be needed in a meta package (like scripts, manpages, etc.) should be copied in a directory named *install/\<pkg\_without\_cdd-prefix\>/* and the files should be moved into place by using *debian/\<pkg\>.install* or *debian/\<pkg\>.manpages* etc.

  Moreover it is possible to provide extra *debian/\<pkg\>.config* and *debian/\<pkg\>.templates* files for each meta package if additional *debconf* configuration is needed.  For the translations of the *debconf* questions some extra caution is required.  Because  **cdd-install-helper** uses general templates to provide translations for some general questions the directory *debian/po* is overriden in the package building process.  To enable translations of the extra templates these should be stored in a directory named *debian/po.stub* and the contents of the files in this directory is appended to the apropriate files.

## EXAMPLES

For the usage of this tool just have a look at the  **debian-med** source package.

## AUTHOR

Andreas Tille \<tille@debian.org\>.
