[Reproducible-commits] [sbuild] 01/01: srebuild: add man page, copyright and adapt makefiles
Johannes Schauer
josch-guest at moszumanska.debian.org
Fri Jan 2 11:25:27 UTC 2015
This is an automated email from the git hooks/post-receive script.
josch-guest pushed a commit to branch pu/reproducible_builds
in repository sbuild.
commit 542ebc22f12b91d1f595db6a9f834f0e141784e7
Author: josch <j.schauer at email.de>
Date: Fri Jan 2 12:04:57 2015 +0100
srebuild: add man page, copyright and adapt makefiles
---
bin/Makefile.am | 2 ++
bin/srebuild | 2 +-
debian/changelog | 1 +
debian/copyright | 17 ++++++++++++++++
debian/sbuild.install | 1 +
man/Makefile.am | 1 +
man/srebuild.1.in | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++
7 files changed, 78 insertions(+), 1 deletion(-)
diff --git a/bin/Makefile.am b/bin/Makefile.am
index 423a313..760daf2 100644
--- a/bin/Makefile.am
+++ b/bin/Makefile.am
@@ -35,6 +35,7 @@ bin_SCRIPTS = \
sbuild-shell \
sbuild-hold \
sbuild-unhold \
+ srebuild \
buildd \
buildd-mail \
buildd-uploader \
@@ -48,6 +49,7 @@ sbin_SCRIPTS = \
sbuilddata_SCRIPTS = \
create-chroot \
+ srebuild-hook \
dobuildlog
doc_DATA = \
diff --git a/bin/srebuild b/bin/srebuild
index fb41c1f..1d2172b 100755
--- a/bin/srebuild
+++ b/bin/srebuild
@@ -243,7 +243,7 @@ print "mirror = http://snapshot.debian.org/archive/$archive/$newest/\n";
my $bn_buildinfo = basename $buildinfo;
my $retval = system "sbuild", "--arch=$arch", "--dist=wheezy",
- "--pre-build-command=cp /home/josch/sbuild/bin/srebuild-hook $buildinfo %SBUILD_CHROOT_DIR/tmp",
+ "--pre-build-command=cp /usr/share/sbuild/srebuild-hook $buildinfo %SBUILD_CHROOT_DIR/tmp",
"--chroot-setup-command=/tmp/srebuild-hook chroot-setup /tmp/$bn_buildinfo $newest",
"--starting-build-commands=/tmp/srebuild-hook starting-build /tmp/$bn_buildinfo",
$dsc_fname;
diff --git a/debian/changelog b/debian/changelog
index 6aeef32..ec7c32f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -10,6 +10,7 @@ sbuild (0.65.1-1) UNRELEASED; urgency=medium
* Move running of pre-build-commands until after 'Chroot Dir' is defined
- this prevents the %SBUILD_CHROOT_DIR percentage escape being empty
when running the pre-build-commands hook (Closes: #774359)
+ * add srebuild, a wrapper to make reproducible builds from .buildinfo files
-- Roger Leigh <rleigh at debian.org> Sun, 30 Nov 2014 22:44:47 +0000
diff --git a/debian/copyright b/debian/copyright
index 990425e..f7c4fdc 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -69,6 +69,23 @@ the GNU General Public License, version 3 or later:
On Debian systems, the complete text of the GNU General Public
License, version 3, can be found in /usr/share/common-licenses/GPL-3.
+Files:
+ bin/srebuild
+ bin/srebuild-hooks
+ man/srebuild.1.in
+Copyright: 2015 Johannes Schauer <j.schauer at email.de>
+License: Expat
+ Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following
+ conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
Debian packaging copyright:
© 2001-2003 Rick Younie <younie at debian.org>
diff --git a/debian/sbuild.install b/debian/sbuild.install
index 695c3ee..7b785d8 100644
--- a/debian/sbuild.install
+++ b/debian/sbuild.install
@@ -1,5 +1,6 @@
debian/install/etc/sbuild etc
debian/install/usr/bin/sbuild* usr/bin
+debian/install/usr/bin/srebuild usr/bin
debian/install/usr/sbin/sbuild* usr/sbin
debian/install/usr/share/doc/sbuild usr/share/doc
debian/install/usr/share/man/man1/sbuild* usr/share/man/man1
diff --git a/man/Makefile.am b/man/Makefile.am
index 9d1b8d0..7ee2b9d 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -28,6 +28,7 @@ man_MANS = \
buildd-uploader.1 \
buildd-vlog.1 \
buildd-watcher.1 \
+ srebuild.1 \
sbuild.1 \
sbuild.conf.5 \
sbuild-abort.1 \
diff --git a/man/srebuild.1.in b/man/srebuild.1.in
new file mode 100644
index 0000000..3d96c53
--- /dev/null
+++ b/man/srebuild.1.in
@@ -0,0 +1,55 @@
+.\" # Copyright 2014 Johannes Schauer
+.\"
+.\" Permission is hereby granted, free of charge, to any person obtaining a copy
+.\" of this software and associated documentation files (the "Software"), to deal
+.\" in the Software without restriction, including without limitation the rights
+.\" to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+.\" copies of the Software, and to permit persons to whom the Software is
+.\" furnished to do so, subject to the following conditions:
+.\"
+.\" The above copyright notice and this permission notice shall be included in
+.\" all copies or substantial portions of the Software.
+.so defs.man
+.TH SREBUILD 1 "\*[RELEASE_DATE]" "Version \*[VERSION]" "Debian sbuild"
+.SH NAME
+srebuild \- sbuild wrapper to make a reproducible build using a .buildinfo file
+.SH SYNOPSIS
+.B srebuild package.buildinfo
+.SH DESCRIPTION
+\fBsrebuild\fR is a thin wrapper around sbuild. Given a \fI.buildinfo\fP file,
+it first finds a timestamp of Debian Sid from snapshot.debian.org which
+contains the requested packages in their exact versions. It then runs sbuild
+with the right architecture as given by the .buildinfo file and the right base
+system to upgrade from, as given by the version of the base-files package
+version in the .buildinfo file. Using two hooks it will install the right
+package versions and verify that the installed packages are in the right
+version before the build starts.
+.SH OPTIONS
+There are no options yet.
+.SH BUGS
+\fBsrebuild\fR will give up if not all packages can be found in a single
+snapshot. It should be possible to retrieve the right packages from multiple
+timestamps.
+.PP
+Querying the snapshot.debian.org API for the right timestamp with the correct
+versions takes some time. It should be possible to manually supply the right
+timestamp on the command line, allowing to skip the step of figuring out the
+right timestamp. Conversely, every run should output the timestamp it found so
+that it can be used to skip the step for repeated runs.
+.PP
+The right snapshot is expected to be found in Debian sid, main. It should be
+possible to find it in stable and testing as well or even mix different suites.
+It should be possible to find the right packages in contrib and non free, too.
+Additionally, it might be worthwhiel to search debian-archive,
+debian-backports, debian-ports, debian-security or debian-volatile for the
+right version.
+.PP
+Currently, wheezy will always be used as the base. Instead, the version of the
+base-files package should be used to select the optimal release to upgrade
+from.
+.SH AUTHORS
+Johannes Schauer <j.schauer at email.de>
+.SH COPYRIGHT
+Copyright 2015 Johannes Schauer <j.schauer at email.de>
+.SH SEE ALSO
+.BR sbuild (1)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/sbuild.git
More information about the Reproducible-commits
mailing list