Bug 51488 - grub2: merge patches to UCS 5
grub2: merge patches to UCS 5
Status: CLOSED INVALID
Product: UCS
Classification: Unclassified
Component: General
UCS 5.0
Other Linux
: P5 normal (vote)
: UCS 5.0
Assigned To: Philipp Hahn
Sönke Schwardt-Krummrich
:
Depends on:
Blocks: 51984 53178
  Show dependency treegraph
 
Reported: 2020-06-13 09:33 CEST by Philipp Hahn
Modified: 2021-05-25 16:01 CEST (History)
2 users (show)

See Also:
What kind of report is it?: Development Internal
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Comment 1 Philipp Hahn univentionstaff 2020-06-13 10:18:38 CEST
Constraint: We must not modify any compiled code of GRUB as that would require re-signing the binary for Secure-Boot, which only Debian can do.

KEEP: 25_replace_gnu_linux_with_corporate_server.quilt
OBSOLETE: 50-install_linuxefi_initrdefi.quilt
KEEP: 51-menu-color.patch
KEEP: 51-menu-color.quilt
OBSOLETE: 53-install_create_grub.efi_too.quilt
DROP: 58-install_show_loading_message.quilt
KEEP: 60-Sort-old-UCS-kernel-after-Debian-kernel.patch

r19061 | Bug #51488 grub2: merge patches for UCS-5

Package: grub2
Version: 2.02+dfsg1-20A~5.0.0.202006130942
Branch: ucs_5.0-0

OK: # SELECT * FROM binpkg WHERE major=5 AND site='apt' AND srcpkg='grub2';
             binpkg             |              binver               | arch  | srcpkg |              srcver               | major | minor | patch | scope | site | maintained |    id    
--------------------------------+-----------------------------------+-------+--------+-----------------------------------+-------+-------+-------+-------+------+------------+----------
 grub-common-dbgsym             | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931269
 grub-common                    | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931270
 grub-coreboot-bin              | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931271
 grub-coreboot-dbg              | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931272
 grub-coreboot                  | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931273
 grub-efi-amd64-bin             | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931274
 grub-efi-amd64-dbg             | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931275
 grub-efi-amd64-signed-template | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931276
 grub-efi-amd64                 | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931277
 grub-efi-ia32-bin              | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931278
 grub-efi-ia32-dbg              | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931279
 grub-efi-ia32                  | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931280
 grub-efi                       | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931281
 grub-emu-dbg                   | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931282
 grub-emu                       | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931283
 grub-firmware-qemu             | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931284
 grub-ieee1275-bin              | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931285
 grub-ieee1275-dbg              | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931286
 grub-ieee1275                  | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931287
 grub-linuxbios                 | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931288
 grub-mount-udeb                | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931289
 grub-pc-bin-dbgsym             | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931290
 grub-pc-bin                    | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931291
 grub-pc-dbg                    | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931292
 grub-pc                        | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931293
 grub-rescue-pc                 | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931294
 grub-theme-starfield           | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931295
 grub-xen-bin                   | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931296
 grub-xen-dbg                   | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931297
 grub-xen-host                  | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931298
 grub-xen                       | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931299
 grub2-common-dbgsym            | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931300
 grub2-common                   | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931301
 grub2                          | 2.02+dfsg1-20A~5.0.0.202006130942 | amd64 | grub2  | 2.02+dfsg1-20A~5.0.0.202006130942 |     5 |     0 |     0 |       | apt  |            | 17931302
(34 Zeilen)
OK: python -m univention.repong.dchdiff -l 1 amd64/grub-common_2.02+dfsg1-20A~5.0.0.202006130942_amd64.deb
OK: docker run --rm -v /var/univention/buildsystem2/apt:/apt:ro -w /apt diffoscope --text-color always grub-efi-amd64_2.02+dfsg1-20_amd64.deb ucs_5.0-0/amd64/grub-efi-amd64_2.02+dfsg1-20A~5.0.0.202006130942_amd64.deb
Comment 2 Sönke Schwardt-Krummrich univentionstaff 2020-06-15 12:13:27 CEST
OK: update → system is bootable and grub menu is correctly branded
OK: installation → system is bootable and grub menu is correctly branded
OK: patches (dropped + cherry-picked)
OK: diff -ur grub2/4.4-0-0-ucs/2.02~beta3-5+deb9u2-ucs4.4-2/ grub2/5.0-0-0-ucs/2.02+dfsg1-20/
Comment 3 Philipp Hahn univentionstaff 2020-08-03 14:56:37 CEST
We have a problem I just noticed because of Bug #51748: "BootHole": If we modify the source package - even only in the non-core code surrounding GRUB2 - we have to rebuild the whole package which will then also contain a changed "grub-efi-amd64-bin", which is incompatible with "grub-efi-amd64-signed":

> The following packages have unmet dependencies:
>  grub-efi-amd64-signed : Depends: grub-common (= 2.02+dfsg1-20+deb10u2) but 2.02+dfsg1-20+deb10u2A~5.0.0.202008030952 is to be installed

The easiest thing would be to have the code-changes for UCS outside GRUB2 itself, e.g. by diverting the set of files.
Otherwise we have to do all the signing again ourselves.

An alternative would be to have some binary packages from Debian-unmodified and some binary packages from our patched and re-compiled version, but this would breaks may script for repository management.

For now I have imported the unpatched version of GRUB directly from Debian:

$ repo-copy-dsc -vcpa amd64 /mnt/build-storage/upstream/debian/pool/main/g/grub2/grub2_2.02+dfsg1-20+deb10u2.dsc
Comment 4 Philipp Hahn univentionstaff 2021-02-08 16:21:37 CET
Again after Debian 10.8 from last weekend I had to re-import the unmodified version from Debian:

repo-copy-dsc -vcpa amd64 /mnt/build-storage/upstream/debian/pool/main/g/grub2/grub2_2.02+dfsg1-20+deb10u3.dsc
Comment 5 Jürn Brodersen univentionstaff 2021-02-24 10:27:58 CET
With bug 52798 resolved, the following patches can be dropped:
25_replace_gnu_linux_with_corporate_server.quilt
51-menu-color.patch
51-menu-color.quilt

That only leaves:
60-Sort-old-UCS-kernel-after-Debian-kernel.patch imho we can remove these old kernels during the update, if this doesn't already happen.
Comment 6 Philipp Hahn univentionstaff 2021-02-24 12:23:26 CET
(In reply to Jürn Brodersen from comment #5)
> With bug 52798 resolved, the following patches can be dropped:
> 25_replace_gnu_linux_with_corporate_server.quilt
> 51-menu-color.patch
> 51-menu-color.quilt

OKAY

> That only leaves:
> 60-Sort-old-UCS-kernel-after-Debian-kernel.patch imho we can remove these
> old kernels during the update, if this doesn't already happen.

This is no longer needed as UCS 5 ships with a newer Linux kernel with a higher major.minor than any previous UCS kernel: see Bug #46342 and Bug #45961 comment 4

All patches have been removed:
r19294 | Bug #51488: Remove obsolete GRUB2 patches

OK: <http://xen1.knut.univention.de:8000/packages/source/grub2/?since=4.4-0>
Comment 7 Sönke Schwardt-Krummrich univentionstaff 2021-03-10 14:45:15 CET
(In reply to Philipp Hahn from comment #6)
> (In reply to Jürn Brodersen from comment #5)
> > With bug 52798 resolved, the following patches can be dropped:
> > 25_replace_gnu_linux_with_corporate_server.quilt
> > 51-menu-color.patch
> > 51-menu-color.quilt
> 
> OKAY
→ OK

> > That only leaves:
> > 60-Sort-old-UCS-kernel-after-Debian-kernel.patch imho we can remove these
> > old kernels during the update, if this doesn't already happen.
> 
> This is no longer needed as UCS 5 ships with a newer Linux kernel with a
> higher major.minor than any previous UCS kernel: see Bug #46342 and Bug
> #45961 comment 4
→ OK
 
> All patches have been removed:
> r19294 | Bug #51488: Remove obsolete GRUB2 patches
→ OK
 
> OK: <http://xen1.knut.univention.de:8000/packages/source/grub2/?since=4.4-0>
→ OK
Comment 8 Florian Best univentionstaff 2021-05-25 16:01:08 CEST
UCS 5.0 has been released:
 https://docs.software-univention.de/release-notes-5.0-0-en.html
 https://docs.software-univention.de/release-notes-5.0-0-de.html

If this error occurs again, please use "Clone This Bug".