Simplenote-electron: Distributing for Linux primarily through snap would solve a lot of maintainability problems for you

Created on 3 Feb 2019  Â·  10Comments  Â·  Source: Automattic/simplenote-electron

As I was writing issue #1190, something occurred to me: switching to only distributing simple note via Snap (and probably also tar balls) for Linux would solve a large number of maintainability problems for you, and wouldn't have any big downsides.

Snappy is a Linux package manager that takes "snap" programs (as opposed to .deb or .rpm). The whole system is typically referred to as snap because snappy is a terrible name. Snaps are containerized with all dependencies (which solves as many problems as it sounds), self update and you distribute them by pushing snaps to the snap universe (a repo of snap packages for all distributions, because since they're containerized everything distro agnostic). Virtually every Linux distro, even the weird ones, support snap these days, because it's use has become so widespread- a lot of major programs are starting to primarily distribute through snap. Basically everyone has had to use it at least once. The snap universe is even natively integrated with the Ubuntu app store (and several other distros official app store) for scale, improving your discoverability and generally improving the user experience

Making this switch would intrinsically resolve virtually all Linux install/dependency/weird distro problems that seem happen for you every other release or so, and which I've personally filed many bug reports about. It would also have all the benefits of creating a repo so that people don't have to keep clicking to update, without the large amount of work of using repos for every distribution.

Doing this would immediately close the following bugs:

1184, #1178 , #1179, #1006, #917, 626, #362, #1190 and probably a several more that I can't quickly fine, would've prevented like 20 bugs I've seen you fix from ever happening, and would generally reduce your workload and eliminate lots of ways for bugs to happen or things to go wrong, improving maintainability.

While appimage or flat pack are capable of serving similar roles, and may have technical superiorities in one way or another, none of them have close to the adoption of snap. It's also worth noting that snap has no real technical problems for a package like simple note. The only big problem with snap is that releasing programs that have a very large number of Linux dependencies that would normally be installed via apt or similar, (things like Lyx or Gimp), you get giant file sizes. This isn't doesn't impact simple note.

While some people would obviously complain about this, there's no one who legitimately couldn't use it, it's frankly a lot more idiot proof thank installing a .deb file, it would dramatically improve the update process for people on Linux, and it would decrease the potential for future bugs and make maintaining things a fair bit easier. You may want to still offer the tar ball distribution for Linux, at least for awhile, for people who are doing truly bizarre things, and to make the transition process easier.

The other thing is Linux remains a relatively small user base compared to other OSes, so I think simplifying where you can without sacrificing technical features where you can on Linux and focusing your time on app-wide features that a many more people will use makes a lot of sense.

[OS] linux

Most helpful comment

Also, if you read my post I literally said snap and still keeping a tarball around for less common cases.

Actually, what you implied was that anyone that didn't want to/couldn't use Snap was doing something bizarre: "You may want to still offer the tar ball distribution for Linux, at least for awhile, for people who are doing truly bizarre things"

Could you please explain why you think snap is terrible?

  1. It needs a separate daemon running to actually function.
  2. That daemon is incredibly power and resource hungry (or it was c. Nov 2018 when I tried it)
  3. That daemon is unnecessary when AppImage works just as well, achieves the same goals, and does it without requiring a separate daemon.
  4. Almost every single time I've come across someone advocating for Snap, it's always been with the pretense that they know better than you, that Snap is the clear solution despite other solutions being just as good and arguably simpler, and that anyone who disagrees is doing something bizarre and is enough of an edge case to effectively ignore.

I don't have a problem with Snap as an option for other people, but I don't want anything to do with it.

All 10 comments

Linux user here.

Please no.

Snap is a gigantic PITA. AppImage is a much better solution if one must be chosen. It just works without having to have a separate daemon running somewhere, so I'm not sure why adoption really matters there - they work everywhere.

If Simplenote is distributed only through Snap, I will not use it. It's just not worth it.

Could you please explain why you think snap is terrible?
On Fri, Feb 15, 2019 at 4:25 PM Cameron Eagans notifications@github.com
wrote:

Linux user here.

Please no.

Snap is a gigantic PITA. AppImage is a much better solution if one must be
chosen. It just works without having to have a separate daemon running
somewhere, so I'm not sure why adoption really matters there - they work
everywhere.

If Simplenote is distributed only through Snap, I will not use it. It's
just not worth it.

—
You are receiving this because you authored the thread.

Reply to this email directly, view it on GitHub
https://github.com/Automattic/simplenote-electron/issues/1191#issuecomment-464205805,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AShd7GjKXHvL0kBfs836QgrYiwnlEaJwks5vNyXBgaJpZM4af8jP
.

>

Thank you for your time,
Justin Terry

Also, if you read my post I literally said snap and still keeping a tarball
around for less common cases.
On Fri, Feb 15, 2019 at 4:45 PM Justin Terry justinkterry@gmail.com wrote:

Could you please explain why you think snap is terrible?
On Fri, Feb 15, 2019 at 4:25 PM Cameron Eagans notifications@github.com
wrote:

Linux user here.

Please no.

Snap is a gigantic PITA. AppImage is a much better solution if one must
be chosen. It just works without having to have a separate daemon running
somewhere, so I'm not sure why adoption really matters there - they work
everywhere.

If Simplenote is distributed only through Snap, I will not use it. It's
just not worth it.

—
You are receiving this because you authored the thread.

Reply to this email directly, view it on GitHub
https://github.com/Automattic/simplenote-electron/issues/1191#issuecomment-464205805,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AShd7GjKXHvL0kBfs836QgrYiwnlEaJwks5vNyXBgaJpZM4af8jP
.

>

Thank you for your time,
Justin Terry

>

Thank you for your time,
Justin Terry

Also, if you read my post I literally said snap and still keeping a tarball around for less common cases.

Actually, what you implied was that anyone that didn't want to/couldn't use Snap was doing something bizarre: "You may want to still offer the tar ball distribution for Linux, at least for awhile, for people who are doing truly bizarre things"

Could you please explain why you think snap is terrible?

  1. It needs a separate daemon running to actually function.
  2. That daemon is incredibly power and resource hungry (or it was c. Nov 2018 when I tried it)
  3. That daemon is unnecessary when AppImage works just as well, achieves the same goals, and does it without requiring a separate daemon.
  4. Almost every single time I've come across someone advocating for Snap, it's always been with the pretense that they know better than you, that Snap is the clear solution despite other solutions being just as good and arguably simpler, and that anyone who disagrees is doing something bizarre and is enough of an edge case to effectively ignore.

I don't have a problem with Snap as an option for other people, but I don't want anything to do with it.

+1 for appimage. AppImage is simpler and works most of the time consistently.

I also suggest to integrate update information for AppImages so that updating to the next version becomes easy. AppImageUpdate is the tool that facilitates this sort of update. Basically it updates the local copy of appimage with the updated one from remote location using zsync2, which only fetches the changes between two image.

Actually, what you implied was that anyone that didn't want to/couldn't use Snap was doing something bizarre

Yep. That's exactly what he and most of us imply when you oppose things like snap so passionately just because you don't wanna get out of your mancave. Let us have easy to use UX in linux world and we don't take anything from you. You can keep using tarball, AppImage or that IBM mainframe from 80s. Whatever floats your boat. We don't have a problem here.

@nmabhinandan I listed reasons for opposing it. AppImage is equal or better usability without the drawbacks. Why can't you advocate for a particular technology without attacking someone for not wanting it based on clearly defined reasons?

As I said, I don't have a problem with _other people_ using snap, but I have zero interest in using it myself. If that's the primary distribution mechanism for Simplenote, I literally will not be able to use Simplenote. I fly internationally a lot and battery life is a big concern for me. Between Electron _and_ snap, my laptop wouldn't last long enough.

@cweagans SimpleNote AppImage is already there and nobody is asking them to remove it.

Except for OP.

switching to only distributing simple note via Snap (and probably also tar balls) for Linux would solve a large number of maintainability problems for you, and wouldn't have any big downsides.

Thanks! I’ve added this to our feature requests!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

danielh-official picture danielh-official  Â·  4Comments

rbreaves picture rbreaves  Â·  3Comments

gubrist picture gubrist  Â·  4Comments

tavilla61 picture tavilla61  Â·  4Comments

hindsholm picture hindsholm  Â·  4Comments