Temporarily revert to using 'tar' until we have gzip support
This commit is contained in:
parent
ecb3a1afa2
commit
a045f93396
|
@ -910,6 +910,7 @@ CachedDownloadResult Downloader::downloadCached(
|
||||||
printInfo("unpacking '%s'...", url);
|
printInfo("unpacking '%s'...", url);
|
||||||
Path tmpDir = createTempDir();
|
Path tmpDir = createTempDir();
|
||||||
AutoDelete autoDelete(tmpDir, true);
|
AutoDelete autoDelete(tmpDir, true);
|
||||||
|
#if 0
|
||||||
unpackTarfile(store->toRealPath(store->printStorePath(*storePath)), tmpDir, std::string(baseNameOf(url)));
|
unpackTarfile(store->toRealPath(store->printStorePath(*storePath)), tmpDir, std::string(baseNameOf(url)));
|
||||||
auto members = readDirectory(tmpDir);
|
auto members = readDirectory(tmpDir);
|
||||||
if (members.size() != 1)
|
if (members.size() != 1)
|
||||||
|
@ -917,6 +918,12 @@ CachedDownloadResult Downloader::downloadCached(
|
||||||
auto topDir = tmpDir + "/" + members.begin()->name;
|
auto topDir = tmpDir + "/" + members.begin()->name;
|
||||||
result.lastModified = lstat(topDir).st_mtime;
|
result.lastModified = lstat(topDir).st_mtime;
|
||||||
unpackedStorePath = store->addToStore(name, topDir, true, htSHA256, defaultPathFilter, NoRepair);
|
unpackedStorePath = store->addToStore(name, topDir, true, htSHA256, defaultPathFilter, NoRepair);
|
||||||
|
#else
|
||||||
|
// FIXME: this requires GNU tar for decompression.
|
||||||
|
runProgram("tar", true, {"xf", store->toRealPath(store->printStorePath(*storePath)), "-C", tmpDir, "--strip-components", "1"});
|
||||||
|
result.lastModified = lstat(tmpDir).st_mtime;
|
||||||
|
unpackedStorePath = store->addToStore(name, tmpDir, true, htSHA256, defaultPathFilter, NoRepair);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
// Store the last-modified date of the tarball in the symlink
|
// Store the last-modified date of the tarball in the symlink
|
||||||
// mtime. This saves us from having to store it somewhere
|
// mtime. This saves us from having to store it somewhere
|
||||||
|
|
Loading…
Reference in a new issue