Bdale Garbee: Shifting Emphasis

The entropy level increases by 3-4 every second. In such case any application requiring random bits (like a HTTPS enabled web server) will halt and wait for more entrpy. And here is the situation with the ChaosKey inserted:% cat /proc/sys/kernel/random/entropy_avail; \ dd bs=1M if=/dev/random of=/dev/null count=1; \ for n in $(seq 1 5); do \ cat /proc/sys/kernel/random/entropy_avail; \ sleep 1; \ done 300 0+1 oppf ringer inn 0+1 oppf ringer ut 28 byte kopiert, 0,000264565 s, 106 kB/s 4 8 12 17 21 %
Quite the difference. :) I bought a few more than I need, in case someone want to buy one here in Norway. :) Update: The dongle was presented at Debconf last year. You might find the talk recording illuminating. It explains exactly what the source of randomness is, if you are unable to spot it from the schema drawing available from the ChaosKey web site linked at the start of this blog post.% cat /proc/sys/kernel/random/entropy_avail; \ dd bs=1M if=/dev/random of=/dev/null count=1; \ for n in $(seq 1 5); do \ cat /proc/sys/kernel/random/entropy_avail; \ sleep 1; \ done 1079 0+1 oppf ringer inn 0+1 oppf ringer ut 104 byte kopiert, 0,000487647 s, 213 kB/s 433 1028 1031 1035 1038 %
SOURCE_DATE_EPOCH
. As
stated in its man pages:
ENVIRONMENT
[...]
SOURCE_DATE_EPOCH belongs to the specs of reproducible-builds.org. It
is supposed to be either undefined or to contain a decimal number which
tells the seconds since january 1st 1970. If it contains a number, then
it is used as time value to set the default of --modification-date=,
--gpt_disk_guid, and --set_all_file_dates. Startup files and program
options can override the effect of SOURCE_DATE_EPOCH.
Packages reviewed and fixed, and bugs filed
The following packages have become reproducible after being fixed:
< h01ger> https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/diffoscope.html shows these packages were built on amd64:
< h01ger> bd21db708fe91c01ba1c9cb35b9d41a7c9b0db2b 62288 diffoscope_59_all.deb
< h01ger> 366200bf2841136a4c8f8c30bdc87057d59a4cdd 20146 trydiffoscope_59_all.deb
< h01ger> and on i386:
< h01ger> bd21db708fe91c01ba1c9cb35b9d41a7c9b0db2b 62288 diffoscope_59_all.deb
< h01ger> 366200bf2841136a4c8f8c30bdc87057d59a4cdd 20146 trydiffoscope_59_all.deb
< h01ger> and on armhf:
< h01ger> bd21db708fe91c01ba1c9cb35b9d41a7c9b0db2b 62288 diffoscope_59_all.deb
< h01ger> 366200bf2841136a4c8f8c30bdc87057d59a4cdd 20146 trydiffoscope_59_all.deb
And those also match the binaries uploaded by Chris in his diffoscope 59 binary upload to ftp.debian.org, yay! Eating our own dogfood and enjoying it!
tests.reproducible-builds.org
Debian related:
suite | all | reproducible | unreproducible | ftbfs | depwait | not for this arch | blacklisted |
---|---|---|---|---|---|---|---|
unstable/amd64 | 24693 | 21794 (88.2%) | 1753 (7.1%) | 972 (3.9%) | 65 (0.2%) | 95 (0.3%) | 10 (0.0%) |
unstable/i386 | 24693 | 21182 (85.7%) | 2349 (9.5%) | 972 (3.9%) | 76 (0.3%) | 103 (0.4%) | 10 (0.0%) |
unstable/armhf | 24693 | 20889 (84.6%) | 2050 (8.3%) | 1126 (4.5%) | 199 (0.8%) | 296 (1.1%) | 129 (0.5%) |
SOURCE_DATE_EPOCH
, set LC_ALL
to C
, and ensure deterministic build order when running parallel builds.md5sums
.dash
as system shell..o
file.C
locale when listing files to be put in README.Patches
.UTC
is used as the timezone when generating the documentation.C
locale in the script for iterating over the files.makecode.pl
.Provides
field.
Lunar rebased the pu/reproducible_builds
branch for dpkg on top of the released 1.18.2. This made visible an issue with udeb
s and automatically generated debug packages.
The summary from the meeting at DebConf15 between ftpmasters, dpkg mainatainers and reproducible builds folks has been posted to the revelant mailing lists.
Packages fixed
The following 70 packages became reproducible due to changes in their
build dependencies:
activemq-activeio,
async-http-client,
classworlds,
clirr,
compress-lzf,
dbus-c++,
felix-bundlerepository,
felix-framework,
felix-gogo-command,
felix-gogo-runtime,
felix-gogo-shell,
felix-main,
felix-shell-tui,
felix-shell,
findbugs-bcel,
gco,
gdebi,
gecode,
geronimo-ejb-3.2-spec,
git-repair,
gmetric4j,
gs-collections,
hawtbuf,
hawtdispatch,
jack-tools,
jackson-dataformat-cbor,
jackson-dataformat-yaml,
jackson-module-jaxb-annotations,
jmxetric,
json-simple,
kryo-serializers,
lhapdf,
libccrtp,
libclaw,
libcommoncpp2,
libftdi1,
libjboss-marshalling-java,
libmimic,
libphysfs,
libxstream-java,
limereg,
maven-debian-helper,
maven-filtering,
maven-invoker,
mochiweb,
mongo-java-driver,
mqtt-client,
netty-3.9,
openhft-chronicle-queue,
openhft-compiler,
openhft-lang,
pavucontrol,
plexus-ant-factory,
plexus-archiver,
plexus-bsh-factory,
plexus-cdc,
plexus-classworlds2,
plexus-component-metadata,
plexus-container-default,
plexus-io,
pytone,
scolasync,
sisu-ioc,
snappy-java,
spatial4j-0.4,
tika,
treeline,
wss4j,
xtalk,
zshdb.
The following packages became reproducible after getting fixed:
pybuild
to get rid of .pyc
files.SOURCE_DATE_EPOCH
.dpkg-parsechangelog
in debian/rules
.SOURCE_DATE_EPOCH
for version string.SOURCE_DATE_EPOCH
to set manpage date.scm-safe
which tells ResourceGen
that no timestamps should be included.SOURCE_DATE_EPOCH
have been improved to support systems without GNU date
.
reproducible.debian.net
armhf
is finally being tested, which also means the remote building of Debian packages finally works! This paves the way to perform the tests on even more architectures and doing variations on CPU and date. Some packages even produce the same binary Arch:all
packages on different architectures (1, 2). (h01ger)
Tests for FreeBSD are finally running. (h01ger)
As it seems the gcc5 transition has cooled off, we schedule sid more often than testing again on amd64
. (h01ger)
disorderfs has been built and installed on all build nodes (amd64
and armhf
). One issue related to permissions for root and unpriviliged users needs to be solved before disorderfs
can be used on reproducible.debian.net. (h01ger)
strip-nondeterminism
Version 0.011-1 has been released on August 29th. The new version updates dh_strip_nondeterminism
to match recent changes in debhelper
. (Andrew Ayer)
disorderfs
disorderfs, the new FUSE filesystem to ease testing of filesystem-related variations, is now almost ready to be used. Version 0.2.0 adds support for extended attributes. Since then Andrew Ayer also added support to reverse directory entries instead of shuffling them, and arbitrary padding to the number of blocks used by files.
Package reviews
142 reviews have
been removed, 48 added and 259 updated this week.
Santiago Vila renamed the not_using_dh_builddeb
issue into varying_mtimes_in_data_tar_gz_or_control_tar_gz to align better with other tag names.
New issue identified this week: random_order_in_python_doit_completion.
37 FTBFS issues have been reported by Chris West (Faux) and Chris Lamb.
Misc.
h01ger gave a talk at FrOSCon on August 23rd. Recordings are already online.
These reports are being reviewed and enhanced every week by many people hanging out on #debian-reproducible
. Huge thanks!
9 comments Liked this article? Click here. My blog is Flattr-enabled.
Next.