如何切换到不同的 xdg-desktop-portal 以获得不同的文件选择器?

如何切换到不同的 xdg-desktop-portal 以获得不同的文件选择器?

我使用 nemo 作为我的默认文件和桌面管理器如何将 Nemo 设置为 Ubuntu 中的默认文件管理器?

简而言之,它看起来像:

sudo apt install nemo
xdg-mime default nemo.desktop inode/directory application/x-gnome-saved-search

文件~/.config/autostart/nemo-desktop.desktop看起来像:

[Desktop Entry]
Type=Application
Name=Nemo
Comment=Start Nemo desktop at log in
Exec=nemo-desktop
X-GNOME-AutoRestart=true
NoDisplay=true

引用的答案建议使用 Desktop Icons NG (DING) 扩展和以下内容:

gsettings set org.gnome.shell.extensions.ding use-nemo true

然而,它取代了nemo-destop,这会破坏我的用户体验,所以我避免了它。

到目前为止一切都很好,除了文件选择器或者文件选择器

Gtk / GIO 文件选择器:

  • 在“位置侧边栏”中添加一些我不需要的额外文件夹。
  • 文件选择器中没有地址栏(我知道我可以按Ctrl+L获取地址栏,但默认情况下我想要它)。

我想要类似的东西(看起来):

zenity --file-selection
zenity --file-selection --save
kdialog --getopenfilename
kdialog --getsavefilename

我发现 xdg-desktop-portal 是执行此类操作的新工具(如果我错了,请纠正我)。

有一些帖子建议使用GTK_USE_PORTAL=1, XDG_CURRENT_DESKTOP=KDE。我对此并不乐观。这是什么GTK_USE_PORTAL=1意思?这里,1是一个硬编码值,为什么不是23。它是如何加工的?同样,如果我XDG_CURRENT_DESKTOP=KDE在 gnome 系统中使用,那么它不会破坏东西吗?

有没有更简单的方法告诉 gnome 使用来自 X 门户的文件选择器

我找到了以下文件,因此有用于文件选择器的 dbus 接口。

/usr/share/glib-2.0/schemas/org.gtk.gtk4.Settings.FileChooser.gschema.xml
/usr/share/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml

在我的机器上,我还发现了多个 xdg-desktop-portal

$ ls -la /usr/share/xdg-desktop-portal/portals
.rw-r--r-- 100 root 23 Mar 14:48 gnome-keyring.portal
.rw-r--r--  99 root 20 Mar 02:25 gnome-shell.portal
.rw-r--r-- 548 root 18 Oct  2022 gnome.portal
.rw-r--r-- 495 root 29 Nov  2022 gtk.portal
.rw-r--r-- 664 root  6 Jul 12:27 kde.portal

那么,切换到不同的 xdg-desktop-portal 以获得不同的文件选择器的最简单方法是什么? (只要文件选择器是,我愿意接受任何解决我的问题的建议改变或修改为了满足我的需求,我并不专注于xdg-desktop-portal,我只是有一种感觉,它是完成工作的工具,我可能完全错了)。

相关内容