2 ms·
The main reason why I use Linux for some of my work is reproducibility. A docker image with the same apt packages installed in it will work the same every time.
by fxtentacle 6y ago
The main reason why I use Linux for some of my work is reproducibility. A docker image with the same apt packages installed in it will work the same every time.
Snap breaks this. A snap package can update itself whenever it wants and then you the user are just screwed when things don't work together anymore. So in effect, snap breaks the main benefit of Linux for deployment and the reason why I use Linux in the first place.
Every since they started with ads and affiliate links, I've been sceptical of Ubuntu. But Ubuntu 18 is still used as the base image for many docker deployments. I predict that this will change with Ubuntu 20, exactly because the snaps have made Ubuntu 20 unusable for reliable docker deployments.
I'm glad that mint is stepping in to provide a viable alternative.
- adambyrtek 6y agoI agree in principle, but it's worth pointing out that Snap is designed for end-user applications, so it's unlikely to be used on a server or in a Docker image built for deployment.
- fxtentacle 6y agoI agree in general, but my work involves website automaton, meaning the now empty chromium package. Plus I want my workstation to be as similar as possible to the deployment container to make debugging easier. So if I feel uncomfortable using Ubuntu 20 for my workstation, I should probably switch my deployment docker base image, too.
- adambyrtek 6y agoMakes sense, I personally don't mind snaps for proprietary applications (mostly Slack and Spotify) which are otherwise hard to discover and keep up to date on Linux, but I don't understand why Canonical would force this for Chromium which is already packaged and open source.
- simosx 6y agoHave a look at LXD. It creates system containers that are based on runtimes of most Linux distributions. You can stick to specific versions and are certain that those do not change.
- tomjupiter 6y agoIronically, LXD is a snap package in Ubuntu[0] [0] https://packages.ubuntu.com/focal/lxd https://packages.ubuntu.com/focal/lxd
- type0 6y ago> but it's worth pointing out that Snap is designed for end-user applications They started building it for IoT, whereas Flatpaks were designed for the desktop from beginning.
- simosx 6y agoThere are keys to control when these snap updates will happen, https://snapcraft.io/docs/keeping-snaps-up-to-date https://snapcraft.io/docs/keeping-snaps-up-to-date It is immutable systems that help you with reproducibility. There is no actual change between the snapd setup in Ubuntu 18.04 and Ubuntu 20.04. Where do you get info on unreliable docker deployments? It looks to me that the dislike is emotional in nature.
- fxtentacle 6y agoI use chromium and firefox inside the docker with selenium to automate website tests. So them replacing the chrome apt with snap was exactly what broke my deployment.
- simosx 6y agoSelenium has standalone images with the browser so that you can use them with Docker. It is too fragile to install yourself all the pieces.
- fxtentacle 6y agoI'm actually quite happy with my Ubuntu 18 based homemade docker image. And lucky for me, 18 still has some years of support ahead of it. It's just that I know that I cannot update it to Ubuntu 20 without snap breaking things for me.
- simosx 6y agoIf you ever want to switch, the image is `selenium/standalone-chrome`.
- fxtentacle 6y agoThanks for the hint :)
- L3viathan 6y ago
- dathinab 6y agoHonestly for everything but desktop non dev usage linux containers (e.g. docker) do all the thinks you need and potentially better. Dev Ides and similar are done just fine by normal package managers as they tend to find enough voluntary work and dev tend to not like thinks like auto updates and similar for them as long as they do get updated. Only for 3rd party non developer tools does it make sense like office tooling, music apps and similar. Ironically not necessarily for many games. But for this we have alternatives, like flatpack which seems to be less prone to business bias due to being fully open source with a clear statement against any form of vendor lock-in. Its endorsed by Read Hat, adopted by Clear Linux and the last time I looked at it I remember that I preferred the way they did it over snaps. Also it's not a "Ubuntu thing" but a "for all distributions Linux thing" and seems to be slowly become the standard for "packed/distro decoupled" apps... Also just to become clear I could imagine that at some point Flathub will have some commercialization, but even if it does so and fails it wouldn't kill flatpack (while the Ubuntu app store not being much trustable kinda partially killed snap for desktop users).