[MacPorts] #70689: MyPaint @2.0.1_1: Crashes on startup; after rebuilding from source, RuntimeError: Unknown install type; could not determine paths (was: MyPaint - Crashes on Startup)

MacPorts noreply at macports.org
Sat Sep 7 05:11:04 UTC 2024


#70689: MyPaint @2.0.1_1: Crashes on startup; after rebuilding from source,
RuntimeError: Unknown install type; could not determine paths
----------------------+------------------------
  Reporter:  RobK88   |      Owner:  ryandesign
      Type:  defect   |     Status:  accepted
  Priority:  Normal   |  Milestone:
 Component:  ports    |    Version:  2.10.1
Resolution:           |   Keywords:  elcapitan
      Port:  MyPaint  |
----------------------+------------------------
Changes (by ryandesign):

 * owner:  (none) => ryandesign
 * status:  new => accepted


Comment:

 Replying to [ticket:70689 RobK88]:
 > The binary in the `MyPaint` package downloaded from Macports crashes on
 my Mac running El Capitan with a Segmentation Fault 11.
 >
 >
 > {{{
 > grinch$ myPaint
 > INFO: mypaint: Installation layout: conventional POSIX-like structure
 with prefix '/opt/local/Library/Frameworks/Python.framework/Versions/3.8'
 > WARNING: gui.userconfig: Failed to load settings file:
 /Users/grinch/.config/mypaint/settings.json
 > WARNING: gui.userconfig: Failed to load settings: using defaults
 > INFO: gui.main: No locale setting found, using system locale
 > Segmentation fault: 11
 > }}}

 I'm not sure why it crashed but macOS should have generated a crash log in
 ~/Library/Logs/DiagnosticReports; if you attach it, maybe it gives a clue
 about what the problem was.

 > So I uninstalled MyPaint and built it from source:
 >
 >
 > {{{
 > sudo port -vs install mypaint
 >
 > etc
 > etc
 >
 > --->  Cleaning MyPaint
 > --->  Removing work directory for MyPaint
 > --->  Updating database of binaries
 > --->  Scanning binaries for linking errors
 > --->  No broken files found.
 > --->  No broken ports found.
 > }}}
 >
 > It built just fine. But now I get a different runtime error:
 >
 >
 > {{{
 > grinch$ myPaint
 > CRITICAL: mypaint: Installation layout: unknown!
 > Traceback (most recent call last):
 >   File "/opt/local/bin/myPaint", line 293, in <module>
 >     = get_paths()
 >   File "/opt/local/bin/myPaint", line 210, in get_paths
 >     raise RuntimeError("Unknown install type; could not determine
 paths")
 > RuntimeError: Unknown install type; could not determine paths
 > }}}

 The binary of MyPaint that we produced for macOS 12 Monterey works fine on
 my system. I'm surprised to see from the port's file list for macOS 14
 Sonoma at https://ports.macports.org/port/MyPaint/details/ that it
 installs 891 files while on earlier systems it installs 752 files. This
 shouldn't differ by OS version so sSomething must have changed in MacPorts
 that causes it to generate a different set of files now (where "now" is
 January 19, 2024 when we made the Sonoma binary for arm64) than it did
 when we generated the macOS 13 Ventura arm64 binary (which was March 6,
 2023). Indeed, after I rebuilt from source on Monterey, the port now
 installs 891 files and now I can reproduce your "Unknown install type"
 error.

 So yes, something has broken MyPaint. One change that occurred between
 those dates that has broken many other Python ports is that
 `python.pep517` is now `yes` ([3173d46b9a29bc9d79ddb6970e7f083ebe3f79c0
 /macports-ports]) whereas before it was `no`. Setting it back to `no` and
 rebuilding fixes the problem for me, so I'll commit that shortly.

-- 
Ticket URL: <https://trac.macports.org/ticket/70689#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list