{"id":51768,"date":"2026-08-06T07:27:21","date_gmt":"2026-08-06T07:27:21","guid":{"rendered":"https:\/\/ubuntuhandbook.org\/?p=51768"},"modified":"2026-08-06T07:27:21","modified_gmt":"2026-08-06T07:27:21","slug":"gnome-boxes-finally-ported-to-gtk4-libadwaita-via-version-51-beta","status":"publish","type":"post","link":"https:\/\/ubuntuhandbook.org\/index.php\/2026\/08\/gnome-boxes-finally-ported-to-gtk4-libadwaita-via-version-51-beta\/","title":{"rendered":"GNOME Boxes Finally Ported to GTK4\/LibAdwaita via Version 51 Beta"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-thumbnail wp-image-51769\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes-icon-250x250.webp\" alt=\"\" width=\"250\" height=\"250\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes-icon-250x250.webp 250w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes-icon-300x300.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes-icon-700x700.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes-icon-768x768.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes-icon.webp 1200w\" sizes=\"auto, (max-width: 250px) 100vw, 250px\" \/><\/p>\n<p>GNOME Boxes, GNOME&#8217;s virtualization software for running operating systems in virtual machines, released the Beta for next 51 version.<\/p>\n<p>The new version is finally ported <b>from GTK3 to GTK4 plus LibAdwaita<\/b>, making its user interface look modern and native in recent GNOME Desktops.<\/p>\n<p><!--more--><\/p>\n<div id=\"attachment_51770\" style=\"width: 620px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes51.webp\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-51770\" class=\"size-large wp-image-51770\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes51-700x492.webp\" alt=\"\" width=\"610\" height=\"429\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes51-700x492.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes51-300x211.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes51-768x540.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/gnome-boxes51.webp 874w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/a><p id=\"caption-attachment-51770\" class=\"wp-caption-text\">GNOME Boxes 51 Beta<\/p><\/div>\n<p>This version also switched <b>from SPICE protocol to Libmks<\/b>, a GTK4-friendly library that lets apps embed a SPICE-powered VM console into their own interface, for the VM display rendering, keyboard\/mouse event forwarding, multi-monitor support, cursor handling, and scaling.<\/p>\n<p>The <b>Windows 11 VM support<\/b> is fully functional. It can now install Windows 11 directly without extra tweaks, because it automatically provides all the required features, such as Secure Boot and a virtual TPM (vTPM), allowing Windows 11 to pass its hardware requirement checks.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-51771\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/boxes-create-700x476.webp\" alt=\"\" width=\"610\" height=\"415\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/boxes-create-700x476.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/boxes-create-300x204.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/boxes-create-768x522.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/boxes-create.webp 1007w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/p>\n<p>It also introduced support for <b>VSOCK (Virtual Socket)<\/b>, a Linux socket interface designed for communication between a virtual machine (VM) and its host system without using a normal network connection.<\/p>\n<p>With it, guest OSes with <code>systemd<\/code> v256 or newer can be accessed directly over SSH. It also adds initial support for <b>port forwarding<\/b>, makeing a VM service look like a host network service, so that you can reach such services running inside the VM easily from your host.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-51772\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/boxes-settings-700x469.webp\" alt=\"\" width=\"610\" height=\"409\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/boxes-settings-700x469.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/boxes-settings-300x201.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/boxes-settings-768x514.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/boxes-settings.webp 1030w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/p>\n<p>In addition, the developer is moving GNOME Boxes to a Flatpak-first (and only) model, because maintaining support for many Linux distributions is too difficult for a solo developer. Flatpak allows them to package and control the entire libvirt\/QEMU virtualization stack, making it easier to provide a consistent and optimized experience.<\/p>\n<p>For more about the new GNOME Boxes, see either <a href=\"http:\/\/nightly.gnomeboxes.org\/\" target=\"_blank\" rel=\"noopener\">nightly.gnomeboxes.org<\/a> or the developer&#8217;s <a href=\"https:\/\/blogs.gnome.org\/feborges\/future-of-boxes\/\" target=\"_blank\" rel=\"noopener\">blog post<\/a>.<\/p>\n<h3>Try out the New GNOME Boxes 51 Beta<\/h3>\n<p>The new version is easy to install in most Linux through Flatpak package from GNOME Nightly repository.<\/p>\n<p>First, follow the <a href=\"https:\/\/flathub.org\/en\/setup\" target=\"_blank\" rel=\"noopener\">setup guide<\/a> to enable the Flatpak package support. For Debian\/Ubuntu, simply launch terminal (Ctrl+Alt+T) and run command:<\/p>\n<pre>sudo apt install flatpak<\/pre>\n<p>Next, add the GNOME Nightly repository by running command:<\/p>\n<pre>flatpak remote-add --if-not-exists gnome-nightly https:\/\/nightly.gnome.org\/gnome-nightly.flatpakrepo<\/pre>\n<p>Finally, run command to install the Flatpak package:<\/p>\n<pre>flatpak install gnome-nightly org.gnome.Boxes.Devel<\/pre>\n<p>If you can&#8217;t find out the app icon, either log out and back in or try running <code>flatpak run org.gnome.Boxes.Devel<\/code> command to start it from terminal.<\/p>\n<h3>Uninstall:<\/h3>\n<p>To uninstall the app package, use command:<\/p>\n<pre>flatpak uninstall --delete-data org.gnome.Boxes.Devel<\/pre>\n<p>Then run <code>flatpak uninstall --unused<\/code> to remove the useless runtime libraries.<\/p>\n<p>Or simply remove the GNOME Nightly repository, who will also uninstall everything that you installed from it.<\/p>\n<pre>flatpak remote-delete gnome-nightly<\/pre>","protected":false},"excerpt":{"rendered":"<p>GNOME Boxes, GNOME&#8217;s virtualization software for running operating systems in virtual machines, released the Beta for next 51 version. The new version is finally ported from GTK3 to GTK4 plus LibAdwaita, making its user interface look modern and native in recent GNOME Desktops.<\/p>\n","protected":false},"author":1,"featured_media":51769,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[689,2471],"class_list":["post-51768","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news","tag-gnome","tag-virtualization"],"_links":{"self":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts\/51768","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/comments?post=51768"}],"version-history":[{"count":0,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts\/51768\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/media\/51769"}],"wp:attachment":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/media?parent=51768"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/categories?post=51768"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/tags?post=51768"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}