[url=http://meincmagazine.com/civis/viewtopic.php?p=31373171#p31373171:1xf9p1v3 said:stormcrash[/url]":1xf9p1v3][url=http://meincmagazine.com/civis/viewtopic.php?p=31373067#p31373067:1xf9p1v3 said:DCRoss[/url]":1xf9p1v3][url=http://meincmagazine.com/civis/viewtopic.php?p=31372941#p31372941:1xf9p1v3 said:stormcrash[/url]":1xf9p1v3]Holy Crap! A unified package manager being adopted by nearly every major Linux Distro! Linux as a desktop platform just got a lot more viable to develop/distribute for. The days of .deb vs .rpm could soon be at an end
And the days of .dsnap vs .rsnap will be coming instead.
Did you miss the part where it said the changes per distro are made in snapd and not in the packages themselves? So no, there will not be .dsnap and .rsnap, just .snap and a tailored daemon per platform that the package makers don't have to think about
Except, of course, for the TENS OF MILLIONS of us who "enjoy" bandwidth of less than 5Mbits. (At most 0.5MB per second.)the whole dependency bundling trend (single jar apps included) is enabled by not caring whether your app is 10MB or 100MB.
each library is only installed once?
[url=http://meincmagazine.com/civis/viewtopic.php?p=31372907#p31372907:10o91p4o said:The_Barbarian[/url]":10o91p4o]>and could replace your package manager
No. Fuck off
[url=http://meincmagazine.com/civis/viewtopic.php?p=31373089#p31373089:nzvbi9sx said:Blinken[/url]":nzvbi9sx]Slackware 4 life! /s
I'm curious how that is going to work. A paint program like Krita is going to need to access image files all over the filesystem. Same thing with a browser, I don't want to be told I can only save downloaded files in one particular directory.Snaps by default don't have the same access to the file system that Linux applications typically have, he said. For example, a browser delivered in a snap package would be unable to read a user's SSH keys, because snap-based applications are given their own private space and can only read and write in that area.
[url=http://meincmagazine.com/civis/viewtopic.php?p=31378319#p31378319:3igo4nug said:Gooberslot[/url]":3igo4nug]I'm curious how that is going to work. A paint program like Krita is going to need to access image files all over the filesystem. Same thing with a browser, I don't want to be told I can only save downloaded files in one particular directory.Snaps by default don't have the same access to the file system that Linux applications typically have, he said. For example, a browser delivered in a snap package would be unable to read a user's SSH keys, because snap-based applications are given their own private space and can only read and write in that area.
[url=http://meincmagazine.com/civis/viewtopic.php?p=31377107#p31377107:15gstie3 said:berrardo[/url]":15gstie3]each library is only installed once?
The way I understand it, each library is installed *once per app*. If 15 apps use it, 15 app.snaps contain the library.
[url=http://meincmagazine.com/civis/viewtopic.php?p=31376945#p31376945:3kz8oxkb said:h3nrch[/url]":3kz8oxkb][url=http://meincmagazine.com/civis/viewtopic.php?p=31373171#p31373171:3kz8oxkb said:stormcrash[/url]":3kz8oxkb][url=http://meincmagazine.com/civis/viewtopic.php?p=31373067#p31373067:3kz8oxkb said:DCRoss[/url]":3kz8oxkb][url=http://meincmagazine.com/civis/viewtopic.php?p=31372941#p31372941:3kz8oxkb said:stormcrash[/url]":3kz8oxkb]Holy Crap! A unified package manager being adopted by nearly every major Linux Distro! Linux as a desktop platform just got a lot more viable to develop/distribute for. The days of .deb vs .rpm could soon be at an end
And the days of .dsnap vs .rsnap will be coming instead.
Did you miss the part where it said the changes per distro are made in snapd and not in the packages themselves? So no, there will not be .dsnap and .rsnap, just .snap and a tailored daemon per platform that the package makers don't have to think about
So snapd is really a dependency manager and .snap is the common API? In the short term it might be attractive but it's not hard to see fragmentation occur as cloud specific distros dominate. Canonical should have included AWS, GCS, and Azure first.
[url=http://meincmagazine.com/civis/viewtopic.php?p=31379053#p31379053:2mwy55yc said:raxx7[/url]":2mwy55yc][url=http://meincmagazine.com/civis/viewtopic.php?p=31376945#p31376945:2mwy55yc said:h3nrch[/url]":2mwy55yc][url=http://meincmagazine.com/civis/viewtopic.php?p=31373171#p31373171:2mwy55yc said:stormcrash[/url]":2mwy55yc][url=http://meincmagazine.com/civis/viewtopic.php?p=31373067#p31373067:2mwy55yc said:DCRoss[/url]":2mwy55yc][url=http://meincmagazine.com/civis/viewtopic.php?p=31372941#p31372941:2mwy55yc said:stormcrash[/url]":2mwy55yc]Holy Crap! A unified package manager being adopted by nearly every major Linux Distro! Linux as a desktop platform just got a lot more viable to develop/distribute for. The days of .deb vs .rpm could soon be at an end
And the days of .dsnap vs .rsnap will be coming instead.
Did you miss the part where it said the changes per distro are made in snapd and not in the packages themselves? So no, there will not be .dsnap and .rsnap, just .snap and a tailored daemon per platform that the package makers don't have to think about
So snapd is really a dependency manager and .snap is the common API? In the short term it might be attractive but it's not hard to see fragmentation occur as cloud specific distros dominate. Canonical should have included AWS, GCS, and Azure first.
Err... no.
Let me try and make a bit of sense of what snap/flatpak (and to a degree, docker) are.
Currently it's hard/impossible to pack an application in such a way it works across all Linux distributions, much less while using a proper packaging system (deb/atp, rpm/yum, etc).
The fault does not lie with the kernel, as Linus is actually very strict on keeping backward compatibility on the interface between the kernel and the applications.
The fault lies with the fact different distributions use different packaging systems, use different conventions as for where some files are, have different sets of libraries available, different sets of services, etc.
Enter containers, which have been available in Linux for a bit now.
A container is like chroot on steroids: it's an environment where you run programs, with as much or as little access to the base system as required.
Or you can think of it as a step down from a virtual machine, except a container requires much less resources.
Containers can be used for a ton of things.
You can put an application binary and it's required libraries in a directory, launch it inside a container and the application will thing it has the machine all for itself (can even give it it's own IP address).
Or you can actually use a container to run one Linux distribution inside another.
Possibilities are endless.
One of them is distribution of applications independent of Linux distribution.
The basic idea is simple: each application runs on it's own clean sheet box, with access to standard features of the Linux kernel and standard features provided by snapd.
Everything else is packaged with the application. Snap apps works across distributions because snap apps don't have even have direct access to the main system.
Snap apps also depend on snap frameworks.
Snap frameworks allow snap apps to share resources and to work together. But like snap apps, snap frameworks don't have direct access to the main system, so snap frameworks are also distribution independent.
Well, at least in theory, of course. If your snap app depends on Mir, it will only run on Ubuntu.![]()
[url=http://meincmagazine.com/civis/viewtopic.php?p=31378409#p31378409:2hnchxb6 said:rupucis[/url]":2hnchxb6]If snap packages were meant for Ubuntu phones, why does my Ubuntu phone get updates in the form of system images and why does using apt-get on it break stock apps?
I'm not saying it's the OS's fault, but that's the standard convention. The same is true of Linux, the system is more convention than requirement. But the different conventions have different advantages and disadvantages.[url=http://meincmagazine.com/civis/viewtopic.php?p=31374695#p31374695:1aqmwtve said:lewax00[/url]":1aqmwtve]
Windows doesn't have a great solution either, their solution is basically just have a copy of every library for every application that needs it (with a few exceptions, like the MSVC++ redistributables...but that's done using it's own convention that nothing else seems to follow so it's a special case). Linux's system allows sharing, but makes it more difficult for multiple versions of the same library.
At this risk of nitpicking, this isn't so much a limitation of Windows as much as standard practice for developers. You could check for DLLs in a global folder and choose whether or not to install your own based on version (or, if you're working with assemblies, check if there a matching assembly in the global assembly cache). It's just that it's far more common for developers to package required DLLs with an application.
Back on topic, I'm mixed on this. On one hand, I think this is a boon for teams that package their own programs (instead of cases where the distro does the packaging), as it reduces the number of packages they need to maintain.
On the other hand, I feel like this is going to create library bloat. For better or worse, one thing shared libraries do on a system is lock the distro to a specific library version (glibc versions are usually locked for each debian release, for example). If you allow developers to choose library versions arbitrarily, then inevitably one developer will use v1.0, one will use v1.1, one will use v1.2, even though they all probably could have compiled against v1.0 without issue.
We'll have to see how much adoption this gets. Personally, I'd rather see a better way to manually update packages than a new package format (yes, this doesn't solve the isolation or maintainer headache, but it would solve the 'waiting for distro update' problem). One thing I've loved in Arch and Slack is how easy it is for me to create an updated package on my own if the one in the distro is out of date, or doesn't have the options I want. Updating a deb manually and repackaging can be challenging.
The difference is that you only have to create one snap package and it will work for all distributions and versions thereof that support the package.[url=http://meincmagazine.com/civis/viewtopic.php?p=31375135#p31375135:ckhdschw said:kgb999[/url]":ckhdschw]
Someone has to make the Snap package. And someone has to keep the package binaries updated to the latest versions. So, as far as that goes, who produces and maintains the binaries? It seems like we end up in the exact same situation - with installable packages likely being maintained by arbitrary third-parties completely distinct from the development teams that are maintaining the code being developed.
It's a nice dream, but I dare you to update glibc on Ubuntu 15.10 (2.21) to 2.23.[url=http://meincmagazine.com/civis/viewtopic.php?p=31381297#p31381297:3hkwu2gq said:lewax00[/url]":3hkwu2gq]
As for versions, generally speaking if the library maintainer does their versioning by generally accepted practices, replacing 1.1 with 1.2 shouldn't break anything, so the app written against 1.1 should still work with 1.2. Version 2.0 won't necessarily be compatible, but then you usually use a different file name. (Again, all convention, not a functional requirement, so it won't necessarily hold if the developers aren't following it.)
[url=http://meincmagazine.com/civis/viewtopic.php?p=31373641#p31373641:180oyftt said:sigma8[/url]":180oyftt]How does it include all of its dependent libraries, remain containerized, and not interfere with other packages' libraries, yet each library is only installed once? Sounds like it's either a) impossible, or b) still a dependency quagmire, where we'll have some centrally located library folder (now, potentially, with many versions symlinked into various "containers").
[url=http://meincmagazine.com/civis/viewtopic.php?p=31381103#p31381103:1llgqyx6 said:AdamWill[/url]":1llgqyx6]
For the same reason updates for Android phones don't come from the app store. The whole *point* here is to draw a line in the sand between the system space on one hand and the app space on the other, as opposed to having no distinction between them (as is the case with traditional distro packaging, where everything's just a package).
So this is yet another instance of Canonical's NIH Syndrome?[url=http://meincmagazine.com/civis/viewtopic.php?p=31376053#p31376053:3azp93za said:AdamWill[/url]":3azp93za][url=http://meincmagazine.com/civis/viewtopic.php?p=31375347#p31375347:3azp93za said:rex86[/url]":3azp93za]The ability to package once and run everywhere, even just for non-graphical programs, sounds like a great idea but somehow I expect RH et al. in a year or two to release their own completely new packaging systems that are fundamentally incompatible with Ubuntu's snap. Just because they can.
It's the Linux problem all over again -- too many men with huge egos. :/
There've been two somewhat-similar systems all along. Looking at the history, they seem to be more or less contemporaneous. The first commit to Flatpak (when it was known as xdg-app) was in December 2014 - see history of https://github.com/flatpak/flatpak . December 2014 also seems to be when Ubuntu announced what was more or less Snappy:
http://www.markshuttleworth.com/archives/1434
this is basically an attempt to re-position Snappy as a 'universal' app package framework, while utterly ignoring Flatpak.
[url=http://meincmagazine.com/civis/viewtopic.php?p=31383993#p31383993:1vpdo0eb said:shadedmagus[/url]":1vpdo0eb]
So this is yet another instance of Canonical's NIH Syndrome?
I don't know anything about either framework, but it sounds like this is what you're saying.
I thought snapd was already shipping in Ubuntu 16.04? Shipping installed by default in a major distribution, seems like a fair point in time to start PR.[url=http://meincmagazine.com/civis/viewtopic.php?p=31385757#p31385757:2fyzb18r said:AdamWill[/url]":2fyzb18r]
I *do* think this PR was a pretty shitty move on Canonical's part: they can hardly claim ignorance of Flatpak, and it is also the case that neither of them is remotely baked yet,
Ubuntu ships lots of half-baked crap. Them shipping it doesn't make it production-ready.[url=http://meincmagazine.com/civis/viewtopic.php?p=31389445#p31389445:17889bbr said:Voo42[/url]":17889bbr]I thought snapd was already shipping in Ubuntu 16.04? Shipping installed by default in a major distribution, seems like a fair point in time to start PR.[url=http://meincmagazine.com/civis/viewtopic.php?p=31385757#p31385757:17889bbr said:AdamWill[/url]":17889bbr]
I *do* think this PR was a pretty shitty move on Canonical's part: they can hardly claim ignorance of Flatpak, and it is also the case that neither of them is remotely baked yet,
Of course not, but it certainly makes it PR-ready.[url=http://meincmagazine.com/civis/viewtopic.php?p=31390197#p31390197:1kvh5y9q said:MosquitoBait[/url]":1kvh5y9q]Ubuntu ships lots of half-baked crap. Them shipping it doesn't make it production-ready.[url=http://meincmagazine.com/civis/viewtopic.php?p=31389445#p31389445:1kvh5y9q said:Voo42[/url]":1kvh5y9q]I thought snapd was already shipping in Ubuntu 16.04? Shipping installed by default in a major distribution, seems like a fair point in time to start PR.[url=http://meincmagazine.com/civis/viewtopic.php?p=31385757#p31385757:1kvh5y9q said:AdamWill[/url]":1kvh5y9q]
I *do* think this PR was a pretty shitty move on Canonical's part: they can hardly claim ignorance of Flatpak, and it is also the case that neither of them is remotely baked yet,
[url=http://meincmagazine.com/civis/viewtopic.php?p=31389445#p31389445:9hsppgis said:Voo42[/url]":9hsppgis]I thought snapd was already shipping in Ubuntu 16.04? Shipping installed by default in a major distribution, seems like a fair point in time to start PR.[url=http://meincmagazine.com/civis/viewtopic.php?p=31385757#p31385757:9hsppgis said:AdamWill[/url]":9hsppgis]
I *do* think this PR was a pretty shitty move on Canonical's part: they can hardly claim ignorance of Flatpak, and it is also the case that neither of them is remotely baked yet,
Clearly you don't do PR. You have to announce the big, flashy, potential future now to get people's attention. Sure, it'll probably turn out to be over-promised and under-delivered, but that's not the PR guy's problem.[url=http://meincmagazine.com/civis/viewtopic.php?p=31389445#p31389445:2xz03ykq said:Voo42[/url]":2xz03ykq]I thought snapd was already shipping in Ubuntu 16.04? Shipping installed by default in a major distribution, seems like a fair point in time to start PR.[url=http://meincmagazine.com/civis/viewtopic.php?p=31385757#p31385757:2xz03ykq said:AdamWill[/url]":2xz03ykq]
I *do* think this PR was a pretty shitty move on Canonical's part: they can hardly claim ignorance of Flatpak, and it is also the case that neither of them is remotely baked yet,
It would be a reasonable time to issue a PR about it being installed in Ubuntu 16.04. It doesn't really justify issuing a PR titled "Universal “snap” packages launch on multiple Linux distros" and with the lead "...enabling a single binary package to work perfectly and securely on any Linux desktop, server, cloud or device"
because it can't remotely do that yet.