{"id":50938,"date":"2026-04-12T11:25:52","date_gmt":"2026-04-12T11:25:52","guid":{"rendered":"https:\/\/ubuntuhandbook.org\/?p=50938"},"modified":"2026-04-12T11:25:52","modified_gmt":"2026-04-12T11:25:52","slug":"gdm-extension-change-gnome-login-background","status":"publish","type":"post","link":"https:\/\/ubuntuhandbook.org\/index.php\/2026\/04\/gdm-extension-change-gnome-login-background\/","title":{"rendered":"GDM Extension &#8211; Another Way to Change GNOME Login Screen Background &#038; Other Settings"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-thumbnail wp-image-44710\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/11\/gnome-logo-dark-250x250.webp\" alt=\"\" width=\"250\" height=\"250\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/11\/gnome-logo-dark-250x250.webp 250w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/11\/gnome-logo-dark-300x300.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/11\/gnome-logo-dark-600x600.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/11\/gnome-logo-dark-768x768.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2023\/11\/gnome-logo-dark.webp 1200w\" sizes=\"auto, (max-width: 250px) 100vw, 250px\" \/><\/p>\n<p>Want to configure the login screen in Ubuntu, Fedora Workstation, and other Linux with GNOME Desktop? Here&#8217;s an extension to do the job for GNOME from version 42 to 50.<\/p>\n<p>As you may know, it&#8217;s not easy for beginners to configure the GNOME login screen manually, as it requires GDM user permission. And, the login screen background is even hard-coded in a binary file, that user needs to manually extract, edit, and re-pack it to change the background image. See <a href=\"https:\/\/wiki.archlinux.org\/title\/GDM#Login_screen_background_image\" target=\"_blank\" rel=\"noopener\">this wiki<\/a> for details.<\/p>\n<p><!--more--><\/p>\n<div id=\"attachment_47630\" style=\"width: 620px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-47630\" class=\"size-large wp-image-47630\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2024\/11\/gdm-login-purple-700x395.webp\" alt=\"\" width=\"610\" height=\"344\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2024\/11\/gdm-login-purple-700x395.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2024\/11\/gdm-login-purple-300x169.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2024\/11\/gdm-login-purple-768x433.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2024\/11\/gdm-login-purple-1320x745.webp 1320w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2024\/11\/gdm-login-purple.webp 1361w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><p id=\"caption-attachment-47630\" class=\"wp-caption-text\">GNOME Login Screen with custom background<\/p><\/div>\n<p>To make life easier, a free open-source <a href=\"https:\/\/github.com\/gdm-settings\/gdm-settings\" target=\"_blank\" rel=\"noopener\">GDM Settings<\/a> tool was born to cover the most login screen settings, e.g., the background, fonts, themes, and power management, with a simple graphical user interface.<\/p>\n<div id=\"attachment_48703\" style=\"width: 620px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-48703\" class=\"size-large wp-image-48703\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2025\/04\/gdm-settings-700x415.webp\" alt=\"\" width=\"610\" height=\"362\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2025\/04\/gdm-settings-700x415.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2025\/04\/gdm-settings-300x178.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2025\/04\/gdm-settings-768x455.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2025\/04\/gdm-settings.webp 1056w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><p id=\"caption-attachment-48703\" class=\"wp-caption-text\">GDM Settings<\/p><\/div>\n<p>GDM settings is great! I made an <a href=\"https:\/\/launchpad.net\/~ubuntuhandbook1\/+archive\/ubuntu\/gdm-settings\" target=\"_blank\" rel=\"noopener\">unofficial PPA<\/a> contains the app packages for Ubuntu users who prefer native <code>.deb<\/code> package. It however does NOT support GNOME 50 (Ubuntu 26.04) so far.<\/p>\n<p>While waiting for the GDM settings update, I found another choice, <a href=\"https:\/\/github.com\/pratap-panabaka\/gse-gdm-extension\" target=\"_blank\" rel=\"noopener\">GDM Extension<\/a>, a free open-source tool that can do the similar things for GNOME login screen, which so far supports GNOME version from 42 to 50.<\/p>\n<div id=\"attachment_50939\" style=\"width: 620px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-50939\" class=\"size-large wp-image-50939\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-settings-configure-700x440.webp\" alt=\"\" width=\"610\" height=\"383\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-settings-configure-700x440.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-settings-configure-300x188.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-settings-configure-768x482.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-settings-configure.webp 1277w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><p id=\"caption-attachment-50939\" class=\"wp-caption-text\">GDM Extension<\/p><\/div>\n<p><b>As the name says, it&#8217;s a Gnome Shell Extension.<\/b> It provides a menu in the login screen, allowing to configure the following things:<\/p>\n<ul>\n<li>Background color, image, blur for multiple monitors (up to 4 monitors).<\/li>\n<li>Accent Colors, Fonts, Icons, Themes.<\/li>\n<li>Logo image, welcome message.<\/li>\n<li>And some other settings, e.g., disable user list.<\/li>\n<\/ul>\n<p>All the configure options are available when you&#8217;re at login screen, and changes you made apply immediately. However, it only shows images and themes in the <code>\/usr\/share\/backgrounds<\/code>, <code>\/usr\/share\/themes<\/code>, etc directories.<\/p>\n<h3>How to Install GDM Extension<\/h3>\n<p><b>NOTE: Same to GDM Settings, the extension has potential to break your login screen (though in rare cases)! Don&#8217;t install it on production machine, and use it as your own risk!<\/b><\/p>\n<p><b>It said it&#8217;s experimental and primarily tested on Arch Linux with GNOME Shell v42 and v50, though, it&#8217;s working good in my case in Ubuntu 25.10 and Ubuntu 26.04 Beta.<\/b><\/p>\n<p>Probably due to permission issue (<code>gdm<\/code>), the extension is not available in EGO (<a href=\"https:\/\/extensions.gnome.org\/\" target=\"_blank\" rel=\"noopener\">extensions.gnome.org<\/a>), and, it&#8217;s installed to <code>\/usr\/local\/share\/gnome-shell\/extensions<\/code> directory instead of user&#8217;s <code>.local\/share<\/code>.<\/p>\n<p><b>Step 1.<\/b> First, press <code>Ctrl+Alt+T<\/code> on keyboard to open terminal. Then, run command to install the required libraries:<\/p>\n<pre>sudo apt install git zip unzip<\/pre>\n<p><b>Step 2.<\/b> Next, run command to clone the source from github:<\/p>\n<pre>git clone https:\/\/github.com\/pratap-panabaka\/gse-gdm-extension\/<\/pre>\n<p><b>Step 3.<\/b> Finally, navigate to the source folder, and run the installer script:<\/p>\n<pre>cd gse-gdm-extension &amp;&amp; sudo .\/install.sh<\/pre>\n<p>The script will automatically detect your GNOME version, then run the corresponding script to install the extension to <code>\/usr\/local<\/code> sub-directory, generate dconf schemas, and apply changes.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-50940\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-settingsinstall-700x483.webp\" alt=\"\" width=\"610\" height=\"421\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-settingsinstall-700x483.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-settingsinstall-300x207.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-settingsinstall-768x530.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-settingsinstall.webp 886w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/p>\n<p>After successfully installed the extension, log out and use the top-left menu to configure the login screen.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-50941\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-extensions-menu-700x428.webp\" alt=\"\" width=\"610\" height=\"373\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-extensions-menu-700x428.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-extensions-menu-300x183.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-extensions-menu-768x469.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/gdm-extensions-menu.webp 774w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/p>\n<p>Tips: in case for beginners who don&#8217;t know how to display user&#8217;s own images as login background, open terminal (Ctrl+Alt+T) and run command copy image to system backgrounds directory, then log out.<\/p>\n<pre>sudo cp drag-and-drop-image-file-into-terminal \/usr\/share\/backgrounds<\/pre>\n<p>After properly set your login screen, <b>you may hide the gdm extension menu from login screen<\/b>, by running command in terminal to edit the config file:<\/p>\n<pre>sudo nano \/etc\/dconf\/db\/gdm.d\/99-gdm-extension<\/pre>\n<p>Then, set &#8220;hide-gdm-extension-button&#8221; value to <b>true<\/b>. Press Ctrl+S to save file, Ctrl+X to exit.<\/p>\n<p>Finally, run <code>sudo dconf update<\/code> command to apply change.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-50942\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/hide-gdmextension-700x537.webp\" alt=\"\" width=\"610\" height=\"468\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/hide-gdmextension-700x537.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/hide-gdmextension-300x230.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/04\/hide-gdmextension.webp 702w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/p>\n<p><b>And to uninstall GDM Extension,<\/b> simply run <code>sudo .\/uninstall.sh<\/code> command from in the source folder (see Step 2 and Step 3).<\/p>","protected":false},"excerpt":{"rendered":"<p>Want to configure the login screen in Ubuntu, Fedora Workstation, and other Linux with GNOME Desktop? Here&#8217;s an extension to do the job for GNOME from version 42 to 50. As you may know, it&#8217;s not easy for beginners to configure the GNOME login screen manually, as it requires GDM user permission. And, the login [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":44710,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[52],"tags":[689],"class_list":["post-50938","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-app-review","tag-gnome"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts\/50938","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=50938"}],"version-history":[{"count":0,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts\/50938\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/media\/44710"}],"wp:attachment":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/media?parent=50938"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/categories?post=50938"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/tags?post=50938"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}