-
Notifications
You must be signed in to change notification settings - Fork 115
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
Linux package repositories #336
Comments
muchos gracias! |
Please provide additional engineering documentation for review. |
Not sure what to explain.
Build ingredients are here:
https://build.opensuse.org/package/show/home:lachs0r:mandelbulber2/mandelbulber2
Debian/Ubuntu: debian.tar.gz and mandelbulber2.dsc
Fedora/openSUSE: mandelbulber2.spec
AppImage: appimage.yml, mandelbulber2.obsinfo
Common: mandelbulber2.changes
There’s not much magic involved. The build instructions are almost the same for all distros, but specific to their package formats. OBS just takes these instructions, builds the packages using native tools running on virtual machines, and generates repositories.
Something I’d like to see for packaging is a proper CMake install rule using the correct paths, so I can skip the manual copying and .desktop file mangling in the install section.
OBS also allows building snapshots from git repositories. GitHub has an integration for this, so it can trigger a build whenever commits are pushed.
|
Great insight, the snapshot CI sounds useful. Would you like to modify the cmake file and become a contributor? |
Yeah, I’ll look into it. Shouldn’t be too hard to fix. |
Looking forward to your pull request. Thanks! |
Great job on building AppImages on OBS! 👍 Minor issue, I am getting
|
Thanks for making it possible! |
@probonopd
see usage in https://github.com/buddhi1980/mandelbulber2/blob/master/mandelbulber2/src/system.cpp When we can determine this path with appimages somewhere else it should be fine. We only need to make sure, that it will still be compatible with windows, osx, and simple installed version under linux. |
You need to make the path relative to the running executable, e.g., using |
hmm, is there no dedicated path for the shared data of the program? |
But that’s how it usually works—even outside AppImage usage. Think of relocating a program to a different prefix. |
If you use Based from |
In my opinion, reworking the share data folder to relative path improves portability of the system, increasing quality. @buddhi you are designer, what are your thoughts? |
I just read into the topic of AppImages, nice solution to get "batteries included" binaries. This will be great to incorporate in our travis file! The relative directory solution is IMHO error prone to use for all linux compiling. How about we introduce a new pragma to the code (SHARED_DIR_IS_APP_DIR)? When this is set (when compiling for AppImage we can give it as a CLI argument) we will use the relative approach, otherwise we will use the default behaviour. |
I like the idea of a pragmatic, but is it required to select one or the other alternative? Can we support both alternatives with the same binary? is it possible to scan for shared files in multiple locations, then support both relative and standardized locals? |
Sure: check the path(s) relative to the application first, and if they don't exist, fall back to hardcoded absolute paths. |
@probonopd , this solution need many changes in the code. It's is good idea and doable, but now I have another priorities (OpenCL) For short therm solution I like proposal of @zebastian to define new makro SHARED_DIR_IS_APP_DIR which could do the same as for WIN32 |
allows shared data at the same location as the apllication, when defined at compile time, this can be used for AppImage packaging, see also: #336
@buddhi1980 @probonopd just added a commit, which enables the pragma: e1ba399 Thanks for your engagement! |
@lachs0r can you add that to your OBS appimage.yml please? |
On 2017 M07 25, Tue 19:17:08 CEST probonopd wrote:
@lachs0r can you add that to your OBS appimage.yml please?
Done.
|
Except I forgot to update the package to use git master. Fixing.
|
I just tried the installation from here:
I am still running 16.04, which may cause this, but i think this comes due to unreferenced dependencies. Anyway i am just upgrading the OS and will retry after completion. |
@zebastian please try the AppImage, it bundles the required subset of Qt and should therefore run on your system. |
@probonopd thanks, appimage runs. |
Can you please post a screenshot? Thanks @zebastian |
Might have to add an icon theme to the ingredients then. Also, we’re getting build failures on newer distros:
|
Sure, some missing locations marked in red: @lachs0r I just introduced an issue, which i solved with the latest commit, should be compilable now with latest master |
@lachs0r Can you fix the icon issue? Do you need something from us to fix this? |
See AppImageCommunity/pkg2appimage#88. Qt is unable to select the correct theme, hence you don’t see any theme icons. There’s a workaround though (packaging Oxygen icons and moving them to the “hicolor” icon theme directory, which is the default fallback). Latest AppImages should “work”. |
thanks, looks good now. |
@lachs0r @zebastian |
It was missing only in msvc build. In mingw build it was already included. |
sounds right, btw msvc build needs updated to 2017. |
Make it comply with *nix conventions and allow relative data path, e.g. for AppImage and Windows builds. Avoid having symlinks in the repository. CMake does not follow them and they’re poorly supported on Windows.
Hi lachs0r, (or anyone) |
Internal version number was changed in 2.12 alpha7. It's still version for developers and testers so many things can be wrong. |
Just wanted to let you know that I’m maintaining packages for Debian 9.0 (Stretch), Fedora 26 and Rawhide, openSUSE Leap 42.1/42.2/42.3 and Tumbleweed (including ARM/PPC), as well as Ubuntu 17.04 and AppImages for all the other distros at openSUSE’s Open Build Service:
https://software.opensuse.org//download.html?project=home%3Alachs0r%3Amandelbulber2&package=mandelbulber2
AppImages are here (including zsync files for delta updates): http://download.opensuse.org/repositories/home:/lachs0r:/mandelbulber2/AppImage/
These are packages of the latest release, including OpenCL support. Feel free to link to these builds; I will keep them up to date.
The text was updated successfully, but these errors were encountered: