NAME

    Mac::SystemDirectory - Locate Mac OS X Standard System Directories


SYNOPSIS

      use Mac::SystemDirectory qw[:all];
  

      print FindDirectory(NSDocumentDirectory);


DESCRIPTION

    Locate Mac OS X Standard System Directories


FUNCTIONS

  FindDirectory(Directory [, DomainMask])

    *Usage*


        $path  = FindDirectory(NSApplicationDirectory);
        @paths = FindDirectory(NSApplicationDirectory);


    *Arguments*


    "Directory"

        "Directory" constant.


    "DomainMask" (optional)

        "DomainMask" constant. Defaults to "NSUserDomainMask".


    *Returns*


    When called in scalar context this function returns the first matching
    directory. In list context it returns all matching directories. If no
    directories are found, undef is returned in a scalar context and an
    empty list in a list context.


CONSTANTS

  DomainMask

   NSUserDomainMask

    The user’s home directory—the place to install user’s personal
    items (~). Available in Mac OS X v10.0 and later.


   NSLocalDomainMask

    Local to the current machine—the place to install items available to
    everyone on this machine. Available in Mac OS X v10.0 and later.


   NSNetworkDomainMask

    Publicly available location in the local area network—the place to
    install items available on the network (/Network). Available in Mac OS X
    v10.0 and later.


   NSSystemDomainMask

    Provided by Apple — can’t be modified (/System). Available in Mac OS
    X v10.0 and later.


   NSAllDomainsMask

    All domains. Includes all of the above and future items. Available in
    Mac OS X v10.0 and later.


  Directory

   NSApplicationDirectory

    Supported applications (/Applications). Available in Mac OS X v10.0 and
    later.


   NSDemoApplicationDirectory

    Unsupported applications and demonstration versions. Available in Mac OS
    X v10.0 and later.


   NSDeveloperApplicationDirectory

    Developer applications (/Developer/Applications). Available in Mac OS X
    v10.0 and later.


   NSAdminApplicationDirectory

    System and network administration applications. Available in Mac OS X
    v10.0 and later.


   NSLibraryDirectory

    Various user-visible documentation, support, and configuration files
    (/Library). Available in Mac OS X v10.0 and later.


   NSDeveloperDirectory

    Developer resources (/Developer). Deprecated: Beginning with Xcode 3.0,
    developer tools can be installed in any location. Available in Mac OS X
    v10.0 and later.


   NSUserDirectory

    User home directories (/Users). Available in Mac OS X v10.0 and later.


   NSDocumentationDirectory

    Documentation. Available in Mac OS X v10.0 and later.


   NSDocumentDirectory

    Document directory. Available in Mac OS X v10.2 and later.


   NSCoreServiceDirectory

    Location of core services (System/Library/CoreServices). Available in
    Mac OS X v10.4 and later.


   NSAutosavedInformationDirectory

    Location of user’s autosaved documents Documents/Autosaved Available
    in Mac OS X v10.6 and later.


   NSDesktopDirectory

    Location of user’s desktop directory. Available in Mac OS X v10.4 and
    later.


   NSCachesDirectory

    Location of discardable cache files (Library/Caches). Available in Mac
    OS X v10.4 and later.


   NSApplicationSupportDirectory

    Location of application support files (Library/Application Support).
    Available in Mac OS X v10.4 and later.


   NSDownloadsDirectory

    Location of the user’s downloads directory. Available in Mac OS X
    v10.5 and later.


   NSInputMethodsDirectory

    Location of Input Methods (Library/Input Methods) Available in Mac OS X
    v10.6 and later.


   NSMoviesDirectory

    Location of user's Movies directory (~/Movies) Available in Mac OS X
    v10.6 and later.


   NSMusicDirectory

    Location of user's Movies directory (~/Music) Available in Mac OS X
    v10.6 and later.


   NSPicturesDirectory

    Location of user's Movies directory (~/Pictures) Available in Mac OS X
    v10.6 and later.


   NSPrinterDescriptionDirectory

    Location of system's PPDs directory (Library/Printers/PPDs) Available in
    Mac OS X v10.6 and later.


   NSSharedPublicDirectory

    Location of user's Public sharing directory (~/Public) Available in Mac
    OS X v10.6 and later.


   NSPreferencePanesDirectory

    Location of the PreferencePanes directory for use with System
    Preferences (Library/PreferencePanes) Available in Mac OS X v10.6 and
    later.


   NSItemReplacementDirectory

    For use with NSFileManager method
    URLForDirectory:inDomain:appropriateForURL:create:error: Available in
    Mac OS X v10.6 and later.


   NSAllApplicationsDirectory

    All directories where applications can occur. Available in Mac OS X
    v10.0 and later.


   NSAllLibrariesDirectory

    All directories where resources can occur. Available in Mac OS X v10.0
    and later.


  EXPORT

    None by default. Functions and constants can either be imported
    individually or in sets grouped by tag names. The tag names are:


    ":all" exports all functions and constants.

    ":DomainMask" exports all "DomainMask" constants.

    ":Directory" exports all "Directory" constants.


SEE ALSO

    <http://developer.apple.com/mac/library/DOCUMENTATION/Cocoa/Conceptual/L
    owLevelFileMgmt/Articles/StandardDirectories.html>


AUTHOR

    Christian Hansen, <chansen@cpan.org>


COPYRIGHT AND LICENSE

    Copyright (C) 2009 by Christian Hansen


    This library is free software; you can redistribute it and/or modify it
    under the same terms as Perl itself, either Perl version 5.8.9 or, at
    your option, any later version of Perl 5 you may have available.


