Bug#879786: apt-secure man page needs to provide useful pointers for Release file info changes

2019-07-07 Thread Jan Braun
Package: apt
Version: 1.8.2
Followup-For: Bug #879786

Dear Maintainer,

I've had to spend far too much time to figure this out due the release
yesterday. I'm running apt-get, and apt-get tells me nothing except

| E: The repository 'http://security.debian.org testing/updates Release' no 
longer has a Release file.
| N: Updating from such a repository can't be done securely, and is therefore 
disabled by default.
| N: See apt-secure(8) manpage for repository creation and user configuration 
details.
| E: Repository 'http://deb.debian.org/debian testing InRelease' changed its 
'Codename' value from 'buster' to 'bullseye'
| N: This must be accepted explicitly before updates for this repository can be 
applied. See apt-secure(8) manpage for details.
| E: Repository 'http://deb.debian.org/debian-debug testing-debug InRelease' 
changed its 'Codename' value from 'buster-debug' to 'bullseye-debug'
| N: This must be accepted explicitly before updates for this repository can be 
applied. See apt-secure(8) manpage for details.

, and then apt-secure(8) yabbers on about how to create secure
repositiories and whatever, but doesn't give a hint about how I would
explicitly accept the change.

This really sucks.

Searching for the error string then turns up various "solutions" on the
web that recommend deleting files from /var/lib/apt , or marking
repositories as [Trusted=yes] or [Allow-Insecure=yes] in sources.list ,
so this is obviously a real problem that causes users to compromise the
security of their machines.

I think the message displayed should directly mention both
"--allow-releaseinfo-change" and running "apt update" interactively.
(apt-get knows it's not apt!)
At the very least it needs to be prominently explained in apt-secure(8).

Thanks for maintaining apt-get,
Jan


-- Package-specific info:

-- apt-config dump --

APT "";
APT::Architecture "amd64";
APT::Build-Essential "";
APT::Build-Essential:: "build-essential";
APT::Install-Recommends "0";
APT::Install-Suggests "0";
APT::Sandbox "";
APT::Sandbox::User "_apt";
APT::Authentication "";
APT::Authentication::TrustCDROM "true";
APT::NeverAutoRemove "";
APT::NeverAutoRemove:: "^firmware-linux.*";
APT::NeverAutoRemove:: "^linux-firmware$";
APT::NeverAutoRemove:: "^linux-image-[a-z0-9]*$";
APT::NeverAutoRemove:: "^linux-image-[a-z0-9]*-[a-z0-9]*$";
APT::NeverAutoRemove:: "^linux-image-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^linux-image-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^linux-image-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^linux-headers-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^linux-headers-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^linux-headers-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^linux-image-extra-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^linux-image-extra-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^linux-image-extra-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^linux-modules-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^linux-modules-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^linux-modules-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^linux-modules-extra-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^linux-modules-extra-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^linux-modules-extra-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^linux-signed-image-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^linux-signed-image-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^linux-signed-image-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^linux-image-unsigned-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^linux-image-unsigned-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^linux-image-unsigned-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-image-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-image-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-image-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-headers-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-headers-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-headers-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^gnumach-image-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^gnumach-image-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^gnumach-image-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^.*-modules-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^.*-modules-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^.*-modules-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^.*-kernel-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^.*-kernel-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^.*-kernel-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^linux-backports-modules-.*-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^linux-backports-modules-.*-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^linux-backports-modules-.*-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^linux-modules-.*-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: "^linux-modules-.*-4\.19\.0-4-amd64$";
APT::NeverAutoRemove:: "^linux-modules-.*-4\.19\.0-5-amd64$";
APT::NeverAutoRemove:: "^linux-tools-4\.19\.0-1-amd64$";
APT::NeverAutoRemove:: 

Bug#879786: apt-secure man page needs to provide useful pointers for Release file info changes

2018-11-07 Thread Jesse Hathaway
> IMO, the right answer would be to run "apt update" and confirm the
> change when asked.

I find it strange to recommend another tool, when there is a flag to
confirm the change with apt-get. If the intent is to deprecate using
apt-get interactively entirely, then that should be done at a more
holistic level, such as a warning on every invocation, rather than
when a specific error appears.



Bug#879786: apt-secure man page needs to provide useful pointers for Release file info changes

2018-11-07 Thread Julian Andres Klode
On Wed, Nov 07, 2018 at 12:21:01PM -0600, Jesse Hathaway wrote:
> On Wed, Nov 7, 2018 at 12:12 PM Julian Andres Klode  wrote:
> >
> > On Wed, Nov 07, 2018 at 10:50:05AM -0600, Jesse Hathaway wrote:
> > > Just ran into this issue with chrome package from Google:
> > >
> > > E: Repository 'http://dl.google.com/linux/chrome/deb stable
> > > Release' changed its 'Origin' value from 'Google, Inc.' to 'Google
> > > LLC'
> > > N: This must be accepted explicitly before updates for this
> > > repository can be applied. See apt-secure(8) manpage for details.
> > >
> > > Rather than adding information to apt-secure's man page, I think it
> > > would be more helpful to output the command the user needs to accept
> > > the change:
> > >
> > > E: Repository 'http://dl.google.com/linux/chrome/deb stable
> > > Release' changed its 'Origin' value from 'Google, Inc.' to 'Google
> > > LLC'
> > > N: If you would like to accept this change, please rerun apt-get
> > > update with the `--allow-releaseinfo-change` flag
> >
> > If you run it interactive, you get asked directly, and don't need
> > the flag. Just recommending the flag is probably not a good idea,
> > as it makes people add them to update scripts without thinking.
> 
> What do you mean by running interactively? I ran `apt-get update` in
> my terminal and I was not prompted, it just showed those error
> messages. 

Oh, you might have to use apt instead of apt-get.

> I also don't see why showing the flag is not helpful, that
> was the only way I was able to confirm the change?

IMO, the right answer would be to run "apt update" and confirm the
change when asked.

-- 
debian developer - deb.li/jak | jak-linux.org - free software dev
ubuntu core developer  i speak de, en



Bug#879786: apt-secure man page needs to provide useful pointers for Release file info changes

2018-11-07 Thread Jesse Hathaway
On Wed, Nov 7, 2018 at 12:12 PM Julian Andres Klode  wrote:
>
> On Wed, Nov 07, 2018 at 10:50:05AM -0600, Jesse Hathaway wrote:
> > Just ran into this issue with chrome package from Google:
> >
> > E: Repository 'http://dl.google.com/linux/chrome/deb stable
> > Release' changed its 'Origin' value from 'Google, Inc.' to 'Google
> > LLC'
> > N: This must be accepted explicitly before updates for this
> > repository can be applied. See apt-secure(8) manpage for details.
> >
> > Rather than adding information to apt-secure's man page, I think it
> > would be more helpful to output the command the user needs to accept
> > the change:
> >
> > E: Repository 'http://dl.google.com/linux/chrome/deb stable
> > Release' changed its 'Origin' value from 'Google, Inc.' to 'Google
> > LLC'
> > N: If you would like to accept this change, please rerun apt-get
> > update with the `--allow-releaseinfo-change` flag
>
> If you run it interactive, you get asked directly, and don't need
> the flag. Just recommending the flag is probably not a good idea,
> as it makes people add them to update scripts without thinking.

What do you mean by running interactively? I ran `apt-get update` in
my terminal and I was not prompted, it just showed those error
messages. I also don't see why showing the flag is not helpful, that
was the only way I was able to confirm the change?



Bug#879786: apt-secure man page needs to provide useful pointers for Release file info changes

2018-11-07 Thread Julian Andres Klode
On Wed, Nov 07, 2018 at 10:50:05AM -0600, Jesse Hathaway wrote:
> Just ran into this issue with chrome package from Google:
> 
> E: Repository 'http://dl.google.com/linux/chrome/deb stable
> Release' changed its 'Origin' value from 'Google, Inc.' to 'Google
> LLC'
> N: This must be accepted explicitly before updates for this
> repository can be applied. See apt-secure(8) manpage for details.
> 
> Rather than adding information to apt-secure's man page, I think it
> would be more helpful to output the command the user needs to accept
> the change:
> 
> E: Repository 'http://dl.google.com/linux/chrome/deb stable
> Release' changed its 'Origin' value from 'Google, Inc.' to 'Google
> LLC'
> N: If you would like to accept this change, please rerun apt-get
> update with the `--allow-releaseinfo-change` flag

If you run it interactive, you get asked directly, and don't need
the flag. Just recommending the flag is probably not a good idea,
as it makes people add them to update scripts without thinking.

-- 
debian developer - deb.li/jak | jak-linux.org - free software dev
ubuntu core developer  i speak de, en



Bug#879786: apt-secure man page needs to provide useful pointers for Release file info changes

2018-11-07 Thread Jesse Hathaway
Just ran into this issue with chrome package from Google:

E: Repository 'http://dl.google.com/linux/chrome/deb stable
Release' changed its 'Origin' value from 'Google, Inc.' to 'Google
LLC'
N: This must be accepted explicitly before updates for this
repository can be applied. See apt-secure(8) manpage for details.

Rather than adding information to apt-secure's man page, I think it
would be more helpful to output the command the user needs to accept
the change:

E: Repository 'http://dl.google.com/linux/chrome/deb stable
Release' changed its 'Origin' value from 'Google, Inc.' to 'Google
LLC'
N: If you would like to accept this change, please rerun apt-get
update with the `--allow-releaseinfo-change` flag



Bug#879786: apt-secure man page needs to provide useful pointers for Release file info changes

2018-07-24 Thread Yuri D'Elia

Package: apt
Version: 1.6.3
Followup-For: Bug #879786

I second that apt-secure should mention the use of "apt" and, in detail,
"apt-get --allow-releaseinfo-change" as well (pointing to apt-get for
more details on the various finger-graned flags) since the manpage of
apt(1) doesn't include any relevant information on metadata changes.

I don't ever use "apt", I mostly use "aptitude" or directly "apt-get"
when needed. aptitude doesn't have support for prompting for releaseinfo
changes, and apt-get does neither. The error message is somewhat
puzzling, since apt-secure(8) contains mostly redundand information for
those who know already something about the signing infrastructure and
just want to acknowledge the change.

Thanks.



Bug#879786: apt-secure man page needs to provide useful pointers for Release file info changes

2017-10-25 Thread Julian Andres Klode
On Wed, Oct 25, 2017 at 04:05:24PM -0400, js wrote:
> Package: apt
> Version: 1.5
> Severity: minor
> 
> Dear Maintainer,
> 
> ==
> I use only 2 packages from ubuntu (which are not available in debian): 
> chromium-codecs-ffmpeg-extra, oxideqt-codecs-extra.

The first one does not make much sense, Debian's chromium should already 
contain all codecs.


> For this I have the ubuntu repository in sources.list along with an 
> apt_preferences file to allow
> only those 2 packages (with priority 476 < 500 for all debian).
> 
> This recently gave these errors during apt-get update:
>   W: Conflicting distribution: http://archive.ubuntu.com/ubuntu devel 
> InRelease (expected devel but got bionic)
>   N: Repository 'http://archive.ubuntu.com/ubuntu devel InRelease' changed 
> its 'Version' value from '17.10' to '18.04'
>   E: Repository 'http://archive.ubuntu.com/ubuntu devel InRelease' changed 
> its 'Suite' value from 'artful' to 'bionic'
>   E: Repository 'http://archive.ubuntu.com/ubuntu devel InRelease' changed 
> its 'Codename' value from 'artful' to 'bionic'
>   N: This must be accepted explicitly before updates for this repository can 
> be applied. See apt-secure(8) manpage for details.
> 
> The apt-secure man page is of no help in resolving this (see bottom).

That's somewhat true. You likely want to use apt instead of apt-get, that would 
ask
the question interactively. apt-get is mostly for scripting.

BTW, your pinning and sources.list is extreme. That's not really a sensible 
thing to do and can cause a lot
of trouble. Also, well, it took me a minute to clean them out for the reply - 
it can only delete one line
at a time :/

-- 
Debian Developer - deb.li/jak | jak-linux.org - free software dev
Ubuntu Core Developer



Bug#879786: apt-secure man page needs to provide useful pointers for Release file info changes

2017-10-25 Thread js jb
Thanks,
"BTW, your pinning and sources.list is extreme. That's not really a sensible 
thing to do and can cause a lotof trouble. "
If you can be more explicit, I'd very much appreciate the feedback.
As it is, the pinning I use is to prevent unintentional changes to nvidia 
drivers, linux kernel, and to block all ubuntu packages other than the 2 codecs 
not available in debian.Plus block versions of some packages, like vivaldi 
browser, that no longer work well with the latest codecs. 
It there's a better way to achieve these goals, I'd very much like to learn 
about it.
thanks,--jack

  From: Julian Andres Klode <j...@debian.org>
 To: js <em2ja...@yahoo.com>; 879...@bugs.debian.org 
 Sent: Wednesday, October 25, 2017 4:23 PM
 Subject: Re: Bug#879786: apt-secure man page needs to provide useful pointers 
for Release file info changes
   
On Wed, Oct 25, 2017 at 04:05:24PM -0400, js wrote:
> Package: apt
> Version: 1.5
> Severity: minor
> 
> Dear Maintainer,
> 
> ==
> I use only 2 packages from ubuntu (which are not available in debian): 
> chromium-codecs-ffmpeg-extra, oxideqt-codecs-extra.

The first one does not make much sense, Debian's chromium should already 
contain all codecs.


> For this I have the ubuntu repository in sources.list along with an 
> apt_preferences file to allow
> only those 2 packages (with priority 476 < 500 for all debian).
> 
> This recently gave these errors during apt-get update:
>  W: Conflicting distribution: http://archive.ubuntu.com/ubuntu devel 
>InRelease (expected devel but got bionic)
>  N: Repository 'http://archive.ubuntu.com/ubuntu devel InRelease' changed its 
>'Version' value from '17.10' to '18.04'
>  E: Repository 'http://archive.ubuntu.com/ubuntu devel InRelease' changed its 
>'Suite' value from 'artful' to 'bionic'
>  E: Repository 'http://archive.ubuntu.com/ubuntu devel InRelease' changed its 
>'Codename' value from 'artful' to 'bionic'
>  N: This must be accepted explicitly before updates for this repository can 
>be applied. See apt-secure(8) manpage for details.
> 
> The apt-secure man page is of no help in resolving this (see bottom).

That's somewhat true. You likely want to use apt instead of apt-get, that would 
ask
the question interactively. apt-get is mostly for scripting.

BTW, your pinning and sources.list is extreme. That's not really a sensible 
thing to do and can cause a lot
of trouble. Also, well, it took me a minute to clean them out for the reply - 
it can only delete one line
at a time :/

-- 
Debian Developer - deb.li/jak | jak-linux.org - free software dev
Ubuntu Core Developer


   

Bug#879786: apt-secure man page needs to provide useful pointers for Release file info changes

2017-10-25 Thread js
Package: apt
Version: 1.5
Severity: minor

Dear Maintainer,

==
I use only 2 packages from ubuntu (which are not available in debian): 
chromium-codecs-ffmpeg-extra, oxideqt-codecs-extra.
For this I have the ubuntu repository in sources.list along with an 
apt_preferences file to allow
only those 2 packages (with priority 476 < 500 for all debian).

This recently gave these errors during apt-get update:
  W: Conflicting distribution: http://archive.ubuntu.com/ubuntu devel InRelease 
(expected devel but got bionic)
  N: Repository 'http://archive.ubuntu.com/ubuntu devel InRelease' changed its 
'Version' value from '17.10' to '18.04'
  E: Repository 'http://archive.ubuntu.com/ubuntu devel InRelease' changed its 
'Suite' value from 'artful' to 'bionic'
  E: Repository 'http://archive.ubuntu.com/ubuntu devel InRelease' changed its 
'Codename' value from 'artful' to 'bionic'
  N: This must be accepted explicitly before updates for this repository can be 
applied. See apt-secure(8) manpage for details.

The apt-secure man page is of no help in resolving this (see bottom).

The apt-secure man page should be expanded to mention the apt options needed 
for what it alludes to: "the user must
therefore explicitly confirm changes to signal...": apt-get update 
--allow-releaseinfo-change  (and related apt.conf)


I was able to get around the lack of detail in the man page through a
search that yielded only one page with the needed info:
https://fossies.org/linux/misc/apt-1.5.tar.gz/apt-1.5/test/integration/test-apt-update-releaseinfo-changes
 


INFORMATION CHANGES
   A Release file contains beside the checksums for the files in the 
repository also general information about the repository like the origin, 
codename
   or version number of the release.

   This information is shown in various places so a repository owner should 
always ensure correctness. Further more user configuration like
   apt_preferences(5) can depend and make use of this information. Since 
version 1.5 the user must therefore explicitly confirm changes to signal that
   the user is sufficiently prepared e.g. for the new major release of the 
distribution shipped in the repository (as e.g. indicated by the codename).

USER ...

==


-- Package-specific info:

-- apt-config dump --

APT "";
APT::Architecture "i386";
APT::Build-Essential "";
APT::Build-Essential:: "build-essential";
APT::Install-Recommends "false";
APT::Install-Suggests "0";
APT::Sandbox "";
APT::Sandbox::User "_apt";
APT::Cache "";
APT::Cache::AllVersions "false";
APT::Cache-Limit "0";
APT::Clean-Installed "false";
APT::Get "";
APT::Get::AutomaticRemove "false";
APT::Get::Show-Upgraded "true";
APT::Get::Upgrade-Allow-New "true";
APT::Archives "";
APT::Archives::MaxAge "0";
APT::Archives::MaxSize "0";
APT::Archives::MinAge "2";
APT::Authentication "";
APT::Authentication::TrustCDROM "true";
APT::Keep-Downloaded-Packages "true";
APT::NeverAutoRemove "";
APT::NeverAutoRemove:: "^firmware-linux.*";
APT::NeverAutoRemove:: "^linux-firmware$";
APT::NeverAutoRemove:: "^linux-image.*";
APT::NeverAutoRemove:: "^linux-headers.*";
APT::NeverAutoRemove:: "^kfreebsd-image.*";
APT::NeverAutoRemove:: "^linux-restricted-modules.*";
APT::NeverAutoRemove:: "^linux-ubuntu-modules-.*";
APT::NeverAutoRemove:: "^gnumach$";
APT::NeverAutoRemove:: "^gnumach-image.*";
APT::Never-MarkAuto-Sections "";
APT::Never-MarkAuto-Sections:: "metapackages";
APT::Never-MarkAuto-Sections:: "restricted/metapackages";
APT::Never-MarkAuto-Sections:: "universe/metapackages";
APT::Never-MarkAuto-Sections:: "multiverse/metapackages";
APT::Never-MarkAuto-Sections:: "oldlibs";
APT::Never-MarkAuto-Sections:: "restricted/oldlibs";
APT::Never-MarkAuto-Sections:: "universe/oldlibs";
APT::Never-MarkAuto-Sections:: "multiverse/oldlibs";
APT::Periodic "";
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";
APT::Periodic::BackupArchiveInterval "1";
APT::Update "";
APT::Update::Post-Invoke "";
APT::Update::Post-Invoke:: "touch /var/lib/apt/periodic/update-success-stamp 
2>/dev/null || true";
APT::Update::Post-Invoke-Success "";
APT::Update::Post-Invoke-Success:: "/usr/bin/test -e 
/usr/share/dbus-1/system-services/org.freedesktop.PackageKit.service && 
/usr/bin/test -S /var/run/dbus/system_bus_socket && /usr/bin/gdbus call 
--system --dest org.freedesktop.PackageKit --object-path 
/org/freedesktop/PackageKit --timeout 4 --method 
org.freedesktop.PackageKit.StateHasChanged cache-update > /dev/null; /bin/echo 
> /dev/null";
APT::Architectures "";
APT::Architectures:: "i386";
APT::Compressor "";
APT::Compressor::. "";
APT::Compressor::.::Name ".";
APT::Compressor::.::Extension "";
APT::Compressor::.::Binary "";