about summary refs log tree commit diff
path: root/scripts/NixManifest.pm.in
AgeCommit message (Collapse)AuthorFilesLines
2011-04-11 * Read manifests directly into the database, rather than first readingEelco Dolstra1-60/+65
them into memory. This brings memory use down to (more or less) O(1). For instance, on my test case, the maximum resident size of download-using-manifests while filling the DB went from 142 MiB to 11 MiB.
2011-04-11 * Lock the database during updates.Eelco Dolstra1-1/+8
2011-04-11 * Create $manifestDir if it doesn't exist.Eelco Dolstra1-0/+3
2011-04-10 * Cache the manifests in /nix/var/nix/manifests in a SQLite database.Eelco Dolstra1-4/+138
This significantly speeds up the download-using-manifests substituter, especially if manifests are very large. For instance, one "nix-build -A geeqie" operation that updated four packages using binary patches went from 18.5s to 1.6s. It also significantly reduces memory use. The cache is kept in /nix/var/nix/manifests/cache.sqlite. It's updated automatically when manifests are added to or removed from /nix/var/nix/manifests. It might be interesting to have nix-pull store manifests directly in the DB, rather than storing them as separate flat files, but then we would need a command line interface to delete manifests from the DB.
2011-04-06 * Remove the localPaths feature in manifests since it's no longer usedEelco Dolstra1-16/+1
and redundant anyway.
2010-12-05 * Use CamelCase for the Perl modules.Eelco Dolstra1-0/+211