BeamMP / BeamMP-Launcher

Official BeamMP Launcher
https://beammp.com
34 stars 42 forks source link

MacOS ARM support <3 #147

Open enzofrnt opened 2 weeks ago

enzofrnt commented 2 weeks ago

Here is the support for MacOS on ARM64 using crossover (proton like but on Mac) <3

This pull request introduces support for building and running the project on macOS, alongside existing support for Windows and Linux. The changes include updates to the build configuration, source code modifications to handle macOS-specific functionality, and additional code to support macOS-specific paths and libraries.

Build Configuration:

Source Code Modifications:

Header File Updates:

Additional Functionality:

JxxIT commented 2 weeks ago

Tested this on on my Mac, with the artifact from your repository, this is really neat!

The launcher crashes for me, because it can't find the Bottles folder, because it is located in another folder. I might make a fix.

enzofrnt commented 2 weeks ago

Thanks for your review 😃 Maybe crosover as information about where bottle are somewhere. Maybe we should add some possibility ton configure manually which bootle we want to use..

JxxIT commented 2 weeks ago

Yeah good idea, I'll try to add it! I'm not super familiar with github/git, so do I need to make a new PR or somehow commit to this PR?

enzofrnt commented 2 weeks ago

You should be able to edit this one, if your maintainer. Or make a pull request on my own branch.

enzofrnt commented 2 weeks ago

@JxxIT have you try something ?

lionkor commented 2 weeks ago

Hi, both me and @WiserTixx maintain this repo, so we will review this.

Before we can do a proper code review, please first remove any changes that are not directly related to the MacOS port (subject of this PR)

JxxIT commented 2 weeks ago

@lionkor @enzofrnt

Hi, I have some changes that in my opinion need to be added before this is merged. This doesn't work if crossover is installed in another location, so I am working on a command line argument for this PR.

Shall I submit my changes as a seperate PR, or a PR to enzofrnt's repo? (Sorry I am not really familiar with git)

enzofrnt commented 2 weeks ago

Hi, both me and @WiserTixx maintain this repo, so we will review this.

Before we can do a proper code review, please first remove any changes that are not directly related to the MacOS port (subject of this PR)

Everything is related to MacOS

enzofrnt commented 2 weeks ago

@lionkor @enzofrnt

Hi, I have some changes that in my opinion need to be added before this is merged. This doesn't work if crossover is installed in another location, so I am working on a command line argument for this PR.

Shall I submit my changes as a seperate PR, or a PR to enzofrnt's repo? (Sorry I am not really familiar with git)

Please make a PR on my own master branch, then I will merge in my branch, and then we will see the change here. Maybe we should add configuration to some config file for MacOS ? What do you think @lionkor what will be the best solution ?

enzofrnt commented 2 weeks ago

Also, @lionkor is it an issue that killing the launcher doesn't kill the game ? Thanks you !

JxxIT commented 2 weeks ago

Please make a PR on my own master branch, then I will merge in my branch, and then we will see the change here. Maybe we should add configuration to some config file for MacOS ? What do you think @lionkor what will be the best solution ?

Great, I'll do that if lionkor agrees with that too.

enzofrnt commented 2 weeks ago

Everything should be fine now :)

enzofrnt commented 2 weeks ago

Everything should be fine now :) now

enzofrnt commented 2 weeks ago

I will work on the PR of @JxxIT, and then I will come back here !

enzofrnt commented 1 week ago

Hi @WiserTixx @lionkor ! Just finished to answer your review and also finished our work to make it the more reliable possible ! Let me know if there is anything else to do.

Thanks to @JxxIT for help.

enzofrnt commented 1 week ago

Some fix for latest CrossOver version.

enzofrnt commented 2 days ago

Some News! We’ve tested this with different CrossOver installations, and it works flawlessly! It has also been verified with Wine, and everything functions as expected.

To run it on CrossOver on MacOS, there’s nothing special you need to do—it just works out of the box. However, if you want to specify a particular bottle, you can use the --bottle parameter to define which CrossOver bottle to use. Alternatively, you can use the --bottle-path parameter to directly specify the location of the game’s bottle.

Note that if you are not using CrossOver, the game won’t launch. In that case, you should add the --dev option when running the game with something other than CrossOver, such as raw Wine or Whisky.

Please remember: The --bottle and --bottle-path options cannot be used simultaneously.

Let me know if you have any questions or need further clarification. Thank you!

enzofrnt commented 1 day ago

@WiserTixx done !

enzofrnt commented 1 day ago

@WiserTixx finished

enzofrnt commented 1 day ago

@WiserTixx done !