--- Nukefile.orig	2017-04-14 23:02:41.000000000 -0500
+++ Nukefile	2017-11-26 09:25:43.000000000 -0600
@@ -25,6 +25,9 @@
      (if (env objectForKey:"PREFIX")
          (then (set @prefix (env objectForKey:"PREFIX")))
          (else (set @prefix "/usr/local")))
+     (if (env objectForKey:"FRAMEWORKS_DIR")
+         (then (set @frameworks_dir (env objectForKey:"FRAMEWORKS_DIR")))
+         (else (set @frameworks_dir "/Library/Frameworks")))
      (if (env objectForKey:"DESTDIR")
          (then (set @destdir (env objectForKey:"DESTDIR")))
          (else (set @destdir ""))))
@@ -79,23 +82,8 @@
 
 ;; build configuration
 
-(set @sdkflags "")
-(set @sdk
-     (cond ((NSFileManager directoryExistsNamed:"#{DEVROOT}/SDKs/MacOSX10.8.sdk")
-            (set @sdkflags "-D__OBJC2__")
-            ("-isysroot #{DEVROOT}/SDKs/MacOSX10.8.sdk"))
-           ((NSFileManager directoryExistsNamed:"#{DEVROOT}/SDKs/MacOSX10.7.sdk")
-            (set @sdkflags "-D__OBJC2__")
-            ("-isysroot #{DEVROOT}/SDKs/MacOSX10.7.sdk"))
-           ((NSFileManager directoryExistsNamed:"#{DEVROOT}/SDKs/MacOSX10.6.sdk")
-            (set @sdkflags "-D__OBJC2__")
-            ("-isysroot #{DEVROOT}/SDKs/MacOSX10.6.sdk"))
-           ((NSFileManager directoryExistsNamed:"#{DEVROOT}/SDKs/MacOSX10.5.sdk")
-            (set @sdkflags "-D__OBJC2__")
-            ("-isysroot #{DEVROOT}/SDKs/MacOSX10.5.sdk"))
-           ((NSFileManager directoryExistsNamed:"#{DEVROOT}/SDKs/MacOSX10.4u.sdk")
-            ("-isysroot #{DEVROOT}/SDKs/MacOSX10.4u.sdk"))
-           (else "")))
+(set @sdkflags "-D__OBJC2__")
+(set @sdk "@SDK@")
 
 (ifDarwin
          (then (set @cflags ( "-Wall -g -fPIC -O2 -DMACOSX #{@sdk} #{@sdkflags}"))
@@ -112,10 +100,7 @@
 (set @cflags (+ @cflags " -DHAVE_CONFIG_H"))
 
 (ifDarwin
-         (then (set @arch '()))) ;; optionally add "ppc" or "ppc64" to the list
-
-(if (or isSnowLeopard isLion)
-    (then (set @arch (append @arch '("x86_64")))))
+         (then (set @arch '("@ARCHS@"))))
 
 (set @includes
      ((@inc_dirs map: (do (inc) " -I#{inc}")) join))
@@ -239,7 +224,7 @@
 
 (task "default" => "nush")
 
-;; Except for the Nu.framework (installed in /Library/Frameworks),
+;; Except for the Nu.framework (installed in #{@frameworks_dir}),
 ;; all scripts and binaries are installed to #{@prefix}/bin
 
 (set @installprefix "#{@destdir}#{@prefix}")
@@ -247,28 +232,28 @@
 (task "install" => "nush" is
       ('("nuke" "nustyle" "nutemplate" "nutest" "nudoc" "nubake" "nutmbundle") each:
         (do (program)
-            (SH "sudo cp tools/#{program} #{@installprefix}/bin")))
-      (SH "sudo cp nush #{@installprefix}/bin")
+            (SH "cp tools/#{program} #{@installprefix}/bin")))
+      (SH "cp nush #{@installprefix}/bin")
       (ifDarwin
                ;; install the framework
-               (SH "sudo rm -rf #{@destdir}/Library/Frameworks/#{@framework}.framework")
-               (SH "sudo ditto #{@framework}.framework #{@destdir}/Library/Frameworks/#{@framework}.framework"))
+               (SH "rm -rf #{@destdir}#{@frameworks_dir}/#{@framework}.framework")
+               (SH "ditto #{@framework}.framework #{@destdir}#{@frameworks_dir}/#{@framework}.framework"))
       (ifGNUstep
                 ;; install the dynamic library
-                (SH "sudo mkdir -p #{@installprefix}/lib")
-                (SH "sudo cp #{@library_executable_name} #{@installprefix}/lib")
+                (SH "mkdir -p #{@installprefix}/lib")
+                (SH "cp #{@library_executable_name} #{@installprefix}/lib")
                 ;; copy the headers
-                (SH "sudo rm -rf #{@installprefix}/include/Nu")
-                (SH "sudo mkdir -p #{@installprefix}/include/Nu")
-                (SH "sudo cp -rp objc/*.h #{@installprefix}/include/Nu")
-                (SH "sudo rm -rf #{@installprefix}/share/libNu")
-                (SH "sudo mkdir -p #{@installprefix}/share/libNu")
-                (SH "sudo cp -rp nu/* #{@installprefix}/share/libNu"))
-      (SH "sudo mkdir -p #{@installprefix}/share")
-      (SH "sudo rm -rf #{@installprefix}/share/nu")
-      (SH "sudo cp -rp share/nu #{@installprefix}/share/nu")
+                (SH "rm -rf #{@installprefix}/include/Nu")
+                (SH "mkdir -p #{@installprefix}/include/Nu")
+                (SH "cp -Rp objc/*.h #{@installprefix}/include/Nu")
+                (SH "rm -rf #{@installprefix}/share/libNu")
+                (SH "mkdir -p #{@installprefix}/share/libNu")
+                (SH "cp -Rp nu/* #{@installprefix}/share/libNu"))
+      (SH "mkdir -p #{@installprefix}/share")
+      (SH "rm -rf #{@installprefix}/share/nu")
+      (SH "cp -Rp share/nu #{@installprefix}/share/nu")
       (ifDarwin
-               (SH "sudo ditto examples #{@installprefix}/share/nu/examples")))
+               (SH "ditto examples #{@installprefix}/share/nu/examples")))
 
 ;; Build a disk image for distributing the framework.
 (task "framework_image" => "framework" is