Lord-Kamina / SwiftDefaultApps

Replacement for RCDefaultApps, written in Swift.
Other
1.43k stars 62 forks source link

Preference pane won't open on Catalina beta #14

Closed atylmo closed 5 years ago

atylmo commented 5 years ago

I just get the error "Could not load preferences pane" and before that a dialog saying the app needs to be updated. Maybe this is related to the new notarization stuff? Here's a log:

2019-07-29 00:59:34.006 System Preferences[1292:21367] NSSoftLinking - The function 'SLSIsSuppressedByScreenTime' can't be found in the (null) framework.
2019-07-29 00:59:34.077 System Preferences[1292:21367]  ### AE 1868656752 sender's PID is 1292 (System Preferences)
2019-07-29 00:59:34.140 System Preferences[1292:21370] building USER cache...
2019-07-29 00:59:34.185 AllowPasswordPref[1298:21405] error == Error Domain=com.apple.LocalAuthentication Code=-6 "Biometry is not available on this device." UserInfo={BiometryType=0, NSLocalizedDescription=Biometry is not available on this device.} isSupported ==  0
2019-07-29 00:59:34.185 AllowPasswordPref[1298:21405] Hardware Check err == 0
2019-07-29 00:59:34.185 AllowPasswordPref[1298:21405] Result -1
2019-07-29 00:59:37.141 System Preferences[1292:21369] ### writing USER cache...
2019-07-29 00:59:41.169 System Preferences[1292:21367] ### advanceToConfigPhaseIfNeeded error :Error Domain=com.apple.ViewBridge Code=14 "(null)" UserInfo={com.apple.ViewBridge.error.hint={
    callStackSymbols =     (
        "0   CoreFoundation                      __exceptionPreprocess + 250",
        "1   libobjc.A.dylib                     objc_exception_throw + 48",
        "2   CoreFoundation                      +[NSException raise:format:arguments:] + 88",
        "3   Foundation                          -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 191",
        "4   ViewBridge                          -[NSViewServiceMarshal _bootstrap:replyData:completion:] + 3369",
        "5   ViewBridge                          -[NSViewServiceMarshal bootstrap:withReply:] + 380",
        "6   CoreFoundation                      __invoking___ + 140",
        "7   CoreFoundation                      -[NSInvocation invoke] + 273",
        "8   CoreFoundation                      -[NSInvocation invokeWithTarget:] + 70",
        "9   ViewBridge                          -[NSVB_ViewServiceImplicitAnimationDecodingProxy forwardInvocation:] + 85",
        "10  CoreFoundation                      ___forwarding___ + 829",
        "11  CoreFoundation                      _CF_forwarding_prep_0 + 120",
        "12  CoreFoundation                      __invoking___ + 140",
        "13  CoreFoundation                      -[NSInvocation invoke] + 273",
        "14  CoreFoundation                      -[NSInvocation invokeWithTarget:] + 70",
        "15  ViewBridge                          -[NSVB_QueueingProxy forwardInvocation:] + 321",
        "16  CoreFoundation                      ___forwarding___ + 829",
        "17  CoreFoundation                      _CF_forwarding_prep_0 + 120",
        "18  CoreFoundation                      __invoking___ + 140",
        "19  CoreFoundation                      -[NSInvocation invoke] + 273",
        "20  CoreFoundation                      -[NSInvocation invokeWithTarget:] + 70",
        "21  CoreFoundation                      ___forwarding___ + 829",
        "22  CoreFoundation                      _CF_forwarding_prep_0 + 120",
        "23  CoreFoundation                      __invoking___ + 140",
        "24  CoreFoundation                      -[NSInvocation invoke] + 273",
        "25  ViewBridge                          __deferNSXPCInvocationOntoMainThread_block_invoke + 228",
        "26  ViewBridge                          __wrapBlockWithVoucher_block_invoke + 37",
        "27  ViewBridge                          __deferBlockOntoMainThread_block_invoke_2 + 507",
        "28  CoreFoundation                      __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12",
        "29  CoreFoundation                      __CFRunLoopDoBlocks + 379",
        "30  CoreFoundation                      __CFRunLoopRun + 2792",
        "31  CoreFoundation                      CFRunLoopRunSpecific + 499",
        "32  HIToolbox                           RunCurrentEventLoopInMode + 292",
        "33  HIToolbox                           ReceiveNextEventCommon + 600",
        "34  HIToolbox                           _BlockUntilNextEventMatchingListInModeWithFilter + 64",
        "35  AppKit                              _DPSNextEvent + 990",
        "36  AppKit                              -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1352",
        "37  ViewBridge                          -[NSViewServiceApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 95",
        "38  AppKit                              -[NSApplication run] + 658",
        "39  AppKit                              NSApplicationMain + 777",
        "40  libxpc.dylib                        _xpc_objc_main.cold.3 + 56",
        "41  libxpc.dylib                        _xpc_objc_main + 515",
        "42  libxpc.dylib                        _xpc_copy_xpcservice_dictionary + 0",
        "43  ViewBridge                          xpc_connection_handler + 0",
        "44  ViewBridge                          NSViewServiceApplicationMain + 3071",
        "45  PreferencePanes                     PreferencePaneMain + 179",
        "46  legacyLoader                        main + 40",
        "47  libdyld.dylib                       start + 1",
        "48  ???                                 0x0 + 1"
    );
    name = NSInternalInconsistencyException;
    reason = "<NSViewServiceMarshal: 0x7ffdaa707cf0 <NSLegacyPrefRemoteViewService: 0x600000518b40 <(null): 0x0>>> was unable to obtain a view; the -setView: method of <NSLegacyPrefRemoteViewService: 0x600000518b40 <(null): 0x0>> was invoked 0 times and the most recent parameter was nil";
}, com.apple.ViewBridge.error.description=NSViewBridgeServiceBootstrapError}
2019-07-29 00:59:41.170 System Preferences[1292:21367] ### cl.fail.lordkamina.SwiftDefaultApps willSelect/willBecomeActive exception:com.apple.ViewBridge
atylmo commented 5 years ago

Never mind. It's because of Gatekeeper. Blech. I hope macOS doesn't get locked down any further.

Running sudo spctl --master-disable makes it work.

Lord-Kamina commented 5 years ago

Ugh. I wonder if I need to pay to get it notarized? And further, would they notarize it if it uses totally harmless (but still private) APIs? 😐

mediter commented 5 years ago

Notarizing an app with Apple requires a Developer ID certificate, you are only allowed to generate that with a paid Apple Developer membership

a2sheppy commented 4 years ago

I don't think closing this is the right way to go; turning off gatekeeper is not a safe option. :)

Lord-Kamina commented 4 years ago

I've personally never liked Gatekeeper. That aside, I understand I can't expect everybody to turn it off. On the other hand, there ain't much I can do about it. I'm a physician, I code for fun in my spare time. If somebody's willing to pay for the developer account I'd be happy to get SWDA notarized (IF they would notarize it, considering it uses private APIs)