Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add MacOS package #40

Closed
ReenigneArcher opened this issue Feb 2, 2022 · 12 comments · Fixed by #73
Closed

Add MacOS package #40

ReenigneArcher opened this issue Feb 2, 2022 · 12 comments · Fixed by #73
Labels
added This feature has been added and will be available in the next release. help wanted Extra attention is needed os:macOS OS is macOS

Comments

@ReenigneArcher
Copy link
Member

Describe the bug

MacOS version not available

Additional context

There is an under development version here: https://github.com/abusse/sunshine/tree/macos-dev

@ReenigneArcher ReenigneArcher added the help wanted Extra attention is needed label Feb 2, 2022
@ReenigneArcher
Copy link
Member Author

@abusse would you be interested in doing a PR to this repo for Mac support?

It would be a somewhat manual process, and I apologize for that, as this is an import (not a fork) of Loki's repo.

Not sure the current state of your branch. If it's working, even if just experimentally I think it would be nice to include in our next release.

@abusse
Copy link
Contributor

abusse commented Feb 2, 2022

Ah yes, I noticed that Loki seems to have disappeared 😕 The Mac branch is working and I'm basically just collecting bugs but so far not to many have come up (currently just one open todo), so it should be fine to merge. When I have some time, I will try to rebase it on top of this repository.

@ReenigneArcher
Copy link
Member Author

ReenigneArcher commented Feb 2, 2022

Ah yes, I noticed that Loki seems to have disappeared 😕 The Mac branch is working and I'm basically just collecting bugs but so far not to many have come up (currently just one open todo), so it should be fine to merge. When I have some time, I will try to rebase it on top of this repository.

Amazing! Even though I don't use mac personally, definitely appreciate all your work!

Whenever you get to it, rebase on the nightly branch. If you don't it's not a big deal but the first PR check will fail and ask you to change it.

@ReenigneArcher ReenigneArcher pinned this issue Feb 3, 2022
@abusse
Copy link
Contributor

abusse commented Feb 20, 2022

@ReenigneArcher I successfully rebased on nightly without any major issue and I'm in the process to prepare the PR. However, there is one question that I'm currently facing: Do you want me to squash the 30-40 commits I currently have or can I keep them around? I strongly prefer the latter option as it will probably make it easier to understand in the future why certain decisions were made the way they are.

@ReenigneArcher
Copy link
Member Author

@ReenigneArcher I successfully rebased on nightly without any major issue and I'm in the process to prepare the PR. However, there is one question that I'm currently facing: Do you want me to squash the 30-40 commits I currently have or can I keep them around? I strongly prefer the latter option as it will probably make it easier to understand in the future why certain decisions were made the way they are.

That's awesome! I have no problem with either method. If you prefer to have all of the original commits that is fine with me. I don't know how much trouble that would be to be honest.

@ReenigneArcher
Copy link
Member Author

ReenigneArcher commented Feb 21, 2022

@abusse Had a peek at the rebase... trying to prepare myself for what I'll need to update in the CI workflow. Looking good!

One question, can the apps_macos.json have Desktop and Steam BigPicture added similar to the windows and linux files? I guess technically Desktop is not in the windows file, but still appears in clients.

Also, any ideas for packaging? I found this, but to be honest I am not an expert on cmake. https://cmake.org/cmake/help/latest/cpack_gen/dmg.html

@abusse
Copy link
Contributor

abusse commented Feb 24, 2022

@ReenigneArcher saw your additional comment just now after submitting the pull request 😞

We can probably add that, but so far the support only includes streaming the entire desktop. Streaming a specific window should not be to hard, but requires some refactoring as I hadn't considered that so far. Also lunching a different application would be something I have to look into.

Regarding the packaging, at the moment, my strategy would be to have a Port or Brew file. I was already looking into a Github flow to have automatic builds but back then Github didn't have the latest MacOS version as build host, which would have been required. But that would also only result in a CLI application. We would need a little bit more effort to have an actual App bundle. So far, I only have done CLI Applications for MacOS, so this would also need some more work from my side.

I would suggest once my pull request is merged, we create tickets and I (or other volunteers) can then work on them and keep track of the progress.

@ReenigneArcher
Copy link
Member Author

@ReenigneArcher saw your additional comment just now after submitting the pull request 😞

We can probably add that, but so far the support only includes streaming the entire desktop. Streaming a specific window should not be to hard, but requires some refactoring as I hadn't considered that so far. Also lunching a different application would be something I have to look into.

Regarding the packaging, at the moment, my strategy would be to have a Port or Brew file. I was already looking into a Github flow to have automatic builds but back then Github didn't have the latest MacOS version as build host, which would have been required. But that would also only result in a CLI application. We would need a little bit more effort to have an actual App bundle. So far, I only have done CLI Applications for MacOS, so this would also need some more work from my side.

I would suggest once my pull request is merged, we create tickets and I (or other volunteers) can then work on them and keep track of the progress.

Sounds good. And I agree, this is a great first step, we can improve over time! I am running the build now to make sure nothing breaks on linux/windows side.

@abusse
Copy link
Contributor

abusse commented Feb 26, 2022

@ReenigneArcher Can we have a label os:macOS (and have this ticket the first to tag)? So I can easily filter once the issues for the macOS port start to role in.

@ReenigneArcher
Copy link
Member Author

@ReenigneArcher Can we have a label os:macOS (and have this ticket the first to tag)? So I can easily filter once the issues for the macOS port start to role in.

Yes, absolutely. I just added those labels because I wanted to label all the Arch Linux issues, haha.

@ReenigneArcher ReenigneArcher added the os:macOS OS is macOS label Feb 26, 2022
@ReenigneArcher
Copy link
Member Author

@abusse I added the label for Mac. Also would you be interested in being on the org team? We could use someone with your experience level. If not, no worries. Also we have a discord, might be easier to discuss development topics there if you are on discord. https://sunshinestream.github.io/discord_join/

@ReenigneArcher ReenigneArcher mentioned this issue Feb 27, 2022
5 tasks
@ReenigneArcher ReenigneArcher added the added This feature has been added and will be available in the next release. label Feb 27, 2022
@github-actions
Copy link

This feature has been added and will be available in the next release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
added This feature has been added and will be available in the next release. help wanted Extra attention is needed os:macOS OS is macOS
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants