Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot be installed in Gnome 3.22.2 (F25) #234

Open
galexrry opened this issue Dec 19, 2016 · 8 comments
Open

Cannot be installed in Gnome 3.22.2 (F25) #234

galexrry opened this issue Dec 19, 2016 · 8 comments

Comments

@galexrry
Copy link

Failed to install in Gnome 3.22.1 on Fedora 25: neither via extensions.gnome.org (silently ignored installation) nor via the rpmfusion repos.

@ferdnyc
Copy link

ferdnyc commented Dec 19, 2016

You'll have to provide us with more information, because Gnome Shell 3.22 (part of Fedora 25) finally turned off the extension version-checking that had so frustrated extension users during previous upgrades, so there's nothing preventing an extension that worked in F24 from working in F25. Both of my upgraded F25 machines are running extension with no problems.

The extension also hasn't been part of rpmfusion since F23 — it isn't available (through that route) in F25. The Fedora repo offers gnome-shell-extension-openweather but that's a different extension entirely. So, when you say "failed to install" via rpmfusion, do you mean that the gnome-shell-extension-weather package was not found by dnf? That's what should have been the case...

But as far as your attempt to install it from e.g.o, have you successfully installed other extensions that way? Are you sure you have the GNOME Shell Integration Firefox plugin Allowed to run on the site? (I seem to recall silently ignoring install switches was a symptom of the plugin not running.) If you press Alt-F2 and type 'lg' to bring up the Looking Glass, do you see "Weather" listed in the Extensions pane? Is it showing any errors?

@ferdnyc
Copy link

ferdnyc commented Dec 19, 2016

Oh, also, do you have the libgweather package installed on your system? That library is required for the extension to function, see #193. I thought @Neroth was planning to update the e.g.o description to mention that, but it doesn't look like it's been done yet.

@galexrry
Copy link
Author

@ferdnyc: Sorry for the delayed response. To address your questions:

  • my current Gnome version is 3.22.2

  • yes, Gnome version checking is turned off in /usr/share/glib-2.0/schemas/org.gnome.shell.gschema.xml:
    <key name="disable-extension-version-validation" type="b"> <default>true</default> ...

  • I had similar installation issues in F23 and F24 with this extension but managed to overcome them; not the case anymore in F25 (installed from scratch, not the upgrade from F24) - whatever I try to do I am getting the same result: no installation via e.g.o. but the slider remains in the "on" position as opposed to #193

  • there are neither any files of this extension added to ~/.local/share/gnome-shell/extensions nor this app appears in the gnome-shell-extension-prefs or in the gnome Looking Glass (Alt+F2, lg, Extensions) and there are no related errors of course; I am wondering if that could be because I have set permissions on all dirs/files within my home as go-rwx?

  • yes, dnf no longer can locate this extension in repos, but that is not a big deal as I expected this to be rather installed via e.g.o. as I did before

  • the openweather extension has been installed via e.g.o. with no issues in the very same environment, but unfortunately it shows less precise results for my area; yes, FF does have the Gnome Shell Integration plugin installed and the e.g.o. site (both https and http) are added to the list of allowed sites for installing add-ons in the FF

  • yes, I do have /usr/lib64/libgweather-3.so.6.5.1 installed

Let me know if you need some more information.

@galexrry galexrry changed the title Cannot be installed in Gnome 3.22.1 (F25) Cannot be installed in Gnome 3.22.2 (F25) Dec 23, 2016
@ferdnyc
Copy link

ferdnyc commented Dec 23, 2016

Thanks, that's a lot of good info. This seems the most significant...

  • no installation via e.g.o. but the slider remains in the "on" position as opposed to Explicit the dependencies on the extensions.gnome.org page #193
  • there are neither any files of this extension added to ~/.local/share/gnome-shell/extensions nor this app appears in the gnome-shell-extension-prefs or in the gnome Looking Glass

Clearly, e.g.o is not installing the extension, at all; that's a problem with the install process, which individual extensions have no control over, not with the extension itself.

Doesn't mean we can't help debug the problem, though.

First off, if you have e.g.o whitelisted for installing addons at the "Warn me when sites try to install add-ons" Exceptions list in Firefox's preferences, you should remove it. That only controls access to installing Firefox add-ons, which e.g.o will never need to do (the Firefox plug-in is supplied as part of Gnome Shell), and since it's a site that hosts user-uploaded content there's the possibility (though only a slight one) that permission could be abused.

When I asked "Are you sure you have the GNOME Shell Integration Firefox plugin Allowed to run on the site?" I was referring to the per-site plugin execution blocking, which is managed from the URLbar. If you have the plugin set to the default "Ask to Activate" status in the addons manager (you should, setting it to "Always Activate" is unwise as that would allow it to run on sites other than e.g.o — again, security risk) then you have to give it permission to run the first time you visit e.g.o.

if it isn't running then e.g.o would give you a giant red box at the top of every page, so it's unlikely that's the issue. But, regardless, if the plugin's working properly then the Lego-piece icon in the URLbar will appear when you visit e.g.o and you can click that to manage the plugin's permission for that site.
screenshot from 2016-12-23 15-30-35

"Allow and Remember" lets the plugin operate, at which point the choices change to "Block Plugin" and "Continue Allowing". If the plugin's Allowed and functioning then everything should be OK there, and you should be able to install extensions.

The one question from my previous response that I don't think you addressed was, can you install other extensions from e.g.o? Pick a random one, any one, and try installing it. If that works, then I'm really at a loss; as I said, individual extensions have no control over the install process, it should be identical for every extension. At worst a broken extension would install and fail to activate, but it would still install. ...Whereas if installing another extension doesn't work, then that definitely points to a general problem with the e.g.o install process.

There might be output from the install process that could shed some light on things. That goes into the user journal now, and journalctl --user -e will let you view the most recent 1000 lines starting from the bottom. After upgrading another extension from e.g.o, mine contained this:

Dec 23 15:09:28 teevey org.gnome.Shell.desktop[1995]: Archive:  /tmp/7TPNSY.shell-extension.zip
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/Makefile
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/prefs.js
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/gpl-2.0.txt
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/screenshots/before.png
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:    creating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/schemas/
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/screenshots/tray2.png
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/screenshots/tray1.png
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/convenience.js
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/README.md
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/screenshots/reload.png
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/extension.js
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/screenshots/tweak.png
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/schemas/gschemas.compiled
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/screenshots/after.png
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/schemas/org.gnome.shell.extensions.topicons.gschema.xml
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:   inflating: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/screenshots/install.png
Dec 23 15:09:29 teevey org.gnome.Shell.desktop[1995]:  extracting: /home/ferd/.local/share/gnome-shell/extensions/[email protected]/metadata.json

Installation problems could be a permissions issue, though it's unlikely. I have permissions along the entire path $HOME/.local/share/gnome-shell/ set 0700 and there's no issue. .../extensions is set 0775 probably just because it was automatically created, but the install process is run by the gnome-shell process itself which runs as your user so I can't see how non-user permissions would matter. There's slightly more possibility that it could be an SELinux issue — you might check (with ls -lZd) that the context of .local/share/gnome-shell/extensions is set to unconfined_u:object_r:data_home_t:s0... or just run restorecon -Rv $HOME/.local to fix up any incorrect contexts.

If all that fails to reveal a solution, I would recommend filing a bug report with e.g.o as recommended in their troubleshooting info — but ignore that noise about wanting a copy of ~/.xsession-errors, that file hasn't existed in years. Anything of note you find in the journal would be the most useful substitute.

@galexrry
Copy link
Author

@ferdnyc Quick answer now (will respond with more details later):

  • as I mentioned, the openweather extension was successfully installed in the very same environment via e.g.o. right after I failed to install gnome-shell-extension-weather. That extension works well since its installation, and I see the files in ~/.local/...
  • I looked at the journalctl output - there is nothing related to this gnome installation
  • until I add extensions.gnome.org to the whitelist, I see the warning "We cannot detect a running copy of GNOME..." and there is no slider available even after I click on "Allow Now"; after I modify the whitelist, this warning disappears and I can use the "Off/On" slider with your extension
  • strangely, with the modified whitelist I no longer able to find your extension via e.g.o. when I search by the keyword "weather": only Openweather appears in the search result! Cannot explain why this happens, but the workaround is to find your extension in e.g.o. before modifying the whitelist, then reload the page to have the warning disappear and the slider to appear :-)

@ferdnyc
Copy link

ferdnyc commented Dec 23, 2016

as I mentioned, the openweather extension was successfully installed in the very same environment via e.g.o. right after I failed to install gnome-shell-extension-weather. That extension works well since its installation, and I see the files in ~/.local/...

Yeah, sorry, I misread that as you having installed it from the Fedora repo.

strangely, with the modified whitelist I no longer able to find your extension via e.g.o. when I search by the keyword "weather": only Openweather appears in the search result!

Aha, that would be explained by the version-compatibility checking, which e.g.o is apparently doing even though it's not enforced by Gnome Shell. After you run the search, if you change "Compatible with" in the upper right corner to "All versions" instead of "Current version", Neroth's extension will appear. (Weirdly, it appears grayed out, while another previously-hidden extension, Astro Weather, appears but not grayed out. The intricacies of e.g.o remain a mystery to me.)

When the plugin isn't running, e.g.o of course can't detect your current Gnome Shell version, and displays all results by defailt.

Sounds like @Neroth needs to update the version of the extension on e.g.o with compatibility for 3.22 in order to make it visible, even though the Shell isn't enforcing strict version compatibility anymore.

@galexrry
Copy link
Author

@ferdnyc Back to your penultimate message:

  • yes the extension is not being installed, and the problem pertains rather to this particular extension because the Openweather extension was installed (and now I re-installed it again after removal) without hiccup
  • thanks for your advise about the whitelist and the lego icon - it is handy; I will not touch whitelist in the FF any more; but it was cleared in my settings every time when I close FF
  • the GNOME Shell Integration Plugin runs in my environment, and I allow it manually for every extension it tries to install by clicking on "Allow Now" as shown in your screenshot
  • there are absolutely no new log records I was able to find in journactl related to the installation steps with this extension, and there are no errors in the Gnome Looking Glass either

The bottom line: given that the other extension is installed with no problems, it is unlikely that the common installation process on e.g.o. may be the cause of this issue; it rather some corner case related to my particular environment and for some reason affects installation of this extension. There is a slim chance that this may be a Firefox related issue unless you and others successfully used FF for your installation without problems. I have FF 50.1.0.

I am not sure if it does make sense for me to log a bug with the e.g.o. at least now because you (and other folks) were able to install the extension on F25. Not a big deal for me now though, I can live with Openweather. But if you need more info, please let me know, I will be happy to assist you in debugging this case.

Thanks!

@ferdnyc
Copy link

ferdnyc commented Dec 24, 2016

Oh, apologies, I wasn't clear enough in my last response. After completely removing the Weather by Neroth extension from my system, I was able to reproduce the problem you've reported — it's not just you. I should've been that drastic and just tried that earlier, apologies for having you chasing ghosts.

The key to discovering where the problem lies was the "Compatible with" switch in the extension listing, which revealed that the Weather extension is both not listed as compatible with Gnome Shell 3.22, and grayed out for reasons that don't seem to be adequately documented.

This isn't an issue specific to the Weather extension, but rather to all of the grayed-out extensions on e.g.o, all of which will silentely fail to install from the site. Even though other "incompatible" extensions, like Astro Weather, CAN be installed.

I definitely consider this a bug with the extensions site. (Even if it isn't supposed to be able to install "incompatible" extensions, it should display a message to that effect, not pretend to install them and silently fail. That's buggy regardless.) So much so, in fact, that I've just filed one: https://bugzilla.gnome.org/show_bug.cgi?id=776460

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants