Skip to content
Snippets Groups Projects
  1. Jun 21, 2004
  2. Jun 20, 2004
    • Eelco Dolstra's avatar
      * Re-enable support for substitutes in the normaliser. · 112ee895
      Eelco Dolstra authored
      * A better substitute mechanism.
      
        Instead of generating a store expression for each store path for
        which we have a substitute, we can have a single store expression
        that builds a generic program that is invoked to build the desired
        store path, which is passed as an argument.
      
        This means that operations like `nix-pull' only produce O(1) files
        instead of O(N) files in the store when registering N substitutes.
        (It consumes O(N) database storage, of course, but that's not a
        performance problem).
      
      * Added a test for the substitute mechanism.
        
      * `nix-store --substitute' reads the substitutes from standard input,
        instead of from the command line.  This prevents us from running
        into the kernel's limit on command line length.
      112ee895
    • Eelco Dolstra's avatar
    • Eelco Dolstra's avatar
      * Refactoring. · 85ae7817
      Eelco Dolstra authored
      85ae7817
  3. Jun 19, 2004
  4. Jun 18, 2004
  5. Jun 15, 2004
  6. Jun 08, 2004
  7. Jun 04, 2004
  8. May 18, 2004
  9. May 14, 2004
    • Eelco Dolstra's avatar
      * execl() requires a terminating 0. · ace88727
      Eelco Dolstra authored
      * When a fast build wakes up a goal, try to start that goal in the
        same iteration of the startBuild() loop of run().  Otherwise no job
        might be started until the next job terminates.
      ace88727
  10. May 13, 2004
  11. May 12, 2004
  12. May 11, 2004
    • Eelco Dolstra's avatar
      * True parallel builds. Nix can now run as many build jobs in · c8d3882c
      Eelco Dolstra authored
        parallel as possible (similar to GNU Make's `-j' switch).  This is
        useful on SMP systems, but it is especially useful for doing builds
        on multiple machines.  The idea is that a large derivation is
        initiated on one master machine, which then distributes
        sub-derivations to any number of slave machines.  This should not
        happen synchronously or in lock-step, so the master must be capable
        of dealing with multiple parallel build jobs.  We now have the
        infrastructure to support this.
      
        TODO: substitutes are currently broken.
      c8d3882c
    • Eelco Dolstra's avatar
      * Ignore interrupt signals while handling an exception. · aea43650
      Eelco Dolstra authored
      * Ignore EINTR in reads and writes.
      aea43650
  13. May 04, 2004
Loading