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 644002 - Support adding websites as applications
Support adding websites as applications
Status: RESOLVED FIXED
Product: epiphany
Classification: Core
Component: General
unspecified
Other Mac OS
: Normal normal
: ---
Assigned To: Epiphany Maintainers
Epiphany Maintainers
Depends on:
Blocks: 557346
 
 
Reported: 2011-03-06 05:32 UTC by Bastien Nocera
Modified: 2011-09-03 21:25 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
For reference a desktop file generated by chrome (268 bytes, text/plain)
2011-03-11 15:43 UTC, Alexandre Mazari
Details

Description Bastien Nocera 2011-03-06 05:32:45 UTC
Chrome and Chromium allow that, but with a number of problems.

- epiphany should use the higher resolution icons when available (such as the ones used for iOS devices, clipping/modifying them appropriately)
- such launched applications should show up separately in GNOME Shell (different WM class, etc.)
- I do not think there is a need to segregate cookies and other settings from the main application, but menus and other such distractions should probably be kept to a minimum
Comment 1 Bastien Nocera 2011-03-06 05:35:01 UTC
Note that there should also be a way to manage and edit those "applications" from within ephy, as there are no easy ways to remove apps from the shell.
Comment 2 Alexandre Mazari 2011-03-09 18:38:25 UTC
Here is how I'd do it, any advice appreciated

- have a simple launcher (basically a WebView or a an Embed)
- create a .desktop file for each application, starting the launcher with the right URL
- make a small web app editor outside of ephy, creating/modifying the .desktop and prefetching the icon
- have an ephy extension starting the editor with the current page url.

I will work on that post-3.0.
Comment 3 Alexandre Mazari 2011-03-09 20:45:04 UTC
Regarding instal/deletion, i would be nice to generate a rpm/deb for the web app.

But I am not sure we can depend on rpm-packager or whatever-debian-uses
Comment 4 Bastien Nocera 2011-03-11 00:42:53 UTC
(In reply to comment #2)
> Here is how I'd do it, any advice appreciated
> 
> - have a simple launcher (basically a WebView or a an Embed)

Nope, it should be Epiphany itself.

> - create a .desktop file for each application, starting the launcher with the
> right URL

Right, it would also need to use a different wmclass (thus application name), so it can appear as a separate application to GNOME Shell.

> - make a small web app editor outside of ephy, creating/modifying the .desktop
> and prefetching the icon

Again, it should be in epiphany, probably in core, or at least an extension shipped with the core.

> - have an ephy extension starting the editor with the current page url.

Don't think it's necessary. In "stand-alone" epiphany, you could have Edit -> Web applications (if any were actually created), and you could remove the .desktop file and the cached icon there.

> I will work on that post-3.0.

It's also listed as a Summer Of Code idea, though I'm not sure it would take a whole summer, probably worth merging with something else. http://live.gnome.org/action/edit/SummerOfCode2011/Ideas
Comment 5 Bastien Nocera 2011-03-11 00:59:17 UTC
(In reply to comment #3)
> Regarding instal/deletion, i would be nice to generate a rpm/deb for the web
> app.
> 
> But I am not sure we can depend on rpm-packager or whatever-debian-uses

Given how it would be integrated, it would be easy enough to write a small script to do that after the fact, but it shouldn't be one of the requirements (eg. the point isn't to create apps for installation system-wide).
Comment 6 Alexandre Mazari 2011-03-11 10:57:52 UTC
(In reply to comment #4)
> (In reply to comment #2)
> > Here is how I'd do it, any advice appreciated
> >
> > - have a simple launcher (basically a WebView or a an Embed)
> 
> Nope, it should be Epiphany itself.

Why ? I really think webapps should run in there own silo, without ephy ui, bookmark support and with their own private cache/cookie storage.
Also that would make possible stuff we'd prefer to avoid in ephy for security reasons: system integration with (future) g-s jump lists, notifications, dash icons badges etc

I actually like the Fluid.app approach on osx (http://fluidapp.com/)

> 
> > - create a .desktop file for each application, starting the launcher with the
> > right URL
> 
> Right, it would also need to use a different wmclass (thus application name), so
> it can appear as a separate application to GNOME Shell.

So lets make them actual separate applications :)

> 
> > - make a small web app editor outside of ephy, creating/modifying the .desktop
> > and prefetching the icon
> 
> Again, it should be in epiphany, probably in core, or at least an extension
> shipped with the core.

Why ?

> 
> > - have an ephy extension starting the editor with the current page url.
> 
> Don't think it's necessary. In "stand-alone" epiphany, you could have Edit ->
> Web applications (if any were actually created), and you could remove the
> .desktop file and the cached icon there.
> 
> > I will work on that post-3.0.
> 
> It's also listed as a Summer Of Code idea, though I'm not sure it would take a
> whole summer, probably worth merging with something else.
> http://live.gnome.org/action/edit/SummerOfCode2011/Ideas

Thanks for the hint.
Comment 7 Alexandre Mazari 2011-03-11 11:12:38 UTC
> Don't think it's necessary. In "stand-alone" epiphany, you could have Edit ->
> Web applications (if any were actually created), and you could remove the
> .desktop file and the cached icon there.

> Given how it would be integrated, it would be easy enough to write a small
> script to do that after the fact, but it shouldn't be one of the requirements
> (eg. the point isn't to create apps for installation system-wide).

Not sure we want to create yet another paralel applications installation system.

We could create user-local rpm db as found in
http://www.nordugrid.org/documents/rpm_for_everybody.html#4

Opinion ?
Comment 8 Xan Lopez 2011-03-11 12:21:46 UTC
There's a ton of code we have in Ephy (and that we want in a web app "visor") that we don't want to neither fork nor reimplement, so I agree with Bastien that a "Web app mode" is clearly the way to go. It can hide all the unneeded chrome and use a per-app profile for increased security.
Comment 9 Alexandre Mazari 2011-03-11 15:03:10 UTC
(In reply to comment #8)
> There's a ton of code we have in Ephy (and that we want in a web app "visor")
> that we don't want to neither fork nor reimplement, so I agree with Bastien that
> a "Web app mode" is clearly the way to go. It can hide all the unneeded chrome
> and use a per-app profile for increased security.

Wouldn't an EphyEmbed be sufficient ? That'd allow not to have to patch ephy
everywhere for such a visor mode, adding codepathes to disabled several behaviour.

Chrome seems to do just that, if you look closely, an "app" window it doesn't uses chrome's decorations but mutter's. That might indicate they have a specific window type for that purpose.
Comment 10 Alexandre Mazari 2011-03-11 15:43:00 UTC
Created attachment 183153 [details]
For reference a desktop file generated by chrome
Comment 11 Gustavo Noronha (kov) 2011-03-16 23:16:54 UTC
(In reply to comment #7)
> Not sure we want to create yet another paralel applications installation
> system.
> 
> We could create user-local rpm db as found in
> http://www.nordugrid.org/documents/rpm_for_everybody.html#4
> 
> Opinion ?

No, no, no, no, please =) this is not an application instalation system, it's just a way to conveniently integrate web sites that are more like applications with the desktop environment; there's no good reason for this to be system-wide, and there's no reason why epiphany itself can't manage the desktop files and icons for web apps. No point in complicating the design and making it not work for non-rpm adopters.
Comment 12 Alexandre Mazari 2011-03-17 09:06:17 UTC
Hi Kov,

Thanks for your comment

> No, no, no, no, please =) this is not an application instalation system, it's
> just a way to conveniently integrate web sites that are more like applications
> with the desktop environment;

Well, it is actually a kind of application installation system. We want user to be able to install/remove web applications. Making them 1st class citizen in the desktop and blending the difference they have with "native" applications. Managing them using the standard tools provided by their distro seems a step in that direction IMHO. The input from the design/interaction team might be interestiing.
Handling them in ephy would indeed create a parallel installation system.
But that might not be a day 1 priority, we can do the imple way firt then argue later about that :)

> there's no good reason for this to be system-wide,
> and there's no reason why epiphany itself can't manage the desktop files and
> icons for web apps.

Indeed we don't want the user to install the web apps system-wide, avoiding the need to sudo/ConsoleKit and poluting the rpm/deb database with stuff like fb, gmail, twitter...
Thus the proposition of a local db, which seems possible for both rpm and deb based systems. 

> No point in complicating the design and making it not work
> for non-rpm adopters.

I took rpm as a reference because that is what I know best, but clearly we need to do the same for deb distributions if we I succeed convincing you it is worth :)
Comment 13 Xan Lopez 2011-09-03 21:25:55 UTC
So, yeah, we do this now. Since 3.1.90.