On Tue, 2017-11-07 at 11:05 +0000, Allan Day wrote:
> Bastien Nocera <[email protected]> wrote:
> ...
> > I don't think that applications such as Calendar, Contacts, or
> > finding
> > and reminding apps should be removed from the requirements for a
> > well-
> > rounded, default desktop. How they're installed is a technical
> > question
> > that's not relevant to the fact that they're needed.
> 
> That's certainly true. I'm mostly coming it this from a direction of
> a) trying to figure out what the user experience will look like on a
> flatpak-based system and b) having done some digging, feeling
> somewhat dissatisfied with the current use of
> <mandatory_for_desktop>. Particular issues that I see:
> 
> 1. <mandatory_for_desktop> is only respected by Software or other
> "app centers", so you get different behaviour with the command line,
> which lets you install and remove apps that Software doesn't. This
> adds complexity, makes testing difficult, and introduces bugs. It
> also creates ambiguity; I don't think anyone is really sure what the
> experience is supposed to be.

I think that's actually a benefit. rpm/dpkg don't know about Flatpak,
and vice-versa. But Software knows both, and I should be able to remove
the distro provided version of the software if I've installed the same
"mandatory" app using Flatpak (they should have the same ID, otherwise
it's a bug).

Installing Flatpaks and removing RPMs is how some of us are slowly
edging towards Flatpak, dog-fooding Flatpak itself, the infrastructure
around it such as portals, and the software itself if we use nightlies.

> 2. In Software, <mandatory_for_desktop> is used to hide apps that
> belong to other desktops. In part I think this is motivated by the
> desire not to end up with identical apps (because stock apps tend to
> use the icon theme and often have identical names). However, it has
> the side-effect that applications that could easily be installed
> can't be. This is because it equates something being essential to an
> environment as meaning that it shouldn't be available outside of it,
> which I don't think is always the case - we might well say that
> Photos is essential to GNOME 3, but that doesn't necessarily mean
> that it shouldn't be installable on a non-GNOME system.

That seems like a problem in the appstream format which needs to be
fixed, and possibly have better replacements. Incidentally, do you
rename Photos to GNOME Photos when the current desktop isn't GNOME?

> 3. I guess I just find it strange that this mechanism is so
> decentralised. Can anyone use <mandatory_for_desktop>? Who makes the
> decisions about what's included and what isn't? How is that monitored
> and managed?

If the lack of centralisation is a problem, we can move that "you can't
uninstall this" list to gnome-desktop for the GNOME desktop. It would
make it easier for the release team to maintain, and curate.

> Relying an the ostree/flatpak split to determine which apps are
> removable has some advantages in relation to this - it would remove a
> layer of configuration, you'd get a consistent experience and GUI
> tools would be transparent in how they operate, it would be the OS
> builder who decides what forms part of the product, and projects
> could decide what to make available as standalone apps simply by
> making them available as flatpaks or not.
> 
> Maybe there are issues with this approach - and I certainly take the
> point about updates - but maybe it's also illustrative of what we
> ought to be aiming for.

I don't think that the underlying technology should be used as the
safeguard for whether or not something can be uninstalled.

As a case in point, most core applications on iOS, the mail client for
example, are shipped and updated with the OS (the "ostree" in your
example above), but can be "removed" (hidden actually). The mail client
is core, can't be removed physically, but can be removed from view.

So the OS technology is always going to allow us to remove/hide. How to
add back is probably relevant.

I think the short answer to this thread is that we need use something
other than mandatory_for_desktop.
_______________________________________________
desktop-devel-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/desktop-devel-list

Reply via email to