After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 778677 - Integrate with Software's extension support
Integrate with Software's extension support
Status: RESOLVED FIXED
Product: gnome-tweak-tool
Classification: Applications
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: GNOME Tweak Tool maintainer(s)
GNOME Tweak Tool maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2017-02-15 12:23 UTC by Florian Müllner
Modified: 2017-06-08 18:13 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
extensions: Reveal details in Software when activated (2.58 KB, patch)
2017-02-15 12:23 UTC, Florian Müllner
committed Details | Review
extensions: Remove install/uninstall support (7.39 KB, patch)
2017-02-15 12:23 UTC, Florian Müllner
committed Details | Review
extensions: Add blank state (2.92 KB, patch)
2017-02-15 12:23 UTC, Florian Müllner
committed Details | Review
extensions: Tweak UI a bit (4.25 KB, patch)
2017-02-15 12:23 UTC, Florian Müllner
committed Details | Review

Description Florian Müllner 2017-02-15 12:23:07 UTC
This implements the updates to the shell extension tweak from https://raw.githubusercontent.com/gnome-design-team/gnome-mockups/master/tweak-tool/tweak-tool-wires.png, minus the general style update. Unfortunately the extension support in Software is still fairly unpolished, so I don't think it makes sense to land those until that is addressed.
Comment 1 Florian Müllner 2017-02-15 12:23:11 UTC
Created attachment 345815 [details] [review]
extensions: Reveal details in Software when activated

As Software gained support for shell extensions, it makes sense to
integrate with that and open the corresponding details page when
activating an extension row.
Comment 2 Florian Müllner 2017-02-15 12:23:17 UTC
Created attachment 345816 [details] [review]
extensions: Remove install/uninstall support

Software now supports searching, installing and removing shell
extensions, so it makes sense to integrate with that rather than
duplicating the functionality, and put the focus on managing and
configuring extensions instead.
Comment 3 Florian Müllner 2017-02-15 12:23:23 UTC
Created attachment 345817 [details] [review]
extensions: Add blank state

Empty lists are hardly useful, so the GNOME guidelines advocate
for special blank states that provide guidance for the user.
For extensions, we can point to Software for finding and installing
extensions.
Comment 4 Florian Müllner 2017-02-15 12:23:29 UTC
Created attachment 345818 [details] [review]
extensions: Tweak UI a bit

Update according to latest mockups:
 - move switch to the end
 - allow descriptions to take up two lines
 - use more generous spacing
Comment 5 Rui Matos 2017-02-15 16:31:56 UTC
Review of attachment 345815 [details] [review]:

seems good
Comment 6 Rui Matos 2017-02-15 16:31:59 UTC
Review of attachment 345816 [details] [review]:

looks fine. you can also remove the imports for zipfile, extract_zip_file and FileChooserButton
Comment 7 Rui Matos 2017-02-15 16:34:21 UTC
Review of attachment 345817 [details] [review]:

seems fine
Comment 8 Rui Matos 2017-02-15 16:39:59 UTC
Review of attachment 345818 [details] [review]:

fine, thanks
Comment 9 Florian Müllner 2017-04-11 01:36:08 UTC
Attachment 345815 [details] pushed as f3ad1f0 - extensions: Reveal details in Software when activated
Attachment 345816 [details] pushed as aecf3f9 - extensions: Remove install/uninstall support
Attachment 345817 [details] pushed as 86cd747 - extensions: Add blank state
Attachment 345818 [details] pushed as 7526070 - extensions: Tweak UI a bit
Comment 10 Jeremy Bicha 2017-04-11 22:06:13 UTC
It looks like GNOME Software 3.22+ also can show the Preferences dialog but it's not that great yet. It shows up as "Launch" and the "Launch" button shows for all extensions even though some do not offer Preferences.

The other big thing still missing from GNOME Software is the ability to enable or disable extensions separately from installing and uninstalling them.

GNOME Software suddenly got better very recently as it now shows all extensions from e.g.o even incompatible ones. Well at least I think that's better. :)
Comment 11 Florian Müllner 2017-04-11 22:30:26 UTC
(In reply to Jeremy Bicha from comment #10)
> It looks like GNOME Software 3.22+ also can show the Preferences dialog but
> it's not that great yet. It shows up as "Launch" and the "Launch" button
> shows for all extensions even though some do not offer Preferences.

Yes, that's a big part of the reason why we didn't land this for 3.24. The plan is to make the button launch the tweak tool if it is installed, or bring up its details page to install it. And come up with an appropriate label of course.


> The other big thing still missing from GNOME Software is the ability to
> enable or disable extensions separately from installing and uninstalling
> them.

I disagree. We discussed this at the core apps hackfest, and we ended up with splitting up responsibilities between software and tweak tool:
The former for searching, installing and removing extensions, the latter for configuring them (including the ability to enable and disable them).
Comment 12 Jeremy Bicha 2017-04-11 22:35:52 UTC
Wow, you're actually strongly recommending that Tweak Tool be installed?

I mean a lot of distros already do that but I thought GNOME didn't like that.
Comment 13 Jeremy Bicha 2017-06-08 01:17:13 UTC
Florian, I've seen a few issues with these commits:

1. The Blank Slate doesn't show up because when there are no extensions installed, Tweak Tool hides the Extensions panel.

2. The links to GNOME Software aren't working for me here on Ubuntu GNOME 17.04. I happen to have GNOME Software 3.24.3 with PackageKit installed (which is not at all the default yet in Ubuntu).

Let me know if you want me to file separate bugs for these issues.

Also, these commits caused Tweak Tool to not start when ran outside GNOME Shell, but I did a quickfix for that before I released Tweak Tool 3.25.2 today.
Comment 14 Florian Müllner 2017-06-08 18:13:40 UTC
(In reply to Jeremy Bicha from comment #13)
> 1. The Blank Slate doesn't show up because when there are no extensions
> installed, Tweak Tool hides the Extensions panel.

Meh, filed bug 783563 for that.


> 2. The links to GNOME Software aren't working for me here on Ubuntu GNOME
> 17.04. I happen to have GNOME Software 3.24.3 with PackageKit installed
> (which is not at all the default yet in Ubuntu).

PackageKit isn't relevant here, this is strictly about Software's shell-extension. I have no idea about the Ubuntu version, but it appears that some things have changed in appstream-glib/software since the patches were written. In fact, the whole 'details' action/command line option behaves rather weird here, so probably best to check with hughsie or kalev before trying to address this in tweak tool ...



> Also, these commits caused Tweak Tool to not start when ran outside GNOME
> Shell, but I did a quickfix for that

That commit looks fishy - I don't see anything gnome-shell related in the guarded block. Maybe somehow python throws an exception if g_desktop_app_info_new() returns None? In that case the problem would be that gnome-software is not installed or cannot be found ...