Your message dated Tue, 21 Feb 2006 16:02:23 -0800
with message-id <[EMAIL PROTECTED]>
and subject line Bug#311363: fixed in sbuild 0.39
has caused the attached Bug report to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere. Please contact me immediately.)
Debian bug tracking system administrator
(administrator, Debian Bugs database)
--- Begin Message ---
Package: sbuild
Version: 0.35
Severity: normal
Hi,
I've recently set up some sbuild chroots with cdebootstrap. This isn't
entirely straightforward, since the sbuild chroot scripts need
examination to reproduce the same effect by hand. I've documented the
changes, and you are free to include them in the package. I can mark
them up as manpages or whatever format you like. (File attached.)
The approach I've used (particularly with the mounts) isn't what
typical buildds use; so if any parts are not recommended practice, I can
easily change that.
Regards,
Roger
-- System Information:
Debian Release: 3.1
APT prefers unstable
APT policy: (990, 'unstable')
Architecture: powerpc (ppc)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.12-rc4
Locale: LANG=en_GB.UTF8, LC_CTYPE=en_GB.UTF8 (charmap=UTF-8)
Versions of packages sbuild depends on:
ii adduser 3.63 Add and remove users and groups
ii apt 0.5.28.6 Advanced front-end for dpkg
ii dpkg-dev 1.10.28 Package building tools for Debian
ii exim4 4.50-8 metapackage to ease exim MTA (v4)
ii exim4-daemon-light [mail-tra 4.50-8 lightweight exim MTA (v4) daemon
ii grep-dctrl 2.1.11 Grep Debian package information
ii perl 5.8.4-8 Larry Wall's Practical Extraction
ii sudo 1.6.8p7-1.1 Provide limited super user privile
-- no debconf information
Setting up an sbuild chroot with cdebootstrap -*- text -*-
---------------------------------------------
This guide sets up a sarge chroot on a powerpc machine. Adjust the
names for other suites and architectures.
1. Run cdebootstrap to create the chroot.
mkdir -p /srv/chroot/sarge
[I have each chroot as a separate LVM volume group; create and
mount here if wanted
lvcreate -L 4G -n sarge_chroot -Z y hda_vg
and add to /etc/fstab and mount (see next section)]
cdebootstrap -a powerpc -f build sarge /srv/chroot/sarge
http://ftp.uk.debian.org/debian/
2. Set up additional mounts. My /etc/fstab:
/dev/mapper/hda_vg-sarge_chroot /srv/chroot/sarge ext3 defaults
0 2
/dev/pts /srv/chroot/sarge/dev/pts none rw,bind
0 0
tmpfs /srv/chroot/sarge/dev/shm tmpfs defaults
0 0
proc /srv/chroot/sarge/proc proc defaults
0 0
/dev/mapper/hda_vg-home /srv/chroot/sarge/home ext3
quota,user_xattr 0 0
/tmp /srv/chroot/sarge/tmp none rw,bind
0 0
/etc/passwd /srv/chroot/sarge/etc/passwd none ro,bind
0 0
/etc/shadow /srv/chroot/sarge/etc/shadow none ro,bind
0 0
/etc/group /srv/chroot/sarge/etc/group none ro,bind
0 0
/etc/resolv.conf /srv/chroot/sarge/etc/resolv.conf none ro,bind
0 0
If the bind mountpoints don't exist in the chroot, touch them, e.g.
touch /srv/chroot/sarge/etc/resolv.conf
and then mount them all. Depending on your kernel version and
security considerations, you may wish to do this part slightly
differently. You need 2.6 kernel for bind mounts, and devpts
(CONFIG_UNIX98_PTYS) for /dev/pts. Other guides recommend copying the
files, but this method keeps them up-to-date at no cost.
To disable networking, don't bind mount /etc/resolv.conf. This will
prevent APT from working inside the chroot, but prevents package
building from having network access (no nameservers).
3. Edit /srv/chroot/sarge/etc/apt/sources.list:
deb http://security.debian.org/ sarge/updates main
deb-src http://security.debian.org/ sarge/updates main
deb http://ftp.uk.debian.org/debian/ sarge main
deb-src http://ftp.uk.debian.org/debian/ sarge main
4. Configure dchroot [add to /etc/dchroot.conf]
sarge /srv/chroot/sarge
5. Log into chroot
dchroot -c sarge
6. Set up packages for sbuild
apt-get update
apt-get dist-upgrade
apt-get install debconf
dpkg-reconfigure -plow debconf
[Answer the debconf questions as follows:
interface: choose 6/Noninteractive
priority: choose 1/Critical
You only need to run dpkg-reconfigure if you weren't asked the
questions during the debconf install]
apt-get install sudo debfoster fakeroot build-essential
apt-get install makedev
cd /dev/
/sbin/MAKEDEV generic
touch /etc/mtab
[For some security, we don't bind mount /dev, so it can't access
e.g. USB devices]
7. sbuild setup
mkdir /build
chown root:sbuild /build
mkdir -p /var/lib/sbuild/srcdep-lock
chown -R root:sbuild /var/lib/sbuild
chmod -R 02775 /var/lib/sbuild
8. user setup
Configure the user's .sbuildrc, and make the build directories:
mkdir ~/build ~/logs
As root, run
/usr/share/sbuild/add_sbuild_user /srv/chroot/sarge testing $username
[follow the instructions, and update ~/build etc. as shown]
--- End Message ---
--- Begin Message ---
Source: sbuild
Source-Version: 0.39
We believe that the bug you reported is fixed in the latest version of
sbuild, which is due to be installed in the Debian FTP archive:
sbuild_0.39.dsc
to pool/main/s/sbuild/sbuild_0.39.dsc
sbuild_0.39.tar.gz
to pool/main/s/sbuild/sbuild_0.39.tar.gz
sbuild_0.39_all.deb
to pool/main/s/sbuild/sbuild_0.39_all.deb
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Roger Leigh <[EMAIL PROTECTED]> (supplier of updated sbuild package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.7
Date: Tue, 21 Feb 2006 23:44:19 +0000
Source: sbuild
Binary: sbuild
Architecture: source all
Version: 0.39
Distribution: unstable
Urgency: low
Maintainer: Debian buildd-tools Developers <[EMAIL PROTECTED]>
Changed-By: Roger Leigh <[EMAIL PROTECTED]>
Description:
sbuild - Tool for building Debian binary packages from Debian sources
Closes: 287669 308065 311363 311589 331506 341327 342357
Changes:
sbuild (0.39) unstable; urgency=low
.
* sbuild:
- fetch_source_files(): Merge from upstream SVN (cset 94); Strip trailing
whitespace from each line in $dscfile/debian/.sbuild-build-deps
early on, making all subsequent regexes simpler.
- Update copyright notice (add myself as a copyright holder).
- Add %main::sessioncaps to store whether or not a chroot is
session-capable. Check the schroot "Session Managed" attribute to
determine session capability.
- If a chroot is session-capable, skip running uninstall_deps() (thanks
to Reinhard Tartler).
- Add debugging messages for distribution selection and schroot
session creation (thanks to Reinhard Tartler).
* debian/control:
- Recommend schroot (>= 0.2.3-2), for its "Session Managed"
information in --info output, used for skipping chroot cleanup.
.
sbuild (0.38) experimental; urgency=low
.
* Full sudo access is no longer mandatory when using the schroot
chroot_mode (Closes: #287669, #331506).
* schroot session management is now fully implemented and completely
functional.
* sbuild:
- Move schroot metadata parsing to a separate function,
get_schroot_info(). Parse both "Location" (for
backwards-compatibility) and "Mount Location".
- Move path and APT setup into a separate function, setup_options().
- Remove check_dpkg_version(). This has not been necessary since the
release of potato (Debian 2.2), which had a dpkg version 1.6.14.
- When $chroot_mode == "schroot", clear %main::dist_order and
%main::dist_locations using an empty array, rather than undef.
- New functions get_command(), run_command(), get_apt_command() and
run_apt_command() to run a command inside or outside the build
chroot under the specified user, or run apt inside or outside the
chroot (depending on the chroot_mode), respectively.
- New function exec_command(). This is the same as run_command(), but
runs the command with exec rather than system().
- New functions log_command() to log a command being run,
get_command_internal() and get_apt_command_internal() to get a
command string without logging it; these are used by get_command(),
run_command, exec_command(), get_apt_command() and run_apt_command(),
which do log the command being run. Commands are logged in for all
chroot modes.
- get_apt_command() and run_apt_command() take an additional parameter,
the command to run (apt-get or apt-cache).
- get_apt_command() and run_apt_command() take an additional parameter,
the user to run as, because not all commands need (or should) run as
root.
- Use new commands for running commands inside and outside chroots:
+ Signing options for dpkg-buildpackage are double-quoted rather than
single-quoted (because the main command is single-quoted).
+ All commands run in a pipeline are obtained with get_command() or
get_apt_command().
+ All other commands are run with run_command(), exec_command() or
run_apt_command().
+ check_space() only requires root access in the chroot.
- Add schroot session management. Sessions are created, run and
removed automatically. The current session is stored in
$main::schroot_session. setup_options is called once per build, in
order to set up the session options.
- Add missing newline to log message.
* sbuild.1:
- Update outdated information.
- Correct macro usage and reindent.
- Correct command-line summary (Closes: #311589).
* sbuild-setup.7: New manpage. This describes how to set up a chroot
(Closes: #311363).
* avg-pkg-build-time.1: Clean up.
* update-sourcedeps.1: Clean up.
* sbuild.conf: $schroot_options defaults to "-q" to match the built-in
default.
* example.sbuildrc: Single quote example email addresses in
$maintainer_name, $uploader_name, and $key_id (Closes: #341327).
* chroot/buildd.chroot:
- Use "set -e" to abort on all errors (Closes: #342357).
- Correctly quote all shell variables.
- Use cdebootstrap rather than debootstrap.
* chroot/buildd.chroot.pre-sarge: Remove.
* chroot/README-buildd.chroot.pre-sarge: Remove (Closes: #308065).
* debian/control:
- Recommend schroot.
- Recommend cdebootstrap rather than debootstrap.
* debian/README.Debian: Update information about src-deps and schroot.
Files:
ffb40183aec209ed83c1e7e1cdbcb84c 659 devel extra sbuild_0.39.dsc
29567ab12ae98120ea07ba44f6b7ebd9 60729 devel extra sbuild_0.39.tar.gz
b9485bd6f2370da994f3e4fc1140b946 68046 devel extra sbuild_0.39_all.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
iD8DBQFD+6eKVcFcaSW/uEgRAgw5AJ9jFvmQOGfgliQw1tWCQCF0VPAHBwCfcxEJ
xsBAdpkt5deDZphoJoryy7U=
=LlEJ
-----END PGP SIGNATURE-----
--- End Message ---