Contribute to OSX-specific features and bug fixes
This discussion is connected to the gimp-developer-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.
This is a read-only list on gimpusers.com so this discussion thread is read-only, too.
Contribute to OSX-specific features and bug fixes | Carmelo DrRaw | 28 Mar 05:51 |
CA+AQtsw8O4gdd_cs0_uh3S01-q... | 28 Mar 13:01 | |
Contribute to OSX-specific features and bug fixes | Kristian Rietveld | 28 Mar 12:59 |
Contribute to OSX-specific features and bug fixes | Carmelo DrRaw | 28 Mar 13:27 |
Contribute to OSX-specific features and bug fixes | Kristian Rietveld | 29 Mar 07:49 |
Contribute to OSX-specific features and bug fixes | Pat David | 29 Mar 11:39 |
Contribute to OSX-specific features and bug fixes | Shlomi Fish | 28 Mar 08:21 |
Contribute to OSX-specific features and bug fixes | Tobias Jakobs | 28 Mar 11:05 |
Contribute to OSX-specific features and bug fixes | Michal Vašut | 28 Mar 11:41 |
Contribute to OSX-specific features and bug fixes
Hello everybody,
OSX is my primary platform for work and for development, and I have a fairly good experience in developing GTK applications for OSX. Therefore I can offer some help to solve bugs and do checks of GIMP on Mac. I cannot guarantee a very fast feedback all the time, but I will do my best.
There are actually two major things I can offer: * try to fix OSX-specific bugs - I can compile GIMP from sources, and I know how to run a debugger… * help you to set-up an automated packaging of OSX bundles using Travis-CI, in case you are interested. I have already set-up such mechanism for my own image editing project (PhotoFlow), and it seems to work like a charm. Dependencies are provided via homebrew. The advantage is that the packaging does not rely on any specific user, and runs on virtualised systems which increases the security for the final users.
By the way, I am already using Travis-CI to provide a GIMP AppImage that is regularly updated (every week or every time there is an important commit): https://github.com/aferrero2707/gimp-appimage
Please let me know if and how I can help…
Contribute to OSX-specific features and bug fixes
On Wed, 28 Mar 2018 07:51:51 +0200 Carmelo DrRaw wrote:
Hello everybody,
OSX is my primary platform for work and for development, and I have a fairly good experience in developing GTK applications for OSX. Therefore I can offer some help to solve bugs and do checks of GIMP on Mac. I cannot guarantee a very fast feedback all the time, but I will do my best.
Hi Carmelo!
Thanks for your willingness to contribute. I highly appreciate it. Please see https://en.wikipedia.org/wiki/MacOS for the correct spelling of 'OS X'->'macOS'.
Regards,
Shlomi
Contribute to OSX-specific features and bug fixes
2018-03-28 7:51 GMT+02:00 Carmelo DrRaw :
Hello everybody,
OSX is my primary platform for work and for development, and I have a fairly good experience in developing GTK applications for OSX. Therefore I can offer some help to solve bugs and do checks of GIMP on Mac. I cannot guarantee a very fast feedback all the time, but I will do my best.
There are actually two major things I can offer: * try to fix OSX-specific bugs - I can compile GIMP from sources, and I know how to run a debugger…
Here you can find a list with all macOS bugs: https://bugzilla.gnome.org/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=NEEDINFO&classification=Other&list_id=299713&op_sys=Mac%20OS&order=Importance&product=GIMP&query_format=advanced
Regards, Tobias
Contribute to OSX-specific features and bug fixes
Haha, warm welcome :-D
Contribute to OSX-specific features and bug fixes
Forgot to CC the mailing list ...
On Wed, Mar 28, 2018 at 2:58 PM, Kristian Rietveld wrote:
On Wed, Mar 28, 2018 at 7:51 AM, Carmelo DrRaw wrote:
There are actually two major things I can offer: * try to fix OSX-specific bugs - I can compile GIMP from sources, and I know how to run a debugger…
Solving bugs is always welcome! And also help with reproducing bugs. Regularly Mac-specific bugs are filed without clear reproduction instructions. Without knowing how to reproduce bugs it is hard to fix them ...
* help you to set-up an automated packaging of OSX bundles using Travis-CI, in case you are interested. I have already set-up such mechanism for my own image editing project (PhotoFlow), and it seems to work like a charm. Dependencies are provided via homebrew. The advantage is that the packaging does not rely on any specific user, and runs on virtualised systems which increases the security for the final users.
The GIMP DMG package cannot depend on dependencies via homebrew. The DMG image must be self contained. In the last year I have been working on a magic Python script that builds GIMP and all its dependencies from scratch (using jhbuild). Subsequently it validates the build products and then it packages them as App bundle in a DMG image. This script produces exactly the same DMG images as we have been releasing in the last few years. It works fine for 2.8 now and I was in the process of preparing all necessary commits to upstream it before I had to attend to some matters in real life. I plan to finish this work soon and then continue with the adaptations necessary to build 2.10 releases.
Now that you mention Travis-CI, I was wondering if you have access to a macOS build server? One limitation is that I currently have to use my old Mac laptop to produce these builds. Having access to a build server would greatly simplify this process. Also, with the script that has been written it should not be hard to simply run it nightly or weekly to produce regular builds.
regards,
-kris.
Contribute to OSX-specific features and bug fixes
Hi!
On 28 Mar 2018, at 14:58, Kristian Rietveld wrote:
On Wed, Mar 28, 2018 at 7:51 AM, Carmelo DrRaw wrote:
There are actually two major things I can offer: * try to fix OSX-specific bugs - I can compile GIMP from sources, and I know how to run a debugger…
Solving bugs is always welcome! And also help with reproducing bugs. Regularly Mac-specific bugs are filed without clear reproduction instructions. Without knowing how to reproduce bugs it is hard to fix them ...
* help you to set-up an automated packaging of OSX bundles using Travis-CI, in case you are interested. I have already set-up such mechanism for my own image editing project (PhotoFlow), and it seems to work like a charm. Dependencies are provided via homebrew. The advantage is that the packaging does not rely on any specific user, and runs on virtualised systems which increases the security for the final users.
The GIMP DMG package cannot depend on dependencies via homebrew. The DMG image must be self contained. In the last year I have been working on a magic Python script that builds GIMP and all its dependencies from scratch (using jhbuild). Subsequently it validates the build products and then it packages them as App bundle in a DMG image. This script produces exactly the same DMG images as we have been releasing in the last few years. It works fine for 2.8 now and I was in the process of preparing all necessary commits to upstream it before I had to attend to some matters in real life. I plan to finish this work soon and then continue with the adaptations necessary to build 2.10 releases.
I am using homebrew to install the dependencies, honestly I find it more practical than jhbuild. When creating the bundle, the libraries installed via homebrew are included so that the bundle is self-consistent.
Now that you mention Travis-CI, I was wondering if you have access to a macOS build server? One limitation is that I currently have to use my old Mac laptop to produce these builds. Having access to a build server would greatly simplify this process. Also, with the script that has been written it should not be hard to simply run it nightly or weekly to produce regular builds.
Travis provides MacOS build servers. The only issue is that the jobs are limited to 40 minutes, which are obviously not enough to install all dependencies. The solution I found is to do an incremental install of the homebrew packages via Travis itself, and save the resulting homebrew tree as a tar package that is stored back on github. For the final build, I simply fetch and extract the pre-packaged tar file, which provides me all the required dependencies.
It takes some hours to set-up, but then it just works…
Regards.
regards,
-kris.
Contribute to OSX-specific features and bug fixes
On 28 Mar 2018, at 15:27, Carmelo DrRaw wrote:
I am using homebrew to install the dependencies, honestly I find it more practical than jhbuild. When creating the bundle, the libraries installed via homebrew are included so that the bundle is self-consistent.
I use jhbuild on the one hand because it was in place when I took over the work on the build and because I am relatively familiar with it. On the other hand, it gives us full control over all versions of the dependencies and patches to apply in an easy way (we simply use our own jhbuild moduleset with all details and maintain this in the GIMP git repository). We do incorporate a number of patches to third-party modules (glib, GTK+, and so not) that have not been accepted upstream and I foresee this will remain so in the future.
Travis provides MacOS build servers. The only issue is that the jobs are limited to 40 minutes, which are obviously not enough to install all dependencies. The solution I found is to do an incremental install of the homebrew packages via Travis itself, and save the resulting homebrew tree as a tar package that is stored back on github. For the final build, I simply fetch and extract the pre-packaged tar file, which provides me all the required dependencies.
40 minutes is probably not enough. Sending around tarballs seems a bit hacky to me. I have another possible option for a build server that I will try first.
thanks,
-kris.
Contribute to OSX-specific features and bug fixes
Travis let’s you store build artifacts and other things on each build. What’s nice is it will check for changes and store new archives if they’re different, and allow you to check when you start.
I imagine you could start incrementally building deps and storing them, then only build what’s needed later (or update deps as needed).
I do something sort of like this myself. But my implementation is not very
sophisticated.
On Thu, Mar 29, 2018 at 3:49 AM Kristian Rietveld wrote:
On 28 Mar 2018, at 15:27, Carmelo DrRaw wrote:
I am using homebrew to install the dependencies, honestly I find it more
practical than jhbuild.
When creating the bundle, the libraries installed via homebrew are
included so that the bundle is self-consistent.
I use jhbuild on the one hand because it was in place when I took over the work on the build and because I am relatively familiar with it. On the other hand, it gives us full control over all versions of the dependencies and patches to apply in an easy way (we simply use our own jhbuild moduleset with all details and maintain this in the GIMP git repository). We do incorporate a number of patches to third-party modules (glib, GTK+, and so not) that have not been accepted upstream and I foresee this will remain so in the future.
Travis provides MacOS build servers. The only issue is that the jobs are
limited to 40 minutes, which are obviously not enough to install all dependencies.
The solution I found is to do an incremental install of the homebrew
packages via Travis itself, and save the resulting homebrew tree as a tar package that is stored back on github.
For the final build, I simply fetch and extract the pre-packaged tar
file, which provides me all the required dependencies.
40 minutes is probably not enough. Sending around tarballs seems a bit hacky to me. I have another possible option for a build server that I will try first.
thanks,
-kris.
_______________________________________________ gimp-developer-list mailing list
List address: gimp-developer-list@gnome.org List membership:
https://mail.gnome.org/mailman/listinfo/gimp-developer-list List archives: https://mail.gnome.org/archives/gimp-developer-list
https://patdavid.net GPG: 66D1 7CA6 8088 4874 946D 18BD 67C7 6219 89E9 57AC