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

Mac osx installation options #26

Closed
5 tasks done
aymanhab opened this issue Jan 13, 2016 · 21 comments
Closed
5 tasks done

Mac osx installation options #26

aymanhab opened this issue Jan 13, 2016 · 21 comments
Labels
Milestone

Comments

@aymanhab
Copy link
Member

aymanhab commented Jan 13, 2016

  • How to locate core dynamic libraries on Mac:
    • Possible sloutions: Package API separately and duplicate under GUI y/n?
    • Alternate solution is to change rpath for nbexec to point to the dynamic libraries.
  • Packaging JRE with the distribution either as a Framework or otherwise.
    • clion can package JRE (investigate)
  • Remove dependency on OPENSIM_HOME from GUI code base. Don't know if it will be needed for backward compatibility.
  • info.plist may contain jvm options and that may solve java.library.path issues ~
  • [ ] setting path to get command line utils on osx moved to [Mac] Help users create symlink to OpenSim's bin dir #356
  • explore jvm options in etc/opensim.conf if adding java.library.path to relative path to dynlibs
  • [ ] mac has a suggestion for plugins placement (Contents/Plugins) will have to see if it works for our users or is too deep. moved to Mac users need a way to access/load plugins in the GUI #357
  • [ ] Is there a place to plug introductory video on first launch?
  • ~[ ] Geometry & Models now live in top level, could go into Assets folder or follow layout per James or ... moved to Where should models, geometry, and other assets be installed? #358
  • [ ] We need to decide if assets are kept read only or hidden from users and they need to make a copy to modify Scripts, should they go with assets or into sdk folder along with API programs? moved to Where should models, geometry, and other assets be installed? #358
@aymanhab
Copy link
Member Author

@chrisdembia Summary of our discussion before break so it doesn't fall thru the cracks.

@chrisdembia
Copy link
Member

Thanks @aymanhab; I made some improvements to the formatting above (just adding in hyphens).

cc @msdemers

@chrisdembia
Copy link
Member

As for installing command line tools, I like what PyCharm does. The first time you launch the app, you get a pop up window asking you to set some settings, one of which is if you'd like to "Install Command Line Tools". They also tell you that you can do it later from a drop down menu. They put a symlink in /usr/local/bin. I like this option.

@msdemers
Copy link
Member

I like this option as well. It's a familiar motif for power OS X users and Linux users.

@chrisdembia
Copy link
Member

Cool.

@chrisdembia
Copy link
Member

@aymanhab do you have some time just before the dev meeting for us two to discuss what feedback we should get?

@aymanhab
Copy link
Member Author

@chrisdembia Sure. Will plan for it. Do you have a specific time in mind?

@chrisdembia
Copy link
Member

Maybe like 10:40am?

@aymanhab
Copy link
Member Author

Sure, sounds good.

On Wed, Mar 30, 2016 at 3:44 PM, Christopher Dembia <
notifications@github.com> wrote:

Maybe like 10:40am?


You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#26 (comment)

@jenhicks jenhicks added the macOS label Mar 7, 2017
@jenhicks jenhicks added this to the OpenSim 4.0 milestone Mar 7, 2017
@chrisdembia
Copy link
Member

I was thinking about whether we should have an installer or simply a zip that contains a .app. I am leaning towards having an installer. The reason is that we are thinking of having a number of folders adjacent to the OpenSim 4.0.app. That is, the zip would house a directory containing:

OpenSim 4.0/OpenSim 4.0.app
           /bin
           /sdk

It is unnatural to tell users to move "OpenSim 4.0" into "/Applications" (since it is not only a .app). The installer could also handle copying models to ~/Documents/OpenSim 4.0 (or any other user-selected location) and symlinking opensim-cmd to /usr/local/bin/opensim-cmd.

By the way, I think it would be good if the app folder name could contain the version number. This matches our behavior on Windows, and would allow people to easily have multiple versions of OpenSim (which I think is a common scenario).

@aymanhab
Copy link
Member Author

Not sure if .dmg (which is the format used to install netbeans) count as installer or not, it creates a folder with an app inside it. The resulting application is well behaving on osx AFAIK and doesn't need users to copy or move anything (of course in their case it's just app but keep in mind that app users are our main target clients on osx)

@msdemers
Copy link
Member

.dmg is the simple installer option while .pkg is the flexible installer option. .dmg are really easy to make because they are basically just a directory and file structure. This usually means easy for developer, harder for user. .pkg allow you to install with a gui and run preflight and postflight scripts more easily. For example, .pkg would allow you to present a a gui where the user sees and acknowledges a software license and chooses wether they want to setup command line tools, then run a script to install files or simlinks to /usr/local/bin.

@aymanhab
Copy link
Member Author

Wonderful to hear from you @msdemers Thanks for the very helpful info (from inside the 🍎 ) Cheers.

@chrisdembia
Copy link
Member

If we decide we need additional tools to help create the PKG or DMG, we could buy DropDMG or something like that.

@chrisdembia
Copy link
Member

I've attached a zip of icon files that may be useful.

foldericon.zip

@chrisdembia
Copy link
Member

Based on the first of the links above, I was able to write a simple script to generate a pkg:

pkgbuild --analyze --root ./OpenSim.app/ OpenSimAppComponents.plist
pkgbuild --root ./OpenSim.app --identifier OpenSim --component-plist OpenSimAppComponents.plist OpenSim.pkg
productbuild --synthesize --package OpenSim.pkg Distribution.xml

@jenhicks
Copy link
Member

jenhicks commented Aug 3, 2017

@chrisdembia @aymanhab Can we close this issue?

@aymanhab
Copy link
Member Author

aymanhab commented Aug 3, 2017

There are still questions/issues related to the unchecked boxes above, so let's keep it open unless @chrisdembia opens separate issues based on feedback of current installations on osx

@chrisdembia
Copy link
Member

chrisdembia commented Aug 4, 2017

@aymanhab @jenhicks I created new issues for the remaining tasks (the numbers for the new issues are listed in the top post).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants