Closed dominiklohmann closed 5 years ago
That error message is from Homebrew, not from yabai.
And yes, you are required to install an up-to-date Xcode for this to work if you want to compile yabai. The old versions of the command line tools are partially incompatible with Catalina. If you don't want to do this, run the pre-compiled and codesigned release version.
When installing from source you may get errors about the ScriptingBridge.h header file not being found, which can be fixed by running xcrun make
instead of make
, which overrides your env variables to use the correct command line tools.
Edit: I feel like this is important to say—Catalina is beta software. It is not stable, and recovering from issues can sometimes be quite tough if you don't know your way around the developer tools. Please don't install it just because you cannot wait for the newest features and want to run the bleeding edge of macOS builds.
Dev beta 5 is out. SA needs to be updated.
SkyLight.framework.zip Dock.app.zip
Edit: Small status report:
Edit 2: Scripting addition checklist (Edit 6: everything works now)
Edit 3: From the patch notes: this one has me slightly worried for the future.
Launch Daemons and Agents
New Features
Launch daemons and launch agents introduce new user privacy protections. Specifying privacy-sensitive files and folders in a launchd property list might not work as expected and prevent the service from running. Having
Program
orProgramArguments
pointing to an executable in a privacy sensitive location is currently allowed, but may be restricted in a future release. (49702405)To comply with the new privacy protections, resources for a launchd service must be stored in locations that aren’t privacy sensitive. If necessary, the app can set up resources during its execution rather than using launchd property list keys, making it possible to grant the app access using System Preferences > Security & Privacy > Privacy.
The following launchd property list keys are affected:
KeepAlive
,PathState
,QueueDirectories
,Sockets
,SockPathName
,StandardErrorPath
,StandardInPath
,StandardOutPath
, andWatchPaths
.
Edit 4: com.koekeishiya.yabai
is no longer an entry in the Notifications preference pane. It seems like the settings I changed still apply, however. I filed a bug report in Feedback Assistant. If this does not get resolved we might have to revisit using com.apple.Dock
instead.
Edit 5: Public Beta 4 is out.
Dev Beta 6 is out.
Scripting addition checklist:
Dock.app.zip SkyLight.framework.zip
Edit: Some more notes on this beta:
Edit 2: SA has been updated, everything works once again.
Still getting that random crash in processEventTapData
about 2–3 times a week. It's likely that there's a race condition somewhere and some SkyLight function needs to be ran from the main thread. I'm not exactly sure what's happening here. Anyone else have this issue?
Also @koekeishiya next beta should be GM, considering Catalina should go live in 2–3 weeks. What are your plans about the window title issue?
Dev Beta 7 is out.
Scripting addition checklist: Everything is working already, no update needed.
Dock.app.zip SkyLight.framework.zip
I also just want to re-iterate this:
Also @koekeishiya next beta should be GM, considering Catalina should go live in 2–3 weeks. What are your plans about the window title issue?
Now this is still no GM apparently, but we're getting closer and window titles are still broken.
Extracted from #223:
@Nobody912 said...
I am currently running macOS 10.15 Beta (19A536g) and have installed yabai from the head branch via brew. Accessibility API and codesign prerequisites have been met.
I currently experience crashes upon closing my laptop's lid when scripting addition is enabled. Crash report traces it to
WindowServer
: https://pastebin.com/H05xLFs4
I can reproduce this on dev beta 7 as well. Entering sleep mode with a minimal configuration file as below and at least one open window causes this crash. Never encountered this previously as I don't personally use the window opacity settings.
yabai -m config window_opacity on
yabai -m config active_window_opacity 0.9
@dominiklohmann Are you able to switch desktop with yabai? I run yabai -m space --focus 1
and it has no effects. I'm not sure if that's a known issue with Catalina since it work well on Mojave.
Pardon me if it's inappropriate to post a question here. If there's a better channel to ask questions please let me know.
Thank you.
@dangh Yes, I am able to do that. Make sure to install from HEAD and to re-install the scripting addition.
Pardon me if it's inappropriate to post a question here. If there's a better channel to ask questions please let me know.
This is the issue for all things Catalina, including questions.
Still getting that random crash in processEventTapData about 2–3 times a week. It's likely that there's a race condition somewhere and some SkyLight function needs to be ran from the main thread. I'm not exactly sure what's happening here. Anyone else have this issue?
processEventTapData is from my understanding part of the pipeline that allows us to listen for mouse events in yabai. There is nothing tricky going on here, we are simply subscribing using the public API.
Now this is still no GM apparently, but we're getting closer and window titles are still broken.
I'll change it to use the AX API instead if is broken after the release is live.
Im getting VERY frequent crashes with yabai running on Catalina. I'll basically get logged out after the screen glitches. Any fix for this?
@capaldo Open Console.app and post the relevant Crash Report, that helps a ton.
It's quite likely that it's either the processEventTapData issue or the transparency + sleep issue.
(Edited by @dominiklohmann to wrap in \
I took the freedom to make your log collapsible.
Your crash happens somewhere in CGXSetWindowListAlpha. Can you reproduce the crash when your laptop goes to sleep while any opacity settings are applied to windows, or does it happen without entering sleep mode?
I took the freedom to make your log collapsible.
Your crash happens somewhere in CGXSetWindowListAlpha. Can you reproduce the crash when your laptop goes to sleep while any opacity settings are applied to windows, or does it happen without entering sleep mode?
Sorry about that.
So the crash happens without entering sleep mode. Its occuring while trying to do pretty much anything and shortly after yabai starts up (i.e. focusing windows, moving focus to another desktop, etc.).
Also please note, the computer does not restart completely but rather throws me back out to the login screen as if I had just logged out.
Dev Beta 8 is out (as is iOS 13 GM, so we're now approaching GM rapidly)
Scripting addition checklist:
Moving a space crashes Dock.app:
The opacity + sleep crash also still exists, and window titles are still unreadable through means other than the AX API.
Dock.app.zip SkyLight.framework.zip
Edit: Public Beta 7 is out, same build as expected.
Are the crashes from the opacity being set fixed after ebf89ff or does it remain an issue?
Are the crashes from the opacity being set fixed after ebf89ff or does it remain an issue?
They remain an issue.
Are the crashes from the opacity being set fixed after ebf89ff or does it remain an issue?
This crash is unfortunately not in our control, as it occurs in Apple's code inside the WindowServer. If this is not fixed in the first public release, I will simply have to disable this part of the functionality on Catalina until it gets fixed at some point.
If window titles remain unreadable in the first GM, I will switch to using the AX API again. I'm still waiting for the GM to be released before I install a version of Catalina personally.
Are the crashes from the opacity being set fixed after ebf89ff or does it remain an issue?
They remain an issue.
Just to let you guys know that I turned it on and have not had any issue with crashing yet.
Dev Beta 9 is out
Scripting addition checklist:
Window opacity changes no longer work in this beta, which leaves me hopeful that this beta fixes the opacity + sleep issue.
Are you sure the move space operation does not work on beta 9? The pattern from dev beta 8 matched just fine in dev beta 9, using IDA. I did pull a new pattern from the function just in case, and it was identical to the existing one that is used. The offset is also within the range yabai is searching.
Just tried it again, it works. Might've just done #182 on accident.
Dev Beta 10 is out. Same state as above, just opacity is broken.
Apparently Dev Beta 11 / Public Beta 10 has been out for two days and I completely missed it. It's the GM.
~No changes to the c~Current status: ~Window titles and t~Transparency ~are~ is broken and there is this ever so rarely happening crash in processEventTapData
in SkyLight.framework
.
Transparency is broken and there is this ever so rarely happening crash in processEventTapData in SkyLight.framework
Did these bugs actually make it into the release version of Catalina? I have yet to install it.
Yes to both. The crash seems to happen randomly maybe once a week or so with heavy usage (something likely needs to be run from the main thread) and opacity changes are silently not working.
I don't think the crash should have anything to do with not running code on the main thread. I'd imagine that error is either due to https://github.com/koekeishiya/yabai/blob/master/src/event_tap.c#L7 (subscribing to the CGEventTap API) or because of the reverse-engineered events that yabai generates to change window focus (autofocus comes to mind).
Hi there , here is another crash about yabai on Catalina GM(10.15)
ʕ ◔ ϖ ◔ ʔ ➜ yabai --version
yabai-v2.0.1
Process: WindowServer [16558]
Path: /System/Library/PrivateFrameworks/SkyLight.framework/Versions/A/Resources/WindowServer
Identifier: WindowServer
Version: 600.00 (440.7.10)
Code Type: X86-64 (Native)
Parent Process: launchd [1]
Responsible: WindowServer [16558]
User ID: 88
Date/Time: 2019-10-09 10:42:39.512 +0800
OS Version: Mac OS X 10.15 (19A583)
Report Version: 12
Bridge OS Version: 4.0 (17P572)
Anonymous UUID: 6437908F-8D14-D8DC-9C7B-3D9F7D170DF9
Sleep/Wake UUID: A7AA3EE3-9EF0-40FC-B6C6-8F4FB3FCE524
Time Awake Since Boot: 4200 seconds
Time Since Wake: 1600 seconds
System Integrity Protection: disabled
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000010
Exception Note: EXC_CORPSE_NOTIFY
Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [16558]
VM Regions Near 0x10:
-->
__TEXT 000000010bfe5000-000000010bfe7000 [ 8K] r-x/r-x SM=COW /System/Library/PrivateFrameworks/SkyLight.framework/Versions/A/Resources/WindowServer
Application Specific Information:
StartTime:2019-10-09 10:38:45
GPU:IG
MetalDevice for accelerator(0x4a33): 0x7fc04a615f18 (MTLDevice: 0x10fdac000)
IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/IGPU@2/AppleIntelFramebuffer@0
IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/IGPU@2/AppleIntelFramebuffer@1
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 com.apple.SkyLight 0x00007fff6ad0903c __fadeFinished_block_invoke + 20
1 com.apple.SkyLight 0x00007fff6ad086c9 fadeFinished + 139
2 com.apple.SkyLight 0x00007fff6ad0f65d CGXSetWindowListAlpha + 58
3 com.apple.SkyLight 0x00007fff6aeac14a _XSetWindowListAlpha + 169
4 com.apple.SkyLight 0x00007fff6ad029d6 invocation function for block in connectionHandler(unsigned int, mach_msg_header_t*, void*) + 346
5 com.apple.SkyLight 0x00007fff6ad02839 invocation function for block in connectionHandler(unsigned int, mach_msg_header_t*, void*) + 79
6 com.apple.SkyLight 0x00007fff6ae3c822 CGXHandleMessage + 139
7 com.apple.SkyLight 0x00007fff6ad006d9 connectionHandler(unsigned int, mach_msg_header_t*, void*) + 216
8 com.apple.SkyLight 0x00007fff6ae8526a post_port_data + 255
9 com.apple.SkyLight 0x00007fff6ae84ed2 CGXRunOneServicesPass + 1730
10 com.apple.SkyLight 0x00007fff6ae858e5 server_loop + 91
11 com.apple.SkyLight 0x00007fff6ae85883 SLXServer + 1470
12 WindowServer 0x000000010bfe6336 0x10bfe5000 + 4918
13 libdyld.dylib 0x00007fff73f65405 start + 1
Thread 1:: Dispatch queue: com.apple.VirtualDisplayListener
0 libsystem_kernel.dylib 0x00007fff740ae146 mach_msg_trap + 10
1 libsystem_kernel.dylib 0x00007fff740ae6ac mach_msg + 60
2 libsystem_kernel.dylib 0x00007fff740b59fa mach_msg_server_once + 270
3 com.apple.CoreDisplay 0x00007fff3cb2e4a1 -[VirtualDisplayListener rx] + 77
4 libdispatch.dylib 0x00007fff73f14553 _dispatch_call_block_and_release + 12
5 libdispatch.dylib 0x00007fff73f154de _dispatch_client_callout + 8
6 libdispatch.dylib 0x00007fff73f1aa9e _dispatch_lane_serial_drain + 597
7 libdispatch.dylib 0x00007fff73f1b422 _dispatch_lane_invoke + 363
8 libdispatch.dylib 0x00007fff73f24aa1 _dispatch_workloop_worker_thread + 598
9 libsystem_pthread.dylib 0x00007fff7416e763 _pthread_wqthread + 290
10 libsystem_pthread.dylib 0x00007fff7416e5c3 start_wqthread + 15
Thread 2:: com.apple.coreanimation.render-server
0 libsystem_kernel.dylib 0x00007fff740ae146 mach_msg_trap + 10
1 libsystem_kernel.dylib 0x00007fff740ae6ac mach_msg + 60
2 com.apple.QuartzCore 0x00007fff484bc566 CA::Render::Server::server_thread(void*) + 958
3 com.apple.QuartzCore 0x00007fff484bc19d thread_fun(void*) + 25
4 libsystem_pthread.dylib 0x00007fff74171d76 _pthread_start + 125
5 libsystem_pthread.dylib 0x00007fff7416e5d7 thread_start + 15
Thread 3:
0 libsystem_kernel.dylib 0x00007fff740ae146 mach_msg_trap + 10
1 libsystem_kernel.dylib 0x00007fff740ae6ac mach_msg + 60
2 com.apple.CoreDisplay 0x00007fff3cbf1621 CoreDisplay::Mach::Server::Start() + 147
3 com.apple.CoreDisplay 0x00007fff3cbf1789 void* std::__1::__thread_proxy
2019-10-09 11:25:24.867 yabai[3252:43288] NSNotificationCenter connection interrupted
2019-10-09 11:25:24.870 yabai[3252:43288] NSNotificationCenter connection interrupted
2019-10-09 11:25:24.870 yabai[3252:43283] NSNotificationCenter connection invalid
APPEND: It is now working by adding @dominiklohmann 's solution
yabai -m config window_opacity on
yabai -m config active_window_opacity 0.9
I managed to reproduce the opacity crash reliably now, and got opacity changes to work on my setup—some other modifications I made caused CGXSetWindowListAlpha to fail silently in a customization to the scripting addition. (Sorry about that, I've been in too much of a hurry when testing beta updates lately. I'll have more time to invest in open source again in a few months.)
The crash as shown above by @scbizu happens when the computer wakes and completely crashes the window server, as was previously detailed.
@koekeishiya Now that the beta is over, do you want me to close this issue and create a sticky issue with a migration guide to Catalina, clearly stating that window_opacity
should be disabled manually for now, and a separate issue for the event tap crash?
@dominiklohmann It sounds like a good approach , I spent my 3 hours to correct my yabai conifg . The migration guide is really indeed.
Seems like the way to go, yeah.
Sent from my iPhone
On 9 Oct 2019, at 09:26, Dominik Lohmann notifications@github.com wrote:
I managed to reproduce the opacity crash reliably now, and got opacity changes to work on my setup—some other modifications I made caused CGXSetWindowListAlpha to fail silently in a customization to the scripting addition. (Sorry about that, I've been in too much of a hurry when testing beta updates lately. I'll have more time to invest in open source again in a few months.)
The crash as shown above by @scbizuhttps://github.com/scbizu happens when the user logs out and completely crashes the window server, as was previously detailed.
@koekeishiyahttps://github.com/koekeishiya Now that the beta is over, do you want me to close this issue and create a sticky issue with a migration guide to Catalina, clearly stating that window_opacity should be disabled manually for now, and a separate issue for the event tap crash?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/koekeishiya/yabai/issues/22?email_source=notifications&email_token=ABPDZV54IXX54MIOSE6OLKLQNWBTRA5CNFSM4HSRDPH2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEAW5RBQ#issuecomment-539875462, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABPDZV3PXRSAB32HUHS3FOTQNWBTRANCNFSM4HSRDPHQ.
Closing this in favour of the three newly created threads.
As usual, here's the yearly thread. This first post will always be updated to reflect the current beta situation, and edits will be made clear via strikethrough.
The patch notes can be found here for registered developers: https://developer.apple.com/documentation/macos_release_notes/macos_10_15_beta_release_notes
The SDK diffs are ~not yet available as of writing this, but will likely be~ available in a searchable format here: http://codeworkshop.net/objc-diff/sdkdiffs/macos/10.15/
I'll be installing later today and will be testing, this thread will be continuously updated throughout the betas whenever I find time to test things. Please post questions below and make this issue your thread for all things macOS beta.
Interesting things:
zsh
is now the default shell on macOS 10.15~Edit: on a personal note, I'll be without a second device for a while—the local apple store broke my display while replacing my keyboard last week, causing it to flicker in the lower third. I'm being told the replacement will take ~10–14~ 17–21 days, so bear with me as this thread returns to full activity sometime between June 14th and June 18th.~
As of June 24th, the public beta is out. It's the same build as dev beta 2. If you're reading this, do yourself a favour and don't make this your daily driver yet if you use Photos or iCloud Drive.