10 ms·
> The only 'con' is the pushing of Snap packages. I don't get why they're doing that. Snaps have mostly created problems for me, like they don't scale when oth
by Jean-Philipe 6y ago
> The only 'con' is the pushing of Snap packages.
I don't get why they're doing that. Snaps have mostly created problems for me, like they don't scale when other apps do, or the styling is off, or they don't show up properly in the software manager. The snap daemon on one of my laptops always blocks the shutdown by 30 seconds. Generally a rather confusing experience.
- turbinerneiter 6y agoI'm on Fedora where the equivalent is called Flathub/Flatpaks. There are definitely some rough edges still, but the possible upsides are amazing for me. It makes it way easier for a developer to release for different Linux-flavors. The applications get sandboxed and there is much less risk to mess up your system. Stuff like permission, similar to Android/iOS becomes possible. There for sure is problems to: it makes it way easier for a lazy developer to ship ancient libraries without security fixes, the "packages", now images, are much larger and the quality check of the packager gets sidestepped. And, as always when you try something new, it gets worse before it gets better. But I think the idea is good and I hope for the best.
- mcny 6y agoMy understanding is snap and flatpak are not equivalent at all because snap is more permissive whereas flatpak is sandboxed. Specifically, it is not possible to do gpg signed commits from flatpak (e.g., jetbrains idea) without tweaks upstream. I agree with the overarching idea though: it gets worse before it gets better. See wayland and how we still can’t capture display in obs. I am a little torn on this. Should the onus to “fix” be on jetbrains and obs? I personally think no where possible. Replacements should be drop in without effort or at least with clear guidance and not too much effort on behalf of individual applications.
- stubish 6y agoSnaps are sandboxed. They can be granted extra privileges, such as access to $HOME, camera, bluetooth etc. Some of these interfaces such as $HOME can be gained automatically by any snap. Others need to be granted by Canonical (to automatically grant access on install), or manually granted by the user post install. There is also a 'classic' mode where the app is unsandboxed, which again needs to be granted by Canonical and in addition requires explicit acceptance by the user when being installed.
- beagle3 6y ago"classic" snaps are not sandboxed, and you have to acknowledge that when installing them. "modern" snaps are sandboxed, and you can change their permissions in the Settings/Control-Panel app. You might argue with the choice of permission granularity, but it IS there.
- twic 6y agoThe way i see it, software which is truly part of the distribution can and should still be packaged the traditional way. But snap/flatpak creates a standard way to install software which is not really part of the distribution. It replaces all the random tarballs and unpacking things in /opt that you occasionally had to do when installing third-party software. It makes sense for VS Code, IntelliJ, Slack, Chrome, etc, to be in snap/flatpak. It doesn't make sense for open-source software built with traditional tools by the distribution maintainers themselves to be in snap/flatpak. I note that on Ubuntu 18, snapd itself is distributed as a snap, which seems like a very poor idea to me.
- mceachen 6y ago> snapd itself is distributed as a snap, which seems like a very poor idea to me I took this as a "vote of confidence" that snap could self-host snapd. Hosting via snap means they can push updates and not have to wait for users to `apt update; apt upgrade`, as snaps auto-upgrade without user intervention. I don't know of other benefits, though.
- tannhaeuser 6y ago> I'm on Fedora where the equivalent is called Flathub/Flatpaks. There are definitely some rough edges still, but the possible upsides are amazing for me. Except Ubuntu and Fedora each use their own container format. The entire reason we're in this place is that RedHat went with .rpm and Debian/Ubuntu with .deb. There's no-one winning in this format war, and no-one is winning by putting yet another layer of abstraction either. Like with Docker, the problem that container app images are trying to solve (that of incompatible 3rd party shared libs) cannot be solved by containers, because the reason for shared libs to exist in the first place is so that eg. security vulnerabilites in old shared lib versions can be transparently fixed by having the OS install newer libs; but (as you say yourself) with containerized apps this is impossible. You might as well ship statically linked apps instead.
- Izkata 6y ago> The applications get sandboxed and there is much less risk to mess up your system. Apparently snaps are also sandboxed between versions of the same application. My very first experience of snaps was Vuze getting updated overnight and all my configuration and torrents just vanising. I ended up rolling back the version (to restore everything that disappeared) and, upon discovering snaps are designed to never be able to lock a version number, shot it in the head by killing the daemon and chmod'ing its executables to not be executable. I assume Vuze's snap was misconfigured, but it really turned me off of them and I've since decided to stick to nix instead of snap whenever I can.
- FeepingCreature 6y agoGoogle says that snap app configuration should be copied forward to new versions. Sounds like either a Vuze bug or a snap package bug.
- zyga 6y agoIt's still work in progress but snaps genuinely make packaging easier. There are rough edges, especially on the desktop, but those are all being worked on, in collaboration with flatpak actually. It will take a while but in the future it will not be any worse at runtime and it will be much, much easier to package and run apps across releases and OSes
- cies 6y agoUbuntu had the calculator as a snap! What's the idea with that? It suddenly took 2 secs to load and uses load of memory... I dont care packaging got easier. I care for a smooth working system I can understand and instrument, and that does not hog resources.
- alpaca128 6y agoSnap and flatpak are great fallback methods. I first try installing software natively, but sometimes it's not available/compatible and you really need it to work, so flatpak is great to just get it running at all. I'm not a fan of using it as the default though, and flatpak isn't immune to issues either, for example I use a flatpak package which regularly can't be updated for months because of some incorrect metadata if the error message can be believed. I still think it's a good step forward for increasing compatibility especially across different Linux distributions.
- cies 6y agoThey may be fallback methods, but snap is for sure not "great" (not a finished product as other have pointed out). As you also understood, snap is sadly not promoted as a fallback method. This stuff is pushed with corporate power. Not adopted because great great fallback method it provides. The compatibility is also balkanized for the start with the flatpack/snap split. Pfff, what a mess.
- readwind 6y agoAnd some times, on some systems, the calculator got all transparent, and unusable, so, I left Ubuntu after that. Granted I was on LTS'es almost all of the time, so, this might be highly circumstantial and subjective. But I've been there as you apparently also have. I hope snap improves for the best of all, it seems amateurish to push snap-apps, at their then-current state, in LTS releases. I left basically after Ubuntu 14.04, and even that, 14.04, was a let-down from 12.04, and so on. In my experiences.
- viraptor 6y ago> Snaps have mostly created problems for me I think this is the wrong way to look at it. You still have access to the same packages as before without snap. If you're using snap, that means you either explicitly chose it, or the package is not available in the repo. The choice here isn't between a package or a snap most of the time. It's between: not using the app, packaging it on your own, or using a snap which is not perfect.
- jamieweb 6y agoBut certain packages are migrating to Snap-only, e.g. Chromium. I understand why they're doing this (primarily to save on build times), but the way they've gone about it (using a transitional Apt package that just installs the Snap) is messy and inconsistent. If I type `apt install` then I want an Apt package. Under no circumstances should this install a Snap.
- readwind 6y agoThat's f'd up. Some people say the default settings for sandboxing [in respects of basic snap defaults or setups] etc are basically disabled some places. Hope that works. Bet the skin looks great. Most snaps I used long ago looked like a un-made-up pig to be frankly. I don't hate on snap, I obviously love it, or either I'd not wasted the time. Let's hope it improves. All improvements are great, obviously.
- viraptor 6y ago> using a transitional Apt package that just installs the Snap You need a migration path from an existing package. It's also nice not to invalidate every post on the web which describes the installation. Chrome is special... it already doesn't really belong in the repository and was handled in a special way. It bundles tens of libraries in its binary without relying on the system/repo deps. It's actually more natural for it to live with all the other "include all deps" applications.
- rlpb 6y agoThat's because Chromium is hell to keep updated in a stable distribution release apt archive. Upstream adds new dependencies that aren't packaged in the distribution's stable releases, for example. It's not practical to do anything but a whole load of bundling (in debs) to solve the problem. This then isn't much different to a snap any more anyway, and packaging a snap takes a fraction of the effort. Anyone is welcome to maintain chromium as an apt package for your distribution release of choice, and you're welcome to point apt to that repository instead. The reason it's not happening is that it's increasingly impractical to do while also maintaining Ubuntu's quality standard for debs.
- Taniwha 6y agoYeah, snaps are pretty much a disaster if you don't have a simple home directory, put some directories on different volumes with a symbolic link (because they are so large and you don't have room), or use /tmp as a temporary directory to save files into and chrome becomes useless (and fails quietly without explaining why) - I must admit if they haven't fixed this stuff I'm likely jumping ship
- SCdF 6y ago> The snap daemon on one of my laptops always blocks the shutdown by 30 seconds Oh THAT'S why that happens sometimes. I never bothered debugging it.
- Sir_Substance 6y agoSame, I'd taken to just holding down the power button, mystery solved I guess.
- paines 6y ago>The snap daemon on one of my laptops always blocks the shutdown by 30 seconds. I used Spotify, VS Code and some PS2 emulator from Snap and haven't seen this behaviour. Which snap package does that for you ?
- Jean-Philipe 6y agoI don't think it's from a specific package. It's just the Daemon. I didn't really dig into why or what, don't have the time, and don't have the energy. I just get the message on the console when shutting down my laptop. Maybe it's updating something? Who knows.
- VMG 6y agoThese "statically linked" packages can solve certain problems very well. Packaging or installing Steam for non-Ubuntu platforms can be very tricky. I'm using the Steam flatpack version on Arch and it saved me a ton of hassle.