milkytracker / MilkyTracker

An FT2 compatible music tracker
http://milkytracker.github.io/
Other
1.67k stars 160 forks source link

mac build wanted for v1.04 #315

Closed coderofsalvation closed 10 months ago

coderofsalvation commented 1 year ago

can somebody provide/compile binaries (any macos version welcome) which we can attach to the latest release? ❤️ (@peterbart-lmi ?)

$ git clone git@github.com:milkytracker/MilkyTracker.git
$ cd MilkyTracker
$ git reset --hard 1fa39ca     # v1.04 release
$ ./build_macos.sh
johngirvin commented 1 year ago

I have a milkytracker-1.04.00-Darwin.dmg built with the script above. Let me know how I can get it to you.

ghost commented 1 year ago

I have a milkytracker-1.04.00-Darwin.dmg built with the script above. Let me know how I can get it to you.

You were fast ☺️

coderofsalvation commented 1 year ago

awesome! thank you very much!

Could you be so kind to upload it to https://filebin.net/ and post the link here?

I will attach it to the current release afterwards

johngirvin commented 1 year ago

https://filebin.net/vs4n20wtx6plbfui

Built on macOS 12.6.7 x86 XCode 14.2 installed

coderofsalvation commented 1 year ago

thank you! x86 means 32bit right? So if somebody else could provide a 64bit, that'd be great

johngirvin commented 1 year ago

Sorry, x64, it's a 64-bit build.

ghost commented 1 year ago

Xcode no longer supports building 32 bit Intel binaries for macOS. But then again, having a universal or an arm64 build, that would be nice 😉

ghost commented 1 year ago

@coderofsalvation the first channel scope background is grey, is that a new feature or did a find a bug?

Bildschirmfoto 2023-07-05 um 15 50 54

krehel commented 1 year ago

I was able to produce an arm64 binary. Upload to filebin as well? Unfortunately I don't use this software so I can't work with it in depth, but installs/functions/seems to work ok - playing the sample tracks work.

Built on macOS Ventura 13.4.1 and Xcode 14.3.1

coderofsalvation commented 1 year ago

@peterbart-lmi the 'grey' that's this feature https://github.com/milkytracker/MilkyTracker/pull/293 which creates parity with the cursor (very handy in conjunction with (ctrl)(shift)m liveperformance and gain staging in general)

@krehel awesome, yes please could you upload to filebin? Big thanks!

krehel commented 1 year ago

@coderofsalvation - Filebin seems to be restricting uploads due to over capacity. Do you have another preferred file service? Else I can upload to GoFile or an alternate service. Or perhaps I can attach here?

coderofsalvation commented 1 year ago

GoFile is also fine, it's just temporary so I can download it

krehel commented 1 year ago

https://gofile.io/d/frcI7C

I'll also take care of updating the macOS Homebrew cask once both versions are posted.

coderofsalvation commented 1 year ago

Thanks to you @krehel @johngirvin for empowering other mac users ❤

krehel commented 1 year ago

@coderofsalvation - I am really sorry! The arm64 build may cause issues for users as macOS may report the software as damaged due to not being signed/notarized due to policy. How do you want to handle this? I suppose I could do those steps, but since I'm not a part of your team I am not sure that is appropriate or desired.

Calling this out now before any issues may start to get opened. I didn't notice this because my local build copy worked, and the GitHub download did not despite being the same sha256.

I had to run xattr -d com.apple.quarantine /Applications/Milkytracker.app in order to get it opened.

The x86_64 version does not have this issue running on ARM, though it still requires a (different) extra step as well because a dialog will pop up with cannot be opened because the developer cannot be verified on open. This requires a right-click > Open on first launch to bypass.

Point being, providing the information so you can best decide how you want to proceed - if getting the ARM version signed/notarized, or just simply run the x86_64 version on both Mac architectures.

johngirvin commented 1 year ago

Same, let me know what you need to do for the x86_64 build.

ghost commented 1 year ago

Well, for macOS I guess somebody "official" would need to register an official Apple developer account which we can use to sign the binaries, so they can be run without any restrictions. Unfortunately the membership is not free, I believe it's $99 per year.

coderofsalvation commented 1 year ago

First of all I'd like to thank everybody in this thread for their efforts & thinking along ♥

Ok, well as a starter I've mentioned the workarounds on the downloads-page (website) and the release. Second, afaik milkytracker is an awesome opensource piece of work made by/for awesome people, so perhaps we can just mention the (available) 'verified developer' per release? @peterbart-lmi WDYT?

The 'official' direction perhaps starts making more sense when donations exceed $99 p/year?

johngirvin commented 1 year ago

xattr -d com.apple.quarantine /Applications/Milkytracker.app also works for x86_64.

coderofsalvation commented 1 year ago

thanks (updated docs)

krehel commented 1 year ago

I spent some time yesterday trying to figure this out and I was able to ad-hoc sign the binary. Working in CMake and all this is not my strong suit. 😃

But, signing can be done without an official Apple developer account and spending the $99.

I'm going to keep working on this a bit more to make sure what is being produced will work.

Apologies for the extra overhead and hassle.

coderofsalvation commented 1 year ago

that is awesome news @krehel !

Working in CMake and all this is not my strong suit. smiley

same here, welcome to the club ;)

krehel commented 1 year ago

@coderofsalvation - I added you to a private repository for the signed ARM build. Figured it might be better than scattering files across services. I set a release with the latest file I built.

ghost commented 1 year ago

Yes, ad-hoc signing is possible, but IMO not the recommended way for software that is to be released: https://apple.stackexchange.com/a/317002

wormyrocks commented 5 months ago

Just a note, whoever is doing the Mac builds can make universal binary builds with the lipo command line tool: https://developer.apple.com/documentation/apple-silicon/building-a-universal-macos-binary#Update-the-Architecture-List-of-Custom-Makefiles