Re: [Gimp-user] MacOS



Thanks for the info.  I'll comb the CI in the next week looking for the
download.  Circle-CI recently changed it's retention policy so if I need to
re-fire a build, I'll jump on IRC and introduce myself.

Note, I only use IRC as-needed since it requires an always-on connection or
cralwing service to read backlogs, but I'm not afraid to jump on.

Also, I'm a pretty big fan of Gimp.  Switched to it exclusively for raster
about 12 years ago, I'm also the one that whistleblew Sourceforge on their
BS, getting this junkware removed:
https://slashdot.org/submission/4471377/sf-says-adware-bundled-with-gimp-is-intentional

Anyway, I'll start diving into the CI this next week and post any
high-level progress here.  I realize I'm on the user's list (and that's OK)
but I'll try to be kind as to not overwhelm it with dev-related convo. :D

-Tres


- Tres Finocchiaro gmail com


On Fri, Apr 24, 2020 at 3:52 PM Jehan Pagès <jehan marmottard gmail com>
wrote:

Hi!

On Fri, Apr 24, 2020 at 9:19 PM Tres Finocchiaro <
tres finocchiaro gmail com> wrote:

he had issues with the new "hardening" rules of macOS


Although I'm very familiar with notarization and stapling
<https://stackoverflow.com/a/53528020/3196753>, the hardened runtimes
require a much deeper understanding of C++, so my efforts would likely be
futile.


Normally our builds now are notarized, signed and whatnot (I understand
there are several security layers?) nowadays. We use the Apple ID of GNOME
(contact Neil McGovern). If needed at some point, we can put you in contact.


I see the build system is 10.9+ (notarization requires a minimum of 10.9,
so this is good) however in my experience, the dependencies are a nightmare
when targeting older macOSs.  My strategy has been to chain a bunch of custom
steps
<https://github.com/LMMS/lmms/wiki/Dependencies-MacOS#108-custom-steps> although
I'm curious how this is done using Gimp.  At a glance, it appears (perhaps)
the dependency listing is simpler.  I see a macos-specific gtk script, that
must be doing a lot of the work.


Yeah it's based on: https://gitlab.gnome.org/GNOME/gtk-osx
Alex had a GIMP-specific fork:
https://gitlab.gnome.org/samm-git/gtk-osx/tree/gimp
But it's all written in the README, so you probably read it already.

As for the minimum system, initially we were targetting 10.10+ (we try to
not support OS even unsupported by their developers, i.e. here Apple. And
actually even 10.10 is not supported anymore by now, according to
Wikipedia). Cf.
https://gitlab.gnome.org/GNOME/gimp/-/blob/gimp-2-10/devel-docs/os-support.txt
But (if I recall) Alex was saying that supporting 10.9 was not much more
difficult so we kept as-is at least until things ended up impossible (in
which case we'd bump up the requirement).

There is also the fact that each time we drop support for an older Windows
or macOS, we get a lot of hate from people. Of course this doesn't stop us
but still. Let's say that if we have no reason to break support (i.e.
doesn't make our life harder), why do it? 🙂
This being said, if our macOS contributor(s) consider that we have to drop
support of old version X or Y of macOS for whatever good reason, we'll just
do it. The doers are basically maintainers of their own part. 😉


I spot some similarities, such as upstream bugs with otool tools
<https://github.com/jralls/gtk-mac-bundler/pull/10>, leveraging a 3rd
party dmg creator <https://github.com/andreyvit/create-dmg> (I've used
app-dmg instead) but at a glance, the build system appears to be completely
automated including signing and notarizing.


I think it is, since I can see steps "Importing signing certificate", "Creating
DMG package" and "Notarizing DMG package" in the CI.


If testing the installer is the next steps before publishing, I can offer
that by fetching the URL from the CI logs.


I indeed know the DMG is made available on CircleCI and can be downloaded
in the "Artifacts" tab of builds. Maybe you'd need an account to see this,
no idea. Do you see the DMG link?


I'm only a casual Gimp user though, so I'd be weary of passing a build as
good on instinct alone.  Do you have a QC spreadsheet or is it more of a
best-effort basis?


To be clear, we have no idea. If this is not in the repository, it means
that either Alex had not documented it (yet?) or it was just in his head.
He has been the only one working on GIMP on macOS for like the last 2 years
(and before him, we had another contributor who was also alone for many
years; it seems we never manage to get more than 1 macOS dev at a time! 😕).

I guess you could start creating a QC steps howto and contribute it to the
repo once you are done. :-)

Sorry to not be of much help, but this is just how much we know nothing
macOS-related.

Alex's notes are stellar btw.


Nice to read. He did put a lot of time and effort on this. We are
extremely thankful to him (and to any contributor for that matter!).

Note, I use Gimp on macOS Catalina Developer Beta so I'll know right away
if the app or a particular feature is blocked and I'm more likely to have
stricter (beta) hardening as Apple makes changes to the OS.


Cool. :-)

Jehan


-Tres

- Tres Finocchiaro gmail com


On Fri, Apr 24, 2020 at 2:55 PM Jehan Pagès <jehan marmottard gmail com>
wrote:

Hi Tres,

On Fri, Apr 24, 2020 at 7:34 PM Tres Finocchiaro <
tres finocchiaro gmail com> wrote:

Jehan,

I'm the macOS packager for LMMS.  I might be able to help out in his
absence.  LMMS is written in Qt, so the dependency stack is much
different than Gimp which is Gtk, but if there's a documented build process
via MacPorts or Homebrew, I can take a swing at it.


I know there are non-official MacPorts and Homebrew because it's written
on our website. So these can be good references indeed.

Ideally we want the build scripts to be public and the build itself to
also be public (not happen on someone's computer for obvious reasons). This
is why Alex (our macOS contributor) has done a lot of work on the build
repository: https://gitlab.gnome.org/Infrastructure/gimp-macos-build
It would be nice if continuing work were to happen on this same
repository.

As for the build itself, it was happening on some CI service called
CircleCI (because macOS builds can be done there, unlike the GNOME Gitlab
CI machines). Builds are there:
https://circleci.com/gh/GNOME/gimp-macos-build

Note: you'll notice that there are builds for GIMP 2.10.18 there, which
was from last time Alex was working on it. We don't really know the state
and in particular if these builds done 2 months ago work well and safely,
since none of us (but Alex) even has an Apple machine so we cannot test and
won't recklessly make public completely untested DMG packages.

Last we heard from Alex, he had issues with the new "hardening" rules of
macOS. Basically it made it impossible to run a debugger (lldb), which is
what GIMP tries to do to self-debug when it crashes or encounter critical
errors (a debug feature introduced in GIMP 2.10).
I'm not sure he actually fixed it before going off-radar. If he didn't
and the solution is too complicated, a possibility is to not care about
this self-debugging feature of course. It's annoying if it doesn't work
(because it makes reporting/fixing bugs easier), but it is better to have a
package without the feature than none obviously. :-)

In any case, we will definitely welcome the help. Feel free to look at
the scripts and propose patches/merge requests. I'm not sure if an access
is needed to CircleCI project to see the build details (artifacts, logs and
whatnot). Maybe just connecting with a github account is enough. If not,
we'll try to figure this out.

Oh and last thing, if you have questions, the #gimp IRC channel on
irc.gimp.org is a good place where you can find most developers.
Thanks!

Jehan

Credentials: https://github.com/LMMS/lmms/pull/2271


-Tres

- Tres Finocchiaro gmail com


On Fri, Apr 24, 2020 at 1:11 PM Jehan Pagès via gimp-user-list <
gimp-user-list gnome org> wrote:

Hello,

On Fri, Apr 24, 2020 at 8:16 AM Maurizio Loreti via gimp-user-list <
gimp-user-list gnome org> wrote:

Any foresight for an implementation of GIMP 2.10.18 for MacOS?  [I
mean
official, not MacPorts (that uses XQuartz) nor Partha's].


Isn't it you who already asked at least twice the same thing? The
answer is
still the same as we told you several times already. Our (unique!)
macOS
contributor has not been available for like more than a month. And to
be
fair, I don't care as much about the macOS version of GIMP as I am
worried
about this contributor and hoping he (and his family) is still fine as
we
get no news.

Since you knew already about the situation, a bit of compassion would
not
be a bad thing.


If GIMP has problems with MacOS, what are these problems?


Isn't *no contributor* enough of a problem by itself? The problem is
that
nobody seem to care enough to help this package happen (only enough to
**ask** for it apparently). We have called for contributors so many
times
over the years (and again recently, so much there has even been a
French
specialized mac-news website who relayed the call a few weeks ago!).
This contributor could be you if you want to help packaging!
The current version of scripts are there:
https://gitlab.gnome.org/Infrastructure/gimp-macos-build

There are only 3 possible outcomes:
1/ This contributor finally comes back and he continues *alone* 😢 to
do
all the mac packaging.
2/ Other people finally show they care by contributing.
3/ A mix of 1/ and 2/ which is the best outcome!

In none of these scenarios just asking without contributing helps in
any
way.
Thanks for either helping or understanding. 🙂

Jehan


--
Maurizio Loreti  --  Maurizio Loreti gmail com
_______________________________________________
gimp-user-list mailing list
List address:    gimp-user-list gnome org
List membership:
https://mail.gnome.org/mailman/listinfo/gimp-user-list
List archives:   https://mail.gnome.org/archives/gimp-user-list



--
ZeMarmot open animation film
http://film.zemarmot.net
Liberapay: https://liberapay.com/ZeMarmot/
Patreon: https://patreon.com/zemarmot
Tipeee: https://www.tipeee.com/zemarmot
_______________________________________________
gimp-user-list mailing list
List address:    gimp-user-list gnome org
List membership:
https://mail.gnome.org/mailman/listinfo/gimp-user-list
List archives:   https://mail.gnome.org/archives/gimp-user-list



--
ZeMarmot open animation film
http://film.zemarmot.net
Liberapay: https://liberapay.com/ZeMarmot/
Patreon: https://patreon.com/zemarmot
Tipeee: https://www.tipeee.com/zemarmot



--
ZeMarmot open animation film
http://film.zemarmot.net
Liberapay: https://liberapay.com/ZeMarmot/
Patreon: https://patreon.com/zemarmot
Tipeee: https://www.tipeee.com/zemarmot



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]