Changeset a367778


Ignore:
Timestamp:
Jan 18, 2019 4:30:03 PM (19 months ago)
Author:
meeh <meeh@…>
Branches:
master
Children:
e57606a
Parents:
605f987
Message:

Mac OSX Launcher: Misc changes + xcode project file update

Location:
launchers/macosx
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • launchers/macosx/I2PLauncher.xcodeproj/project.pbxproj

    r605f987 ra367778  
    1010                BF07789721506C810014EB07 /* Storyboard.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = BF07789621506C810014EB07 /* Storyboard.storyboard */; };
    1111                BF07789E21506D2B0014EB07 /* PopoverViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF07789C21506D2B0014EB07 /* PopoverViewController.swift */; };
     12                BF0956E721EAD3590014EB07 /* profile.tgz in Resources */ = {isa = PBXBuildFile; fileRef = BF0956E621EAD3590014EB07 /* profile.tgz */; };
    1213                BF14B70F215C98DC0014EB07 /* LoggerWorker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BF14B70D215C98DC0014EB07 /* LoggerWorker.cpp */; };
    1314                BF14B710215C98DC0014EB07 /* Logger.mm in Sources */ = {isa = PBXBuildFile; fileRef = BF14B70E215C98DC0014EB07 /* Logger.mm */; };
     
    4243                BF86541321515CA00014EB07 /* launcher.jar in Resources */ = {isa = PBXBuildFile; fileRef = BF1EFA46215141640014EB07 /* launcher.jar */; };
    4344                BF865417215182820014EB07 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BF865416215182820014EB07 /* Foundation.framework */; };
     45                BFA5226221CD43480014EB07 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFA5226121CD43480014EB07 /* AppDelegate.swift */; };
     46                BFA5226421CD434A0014EB07 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = BFA5226321CD434A0014EB07 /* Assets.xcassets */; };
     47                BFA5226E21CD44740014EB07 /* StartupItemApp.app in CopyFiles */ = {isa = PBXBuildFile; fileRef = BFA5225F21CD43480014EB07 /* StartupItemApp.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
     48                BFA5227021CDBF450014EB07 /* Startup.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFA5226F21CDBF450014EB07 /* Startup.swift */; };
    4449                BFBDCAE9215040670014EB07 /* Subprocess.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFBDCAE8215040670014EB07 /* Subprocess.swift */; };
    4550                BFBDCAEB215041630014EB07 /* TaskPipeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFBDCAEA215041630014EB07 /* TaskPipeline.swift */; };
     
    6469/* End PBXBuildFile section */
    6570
     71/* Begin PBXCopyFilesBuildPhase section */
     72                BFA5226D21CD44610014EB07 /* CopyFiles */ = {
     73                        isa = PBXCopyFilesBuildPhase;
     74                        buildActionMask = 2147483647;
     75                        dstPath = Contents/Library/LoginItems;
     76                        dstSubfolderSpec = 1;
     77                        files = (
     78                                BFA5226E21CD44740014EB07 /* StartupItemApp.app in CopyFiles */,
     79                        );
     80                        runOnlyForDeploymentPostprocessing = 0;
     81                };
     82/* End PBXCopyFilesBuildPhase section */
     83
    6684/* Begin PBXFileReference section */
    6785                BF07789621506C810014EB07 /* Storyboard.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = Storyboard.storyboard; sourceTree = "<group>"; };
    6886                BF07789C21506D2B0014EB07 /* PopoverViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PopoverViewController.swift; sourceTree = "<group>"; };
     87                BF0956E621EAD3590014EB07 /* profile.tgz */ = {isa = PBXFileReference; lastKnownFileType = file; path = profile.tgz; sourceTree = "<group>"; };
    6988                BF14B70B215C98DC0014EB07 /* LoggerWorker.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = LoggerWorker.hpp; sourceTree = SOURCE_ROOT; };
    7089                BF14B70C215C98DC0014EB07 /* Logger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Logger.h; sourceTree = SOURCE_ROOT; };
     
    112131                BF865414215180F60014EB07 /* libswiftDarwin.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libswiftDarwin.tbd; path = System/Library/PrivateFrameworks/Swift/libswiftDarwin.tbd; sourceTree = SDKROOT; };
    113132                BF865416215182820014EB07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
     133                BFA5225F21CD43480014EB07 /* StartupItemApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = StartupItemApp.app; sourceTree = BUILT_PRODUCTS_DIR; };
     134                BFA5226121CD43480014EB07 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
     135                BFA5226321CD434A0014EB07 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
     136                BFA5226821CD434A0014EB07 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
     137                BFA5226921CD434A0014EB07 /* StartupItemApp.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = StartupItemApp.entitlements; sourceTree = "<group>"; };
     138                BFA5226F21CDBF450014EB07 /* Startup.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Startup.swift; sourceTree = "<group>"; };
    114139                BFBDCAE8215040670014EB07 /* Subprocess.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Subprocess.swift; sourceTree = "<group>"; };
    115140                BFBDCAEA215041630014EB07 /* TaskPipeline.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TaskPipeline.swift; sourceTree = "<group>"; };
     
    150175                        runOnlyForDeploymentPostprocessing = 0;
    151176                };
     177                BFA5225C21CD43480014EB07 /* Frameworks */ = {
     178                        isa = PBXFrameworksBuildPhase;
     179                        buildActionMask = 2147483647;
     180                        files = (
     181                        );
     182                        runOnlyForDeploymentPostprocessing = 0;
     183                };
    152184/* End PBXFrameworksBuildPhase section */
    153185
     
    214246                        isa = PBXGroup;
    215247                        children = (
     248                                BF0956E621EAD3590014EB07 /* profile.tgz */,
    216249                                BF14B714215DA3330014EB07 /* version.h.tpl */,
    217250                                BF1EFA44215141630014EB07 /* base.zip */,
     
    219252                                BF1EFA46215141640014EB07 /* launcher.jar */,
    220253                                BF50616A2113C48E0014EB07 /* I2PLauncher */,
     254                                BFA5226021CD43480014EB07 /* StartupItemApp */,
    221255                                BF5061692113C48E0014EB07 /* Products */,
    222256                                BF5061922113C6ED0014EB07 /* Frameworks */,
     
    228262                        children = (
    229263                                BF5061682113C48E0014EB07 /* I2PLauncher.app */,
     264                                BFA5225F21CD43480014EB07 /* StartupItemApp.app */,
    230265                        );
    231266                        name = Products;
     
    305340                                BF14B711215D9E040014EB07 /* FolderContentMonitor.swift */,
    306341                                BF1D6D9021BB344D0014EB07 /* Preferences.swift */,
     342                                BFA5226F21CDBF450014EB07 /* Startup.swift */,
    307343                        );
    308344                        path = Utils;
     345                        sourceTree = "<group>";
     346                };
     347                BFA5226021CD43480014EB07 /* StartupItemApp */ = {
     348                        isa = PBXGroup;
     349                        children = (
     350                                BFA5226121CD43480014EB07 /* AppDelegate.swift */,
     351                                BFA5226321CD434A0014EB07 /* Assets.xcassets */,
     352                                BFA5226821CD434A0014EB07 /* Info.plist */,
     353                                BFA5226921CD434A0014EB07 /* StartupItemApp.entitlements */,
     354                        );
     355                        path = StartupItemApp;
    309356                        sourceTree = "<group>";
    310357                };
     
    321368                                BF1EFA4B215142030014EB07 /* ShellScript */,
    322369                                BF5061662113C48E0014EB07 /* Resources */,
     370                                BFA5226D21CD44610014EB07 /* CopyFiles */,
    323371                        );
    324372                        buildRules = (
     
    331379                        productType = "com.apple.product-type.application";
    332380                };
     381                BFA5225E21CD43480014EB07 /* StartupItemApp */ = {
     382                        isa = PBXNativeTarget;
     383                        buildConfigurationList = BFA5226C21CD434A0014EB07 /* Build configuration list for PBXNativeTarget "StartupItemApp" */;
     384                        buildPhases = (
     385                                BFA5225B21CD43480014EB07 /* Sources */,
     386                                BFA5225C21CD43480014EB07 /* Frameworks */,
     387                                BFA5225D21CD43480014EB07 /* Resources */,
     388                        );
     389                        buildRules = (
     390                        );
     391                        dependencies = (
     392                        );
     393                        name = StartupItemApp;
     394                        productName = StartupItemApp;
     395                        productReference = BFA5225F21CD43480014EB07 /* StartupItemApp.app */;
     396                        productType = "com.apple.product-type.application";
     397                };
    333398/* End PBXNativeTarget section */
    334399
     
    337402                        isa = PBXProject;
    338403                        attributes = {
     404                                LastSwiftUpdateCheck = 1010;
    339405                                LastUpgradeCheck = 1000;
    340406                                ORGANIZATIONNAME = "The I2P Project";
     
    360426                                                };
    361427                                        };
     428                                        BFA5225E21CD43480014EB07 = {
     429                                                CreatedOnToolsVersion = 10.1;
     430                                                DevelopmentTeam = W3C42P2LA8;
     431                                                ProvisioningStyle = Manual;
     432                                                SystemCapabilities = {
     433                                                        com.apple.ApplicationGroups.Mac = {
     434                                                                enabled = 1;
     435                                                        };
     436                                                };
     437                                        };
    362438                                };
    363439                        };
     
    376452                        targets = (
    377453                                BF5061672113C48E0014EB07 /* I2PLauncher */,
     454                                BFA5225E21CD43480014EB07 /* StartupItemApp */,
    378455                        );
    379456                };
     
    385462                        buildActionMask = 2147483647;
    386463                        files = (
     464                                BF0956E721EAD3590014EB07 /* profile.tgz in Resources */,
    387465                                BF86541321515CA00014EB07 /* launcher.jar in Resources */,
    388466                                BF650CA92152AC7D0014EB07 /* bumpInfoPlist.sh in Resources */,
     
    394472                                BF1D6D8F21BB32460014EB07 /* Preferences.storyboard in Resources */,
    395473                                BF1D6D9B21BB86520014EB07 /* ConsoleWebView.storyboard in Resources */,
     474                        );
     475                        runOnlyForDeploymentPostprocessing = 0;
     476                };
     477                BFA5225D21CD43480014EB07 /* Resources */ = {
     478                        isa = PBXResourcesBuildPhase;
     479                        buildActionMask = 2147483647;
     480                        files = (
     481                                BFA5226421CD434A0014EB07 /* Assets.xcassets in Resources */,
    396482                        );
    397483                        runOnlyForDeploymentPostprocessing = 0;
     
    462548                                BF1D6D9521BB379A0014EB07 /* PreferencesWindowController.swift in Sources */,
    463549                                BF531515215105B40014EB07 /* LogViewController.swift in Sources */,
     550                                BFA5227021CDBF450014EB07 /* Startup.swift in Sources */,
    464551                                BF5315132150EB510014EB07 /* RouterProcessStatus+ObjectiveC.swift in Sources */,
    465552                                BF1D6D9121BB344D0014EB07 /* Preferences.swift in Sources */,
     
    477564                                BFBDCAEB215041630014EB07 /* TaskPipeline.swift in Sources */,
    478565                                BF53150D2150CE310014EB07 /* DateTimeUtils.swift in Sources */,
     566                        );
     567                        runOnlyForDeploymentPostprocessing = 0;
     568                };
     569                BFA5225B21CD43480014EB07 /* Sources */ = {
     570                        isa = PBXSourcesBuildPhase;
     571                        buildActionMask = 2147483647;
     572                        files = (
     573                                BFA5226221CD43480014EB07 /* AppDelegate.swift in Sources */,
    479574                        );
    480575                        runOnlyForDeploymentPostprocessing = 0;
     
    689784                        name = Release;
    690785                };
     786                BFA5226A21CD434A0014EB07 /* Debug */ = {
     787                        isa = XCBuildConfiguration;
     788                        buildSettings = {
     789                                ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
     790                                CLANG_ENABLE_OBJC_ARC = YES;
     791                                CODE_SIGN_ENTITLEMENTS = StartupItemApp/StartupItemApp.entitlements;
     792                                CODE_SIGN_IDENTITY = "Developer ID Application";
     793                                CODE_SIGN_STYLE = Manual;
     794                                COMBINE_HIDPI_IMAGES = YES;
     795                                DEVELOPMENT_TEAM = W3C42P2LA8;
     796                                GCC_WARN_UNUSED_FUNCTION = YES;
     797                                GCC_WARN_UNUSED_VARIABLE = YES;
     798                                INFOPLIST_FILE = StartupItemApp/Info.plist;
     799                                LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
     800                                MACOSX_DEPLOYMENT_TARGET = 10.10;
     801                                MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
     802                                MTL_FAST_MATH = YES;
     803                                PRODUCT_BUNDLE_IDENTIFIER = net.i2p.bootstrap.macosx.StartupItemApp;
     804                                PRODUCT_NAME = "$(TARGET_NAME)";
     805                                PROVISIONING_PROFILE_SPECIFIER = "";
     806                                SKIP_INSTALL = YES;
     807                                SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
     808                                SWIFT_OPTIMIZATION_LEVEL = "-Onone";
     809                                SWIFT_VERSION = 4.2;
     810                        };
     811                        name = Debug;
     812                };
     813                BFA5226B21CD434A0014EB07 /* Release */ = {
     814                        isa = XCBuildConfiguration;
     815                        buildSettings = {
     816                                ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
     817                                CLANG_ENABLE_OBJC_ARC = YES;
     818                                CODE_SIGN_ENTITLEMENTS = StartupItemApp/StartupItemApp.entitlements;
     819                                CODE_SIGN_IDENTITY = "Developer ID Application";
     820                                CODE_SIGN_STYLE = Manual;
     821                                COMBINE_HIDPI_IMAGES = YES;
     822                                DEVELOPMENT_TEAM = W3C42P2LA8;
     823                                GCC_WARN_UNUSED_FUNCTION = YES;
     824                                GCC_WARN_UNUSED_VARIABLE = YES;
     825                                INFOPLIST_FILE = StartupItemApp/Info.plist;
     826                                LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
     827                                MACOSX_DEPLOYMENT_TARGET = 10.10;
     828                                MTL_FAST_MATH = YES;
     829                                PRODUCT_BUNDLE_IDENTIFIER = net.i2p.bootstrap.macosx.StartupItemApp;
     830                                PRODUCT_NAME = "$(TARGET_NAME)";
     831                                PROVISIONING_PROFILE_SPECIFIER = "";
     832                                SKIP_INSTALL = YES;
     833                                SWIFT_OPTIMIZATION_LEVEL = "-O";
     834                                SWIFT_VERSION = 4.2;
     835                        };
     836                        name = Release;
     837                };
    691838/* End XCBuildConfiguration section */
    692839
     
    710857                        defaultConfigurationName = Release;
    711858                };
     859                BFA5226C21CD434A0014EB07 /* Build configuration list for PBXNativeTarget "StartupItemApp" */ = {
     860                        isa = XCConfigurationList;
     861                        buildConfigurations = (
     862                                BFA5226A21CD434A0014EB07 /* Debug */,
     863                                BFA5226B21CD434A0014EB07 /* Release */,
     864                        );
     865                        defaultConfigurationIsVisible = 0;
     866                        defaultConfigurationName = Release;
     867                };
    712868/* End XCConfigurationList section */
    713869
  • launchers/macosx/I2PLauncher/SwiftMainDelegate.swift

    r605f987 ra367778  
    99import Foundation
    1010import Cocoa
     11
     12extension Notification.Name {
     13  static let killLauncher = Notification.Name("killStartupLauncher")
     14}
    1115
    1216class Logger {
     
    110114      }
    111115    }
     116    let launcherAppId = "net.i2p.bootstrap.macosx.StartupItemApp"
     117    let runningApps = NSWorkspace.shared().runningApplications
     118    let isRunning = !runningApps.filter { $0.bundleIdentifier == launcherAppId }.isEmpty
     119    // SMLoginItemSetEnabled(launcherAppId as CFString, true)
     120   
     121    if isRunning {
     122      DistributedNotificationCenter.default().post(name: .killLauncher, object: Bundle.main.bundleIdentifier!)
     123    }
    112124  }
    113125 
  • launchers/macosx/I2PLauncher/Utils/Preferences.swift

    r605f987 ra367778  
    6969  subscript(prefName:String) -> Any? {
    7070    get  {
    71       return prefObject[prefName]
     71      let ret = prefObject[prefName]
     72      if (ret != nil) {
     73        return ret
     74      }
     75      return prefDefaultDict[prefName]
    7276    }
    7377    set(newValue) {
    7478      prefObject[prefName] = newValue
    7579      prefDict[prefName] = PreferenceRow(prefName, newValue, prefDefaultDict[prefName])
     80      UserDefaults.standard.set(newValue, forKey: prefName)
    7681      self.syncPref()
    7782    }
     
    113118    defaults["I2Pref_alsoStartFirefoxOnLaunch"] = true
    114119    defaults["I2Pref_firefoxBundlePath"] = "/Applications/Firefox.app"
     120    defaults["I2Pref_firefoxProfilePath"] = NSString(format: "%@/Library/Application Support/i2p/profile", home)
    115121    defaults["I2Pref_consolePortCheckNum"] = 7657
    116122    defaults["I2Pref_i2pBaseDirectory"] = NSString(format: "%@/Library/I2P", home)
Note: See TracChangeset for help on using the changeset viewer.