Friday 3 May 2024

Re: Make proposed available by default? [was: Setting NotAutomatic for hirsute+1-proposed]

On Thu, May 02, 2024 at 03:46:18PM +0100, Robie Basak wrote:
> Jammy:
> main 253K
> universe 75K
> Bionic (as an example of a mature release with fewer SRUs in flight):
> main 131K
> universe 9.7K

"omg the size" was my first reaction when I read the proposal, but these
sizes are far more reasonable than I expected.

But, I also expect very few of our users would use -proposed. What
percentage do you expect? I'm guessing less than 1%.

Instead of configuring proposed by default, I suggest that we should
make this work:

$ sudo add-apt-repository proposed
Unable to handle repository shortcut 'proposed'

https://bugs.launchpad.net/ubuntu/+source/software-properties/+bug/1829588

The wiki instructions for using proposed is pretty rough. If it were just
one command I think it'd be a lot easier to encourage our users to provide
feedback on pre-production packages.

On Fri, May 03, 2024 at 06:23:05PM +1200, Michael Hudson-Doyle wrote:
> Maybe oracular is a good time to turn off some hashes and see what breaks.

Yes, please. Some people have to justify every use of md5 and sha-1 in
their environment. This is silly but it represents a real cost to some
of our users and no value to us.

I did a bit of quick experimenting with Noble:

$ gzip -cd */binary-amd64/Packages.gz > /tmp/Packages
$ grep -v MD5sum: < /tmp/Packages | grep -v SHA1: > /tmp/Packages-good-hashes
$ gzip -k9 /tmp/Packages-good-hashes
$ xz -k /tmp/Packages-good-hashes
$ gzip -k9 /tmp/Packages
$ xz -k /tmp/Packages
$ ls -l /tmp/Packages*
-rw-rw-r-- 1 sarnold sarnold 82509409 May 3 18:26 /tmp/Packages
-rw-rw-r-- 1 sarnold sarnold 76129409 May 3 18:31 /tmp/Packages-good-hashes
-rw-rw-r-- 1 sarnold sarnold 17909244 May 3 18:27 /tmp/Packages-good-hashes.gz
-rw-rw-r-- 1 sarnold sarnold 13842660 May 3 18:27 /tmp/Packages-good-hashes.xz
-rw-rw-r-- 1 sarnold sarnold 21542896 May 3 18:26 /tmp/Packages.gz
-rw-rw-r-- 1 sarnold sarnold 16844820 May 3 18:26 /tmp/Packages.xz

Maybe it's not fair to include -release since that is unlikely to change,
but this is rough and easy.

And since I can't help myself:

$ zstd -k -9 /tmp/Packages -o /tmp/Packages.zstd-9
$ zstd -k -16 /tmp/Packages -o /tmp/Packages.zstd-16
$ zstd -k -9 /tmp/Packages-good-hashes -o /tmp/Packages-good-hashes.zstd-9
$ zstd -k -16 /tmp/Packages-good-hashes -o /tmp/Packages-good-hashes.zstd-16
$ ls -l /tmp/Packages*zstd*
-rw-rw-r-- 1 sarnold sarnold 14408261 May 3 18:31 /tmp/Packages-good-hashes.zstd-16
-rw-rw-r-- 1 sarnold sarnold 16304863 May 3 18:31 /tmp/Packages-good-hashes.zstd-9
-rw-rw-r-- 1 sarnold sarnold 17456128 May 3 18:26 /tmp/Packages.zstd-16
-rw-rw-r-- 1 sarnold sarnold 19746359 May 3 18:26 /tmp/Packages.zstd-9

On Fri, May 03, 2024 at 08:43:11AM +0200, Heinrich Schuchardt wrote:
> On Debian I have seen apt-update downloading diff files. Why don't we use
> those for Ubuntu especially for the large files like Contents?

My experience with the 'pdiff' files was drastically increased apt update
time -- because the fixed costs of downloading files was a lot higher than
the throughput on larger files. Plus, these diffs also take up additional
space on the mirrors vs only storing the latest version. Maybe modern
http/2 or http/3 means it wouldn't be as bad as it used to be, but I'm
skeptical.

Thanks