]> gitweb.factorcode.org Git - factor.git/blob - basis/elevate/macosx/macosx.factor
elevate: make it load/compile
[factor.git] / basis / elevate / macosx / macosx.factor
1 USING: accessors arrays cocoa.apple-script elevate
2 elevate.unix.private formatting io.launcher kernel locals
3 sequences system ;
4 IN: elevate.macosx
5
6 <PRIVATE
7 : apple-script-elevated ( command -- )
8     first quote-apple-script
9     "do shell script %s with administrator privileges without altering line endings"
10     sprintf run-apple-script ;
11
12 ! TODO
13 M:: macosx elevated ( command replace? win-console? posix-graphical? -- process )
14     already-root? [
15         <process> command >>command 1array
16     ] [
17         ! graphical through applescript
18         posix-graphical? [
19             command apple-script-elevated
20         ] when
21         posix-elevated  "lol3" throw
22     ] if "lol" throw ;
23
24 M: macosx lowered
25     posix-lowered ;
26
27 PRIVATE>
28