Skip to content

[Problem] When ran in a directory without write access, MPF.Check will not create a config in the known-good location #935

@InternalLoss

Description

@InternalLoss

Before You Submit

  • Remember to try the latest WIP build to see if the issue has already been addressed.
  • Is it copy protection related? If so, report the issue here instead.
  • Check multiple discs to help narrow down the issue
  • Check the Options to see if changing any of those affects your issue.

If all of those fail, then continue...

Version
What version are you using?

  • Stable release 3.6.0
  • WIP release (version here)

Build
What runtime version are you using?

  • .NET 10 running on macOS 26.3

Describe the issue
When MPF.Check is placed in a read-only directory (such as /usr/local/bin), it does not create a config.json at ~/.config/mpf/config.json as expected.

Furthermore, if a config.json is manually generated and placed either in the same directory as the executable or in the shared configuration directory with just a RedumpUsername/RedumpPassword, the Redump credentials are not used.

To Reproduce

  1. Place MPF.Check binary in /usr/local/bin or similar on-PATH but not writable directory.
  2. Run MPF.Check (I specifically ran MPF.Check xbone xxx.log
  3. Observe no config.json is created in the ~/.config/mpf/ folder
  4. Place a config.json (see below for my example) in ~/.config/mpf/
  5. Run MPF.Check again
  6. Observe the Redump credentials are not used - no Options will be loaded from found configuration file! is shown.
{
"RedumpUsername": "Billy",
"RedumpPassword": "hunter2"
}

Expected behavior

  1. MPF creates a config.json in the ~/.config/mpf/ folder, if it can't write locally.
  2. MPF uses the Redump credentials if only those two variables are set.

Additional context
I also noticed that the config.json made when MPF.Check is running in a directory that's writeable (such as ~/Downloads/) is blank.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions