And thanks to Merlijn for bing blunt enough to ask the questions a lot of
us were thinking about snaps! :)

On Wed, Mar 1, 2017 at 9:27 AM, Merlijn Sebrechts <
merlijn.sebrec...@gmail.com> wrote:

> Thanks for the thorough explanation!
>
> 2017-03-01 7:07 GMT+01:00 John Meinel <j...@arbash-meinel.com>:
>
>> ...
>>>
>>
>>
>>> I'm having a hard time wrapping my head around classic mode. Classic
>>> mode means unconfined, right?
>>>
>>> What are the reasons for this switch? Is the snap still cross-distro?
>>> Will the snap have some expectations about the system outside of the snap?
>>> What are the advantages of an unconfined snap over a deb package?
>>>
>>
>> To get a deb package, you have to generally add something like a PPA,
>> which means you now get anything they want to give you from that PPA. Core
>> libraries, a new kernel, whatever. Once you've accepted the terms of a PPA,
>> you're trusting that person not to hose you over.
>>
>> While classic snaps still have access to the rest of the filesystem, they
>> 1) Still include their dependencies inside their containment, rather than
>> producing other packages that you must also install.
>> 2) Can't muck with things outside of that (so saying 'snap install juju
>> --classic' won't be able to change package kernel)
>> 3) Give you all the nice release cadence, etc of other snaps. Mainly
>> things like "I'm willing to run beta", "I only want to run candidate+" etc.
>> 4) Are definitely no-less secure than deb packages.
>> 5) Can get your software into snaps immediately, and you can transition
>> into more confinement as you can make it work.
>> 6) Snaps apply transactionally. An update can't partially apply half of
>> the update and then fail (if it does, the whole update is rolled back).
>>
>>
>>>
>>> This isn't strictly Juju related, but maybe you can shed some light on
>>> this. I don't follow the project close enough to understand this feature.
>>> Confinement was key to the goals of snaps, ever since the click days.. Why
>>> the 180 now?
>>>
>>
>> Confinement is great for a lot of things, but not everything. Vim
>> confined to not be able to read your .bashrc file isn't a very good vim.
>> Juju doesn't need access to everything, so there is still room to grow
>> support in Snap confinement to limit you to the right subset (we do want to
>> read .ssh/id_rsa* and .local/share/juju, we don't need to read
>> .mozilla/firefox/...)
>>
>>
>>>
>>> I would think that if an application like Juju can't work in a confined
>>> snap, then snaps have an inherent flaw that needs to be fixed instead of
>>> having the workaround of the classic mode. Paraphrasing the story I've
>>> heard so many times: Snaps enable devs to push code directly to users
>>> without having to go through the long review process of the distro.
>>> Security and stability concerns are countered with confinement. Snaps
>>> enable devs to package once, run anywhere. Confinement + frameworks makes
>>> this possible...
>>>
>>> Snaps without confinement just seems like someone just brought .debs
>>> into the 21 century, and that seems very underwhelming to me. What am I
>>> missing here?
>>>
>>>
>> The distribution model and the dependency model are a lot nicer.
>> Transactional updates to the packages is also *extremely* nice.
>>
>> John
>> =:->
>>
>>
>>>
>>> Kind regards
>>> Merlijn
>>>
>>> 2017-02-28 20:52 GMT+01:00 Nicholas Skaggs <
>>> nicholas.ska...@canonical.com>:
>>>
>>>> Those of you subscribed to a snap channel may have noticed some nice
>>>> changes that happened with 2.1 release. The juju snap package now utilizes
>>>> classic mode, and all channels (including stable) are now active. You
>>>> should expect feature parity (including things like bash completion) with
>>>> the debian package of juju. In addition, the juju snap also shares
>>>> environments with the debian installed version. This means your current
>>>> models and credentials are utilized.
>>>>
>>>> I would encourage those that haven't yet tried out the snap to do so
>>>> and provide feedback. I think you'll find it a quick and easy way to get
>>>> juju.
>>>>
>>>> snap install juju --classic
>>>>
>>>> Those of you who want to build your own snap to share will also find it
>>>> much easier. By default, running snapcraft on the juju tree will build a
>>>> snap using your local tree and will bundle the needed agent. The
>>>> snapcraft.yaml also points out how easily you can grab a specific branch,
>>>> commit or tag to snap up. Sharing your own version of the juju client with
>>>> the world is as simple as "snapcraft, snapcraft release".
>>>>
>>>> You'll find the snap related things in the snap folder in the juju git
>>>> tree. As always PRs welcome!
>>>>
>>>> Nicholas
>>>>
>>>> --
>>>> Juju mailing list
>>>> Juju@lists.ubuntu.com
>>>> Modify settings or unsubscribe at: https://lists.ubuntu.com/mailm
>>>> an/listinfo/juju
>>>>
>>>
>>>
>>> --
>>> Juju mailing list
>>> Juju@lists.ubuntu.com
>>> Modify settings or unsubscribe at: https://lists.ubuntu.com/mailm
>>> an/listinfo/juju
>>>
>>>
>>
>
> --
> Juju mailing list
> Juju@lists.ubuntu.com
> Modify settings or unsubscribe at: https://lists.ubuntu.com/
> mailman/listinfo/juju
>
>


-- 
Tom Barber
CTO Spicule LTD
t...@spicule.co.uk

http://spicule.co.uk

@spiculeim <http://twitter.com/spiculeim>

Schedule a meeting with me <http://meetme.so/spicule>

GB: +44(0)5603641316
US: +18448141689

<https://leanpub.com/juju-cookbook>
-- 
Juju mailing list
Juju@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/juju

Reply via email to