Opened 3 weeks ago

Closed 3 weeks ago

#70840 closed defect (fixed)

Aseprite install fails in MacOS Sequoia

Reported by: v4iv (Vaibhav Sharma) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: Aseprite

Description (last modified by v4iv (Vaibhav Sharma))

After updating macports to Sequoia, the migration of Aseprite fails, and Aseprite build fails as well while fresh installing.

I get the following errors:

--->  Attempting to fetch Aseprite-1.3.8.1_0.darwin_24.arm64.tbz2 from https://packages.macports.org/Aseprite
--->  Attempting to fetch Aseprite-1.3.8.1_0.darwin_24.arm64.tbz2 from https://mse.uk.packages.macports.org/Aseprite
--->  Attempting to fetch Aseprite-1.3.8.1_0.darwin_24.arm64.tbz2 from https://pek.cn.packages.macports.org/macports/packages/Aseprite
--->  Fetching distfiles for Aseprite
--->  Verifying checksums for Aseprite
--->  Extracting Aseprite
The extract, configure, and build phases may each take several minutes to complete.
--->  Applying patches to Aseprite
--->  Configuring Aseprite
--->  Building Aseprite                                  
Error: Failed to build Aseprite: command execution failed
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_Aseprite/Aseprite/main.log for details.
--->  Some of the ports you installed have notes:
  cmake has the following notes:
    The CMake GUI and Docs are now provided as subports 'cmake-gui' and 'cmake-docs', respectively.
  db48 has the following notes:
    The Java and Tcl bindings are now provided by the db48-java and
    db48-tcl subports.
  libpsl has the following notes:
    libpsl API documentation is provided by the libpsl-docs port.
  python312 has the following notes:
    To make this the default Python or Python 3 (i.e., the version run by the 'python' or 'python3' commands), run one
    or both of:
    
        sudo port select --set python python312
        sudo port select --set python3 python312
--->  Note:
    Migration finished with errors.
    The following ports could not be restored:
     - Aseprite 
       Failed: Unable to execute target 'activate' for port Aseprite - see its log for details

Attachments (1)

main.log.bz2 (44.4 KB) - added by jmroot (Joshua Root) 3 weeks ago.

Download all attachments as: .zip

Change History (10)

comment:1 Changed 3 weeks ago by v4iv (Vaibhav Sharma)

Description: modified (diff)
Summary: Aseprite install fails in MacOS SonomaAseprite install fails in MacOS Sequoia

comment:2 Changed 3 weeks ago by reneeotten (Renee Otten)

Keywords: aseprite removed
Owner: set to ryandesign
Priority: HighNormal
Status: newassigned

please attach the main.log file

Changed 3 weeks ago by jmroot (Joshua Root)

Attachment: main.log.bz2 added

comment:3 Changed 3 weeks ago by jmroot (Joshua Root)

It's our old friend CGDisplayCreateImageForRect.

:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_Aseprite/Aseprite/work/aseprite/laf/os/osx/system.mm:118:22: error: 'CGDisplayCreateImageForRect' is unavailable: obsoleted in macOS 15.0 - Please use ScreenCaptureKit instead.
:info:build   118 |   CGImageRef image = CGDisplayCreateImageForRect(CGMainDisplayID(),
:info:build       |                      ^

comment:4 Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)

Yes, I'm in the process of building the port to reproduce the issue. Once I do, I plan to see if changing the deployment target to 14 works around the problem. Once I know the answer to that, I'll file a bug report with the developers. If someone else wants to test it and finds the answer before I do, they can file the bug report.

comment:5 in reply to:  4 Changed 3 weeks ago by v4iv (Vaibhav Sharma)

Replying to ryandesign:

Yes, I'm in the process of building the port to reproduce the issue. Once I do, I plan to see if changing the deployment target to 14 works around the problem. Once I know the answer to that, I'll file a bug report with the developers. If someone else wants to test it and finds the answer before I do, they can file the bug report.

how do I change the deployment target?

comment:6 Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)

Edit the Aseprite Portfile (port file Aseprite) and add these lines at the end:

if {[vercmp ${macosx_deployment_target} >= 15.0]} {
    macosx_deployment_target 14.0
}

comment:7 in reply to:  6 Changed 3 weeks ago by v4iv (Vaibhav Sharma)

Thanks! This worked! I know it's a workaround but still at least it worked!

Replying to ryandesign:

Edit the Aseprite Portfile (port file Aseprite) and add these lines at the end:

if {[vercmp ${macosx_deployment_target} >= 15.0]} {
    macosx_deployment_target 14.0
}

comment:8 Changed 3 weeks ago by markemer (Mark Anderson)

I had no idea how prevalent this API was. I knew they were killing it, but wow, literally everyone that does a GUI toolkit or writes to the screen.

comment:9 Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: assignedclosed

In 157582e574fc58e55e795264ed6acaa798a8c0bb/macports-ports (master):

Aseprite: Use macOS 14 deployment target on macOS >= 15

Closes: #70840

Note: See TracTickets for help on using tickets.