Hi,

Nathaniel Griswold wrote:

> Anyone had any luck getting build user groups working on snow leopard?

I don't think this feature has ever been used on a non-Linux system.  So thanks
for trying it out :-)

> reverse:nixpkgs griswold$ nix-build  -A git
> ...
> error: cannot kill processes for uid `50001'

Hm.  Could you apply the attached patch?  It won't fix the problem, but it will
hopefully give some more information about what's going wrong.

-- 
Eelco Dolstra | http://www.st.ewi.tudelft.nl/~dolstra/
Index: src/libutil/util.cc
===================================================================
--- src/libutil/util.cc (revision 20726)
+++ src/libutil/util.cc (working copy)
@@ -810,7 +810,8 @@
     case 0:
         try { /* child */
 
-            if (setuid(uid) == -1) abort();
+            if (setuid(uid) == -1)
+                throw SysError("setting uid");
 
            while (true) {
                if (kill(-1, SIGKILL) == 0) break;
@@ -820,7 +821,7 @@
            }
 
         } catch (std::exception & e) {
-            std::cerr << format("killing processes beloging to uid `%1%': %1%")
+            std::cerr << format("killing processes belonging to uid `%1%': 
%2%")
                 % uid % e.what() << std::endl;
             quickExit(1);
         }
@@ -828,8 +829,9 @@
     }
     
     /* parent */
-    if (pid.wait(true) != 0)
-        throw Error(format("cannot kill processes for uid `%1%'") % uid);
+    int status = pid.wait(true);
+    if (status != 0)
+        throw Error(format("cannot kill processes for uid `%1%': %2%") % uid % 
statusToString(status));
 
     /* !!! We should really do some check to make sure that there are
        no processes left running under `uid', but there is no portable
_______________________________________________
nix-dev mailing list
[email protected]
https://mail.cs.uu.nl/mailman/listinfo/nix-dev

Reply via email to