-
Notifications
You must be signed in to change notification settings - Fork 80
Move packaging to containers for cross-packaging #35
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
Move packaging to containers for cross-packaging #35
Conversation
|
Nice, I like the refactoring, code separated into specific files and packages etc. Is it possible to keep docker optional when @Drakirus thoughts? edit: I haven't done a complete code-review of this PR yet |
|
I'll also prefer to keep Docker optional for packaging. In the same way we have the |
|
Agree with @Drakirus I also see how the Perhaps |
|
The packaging for windows uses a tool called wixl which is only for linux. The original closed source program is called wixtoolset. My approach is to create true cross-packaging. wixl should be compatible with the wixtoolset, but maintaining 2 different versions of the code for windows / non-windows is not great for the overall maintainability. |
|
The packaging is a one-time process, and I don't think adding one or 2 other packaging systems hurts that much the maintainability. (And if not happy, user can still zip the build dir..) Regarding this particular case of 'wixl' (linux tool to generate windows MSI) and 'wixtoolset' (window tool to generate windows MSI), I think it should be run by independent hover command, e.g.: IMHO: The docker feature can be added after each OS has a working packaging system. Because for now, we are only assuming that it is a valid demand. (Still, I'm a fan of |
|
My plan was to approach it like the cross-compiling: |
|
The packaging formats I created which work on all OSs using Docker: They all have only Docker as their dependency at work cross platform. I don't see a reason to not use only Docker for packaging. |
|
I'm convinced about going docker-only for now, these are good arguments @jld3103 |
|
I'm attempting merge with master (there are some conflicts). |
| runCmd.Flags().StringVarP(&buildTarget, "target", "t", "lib/main_desktop.dart", "The main entry-point file of the application.") | ||
| runCmd.Flags().StringVarP(&buildBranch, "branch", "b", "", "The 'go-flutter' version to use. (@master or @v0.20.0 for example)") | ||
| runCmd.Flags().StringVarP(&buildCachePath, "cache-path", "", "", "The path that hover uses to cache dependencies such as the Flutter engine .so/.dll (defaults to the standard user cache directory)") | ||
| runCmd.Flags().StringVar(&buildOpenGlVersion, "opengl", "3.3", "The OpenGL version specified here is only relevant for external texture plugin (i.e. video_plugin).\nIf 'none' is provided, texture won't be supported. Note: the Flutter Engine still needs a OpenGL compatible context.") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should keep this flag on hover run
Split of #30 (exactly: #30 (comment)).
Moves packaging to containers for packaging to work on all OSs. Requires Docker to be installed.