Modularity in another distros - GoboLinux, NixOS
Posted: 24 Feb 2016, 10:54
Advantages:
GoboLinux
Instead of having parts of a program thrown at /usr/bin, other parts at /etc and yet more parts thrown at /usr/share/something/or/another, each program gets its own directory tree, keeping them all neatly separated and allowing to see everything that's installed in the system and which files belong to which programs in a simple and obvious way.
Each program entry contains all files for that program, stored in a versioned subdirectory.
Multiple versions of a program can be maintained simultaneously. Default programs can be switched by "Current" symlink e.g. "Current -> 2.6.7".
There is no measured performance loss in using symbolic links.
http://gobolinux.org/index.php?page=at_a_glance
http://gobolinux.org/index.php?page=faq
NixOS
Building a new configuration cannot overwrite previous configurations. If the upgrade to a new configuration is interrupted the system will still be in a consistent state: it will either boot in the new configuration or an older version can be selected.
Rollbacks (e.g. from the system boot menu) are a lightweight operation that do not involve files to be restored from copies.
Every user can have a dedicated profile in which they can install packages - different users can have different versions of the same package installed in their respective profiles. If two users install the same version of a package, only one copy will be built or downloaded.
NixOS stores all packages in isolation from each other in the package store. Installed packages are identified by a cryptographic hash of all input used for their build. Changing the build instructions of a package, modifies its hash that will result in a different package installed in the package store. Most of this is done by symlink indirections to generated files in /nix/store/...
NixOS
https://nixos.org/wiki/Main_Page
http://nixos.org/~eelco/pubs/hotos-final.pdf
http://nixos.org/~eelco/pubs/atomic-hot ... -final.pdf
Maybe Porteus (modular distro) can adopt some solutions from these modular distros - without lost of performance and boot time).
GoboLinux
Instead of having parts of a program thrown at /usr/bin, other parts at /etc and yet more parts thrown at /usr/share/something/or/another, each program gets its own directory tree, keeping them all neatly separated and allowing to see everything that's installed in the system and which files belong to which programs in a simple and obvious way.
Each program entry contains all files for that program, stored in a versioned subdirectory.
Multiple versions of a program can be maintained simultaneously. Default programs can be switched by "Current" symlink e.g. "Current -> 2.6.7".
There is no measured performance loss in using symbolic links.
http://gobolinux.org/index.php?page=at_a_glance
http://gobolinux.org/index.php?page=faq
NixOS
Building a new configuration cannot overwrite previous configurations. If the upgrade to a new configuration is interrupted the system will still be in a consistent state: it will either boot in the new configuration or an older version can be selected.
Rollbacks (e.g. from the system boot menu) are a lightweight operation that do not involve files to be restored from copies.
Every user can have a dedicated profile in which they can install packages - different users can have different versions of the same package installed in their respective profiles. If two users install the same version of a package, only one copy will be built or downloaded.
NixOS stores all packages in isolation from each other in the package store. Installed packages are identified by a cryptographic hash of all input used for their build. Changing the build instructions of a package, modifies its hash that will result in a different package installed in the package store. Most of this is done by symlink indirections to generated files in /nix/store/...
NixOS
https://nixos.org/wiki/Main_Page
http://nixos.org/~eelco/pubs/hotos-final.pdf
http://nixos.org/~eelco/pubs/atomic-hot ... -final.pdf
Maybe Porteus (modular distro) can adopt some solutions from these modular distros - without lost of performance and boot time).