.\" Automatically generated by Pod::Man 2.1801 (Pod::Simple 3.05) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DEBGET 1p" .TH DEBGET 1p "2008-12-12" "perl v5.10.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" debget \- download source and binary Debian packages .SH "SYNOPSIS" .IX Header "SYNOPSIS" \&\fBdebget\fR [\fIswitch\fR]... { \fIpackage\fR | \fIsection/package\fR | \fIfile\fR.dsc | \fIfile\fR.deb }... .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fBdebget\fR downloads source and binary Debian packages by name and optionally unpacks, compiles and installs them. The default behavior is to download the source for packages, to unpack and build \fI*.dsc\fR files and to install \fI*.deb\fR files. For detailed defaults on \s-1FTP\s0 server names and such run \f(CW\*(C`debget \-\-help\*(C'\fR. .PP \&\fBdebget\fR doesn't require a local copy of the \fIPackages\fR files, instead it lists directories on the \s-1FTP\s0 site to find out what versions are available. .PP Non-switch arguments are \fI*.dsc\fR files, \fI*.deb\fR files, and package names or \fIsection/package\fR, eg \fBbase/dpkg\fR or \fBnon\-free/games/quake2\fR. There are two cases in which you've got to specify the section: .IP "\-" 4 Information about the package isn't in the local \fIavailable\fR file (as shown by \f(CW\*(C`dpkg \-\-print\-avail\*(C'\fR), or the information there is wrong. .IP "\-" 4 You're downloading a source package which doesn't generate a binary package of the same name. Normally \fBdebget\fR infers the correct source package to download based on the \f(CW\*(C`dpkg \-\-print\-avail\*(C'\fR output. (Eg, if you say to download the source for \fBperl-base\fR, it will really download the \fBperl\fR sources.) This isn't possible if the source package doesn't have an \fIavailable\fR file entry (which is the case when the source package doesn't generate a binary package of the same name). In this case \fBdebget\fR will use the section for the package which you specified (\fBperl-base\fR in this case). If the section for that package isn't available, or if it's not the same as the section for the source package, you have to specify the section yourself. .PP To handle either of these cases, specify the package with the section prepended, as it would appear in the \fIavailable\fR file. Eg, \fBbase/dpkg\fR or \fBnon\-free/games/quake2\fR. .SH "OPTIONS" .IX Header "OPTIONS" .IP "\fB\-\-arch\fR \fIarch\fR" 4 .IX Item "--arch arch" Specify the installation architecture (used to find binary packages). The default is the output of \f(CW\*(C`dpkg \-\-print\-installation\-architecture\*(C'\fR. .IP "\fB\-b\fR, \fB\-\-binary\fR" 4 .IX Item "-b, --binary" Download binary packages. The default is not to download them. .IP "\fB\-B\fR, \fB\-\-nobinary\fR" 4 .IX Item "-B, --nobinary" Don't download binary packages. This is the default. .IP "\fB\-u\fR, \fB\-\-build\fR" 4 .IX Item "-u, --build" Build downloaded source packages. This implies \fB\-\-unpack\fR. \fB\-\-build\fR is turned off by default, but it is turned on if you specify any \fI*.dsc\fR or \fI*.deb\fR files on the command line. .IP "\fB\-\-debug\fR" 4 .IX Item "--debug" Turn debugging on. Specify multiple times for more detail. .IP "\fB\-\-dir\fR \fIdir\fR" 4 .IX Item "--dir dir" Specify the path to the top of the Debian hierarchy on the primary \s-1FTP\s0 server. .IP "\fB\-d\fR \fIdist\fR, \fB\-\-dist\fR \fIdist\fR" 4 .IX Item "-d dist, --dist dist" Specify the distribution from which to download packages. The default is \fBunstable\fR. You can use the name of any subdirectory in the \fIdists\fR directory in the Debian archive, or \fBexperimental\fR (which is special-cased). .IP "\fB\-\-help\fR" 4 .IX Item "--help" Show the usage message and die. .IP "\fB\-h\fR \fIhost\fR, \fB\-\-host\fR \fIhost\fR" 4 .IX Item "-h host, --host host" Specify the host name of the primary \s-1FTP\s0 server. .IP "\fB\-i\fR, \fB\-\-install\fR" 4 .IX Item "-i, --install" Install binary packages. This turns on \fB\-\-unpack\fR and \fB\-\-build\fR, so specifying it will cause \fBdebget\fR to install just about everything you mention on the command line. Packages will be downloaded, unpacked, built, and installed, \fI*.dsc\fR files will be unpacked, built, and installed, and \&\fI*.deb\fR files will be installed. .IP "\fB\-n\fR, \fB\-\-no\fR" 4 .IX Item "-n, --no" Go through the motions, but don't actually download any packages. .IP "\fB\-f\fR, \fB\-\-no\-config\fR" 4 .IX Item "-f, --no-config" Don't process either /etc/debget.rc or ~/.debget.rc. .IP "\fB\-\-no\-download\-re\fR \fIre\fR" 4 .IX Item "--no-download-re re" Don't download files whose name match the Perl regexp \fIre\fR. This option can be specified multiple times. .IP "\fB\-\-no\-download\-tar\fR" 4 .IX Item "--no-download-tar" Don't download \fI*.tar.gz\fR files. This is normally used when downloading sources, when specified you'll just fetch the \fI*.diff.gz\fR and \fI*.dsc\fR files. .IP "\fB\-\-no\-dscverify\fR" 4 .IX Item "--no-dscverify" Don't run \fBdscverify\fR before unpacking sources. \fBdscverify\fR checks that the \fI.dsc\fR file is signed by a Debian developer and that the \s-1MD5\s0 sums and file sizes given in it match the files about to be unpacked. These are good things, so \fBdebget\fR will try to run \fBdscverify\fR by default. The \fBdscverify\fR program is in the \fIdevscripts\fR package. .IP "\fB\-F\fR, \fB\-\-no\-user\-config\fR" 4 .IX Item "-F, --no-user-config" Don't process ~/.debget.rc. .IP "\fB\-\-non\-us\-dir\fR \fIdir\fR" 4 .IX Item "--non-us-dir dir" Specify the path to the top of the Debian hierarchy for non-US packages. .IP "\fB\-H\fR \fIhost\fR, \fB\-\-non\-us\-host\fR \fIhost\fR" 4 .IX Item "-H host, --non-us-host host" Specify the host name of the non-US \s-1FTP\s0 server. .IP "\fB\-r\fR \fIcmd\fR, \fB\-\-root\-build\fR \fIcmd\fR" 4 .IX Item "-r cmd, --root-build cmd" Use \fIcmd\fR to become root when building a package from source. The default is the first of \fIfakeroot\fR, \fIsudo\fR, \fIsuper\fR, or \fIsu\fR which is present on the system. .IP "\fB\-R\fR \fIcmd\fR, \fB\-\-root\-install\fR \fIcmd\fR" 4 .IX Item "-R cmd, --root-install cmd" Use \fIcmd\fR to become root when installing a package. The default is what you gave for \fB\-\-root\-build\fR if you specified anything, otherwise the first of \fIsudo\fR, \fIsuper\fR, or \fIsu\fR which is present on the system. .IP "\fB\-s\fR, \fB\-\-source\fR" 4 .IX Item "-s, --source" Download source packages. This is the default. .IP "\fB\-S\fR, \fB\-\-nosource\fR" 4 .IX Item "-S, --nosource" Don't download source packages. The default is to download them. .IP "\fB\-\-unpack\fR" 4 .IX Item "--unpack" Unpack downloaded source packages. .IP "\fB\-v\fR, \fB\-\-verbose\fR" 4 .IX Item "-v, --verbose" Be verbose. .IP "\fB\-\-version\fR" 4 .IX Item "--version" Print the version number and exit. .SH "CONFIGURATION FILES" .IX Header "CONFIGURATION FILES" The default behavior of \fBdebget\fR can be modified by the configuration files \fI/etc/debget.rc\fR and \fI~/.debget.rc\fR (unless modified by the \&\fB\-f\fR or \fB\-F\fR switches). These files are processed as Perl code. They can set these variables to control the program (with their corresponding switches): .ie n .IP "$O{\*(Aqarch\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqarch\*(Aq}\fR" 4 .IX Item "$O{arch}" \&\fB\-\-arch\fR .ie n .IP "$O{\*(Aqbinary\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqbinary\*(Aq}\fR" 4 .IX Item "$O{binary}" \&\fB\-\-binary\fR, boolean .ie n .IP """{$O{\*(Aqbuild\*(Aq}""" 4 .el .IP "\f(CW{$O{\*(Aqbuild\*(Aq}\fR" 4 .IX Item "{$O{build}" \&\fB\-\-build\fR, boolean .ie n .IP "$O{\*(Aqdebug\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqdebug\*(Aq}\fR" 4 .IX Item "$O{debug}" \&\fB\-\-debug\fR, integer .ie n .IP "$O{\*(Aqdir\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqdir\*(Aq}\fR" 4 .IX Item "$O{dir}" \&\fB\-\-dir\fR .ie n .IP "$O{\*(Aqdist\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqdist\*(Aq}\fR" 4 .IX Item "$O{dist}" \&\fB\-\-dist\fR .ie n .IP "$O{\*(Aqhost\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqhost\*(Aq}\fR" 4 .IX Item "$O{host}" \&\fB\-\-host\fR .ie n .IP "$O{\*(Aqinstall\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqinstall\*(Aq}\fR" 4 .IX Item "$O{install}" \&\fB\-\-install\fR, boolean .ie n .IP "$O{\*(Aqno\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqno\*(Aq}\fR" 4 .IX Item "$O{no}" \&\fB\-\-no\fR, boolean .ie n .IP "$O{\*(Aqno\-config\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqno\-config\*(Aq}\fR" 4 .IX Item "$O{no-config}" \&\fB\-\-no\-config\fR, boolean .ie n .IP "$O{\*(Aqno\-download\-re\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqno\-download\-re\*(Aq}\fR" 4 .IX Item "$O{no-download-re}" \&\fB\-\-no\-download\-re\fR, array reference .ie n .IP "$O{\*(Aqno\-download\-tar\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqno\-download\-tar\*(Aq}\fR" 4 .IX Item "$O{no-download-tar}" \&\fB\-\-no\-download\-tar\fR, boolean .ie n .IP "$O{\*(Aqno\-dscverify\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqno\-dscverify\*(Aq}\fR" 4 .IX Item "$O{no-dscverify}" \&\fB\-\-no\-dscverify\fR, boolean .ie n .IP "$O{\*(Aqno\-user\-config\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqno\-user\-config\*(Aq}\fR" 4 .IX Item "$O{no-user-config}" \&\fB\-\-no\-user\-config\fR, boolean .ie n .IP "$O{\*(Aqnon\-us\-dir\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqnon\-us\-dir\*(Aq}\fR" 4 .IX Item "$O{non-us-dir}" \&\fB\-\-non\-us\-dir\fR .ie n .IP "$O{\*(Aqnon\-us\-host\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqnon\-us\-host\*(Aq}\fR" 4 .IX Item "$O{non-us-host}" \&\fB\-\-non\-us\-host\fR .ie n .IP "$O{\*(Aqroot\-build\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqroot\-build\*(Aq}\fR" 4 .IX Item "$O{root-build}" \&\fB\-\-root\-build\fR .ie n .IP "$O{\*(Aqroot\-install\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqroot\-install\*(Aq}\fR" 4 .IX Item "$O{root-install}" \&\fB\-\-root\-install\fR .ie n .IP "$O{\*(Aqsource\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqsource\*(Aq}\fR" 4 .IX Item "$O{source}" \&\fB\-\-source\fR, boolean .ie n .IP "$O{\*(Aqunpack\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqunpack\*(Aq}\fR" 4 .IX Item "$O{unpack}" \&\fB\-\-unpack\fR, boolean .ie n .IP "$O{\*(Aqverbose\*(Aq}" 4 .el .IP "\f(CW$O{\*(Aqverbose\*(Aq}\fR" 4 .IX Item "$O{verbose}" \&\fB\-\-verbose\fR, boolean .PP Here's an example configuration file: .PP .Vb 2 \& $O{\*(Aqhost\*(Aq} = \*(Aqdebian.terrabox.com\*(Aq; \& $O{\*(Aqverbose\*(Aq} = 1; .Ve .SH "BUGS" .IX Header "BUGS" If you specify \fB\-\-install\fR all produced binary packages will be installed, even ones you didn't specify on the command line. Eg, if you run \f(CW\*(C`debget \&\-\-install ssh\*(C'\fR it will install both \fIssh\fR and \fIssh-askpass\fR. .PP I'd like to add a \fB\-\-clean\fR switch which will make the program remove intermediate files. .PP See \fI/usr/share/doc/debget/README.Debian\fR if your transfers are failing because you need to use passive \s-1FTP\s0 or a proxy. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdselect\fR\|(8), \fIapt\-get\fR\|(8) .SH "AVAILABILITY" .IX Header "AVAILABILITY" The code is licensed under the \s-1GNU\s0 \s-1GPL\s0 and distributed as part of Debian. .SH "AUTHOR" .IX Header "AUTHOR" Roderick Schertler