Bug#534408: debian-policy: Installed-Size is defined as "kilobytes" but dpkg-gencontrol fills it in with kibibytes
On Tue, Jun 23, 2009 at 19:13:23 -0700, Martin Dorey wrote:
> debian-policy appears to define Installed-Size's units as thousands of bytes:
>
> > 5.6.20 Installed-Size
> > This field appears in the control files of binary packages, and in the Packages files. It gives the total amount of disk space required to install the named package.
> > The disk space is represented in kilobytes as a simple decimal number.
>
> I suspect this is informal language describing an intention to use kibibytes - units of 1024 bytes - as implemented by dpkg-gencontrol's use of du -k:
>
> if (!defined($substvars->get('Installed-Size'))) {
> defined(my $c = open(DU, "-|")) || syserr(_g("fork for du"));
> if (!$c) {
> chdir("$packagebuilddir") ||
> syserr(_g("chdir for du to \`%s'"), $packagebuilddir);
> exec("du","-k","-s",".") or &syserr(_g("exec du"));
>
> The ambiguity, while not particularly serious at the scale of typical package sizes, has led to dispute, eg https://bugs.launchpad.net/gdebi/+bug/44286.
>
Given that Installed-Size largely depends on the filesystem where the
package was built anyway, the difference between 1000 and 1024 doesn't
really matter here IMO.
Cheers,
Julien
Reply to: