diff --git a/scripts/nix-pull.in b/scripts/nix-pull.in
index 8bc560ba5f5fac02b585bd66c2b3d7c1203b302c..841e97e83109b869b4962ff0e4a9405323280453 100644
--- a/scripts/nix-pull.in
+++ b/scripts/nix-pull.in
@@ -51,7 +51,7 @@ sub processURL {
     
     my $finalPath = "$stateDir/manifests/$baseName-$hash.nixmanifest";
     
-    system("mv '$manifest' '$finalPath'") == 0
+    system("mv -f '$manifest' '$finalPath'") == 0
         or die "cannot move `$manifest' to `$finalPath";
 }
 
diff --git a/scripts/readmanifest.pm.in b/scripts/readmanifest.pm.in
index 3e74c88f98b7497b0c0227264794182514726dcb..ea1c5a447063788ad8372985f8a07389fee19875 100644
--- a/scripts/readmanifest.pm.in
+++ b/scripts/readmanifest.pm.in
@@ -35,7 +35,8 @@ sub readManifest {
     my $patches = shift;
     my $successors = shift;
 
-    open MANIFEST, "<$manifest";
+    open MANIFEST, "<$manifest"
+        or die "cannot open `$manifest': $!";
 
     my $inside = 0;
     my $type;