Author |
Message |
rotohr
|
|
Post subject: (solved) broken grub-pc dependency
Posted: 23.05.2011, 13:37
|
|
Joined: 2011-05-23
Posts: 9
Status: Offline
|
|
Prolog: I'm new to this - should the described issue be already known or belong somewhere else, feel free to slap and/or redirect me.
Code:
Package: grub-pc
Versions:
1.99-4 /var/lib/apt/lists/cdn.debian.net_debian_dists_sid_main_binary-amd64_Packages
------------------------>8---------------------------
Dependencies:
1.99-4 - debconf (18 0.5) debconf-2.0 (0 (null)) grub-common (0 (null)) grub2-common (5 1.99-4) grub-pc-bin (5 1.99-4) ucf (0 (null)) grub (3 0.97-54) grub-coreboot (0 (null)) grub-efi-amd64 (0 (null)) grub-efi-ia32 (0 (null)) grub-ieee1275 (0 (null)) grub-legacy (0 (null)) grub (0 (null)) grub-common (1 1.97~beta2-1)
As you can see, the latest version of grub-pc is 1.99-4 and requires grub-common 1.97~beta2-1. Alas, the later is provided neither by the debian nor the aptosid repos.
If one - as me - hits enter too fast during a dist-upgrade, one gets grub-common upgraded and grub-pc removed. Leaving one unable to do i.e. "update-grub", which is inconvenient. To get grub back, I had to search back as far as Squeeze and downgrade grub-common manually.
IMO, if this cannot or will not be fixed within aptosid, at least there should be mark in prominent place (upgrade warning?). |
Last edited by rotohr on 26.05.2011, 12:37; edited 1 time in total
|
|
|
|
|
towo
|
|
Post subject: RE: broken grub-pc dependency
Posted: 23.05.2011, 13:48
|
|
Joined: 2010-09-13
Posts: 522
Location: Pößneck / Thüringen
Status: Offline
|
|
What are you talking about?
All dependencys for grub-pc are in debian.
There is nothing wrong at the moment in sid.
So it's neither a bug-report for the release, nor a upgrade-warning. |
_________________
Code:
System: Host: Defiant Kernel: 4.15.0-towo.1-siduction-amd64 x86_64 bits: 64 Desktop: Cinnamon 3.4.6
Distro: siduction 13.2.0 December - xfce - (201312310323)
|
|
|
|
|
slh
|
|
Post subject: RE: broken grub-pc dependency
Posted: 23.05.2011, 13:53
|
|
Joined: 2010-08-25
Posts: 962
Status: Offline
|
|
I'm not sure which broken tool you're using for querying that info, but the package states this:
amd64:
Code:
Package: grub-pc
Source: grub2
Version: 1.99-4
Architecture: amd64
Maintainer: GRUB Maintainers <pkg>
Installed-Size: 408
Depends: debconf (>= 0.5) | debconf-2.0, grub-common, grub2-common (= 1.99-4), grub-pc-bin (= 1.99-4), ucf
Conflicts: grub (<< 0.97-54), grub-coreboot, grub-efi-amd64, grub-efi-ia32, grub-ieee1275, grub-legacy
Replaces: grub, grub-common (<= 1.97~beta2-1), grub-coreboot, grub-efi-amd64, grub-efi-ia32, grub-ieee1275, grub-legacy, grub2 (<< 1.99-4)
Section: admin
Priority: optional
Multi-Arch: foreign
Homepage: http://www.gnu.org/software/grub/
Description: GRand Unified Bootloader, version 2 (PC/BIOS version)
GRUB is a portable, powerful bootloader. This version of GRUB is based on a
cleaner design than its predecessors, and provides the following new features:
.
- Scripting in grub.cfg using BASH-like syntax.
- Support for modern partition maps such as GPT.
- Modular generation of grub.cfg via update-grub. Packages providing GRUB
add-ons can plug in their own script rules and trigger updates by invoking
update-grub2.
- VESA-based graphical mode with background image support and complete 24-bit
color set.
- Support for extended charsets. Users can write UTF-8 text to their menu
entries.
i386:
Code:
Package: grub-pc
Source: grub2
Version: 1.99-4
Architecture: i386
Maintainer: GRUB Maintainers <pkg>
Installed-Size: 408
Depends: debconf (>= 0.5) | debconf-2.0, grub-common, grub2-common (= 1.99-4), grub-pc-bin (= 1.99-4), ucf
Conflicts: grub (<< 0.97-54), grub-coreboot, grub-efi-amd64, grub-efi-ia32, grub-ieee1275, grub-legacy
Replaces: grub, grub-common (<= 1.97~beta2-1), grub-coreboot, grub-efi-amd64, grub-efi-ia32, grub-ieee1275, grub-legacy, grub2 (<< 1.99-4)
Section: admin
Priority: optional
Multi-Arch: foreign
Homepage: http://www.gnu.org/software/grub/
Description: GRand Unified Bootloader, version 2 (PC/BIOS version)
GRUB is a portable, powerful bootloader. This version of GRUB is based on a
cleaner design than its predecessors, and provides the following new features:
.
- Scripting in grub.cfg using BASH-like syntax.
- Support for modern partition maps such as GPT.
- Modular generation of grub.cfg via update-grub. Packages providing GRUB
add-ons can plug in their own script rules and trigger updates by invoking
update-grub2.
- VESA-based graphical mode with background image support and complete 24-bit
color set.
- Support for extended charsets. Users can write UTF-8 text to their menu
entries.
.
This package contains a version of GRUB that has been built for use with
traditional PC/BIOS architecture.
moving, as this is no bug - even less in the released version of 2011-01. |
|
|
|
|
|
rotohr
|
|
Post subject:
Posted: 23.05.2011, 14:42
|
|
Joined: 2011-05-23
Posts: 9
Status: Offline
|
|
My sources are
Code:
cat /etc/apt/sources.list.d/* | grep -v ^\$
# Free University Berlin/ spline (Student Project LInux NEtwork), Germany
deb http://ftp.spline.de/pub/aptosid/debian/ sid main fix.main
# deb-src http://ftp.spline.de/pub/aptosid/debian/ sid main fix.main
# deb http://cdn.debian.net/debian/ stable main contrib non-free
# deb-src http://cdn.debian.net/debian/ stable main contrib non-free
# deb http://cdn.debian.net/debian/ testing main contrib non-free
# deb-src http://cdn.debian.net/debian/ testing main contrib non-free
deb http://cdn.debian.net/debian/ sid main contrib non-free
# deb-src http://cdn.debian.net/debian/ sid main contrib non-free
# deb http://cdn.debian.net/debian/ experimental main contrib non-free
# deb-src http://cdn.debian.net/debian/ experimental main contrib non-free
The "broken tool", as you call it, is apt-cache:
Code:
apt-cache showpkg grub-pc
Package: grub-pc
Versions:
1.99-4 (/var/lib/apt/lists/cdn.debian.net_debian_dists_sid_main_binary-amd64_Packages)
Description Language:
File: /var/lib/apt/lists/cdn.debian.net_debian_dists_sid_main_binary-amd64_Packages
MD5: 93c713e08b0e7bb2b28e858ded96503b
1.98+20100804-14 (/var/lib/dpkg/status)
Description Language:
File: /var/lib/dpkg/status
MD5: 93c713e08b0e7bb2b28e858ded96503b
Reverse Depends:
linux-image-2.6.38-6.slh.2-aptosid-amd64,grub-pc
linux-image-2.6.37-0.slh.18-aptosid-amd64,grub-pc
grub-common,grub-pc 1.98+20100527-1
startupmanager,grub-pc
memtest86+,grub-pc
linux-image-2.6.39-1-amd64,grub-pc
linux-image-2.6.38-2-amd64,grub-pc
grub2-splashimages,grub-pc
grub2-common,grub-pc 1.99-1
grub2,grub-pc 1.99-4
grub-pc-bin,grub-pc 1.99-1
grub-ieee1275,grub-pc
grub-ieee1275,grub-pc
grub-efi-ia32,grub-pc
grub-efi-ia32,grub-pc
grub-efi-amd64,grub-pc
grub-efi-amd64,grub-pc
grub-coreboot,grub-pc
grub-coreboot,grub-pc
grub-common,grub-pc 1.99-1
grub-imageboot,grub-pc
grub,grub-pc
fll-installer,grub-pc
fll-iso2usb,grub-pc
linux-image-2.6.39-0.slh.2-aptosid-amd64,grub-pc
grub2-fll-fromiso,grub-pc
Dependencies:
1.99-4 - debconf (18 0.5) debconf-2.0 (0 (null)) grub-common (0 (null)) grub2-common (5 1.99-4) grub-pc-bin (5 1.99-4) ucf (0 (null)) grub (3 0.97-54) grub-coreboot (0 (null)) grub-efi-amd64 (0 (null)) grub-efi-ia32 (0 (null)) grub-ieee1275 (0 (null)) grub-legacy (0 (null)) grub (0 (null)) grub-common (1 1.97~beta2-1) grub-coreboot (0 (null)) grub-efi-amd64 (0 (null)) grub-efi-ia32 (0 (null)) grub-ieee1275 (0 (null)) grub-legacy (0 (null)) grub2 (3 1.99-4)
1.98+20100804-14 - libc6 (2 2.3) libdevmapper1.02.1 (2 2:1.02.36) debconf (18 0.5) debconf-2.0 (0 (null)) grub-common (5 1.98+20100804-14) ucf (0 (null)) desktop-base (2 4.0.6) desktop-base (5 4.0.5) grub (3 0.97-54) grub-coreboot (0 (null)) grub-efi-amd64 (0 (null)) grub-efi-ia32 (0 (null)) grub-ieee1275 (0 (null)) grub-legacy (0 (null)) grub (0 (null)) grub-common (1 1.96+20080413-1) grub-coreboot (0 (null)) grub-efi-amd64 (0 (null)) grub-efi-ia32 (0 (null)) grub-ieee1275 (0 (null)) grub-legacy (0 (null)) grub2 (3 1.98+20100804-14)
Provides:
1.99-4 -
1.98+20100804-14 -
Reverse Provides:
Maybe I'm missreading this output, but right now, i get
Code:
apt-get dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be REMOVED:
grub-pc
The following packages will be upgraded:
grub-common
1 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
Need to get 0 B/2,553 kB of archives.
After this operation, 602 kB disk space will be freed.
Do you want to continue [Y/n]?
Which can't be right. I'm fully aware that this problem stems from debian repo. I only had hoped there could be something done about it (that is, other than downgrading). What puzzles me is that I seem to be the only one to experience this... |
|
|
|
|
|
slh
|
|
Post subject:
Posted: 23.05.2011, 15:01
|
|
Joined: 2010-08-25
Posts: 962
Status: Offline
|
|
I assume you have some forgotten holds interfering, "dpkg --get-selections | grep hold" will tell you about it (yes, I'm very strongly opinionated against holds, as these tend to get forgotten - while the alternative is just to have a few days' patience to let sid sort itself). If the problem persists, once you've ruled out any interference from forgotten holds, I'd suggest to help apt's dependency resolver a bit:
Code:
apt-get update
apt-get install grub-common grub-pc grub-pc-bin grub2-common
|
|
|
|
|
|
DonKult
|
|
Post subject: Re: broken grub-pc dependency
Posted: 23.05.2011, 15:18
|
|
Team Member
Joined: 2010-09-02
Posts: 485
Status: Offline
|
|
rotohr wrote:
As you can see, the latest version of grub-pc is 1.99-4 and requires grub-common 1.97~beta2-1. Alas, the later is provided neither by the debian nor the aptosid repos.
showpkg isn't really meant for 'new users' as you call yourself. 'Dependencies' are not only 'Depends', but also all other relations like 'Breaks', 'Suggests', 'Enhances' …
In this case it is a Replaces -- and it's not part o your problem…
My money is on a forgotten hold, too.
//edit: After seeing the relatively old kernel-versions in the reverse dependencies. Do you have done an 'apt-get update' before? You should… |
_________________ MfG. DonKult
"I never make stupid mistakes. Only very, very clever ones." ~ The Doctor
|
|
|
|
|
rotohr
|
|
Post subject:
Posted: 23.05.2011, 21:04
|
|
Joined: 2011-05-23
Posts: 9
Status: Offline
|
|
First: Thank you for your advice.
@DonKult: I've done 'apt-get update' twice and thrice, indeed. I've got a couple of kernels lying around:
Code:
# dpkg --get-selections | grep linux-image
linux-image-2.6-amd64 install
linux-image-2.6-aptosid-amd64 install
linux-image-2.6.37-0.slh.18-aptosid-amd64 install
linux-image-2.6.38-6.slh.2-aptosid-amd64 install
linux-image-2.6.39-0.slh.2-aptosid-amd64 install
linux-image-2.6.39-1-amd64 install
# uname -r
2.6.39-1-amd64
Is that supposed to cause any problems?
Would it explain the reverse dependencies you mentioned?
@slh: I get
Code:
# dpkg --get-selections | grep -v '\sinstall'
install-usb-gui deinstall
libsdl1.2debian-alsa deinstall
# apt-get install grub-common grub-pc grub-pc-bin grub2-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
grub-pc is already the newest version.
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
grub-pc : Depends: grub-common (= 1.98+20100804-14) but 1.99-4 is to be installed
E: Broken packages
while
Code:
# apt-get check
Reading package lists... Done
Building dependency tree
Reading state information... Done
#
yields nothing.
This is beyond me. Is there a way to find out what causes this breakage?
output of 'dpkg-query --list \*' |
|
|
|
|
|
|
Post subject:
Posted: 23.05.2011, 22:41
|
|
Moderator
Joined: 2010-09-11
Posts: 469
|
|
How about changing cdn.debian.net to something more concrete,
(depends on which country you're but) like ftp.hr.debian.org
Well, from your username, I'm just guessing maybe you're from Croatia... 8)
it can be us, de, uk, fr... one from http://www.debian.org/mirror/list
and "apt-get update" of course.
and... the command slh wrote was "dpkg --get-selections | grep hold".
Why you post the output of different commands?
one more edit: in Brazilian forum, after I checked udev problem was solved on
ftp.br.debian.org repo and marked as solved, still an user reported the kernel panic problem after d-u.
He was using cdn.debian.net. Seems this cdn mechanism for searching the near mirror does not work as it should,
and maybe not very good idea using it as default on aptosid install... |
|
|
|
|
|
|
Post subject:
Posted: 23.05.2011, 23:14
|
|
Moderator
Joined: 2010-09-11
Posts: 469
|
|
and...
Depends: line of "apt-cache show <package>" shows required version in (),
where
Dependencies: line of "apt-cache showpkg <package>" shows currently installed version
of required pacakge in (), thus, if the pacakge is not installed, it shows (null).
one more. to see the reason for removal of grub-pc on your system
$ apt-get dist-upgrade -s -o Debug::pkgProblemResolver=1 |
|
|
|
|
|
rotohr
|
|
Post subject: (solved) dependency problem recapitulated
Posted: 26.05.2011, 12:34
|
|
Joined: 2011-05-23
Posts: 9
Status: Offline
|
|
I figured it out finally: i had managed to coerce
Code:
Explanation: Pinned by apt-listbugs at Tue May 17 22:45:32 +0200 2011
Explanation: #624263: grub-pc: stuck in grub-mkdevicemap at configure time
Package: grub-pc
Pin: version 1.98+20100804-14
Pin-Priority: 1000
into /etc/apt/preferences by means of ... well, apt-listbugs.
I discovered that apt-get would let me upgrade to 1.99-4 by requesting grub-pc/sid explicitly, while refusing to do so automatically. When running into bug reports, I saw the option "make pkgs pinned: need to restart apt to enable" and vaguely remebered having chosen it before, in order to avoid the problems with the latest grub versions reported in the forum.
At that point, I only had had a very dim idea of what "pin a package" means. I had hoped to achieve something like "refrain from upgrading the specified package _just_this_once_". My apologies go out to anyone bewildered by my somewhat hasty reports.
Since my proceeding seems a quick and - for a newbie - innocently looking way of conjuring up problems somewhat hard to track, may I suggest to mention to exercise caution with apt-listbugs and/or do not pin packages, somewhere in the Aptosid manual/pkg management section? If so, should I file a request in "Requests & Suggestions"?
As of now, two questions remain yet:
1. Is there a way to "unpin" a package, apart from editing /etc/apt/preferences by hand?
2. Is there a way to achieve this "refrain from upgrading package xyz _just_this_once_"-effect during a dist-upgrade, apart from using pinning or hold?
thx for your effort. |
|
|
|
|
|
DonKult
|
|
Post subject: Re: (solved) dependency problem recapitulated
Posted: 26.05.2011, 13:20
|
|
Team Member
Joined: 2010-09-02
Posts: 485
Status: Offline
|
|
rotohr wrote:
As of now, two questions remain yet:
1. Is there a way to "unpin" a package, apart from editing /etc/apt/preferences by hand?
No. The core APT tools provides no frontend for this beside 'your editor is your frontend' - so you are required to use the same 'frontend' to edit pinning.
apt-list* are NOT core APT tools and as i don't know them i can't give an advice on them, but i guess they provide a way to release pinnings they set…
rotohr wrote:
2. Is there a way to achieve this "refrain from upgrading package xyz _just_this_once_"-effect during a dist-upgrade, apart from using pinning or hold?
No (not yet, but even then…). We do not advice for installing apt-list* as it can be confusing for users AND we advice to just hit 'n' instead of 'y' if the solution APT finds is not to your liking. No need to tweak it, just skip this upgrade and wait for a better time.
Tweaking solutions by hand is in all but very small edgecases not worthed the time you need to work on it. And it causes most of the time even more problems.
(If some important package is uninstallable/broken like udev or kde or whatever most users will not test what happens if you upgrade all the leaf packages which are not blocked by these -- so big breakage most of the time just hides smaller breackage in other packages. So you are avoiding one trap to jump into the next one…) |
_________________ MfG. DonKult
"I never make stupid mistakes. Only very, very clever ones." ~ The Doctor
|
|
|
|
|
|
|