View Issue Details

IDProjectCategoryView StatusLast Update
0005116Rocky-Linux-8gnome-boxespublic2023-12-29 18:13
ReporterSid T Assigned ToLouis Abel  
PriorityhighSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Fixed in Version8.9 
Summary0005116: GNOME Box Crashes on start
DescriptionStart app. It crashes.

Rocky linux 8.9 / gnome-boxes ( gnome-boxes-3.36.5-8.el8.rocky.0.1.x86_64 )

Refer https://gitlab.gnome.org/GNOME/gnome-boxes/-/issues/911 for more details.
Steps To ReproduceStart app. It crashes.
Additional InformationPatch 1: ( fixes crash )

index a41f28bd..ecfb6d2f 100644
--- a/src/util-app.vala
+++ b/src/util-app.vala
@@ -188,9 +188,13 @@ public async GLib.List<Osinfo.Media>? get_recommended_downloads () {
             var os_id = iter->get_content ();
             try {
                 var os = yield os_db.get_os_by_id (os_id);
- var media = os.get_media_list ().get_nth (0) as Osinfo.Media;
+ var media_list = os.get_media_list ();
+ if (media_list == null || media_list.get_length () == 0)
+ continue;
 
- list.append (media);
+ var media = media_list.get_nth (0) as Osinfo.Media;
+ if (media.url != null || os_id.has_prefix ("http://redhat.com"))
+ list.append (media);
             } catch (OSDatabaseError error) {
                 debug ("Failed to find OS with id: '%s': %s", os_id, error.message);
             }

Patch 2: (to make rocklylinux appear in the Recommeded OS list - refer attached screenshot)

--- a/data/osinfo/meson.build
+++ b/data/osinfo/meson.build
@@ -13,6 +13,7 @@ osinfo_db = [
   ['rhel-6.0.xml', 'gnome-boxes/osinfo/os/redhat.com'],
   ['rhel-7.0.xml', 'gnome-boxes/osinfo/os/redhat.com'],
   ['rhel-8.0.xml', 'gnome-boxes/osinfo/os/redhat.com'],
+ ['rocky-8.xml', 'gnome-boxes/osinfo/os/rockylinux.org'],
   ['silverblue-28.xml', 'gnome-boxes/osinfo/os/fedoraproject.org']
 ]
 
diff --git a/data/recommended-downloads.xml b/data/recommended-downloads.xml
index 65f49e6a..025e1a38 100644
--- a/data/recommended-downloads.xml
+++ b/data/recommended-downloads.xml
@@ -9,6 +9,7 @@
   available.
  -->
 <list>
+ <os_id>http://rockylinux.org/rocky/8</os_id>
   <os_id>http://redhat.com/rhel/8.2</os_id>
   <os_id>http://fedoraproject.org/fedora/32</os_id>
   <os_id>http://fedoraproject.org/silverblue/32</os_id>
TagsNo tags attached.
Attached Files
rocky8-gnome-boxes-with-fix.png (58,189 bytes)   
rocky8-gnome-boxes-with-fix.png (58,189 bytes)   

Activities

Louis Abel

Louis Abel

2023-12-24 23:42

administrator   ~0005413

Thank you for the report and thank you for the patch.

The patch we provide to add Rocky Linux to gnome boxes has been updated to match alongside osinfo-db. The reason why it may have been failing is due to the changes made in osinfo-db, which uses a plain major version now rather than 8.X (see here for more details: https://gitlab.com/libosinfo/osinfo-db/-/tree/main/data/os/rockylinux.org). The old 8.6 xml no longer refers to any ISO image, but the 8 xml does.

Commit: https://git.rockylinux.org/staging/rpms/gnome-boxes/-/commit/423fd4280a1501a3e31390173d0ac3e7474c38e7
Updated package: gnome-boxes-3.36.5-8.el8.rocky.0.2

The update has been pushed. Please allow time for the mirrors to sync.

However, we did not include the crash fix patch as we were unable to reproduce ourselves after applying our patch fix. If you can reliably reproduce your crash on at least CentOS Stream 8 as well as our updated package (gnome-boxes-3.36.5-8.el8.rocky.0.2), we will look into adding the crash fix and attempt to upstream it to CentOS Stream.
Sid T

Sid T

2023-12-26 06:03

reporter   ~0005414

> The patch we provide to add Rocky Linux to gnome boxes has been updated to match alongside osinfo-db. The reason why it may have been failing is due to the changes made in osinfo-db, which uses a plain major version now rather than 8.X (see here for more details: https://gitlab.com/libosinfo/osinfo-db/-/tree/main/data/os/rockylinux.org). The old 8.6 xml no longer refers to any ISO image, but the 8 xml does.

That's right. It appears that you've made the changes to rocky osxml entries in osinfo-db ( so there is no need to update the ISO urls more frequently ? ). In that case, there should just be 2 entries in osinfo-db ( rocky-8.xml.in / rocky-9.xml.in ). The other minor releases ( 8.4 / 8.6 etc ) are not required and should probably be deleted from osinfo-db ( I guess ).

> The update has been pushed. Please allow time for the mirrors to sync.

Sure. I'm yet to see the update.

> However, we did not include the crash fix patch as we were unable to reproduce ourselves after applying our patch fix. If you can reliably reproduce your crash on at least CentOS Stream 8 as well as our updated package (gnome-boxes-3.36.5-8.el8.rocky.0.2), we will look into adding the crash fix and attempt to upstream it to CentOS Stream.

That's expected. The crash is caused by rocky-8.6 references in recommended xml os list, so now with the above mentioned commit, the crash should not appear. Though I would recommend the crash fix, since not applying the patch assumes, that the recommended os list and the matching osxml data from osinfo-db will not change ( when osinfo-db package is updated ), across centos stream / rhel / rocky. If data changes in osinfo-db, the crash will appear again. Just FYI. I'll leave the call to you.
Louis Abel

Louis Abel

2023-12-26 09:29

administrator   ~0005415

>In that case, there should just be 2 entries in osinfo-db ( rocky-8.xml.in / rocky-9.xml.in )

Sure, I can add rocky 9. This won't be a problem.

>The other minor releases ( 8.4 / 8.6 etc ) are not required and should probably be deleted from osinfo-db ( I guess ).

Well, unfortunately no. Removing the older profiles like that can break users who are using said profiles. What can potentially happen is a user may have already used any of the older profiles, which saves the ID's in the libvirt xml. Removing the older profiles would break those users. As a form of consolidation, they were modified to derive from rocky-X instead as to not break those users. This is why all of the older profiles still exist in osinfo-db.

See: https://gitlab.com/libosinfo/osinfo-db/-/merge_requests/490 which ultimately refers to https://gitlab.com/libosinfo/osinfo-db/-/merge_requests/370 in the conversation.

>If data changes in osinfo-db, the crash will appear again

Thinking about it, I can see a potential issue in 8.10 and on. osinfo-db is likely to not be updated for the 5 years of maintenance of 8.10. This could in theory lead to a similar situation in this bug report where boxes will outright crash if the upstream distributions change something or something goes EOL, and thus the links disappear. To avoid this, I've added the patch in.

Updated package: gnome-boxes-3.36.5-8.el8.rocky.0.3
Sid T

Sid T

2023-12-29 18:12

reporter   ~0005455

Tested gnome-boxes-3.36.5-8.el8.rocky.0.3 to work fine.

Thanks!

Issue History

Date Modified Username Field Change
2023-12-24 10:47 Sid T New Issue
2023-12-24 10:47 Sid T File Added: rocky8-gnome-boxes-with-fix.png
2023-12-24 23:42 Louis Abel Assigned To => Louis Abel
2023-12-24 23:42 Louis Abel Status new => confirmed
2023-12-24 23:42 Louis Abel Note Added: 0005413
2023-12-26 06:03 Sid T Note Added: 0005414
2023-12-26 09:29 Louis Abel Note Added: 0005415
2023-12-29 18:12 Sid T Note Added: 0005455
2023-12-29 18:13 Louis Abel Status confirmed => closed
2023-12-29 18:13 Louis Abel Resolution open => fixed
2023-12-29 18:13 Louis Abel Fixed in Version => 8.9