Truly required keys in launchd plist file

I am trying to get a launchd plist to work and run all the time. I want it to shut down my Mail.app on a certain day of the week (when I am not there). Of course, I want another one to turn it on when I get in the next day. The only plist keys that are supposed to be required are the Label and ProgramArguments. However, unless I also add the StartInterval key (any setting), my script is never called in the first place. (I have not tried any other keys yet, I am still testing this thing out.)
Without the StartInterval, the launchctl list still shows the correct plist file is running, but Mail never shuts down. I get this on the command line:
Workaround Bonjour: Unknown error: 0
I tried looking into the launchctl log, and it is empty as well.
Is this a bug, or is it necessary after all to have either StartInterval or StartCalendarInterval keyed in any launchd plist for it to function?
I appreciate any and all feedback.

No replies - Have mostly solved through trial and error.

Similar Messages

  • Can someone give me an example of a very simple launchd.plist file that...

    Launches an agent and allows the agent general internet access?
    I have this simple plist but what happens is that launchd launches it and then kills it (abort) and then launches it again and does the same thing 10 times and quits. I have traced the 'action' that causes this. As soon as my app tries to get a socket and connect, it is killed.
    I did put in a socket thing in the launchd plist file, but then it seems that launchd answers the call, not the thing I want to, then my app gets stuck on a recv call thinking it has sent data to a server and is waiting for an answer which will never come.
    I do not know if they have these for macs (I am sure they do), but imagine a tool like ICQ or Instant Messenger. It loads when the user logs on, you have your contacts list, and it coordinates via some foreign server, although once a match is made direct connects to person you are chatting with.
    How would you launch an agent like that? I can't figure out the plist entries needed. I can either launch my app and have it get "locked" by a recv call cause launchd answered the connect, and accepted the send, or I can remove the socket stuff and get in this cycle of launches and aborts.
    A simple example would be of great help.

    An object is a good way to implement this. For the first, the object would look like this:
    var oT1 = {
        "5" : 0.1,
        "50" : 2,
        "75" : 6,
        "100" : 12
    To get the value associated with the 100 property, the code would look something like:
    var val = oT1["100"];
    The variable "val" would then contain the number 12.
    For the second, the value of each object property could be an array, something like:
    var oT2 = {
        "Debbie" : [5, 0, 16],
        "Carl" : [0, 20, 4],
        "Josh" : [2, 8, 19]
    To get the second item in the array for the "Josh" array, the code would look like:
    var val = oT2["Josh"][1];
    To get the last item in the "Debbie" array, you could do this:
    var val = oT2["Debbie"][2];
    Array indexes are zero-based, so the second item has an index of 1, third item is 2, etc..
    Good luck

  • How can I edit a sub key in a plist file?

    For example, how could I edit the Name key in the array?
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>Test</key>
    <array>
    <dict>
    <key>IPAddress</key>
    <string>xxxx</string>
    <key>Name</key>
    <string>yyyy</string>
    </dict>
    </array>
    </dict>
    </plist>

    hi,
    i guess this article should answer your question
    http://www.mactech.com/articles/mactech/Vol.22/22.03/StoringandAccessingData/ind ex.html
    quote for items:
    set theOutputFolder to path to desktop folder as string
    set thePListPath to POSIX path of (theOutputFolder & "myPListFile.plist")
    tell application "System Events"
    tell property list file thePListPath
    tell contents
    set value of property list item "keyName" to "New Key Value"
    end tell
    end tell
    end tell
    quote for sub-items:
    set theOutputFolder to path to desktop folder as string
    set thePListPath to POSIX path of (theOutputFolder & "myPListFile.plist")
    tell application "System Events"
    tell property list file thePListPath
    tell contents
    set value of property list item "subKeyName1" of property list item
    "keyName3" to "New Key Value"
    end tell
    end tell
    end tell
    but reading the full article would be the best way to go.
    feel free to ask further if it wasn't helpful
    Best regards
    fidel

  • Has anybody edited the /System/Library/LaunchDaemons/smbd.plist file?

    Mac clients don't honour Samba settings for new directory and file creation masks so I thought I would set the Umask value in smbd.plist and that would apply to all clients, Mac SMB clients too.
    Has anybody done that before?
    Best regards,
    Andrus Suitsu

    Apple document http://support.apple.com/kb/HT2202 says:
    In Mac OS X 10.4 and later, advanced administrators can set a separate umask for a specific LaunchAgent or LaunchDaemon by adding a Umask value to the launchd plist file.
    So I think and hope that means that adding Umask setting to smbd.plist would have some effect on how smbd will create files, wouldn't you agree?
    Windows clients already honour the settings in /var/samba/shares and create all directories and files with the specified POSIX permissions. My problem is that OS X samba clients don't honour those settings and use their own umask. I want to solve this on the server, not by configuring each client separately.
    Andrus
    PS. I cannot bring SMB down while people are working on the shares, otherwise I would already know if changing the smbd.plist file helps me.
    Message was edited by: andrussuitsu

  • Having problems with launchd a plist file and launch on demand.

    First, my plist file:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>Debug</key>
    <true/>
    <key>KeepAlive</key>
    <false/>
    <key>Label</key>
    <string>TestApp</string>
    <key>OnDemand</key>
    <true/>
    <key>Program</key>
    <string>/Applications/Test/TestApp</string>
    <key>ProgramArguments</key>
    <array>
    <string>daemon</string>
    </array>
    <key>Sockets</key>
    <dict>
    <key>SockFamily</key>
    <string>IPv4</string>
    <key>SockPassive</key>
    <true/>
    <key>SockServiceName</key>
    <string>8585</string>
    <key>SockType</key>
    <string>stream</string>
    </dict>
    <key>WorkingDirectory</key>
    <string>/Applications/Test/</string>
    </dict>
    </plist>
    The idea is, if another app which I have tries to connect to 127.0.0.1:8585 that my test app will launch and do its stuff. The test app is the server and the guy making the call is the client.
    The plist file is located in "/Library/LaunchDaemons" and is owned by root and only readable by anyone but root. Similarly TestApp is only readable/executable by root and no one else can do anything. Finally TestApp is a C++ program not an actual application ie:TestApp.app/Contents/etc...
    If it were windows, it would be TestApp.exe.
    Anyway, when I invoke my other program, TestApp isn't launched. (I rebooted after I put the plist file in so it would be read). I know TestApp and TestClient can talk, if I run them both myself everything is fine. I just want to get launchd to do it on demand. There isn't a clear way for me to debug this because if there is an error, I do not know where to look to see it, if any such errors are reported. Syslog doesn't show anything of interest in this reguard.
    Any help is greatly appricated.

    Hello Mark:
    You are seeing a "normal" behavior, if this is the case on the load of a first report. Subsequent reports should be significantly faster. Only way to make the first load appear faster is to load the CR assemblies and dlls on app start. E.g.; load a fake report on app start. Unfortunately, those 20+ seconds will now move to the initialization / load of the app...
    Ludek
    BTW., downloading the latest Service packs is never a bad idea and may help a bit, but not 10+ seconds for sure.

  • Input file missing required key: [Distribution] GUID.

    Hi,
    I freshly converted a .bld (LV7.1) file to .lvproj (LV11) through Tools > Convert Build Script. It ran well.
    Opening the .lvproj, I then successfully build the .exe but failed on the Installer :
    Visit the Request Support page at ni.com/ask to learn more about resolving this problem. Use the following information as a reference:
    CDK_Build_Invoke.vi.ProxyCaller >> CDK_Build_Invoke.vi >> CDK_Engine_Main.vi >> IB_MSI.lvclass:Build.vi >> IB_MSI.lvclass:Engine_Build.vi >> NI_MDF.lvlib:MDFBuildDist_Build.vi
    Loading product deployment information
    Adding files to installer
    Validating...
    Copying files...
    Scanning files...
    Updating files...
    Build complete successfully.
    Done adding files
    Preparing to build deployment
    Copying products from distributions
    Building deployment
    Copying setup files
    Setting merged database information
    Setting product information
    Setting developer part information
    Starting final build
    *** Error: An internal tool or library returned an error. (Error code -21)
    Error Messages
    Input file missing required key: [Distribution] GUID.
    *** Error Details:
    Error in MDF API function: _MDFBuildDist_Build
    Error List
    .\InputParser.cpp(5420): InstallerError 105
    Input file missing required key: [Distribution] GUID.
    <No Debug Message>
    *** End Error Report
    Done building deployment
    Any idea ?
    Many thanks

    Not too sure... Is your installer supposed to create any keys in the registry?
    Anyway, open your installer's build specification and check all the sections, I would suggest to bring specific attention to the following sections :
    - "Source Files", because here, all the "extra files you want you installer to place in specific format have to be included/referenced in the project (.lvproj)
    - "Registry", that's only if the installer is supposed to create keys in the registry
    - "Additional installers", make sure you only tick the boyes corresponding to drivers/module that are required for you application and also make sure that when building, the installer you used to install those drivers/modules on your computer are still available.
    Hope this helps
    When my feet touch the ground each morning the devil thinks "bloody hell... He's up again!"

  • Script inside launchd plist

    Hi,
    playing with lauchd plists to get some feeling about how certain things works I came up with this script inside the plist
    <key>ProgramArguments</key>
    <array>
    <string>/bin/sh</string>
    <string>-c</string>
    <string>/bin/df -k| /usr/bin/grep /dev/ | /usr/bin/awk '{ OFS="     "; "date +%d-%b-%Y-%I:%M| getline; print $6, $1, $4, $5;}'</string>
    </array>
    Its close to what I try to do in my trial stage one (1), but see some unwanted and unexpected issues
    1. why is there a tab at the first line?
    2. Where is the first Item, is it replaced with the date or just ignored?
    3. Should I see the result(s) of date as a multi word? If I keep a space between +%d-%b-%Y and %I:%M i get a wrong result.
    *this is what I get*
    29-May-2010-10:53
    /Volumes/TimeMachine /dev/disk5s3 303667180 69%
    /Volumes/RAID01 /dev/disk4 55598552 93%
    /Volumes/Repository /dev/disk0s3 96066032 2%
    /Volumes/Data /dev/disk0s4 506853520 40%
    /Volumes/Applications /dev/disk1s4 11657776 73%
    *This what I actually did expect with the current script ( not what I want );*
    29-May-2010-10:53 / /dev/disk1s3 16190024 62%
    29-May-2010-10:53 /Volumes/TimeMachine /dev/disk5s3 303667180 69%
    29-May-2010-10:53 /Volumes/RAID01 /dev/disk4 55598552 93%
    29-May-2010-10:53 /Volumes/Repository /dev/disk0s3 96066032 2%
    29-May-2010-10:53 /Volumes/Data /dev/disk0s4 506853520 40%
    29-May-2010-10:53 /Volumes/Applications /dev/disk1s4 11657776 73%
    I thought that the date line will get printed every time for each line from the previous piped command
    *This is what I want ( stage 1 )*
    29-May-2010 10:53
    / /dev/disk1s3 16190024 62%
    /Volumes/TimeMachine /dev/disk5s3 303667180 69%
    /Volumes/RAID01 /dev/disk4 55598552 93%
    /Volumes/Repository /dev/disk0s3 96066032 2%
    /Volumes/Data /dev/disk0s4 506853520 40%
    /Volumes/Applications /dev/disk 1s4 11657776 73%
    *This is what I finally want ( stage 2 )*
    29-May-2010 10:53
    / 1s3 16190024 62%
    TimeMachine 5s3 303667180 69%
    RAID01 4 55598552 93%
    Repository 0s3 96066032 2%
    Data 0s4 506853520 40%
    Applications 1s4 11657776 73%
    Any help or ideas are welcome.
    Thanks
    PS.
    Here the total launchd plist script for copy>test ( check output path )
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>Debug</key>
    <true/>
    <key>InitGroups</key>
    <false/>
    <key>Label</key>
    <string>net.test.PlayWithMeScript2</string>
    <key>LowPriorityIO</key>
    <true/>
    <key>ProgramArguments</key>
    <array>
    <string>/bin/sh</string>
    <string>-c</string>
    <string>/bin/df -k| /usr/bin/grep /dev/ | /usr/bin/awk '{ OFS="     "; "date+%d-%b-%Y-%I:%M"| getline; print $6, $1, $4, $5;}'</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>ServiceDescription</key>
    <string>Play With me script</string>
    <key>StandardOutPath</key>
    <string>/Volumes/TestBedDevelopment/TestLogs/log3.txt</string>
    <key>StartInterval</key>
    <integer>60</integer>
    <key>WorkingDirectory</key>
    <string>/</string>
    </dict>
    </plist>

    Absolutely true, but to learn the effects of the shell created by the launchd and a comment somewhere on the web about "if it can in launchd do it there" and that I dont want to install to much, I choose for this, for now.
    Then, with all due respect to whoever wrote that article, he's an idiot
    Launchd has many uses, but it's not the right place to put a multi-step script with umpteen pipes and dependencies.
    Besides, I'm actually surprised it even remotely works, since launchd normally requires each element in the command to be in a separate <ProgramArguments> array element. In other words, your original:
    <key>ProgramArguments</key>
    <array>
    <string>/bin/sh</string>
    <string>-c</string>
    <string>/bin/df -k| /usr/bin/grep /dev/ | /usr/bin/awk '{ OFS="\t"; "date+%d-%b-%Y-%I:%M"| getline; print $6, $1, $4, $5;}'</string>
    </array>
    should really be more like:
    <key>ProgramArguments</key>
    <array>
    <string>/bin/sh</string>
    <string>-c</string>
    <string>/bin/df</string>
    <string>-k</string>
    <string>|</string>
    <string>/usr/bin/grep</string>
    <string>/dev/</string>
    <string>|</string>
    <string>/usr/bin/awk</string>
    <string>'{</string>
    <string>OFS="\t";</string>
    <string>"date+%d-%b-%Y-%I:%M"</string>
    <string>|</string>
    <string>getline;</string>
    <string>print</string>
    <string>$6,</string>
    <string>$1,</string>
    <string>$4,</string>
    <string>$5;}'</string>
    </array>
    and now you can see why it's a really, really bad idea to do. Far easier to just:
    <key>ProgramArguments</key>
    <array>
    <string>/usr/local/bin/myscript.sh</string>
    </array>
    and put all the logic in a separate file.
    The first line is gone because you're using getline within your awk statement, which tells awk to skip to the next line.
    I did hoped that didn't effect everything after the ;
    No. As per man awk:
    The ``function'' getline sets $0 to the next input record from the current input file;
    so getline moves onto the next line.
    How can I return a value from a launchd?
    What do you mean 'return a value from launchd'? You don't normally interact with launchd, so getting a return value from it doesn't make much sense.
    And why does my script keep running?
    because that's what launchd is for. By default, launchd is tasked with launching a process and keeping it running. So if a process fails it automatically gets restarted. This is normally what you want for system-level processes.
    Now, that said, launchd has a number of variations that you can use to tell it to launch processes at specific times, or when certain events happen, or only at boot time, etc., but you need to add them to your .plist so that launchd knows when (and when not) to launch/restart your process.

  • My imovie seems to have completely crashed... and I'm hoping someone can help me. I have moved all my projects and events to a folder on my desktop. I've deleted all the plist files I can find and I still cannot get it to open.

    Please help... it seems all is lost as all I kind find on this subject seem to lead to nowhere. My engagement was on imovie, a school project, several videos of our son. You will have to hold my hand through this process... as I am not very good at this type of thing. I believe I have deleted all the necessary plist files and moved my projects and events to a folder on my desktop. imovie has been upgraded to version 9.0.9... Whenever I open it I just get the beachball and then I have to force quit and I get the following report:
    Date/Time:  
    2013-08-02 23:48:24 -0500
    OS Version: 
    10.7.5 (Build 11G63b)
    Architecture:
    x86_64
    Report Version:  9
    Command:    
    iMovie
    Path:       
    /Applications/iMovie.app/Contents/MacOS/iMovie
    Version:    
    9.0.9 (1795)
    Build Version:   2
    Project Name:
    iMovieApp
    Source Version:  1795000000000000
    App Item ID:
    408981434
    App External ID: 15340117
    Parent:     
    launchd [120]
    PID:        
    1184
    Event:      
    hang
    Duration:   
    2.60s
    Steps:      
    27 (100ms sampling interval)
    Pageins:    
    0
    Pageouts:   
    0
    Process:    
    iMovie [1184]
    Path:       
    /Applications/iMovie.app/Contents/MacOS/iMovie
    Architecture:
    i386
    UID:        
    504
      Thread 0x3dd6 
      User stack:
    27 ??? (in iMovie) [0xf9c95]
    27 ??? (in iMovie) [0xfa12a]
    27 NSApplicationMain + 1054 (in AppKit) [0x92d8fac5]
    27 -[NSApplication run] + 911 (in AppKit) [0x92afeac1]
    27 ??? (in iMovie) [0x1485be]
    27 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 113 (in AppKit) [0x92b02752]
    27 _DPSNextEvent + 678 (in AppKit) [0x92b02ee8]
    27 BlockUntilNextEventMatchingListInMode + 88 (in HIToolbox) [0x9c85671a]
    27 ReceiveNextEventCommon + 381 (in HIToolbox) [0x9c8568ab]
    27 RunCurrentEventLoopInMode + 318 (in HIToolbox) [0x9c84f543]
    27 CFRunLoopRunInMode + 120 (in CoreFoundation) [0x9ad10088]
    27 CFRunLoopRunSpecific + 332 (in CoreFoundation) [0x9ad101dc]
    27 __CFRunLoopRun + 1112 (in CoreFoundation) [0x9ad109c8]
    27 __CFRunLoopDoSources0 + 246 (in CoreFoundation) [0x9ace6af6]
    27 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15 (in CoreFoundation) [0x9ace713f]
    27 __NSThreadPerformPerform + 503 (in Foundation) [0x95e5fe0c]
    27 -[NSObject performSelector:withObject:] + 65 (in CoreFoundation) [0x9ad6fd11]
    27 -[ILMediaGroupsTreeController _reloadFinished:] + 715 (in iLifeMediaBrowser) [0x94ff72a0]
    27 -[ILMediaGroupsTreeController setAllGroups:] + 180 (in iLifeMediaBrowser) [0x94ff8dee]
    27 -[NSObject(NSKeyValueObserverNotification) didChangeValueForKey:] + 131 (in Foundation) [0x95e2316d]
    27 NSKeyValueDidChange + 279 (in Foundation) [0x95e7bbf1]
    27 NSKeyValueNotifyObserver + 387 (in Foundation) [0x95e59194]
    27 -[ILMediaObjectsViewController observeValueForKeyPath:ofObject:change:context:] + 1217 (in iLifeMediaBrowser) [0x9500538b]
    27 -[ILMediaObjectsViewController syncTreeNodeSelections] + 419 (in iLifeMediaBrowser) [0x9501179d]
    27 -[ILMediaObjectsViewController groupSelectionChanged:] + 233 (in iLifeMediaBrowser) [0x95007225]
    27 -[ILMediaObjectsViewController updateMediaObjectsViewToSelectedGroups:] + 2002 (in iLifeMediaBrowser) [0x9501035f]
    27 -[NSArrayController setContent:] + 858 (in AppKit) [0x92d97f3f]
    27 -[NSArrayController _arrangeObjectsWithSelectedObjects:avoidsEmptySelection:operationsMask:useBasis :] + 856 (in AppKit) [0x92d95aa0]
    27 -[NSArrayController didChangeValuesForArrangedKeys:objectKeys:indexKeys:] + 53 (in AppKit) [0x92d96231]
    27 -[NSController didChangeValueForKey:] + 48 (in AppKit) [0x92b18430]
    27 -[NSController _notifyObserversForKeyPath:change:] + 238 (in AppKit) [0x92b18526]
    27 -[NSObject(NSKeyValueObservingPrivate) _notifyObserversForKeyPath:change:] + 1026 (in Foundation) [0x95e52f44]
    27 NSKeyValueNotifyObserver + 387 (in Foundation) [0x95e59194]
    27 -[ILMediaObjectsViewController observeValueForKeyPath:ofObject:change:context:] + 299 (in iLifeMediaBrowser) [0x95004ff5]
    27 -[IKImageBrowserView(ImageBrowserDatasource) reloadData] + 368 (in ImageKit) [0x9b96ba12]
    27 -[IKImageBrowserView(ImageBrowserLayout) updateLayoutOfCells] + 100 (in ImageKit) [0x9b978e18]
    27 -[IKImageBrowserView(ImageBrowserLayout) updateLayoutOfCellsAtIndexes:] + 174 (in ImageKit) [0x9b978d52]
    27 -[IKImageBrowserView(ImageBrowserScrolling) adjustDocumentSize] + 49 (in ImageKit) [0x9b98170c]
    27 -[IKImageBrowserLayoutManager contentSize] + 100 (in ImageKit) [0x9b9d6fbc]
    27 -[IKImageBrowserLayoutManager updateIfNeeded] + 44 (in ImageKit) [0x9b9d4a9d]
    27 -[IKImageBrowserLayoutManager update] + 213 (in ImageKit) [0x9b9d4a46]
    27 -[IKImageBrowserSubsetLayoutManager updateLayout] + 60 (in ImageKit) [0x9ba0451a]
    27 -[IKImageBrowserGrid computeContentSize] + 399 (in ImageKit) [0x9b941329]
    27 -[IKImageBrowserGrid translationRatioAtRow:] + 63 (in ImageKit) [0x9b94095e]
    27 -[IKImageBrowserGrid validateRowsTranslationsToRowIndex:] + 621 (in ImageKit) [0x9b941015]
    27 -[IKImageBrowserCell aspectRatio] + 44 (in ImageKit) [0x9b94950e]
    27 -[IKImageBrowserCell _computeAspectRatio] + 36 (in ImageKit) [0x9b949585]
    27 -[IKImageCell validateDatasource] + 1118 (in ImageKit) [0x9ba2af82]
    27 -[NSObject(IKImageBrowserItemOptional) IKImageRepresentationWithType:] + 33 (in ImageKit) [0x9ba26f8f]
    27 -[ILMediaObject imageRepresentation] + 533 (in iLifeMediaBrowser) [0x94feffd4]
    27 -[ILMediaObject thumbnailPath] + 86 (in iLifeMediaBrowser) [0x94ff43b5]
    27 -[ILMediaObject _internal_thumbnailPath] + 52 (in iLifeMediaBrowser) [0x94ff4453]
    27 -[ILMediaObject refreshThumbnailCacheInfo] + 62 (in iLifeMediaBrowser) [0x94ff0199]
    27 -[ILMediaBrowserImageManager loadCachedAttributesForMediaObject:] + 48 (in iLifeMediaBrowser) [0x94ffa93d]
    22 -[ILMediaBrowserImageManager loadCachedAttributesForMediaObject:updateIfNotFound:] + 466 (in iLifeMediaBrowser) [0x94ffab14]
    22 -[ILMediaBrowserImageManager updateThumbnailDataXmlForPath:info:] + 116 (in iLifeMediaBrowser) [0x94ffa906]
    15 -[NSDictionary(NSDictionary) writeToFile:atomically:] + 236 (in Foundation) [0x95e2a2fe]
    15 CFPropertyListCreateXMLData + 32 (in CoreFoundation) [0x9ad44640]
    15 _CFPropertyListCreateXMLData + 203 (in CoreFoundation) [0x9ad4471b]
    7 _CFAppendXML0 + 3261 (in CoreFoundation) [0x9ad4561d]
    2 _CFAppendXML0 + 3261 (in CoreFoundation) [0x9ad4561d]
    1 _CFAppendXML0 + 290 (in CoreFoundation) [0x9ad44a82]
    1 _appendEscapedString + 602 (in CoreFoundation) [0x9ad461ea]
    1 _plistAppendCharacters + 80 (in CoreFoundation) [0x9ad44850]
    1 _CFAppendXML0 + 5210 (in CoreFoundation) [0x9ad45dba]
    1 __CFNumberCreateFormattingDescriptionAsFloat64 + 181 (in CoreFoundation) [0x9ad61df5]
    1 CFStringCreateWithFormat + 110 (in CoreFoundation) [0x9ace102e]
    1 __CFStringAppendFormatCore + 6588 (in CoreFoundation) [0x9acdad9c]
    1 _CFAppendXML0 + 2847 (in CoreFoundation) [0x9ad4547f]
    1 CFRelease + 169 (in CoreFoundation) [0x9acde039]
    1 _objc_rootRelease + 47 (in libobjc.A.dylib) [0x99b0854e]
    1 -[__NSArrayM dealloc] + 394 (in CoreFoundation) [0x9ad084da]
    1 -[NSObject dealloc] + 107 (in CoreFoundation) [0x9ad0855b]
    1 _object_dispose + 78 (in libobjc.A.dylib) [0x99b11dc0]
    1 szone_size + 0 (in libsystem_c.dylib) [0x98b64cd1]
    1 _CFAppendXML0 + 2616 (in CoreFoundation) [0x9ad45398]
    1 CFDictionaryGetKeysAndValues + 455 (in CoreFoundation) [0x9aceb567]
    1 CFBasicHashGetElements + 207 (in CoreFoundation) [0x9aceb63f]
    1 _CFAppendXML0 + 3128 (in CoreFoundation) [0x9ad45598]
    1 _appendEscapedString + 653 (in CoreFoundation) [0x9ad4621d]
    1 _plistAppendCharacters + 80 (in CoreFoundation) [0x9ad44850]
    1 _CFAppendXML0 + 2778 (in CoreFoundation) [0x9ad4543a]
    1 CFArraySortValues + 1183 (in CoreFoundation) [0x9ace86ef]
    1 CFQSortArray + 231 (in CoreFoundation) [0x9ace8927]
    1 CFSortIndexes + 1494 (in CoreFoundation) [0x9ad18466]
    1 __CFSimpleMergeSort + 124 (in CoreFoundation) [0x9ad1850c]
    1 __CFQSortArray_block_invoke_1 + 47 (in CoreFoundation) [0x9ad186ef]
    1 __CFArrayCompareValues + 36 (in CoreFoundation) [0x9ad18724]
    1 CFStringCompare + 60 (in CoreFoundation) [0x9acf4c8c]
    1 CFStringCompareWithOptionsAndLocale + 35 (in CoreFoundation) [0x9acf4cc3]
    1 CFStringGetLength + 108 (in CoreFoundation) [0x9acdc97c]
    1 _CFAppendXML0 + 2722 (in CoreFoundation) [0x9ad45402]
    1 CFArrayReplaceValues + 135 (in CoreFoundation) [0x9ace8ac7]
    1 -[NSMutableArray replaceObjectsInRange:withObjects:count:] + 979 (in CoreFoundation) [0x9ad27e93]
    4 _CFAppendXML0 + 3128 (in CoreFoundation) [0x9ad45598]
    2 _appendEscapedString + 340 (in CoreFoundation) [0x9ad460e4]
    1 CFStringGetCharacters + 143 (in CoreFoundation) [0x9aced27f]
    1 CFStringGetCharacters + 20 (in CoreFoundation) [0x9aced204]
    2 _appendEscapedString + 602 (in CoreFoundation) [0x9ad461ea]
    2 _plistAppendCharacters + 150 (in CoreFoundation) [0x9ad44896]
    2 CFDataAppendBytes + 163 (in CoreFoundation) [0x9aceb793]
    1 CFDataReplaceBytes + 487 (in CoreFoundation) [0x9ace9857]
    1 __CFDataGrow + 354 (in CoreFoundation) [0x9acec362]
    1 realloc + 175 (in libsystem_c.dylib) [0x98ba56f6]
    1 malloc_zone_realloc + 84 (in libsystem_c.dylib) [0x98ba47c0]
    1 szone_realloc + 2552 (in libsystem_c.dylib) [0x98b6f6f4]
    1 vm_copy + 167 (in libsystem_kernel.dylib) [0x9a73fa6c]
    1 mach_msg_trap + 10 (in libsystem_kernel.dylib) [0x9a741c22]
    1 CFDataReplaceBytes + 727 (in CoreFoundation) [0x9ace9947]
    1 memmove$VARIANT$sse42 + 39 (in libsystem_c.dylib) [0x98b279e4]
    2 _CFAppendXML0 + 3239 (in CoreFoundation) [0x9ad45607]
    2 CFDictionaryGetValue + 135 (in CoreFoundation) [0x9acd6a87]
    1 CFBasicHashFindBucket + 1844 (in CoreFoundation) [0x9acd71d4]
    1 __CFDictionaryStandardEquateKeys + 46 (in CoreFoundation) [0x9ace422e]
    1 CFEqual + 91 (in CoreFoundation) [0x9ace429b]
    1 CFBasicHashFindBucket + 1679 (in CoreFoundation) [0x9acd712f]
    1 __CFDictionaryStandardHashKey + 32 (in CoreFoundation) [0x9acd7700]
    1 __CFStringHash + 125 (in CoreFoundation) [0x9ace0a4d]
    2 _CFAppendXML0 + 2778 (in CoreFoundation) [0x9ad4543a]
    2 CFArraySortValues + 1183 (in CoreFoundation) [0x9ace86ef]
    2 CFQSortArray + 231 (in CoreFoundation) [0x9ace8927]
    2 CFSortIndexes + 1494 (in CoreFoundation) [0x9ad18466]
    1 __CFSimpleMergeSort + 289 (in CoreFoundation) [0x9ad185b1]
    1 __CFSimpleMergeSort + 289 (in CoreFoundation) [0x9ad185b1]
    1 __CFSimpleMergeSort + 289 (in CoreFoundation) [0x9ad185b1]
    1 __CFSimpleMergeSort + 259 (in CoreFoundation) [0x9ad18593]
    1 __CFSimpleMergeSort + 289 (in CoreFoundation) [0x9ad185b1]
    1 __CFSimpleMergeSort + 289 (in CoreFoundation) [0x9ad185b1]
    1 __CFSimpleMergeSort + 400 (in CoreFoundation) [0x9ad18620]
    1 __CFQSortArray_block_invoke_1 + 47 (in CoreFoundation) [0x9ad186ef]
    1 __CFArrayCompareValues + 36 (in CoreFoundation) [0x9ad18724]
    1 CFStringCompare + 60 (in CoreFoundation) [0x9acf4c8c]
    1 bcmp + 153 (in libsystem_c.dylib) [0x98b9f1b9]
    1 __CFSimpleMergeSort + 259 (in CoreFoundation) [0x9ad18593]
    1 __CFSimpleMergeSort + 289 (in CoreFoundation) [0x9ad185b1]
    1 __CFSimpleMergeSort + 259 (in CoreFoundation) [0x9ad18593]
    1 __CFSimpleMergeSort + 289 (in CoreFoundation) [0x9ad185b1]
    1 __CFSimpleMergeSort + 289 (in CoreFoundation) [0x9ad185b1]
    1 __CFSimpleMergeSort + 259 (in CoreFoundation) [0x9ad18593]
    1 __CFSimpleMergeSort + 400 (in CoreFoundation) [0x9ad18620]
    1 __CFQSortArray_block_invoke_1 + 47 (in CoreFoundation) [0x9ad186ef]
    1 __CFArrayCompareValues + 36 (in CoreFoundation) [0x9ad18724]
    1 CFStringCompare + 60 (in CoreFoundation) [0x9acf4c8c]
    1 bcmp + 132 (in libsystem_c.dylib) [0x98b9f1a4]
    5 -[NSDictionary(NSDictionary) writeToFile:atomically:] + 287 (in Foundation) [0x95e2a331]
    5 -[NSData(NSData) writeToFile:atomically:] + 103 (in Foundation) [0x95e2a51e]
    5 _NSWriteBytesToFile + 60 (in Foundation) [0x95e2a565]
    4 __fsync + 10 (in libsystem_kernel.dylib) [0x9a7445fa]
    1 _NSWriteBytesToFileWithExtendedAttributes + 1253 (in Foundation) [0x95e2aa52]
    1 __rename + 10 (in libsystem_kernel.dylib) [0x9a743b0a]
    2 -[NSDictionary(NSDictionary) writeToFile:atomically:] + 61 (in Foundation) [0x95e2a24f]
    1 _NSIsPList + 793 (in Foundation) [0x95e28608]
    1 _NSIsPList + 659 (in Foundation) [0x95e28582]
    1 -[__NSCFDictionary keyEnumerator] + 97 (in CoreFoundation) [0x9ad5e271]
    1 -[__NSCFDictionary retain] + 25 (in CoreFoundation) [0x9ad3bec9]
    1 _NSIsPList + 770 (in Foundation) [0x95e285f1]
    1 -[__NSCFDictionary objectForKey:] + 28 (in CoreFoundation) [0x9ad3897c]
    1 CFDictionaryGetValue + 135 (in CoreFoundation) [0x9acd6a87]
    1 CFBasicHashFindBucket + 1844 (in CoreFoundation) [0x9acd71d4]
    1 __CFDictionaryStandardEquateKeys + 46 (in CoreFoundation) [0x9ace422e]
    1 CFEqual + 261 (in CoreFoundation) [0x9ace4345]
    1 bcmp + 128 (in libsystem_c.dylib) [0x98b9f1a0]
    5 -[ILMediaBrowserImageManager loadCachedAttributesForMediaObject:updateIfNotFound:] + 411 (in iLifeMediaBrowser) [0x94ffaadd]
    5 -[ILMediaBrowserImageManager loadAttributes:forMediaObject:atPath:] + 79 (in iLifeMediaBrowser) [0x94ffab80]
    5 -[ILMediaBrowserImageManager loadAttributes:forImageMediaObject:atPath:] + 720 (in iLifeMediaBrowser) [0x94ffd6ca]
    3 -[IKImageWrapper saveAsTIFFAtPath:] + 69 (in ImageKit) [0x9b91df81]
    3 -[NSData(NSData) writeToFile:atomically:] + 103 (in Foundation) [0x95e2a51e]
    3 _NSWriteBytesToFile + 60 (in Foundation) [0x95e2a565]
    3 __fsync + 10 (in libsystem_kernel.dylib) [0x9a7445fa]
    2 -[IKImageWrapper saveAsTIFFAtPath:] + 36 (in ImageKit) [0x9b91df60]
    1 -[IKImageWrapper TIFFRepresentation] + 82 (in ImageKit) [0x9b91eb1c]
    1 -[NSImage TIFFRepresentation] + 49 (in AppKit) [0x92d505e3]
    1 -[NSImage TIFFRepresentationUsingCompression:factor:] + 806 (in AppKit) [0x92d50911]
    1 +[NSBitmapImageRep TIFFRepresentationOfImageRepsInArray:] + 56 (in AppKit) [0x92d50dd9]
    1 +[NSBitmapImageRep(NSBitmapImageFileTypeExtensions) representationOfImageRepsInArray:usingType:properties:] + 2439 (in AppKit) [0x92d51768]
    1 CGImageDestinationFinalize + 158 (in ImageIO) [0x961dc693]
    1 _CGImagePluginWriteTIFF + 3885 (in ImageIO) [0x961dd5e9]
    1 CGAccessSessionGetBytes + 164 (in CoreGraphics) [0x99202dbc]
    1 memmove$VARIANT$sse42 + 136 (in libsystem_c.dylib) [0x98b27a45]
    1 -[IKImageWrapper TIFFRepresentation] + 64 (in ImageKit) [0x9b91eb0a]
    1 -[IKImageWrapper nsImage:] + 53 (in ImageKit) [0x9b92139b]
    1 -[IKImageWrapper _nsImage] + 261 (in ImageKit) [0x9b921519]
    1 IKCGImageFromIconRef + 309 (in ImageKit) [0x9b924834]
    1 PlotIconRefInContext + 403 (in HIServices) [0x93b65a15]
    1 PlotISImageRefInContext + 2063 (in HIServices) [0x93b63375]
    1 CGContextDrawImage + 457 (in CoreGraphics) [0x992b0855]
    1 ripc_DrawImage + 951 (in libRIP.A.dylib) [0x9ce94e6f]
    1 ripc_AcquireImage + 1901 (in libRIP.A.dylib) [0x9ce9661d]
    1 CGSImageDataLock + 165 (in CoreGraphics) [0x992b0c5c]
    1 img_data_lock + 8151 (in CoreGraphics) [0x9922867d]
                                                          

    Hi
    Yes this can be many things - and I can only guess/suggest.
    A. a very common origin to make the Mac un-happy is to - PANIC-HALT - when the round multicolored thing appear.
    So much can go wrong by doing this - and if done often problem builds up that can result in a real disaster.
    B. NEVER - move or alter any folder named - iMovie Event's resp. iMovie Project's - as iMovie has no search function - moving them results in that iMovie get's 100% lost.
    One can move them - but this HAS TO BE done within the iMovie application (as it is up and running)
    C. preference files - there are TWO or more Libraries on Your Mac. First and easy to find is the one You see when opening Your Start-Up Hard Disk window = Root Library == the WRONG ONE
    What we need to find is the one in Your User-Account folder (icon as a house) - and this is in Mac OS X.7, X.8 and X.9 HIDDEN. To see it do:
    ( It can be done like this: Open Terminal, then enter:
    chflags nohidden ~/Library
    Press return, then restart, and it will always be visible until the next major update, when you do the same thing again. )
    or - do like this. 
    On the Finder window at the top left of the screen,
    Hold down the Option key and clicked on Go. 
    This allowed You to see the Library folder and select it. 
    Then keep the Option button pressed down in order to see and select the Library folder. 
    Once found it, You are able to navigate to the iMovie preferences file and move it to the trash.  iMovie then start’s up fine! 
    Now here in Your User Library - find Preferences and trash
    com.apple.iMovie.plist
    com.apple.iMovie3.plist
    com.apple.iMovie7.plist
    com.apple.iMovie8.plist
    com.apple.iMovie9.plist
    com.apple.iMovieApp.plist
    and find
    com.apple.iApps.plist
    While iMovie is NOT RUNNING - move this/these file/s out on to desk-top.
    Now restart iMovie.
    I Prefere another way to find out if this is the problem.
    (after all folders (iMovie Event/Projects are moved into original place)
    • go up to Apple Menu
    • Down to System Pref's
    • Select Accounts - Create a new User
    • Go down the Apple menu - Log OUT
    • Log into as the new User
    Now try iMovie
    Does it work at all ? (Yes You don't see Events or Projects in Your original Account just now)
    If so - Then we know that there is a corrupted pref file to be trashed.
    Else - the problem are much more severe.
    D. After Panic Halt / Forced Quit - I always do -. to keep disasters on arms length.
    • Repair Permissions (Apple Disk Util tool)
    • Start from other HD or DVD - then run Repair Hard Disk (Apple Disk Util tool)
    Yours trying to be of help - Bengt W

  • Safari slow and/or locked up, how do I find .plist file?

    Like many others, my office computers' Safari keeps getting locked up when going to different websites & I often have to do a force quit. I've read various posts, and have tried the simple fixes such as to reset Safari. I keep seeing that I should delete .plist file, but how do I find it? I'm told it's located at (tilde symbol) library/preferences, but how do I find that? My Safari drop down menu has Preferences, but not Library. One post said that the file is located in the home folder, but I don't know where the home folder is.
    I don't know much about computers, but my job requires that I visit certain websites. (I work in a law office, so it's usually government websites, to download legal forms) Fixing computer problems wasn't on my job description when I was hired, but office staff has now shrunk to one part-time worker, and yours truly is doing what I can to keep the office running. How does a Tech Challenged lady find library/preferences and/or my home folder?

    Hi
    What do I do now? Do I trash my old Safari folder, and keep this one with the unwanted bookmarks on that gray section at the top of the window? I'll keep my old Safari on the desktop until I have a chance to check for answers later in the day.
    One of the files in that folder is causing the problem.
    Here's my suggestion:
    Quit Safari.
    Next, move the History.plist file in the Safari folder on the desktop to the new Safari folder, replacing the newly created file. Restart Safari. If the problem occurs, you found your problem file. In that case, move the remaining files on the desktop back to their original location, replacing the new files. Then, move the History.plist file to the trash, then restart Safari.
    By contrast, if Safari is stable after moving the History file, then another file is causing the problem. In that case, return to the Desktop and move the Icons folder found in the Safari folder back to its original location, replacing the newly created one. If Safari problem returns you found the culprit. In that case, you would move the Icon folder to the trash. Then, restart Safari.
    Before going further, let me know if that solves the problem.
    Post back

  • How do you find out what application is generating a plist file in your preference folder?

    I have had two similar warnings come up in Drive Genius 3, a program that I use to manage my drives.  The warnings occur during a daily verification of preferences on my main drive, a 256GB SSD. 
    They state:
    "The preference file at '/Users/me/Library/Preferences/com.analogsolutions.Football.plist' may be corrupted."
    "The preference file at '/Users/me/Library/Preferences/org.machinedevelop.National.plist' may be corrupted."
    Per Drive Genius' advisement, "Corrupted files can cause appplication crashes and should be moved to the Trash." I delete the files, however they are regenerated each day. 
    Q: How do you figure out what application is generating a preference file?  And is there a way to tell if this is a OS generated preference file? 
    I have searched online and cannot find any information about either Analog Solutions or Machine Develop nor am I able to discern what these particular .plist files are for... 
    Q: Are these two .plist files truly potentially harmful?
    Thanks for the Help!
    iMac
    model iMac12,2
    3.4 GHz Intel Core i7
    8 GB 1333 MHz DDR3

    Hi Everyone, sorry for the late response.  I have been monitoring my Preferences Folder; every moment I am on my computer trying to catch what application/process generates these files.  I was hoping to try your suggestions, but oddly enough the offensive .plist files have not returned since the last time I deleted them about a week ago.... strange...
    In any case, I have responded to some of your suggestions and questions that I have information on:
    X423424X wrote: Ok, can you double click the .plist file?  If so it should attempt to launch the Property List Editor (in your Utilities folder).  That way you can look at stuff in the plist.  Maybe (hopefully) there's something in there that can shed some light on who is creating it.   If Property List Editor cannot open the file (some apps create files that have the .plist extension but don't actually create the proper XML format -- probably what ProSoft was alluding to) then try opening it with a text editor.
    The .plist file when opened in text editor contains a string of (what to me seems to be) an arbitrary list of numbers.
    Linc Davis wrote: Those files have been given obfuscated names so you won't know what created them. They must contain encrypted registration data for some third-party commercial software that you use.
    Yes, seems likely...
    Linc Davis wrote: It should be fairly easy to find out what application is creating them, if you really care. Move the files to the Desktop, then log out. Log back in while holding the shift key as you click the "Log In" button. That will prevent your login items from loading, among other things. Open your account preferences and launch the login items one at a time by double-clicking them in the list. After each one, check to see whether the files have been recreated.
    Ran through login, one by one, no luck in identifying the application(s). 
    X423424X wrote: Another thought, lock the plists on the hope that whatever is using them will "choke" and complain about it (no guarantee that will work but worth a try).
    Thanks, the lock idea is the one I will try next if they ever reappear...
    X423424X wrote: Also, I don't recall if I asked this but if those plists are deleted while logged in will they be recreated during that same login session.  Or do they only appear after you deleted them and then and then logged out and back in?  Or do you have to reboot to recreate them?
    Unfortunately I do not know for certain.  Though from all my login/startup/reboot tests I believe that they are not directly linked to starting up the machine or loging in either.
    I'm not really certain why the .plist have not returned.  I haven't uninstalled any programs, though I did run a couple updates for some widgets within the last week; however that was about 3 days after I deleted the last set of .plist files and usually they reappered everyday.  In any case, given that they have not been regenerated I guess my problem is solved per se, at least I am no longer getting that annoying warning everyday.   Still, it's a bit of a mystery  
    Thanks again for all the help!

  • Launchd .plist breaks when periodic daily runs

    Why does my launchd .plist break when periodic daily runs?
    I wrote a script basically like this
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>GroupName</key>
    <string>wheel</string>
    <key>Label</key>
    <string>MacPeter.thingy</string>
    <key>Program</key>
    <string>/usr/local/sbin/my_script</string>
    <key>ProgramArguments</key>
    <array>
    <string>/usr/local/sbin/my_script</string>
    </array>
    <key>StandardErrorPath</key>
    <string>/dev/null</string>
    <key>StandardOutPath</key>
    <string>/var/log/myotherlog.log</string>
    <key>UserName</key>
    <string>root</string>
    <key>WatchPaths</key>
    <array>
    <string>/var/log/my_log.log</string>
    </array>
    </dict>
    </plist>
    I had to do some of this at the command line with sudo to get this .plist file into /Library/LaunchAgents and launch it. The idea is that watches the log file
    my_log.log (which I have created) and when there is activity on this log file it runs my_script, outputting the results to myotherlog.log.
    In order to avoid my_log simply growing unmanageably I also modified the /etc/daily file to add my_log to the list of logs which are rotated daily at 3:15 a.m. At 3.15, periodic daily runs, it moves and gzips my_log.log to my_log.log.0.gz and it creates a fresh my_log.log using touch.
    At this point my .plist remains loaded but stops working: it nolonger watches the new my_log.log.
    As a workaround I have put the following lines in /etc/daily.local:
    launchctl unload /Library/LaunchAgents/MacPeter.thingy.plist
    launchctl load /Library/LaunchAgents/MacPeter.thingy.plist
    This solves the problem. My question:
    Is my workaround really necessary or am I missing some other point about
    using launchd and .plist files?
    G5 single processor   Mac OS X (10.4)  

    Just as a quick guess, I would say that nothing actually breaks, you just need to keep in mind that if you roll the log you need to also reopen the file handle that points to the log file. If you don't reopen the file it will continue to look at the old, possible unlinked file pointer until the process is restarted.
    Not having much to do with launchd I would assume that this is what is happening. You need to get it to reopen the log file after is it rolled.
    Seeya...Q

  • Launchd.plist not launching according to SetCalendarInterval

    I have created a launchd.plist that runs a shell script to connect to a remote server and back up some log files using rsync. I have configured it to run every 15 minutes, but it is running every 10 seconds. I can't figure out why. I have posted my XML to see if anyone can shed light as to why this is happening...
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>Disabled</key>
    <false/>
    <key>Label</key>
    <string>com.bgserver.logs</string>
    <key>LowPriorityIO</key>
    <true/>
    <key>Nice</key>
    <integer>12</integer>
    <key>OnDemand</key>
    <true/>
    <key>ProgramArguments</key>
    <array>
    <string>/Users/user/Documents/scripts/logs.sh</string>
    </array>
    <key>RunAtLoad</key>
    <false/>
    <key>StartCalendarInterval</key>
    <dict>
    <key>Minute</key>
    <integer>15</integer>
    </dict>
    </dict>
    </plist>
    Here is what the console is reporting...
    10/28/09 3:31:35 PM com.apple.launchd.peruser.501[140] (com.bgserver.logs) Throttling respawn: Will start in 10 seconds
    10/28/09 3:31:45 PM com.bgserver.logs[2067] receiving file list ...
    10/28/09 3:31:45 PM com.bgserver.logs[2067] done
    10/28/09 3:31:45 PM com.bgserver.logs[2067] sent 20 bytes received 6398 bytes 12836.00 bytes/sec
    10/28/09 3:31:45 PM com.bgserver.logs[2067] total size is 1008110615 speedup is 157075.51
    10/28/09 3:31:45 PM com.apple.launchd.peruser.501[140] (com.bgserver.logs) Throttling respawn: Will start in 10 seconds
    10/28/09 3:31:55 PM com.bgserver.logs[2071] receiving file list ...
    10/28/09 3:31:55 PM com.bgserver.logs[2071] done
    10/28/09 3:31:55 PM com.bgserver.logs[2071] sent 20 bytes received 6398 bytes 12836.00 bytes/sec
    10/28/09 3:31:55 PM com.bgserver.logs[2071] total size is 1008110615 speedup is 157075.51
    10/28/09 3:31:55 PM com.apple.launchd.peruser.501[140]
    Message was edited by: ScottMSEM
    Message was edited by: ScottMSEM
    Message was edited by: ScottMSEM

    Ok, I made the changes you mentioned, and now my plist looks like this....
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>Disabled</key>
    <false/>
    <key>Label</key>
    <string>com.bgserver.logs</string>
    <key>LowPriorityIO</key>
    <true/>
    <key>Nice</key>
    <integer>12</integer>
    <key>Program</key>
    <array>
    <string>/Users/sford/Documents/scripts/logs.sh</string>
    </array>
    <key>RunAtLoad</key>
    <false/>
    <key>StartInterval</key>
    <integer>900</integer>
    </dict>
    </plist>
    When I type launchctl list I see com.bgserver.logs is working...
    - 0 com.bgserver.logs
    If I type launchctl start com.bgserver.logs, it runs perfectly. The script goes, and does what is expected. Then it never runs again...
    If I type launchctl list, I get the same message that it is working...
    - 0 com.bgserver.logs
    Here is my console report again...
    10/29/09 11:15:49 AM com.bgserver.logs[556] building file list ...
    10/29/09 11:15:49 AM com.bgserver.logs[556] done
    10/29/09 11:15:49 AM com.bgserver.logs[556] sent 940 bytes received 20 bytes 1920.00 bytes/sec
    10/29/09 11:15:49 AM com.bgserver.logs[556] total size is 231809 speedup is 241.47
    You can see it ran at 11:15:49 AM, so I expected it would run at 11:30:49 AM.
    Thanks!

  • Entries in the .plist files.

    I have two apps that share the same code base. I created multiple targets for them. So, for the two targets, I have two .plist files.
    I am getting ready to set some of the entries that the apps need. I see that some of the entries for the Key are not available to one of them - in particular, UIPrerenderedIcon and RequiredDeviceCapabilities.
    Is this normal? In my testing I see that the icon for one of these apps has the conventional Shine and the one for which I see the Key UIPrerenderedIcon, the Shine is absent.
    Thanks in advance.

    The names are different in the two .plist files:
    * Icon already includes gloss effect [YES | NO]
    * Required device capabilities [Array of capabilities]
    and
    * UIPrerendededIcon [YES | NO]
    * UIRequiredDeviceCapabilities [Array of capabilities]
    But then, at the end, things are working....

  • Request for additional functionality of launchd.plist

    Currently, launchd isn't designed to be event-driven via the launchd.plist. To remove the burden from developers, and to make launchd actually useful (cool!) for system administrators, here's a list of useful event options that could be added to launchd.
    OnGUILogin, to launch jobs when a new GUI session starts, with options to specify Aqua or an X11 session.
    OnGUILogout, like OnGUILogin, to launch jobs when logout is done (optionally to wait until exit before loginwindow is shown), or when the Apple's rootless X11 application is given the Quit command.
    OnGUISession, to launch jobs when a user logs in via the loginwindow as a result of fast user switching.
    OnGUISessionSwtich, to launch jobs when a user switches away from his or her desktop as a result of OnGUISession being triggered, with options for the switched-to GUI session to wait to get to the desktop until the job exits.
    OnConsoleLogin, to launch jobs when login(1) is run via a console.
    OnConsoleExit, to launch jobs to completion before exit(1), well, exits.
    OnShutdown, to replace the functionality (or lack of) that SystemStarter provides by supporting the rc.shutdown.local script.
    OnVolumeMount, with options for specifying GUID, Volume Name, Mount Point, or Media Type (USB, CD, DVD), Device Node, or Bus, so that a process can launch as a result of any, or a specific, volume mounting.
    OnVolumeUnmount, like OnVolumeMount, with option to block umount from finishing so that a job can access the volume before it's gone
    OnVolumeEject, for responding to media ejects
    Properly, OnVolumeMount, OnVolumeDismount, and OnVolumeEject would have its plist published to the specified volume upon being run, and launchd would publish the current version before the media is unmounted.
    This way, a removable device may act as a source or destination repository of launchd jobs, across multiple machines. In a way, this makes the volume "intelligent", and can become self-aware.
    Imagine a flash drive that installs system updates via Installer on machines that need them. Or a CD that checks itself for integrity against a volume MD5 checksum when its inserted.
    Or better yet, a volume that uses Time Machine and asks for an update if its stale. Taking that idea further, imagine a flash drive, formatted as XFS (that Time Machine should use in the future), that takes snapshots of a user's files for instant get-away, gotta go situations where certain files are needed. Kind of like a Back-To-My-Mac via removable media. On top of that, publish a resource on the volume to make it a mobile standalone equivalent of Window's System Restore.
    Integrating this functionality for those three options with securityd's user-agent would allow a user to permit such programs to to run or not (and flag them safe as when Internet downloaded files are launched for the first time, or as when Application sandboxing signs the executable).
    I hope this interests the Apple developers that make launchd. It seems all too often Apple's administration tools could be taken so much further to make our Macs true delight.
    Hope you enjoyed reading.

    I see now that the "StartOnMount" option in the plist can respond to a volume mounting.
    After further reading the man page, trying to decipher the -S and -D options to launchtl, this is what I understand, some or all of which may be wrong:
    1. The Aqua session is created when a user initially logs in. Jobs can be sarted as a result via the RunAtLoad option.
    2. The LoginWindow session is created when a user returns to the login window. I wonder is this is triggered by Logout, Fast User Switching, and/or the Screen Saver methods.
    3. The Background, StandardIO, and System session types aren't defined beyond having their names mentioned in the manual.
    4. The -S option, in combination with the -D option, requires plists exist in the LaunchAgents folder, not the LaunchDaemons folder of the domain.
    5. The session option enables the "user" domain, which based upon the manual example probably means jobs defined in ~/Library/LaunchAgents/.
    As a response to (3) above, how does one create or manage the sessions?

  • Cannot boot Mac after installing a .plist file

    Hi,
    I have a MacBook Pro using latest OS and had been having trouble with my wallpaper changing back to default settings. After reading this support thread: https://discussions.apple.com/thread/4144290?start=0&tstart=0, I followed the instructions to install the following file in this directory:
    Library/Preferences/SystemConfiguration/
    The file called autodiskmount.plist had the following content (all following the directions of the thread above):
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="0.9">
    <dict>
    <key>AutomountDisksWithoutUserLogin</key><true/>
    </dict>
    </plist>
    After trying to restart the laptop, it has now been stuck at the grey screen with the apple logo and the rotating circle. I have tried using disk utility and repairing the start up disk. Doing a safe reboot does not work.
    Any  advice on how to repair my Mac and successfully restart it are more than welcome!
    Thanks!

    Restart the computer with the Command and S keys held down and run the following:
    mount -uw /
    mv /Library/Preferences/SystemConfiguration/autodiskmount.plist /Users/Shared/autodiskmount.plist
    exit
    If you're able to log in successfully, open the /Users/Shared/ folder and then delete the file. If you overwrote an existing file, you may need to replace it, which may require reinstalling Mac OS X.
    (117979)

Maybe you are looking for

  • How to upload the data to 'abzu' transaction using bapi

    Hi Experts , I need to upload the data to the (asset write up ) transaction 'abzu' and please help me inthis regard i found some bapi's like below BAPI_FIXEDASSET_CHANGE Changes an Asset BAPI_FIXEDASSET_CREATE Creates an Asset BAPI_FIXEDASSET_CREATE1

  • After running a disk checker, I have 30 gigs showing as used but unaccounted for anywhere, all the files I moved to an external hdd are still taking up space

    I recently purchased a mac book air with the 128g SDD. After setting it up with all my desired applications I started to download some large media files. Knowing that I'm working with limited HDD space I hooked up a portable 1TB Drive, formatted it f

  • Unable to print a pdf doc

    Hi...  I can print the "test" ....  and some doc. directly from my Word files...  but NEVER I am able to print a document PDF...   I received a pdf, I want to print the blank doc and print it to be able to fill it up....  I delete Reader... and downl

  • 2nd Monitor w/23" Cinema Display Issues

    (I searched for this issue and came up empty.) The story is: I just acquired a 23" Cinema Display and am using it as my second monitor for my p-book 17" (1.67, OSX 10.39). It seems to want to mount the monitor completely arbitrarily. For instance, ju

  • Elements 12 Freezing issues

    Photoshop Elements 12 is constantly freezing and the screen gets "stuck" in the corner making the top bar and navigation inaccessible and virtually unusable. Help! I have updates the program, computer and restarted countless times. Any advice?!