Hi! tl;rd: looks like now apt behaves as expected by the author of the ticket.
A. Reproduction with apt 0.9.15.4 on Debian Stretch. I don't have access to Jessie or Squeeze releases that are more suitable for testing of 0.9.15.4, but I managed to reproduce the problem anyway. I've compiled apt 0.9.15.4 from sources (with minor difficulties) and installed it from local .deb files. acerion@debian:~/space$ apt-get --version apt 0.9.15.4 for amd64 compiled on Feb 22 2014 23:27:12 1. Configure /tmp with limited space. Stretch isn't mounting /tmp through systemd's mount units/services. On Stretch the following line needs to be added to /etc/fstab: tmpfs /tmp tmpfs nosuid,nodev,noatime,size=10M 0 0 2. Fill /tmp with some files until you get ~50kB of free space left acerion@debian:~$ df -h /tmp/ Filesystem Size Used Avail Use% Mounted on tmpfs 10M 10M 48K 100% /tmp 3. Run apt-get update acerion@debian:~$ sudo apt-get update Ign http://archive.debian.org stretch InRelease Get:1 http://archive.debian.org stretch-proposed-updates InRelease [96.2 kB] Ign http://archive.debian.org stretch-proposed-updates InRelease E: GPG error: http://archive.debian.org stretch-proposed-updates InRelease: The following signatures were invalid: NODATA 2 As you can see, the problem has been reproduced in the version from the ticket. B. Reproduction attempt with apt 1.4.11 on Stretch 1. Temporarily set a larger size of /tmp through entry in /etc/fstab to allow proper installation of packages. 2. Install apt 1.4.11 with following commands: apt-get update apt-get -f install apt-get install apt 3. Decrease the size of /tmp through entry in /etc/fstab back to 10M. 4. Fill /tmp with some files until only ~50kB of free space left 5. Run apt-get update acerion@debian:~$ sudo apt-get update Ign:1 http://archive.debian.org/debian stretch InRelease Hit:2 http://archive.debian.org/debian stretch-proposed-updates InRelease Err:2 http://archive.debian.org/debian stretch-proposed-updates InRelease Splitting up /var/lib/apt/lists/archive.debian.org_debian_dists_stretch-proposed-updates_InRelease into data and signature failed Hit:3 http://archive.debian.org/debian-security stretch/updates InRelease Err:3 http://archive.debian.org/debian-security stretch/updates InRelease Splitting up /var/lib/apt/lists/archive.debian.org_debian-security_dists_stretch_updates_InRelease into data and signature failed Hit:4 http://archive.debian.org/debian stretch Release Err:5 http://archive.debian.org/debian stretch Release.gpg At least one invalid signature was encountered. Reading package lists... Error! W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://archive.debian.org/debian stretch-proposed-updates InRelease: Splitting up /var/lib/apt/lists/archive.debian.org_debian_dists_stretch-proposed-updates_InRelease into data and signature failed W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://archive.debian.org/debian-security stretch/updates InRelease: Splitting up /var/lib/apt/lists/archive.debian.org_debian-security_dists_stretch_updates_InRelease into data and signature failed W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://archive.debian.org/debian stretch Release: At least one invalid signature was encountered. W: Failed to fetch http://archive.debian.org/debian/dists/stretch-proposed-updates/InRelease Splitting up /var/lib/apt/lists/archive.debian.org_debian_dists_stretch-proposed-updates_InRelease into data and signature failed W: Failed to fetch http://archive.debian.org/debian-security/dists/stretch/updates/InRelease Splitting up /var/lib/apt/lists/archive.debian.org_debian-security_dists_stretch_updates_InRelease into data and signature failed W: Failed to fetch http://archive.debian.org/debian/dists/stretch/Release.gpg At least one invalid signature was encountered. W: Some index files failed to download. They have been ignored, or old ones used instead. E: Write error - write (28: No space left on device) E: Write error - write (28: No space left on device) E: The package lists or status file could not be parsed or opened. As you can see, now the error messages are more informative, and instead of just informing about problems with signatures, they also inform about missing space (on an unspecified device, but that's relatively easy to check). C. Reproduction attempt with apt 2.9.35 in sid/Trixie 1. Decrease amount of memory allocated to /tmp a. Open /usr/lib/systemd/system/tmp.mount b. Find 'Options' parameter c. Edit value of 'size' field (you can set the size using explicit value, e.g. 1M) d. Remount /tmp with "systemctl daemon-reload", "systemctl restart tmp.mount" 2. Fill /tmp with some files, leaving only ~50kB of free space 3. Run "apt update" acerion@debian:~$ sudo apt update Hit:1 http://deb.debian.org/debian sid InRelease Err:1 http://deb.debian.org/debian sid InRelease Splitting up /var/lib/apt/lists/deb.debian.org_debian_dists_sid_InRelease into data and signature failed Reading package lists... Error! Warning: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. OpenPGP signature verification failed: http://deb.debian.org/debian sid InRelease: Splitting up /var/lib/apt/lists/deb.debian.org_debian_dists_sid_InRelease into data and signature failed Warning: Failed to fetch http://deb.debian.org/debian/dists/sid/InRelease Splitting up /var/lib/apt/lists/deb.debian.org_debian_dists_sid_InRelease into data and signature failed Warning: Some index files failed to download. They have been ignored, or old ones used instead. Error: Write error - write (28: No space left on device) Error: Write error - write (28: No space left on device) Error: The package lists or status file could not be parsed or opened. As you can see, the behaviour found in 1.4.11 is still found in 2.9.35. The behaviour of current versions of apt is as expected by reporter. It looks like the behaviour was changed somewhere between 0.9.15.4 and 1.4.11, but I'm not able to quickly pinpoint the exact commit. To summarize: it looks like the behaviour is now as expected. Kamil