[Gelistirici] pure functional

Evrim Ulu evrim at core.gen.tr
22 Haz 2007 Cum 01:17:57 EEST


http://nix.cs.uu.nl/nixos/

NixOS is a Linux distribution based on Nix
<http://nix.cs.uu.nl/index.html>, a purely functional package management
system. NixOS is an experiment to see if we can build an operating
system in which software packages, configuration files, boot scripts and
the like are all managaed in a purely functional way, that is, they are
all built by deterministic functions and they never change after they
have been built. Such an operating system should have all the nice
characteristics <http://nix.cs.uu.nl/about.html> that the Nix package
manager has:

    * The entire system — kernel, system services, configuration files,
      etc. — is built by a /Nix expression/ in a deterministic and
      repeatable way.
    * Since configuration changes are non-destructive (they don’t
      overwrite existing files), you can easily roll back to a previous
      configuration. For instance, the Grub boot menu in NixOS allows
      the user to boot into any previous system configuration that
      hasn’t been garbage collected yet. This is very nice if something
      goes wrong.
    * Upgrading a configuration is as safe as installing from scratch,
      since the realisation of a configuration is not stateful. This is
      a result of being purely functional.
    * Multi-user package management — any user can install software
      through the same mechanisms that the administrator uses. This is
      not the case for most package managers such as RPM.

Furthermore,

    * NixOS allows us to verify that Nix packages are really pure. Nix
      prevents undeclared dependencies /between/ packages in the Nix
      store, but when you run Nix on an existing OS such as SUSE Linux,
      Nix cannot prevent a build script from (say) calling programs in
      /bin. If there /is/ no /bin, such a build script will fail.

GITmeye devam ...

-- 
Saglicakla,

Evrim Ulu <evrim at core.gen.tr>
Kor Bilisim Teknolojileri
http://www.core.gen.tr/




Gelistirici mesaj listesiyle ilgili daha fazla bilgi