mirror of
https://github.com/munki/munki.git
synced 2026-04-23 21:40:25 -05:00
Removing notifier from master branch
This commit is contained in:
@@ -1,359 +0,0 @@
|
||||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 46;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
C0022FD61AD9BCED007DCEC3 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C0022FD51AD9BCED007DCEC3 /* Cocoa.framework */; };
|
||||
C0022FDF1AD9BCED007DCEC3 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = C0022FDE1AD9BCED007DCEC3 /* main.m */; };
|
||||
C0022FE21AD9BCED007DCEC3 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = C0022FE01AD9BCED007DCEC3 /* Credits.rtf */; };
|
||||
C0022FE51AD9BCED007DCEC3 /* libpython2.6.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = C0022FE41AD9BCED007DCEC3 /* libpython2.6.dylib */; };
|
||||
C0022FE71AD9BCED007DCEC3 /* main.py in Resources */ = {isa = PBXBuildFile; fileRef = C0022FE61AD9BCED007DCEC3 /* main.py */; };
|
||||
C0022FE91AD9BCED007DCEC3 /* AppDelegate.py in Resources */ = {isa = PBXBuildFile; fileRef = C0022FE81AD9BCED007DCEC3 /* AppDelegate.py */; };
|
||||
C0022FEC1AD9BCED007DCEC3 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = C0022FEA1AD9BCED007DCEC3 /* MainMenu.xib */; };
|
||||
C0022FEE1AD9BCED007DCEC3 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = C0022FED1AD9BCED007DCEC3 /* Images.xcassets */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
C0022FD21AD9BCED007DCEC3 /* notifier.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = notifier.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
C0022FD51AD9BCED007DCEC3 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
|
||||
C0022FD81AD9BCED007DCEC3 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
|
||||
C0022FD91AD9BCED007DCEC3 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };
|
||||
C0022FDA1AD9BCED007DCEC3 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||
C0022FDD1AD9BCED007DCEC3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
C0022FDE1AD9BCED007DCEC3 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
|
||||
C0022FE11AD9BCED007DCEC3 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/Credits.rtf; sourceTree = "<group>"; };
|
||||
C0022FE41AD9BCED007DCEC3 /* libpython2.6.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libpython2.6.dylib; path = /System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/config/libpython2.6.dylib; sourceTree = "<absolute>"; };
|
||||
C0022FE61AD9BCED007DCEC3 /* main.py */ = {isa = PBXFileReference; lastKnownFileType = text.script.python; path = main.py; sourceTree = "<group>"; };
|
||||
C0022FE81AD9BCED007DCEC3 /* AppDelegate.py */ = {isa = PBXFileReference; lastKnownFileType = text.script.python; path = AppDelegate.py; sourceTree = "<group>"; };
|
||||
C0022FEB1AD9BCED007DCEC3 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||
C0022FED1AD9BCED007DCEC3 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
C0022FCF1AD9BCED007DCEC3 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
C0022FD61AD9BCED007DCEC3 /* Cocoa.framework in Frameworks */,
|
||||
C0022FE51AD9BCED007DCEC3 /* libpython2.6.dylib in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
C0022FC91AD9BCED007DCEC3 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
C0022FDB1AD9BCED007DCEC3 /* notifier */,
|
||||
C0022FD41AD9BCED007DCEC3 /* Frameworks */,
|
||||
C0022FD31AD9BCED007DCEC3 /* Products */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C0022FD31AD9BCED007DCEC3 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
C0022FD21AD9BCED007DCEC3 /* notifier.app */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C0022FD41AD9BCED007DCEC3 /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
C0022FD51AD9BCED007DCEC3 /* Cocoa.framework */,
|
||||
C0022FD71AD9BCED007DCEC3 /* Other Frameworks */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C0022FD71AD9BCED007DCEC3 /* Other Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
C0022FD81AD9BCED007DCEC3 /* AppKit.framework */,
|
||||
C0022FD91AD9BCED007DCEC3 /* CoreData.framework */,
|
||||
C0022FDA1AD9BCED007DCEC3 /* Foundation.framework */,
|
||||
);
|
||||
name = "Other Frameworks";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C0022FDB1AD9BCED007DCEC3 /* notifier */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
C0022FE61AD9BCED007DCEC3 /* main.py */,
|
||||
C0022FE81AD9BCED007DCEC3 /* AppDelegate.py */,
|
||||
C0022FEA1AD9BCED007DCEC3 /* MainMenu.xib */,
|
||||
C0022FED1AD9BCED007DCEC3 /* Images.xcassets */,
|
||||
C0022FE31AD9BCED007DCEC3 /* SharedLibraries */,
|
||||
C0022FDC1AD9BCED007DCEC3 /* Supporting Files */,
|
||||
);
|
||||
path = notifier;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C0022FDC1AD9BCED007DCEC3 /* Supporting Files */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
C0022FDD1AD9BCED007DCEC3 /* Info.plist */,
|
||||
C0022FDE1AD9BCED007DCEC3 /* main.m */,
|
||||
C0022FE01AD9BCED007DCEC3 /* Credits.rtf */,
|
||||
);
|
||||
name = "Supporting Files";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C0022FE31AD9BCED007DCEC3 /* SharedLibraries */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
C0022FE41AD9BCED007DCEC3 /* libpython2.6.dylib */,
|
||||
);
|
||||
name = SharedLibraries;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
C0022FD11AD9BCED007DCEC3 /* notifier */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = C0022FF11AD9BCED007DCEC3 /* Build configuration list for PBXNativeTarget "notifier" */;
|
||||
buildPhases = (
|
||||
C0022FCE1AD9BCED007DCEC3 /* Sources */,
|
||||
C0022FCF1AD9BCED007DCEC3 /* Frameworks */,
|
||||
C0022FD01AD9BCED007DCEC3 /* Resources */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = notifier;
|
||||
productName = notifier;
|
||||
productReference = C0022FD21AD9BCED007DCEC3 /* notifier.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
C0022FCA1AD9BCED007DCEC3 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0620;
|
||||
ORGANIZATIONNAME = "The Munki Project";
|
||||
TargetAttributes = {
|
||||
C0022FD11AD9BCED007DCEC3 = {
|
||||
CreatedOnToolsVersion = 6.2;
|
||||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = C0022FCD1AD9BCED007DCEC3 /* Build configuration list for PBXProject "notifier" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 0;
|
||||
knownRegions = (
|
||||
en,
|
||||
);
|
||||
mainGroup = C0022FC91AD9BCED007DCEC3;
|
||||
productRefGroup = C0022FD31AD9BCED007DCEC3 /* Products */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
C0022FD11AD9BCED007DCEC3 /* notifier */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
C0022FD01AD9BCED007DCEC3 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
C0022FE21AD9BCED007DCEC3 /* Credits.rtf in Resources */,
|
||||
C0022FEE1AD9BCED007DCEC3 /* Images.xcassets in Resources */,
|
||||
C0022FE91AD9BCED007DCEC3 /* AppDelegate.py in Resources */,
|
||||
C0022FE71AD9BCED007DCEC3 /* main.py in Resources */,
|
||||
C0022FEC1AD9BCED007DCEC3 /* MainMenu.xib in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
C0022FCE1AD9BCED007DCEC3 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
C0022FDF1AD9BCED007DCEC3 /* main.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
C0022FE01AD9BCED007DCEC3 /* Credits.rtf */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
C0022FE11AD9BCED007DCEC3 /* en */,
|
||||
);
|
||||
name = Credits.rtf;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C0022FEA1AD9BCED007DCEC3 /* MainMenu.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
C0022FEB1AD9BCED007DCEC3 /* en */,
|
||||
);
|
||||
name = MainMenu.xib;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
C0022FEF1AD9BCED007DCEC3 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGN_IDENTITY = "-";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"DEBUG=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
/System/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6,
|
||||
);
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SYSTEM_LIBRARY_DIR)/Frameworks/Python.framework/Versions/2.6/lib/python2.6/config",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = macosx10.9;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
C0022FF01AD9BCED007DCEC3 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGN_IDENTITY = "-";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
/System/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6,
|
||||
);
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SYSTEM_LIBRARY_DIR)/Frameworks/Python.framework/Versions/2.6/lib/python2.6/config",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = macosx10.9;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
C0022FF21AD9BCED007DCEC3 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
INFOPLIST_FILE = notifier/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SYSTEM_LIBRARY_DIR)/Frameworks/Python.framework/Versions/2.6/lib/python2.6/config",
|
||||
);
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
C0022FF31AD9BCED007DCEC3 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
INFOPLIST_FILE = notifier/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(SYSTEM_LIBRARY_DIR)/Frameworks/Python.framework/Versions/2.6/lib/python2.6/config",
|
||||
);
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
C0022FCD1AD9BCED007DCEC3 /* Build configuration list for PBXProject "notifier" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
C0022FEF1AD9BCED007DCEC3 /* Debug */,
|
||||
C0022FF01AD9BCED007DCEC3 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
C0022FF11AD9BCED007DCEC3 /* Build configuration list for PBXNativeTarget "notifier" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
C0022FF21AD9BCED007DCEC3 /* Debug */,
|
||||
C0022FF31AD9BCED007DCEC3 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = C0022FCA1AD9BCED007DCEC3 /* Project object */;
|
||||
}
|
||||
-7
@@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:notifier.xcodeproj">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
-41
@@ -1,41 +0,0 @@
|
||||
<?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>IDESourceControlProjectFavoriteDictionaryKey</key>
|
||||
<false/>
|
||||
<key>IDESourceControlProjectIdentifier</key>
|
||||
<string>E088A8E1-4185-4AB3-AE66-1B742E32B2A2</string>
|
||||
<key>IDESourceControlProjectName</key>
|
||||
<string>project</string>
|
||||
<key>IDESourceControlProjectOriginsDictionary</key>
|
||||
<dict>
|
||||
<key>A31FD838B66508AF3FC9DA0BE09B237ED93F27DB</key>
|
||||
<string>https://github.com/munki/munki.git</string>
|
||||
</dict>
|
||||
<key>IDESourceControlProjectPath</key>
|
||||
<string>code/apps/notifier/notifier.xcodeproj/project.xcworkspace</string>
|
||||
<key>IDESourceControlProjectRelativeInstallPathDictionary</key>
|
||||
<dict>
|
||||
<key>A31FD838B66508AF3FC9DA0BE09B237ED93F27DB</key>
|
||||
<string>../../../../..</string>
|
||||
</dict>
|
||||
<key>IDESourceControlProjectURL</key>
|
||||
<string>https://github.com/munki/munki.git</string>
|
||||
<key>IDESourceControlProjectVersion</key>
|
||||
<integer>111</integer>
|
||||
<key>IDESourceControlProjectWCCIdentifier</key>
|
||||
<string>A31FD838B66508AF3FC9DA0BE09B237ED93F27DB</string>
|
||||
<key>IDESourceControlProjectWCConfigurations</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>IDESourceControlRepositoryExtensionIdentifierKey</key>
|
||||
<string>public.vcs.git</string>
|
||||
<key>IDESourceControlWCCIdentifierKey</key>
|
||||
<string>A31FD838B66508AF3FC9DA0BE09B237ED93F27DB</string>
|
||||
<key>IDESourceControlWCCName</key>
|
||||
<string>munki</string>
|
||||
</dict>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
||||
BIN
Binary file not shown.
-88
@@ -1,88 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0620"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "C0022FD11AD9BCED007DCEC3"
|
||||
BuildableName = "notifier.app"
|
||||
BlueprintName = "notifier"
|
||||
ReferencedContainer = "container:notifier.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
buildConfiguration = "Debug">
|
||||
<Testables>
|
||||
</Testables>
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "C0022FD11AD9BCED007DCEC3"
|
||||
BuildableName = "notifier.app"
|
||||
BlueprintName = "notifier"
|
||||
ReferencedContainer = "container:notifier.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
buildConfiguration = "Debug"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "C0022FD11AD9BCED007DCEC3"
|
||||
BuildableName = "notifier.app"
|
||||
BlueprintName = "notifier"
|
||||
ReferencedContainer = "container:notifier.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
buildConfiguration = "Release"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "C0022FD11AD9BCED007DCEC3"
|
||||
BuildableName = "notifier.app"
|
||||
BlueprintName = "notifier"
|
||||
ReferencedContainer = "container:notifier.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
-22
@@ -1,22 +0,0 @@
|
||||
<?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>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>notifier.xcscheme</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>C0022FD11AD9BCED007DCEC3</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,135 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# AppDelegate.py
|
||||
# notifier
|
||||
#
|
||||
# Created by Greg Neagle on 4/11/15.
|
||||
# Copyright (c) 2015 The Munki Project. All rights reserved.
|
||||
#
|
||||
|
||||
from Foundation import *
|
||||
from AppKit import *
|
||||
|
||||
import objc
|
||||
|
||||
MSCbundleIdentifier = u'com.googlecode.munki.ManagedSoftwareCenter'
|
||||
NotificationCenterUIBundleID = u'com.apple.notificationcenterui'
|
||||
|
||||
class AppDelegate(NSObject):
|
||||
def applicationDidFinishLaunching_(self, notification):
|
||||
userNotification = notification.userInfo().get('NSApplicationLaunchUserNotificationKey')
|
||||
if userNotification:
|
||||
NSLog('Launched due to NSUserNotification')
|
||||
self.userActivatedNotification_(userNotification)
|
||||
NSApp.terminate_(self)
|
||||
else:
|
||||
|
||||
runningProcesses = NSWorkspace.sharedWorkspace().runningApplications().valueForKey_(
|
||||
'bundleIdentifier')
|
||||
if NotificationCenterUIBundleID not in runningProcesses:
|
||||
NSLog('[!] Unable to post a notification for the current user (%@), as it has no '
|
||||
'running NotificationCenter instance.', NSUserName())
|
||||
NSApp.terminate_(self)
|
||||
self.notify('Updates available', '', 'Software updates are ready to install.',
|
||||
'munki://updates')
|
||||
|
||||
|
||||
def notify(self, title, subtitle, text, url):
|
||||
'''Send our notification'''
|
||||
nc = NSUserNotificationCenter.defaultUserNotificationCenter()
|
||||
for userNotification in nc.deliveredNotifications():
|
||||
# remove any previously posted update notifications
|
||||
if userNotification.userInfo().get('type') == 'updates':
|
||||
nc.removeDeliveredNotification_(userNotification)
|
||||
notification = NSUserNotification.alloc().init()
|
||||
notification.setTitle_(title)
|
||||
notification.setSubtitle_(subtitle)
|
||||
notification.setInformativeText_(text)
|
||||
notification.setSoundName_('NSUserNotificationDefaultSoundName')
|
||||
notification.setUserInfo_({'action': 'open_url', 'url': url, 'type': 'updates'})
|
||||
notification.setHasActionButton_(True)
|
||||
notification.setActionButtonTitle_('Details')
|
||||
# private (undocumented) functionality
|
||||
notification.setValue_forKey_(True, '_showsButtons')
|
||||
nc.setDelegate_(self)
|
||||
nc.scheduleNotification_(notification)
|
||||
|
||||
def userNotificationCenter_didActivateNotification_(self, center, notification):
|
||||
'''User clicked on our notification'''
|
||||
NSLog('Got userNotificationCenter:didActivateNotification:')
|
||||
self.userActivatedNotification_(notification)
|
||||
|
||||
def userNotificationCenter_shouldPresentNotification_(self, center, notification):
|
||||
'''Delegate method called when Notification Center has decided it doesn't
|
||||
need to present the notification -- returning True overrides that decision'''
|
||||
NSLog('Got userNotificationCenter:shouldPresentNotification:')
|
||||
return True
|
||||
|
||||
def userNotificationCenter_didDeliverNotification_(self, center, notification):
|
||||
'''Notification was delivered and we can exit'''
|
||||
NSLog('Got userNotificationCenter:didDeliverNotification:')
|
||||
NSApp.terminate_(self)
|
||||
|
||||
def userActivatedNotification_(self, notification):
|
||||
'''React to user clicking on notification by launching MSC.app and showing Updates page'''
|
||||
NSUserNotificationCenter.defaultUserNotificationCenter().removeDeliveredNotification_(
|
||||
notification)
|
||||
user_info = notification.userInfo()
|
||||
if user_info.get('action') == 'open_url':
|
||||
url = user_info.get('url')
|
||||
NSWorkspace.sharedWorkspace(
|
||||
).openURLs_withAppBundleIdentifier_options_additionalEventParamDescriptor_launchIdentifiers_(
|
||||
[NSURL.URLWithString_(url)], MSCbundleIdentifier, 0, None, None)
|
||||
|
||||
|
||||
def swizzle(*args):
|
||||
"""
|
||||
Decorator to override an ObjC selector's implementation with a
|
||||
custom implementation ("method swizzling").
|
||||
|
||||
Use like this:
|
||||
|
||||
@swizzle(NSOriginalClass, 'selectorName')
|
||||
def swizzled_selectorName(self, original):
|
||||
--> `self` points to the instance
|
||||
--> `original` is the original implementation
|
||||
|
||||
Originally from http://klep.name/programming/python/
|
||||
|
||||
(The link was dead on 2013-05-22 but the Google Cache version works:
|
||||
http://goo.gl/ABGvJ)
|
||||
"""
|
||||
cls, SEL = args
|
||||
|
||||
def decorator(func):
|
||||
old_IMP = cls.instanceMethodForSelector_(SEL)
|
||||
|
||||
def wrapper(self, *args, **kwargs):
|
||||
return func(self, old_IMP, *args, **kwargs)
|
||||
|
||||
new_IMP = objc.selector(wrapper, selector=old_IMP.selector,
|
||||
signature=old_IMP.signature)
|
||||
objc.classAddMethod(cls, SEL, new_IMP)
|
||||
return wrapper
|
||||
|
||||
return decorator
|
||||
|
||||
|
||||
@swizzle(NSBundle, 'bundleIdentifier')
|
||||
def swizzled_bundleIdentifier(self, original):
|
||||
"""Swizzle [NSBundle bundleIdentifier] to make NSUserNotifications
|
||||
work.
|
||||
|
||||
To post NSUserNotifications OS X requires the binary to be packaged
|
||||
as an application bundle. To circumvent this restriction, we modify
|
||||
`bundleIdentifier` to return a fake bundle identifier.
|
||||
|
||||
Original idea for this approach by Norio Numura:
|
||||
https://github.com/norio-nomura/usernotification
|
||||
"""
|
||||
if self == NSBundle.mainBundle():
|
||||
# return our fake bundle identifier
|
||||
return MSCbundleIdentifier
|
||||
else:
|
||||
# call original function
|
||||
return original(self)
|
||||
@@ -1,58 +0,0 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"size" : "16x16",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"size" : "16x16",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"size" : "32x32",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"size" : "32x32",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"size" : "128x128",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"size" : "128x128",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"size" : "256x256",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"size" : "256x256",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"size" : "512x512",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "mac",
|
||||
"size" : "512x512",
|
||||
"scale" : "2x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
<?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>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.googlecode.munki.$(PRODUCT_NAME:rfc1034identifier)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
<string>$(MACOSX_DEPLOYMENT_TARGET)</string>
|
||||
<key>LSUIElement</key>
|
||||
<true/>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>Copyright © 2015 The Munki Project. All rights reserved.</string>
|
||||
<key>NSMainNibFile</key>
|
||||
<string>MainMenu</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>NSApplication</string>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,29 +0,0 @@
|
||||
{\rtf0\ansi{\fonttbl\f0\fswiss Helvetica;}
|
||||
{\colortbl;\red255\green255\blue255;}
|
||||
\paperw9840\paperh8400
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
|
||||
|
||||
\f0\b\fs24 \cf0 Engineering:
|
||||
\b0 \
|
||||
Some people\
|
||||
\
|
||||
|
||||
\b Human Interface Design:
|
||||
\b0 \
|
||||
Some other people\
|
||||
\
|
||||
|
||||
\b Testing:
|
||||
\b0 \
|
||||
Hopefully not nobody\
|
||||
\
|
||||
|
||||
\b Documentation:
|
||||
\b0 \
|
||||
Whoever\
|
||||
\
|
||||
|
||||
\b With special thanks to:
|
||||
\b0 \
|
||||
Mom\
|
||||
}
|
||||
@@ -1,504 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">1050</int>
|
||||
<string key="IBDocument.SystemVersion">13F1077</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">6751</string>
|
||||
<string key="IBDocument.AppKitVersion">1265.21</string>
|
||||
<string key="IBDocument.HIToolboxVersion">698.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="NS.object.0">6751</string>
|
||||
</object>
|
||||
<array key="IBDocument.IntegratedClassDependencies">
|
||||
<string>NSCustomObject</string>
|
||||
<string>NSMenu</string>
|
||||
<string>NSMenuItem</string>
|
||||
</array>
|
||||
<array key="IBDocument.PluginDependencies">
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
</array>
|
||||
<dictionary class="NSMutableDictionary" key="IBDocument.Metadata"/>
|
||||
<array class="NSMutableArray" key="IBDocument.RootObjects" id="1048">
|
||||
<object class="NSCustomObject" id="1021">
|
||||
<string key="NSClassName">NSApplication</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="1014">
|
||||
<string key="NSClassName">FirstResponder</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="1050">
|
||||
<string key="NSClassName">NSApplication</string>
|
||||
</object>
|
||||
<object class="NSMenu" id="649796088">
|
||||
<string key="NSTitle">AMainMenu</string>
|
||||
<array class="NSMutableArray" key="NSMenuItems">
|
||||
<object class="NSMenuItem" id="694149608">
|
||||
<reference key="NSMenu" ref="649796088"/>
|
||||
<string key="NSTitle">notifier</string>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<object class="NSCustomResource" key="NSOnImage" id="715147791">
|
||||
<string key="NSClassName">NSImage</string>
|
||||
<string key="NSResourceName">NSMenuCheckmark</string>
|
||||
</object>
|
||||
<object class="NSCustomResource" key="NSMixedImage" id="897496305">
|
||||
<string key="NSClassName">NSImage</string>
|
||||
<string key="NSResourceName">NSMenuMixedState</string>
|
||||
</object>
|
||||
<string key="NSAction">submenuAction:</string>
|
||||
<reference key="NSTarget" ref="110575045"/>
|
||||
<object class="NSMenu" key="NSSubmenu" id="110575045">
|
||||
<string key="NSTitle">notifier</string>
|
||||
<array class="NSMutableArray" key="NSMenuItems">
|
||||
<object class="NSMenuItem" id="238522557">
|
||||
<reference key="NSMenu" ref="110575045"/>
|
||||
<string key="NSTitle">About notifier</string>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="304266470">
|
||||
<reference key="NSMenu" ref="110575045"/>
|
||||
<bool key="NSIsDisabled">YES</bool>
|
||||
<bool key="NSIsSeparator">YES</bool>
|
||||
<string key="NSTitle"/>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="1046388886">
|
||||
<reference key="NSMenu" ref="110575045"/>
|
||||
<string key="NSTitle">Services</string>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
<string key="NSAction">submenuAction:</string>
|
||||
<reference key="NSTarget" ref="752062318"/>
|
||||
<object class="NSMenu" key="NSSubmenu" id="752062318">
|
||||
<string key="NSTitle">Services</string>
|
||||
<array class="NSMutableArray" key="NSMenuItems"/>
|
||||
<string key="NSName">_NSServicesMenu</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="646227648">
|
||||
<reference key="NSMenu" ref="110575045"/>
|
||||
<bool key="NSIsDisabled">YES</bool>
|
||||
<bool key="NSIsSeparator">YES</bool>
|
||||
<string key="NSTitle"/>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="755159360">
|
||||
<reference key="NSMenu" ref="110575045"/>
|
||||
<string key="NSTitle">Hide notifier</string>
|
||||
<string key="NSKeyEquiv">h</string>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="342932134">
|
||||
<reference key="NSMenu" ref="110575045"/>
|
||||
<string key="NSTitle">Hide Others</string>
|
||||
<string key="NSKeyEquiv">h</string>
|
||||
<int key="NSKeyEquivModMask">1572864</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="908899353">
|
||||
<reference key="NSMenu" ref="110575045"/>
|
||||
<string key="NSTitle">Show All</string>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="1056857174">
|
||||
<reference key="NSMenu" ref="110575045"/>
|
||||
<bool key="NSIsDisabled">YES</bool>
|
||||
<bool key="NSIsSeparator">YES</bool>
|
||||
<string key="NSTitle"/>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="632727374">
|
||||
<reference key="NSMenu" ref="110575045"/>
|
||||
<string key="NSTitle">Quit notifier</string>
|
||||
<string key="NSKeyEquiv">q</string>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSName">_NSAppleMenu</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="391199113">
|
||||
<reference key="NSMenu" ref="649796088"/>
|
||||
<string key="NSTitle">Help</string>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
<string key="NSAction">submenuAction:</string>
|
||||
<reference key="NSTarget" ref="374024848"/>
|
||||
<object class="NSMenu" key="NSSubmenu" id="374024848">
|
||||
<string key="NSTitle">Help</string>
|
||||
<array class="NSMutableArray" key="NSMenuItems">
|
||||
<object class="NSMenuItem" id="238773614">
|
||||
<reference key="NSMenu" ref="374024848"/>
|
||||
<string key="NSTitle">notifier Help</string>
|
||||
<string key="NSKeyEquiv">?</string>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="715147791"/>
|
||||
<reference key="NSMixedImage" ref="897496305"/>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSName">_NSMainMenu</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="610635028">
|
||||
<string key="NSClassName">AppDelegate</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="15635064">
|
||||
<string key="NSClassName">NSFontManager</string>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBObjectContainer" key="IBDocument.Objects">
|
||||
<array key="connectionRecords">
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">delegate</string>
|
||||
<reference key="source" ref="1050"/>
|
||||
<reference key="destination" ref="610635028"/>
|
||||
</object>
|
||||
<int key="connectionID">374</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">orderFrontStandardAboutPanel:</string>
|
||||
<reference key="source" ref="1021"/>
|
||||
<reference key="destination" ref="238522557"/>
|
||||
</object>
|
||||
<int key="connectionID">142</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">showHelp:</string>
|
||||
<reference key="source" ref="1014"/>
|
||||
<reference key="destination" ref="238773614"/>
|
||||
</object>
|
||||
<int key="connectionID">360</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">hide:</string>
|
||||
<reference key="source" ref="1014"/>
|
||||
<reference key="destination" ref="755159360"/>
|
||||
</object>
|
||||
<int key="connectionID">367</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">hideOtherApplications:</string>
|
||||
<reference key="source" ref="1014"/>
|
||||
<reference key="destination" ref="342932134"/>
|
||||
</object>
|
||||
<int key="connectionID">368</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">terminate:</string>
|
||||
<reference key="source" ref="1014"/>
|
||||
<reference key="destination" ref="632727374"/>
|
||||
</object>
|
||||
<int key="connectionID">369</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">unhideAllApplications:</string>
|
||||
<reference key="source" ref="1014"/>
|
||||
<reference key="destination" ref="908899353"/>
|
||||
</object>
|
||||
<int key="connectionID">370</int>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBMutableOrderedSet" key="objectRecords">
|
||||
<array key="orderedObjects">
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">0</int>
|
||||
<array key="object" id="0"/>
|
||||
<reference key="children" ref="1048"/>
|
||||
<nil key="parent"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-2</int>
|
||||
<reference key="object" ref="1021"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">File's Owner</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-1</int>
|
||||
<reference key="object" ref="1014"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">First Responder</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-3</int>
|
||||
<reference key="object" ref="1050"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">Application</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">29</int>
|
||||
<reference key="object" ref="649796088"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="694149608"/>
|
||||
<reference ref="391199113"/>
|
||||
</array>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">MainMenu</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">56</int>
|
||||
<reference key="object" ref="694149608"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="110575045"/>
|
||||
</array>
|
||||
<reference key="parent" ref="649796088"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">103</int>
|
||||
<reference key="object" ref="391199113"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="374024848"/>
|
||||
</array>
|
||||
<reference key="parent" ref="649796088"/>
|
||||
<string key="objectName">1</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">106</int>
|
||||
<reference key="object" ref="374024848"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="238773614"/>
|
||||
</array>
|
||||
<reference key="parent" ref="391199113"/>
|
||||
<string key="objectName">2</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">111</int>
|
||||
<reference key="object" ref="238773614"/>
|
||||
<reference key="parent" ref="374024848"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">57</int>
|
||||
<reference key="object" ref="110575045"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="238522557"/>
|
||||
<reference ref="755159360"/>
|
||||
<reference ref="908899353"/>
|
||||
<reference ref="632727374"/>
|
||||
<reference ref="646227648"/>
|
||||
<reference ref="304266470"/>
|
||||
<reference ref="1046388886"/>
|
||||
<reference ref="1056857174"/>
|
||||
<reference ref="342932134"/>
|
||||
</array>
|
||||
<reference key="parent" ref="694149608"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">58</int>
|
||||
<reference key="object" ref="238522557"/>
|
||||
<reference key="parent" ref="110575045"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">134</int>
|
||||
<reference key="object" ref="755159360"/>
|
||||
<reference key="parent" ref="110575045"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">150</int>
|
||||
<reference key="object" ref="908899353"/>
|
||||
<reference key="parent" ref="110575045"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">136</int>
|
||||
<reference key="object" ref="632727374"/>
|
||||
<reference key="parent" ref="110575045"/>
|
||||
<string key="objectName">1111</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">144</int>
|
||||
<reference key="object" ref="646227648"/>
|
||||
<reference key="parent" ref="110575045"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">236</int>
|
||||
<reference key="object" ref="304266470"/>
|
||||
<reference key="parent" ref="110575045"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">131</int>
|
||||
<reference key="object" ref="1046388886"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="752062318"/>
|
||||
</array>
|
||||
<reference key="parent" ref="110575045"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">149</int>
|
||||
<reference key="object" ref="1056857174"/>
|
||||
<reference key="parent" ref="110575045"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">145</int>
|
||||
<reference key="object" ref="342932134"/>
|
||||
<reference key="parent" ref="110575045"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">130</int>
|
||||
<reference key="object" ref="752062318"/>
|
||||
<reference key="parent" ref="1046388886"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">373</int>
|
||||
<reference key="object" ref="610635028"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">AppDelegate</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">420</int>
|
||||
<reference key="object" ref="15635064"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<dictionary class="NSMutableDictionary" key="flattenedProperties">
|
||||
<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="-3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="103.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="106.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="111.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="130.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="131.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="134.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="136.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="144.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="145.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="149.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="150.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="236.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="29.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="373.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="420.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="56.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="57.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="58.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
|
||||
<nil key="activeLocalization"/>
|
||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">448</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">AppDelegate</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">../notifier/AppDelegate.py</string>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<array class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSApplication</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSApplication.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSFontManager</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSMenu</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSMenu.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSMenuItem</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSResponder</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSResponder.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSView</string>
|
||||
<string key="superclassName">NSResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AppKit.framework/Headers/NSView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
|
||||
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">NO</bool>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
<integer value="1050" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
|
||||
<integer value="4600" key="NS.object.0"/>
|
||||
</object>
|
||||
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
|
||||
<int key="IBDocument.defaultPropertyAccessControl">3</int>
|
||||
<dictionary class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
|
||||
<string key="NSMenuCheckmark">{11, 11}</string>
|
||||
<string key="NSMenuMixedState">{10, 3}</string>
|
||||
</dictionary>
|
||||
</data>
|
||||
</archive>
|
||||
@@ -1,41 +0,0 @@
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import <Python.h>
|
||||
|
||||
int main(int argc, const char * argv[]) {
|
||||
|
||||
@autoreleasepool {
|
||||
|
||||
NSBundle *mainBundle = [NSBundle mainBundle];
|
||||
NSString *resourcePath = [mainBundle resourcePath];
|
||||
NSArray *pythonPathArray = [NSArray arrayWithObjects: resourcePath, [resourcePath stringByAppendingPathComponent:@"PyObjC"], nil];
|
||||
|
||||
setenv("PYTHONPATH", [[pythonPathArray componentsJoinedByString:@":"] UTF8String], 1);
|
||||
|
||||
NSArray *possibleMainExtensions = [NSArray arrayWithObjects: @"py", @"pyc", @"pyo", nil];
|
||||
NSString *mainFilePath = nil;
|
||||
|
||||
for (NSString *possibleMainExtension in possibleMainExtensions) {
|
||||
mainFilePath = [mainBundle pathForResource: @"main" ofType: possibleMainExtension];
|
||||
if ( mainFilePath != nil ) break;
|
||||
}
|
||||
|
||||
if ( !mainFilePath ) {
|
||||
[NSException raise: NSInternalInconsistencyException format: @"%s:%d main() Failed to find the Main.{py,pyc,pyo} file in the application wrapper's Resources directory.", __FILE__, __LINE__];
|
||||
}
|
||||
|
||||
Py_SetProgramName("/usr/bin/python");
|
||||
Py_Initialize();
|
||||
PySys_SetArgv(argc, (char **)argv);
|
||||
|
||||
const char *mainFilePathPtr = [mainFilePath UTF8String];
|
||||
FILE *mainFile = fopen(mainFilePathPtr, "r");
|
||||
int result = PyRun_SimpleFile(mainFile, (char *)[[mainFilePath lastPathComponent] UTF8String]);
|
||||
|
||||
if ( result != 0 ) {
|
||||
[NSException raise: NSInternalInconsistencyException
|
||||
format: @"%s:%d main() PyRun_SimpleFile failed with file '%@'. See console for errors.", __FILE__, __LINE__, mainFilePath];
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# main.py
|
||||
# notifier
|
||||
#
|
||||
# Created by Greg Neagle on 4/11/15.
|
||||
# Copyright (c) 2015 The Munki Project. All rights reserved.
|
||||
#
|
||||
|
||||
# import modules required by application
|
||||
import objc
|
||||
import Foundation
|
||||
import AppKit
|
||||
|
||||
from PyObjCTools import AppHelper
|
||||
|
||||
# import modules containing classes required to start application and load MainMenu.nib
|
||||
import AppDelegate
|
||||
|
||||
# pass control to AppKit
|
||||
AppHelper.runEventLoop()
|
||||
@@ -1,13 +0,0 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# ncdb.py
|
||||
# notifier
|
||||
#
|
||||
# Created by Greg Neagle on 4/15/15.
|
||||
# Copyright (c) 2015 The Munki Project. All rights reserved.
|
||||
#
|
||||
|
||||
#import os
|
||||
#import sys
|
||||
|
||||
|
||||
Reference in New Issue
Block a user