Skip to content

Comments

Write log to config dir/EmptyEpsilon.log when launched as a Mac app bundle#2734

Merged
daid merged 1 commit intodaid:masterfrom
oznogon:macos-log-to-file
Feb 21, 2026
Merged

Write log to config dir/EmptyEpsilon.log when launched as a Mac app bundle#2734
daid merged 1 commit intodaid:masterfrom
oznogon:macos-log-to-file

Conversation

@oznogon
Copy link
Contributor

@oznogon oznogon commented Feb 21, 2026

When running a packaged build of EE on macOS through typical end-user/non-development means (double-clicking the icon, running open EmptyEpsilon.app), the log is still written to STDOUT, which isn't accessible.

Detect when EE is run as an app bundle on macOS, and if so, write EE's log to a file in the config directory (~/.emptyepsilon/EmptyEpsilon.log). This captures log output on macOS dev, server, and player runs for troubleshooting without resorting to running the binary on the command line from within the app bundle. This is also a more similar behavior to running EmptyEpsilon on Windows, which also writes the log to a file unless EE is built in DEBUG mode.

Existing development and server/player workflows should be unaffected. Running the binary from within the app bundle (i.e. cd EmptyEpsilon.app/Contents && MacOS/EmptyEpsilon) should still log to STDOUT.

When running a packaged build of EE on macOS through typical
end-user/non-development means (double-clicking the icon, running
open EmptyEpsilon.app), the log is written to STDOUT, which isn't
accessible.

Detect when EE is run as an app bundle on macOS, and if so, write
EE's log to a file in the config directory
(~/.emptyepsilon/EmptyEpsilon.log). This captures log output on
macOS dev, server, and player runs for troubleshooting without
resorting to running the binary on the command line from within
the app bundle. This is also a more similar behavior to running
EmptyEpsilon on Windows, which also writes the log to a file
unless EE is built in DEBUG mode.

Existing development and server/player workflows should be
unaffected. Running the binary from within the app bundle (i.e.
cd EmptyEpsilon.app/Contents && MacOS/EmptyEpsilon) should still
log to STDOUT.
@oznogon
Copy link
Contributor Author

oznogon commented Feb 21, 2026

macOS CI failure doesn't seem related. Build succeeds without errors but it hits an hdiutil: create failed - Resource busy error and fails.

@daid daid merged commit 89f733e into daid:master Feb 21, 2026
4 of 5 checks passed
@daid
Copy link
Owner

daid commented Feb 21, 2026

The CI failure also happened on master, and I think it's just github action mac runnings changing something again breaking the builds. It's not the first time.

@oznogon oznogon deleted the macos-log-to-file branch February 21, 2026 19:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants