Repository kernel:stable (standard) - bye bye "Kernel-desktop"

Rain_Maker

Administrator
Teammitglied
Hoi,

Wer eine openSUSE mit einem Kernel aus dem Repository "Kernel:stable/standard"

http://download.opensuse.org/repositories/Kernel:/stable/standard/

betreibt, dem wird vielleicht aufgefallen sein, dass seit kurzem für das "Flavor" kernel-desktop keine Pakete mehr vorhanden sind.

Im Changelog der Pakete aus diesem Repository findet man folgende Begründung:

* Fr Sep 25 2015 mmarek <<<at>>> suse.cz
- Merge kernel-desktop back into kernel-default/kernel-pae (fate#319416)
Mit anderen Worten, wer zuvor kernel-desktop nutzte, sollte nun auf kernel-pae (bei 32Bit System) bzw. kernel-default (bei 64Bit Systemen) umsteigen, da diese nun dem entsprechen, was zuvor "kernel-desktop" war.

Vermutlich wird sich diese Änderung dann auch auf kommende Versionen von openSUSE auswirken, es sieht zumindest aber nicht so aus, als würde diese Änderung rückwirkend durchgeführt (please correct me, if I'm wrong).

Für User mit älterer Hardware (CPU >= i586 aber ohne PAE) ändert sich eh nichts, da diese schon zuvor nur den "kernel-default" in 32Bit verwenden konnten.

Greetz,

RM
 

Rain_Maker

Administrator
Teammitglied
Au Weia - oder "die Sache hat nen grossen Haken"

tomfa schrieb:
Da es mir noch nicht aufgefallen ist, danke für den Hinweis.
Nun denn, aber mir ist da gerade noch etwas Anderes aufgefallen, vielleicht sollte man noch kurz die Füsse still halten.

Code:
rpm -ihv kernel-pae-4.2.3-1.1.gef1562d.i686.rpm 
error: Failed dependencies:
        kernel-desktop <= 4.3 is obsoleted by kernel-pae-4.2.3-1.1.gef1562d.i686
Ähm, wie bitte?

Ach ja, ich habe ja den mitgelieferten Distrokernel als "Netz und doppelten Boden" installiert und der ist logischerweise ein "kernel-desktop".

Nee, liebe Freunde von openSUSE, das war nix, das ist ne ganz dumme Idee.

Code:
rpm -qp --obsoletes kernel-pae-4.2.3-1.1.gef1562d.i686.rpm | grep desktop
kernel-desktop <= 4.3
kernel-desktop-base <= 4.3
Das würde bedeuten, der bereits installierte Kernel einer release-Version (und das ist nun mal i.d.R. ein "kernel-desktop") wird runtergeschmissen, das sollten sich die Maintainer noch mal überlegen.

Greetz,

RM
 

Rain_Maker

Administrator
Teammitglied
Würgaround

Natürlich wollte ich mich von diesem Problem nicht aufhalten lassen, hier ein Workaround, wie man das Problem umgehen kann, auch wenn es ein ziemlich dreckiger Hack ist.

Warnung:

Wer sich nicht 100%ig sicher ist, dass sie/er weiss, was man da tut, sollte die Finger weg lassen.

1. Man lädt das rpm des Kernels manuell herunter

2. Man legt sich ein lokales Repository (plain-dir) in einem extra Verzeichnis an, in welchem sich nachher dieses rpm befinden wird

3. Man gibt diesem lokalen Repo Vorzug über das eingebundene kernel:stable/standard Repo (sofern vorhanden) (Stichwort Priority)

Wie das genau geht, schreibe ich hier nicht, denn wer das nicht weiss, fällt unter die Kategorie "lieber die Finger davon lassen"

4. Man installiert (falls nicht schon vorhanden) das Paket "rpmrebuild"

5.
Code:
rpmrebuild -ep /PFAD/ZUM/RPM/kernel-$flavor-$version-$arch.rpm
Nun ist man in einem Editorfenster (bei mir ist das vim) und kann dort die beiden "Obsoletes:"-Zeile kommentieren oder löschen, nach Abspeichern und Bestätigung (Wollen Sie wirklich ....? y/N) wird das RPM neu verpackt und landet an einem Ort, der einem zum Schluss auch angezeigt wird.

6. Dieses neue RPM kann nun in das zuvor angelegte Repo kopiert und installiert werden.

7. Ich würde das RPM trotz allem _händisch_ mit "rpm -i" (UND _NICHT_ MIT rpm -U, NO, NOT, DON'T DO IT!) installieren und ein ggf. noch vorhandenes "kernel-desktop"-RPM aus dem kernel:stable/standard Repo händisch mit "rpm -e kernel-desktop-$VERSION" entfernen, das erspart einem eventuelle Überraschungen.
Das Paket im lokalen Repo ist eigentlich dann nur noch dazu da, damit zypper nicht meint, er müsse das originale Paket aus kernel:stable/standard drüberbügeln (und damit noch gewollte "kernel-desktop"-Pakete schlimmstenfalls entfernen)

Use at your own risk!

Greetz,

RM
 

Rain_Maker

Administrator
Teammitglied
Mittlerweile ist wohl übrigens auch "kernel-xen" ad acta gelegt worden, was den Durchschnittsnutzer eher selten betrifft.

Siehe Changelog:

Code:
* Mo Nov 30 2015 XXXXXXXXXXX.com
- Enable Xen in x86 vanilla configs
  Align the vanilla configs with i386/pae and x86_64/default,
  respectively.
- commit defd50c
und dann ab 4.4

Code:
* Mi Jan 20 2016 XXXXXXXX.com
- rpm/old-flavors: Obsolete kernel-xen <= 4.4, to match 4.3.anything
- commit cd04346
Bleiben also noch kernel-default, kernel-debug, kernel-vanilla und kernel-pae, letzterer natürlich nur auf 32Bit.

Greetz,

RM
 
Oben