1. What is meant by 'transactionally updated' system and how does such an update process different from a 'normally' updated system? What are its advantages/disadvantages?

  2. Are there any other Linux distros following this model apart from Snappy Ubuntu?

  3. Is Ubuntu going to adopt this for all its systems?

  1. A "transactional update" is a kind of update that:

    • is atomic -- while the update is running, your system is perfectly functioning;
    • can be rolled back -- if the upgrade fails or if the newer software version is not compatible with your infrastructure, you can quickly restore the situation as it was before the upgrade.

    With APT, generally only the latest version of a software is available (you can't roll back) and upgrading a package with all its dependencies may leave the system temporarily unusable during the process.

    In addition, Snappy packages are "self-contained", that is: they have no dependencies. All the libraries and the components needed are bounded inside the same Snappy package.

  2. There are no other distros using transactional updates, at least I'm not aware of any.

  3. Ubuntu is not going to replace APT with Snappy anytime soon. The first main problem is that not many Snappy packages are available today.

  • Aren't the other OSs mentioned by Docker also transactional? Atomic and CoreOS? Also, to what extent can mobile OSs like Android or iOS be said to be transactional, given that their apps are also self-contained in terms of dependencies? – Robin Winslow Apr 4 '16 at 10:49
  • Why can't .deb packages be installed transactionally as well? – Ciro Santilli 新疆改造中心996ICU六四事件 Aug 17 '16 at 6:11
  • 2. NixOS seems to meet these criteria. – not-a-user Dec 14 '16 at 9:13
  • That self contained is a very clever idea. You mean when I write a qt5 program and I install it, the snap will contain all the qt5 libraries ? And then someone else write a qt5 program, his snap contain the whole Qt5 empire again ? Fantasctic idea !!! Simply genious. – Tele Jan 17 '17 at 10:48
  • And we should follow this "self-contained" principle with the executables also !!! Guys don't link dynamic libraries anymore because that executable will depend on an external dynamic library. Link statically everything !! The executable will be self-contained. Dynamic libraries are already obsolete in these modern times !! The future is static !!! Wooot !!! – Tele Jan 17 '17 at 10:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.