{"id":86,"date":"2025-03-12T13:50:57","date_gmt":"2025-03-12T12:50:57","guid":{"rendered":"https:\/\/linuxundich.de\/en\/?p=86"},"modified":"2026-10-03T23:04:48","modified_gmt":"2026-10-03T21:04:48","slug":"better-firefox-integration-in-gnome-webdav-and-more-in-the-file-dialog","status":"publish","type":"post","link":"https:\/\/linuxundich.de\/en\/gnu-linux\/better-firefox-integration-in-gnome-webdav-and-more-in-the-file-dialog\/","title":{"rendered":"Better Firefox integration in GNOME: WebDAV and more in the file dialog"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Firefox has been my preferred browser again for quite a while now. Since the introduction of Manifest v3 and the restrictions it brings for ad blockers, that is probably true for more people than just me. But one thing bugged me for a long time: by default, Firefox doesn&#8217;t use the native GNOME file dialog, but its own. That is especially annoying when I work with remote drives via SSH or WebDAV.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, I mount several Nextcloud instances into my system via WebDAV, which is actually wonderfully easy with GVfs and GNOME&#8217;s Online Accounts. Working with files on servers via SSH is just as convenient this way. But as soon as an app like Firefox doesn&#8217;t use the GNOME file picker, I lose my bookmarks and direct access to remote locations.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6ac19219149d4&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6ac19219149d4\" class=\"wp-block-image wp-lightbox-container\"><img decoding=\"async\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/linuxundich.de\/wp-content\/uploads\/2025\/03\/firefox-gnome-filepicker1-1280x750.webp\" alt=\"Firefox's own file dialog only shows local folders, while Nautilus next to it lists the mounted network drives.\" style=\"width:100%\"\/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">By default, Firefox uses its own file dialog, which offers no direct access to remote drives.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Fortunately, a small tweak in Firefox fixes this. To make Firefox use GNOME&#8217;s native file dialog, you only need two simple steps, which are easy to undo if necessary. The configuration works across distributions on all common Linux distros.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"gnome-filepicker-in-firefox-aktivieren\">Enabling the GNOME file picker in Firefox<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">First, make sure the <code>xdg-desktop-portal-gnome<\/code> package is installed on your system. On Debian- or Ubuntu-based distributions, or on Arch Linux, which I prefer, you can do that with:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>### Ubuntu, Debian und Co.\n$ &lt;strong&gt;sudo apt install xdg-desktop-portal-gnome&lt;\/strong&gt;\n\n### Arch Linux, Manjaro und Co.\n$ &lt;strong&gt;sudo pacman -S xdg-desktop-portal-gnome&lt;\/strong&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">For Fedora, openSUSE and other distributions, the package is also available in the respective repositories. As a rule, though, it should already be part of the default installation if you installed GNOME right when setting up the system or if you use one of the usual meta packages like <code>gnome-desktop<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Then start Firefox from your desktop environment&#8217;s app menu and enter <code>about:config<\/code> in the browser&#8217;s address bar to open the advanced configuration. There, search for the following key:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>widget.use-xdg-desktop-portal.file-picker<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">By default, the value is set to <code>2<\/code>, which means Firefox uses its own file dialog, and that one is simply not on par with the GNOME file picker. Change it to <code>1<\/code> to enable the GNOME file picker via the XDG desktop portal.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6ac1921917993&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6ac1921917993\" class=\"wp-block-image size-large is-resized wp-lightbox-container\"><img decoding=\"async\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/linuxundich.de\/wp-content\/uploads\/2025\/03\/firefox-gnome-filepicker2-1280x750.webp\" alt=\"In the advanced Firefox settings (`about:config`), the key `widget.use-xdg-desktop-portal.file-picker` has to be changed from `2` to `1`.\" class=\"wp-image-42468\" style=\"width:100%\"\/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">In the advanced Firefox settings (<code>about:config<\/code>), the key <code>widget.use-xdg-desktop-portal.file-picker<\/code> has to be changed from <code>2<\/code> to <code>1<\/code>.<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"firefox-integriert-jetzt-webdav-und-co.\">Firefox now integrates WebDAV and more.<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">After a restart of Firefox at the latest, the familiar GNOME file dialog opens, complete with the bookmarks you created in the Nautilus file manager and full GVfs integration. That lets you access your Nextcloud drives directly, without taking awkward detours. This small change makes Firefox integrate much better into the GNOME desktop environment, and it makes working with remote locations a lot more comfortable.<\/p>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6ac19219183c8&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6ac19219183c8\" class=\"wp-block-image wp-lightbox-container\"><img decoding=\"async\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/linuxundich.de\/wp-content\/uploads\/2025\/03\/firefox-gnome-filepicker3-1280x750.webp\" alt=\"Thanks to the tweak, Firefox now uses the GNOME file dialog with full access to WebDAV and other remote locations.\" style=\"width:100%\"\/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><figcaption class=\"wp-element-caption\">Thanks to the tweak, Firefox now uses the GNOME file dialog with full access to WebDAV and other remote locations.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Here&#8217;s how to enable the GNOME file dialog in Firefox: get direct access to WebDAV, Nextcloud, and remote drives by using the native GNOME file picker, for better integration on Linux.<\/p>\n","protected":false},"author":2,"featured_media":85,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"lui_source_id":42463,"lui_source_hash":"e296dce80b80b799df315027a83425cabd69db896b816b8514785b54daf9a297","lui_source_translated":"2026-10-03","lui_source_reviewed":true,"lui_via_url":"","lui_via_label":"","lui_source_url":"","lui_source_label":"","footnotes":""},"categories":[2],"tags":[],"class_list":["post-86","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-gnu-linux"],"_links":{"self":[{"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/posts\/86","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/comments?post=86"}],"version-history":[{"count":1,"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/posts\/86\/revisions"}],"predecessor-version":[{"id":114,"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/posts\/86\/revisions\/114"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/media\/85"}],"wp:attachment":[{"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/media?parent=86"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/categories?post=86"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linuxundich.de\/en\/wp-json\/wp\/v2\/tags?post=86"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}