tags 545215 patch
thanks
I've implemented this feature I would like for sbuild. Here are my patches.
Here's an example of how to run sbuild-createchroot to create a file type
chroot.
$ sudo sbuild-createchroot \
--make-tarball=/var/cache/sbuild/sbuild.tar.gz \
sid `mktemp -d` \
http://ftp.uk.debian.org/debian
It's in the manpage as well. The new option here is '--make-tarball=FILE'. This
will create a chroot for sbuild and save it as
'/var/cache/sbuild/sbuild.tar.gz'. It uses a temporary directory for the
'TARGET' which is removed by default once creating the chroot is finished. The
option '--keep-sbuildchroot-dir' can be used to keep the 'TARGET' that's been
created instead.
With this, I also went ahead and changed sbuild-update to allow for apt-get
update, upgrade, and dist-upgrade to be run in a single session. This is so
that
there's no need to keep unpacking and repacking the file type chroot with
sbuild-
update, sbuild-upgrade, and sbuild-distupgrade. With this, sbuild-upgrade and
sbuild-distupgrade has been deprecated since their respective functions are now
run by sbuild-update. The manpage explains how to use sbuild-update.
--
Regards,
Andres
From 083d51c54a2959208c410e2c0216066ac9dc0308 Mon Sep 17 00:00:00 2001
From: Andres Mejia <[email protected]>
Date: Sat, 12 Sep 2009 01:16:16 -0400
Subject: [PATCH 1/6] Implement support to create file type chroots in sbuild-createchroot.
---
bin/sbuild-createchroot | 76 +++++++++++++++++++++++++++++++++++++++--------
1 files changed, 63 insertions(+), 13 deletions(-)
diff --git a/bin/sbuild-createchroot b/bin/sbuild-createchroot
index a255149..75b82fa 100755
--- a/bin/sbuild-createchroot
+++ b/bin/sbuild-createchroot
@@ -72,7 +72,13 @@ sub init_allowed_keys {
},
'SETUP_ONLY' => {
DEFAULT => 0
- }
+ },
+ 'MAKE_TARBALL' => {
+ DEFAULT => ''
+ },
+ 'KEEP_SBUILDCHROOT_DIR' => {
+ DEFAULT => 0
+ },
);
$self->set_allowed_keys(\%createchroot_keys);
@@ -125,6 +131,12 @@ sub set_options {
},
"setup-only" => sub {
$self->set_conf('SETUP_ONLY', 1);
+ },
+ "make-tarball=s" => sub {
+ $self->set_conf('MAKE_TARBALL', $_[1]);
+ },
+ "keep-sbuildchroot-dir" => sub {
+ $self->set_conf('KEEP_SBUILDCHROOT_DIR', 1);
});
}
@@ -135,8 +147,9 @@ use Getopt::Long qw(:config no_ignore_case auto_abbrev gnu_getopt);
use Sbuild qw(dump_file help_text version_text usage_error check_packages);
use Sbuild::ChrootPlain;
use Sbuild::Sysconfig;
-use File::Path qw(mkpath);
+use File::Path qw(mkpath rmtree);
use File::Temp ();
+use File::Copy;
sub add_items ($@);
sub makedir ($$);
@@ -243,18 +256,31 @@ dump_file("${target}/etc/apt/sources.list");
print "I: Please add any additional APT sources to ${target}/etc/apt/sources.list\n";
# Write out schroot chroot configuration.
-my $chrootname = "${suite}-" . $conf->get('ARCH') . "-sbuild";
-
-if (-d "/etc/schroot/chroot.d") {
- # TODO: Don't hardcode path
- my $SCHROOT_CONF =
- new File::Temp( TEMPLATE => "$chrootname.XXXXXX",
- DIR => "/etc/schroot/chroot.d",
- UNLINK => 0)
- or die "Can't open schroot configuration file: $!\n";
+my $chrootname;
+if ($conf->get('MAKE_TARBALL')) {
+ $chrootname = "${suite}-" . $conf->get('ARCH') . "-file-sbuild";
+} else {
+ $chrootname = "${suite}-" . $conf->get('ARCH') . "-directory-sbuild";
+}
- my $arch = $conf->get('ARCH');
- print $SCHROOT_CONF <<"EOF";
+# Determine the schroot chroot configuration to use.
+my $config_entry;
+my $arch = $conf->get('ARCH');
+if ($conf->get('MAKE_TARBALL')) {
+ my $tgz_file = $conf->get('MAKE_TARBALL');
+ $config_entry = <<"EOF";
+[$chrootname]
+type=file
+description=Debian $suite/$arch autobuilder
+file=$tgz_file
+priority=3
+groups=root,sbuild
+root-groups=root,sbuild
+run-setup-scripts=true
+run-exec-scripts=true
+EOF
+} else {
+ $config_entry = <<"EOF";
[$chrootname]
type=directory
description=Debian $suite/$arch autobuilder
@@ -265,6 +291,17 @@ root-groups=root,sbuild
run-setup-scripts=true
run-exec-scripts=true
EOF
+}
+
+if (-d "/etc/schroot/chroot.d") {
+ # TODO: Don't hardcode path
+ my $SCHROOT_CONF =
+ new File::Temp( TEMPLATE => "$chrootname.XXXXXX",
+ DIR => "/etc/schroot/chroot.d",
+ UNLINK => 0)
+ or die "Can't open schroot configuration file: $!\n";
+
+ print $SCHROOT_CONF "$config_entry";
my ($personality, $personality_message);
# Detect whether personality might be needed.
@@ -351,6 +388,19 @@ if ($conf->get('ARCH') eq $conf->get('HOST_ARCH')) {
print "I: Run \"sbuild-checkpackages --set\" to set reference package list.\n";
}
+if ($conf->get('MAKE_TARBALL')) {
+ my ($tmpfh, $tmpfile) = File::Temp->tempfile( "tgz.XXXXXX" );
+ system("/bin/tar", "-czf", "$tmpfile", "-C", "$target",
+ "./") == 0 or die "Could not create chroot tarball: $?\n";
+ move("$tmpfile", $conf->get('MAKE_TARBALL'));
+ if (! $conf->get('KEEP_SBUILDCHROOT_DIR')) {
+ rmtree("$target");
+ print "I: chroot $target has been removed.\n";
+ } else {
+ print "I: chroot $target has been kept.\n";
+ }
+}
+
print "I: Successfully set up $suite chroot.\n";
print "I: Run \"sbuild-adduser\" to add new sbuild users.\n";
--
1.6.3.3
From 67754147ddaa80cca4cb7d20232658b3672300ae Mon Sep 17 00:00:00 2001
From: Andres Mejia <[email protected]>
Date: Sat, 12 Sep 2009 03:15:17 -0400
Subject: [PATCH 2/6] Update manpage for sbuild-createchroot.
---
man/sbuild-createchroot.8.in | 25 +++++++++++++++++++++++--
1 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/man/sbuild-createchroot.8.in b/man/sbuild-createchroot.8.in
index 7d0e32f..d8a3bdd 100644
--- a/man/sbuild-createchroot.8.in
+++ b/man/sbuild-createchroot.8.in
@@ -29,6 +29,8 @@ sbuild\-createchroot \- create sbuild chroot
.RB [ "\-\-components=\fIcomponent1[,component2,[componentn]]\fP" ]
.RB [ "\-\-keyring=\fIkeyring-file\fP" ]
.RB [ "\-\-setup\-only" ]
+.RB [ \-\-make\-tarball=\fIFILE\fP ]
+.RB [ "\-\-keep\-sbuildchroot\-dir" ]
.B SUITE TARGET-DIRECTORY DEBIAN-MIRROR-URI
.RB [ SCRIPT ]
.SH DESCRIPTION
@@ -104,6 +106,13 @@ Download signatures for retrieved \fIRelease\fP files and check them against
\fIkeyring-file\fP. By default \fI/etc/apt/trusted.gpg\fP is used. Set to an
empty string to disable signature checking.
.TP
+.BR \-\-make\-tarball=\fIFILE\fP
+Create a file type chroot and save it as \fIFILE\fP.
+.TP
+.BR \-\-keep\-sbuildchroot\-dir
+Don't delete the directory used for creating a file type chroot. This option
+does nothing if not creating a file type chroot.
+.TP
.B SUITE
The distribution to bootstrap (e.g. \[oq]sarge\[cq], \[oq]etch\[cq],
\[oq]lenny\[cq], \[oq]sid\[cq]). A complete list may be found in
@@ -126,12 +135,24 @@ Don't run debootstrap. Only perform the setup tasks on an already existing
chroot. This is useful for converting an existing chroot for use with sbuild
which has already been created using a tool such as debootstrap.
.SH EXAMPLES
-To create a sid (unstable) chroot in \fI/srv/chroot/unstable\fP using the
-\fIftp.uk.debian.org\fP Debian mirror:
+To create a plain type sid (unstable) chroot in \fI/srv/chroot/unstable\fP using
+the \fIftp.uk.debian.org\fP Debian mirror:
.PP
\f[CR]% \f[CB]sudo sbuild\-createchroot sid /srv/chroot/unstable \fP\fP\\
.br
\f[CB] http://ftp.uk.debian.org/debian\fP\[CR]
+.PP
+To create a file type sid (unstable) chroot saved in
+\fI/var/cache/sbuild/sbuild.tar.gz\fP using the \fIftp.uk.debian.org\fP Debian
+mirror and using a temporary directory as the target:
+.PP
+\f[CR]% \f[CB]sudo sbuild\-createchroot \fP\fP\\
+.br
+ \-\-make\-tarball=/var/cache/sbuild/sbuild.tar.gz \fP\fP\\
+.br
+ sid `mktemp \-d` \fP\fP\\
+.br
+\f[CB] http://ftp.uk.debian.org/debian\fP\[CR]
.SH HISTORY
sbuild\-createchroot was previously known as \fBbuildd.chroot\fP.
buildd.chroot performed exactly the same tasks, but additionally created a
--
1.6.3.3
From b2014cbacc9c1484af3ab12f173f2282c00f212b Mon Sep 17 00:00:00 2001
From: Andres Mejia <[email protected]>
Date: Sat, 12 Sep 2009 03:17:02 -0400
Subject: [PATCH 3/6] Add options to allow sbuild-update to perform update, upgrade, and distupgrade.
---
bin/sbuild-update | 118 +++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 109 insertions(+), 9 deletions(-)
diff --git a/bin/sbuild-update b/bin/sbuild-update
index d6dac48..ed68714 100755
--- a/bin/sbuild-update
+++ b/bin/sbuild-update
@@ -21,19 +21,97 @@
use strict;
use warnings;
+use Sbuild::ChrootSetup qw(update upgrade distupgrade);
+
+package Conf;
+
+use Sbuild::Conf;
+
+BEGIN {
+ use Exporter ();
+ our (@ISA, @EXPORT);
+
+ @ISA = qw(Exporter Sbuild::Conf);
+
+ @EXPORT = qw();
+}
+
+sub init_allowed_keys {
+ my $self = shift;
+
+ $self->SUPER::init_allowed_keys();
+
+ my %update_keys = (
+ 'UPDATE' => {
+ DEFAULT => 0
+ },
+ 'UPGRADE' => {
+ DEFAULT => 0
+ },
+ 'DISTUPGRADE' => {
+ DEFAULT => 0
+ },
+ );
+
+ $self->set_allowed_keys(\%update_keys);
+}
+
+package Options;
+
+use Sbuild::OptionsBase;
+use Sbuild::Conf;
+
+BEGIN {
+ use Exporter ();
+ our (@ISA, @EXPORT);
+
+ @ISA = qw(Exporter Sbuild::OptionsBase);
+
+ @EXPORT = qw();
+}
+
+sub set_options {
+ my $self = shift;
+
+ $self->add_options(
+ "update" => sub {
+ $self->set_conf('UPDATE', 1);
+ },
+ "upgrade" => sub {
+ $self->set_conf('UPGRADE', 1);
+ },
+ "distupgrade" => sub {
+ $self->set_conf('DISTUPGRADE', 1);
+ },
+ "uu" => sub {
+ $self->set_conf('UPDATE', 1);
+ $self->set_conf('UPGRADE', 1);
+ },
+ "ud" => sub {
+ $self->set_conf('UPDATE', 1);
+ $self->set_conf('DISTUPGRADE', 1);
+ });
+}
+
+package main;
+
use Getopt::Long;
use Sbuild qw(help_text version_text usage_error);
use Sbuild::Utility qw(setup cleanup);
-use Sbuild::ChrootSetup qw(update);
-use Sbuild::Conf;
-use Sbuild::OptionsBase;
-my $conf = Sbuild::Conf->new();
+my $conf = Conf->new();
exit 1 if !defined($conf);
-my $options = Sbuild::OptionsBase->new($conf, "sbuild-update", "1");
+my $options = Options->new($conf, "sbuild-update", "1");
exit 1 if !defined($options);
$conf->check_group_membership();
+if ( ! $conf->get('UPDATE') && ! $conf->get('UPGRADE') &&
+ ! $conf->get('DISTUPGRADE') ) {
+ my $msg = "Must specify at least one of the options --update, --upgrade, ";
+ $msg .= "or --distupgrade.\n";
+ die "$msg";
+}
+
usage_error("sbuild-update", "Incorrect number of options") if (@ARGV < 1);
foreach (@ARGV) {
@@ -42,12 +120,34 @@ foreach (@ARGV) {
my $session = setup($ARGV[0], $conf) or die "Chroot setup failed";
- my $status = update($session, $conf);
- $status >>= 8;
+ if ($conf->get('UPDATE')) {
+ print "Performing update.\n";
+ my $status = update($session, $conf);
+ $status >>= 8;
+ if ($status) {
+ die "Exiting from update with status $status.\n";
+ }
+ }
- cleanup($conf);
+ if ($conf->get('UPGRADE')) {
+ print "Performing upgrade.\n";
+ my $status = upgrade($session, $conf);
+ $status >>= 8;
+ if ($status) {
+ die "Exiting from upgrade with status $status.\n";
+ }
+ }
- exit $status if ($status);
+ if ($conf->get('DISTUPGRADE')) {
+ print "Performing distupgrade.\n";
+ my $status = distupgrade($session, $conf);
+ $status >>= 8;
+ if ($status) {
+ die "Exiting from distupgrade with status $status.\n";
+ }
+ }
+
+ cleanup($conf);
}
exit 0;
--
1.6.3.3
From c7d8525e75625c9c2745dc314b045912c3369502 Mon Sep 17 00:00:00 2001
From: Andres Mejia <[email protected]>
Date: Sat, 12 Sep 2009 12:05:38 -0400
Subject: [PATCH 5/6] Update man page for sbuild-update.
---
man/sbuild-update.1.in | 45 +++++++++++++++++++++++++++++++++++++--------
1 files changed, 37 insertions(+), 8 deletions(-)
diff --git a/man/sbuild-update.1.in b/man/sbuild-update.1.in
index b0af9f3..eebd44d 100644
--- a/man/sbuild-update.1.in
+++ b/man/sbuild-update.1.in
@@ -18,16 +18,22 @@
sbuild\-update \- update and upgrade an sbuild chroot with apt-get
.SH SYNOPSIS
.BR sbuild\-update
-.RB [ \-h \[or] \-\-help " \[or] " \-V \[or] \-\-version ]
+.BR [ \-h \[or] \-\-help ] " " [ \-V \[or] \-\-version ]
+\-\-update \-\-upgrade \-\-dist\-upgrade
.BR CHROOT1 " [" CHROOT2 " [" CHROOT\f[BI]n\fP... ]]
+.br
.BR sbuild\-upgrade
-.RB [ \-h \[or] \-\-help " \[or] " \-V \[or] \-\-version ]
+.BR [ \-h \[or] \-\-help ] " " [ \-V \[or] \-\-version ]
.BR CHROOT1 " [" CHROOT2 " [" CHROOT\f[BI]n\fP... ]]
-.BR sbuild\-distupdate
-.RB [ \-h \[or] \-\-help " \[or] " \-V \[or] \-\-version ]
+.br
+.BR sbuild\-distupgrade
+.BR [ \-h \[or] \-\-help ] " " [ \-V \[or] \-\-version ]
.BR CHROOT1 " [" CHROOT2 " [" CHROOT\f[BI]n\fP... ]]
.SH DESCRIPTION
-\fBsbuild\-update\fR runs \f[CB]apt\-get update\fP inside the specified chroot.
+\fBsbuild\-update\fR runs \f[CB]apt\-get\fP inside the specified chroot
+performing \f[CB]update\fP, \f[CB]upgrade\fP, and/or \f[CB]dist\-upgrade\fP
+depending on the options specified on the command line.
+.br
\fBsbuild\-upgrade\fR and \fBsbuild\-distupgrade\fR run \f[CB]apt\-get
upgrade\fP and \f[CB]apt\-get dist-upgrade\fP, respectively.
.SH OPTIONS
@@ -38,6 +44,22 @@ Display this manual.
.TP
.BR \-V ", " \-\-version
Print version information.
+.TP
+.BR \-\-update
+Perform an \f[CB]apt\-get update\fP.
+.TP
+.BR \-\-upgrade
+Perform an \f[CB]apt\-get upgrade\fP.
+.TP
+.BR \-\-dist\-upgrade
+Perform an \f[CB]apt\-get dist\-upgrade\fP.
+.TP
+.BR \-\-uu
+Shorthand to perform an \f[CB]apt\-get update\fP and \f[CB]apt\-get upgrade\fP.
+.TP
+.BR \-\-ud
+Shorthand to perform an \f[CB]apt\-get update\fP and \f[CB]apt\-get
+dist\-upgrade\fP.
.SS Chroot selection
.TP
.B CHROOT
@@ -48,8 +70,16 @@ and \[oq]experimental\[cq], respectively.
.SH EXAMPLES
To update the \fIunstable\fP chroot:
.PP
-\f[CR]% \f[CB]sbuild\-update unstable\fP\fP
-.br
+\f[CR]% \f[CB]sbuild\-update \-\-update unstable\fP\fP
+.PP
+To upgrade the \fIunstable\fP chroot:
+.PP
+\f[CR]% \f[CB]sbuild\-update \-\-upgrade unstable\fP\fP
+.PP
+To use the shorthand \f[CB]\-\-ud\fP to update and dist-upgrade the
+\fIunstable\fP chroot:
+.PP
+\f[CR]% \f[CB]sbuild\-update \-\-ud unstable\fP\fP
.SH AUTHORS
.nf
Roger Leigh.
@@ -61,7 +91,6 @@ Copyright \[co] 2006\[en]2009 Roger Leigh <[email protected]>.
.SH "SEE ALSO"
.BR sbuild (1),
.BR sbuild\-apt (1),
-.BR sbuild\-upgrade (1).
.\"#
.\"# The following sets edit modes for GNU EMACS
.\"# Local Variables:
--
1.6.3.3
From c734a303548b3e6af040e17a0e1773278f880821 Mon Sep 17 00:00:00 2001
From: Andres Mejia <[email protected]>
Date: Sat, 12 Sep 2009 12:04:40 -0400
Subject: [PATCH 4/6] Change --distupgrade option to --dist-upgrade to correspond to the option used in apt-get.
---
bin/sbuild-update | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/bin/sbuild-update b/bin/sbuild-update
index ed68714..2bac7e5 100755
--- a/bin/sbuild-update
+++ b/bin/sbuild-update
@@ -80,7 +80,7 @@ sub set_options {
"upgrade" => sub {
$self->set_conf('UPGRADE', 1);
},
- "distupgrade" => sub {
+ "dist-upgrade" => sub {
$self->set_conf('DISTUPGRADE', 1);
},
"uu" => sub {
@@ -108,7 +108,7 @@ $conf->check_group_membership();
if ( ! $conf->get('UPDATE') && ! $conf->get('UPGRADE') &&
! $conf->get('DISTUPGRADE') ) {
my $msg = "Must specify at least one of the options --update, --upgrade, ";
- $msg .= "or --distupgrade.\n";
+ $msg .= "or --dist-upgrade.\n";
die "$msg";
}
@@ -139,7 +139,7 @@ foreach (@ARGV) {
}
if ($conf->get('DISTUPGRADE')) {
- print "Performing distupgrade.\n";
+ print "Performing dist-upgrade.\n";
my $status = distupgrade($session, $conf);
$status >>= 8;
if ($status) {
--
1.6.3.3
From 67c0ec85483096c6c5dd689346f72a6668f5a0fd Mon Sep 17 00:00:00 2001
From: Andres Mejia <[email protected]>
Date: Sat, 12 Sep 2009 13:07:26 -0400
Subject: [PATCH 6/6] Deprecate sbuild-upgrade and sbuild-distupgrade. They now call sbuild-update to
perform their respective functions.
---
bin/sbuild-distupgrade | 33 +++------------------------------
bin/sbuild-upgrade | 33 +++------------------------------
man/sbuild-update.1.in | 14 ++++++++------
3 files changed, 14 insertions(+), 66 deletions(-)
diff --git a/bin/sbuild-distupgrade b/bin/sbuild-distupgrade
index 5e8cad7..183aa7d 100755
--- a/bin/sbuild-distupgrade
+++ b/bin/sbuild-distupgrade
@@ -21,33 +21,6 @@
use strict;
use warnings;
-use Getopt::Long;
-use Sbuild qw(help_text version_text usage_error);
-use Sbuild::Utility qw(setup cleanup);
-use Sbuild::ChrootSetup qw(distupgrade);
-use Sbuild::Conf;
-use Sbuild::OptionsBase;
-
-my $conf = Sbuild::Conf->new();
-exit 1 if !defined($conf);
-my $options = Sbuild::OptionsBase->new($conf, "sbuild-distupgrade", "1");
-exit 1 if !defined($options);
-$conf->check_group_membership();
-
-usage_error("sbuild-distupgrade", "Incorrect number of options") if (@ARGV < 1);
-
-foreach (@ARGV) {
-
- my $chroot = Sbuild::Utility::get_dist($_);
-
- my $session = setup($_, $conf) or die "Chroot setup failed for $chroot chroot";
-
- my $status = distupgrade($session, $conf);
- $status >>= 8;
-
- cleanup($conf);
-
- exit $status if ($status);
-}
-
-exit 0;
+print "$0 is deprecated. Use sbuild-update --dist-upgrade directly instead.\n";
+system("/usr/bin/sbuild-update", "--dist-upgrade", @ARGV) == 0 or
+ die "Exiting from sbuild-update with exit status $?";
diff --git a/bin/sbuild-upgrade b/bin/sbuild-upgrade
index 9017ad7..7de5db8 100755
--- a/bin/sbuild-upgrade
+++ b/bin/sbuild-upgrade
@@ -21,33 +21,6 @@
use strict;
use warnings;
-use Getopt::Long;
-use Sbuild qw(help_text version_text usage_error);
-use Sbuild::Utility qw(setup cleanup);
-use Sbuild::ChrootSetup qw(upgrade);
-use Sbuild::Conf;
-use Sbuild::OptionsBase;
-
-my $conf = Sbuild::Conf->new();
-exit 1 if !defined($conf);
-my $options = Sbuild::OptionsBase->new($conf, "sbuild-upgrade", "1");
-exit 1 if !defined($options);
-$conf->check_group_membership();
-
-usage_error("sbuild-upgrade", "Incorrect number of options") if (@ARGV < 1);
-
-foreach (@ARGV) {
-
- my $chroot = Sbuild::Utility::get_dist($_);
-
- my $session = setup($_, $conf) or die "Chroot setup failed for $chroot chroot";
-
- my $status = upgrade($session, $conf);
- $status >>= 8;
-
- cleanup($conf);
-
- exit $status if ($status);
-}
-
-exit 0;
+print "$0 is deprecated. Use sbuild-update --upgrade directly instead.\n";
+system("/usr/bin/sbuild-update", "--upgrade", @ARGV) == 0 or
+ die "Exiting from sbuild-update with exit status $?";
diff --git a/man/sbuild-update.1.in b/man/sbuild-update.1.in
index eebd44d..805a919 100644
--- a/man/sbuild-update.1.in
+++ b/man/sbuild-update.1.in
@@ -19,23 +19,25 @@ sbuild\-update \- update and upgrade an sbuild chroot with apt-get
.SH SYNOPSIS
.BR sbuild\-update
.BR [ \-h \[or] \-\-help ] " " [ \-V \[or] \-\-version ]
-\-\-update \-\-upgrade \-\-dist\-upgrade
+\-\-update \-\-upgrade \-\-dist\-upgrade \-\-uu \-\-ud
.BR CHROOT1 " [" CHROOT2 " [" CHROOT\f[BI]n\fP... ]]
.br
-.BR sbuild\-upgrade
+.BR (DEPRECATED) " " sbuild\-upgrade
.BR [ \-h \[or] \-\-help ] " " [ \-V \[or] \-\-version ]
.BR CHROOT1 " [" CHROOT2 " [" CHROOT\f[BI]n\fP... ]]
.br
-.BR sbuild\-distupgrade
+.BR (DEPRECATED) " " sbuild\-distupgrade
.BR [ \-h \[or] \-\-help ] " " [ \-V \[or] \-\-version ]
.BR CHROOT1 " [" CHROOT2 " [" CHROOT\f[BI]n\fP... ]]
.SH DESCRIPTION
\fBsbuild\-update\fR runs \f[CB]apt\-get\fP inside the specified chroot
performing \f[CB]update\fP, \f[CB]upgrade\fP, and/or \f[CB]dist\-upgrade\fP
depending on the options specified on the command line.
-.br
-\fBsbuild\-upgrade\fR and \fBsbuild\-distupgrade\fR run \f[CB]apt\-get
-upgrade\fP and \f[CB]apt\-get dist-upgrade\fP, respectively.
+.PP
+\fBsbuild\-upgrade\fR and \fBsbuild\-distupgrade\fR are deprecated. They now
+simply run \fBsbuild\-update\fR with the appropriate option (either
+\f[CB]\-\-upgrade\fP or \f[CB]\-\-dist\-upgrade\fP) along with whatever
+arguments were passed in the scripts.
.SH OPTIONS
.SS Actions
.TP
--
1.6.3.3