Bug#950926: ember: Using packages to install "snap" packages is not a correct use of the packaging system

2022-08-27 Thread Tobias Frost
User: tobi-rm-proposals@d.o
Usertags: rm-proposal

(FTR, I also don't think that snap/flatpak/appimage should be pulled by an 
Debian package)

I agree with Olek, Ember (and friends) were always hard to keep floating in 
Debian, so I can
understand Oleks' sentiment about maybe using snap… However this can be done by 
the
users themselves, there is no need to have a debian package doing so.

So, maybe, it is time to let ember go and remove it from Debian?

It has no reverse dependencies, so it is save to do so.

I'll reassign this bug to ftp.debian.org in 3 months, if there is no veto
in this bug.

-- 
tobi (Doing bug triaging on games team packages)


signature.asc
Description: PGP signature


Bug#950926: ember: Using packages to install "snap" packages is not a correct use of the packaging system

2022-09-09 Thread Olek Wojnar
Control: tag -1 = confirmed

Thanks for reminding me about this bug, tobi! I guess a lot has been
happening since February of 2020


On 8/27/22 08:11, Tobias Frost wrote:
> User: tobi-rm-proposals@d.o
> Usertags: rm-proposal
> 
> (FTR, I also don't think that snap/flatpak/appimage should be pulled by an 
> Debian package)

So I did think about what Manuel said although life and world events
distracted me from replying. I am now of the opinion that although I had
the best of intentions and (at the time) logical reasons for doing so,
packaging a Snap is an inherently bad and problematic concept. So, I
agree with you. :)

> I agree with Olek, Ember (and friends) were always hard to keep floating in 
> Debian, so I can
> understand Oleks' sentiment about maybe using snap… However this can be done 
> by the
> users themselves, there is no need to have a debian package doing so.

Yes... But I got S much great packaging experience from that! ;) In
all seriousness: yes, I agree, a user can install a Snap and it's a
waste of time for package maintainers to do so.

> So, maybe, it is time to let ember go and remove it from Debian?

I'd really hate to see that happen but if the code isn't in a stable
state soon then I'm not sure there will be much of a choice. I've
reached out to upstream to inquire about the timeline. Depending on that
response, I'll decide how to move forward. The Ember client hasn't seen
a release since November 2019 and the Cyphesis server hasn't been
released since October 2013. A lot has changed since then and neither of
those releases is maintainable at this point.

Either way, I've marked this bug confirmed because I now fundamentally
agree with the issue.

> It has no reverse dependencies, so it is save to do so.
> 
> I'll reassign this bug to ftp.debian.org in 3 months, if there is no veto
> in this bug.

Let's try to figure this out sooner. :)

-Olek


OpenPGP_signature
Description: OpenPGP digital signature


Bug#950926: ember: Using packages to install "snap" packages is not a correct use of the packaging system

2022-09-10 Thread Erik Ogenvik
As the main developer of Worldforge I'm perfectly fine with it being
provided as Snap instead of being part of the Debian base packages.
The way development happens makes it not well suited for Debians focus on
stability. We often need to make changes to the protocol that has changes
to the client and server happening in sync.
The Snap allows us to move more quickly, which suits this specific project.

sincerely Erik Ogenvik

Den lör 10 sep. 2022 kl 02:39 skrev Olek Wojnar :

> Control: tag -1 = confirmed
>
> Thanks for reminding me about this bug, tobi! I guess a lot has been
> happening since February of 2020
>
>
> On 8/27/22 08:11, Tobias Frost wrote:
> > User: tobi-rm-proposals@d.o
> > Usertags: rm-proposal
> >
> > (FTR, I also don't think that snap/flatpak/appimage should be pulled by
> an Debian package)
>
> So I did think about what Manuel said although life and world events
> distracted me from replying. I am now of the opinion that although I had
> the best of intentions and (at the time) logical reasons for doing so,
> packaging a Snap is an inherently bad and problematic concept. So, I
> agree with you. :)
>
> > I agree with Olek, Ember (and friends) were always hard to keep floating
> in Debian, so I can
> > understand Oleks' sentiment about maybe using snap… However this can be
> done by the
> > users themselves, there is no need to have a debian package doing so.
>
> Yes... But I got S much great packaging experience from that! ;) In
> all seriousness: yes, I agree, a user can install a Snap and it's a
> waste of time for package maintainers to do so.
>
> > So, maybe, it is time to let ember go and remove it from Debian?
>
> I'd really hate to see that happen but if the code isn't in a stable
> state soon then I'm not sure there will be much of a choice. I've
> reached out to upstream to inquire about the timeline. Depending on that
> response, I'll decide how to move forward. The Ember client hasn't seen
> a release since November 2019 and the Cyphesis server hasn't been
> released since October 2013. A lot has changed since then and neither of
> those releases is maintainable at this point.
>
> Either way, I've marked this bug confirmed because I now fundamentally
> agree with the issue.
>
> > It has no reverse dependencies, so it is save to do so.
> >
> > I'll reassign this bug to ftp.debian.org in 3 months, if there is no
> veto
> > in this bug.
>
> Let's try to figure this out sooner. :)
>
> -Olek
>


Bug#950926: ember: Using packages to install "snap" packages is not a correct use of the packaging system

2020-02-08 Thread Manuel A. Fernandez Montecelo
Package: ember
Version: 0.8.0~snap1
Severity: serious

Hello,

I don't think taht using this package as an empty shell and a gateway to install
the "snap" package [1] is a valid use of the packaging system.

Otherwise, if this was an accepted practice, we could start to have many
packages which are just a way to install snap packages, which can easily contain
security vulnerabilities and install not free software, specially if the version
is not restricted in some way.  And this not generally expected by users of
Debian, IMO.

If users want to install Snap packages, they can always do so on their own.

So please reconsider and either package the game properly or drop this package
altogether.


[1] https://salsa.debian.org/games-team/ember/blob/master/debian/ember.preinst


Cheers.
--
Manuel A. Fernandez Montecelo 



Bug#950926: ember: Using packages to install "snap" packages is not a correct use of the packaging system

2020-02-08 Thread Olek Wojnar
Hi Manuel,

Thanks for your bug report and thanks for your thoughts. However, at
this point I'm inclined to respectfully disagree with you on this subject.

On 2/8/20 8:44 AM, Manuel A. Fernandez Montecelo wrote:
> Package: ember
> Version: 0.8.0~snap1
> Severity: serious
>
> Hello,
>
> I don't think taht using this package as an empty shell and a gateway to 
> install
> the "snap" package [1] is a valid use of the packaging system.

Not only is this use listed in Policy [1] under the contrib section
(where I'm moving the two packages I've done this with, pending NEW) but
a number of other packages (in contrib) do exactly the same thing. Flash
[2] being the obvious example. I'd also like to point out that I asked
about this course of action back in December [3] and no one raised any
concerns. So it's a little frustrating that after I've done all the work
to convert the packages I'm now getting feedback saying I shouldn't have
done it.

> Otherwise, if this was an accepted practice, we could start to have many
> packages which are just a way to install snap packages, which can easily 
> contain
> security vulnerabilities and install not free software, specially if the 
> version
> is not restricted in some way.  And this not generally expected by users of
> Debian, IMO.

This is a fair concern. However, I think that users *do* expect this of
packages in contrib. Pabs made a good argument in a different bug report
about this issue and convinced me. I'm going with that.

However, I do agree that this shouldn't be *normal*. Ideally, we should
host source code and build the packages ourselves, in main. In this
case, I see this as a gap-filler while the upstream packages go through
a period of extreme instability. Upstream is very small and this process
is likely to last more than a year. I structured the transitional
packages, and annotated a comment in d/copyright, explaining that this
is a temporary step to have a usable package (for Debian users who opt
in to contrib) until upstream stabilizes and I can package it in main again.

> If users want to install Snap packages, they can always do so on their own.

They can. I'm just trying to provide a transition path that will
eventually lead to the main packaging of the updated upstream software.

> So please reconsider and either package the game properly or drop this package
> altogether.

FWIW, I am planning to temporarily drop the supporting Worldforge
libraries [1] since they will just be taking up space in the archive and
they'll get pulled back in to a user's system once Ember and Cyphesis
return to main.

Again, I want to clarify that I am open to inputs (and I appreciate
yours) and I'm happy to continue the discussion if you have additional
points that you think I should consider. But I really wish that these
concerns had been brought up back in December...

> [1] https://salsa.debian.org/games-team/ember/blob/master/debian/ember.preinst

-Olek

[1]
https://www.debian.org/doc/debian-policy/ch-archive.html#the-contrib-archive-area
[2] https://packages.debian.org/sid/flashplugin-nonfree
[3] https://lists.debian.org/debian-devel-games/2019/12/msg0.html



signature.asc
Description: OpenPGP digital signature


Bug#950926: ember: Using packages to install "snap" packages is not a correct use of the packaging system

2020-02-09 Thread Manuel A. Fernandez Montecelo
Hello Olek,

Em sáb., 8 de fev. de 2020 às 18:25, Olek Wojnar  escreveu:
> > I don't think taht using this package as an empty shell and a gateway to 
> > install
> > the "snap" package [1] is a valid use of the packaging system.
>
> Not only is this use listed in Policy [1] under the contrib section
> (where I'm moving the two packages I've done this with, pending NEW) but
> a number of other packages (in contrib) do exactly the same thing. Flash
> [2] being the obvious example. I'd also like to point out that I asked
> about this course of action back in December [3] and no one raised any
> concerns. So it's a little frustrating that after I've done all the work
> to convert the packages I'm now getting feedback saying I shouldn't have
> done it.

I am sorry that you made the work and noone told you about this.
Maybe I am in the minority and most people don't see it this way,
don't know.

I simply stumbled upon the package by chance, and I didn't have time
to follow mailing lists regularly in the last months, and I think that
I haven't read debian-games for years.


But to the point about the installation of snaps and "flash", as far
as I see it, there are two fundamental differences:

1) For flash, and I guess that most packages of contrib, the items
that are download are checksummed [1], so we know what the script
installs, and we have to manually approve new versions.  If the
download is known to be compromised, users will not install new
versions (and we can do removal of existing versions in some cases, if
we only find that it's a security problem after users install it, at
least in some cases).

  
[1]https://sources.debian.org/src/flashplugin-nonfree/1:3.7/update-flashplugin-nonfree/

This does not happen with the installation of these snaps, as far as I
can see -- it will take whatever is there, the latest version, no
checksumming or pinning to known-good versions, and there's no
guarantee that if tomorrow someone takes over that package and
installs malware, that users installing it from Debian will not use
it.  Once users install the snaps, it's completely outside of Debian's
control, I think.


2) These kind of methods are done for special packages like firmware,
very popular apps like flash (at the time), etc, or *data* packages
from games.  It's a "known evil" thing to do, still we do it because
it's somewhat needed by many users -- nowadays you can easily live
without flash, but it was not so easy in the web 10 years ago; it's
impossible to install some computers without firmware, etc.

But I don't see the need to do it with a very marginal package like
Ember.  Either people are happy to run the older version from 2016, or
if not, they would have already updated it by some means, like maybe
using themselves the snap package.

So I don't think that it's worth promoting things that are a bit
against the philosophy of Debian/traditional distros, like snaps
(adding layers of overhead and duplication, and potentially security
vulnerabilities) due to a package with very low popcon and which use
is not critical, it's just a game.


3) Aside from that, I would be more OK with it if, before installing,
there were clear indications of what's going on for people that might
be unaware of what Snaps are, and that fail to notice the change in
description of the package.

As I understand it, there's no indication that you'll install a snap
package if you just do "apt-get upgrade".  That's the part that I
think it's more troubling, that you can end up installing snap
packages without even noticing -- maybe because you happened to have
"ember" installed in the past and you wanted to check it up one time
long ago, and are not even using it very actively in the last
months/years.

If you have something like a debconf question asking users if they
want to install the snap package, or invoke snap and you decide if you
want to install it or not without the configuration of the package
failing if you reject, etc, then I think that it's much more
reasonable.


> > Otherwise, if this was an accepted practice, we could start to have many
> > packages which are just a way to install snap packages, which can easily 
> > contain
> > security vulnerabilities and install not free software, specially if the 
> > version
> > is not restricted in some way.  And this not generally expected by users of
> > Debian, IMO.
>
> This is a fair concern. However, I think that users *do* expect this of
> packages in contrib. Pabs made a good argument in a different bug report
> about this issue and convinced me. I'm going with that.

This and cyphesis are the only packages that depend on snapd, which
are not app-managers from GNOME/KDE and the like, so I don't think
that users expect it? These are among the first cases that we do
something like this, unless we do it also with flatpaks or similar and
I failed to notice (which can easily happen, I have not been very
active lately on many fronts).

For games, most of the cases that I kno

Bug#950926: ember: Using packages to install "snap" packages is not a correct use of the packaging system

2020-02-09 Thread Olek Wojnar
Hmm.. some good points to ponder. Thanks! Let me think on that a little
and I'll respond more fully.

-Olek

On 2/9/20 5:12 PM, Manuel A. Fernandez Montecelo wrote:
> Hello Olek,
>
> Em sáb., 8 de fev. de 2020 às 18:25, Olek Wojnar  escreveu:
>>> I don't think taht using this package as an empty shell and a gateway to 
>>> install
>>> the "snap" package [1] is a valid use of the packaging system.
>> Not only is this use listed in Policy [1] under the contrib section
>> (where I'm moving the two packages I've done this with, pending NEW) but
>> a number of other packages (in contrib) do exactly the same thing. Flash
>> [2] being the obvious example. I'd also like to point out that I asked
>> about this course of action back in December [3] and no one raised any
>> concerns. So it's a little frustrating that after I've done all the work
>> to convert the packages I'm now getting feedback saying I shouldn't have
>> done it.
> I am sorry that you made the work and noone told you about this.
> Maybe I am in the minority and most people don't see it this way,
> don't know.
>
> I simply stumbled upon the package by chance, and I didn't have time
> to follow mailing lists regularly in the last months, and I think that
> I haven't read debian-games for years.
>
>
> But to the point about the installation of snaps and "flash", as far
> as I see it, there are two fundamental differences:
>
> 1) For flash, and I guess that most packages of contrib, the items
> that are download are checksummed [1], so we know what the script
> installs, and we have to manually approve new versions.  If the
> download is known to be compromised, users will not install new
> versions (and we can do removal of existing versions in some cases, if
> we only find that it's a security problem after users install it, at
> least in some cases).
>
>   
> [1]https://sources.debian.org/src/flashplugin-nonfree/1:3.7/update-flashplugin-nonfree/
>
> This does not happen with the installation of these snaps, as far as I
> can see -- it will take whatever is there, the latest version, no
> checksumming or pinning to known-good versions, and there's no
> guarantee that if tomorrow someone takes over that package and
> installs malware, that users installing it from Debian will not use
> it.  Once users install the snaps, it's completely outside of Debian's
> control, I think.
>
>
> 2) These kind of methods are done for special packages like firmware,
> very popular apps like flash (at the time), etc, or *data* packages
> from games.  It's a "known evil" thing to do, still we do it because
> it's somewhat needed by many users -- nowadays you can easily live
> without flash, but it was not so easy in the web 10 years ago; it's
> impossible to install some computers without firmware, etc.
>
> But I don't see the need to do it with a very marginal package like
> Ember.  Either people are happy to run the older version from 2016, or
> if not, they would have already updated it by some means, like maybe
> using themselves the snap package.
>
> So I don't think that it's worth promoting things that are a bit
> against the philosophy of Debian/traditional distros, like snaps
> (adding layers of overhead and duplication, and potentially security
> vulnerabilities) due to a package with very low popcon and which use
> is not critical, it's just a game.
>
>
> 3) Aside from that, I would be more OK with it if, before installing,
> there were clear indications of what's going on for people that might
> be unaware of what Snaps are, and that fail to notice the change in
> description of the package.
>
> As I understand it, there's no indication that you'll install a snap
> package if you just do "apt-get upgrade".  That's the part that I
> think it's more troubling, that you can end up installing snap
> packages without even noticing -- maybe because you happened to have
> "ember" installed in the past and you wanted to check it up one time
> long ago, and are not even using it very actively in the last
> months/years.
>
> If you have something like a debconf question asking users if they
> want to install the snap package, or invoke snap and you decide if you
> want to install it or not without the configuration of the package
> failing if you reject, etc, then I think that it's much more
> reasonable.
>
>
>>> Otherwise, if this was an accepted practice, we could start to have many
>>> packages which are just a way to install snap packages, which can easily 
>>> contain
>>> security vulnerabilities and install not free software, specially if the 
>>> version
>>> is not restricted in some way.  And this not generally expected by users of
>>> Debian, IMO.
>> This is a fair concern. However, I think that users *do* expect this of
>> packages in contrib. Pabs made a good argument in a different bug report
>> about this issue and convinced me. I'm going with that.
> This and cyphesis are the only packages that depend on snapd, which
> are not app-managers from GNOME/KDE

Bug#950926: ember: Using packages to install "snap" packages is not a correct use of the packaging system

2020-02-25 Thread Jonathan Dowland

On Sun, Feb 09, 2020 at 11:12:48PM +0100, Manuel A. Fernandez Montecelo wrote:

2) These kind of methods are done for special packages like firmware,
very popular apps like flash (at the time), etc, or *data* packages
from games.


We have game-data-packager (gdp, which I originally wrote) for
situations like this. When you generate a .deb (as gdb does) containing
the data and install that, you get an Installed-Size which reflects the
actual disk usage of the package; you know that data is removed again
when you remove the package; you can express package inter-dependencies
properly, etc.

The ember package, at present

• claims to have an Installed-Size of 35.8 kB but will install
  177+MiB in pre-inst
• Does not clean that up again on package removal
• Doesn't handle "snap install" failing, silently completes package
  installation
• Supplies a .desktop file referencing Exec=ember but does not provide
  any ember binary (even as a route into the snap) in $PATH

It would be interesting to see whether game-data-packager could consume
data from snaps, and avoid all these pitfalls. I believe smcv was
interested in something similar for flatpaks (that might have been
installing into flatpaks, rather than consuming from them)


--
👱🏻  Jonathan Dowland
🔗   https://jmtd.net



Bug#950926: ember: Using packages to install "snap" packages is not a correct use of the packaging system

2020-02-25 Thread Simon McVittie
On Tue, 25 Feb 2020 at 15:02:21 +, Jonathan Dowland wrote:
> It would be interesting to see whether game-data-packager could consume
> data from snaps, and avoid all these pitfalls.

That would remove the sandboxing and known-runtime-libraries properties
of the snap packaging system. I wouldn't recommend that. The apt/dpkg
packaging system is set up for a single, system-wide dependency
tree. That's great for binaries that were built within the scope of
that dependency tree, but unsuitable for binaries that were built with
different assumptions (unless the binaries were deliberately built to
have minimal dependencies, like the few proprietary binary-only games
supported by game-data-packager, or with no assumptions at all, like the
data for Free game engines that is the majority of what game-data-packager
deals with).

If what you want is to install Snap packages, then I would suggest
installing Snap packages (perhaps through something like GNOME Software,
which knows about multiple ways to install software). Not every piece
of software has to be delivered as a .deb.

If ember is no longer feasible to package as a .deb in Debian, then only
releasing new versions of it as Snap packages (or Flatpak or AppImage
or whatever) is perfectly reasonable; but in that case, I don't think
a .deb package that installs those other-packaging-system packages from
third-party repositories is a great upgrade path.

> I believe smcv was
> interested in something similar for flatpaks (that might have been
> installing into flatpaks, rather than consuming from them)

Off-topic for Ember:

Yes, this is the other way round. I wanted to be able to turn games
(particularly proprietary games like Unreal 1) into Flatpak packages as
an alternative to .deb (and .rpm and Arch Linux packages, which should
now mostly work too). Some of the same reasoning would apply equally to
turning those games into Snap packages, although I think Flatpak is a
better fit, so I don't plan to work on that myself.

Why I wanted to do that:

- Flatpak apps are, or can be configured to be, sandboxed (placed in a
  limited container without access to, for example, ~/.ssh). Snap has the
  same idea, although the details are different (Flatpak is likely to be
  a lot better-confined on systems that don't have Ubuntu's non-upstream
  kernel patches for better AppArmor).

- Flatpak apps run on a set of libraries that don't have to match the ones
  on the host system, so we can run proprietary games from the distant past
  in (for example) a Debian-10-based container that has SDL 1, GTK 2, etc.
  without having to keep those libraries in the development branch of Debian
  forever. I think Snap can do the same thing, but the details of how it
  achieves it are rather different.

- Flatpak apps can be installed "for just me" (in ~/.local/share)
  unprivileged, or system-wide (into /var/lib) with appropriate privileges.
  I don't think Snap apps can be installed per-user without exercising
  privileges.

- Identical files in Flatpak apps are automatically deduplicated by
  content (this is relevant if you have overlapping games installed,
  like Unreal, Unreal Gold and Unreal Tournament). I don't think Snap
  does this.

smcv



Processed: Re: Bug#950926: ember: Using packages to install "snap" packages is not a correct use of the packaging system

2022-09-09 Thread Debian Bug Tracking System
Processing control commands:

> tag -1 = confirmed
Bug #950926 [ember] ember: Using packages to install "snap" packages is not a 
correct use of the packaging system
Added tag(s) confirmed; removed tag(s) moreinfo.

-- 
950926: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=950926
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems