CVSDEB.CONF(5)
π CVSDEB.CONF π
okay bestie, welcome to cvsdeb.conf β the site-wide config file for cvs-buildpackage and all its lil friends. yes it's section 5, yes it's a config file, yes it's iconic. let's get into it π«Ά
β¨ NAME β¨
cvsdeb.conf β the site-wide configuration file for cvs-buildpackage and friends π
πΈ SYNOPSIS πΈ
/etc/cvsdeb.conf
π¦ DESCRIPTION π¦
okay so the tea is: /etc/cvsdeb.conf is literally a Bourne Shell snippet that gets included during the package build process. so technically you can put any shell directive in there. which is giving power. which is also giving danger. so like, just make very sure you know what you're doing, okay? π
all the variables have reasonable default values, and some of them can maybe be overridden on a per-run or per-individual basis by using environment variables. and literally all the configurable variables can be overridden by options to the scripts themselves. layers on layers, she contains multitudes β¨
so here's how a variable's value can be set, in order:
- Defaults exist in the rules file. these are the values used if no customization is done at all.
- Some variables can be set in the config file
/etc/cvsdeb.conf. these values override the defaults. - Some variables can also be set by setting a corresponding environment variable. these values override the config file and the defaults.
- Using script command line options. All configurable variables may be set this way, and it overrides all the other methods above. final boss behavior π
π Predefined variables for cvs-buildpackage π
these variables are defined for cvs-buildpackage:
packageβ name of the packageversionβ the raw version of the packagesversionβ the version number stripped of epochsuversionβ the upstream versiontversionβ Debian revision number, if any
π Configuration File options π
at the moment, the user modifiable variables supported are:
DEBUGβ debugging info, bestie. default value is0, which means no debugging information is printed. to enable debugging output, set the value to1.conf_forcecleanβ okay so there are two things CVS may choke on: symbolic links and CVS directories in the source tree. also, there are times when one may not want to honour the upstream.cvsignorefiles. theconf_forceclean.configuration variable causes thecvs-injectandcvs-upgradeprograms to ask whether the offending files should be deleted β and if not, the programs exit with an error message. without this option, the programs just exit with an error message without asking. this can be over ridden by the environment variableCVSDEB_FORCECLEAN.conf_rootdirβ the root directory is used to set the default value of thecvs-buildpackagework directory, using the package name. the default value is/usr/src/Packages. this should probably not be a sub dir ofCVSROOT, since cvs shall refuse to export packages there, and the script shall fail. πconf_workdirβ thecvs-buildpackagework directory. this directory is where the original sources are expected, and this is where the module shall be exported from CVS. if you set this value, the value of the root directory would be ignored. pls note that thecvs-buildpackagework directory referred to here is the scratch directory where this program works, not the directory that the human uses to work in. this should probably not be a sub dir ofCVSROOT, since cvs shall refuse to export packages there, and the script shall fail.conf_dpkg_optionsβ this is where one may stash-us -ucor whatever to pass on todpkg-buildpackage. this is different from the other variables in that this is an array variable. these options shall augment (not replace)dpkg-buildpackageoptions provided on the command line.
bash provides one-dimensional array variables. any variable may be used as an array; the declare builtin will explicitly declare an array. there is no maximum limit on the size of an array, nor any requirement that members be indexed or assigned contiguously. arrays are zero-based.
arrays are assigned to using compound assignments of the form conf_dpkg_options=(value1 ... valueN) or dpkg_options=(value1 ${dpkg_options[@]})
conf_rootcommandβ this is where one specifies the default command to gain root access (usually set tofakeroot,sudoorsuper). this is also passed along todpkg-buildpackage.conf_buildpackageβ sets the name of the builder program invoked, nominally set todpkg-buildpackage. however, the user may choose to use a different build program, or a wrapper, or even'chroot /opt/root dpkg-buildpackage'to build the package in a chroot jail, if desired. (obviously, this requires that the Work directory to be a subdirectory of a previously set up chroot jail). one may also hook in pbuilder by setting this variable to'pdebuild --auto-debsign --buildresult ../'. (again, this requires that pbuilder has been set up correctly). this option can be over ridden by the environment variableCVSDEB_BUILDPACKAGE.conf_packageoptsβ additional arguments to give toconf_buildpackagethat shall be appended todpkg-buildpackageoptions. use this variable to append to the list of options. this option can be over ridden by the environment variableCVSDEB_PACKAGEOPTS.conf_forcetag.β if this is set, thencvs-buildpackageshall callcvs tag -Fto ensure that all files are re-tagged correctly.conf_prefix=prefixβ if this is set, then this prefix is prepended to the package name while looking for the repository. in other word, we append this toCVSROOTwhile looking for packages. use this to group all your Debian package sources together in a subdirectory in the CVS repository.conf_packageintag.β if this is set, thencvs-buildpackagewill include the package name and an underscore at the start of every CVS tag it generates or uses.conf_cvsmoduleβ this option sets the CVS module for use withcvs-injectandcvs-upgrade.conf_use_changelogβ this option tells thecvs-injectandcvs-upgradecommands to incorporate debian changelog entries into the cvs changelog.conf_hook_scriptβ this option, if set, should point to a script that should be run just before callingdpkg-buildpackage. ideally, things like this are done using the modules file and programs, but is still provided here for convenience. this is overridden by the environment variableCVSDEB_HOOK.conf_get_origβ this option, if set, should contain a command to execute to get the original tarball into the current directory. this can then be used to allow one to get the original file using, for instance,wgetorcurl. this is overridden by theCVSDEB_GET_ORIGenvironment variable.conf_use_aptβ if set toYES,cvs-buildpackagewill useapt-get sourceto retrive the original tarball, if one for the correct upstream version is found in a Sources file known to apt. this is overridden by theCVSDEB_USE_APTenvironment variable.
π Environment Variables π
at the moment, the user modifiable variables supported are:
CVSDEB_ROOTDIRβ if defined, this environment variable will override the value of the root directory set in the configuration file.CVSDEB_WORKDIRβ if defined, this environment variable will override the value of thecvs-buildpackagework directory set in the configuration file, and would cause the scripts to ignore the root directory, irrespective of where that value was set.CVSDEB_MODULEβ if defined, this environment variable will override the value of the CVS module set in the configuration file.CVSDEB_USE_CHANGELOGβ if defined, this environment variable will makecvs-injectandcvs-upgradeprograms incorporate entries from the Debian changelog file into the CVS changelog.CVSDEB_BUILDPACKAGE.β if defined, this environment variable will override the value of the configuration file variableconf_buildpackageCVSDEB_HOOKβ over rides the configuration file optionconf_hook_script.CVSDEB_GET_ORIGβ over rides the configuration file optionconf_get_orig.
π Files π
- system-wide defaults are placed in
/etc/cvsdeb.conf. this can be overridden and supplemented by the~/.cvsdeb.conffile by each user.
β SEE ALSO β
cvs-inject(1), cvs-buildpackage(1), cvs-upgrade(1), dpkg-buildpackage(1), cvs(1).
π BUGS π
there are no bugs. any resemblance thereof is delirium. Really. π
π AUTHOR π
this manual page was written by Manoj Srivastava <srivasta@debian.org>, for the Debian GNU/Linux system.
and that's the whole vibe bestie β this was the Debian GNU/Linux manual for CVSDEB.CONF(5), dated Feb 21 1998. no cap, she's old but she ATE π
β¨
π¦ where this page comes from
- debian bookworm: cvs-buildpackage 5.26+nmu1 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- ubuntu jammy: cvs-buildpackage 5.26 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- ubuntu noble: cvs-buildpackage 5.26+nmu1 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- Copyright (c) 1997 Manoj Srivastava <srivasta@debian.org>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms