nurupo / vlc-pause-click-plugin

Plugin for VLC that pauses/plays video on mouse click
GNU Lesser General Public License v2.1
945 stars 64 forks source link

Cross-compile and create arm64 and universal versions for 3.0 #93

Closed kjoonlee closed 1 year ago

kjoonlee commented 2 years ago

Description

Related issue

Allows universal builds for 3.0, closes #81

Motivation and context

Without universal/arm64 versions then Apple Silicon users are stuck with x86_64 versions of VLC and this plugin

How has this been tested?

This is just for 3.0. A tested version of the script has been attached in #81 #issuecomment-1116151663

I could not test on CI at all, and I have no idea how to make it work with 4.0 instead of 3.0

Checklist

nurupo commented 2 years ago

I could not test on CI at all

Right, Travis-CI is pretty much no more, I will need to move to GitHub Actions CI.

I have no idea how to make it work with 4.0 instead of 3.0

The plugin doesn't build with VLC 4.0 as VLC 4.0 has changed API since the last time I tested it, so the plugin needs to be updated to use the new API. I actually have the changes ready on my local machine, just need to double-check and push them.

Anyway, thanks for the PR. Please note that it might be some time before I get to it, as I need to figure out the CI situation first.

nurupo commented 1 year ago

Huh, that's weird. I have resolved a merge conflict in your commit and force-pushed it into your PR branch. GitHub should have updated the PR with the updated commit, but instead it just closed the PR.

Anyway, I'm working on adding the universal macOS builds, so your commit should make it into the repo once I'm done.

nurupo commented 1 year ago

Ah, silly me, I was working in a detached HEAD, not in kjoonlee/master. Now it makes sense as to why that happened.

nurupo commented 1 year ago

Here you go https://github.com/nurupo/vlc-pause-click-plugin/commit/216cff53a77bc8e4e616dd3acdae381f801b757b, merged into master. Had to fix a few of things, as your original commit was failing on VLC 2.1 and 2.2, and didn't do universal build for 4.0.

Here are the binaries produced, if you would like to test:

I'm unable to test them as I don't have a macOS system, so it would be helpful to know if at least the VLC 3.0 plugin works. Well, if you don't want to test - that's fine too, someone will eventually complain if it's not working.

I'm planning on making a new plugin release later this month, it will include the universal plugin binary for VLC 3.0.

kjoonlee commented 1 year ago

Thank you so much!

* [vlc-4.0-macosx-universal.zip](https://github.com/nurupo/vlc-pause-click-plugin/files/10227400/vlc-4.0-macosx-universal.zip)

* [vlc-3.0-macosx-universal.zip](https://github.com/nurupo/vlc-pause-click-plugin/files/10227401/vlc-3.0-macosx-universal.zip)

Confirmed the universal plugins for 4.0 and 3.0 both work on both Intel and Apple Silicon.

Tested on 4.0 nightly and 3.0.18 on Intel Macbook Air and M2 Macbook Air, both running macOS Ventura 13.1 (22C65).

nurupo commented 1 year ago

Great, thank you for testing!

stepanjakl commented 12 months ago

Here you go 216cff5, merged into master. Had to fix a few of things, as your original commit was failing on VLC 2.1 and 2.2, and didn't do universal build for 4.0.

Here are the binaries produced, if you would like to test:

I'm unable to test them as I don't have a macOS system, so it would be helpful to know if at least the VLC 3.0 plugin works. Well, if you don't want to test - that's fine too, someone will eventually complain if it's not working.

I'm planning on making a new plugin release later this month, it will include the universal plugin binary for VLC 3.0.

Yes! This works on Apple Sillicone Macs, thanks a lot. This should be mentioned in the main README as it took me some time to figure it out.

kenny1983 commented 11 months ago

Yes! This works on Apple Sillicone Macs, thanks a lot. This should be mentioned in the main README as it took me some time to figure it out.

Agree 110%, please add this build to the releases or info about how to install it to the readme. Or both 😉

EDIT: Created a PR myself, #105 😉