Firefox Browser Slowdown

I use Firefox and have no issues. Don’t understand this. :thinking:

Be happy! Obviously you use a special Variant of Firefox! Maybe therefore you have no issues!

EOZ :face_with_raised_eyebrow:

I also encountered slow loading of the firefox browser, whose password I had locked with a password. The message described above “The fix was to install : dbus-broker” only aggravated the situation, because the profile password had to be entered instead of once - many times when the application started.
I use cinnamon.
According to the logs, the culprit of the slowdown in the work of xdg-desktop-portal-gnome was determined.

The solution is described here https://bbs.archlinux.org/viewtopic.php?id=285590
The solution is to remove the package xdg-desktop-portal-gnome

i wonder why everyone have this installed anyway… it is only for GNOME installs… you may have choosen the wrong variant when it asks for xdg-desktop-portal-impl while installing flatpak or lutris…

I don’t use flatpak or lutris :slightly_smiling_face:

why this was installed is still a question…

I used to put xdg-desktop-portal and xdg-desktop-portal-kde in my user_pkglist.txt, but I stopped doing this when I noticed that they were bringing in xdg-desktop-portal-gnome and other dependencies such as libadwaita which I definitely don’t want on my KDE system.

I now install xdg-desktop-portal and xdg-desktop-portal-kde later on after first boot, and the only dependency they bring in is geoclue.

So it’s possible in some of these cases that xdg-desktop-portal-gnome has been installed as part of the :enos: installer’s approach to dependencies.

never saw this be installed on testing all the desktops…

and indeed if it asks for xdg-desktop-portal-impl the default option is gnome there… so in case it is called with --no-confirm it will install the gnome version if you do not select another one manually…
And same in cas eyou install it as a depedency of some package you do install it will also opt to choose one of xdg-desktop-portal-impl and defaults to gnome … so id you do not rerad and enter… it will went in too…

It was only installed when I had xdg-desktop-portal and xdg-desktop-portal-kde in my user_pkglist.txt.

I’ll test it again in a VM later…


as mentioned already :wink:
if you explicitly add implemention package it wioll not ask…

pacman -S xdg-desktop-portal xdg-desktop-portal-kde but calamares installes these packages from the list one by one i bet…

I don’t even get that when I install xdg-desktop-portal and xdg-desktop-portal-kde after first boot, presumably because xdg-desktop-portal-kde satisfies the “impl” requirement.

Looks like it does. I’ve finished a test install in a VM, and added xdg-desktop-portal and xdg-desktop-portal-kde to my user_pkglist.txt this time.

Here’s the relevant part of the install log:

2023-06-16 - 17:49:42 [6]: [PYTHON JOB]: "resolving dependencies..."
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: ":: There are 6 providers available for xdg-desktop-portal-impl:"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: ":: Repository extra"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "1) xdg-desktop-portal-gnome  2) xdg-desktop-portal-gtk  3) xdg-desktop-portal-hyprland  4) xdg-desktop-portal-kde  5) xdg-desktop-portal-lxqt  6) xdg-desktop-portal-wlr"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: ""
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "Enter a number (default=1):"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "looking for conflicting packages..."
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: ""
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "Package (11)                    New Version  Net Change  Download Size"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: ""
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/gcr                       3.41.1-4       3.89 MiB       0.73 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/gcr-4                     4.1.0-1        2.91 MiB       0.54 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/geoclue                   2.7.0-1        1.55 MiB       0.23 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/gnome-desktop-4           1:44.0-1       0.57 MiB       0.11 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/gnome-desktop-common      1:44.0-1       2.84 MiB       0.47 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/gnome-keyring             1:42.1-3       3.55 MiB       0.75 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/gtk4                      1:4.10.4-1    31.36 MiB       5.96 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/libadwaita                1:1.3.3-1      3.13 MiB       0.46 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/xdg-desktop-portal-gnome  44.1-2         0.64 MiB       0.15 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/xdg-desktop-portal-gtk    1.14.1-1       0.48 MiB       0.11 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "extra/xdg-desktop-portal        1.16.0-3       1.96 MiB       0.36 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: ""
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "Total Download Size:    9.87 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: "Total Installed Size:  52.87 MiB"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: ""
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: ":: Proceed with installation? [Y/n]"
2023-06-16 - 17:49:43 [6]: [PYTHON JOB]: ":: Retrieving packages..."

2023-06-16 - 17:49:44 [6]: QML Component (default slideshow) Next slide

2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "gtk4-1:4.10.4-1-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "gnome-keyring-1:42.1-3-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "gcr-3.41.1-4-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "gcr-4-4.1.0-1-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "gnome-desktop-common-1:44.0-1-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "libadwaita-1:1.3.3-1-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "xdg-desktop-portal-1.16.0-3-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "geoclue-2.7.0-1-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "xdg-desktop-portal-gnome-44.1-2-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "gnome-desktop-4-1:44.0-1-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "xdg-desktop-portal-gtk-1.14.1-1-x86_64 downloading..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "checking keyring..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "checking package integrity..."

2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "loading package files..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "checking for file conflicts..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: ":: Processing package changes..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "installing geoclue..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "Optional dependencies for geoclue"
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "libnotify: Demo Agent [installed]"
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "installing gnome-desktop-common..."

2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "installing gtk4..."

2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "Optional dependencies for gtk4"
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "evince: Default print preview command"
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "installing gnome-desktop-4..."

2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "installing gcr..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "installing gcr-4..."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "Created symlink /etc/systemd/user/sockets.target.wants/gcr-ssh-agent.socket -> /usr/lib/systemd/user/gcr-ssh-agent.socket."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "Optional dependencies for gcr-4"
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "gtk4: gcr-viewer-gtk4 [installed]"
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "installing gnome-keyring..."

2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "Created symlink /etc/systemd/user/sockets.target.wants/gnome-keyring-daemon.socket -> /usr/lib/systemd/user/gnome-keyring-daemon.socket."
2023-06-16 - 17:49:48 [6]: [PYTHON JOB]: "installing libadwaita..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "installing xdg-desktop-portal-gtk..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "Optional dependencies for xdg-desktop-portal-gtk"
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "evince: Print preview"
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "installing xdg-desktop-portal-gnome..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "Optional dependencies for xdg-desktop-portal-gnome"
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "evince: Print previews"
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "installing xdg-desktop-portal..."

2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: ":: Running post-transaction hooks..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "( 1/10) Creating system user accounts..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "Creating group 'geoclue' with GID 966."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "Creating user 'geoclue' (Geoinformation service) with UID 966 and GID 966."

2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "( 2/10) Reloading system manager configuration..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "Skipped: Running in chroot."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "( 3/10) Creating temporary files..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "( 4/10) Arming ConditionNeedsUpdate..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "( 5/10) Updating the MIME type database..."

2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "( 6/10) Reloading system bus configuration..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "Skipped: Running in chroot."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "( 7/10) Compiling GSettings XML schema files..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "( 8/10) Updating icon theme caches..."
2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "( 9/10) Updating GTK4 module cache..."

2023-06-16 - 17:49:49 [6]: [PYTHON JOB]: "(10/10) Updating the desktop file MIME type cache..."
2023-06-16 - 17:49:49 [6]:     .. Running ("pacman", "-S", "--noconfirm", "--noprogressbar", "--needed", "--disable-download-timeout", "xdg-desktop-portal-kde")

2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: "resolving dependencies..."
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: "looking for conflicting packages..."
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: ""
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: "Package (1)                   New Version  Net Change  Download Size"
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: ""
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: "extra/xdg-desktop-portal-kde  5.27.5-1       1.01 MiB       0.27 MiB"
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: ""
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: "Total Download Size:   0.27 MiB"
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: "Total Installed Size:  1.01 MiB"
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: ""
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: ":: Proceed with installation? [Y/n]"
2023-06-16 - 17:49:50 [6]: [PYTHON JOB]: ":: Retrieving packages..."

2023-06-16 - 17:49:51 [6]: [PYTHON JOB]: "xdg-desktop-portal-kde-5.27.5-1-x86_64 downloading..."
2023-06-16 - 17:49:51 [6]: [PYTHON JOB]: "checking keyring..."

2023-06-16 - 17:49:51 [6]: [PYTHON JOB]: "checking package integrity..."
2023-06-16 - 17:49:51 [6]: [PYTHON JOB]: "loading package files..."
2023-06-16 - 17:49:51 [6]: [PYTHON JOB]: "checking for file conflicts..."

2023-06-16 - 17:49:51 [6]: [PYTHON JOB]: ":: Processing package changes..."
2023-06-16 - 17:49:51 [6]: [PYTHON JOB]: "installing xdg-desktop-portal-kde..."

This seems to be the problem.

UPDATE :rotating_light:

I tried again, but this time put xdg-desktop-portal-kde before xdg-desktop-portal in my user_pkglist.txt. The result was very different this time - only geoclue was installed in addition:

2023-06-16 - 19:43:34 [6]:     .. Running ("pacman", "-S", "--noconfirm", "--noprogressbar", "--needed", "--disable-download-timeout", "xdg-desktop-portal-kde") 

2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "resolving dependencies..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "looking for conflicting packages..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "Package (1)                   New Version  Net Change  Download Size" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "extra/xdg-desktop-portal-kde  5.27.5-1       1.01 MiB       0.27 MiB" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "Total Download Size:   0.27 MiB" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "Total Installed Size:  1.01 MiB" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: ":: Proceed with installation? [Y/n]" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: ":: Retrieving packages..." 

2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "xdg-desktop-portal-kde-5.27.5-1-x86_64 downloading..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "checking keyring..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "checking package integrity..." 

2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "loading package files..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "checking for file conflicts..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: ":: Processing package changes..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "installing xdg-desktop-portal-kde..." 

2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: ":: Running post-transaction hooks..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "(1/2) Arming ConditionNeedsUpdate..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "(2/2) Updating the desktop file MIME type cache..." 

2023-06-16 - 19:43:35 [6]:     .. Running ("pacman", "-S", "--noconfirm", "--noprogressbar", "--needed", "--disable-download-timeout", "xdg-desktop-portal") 

2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "resolving dependencies..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "looking for conflicting packages..." 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "Package (2)               New Version  Net Change  Download Size" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "extra/geoclue             2.7.0-1        1.55 MiB       0.23 MiB" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "extra/xdg-desktop-portal  1.16.0-3       1.96 MiB       0.36 MiB" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "Total Download Size:   0.59 MiB" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "Total Installed Size:  3.51 MiB" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: "" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: ":: Proceed with installation? [Y/n]" 
2023-06-16 - 19:43:35 [6]: [PYTHON JOB]: ":: Retrieving packages..." 

2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "xdg-desktop-portal-1.16.0-3-x86_64 downloading..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "geoclue-2.7.0-1-x86_64 downloading..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "checking keyring..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "checking package integrity..." 

2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "loading package files..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "checking for file conflicts..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: ":: Processing package changes..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "installing geoclue..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "Optional dependencies for geoclue" 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "libnotify: Demo Agent [installed]" 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "installing xdg-desktop-portal..." 

2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: ":: Running post-transaction hooks..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "(1/6) Creating system user accounts..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "Creating group 'geoclue' with GID 966." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "Creating user 'geoclue' (Geoinformation service) with UID 966 and GID 966." 

2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "(2/6) Reloading system manager configuration..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "Skipped: Running in chroot." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "(3/6) Creating temporary files..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "(4/6) Arming ConditionNeedsUpdate..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "(5/6) Reloading system bus configuration..." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "Skipped: Running in chroot." 
2023-06-16 - 19:43:36 [6]: [PYTHON JOB]: "(6/6) Updating the desktop file MIME type cache..." 

So that solves the problem for me :sweat_smile: but it may also be an explanation as to why so many have xdg-desktop-portal-gnome installed.

2 Likes

i bet not… not so many do use the user_pkglist option… it is more that users will may try installing steam proton flatpak… and do not see the question to choose one impl. while installing…

2 Likes

just see a dependency for cinnamon:
xdg-desktop-portal-xapp
that will bring in https://archlinux.org/packages/extra/x86_64/xdg-desktop-portal/ with xdg-desktop-portal-impl as a dependency…
no clue how to resolve this inside the installer… will need a detect and remove action …
@dalto @manuel ?

We should be able to just add the correct one to the package list. I don’t think we need to detect and remove.

That is because packages from the list are installed one at a time. But in the installer itself, packages are installed all at once.

Because xdg-desktop-portal was being installed first with --noconfirm, it was pulling the first option which is gnome for some reason.

Looks like installing xdg-desktop-portal-XYZ separately before installing xdg-desktop-portal will work without unwanted deps.

It is reasons like these, that I dislike using Mozilla Firefox packaged by any distro. I much prefer obtaining my copy directly from Mozilla and allowing it to automatically update.

I even made a script to download, extract, and place all the shortcuts (“Firefox Automatic Install for Linux”). https://gitlab.com/Linux-Is-Best/Firefox-automatic-install-for-Linux

It’s their loss if they don’t - user_pkglist is one of the killer features of :enos: (along with your good self of course :wink: ).

i do currently start loving the script implementation… it can do a lot of stuff… like this what will enable network printing open ports for it and enables cups-browsed:
https://raw.githubusercontent.com/killajoe/fileserver/main/Convenience-printer-installation
i can simple insertt the url to the file in welcome screen bottom right…