1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2024-09-19 10:50:24 -04:00

inline the usage of nix::renameFile

use `std::filesystem::rename` everywhere and remove `nix::renameFile`
This commit is contained in:
siddhantCodes 2024-05-12 18:40:16 +05:30
parent 87ab3c0ea4
commit 4537663740
8 changed files with 11 additions and 18 deletions

View file

@ -12,7 +12,7 @@ void IndirectRootStore::makeSymlink(const Path & link, const Path & target)
createSymlink(target, tempLink); createSymlink(target, tempLink);
/* Atomically replace the old one. */ /* Atomically replace the old one. */
renameFile(tempLink, link); std::filesystem::rename(tempLink, link);
} }
Path IndirectRootStore::addPermRoot(const StorePath & storePath, const Path & _gcRoot) Path IndirectRootStore::addPermRoot(const StorePath & storePath, const Path & _gcRoot)

View file

@ -64,7 +64,7 @@ protected:
AutoDelete del(tmp, false); AutoDelete del(tmp, false);
StreamToSourceAdapter source(istream); StreamToSourceAdapter source(istream);
writeFile(tmp, source); writeFile(tmp, source);
renameFile(tmp, path2); std::filesystem::rename(tmp, path2);
del.cancel(); del.cancel();
} }

View file

@ -1779,7 +1779,7 @@ void LocalStore::addBuildLog(const StorePath & drvPath, std::string_view log)
writeFile(tmpFile, compress("bzip2", log)); writeFile(tmpFile, compress("bzip2", log));
renameFile(tmpFile, logPath); std::filesystem::rename(tmpFile, logPath);
} }
std::optional<std::string> LocalStore::getVersion() std::optional<std::string> LocalStore::getVersion()

View file

@ -783,7 +783,7 @@ static void movePath(const Path & src, const Path & dst)
if (changePerm) if (changePerm)
chmod_(src, st.st_mode | S_IWUSR); chmod_(src, st.st_mode | S_IWUSR);
renameFile(src, dst); std::filesystem::rename(src, dst);
if (changePerm) if (changePerm)
chmod_(dst, st.st_mode); chmod_(dst, st.st_mode);

View file

@ -285,7 +285,7 @@ static void movePath(const Path & src, const Path & dst)
if (changePerm) if (changePerm)
chmod_(src, st.st_mode | S_IWUSR); chmod_(src, st.st_mode | S_IWUSR);
renameFile(src, dst); std::filesystem::rename(src, dst);
if (changePerm) if (changePerm)
chmod_(dst, st.st_mode); chmod_(dst, st.st_mode);
@ -372,7 +372,7 @@ bool LocalDerivationGoal::cleanupDecideWhetherDiskFull()
if (buildMode != bmCheck && status.known->isValid()) continue; if (buildMode != bmCheck && status.known->isValid()) continue;
auto p = worker.store.toRealPath(status.known->path); auto p = worker.store.toRealPath(status.known->path);
if (pathExists(chrootRootDir + p)) if (pathExists(chrootRootDir + p))
renameFile((chrootRootDir + p), p); std::filesystem::rename((chrootRootDir + p), p);
} }
return diskFull; return diskFull;
@ -2569,7 +2569,7 @@ SingleDrvOutputs LocalDerivationGoal::registerOutputs()
// that there's no stale file descriptor pointing to it // that there's no stale file descriptor pointing to it
Path tmpOutput = actualPath + ".tmp"; Path tmpOutput = actualPath + ".tmp";
copyFile(actualPath, tmpOutput, true); copyFile(actualPath, tmpOutput, true);
renameFile(tmpOutput, actualPath); std::filesystem::rename(tmpOutput, actualPath);
auto newInfo0 = newInfoFromCA(DerivationOutput::CAFloating { auto newInfo0 = newInfoFromCA(DerivationOutput::CAFloating {
.method = dof.ca.method, .method = dof.ca.method,

View file

@ -24,7 +24,7 @@ void builtinUnpackChannel(
auto entries = readDirectory(out); auto entries = readDirectory(out);
if (entries.size() != 1) if (entries.size() != 1)
throw Error("channel tarball '%s' contains more than one file", src); throw Error("channel tarball '%s' contains more than one file", src);
renameFile(entries[0].path().string(), (out + "/" + channelName)); std::filesystem::rename(entries[0].path().string(), (out + "/" + channelName));
} }
} }

View file

@ -588,7 +588,7 @@ void replaceSymlink(const Path & target, const Path & link)
throw; throw;
} }
renameFile(tmp, link); std::filesystem::rename(tmp, link);
break; break;
} }
@ -651,15 +651,10 @@ void copyFile(const Path & oldPath, const Path & newPath, bool andDelete)
return copy(fs::directory_entry(fs::path(oldPath)), fs::path(newPath), andDelete); return copy(fs::directory_entry(fs::path(oldPath)), fs::path(newPath), andDelete);
} }
void renameFile(const Path & oldName, const Path & newName)
{
fs::rename(oldName, newName);
}
void moveFile(const Path & oldName, const Path & newName) void moveFile(const Path & oldName, const Path & newName)
{ {
try { try {
renameFile(oldName, newName); std::filesystem::rename(oldName, newName);
} catch (fs::filesystem_error & e) { } catch (fs::filesystem_error & e) {
auto oldPath = fs::path(oldName); auto oldPath = fs::path(oldName);
auto newPath = fs::path(newName); auto newPath = fs::path(newName);
@ -674,7 +669,7 @@ void moveFile(const Path & oldName, const Path & newName)
fs::remove(newPath); fs::remove(newPath);
warn("Cant rename %s as %s, copying instead", oldName, newName); warn("Cant rename %s as %s, copying instead", oldName, newName);
copy(fs::directory_entry(oldPath), tempCopyTarget, true); copy(fs::directory_entry(oldPath), tempCopyTarget, true);
renameFile( std::filesystem::rename(
os_string_to_string(PathViewNG { tempCopyTarget }), os_string_to_string(PathViewNG { tempCopyTarget }),
os_string_to_string(PathViewNG { newPath })); os_string_to_string(PathViewNG { newPath }));
} }

View file

@ -177,8 +177,6 @@ void createSymlink(const Path & target, const Path & link);
*/ */
void replaceSymlink(const Path & target, const Path & link); void replaceSymlink(const Path & target, const Path & link);
void renameFile(const Path & src, const Path & dst);
/** /**
* Similar to 'renameFile', but fallback to a copy+remove if `src` and `dst` * Similar to 'renameFile', but fallback to a copy+remove if `src` and `dst`
* are on a different filesystem. * are on a different filesystem.