this post was submitted on 08 Jul 2023
237 points (94.1% liked)
Linux
48323 readers
712 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Because maintaining snaps is a lot less work for whoever maintains the package, upstream developers, volunteers, or Canonical. If I'm shipping software for Ubuntu and I can use snap, I sure as hell will use it instead of deb.
Flatpaks are so much better than snaps. There's nothing that Snaps can do that Flatpaks can't do better, aside from CLI tools. But CLI tools should just be in Docker anyways.
Flatpak is mainly for packaging desktop apps, whilst snap can update the entire distro (kernel, mesa, system apps, cli). Snap does things Fedora needs rpm-ostree for.
In my opinion docker isn't as useful for cli tools. I need easy access to many little tools, and this results in me having one container with everything. But that doesn't work well with network capture etc. In the end being able to install packages system wide quickly is really useful.
Exactly. Docker is very much not an appropriate tool for "CLI apps."
I use it for pandadoc CLI all the time, it's great.
You could do it of course but it's far from ideal for the purpose of a general case CLI. Unless your script yourself a wrapper, the invocation is fairly verbose. It also leaves containers behind unless you specifically pass
--rm
which isn't default. Then there's the intricacies of the different ways of passing data to it. Oh and let's not forget that unless you setup rootless Docker, or you do something dangerous like adding yourself to thedocker
group, you have to always invoke withsudo
. Therefore I wouldn't say that Docker is an appropriate tool for CLI apps in general. For dependency-bundled CLI apps, Snap doesn't have these gotchas and is therefore much closer to ideal CLI UX.This is so patently false. 🥲 All of it.