Skip to content

Title, tool and installer logs are named without their bottle, so one bottle's run truncates another's #14

Description

@typester

TitleLauncher.logURL is ~/Library/Caches/Sake/build/title-<id>.log, and a title's id is unique only within its own bottle: TitleStore.identifier(for:) checks it against that bottle's sake-titles.json and nothing else. So two bottles that each have Steam in them get the same id, steam, and write the same title-steam.log. LogFile truncates on open, so each run erases the other bottle's log.

Seen on 2026-09-29: default and ex both have a steam title, and title-steam.log held a single run, the one from ex. Nothing from default was left in it.

Two more logs have the same shape. These were found by reading the code, not seen to happen:

  • WineTool.logURL(in:) is tool-<tool>.log, so winecfg in one bottle truncates the log of winecfg in another.
  • InstallerRunner.logURL is install-<installer>.log, so the same installer run into two bottles shares one file.

bottle-<name>.log and import-<name>.log already carry the bottle's name and are not affected. Two runs at once, Steam open in both bottles, would write the same file concurrently; that has not been tried.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions