Commit graph

46994 commits

Author SHA1 Message Date
Jernej Simončič
4d3b901589 Installer: forgot about .xcf extension
(cherry picked from commit c71a146220)
2021-05-10 17:00:37 +02:00
Jernej Simončič
90c2e81212 Installer: minor fixes
(cherry picked from commit e8ac2ed19b)
2021-05-10 17:00:37 +02:00
Jernej Simončič
d7799efd0d Installer: ported install script to Inno Setup 6, add per-user install support
Rewrote file association handling to work both for all users and per-user

(cherry picked from commit fa1d71f714)
2021-05-10 17:00:36 +02:00
Jernej Simončič
c9b9e37c57 Installer: install 64-bit Python on 64-bit Windows
(cherry picked from commit ad7434bb48)
2021-05-10 17:00:35 +02:00
Jernej Simončič
4ccf42dc0a Installer: changes for 2.10.12
(cherry picked from commit cd8192ad5b)
2021-05-10 17:00:34 +02:00
Jernej Simončič
67f7187c25 Installer: handle missing install directory of GIMP <2.8 better when there's still uninstall info in Registry
(cherry picked from commit 778faaddc8)
2021-05-10 17:00:34 +02:00
Jernej Simončič
b8021c0826 Installer: remove dead code
(cherry picked from commit b6f11ee635)
2021-05-10 17:00:33 +02:00
Jernej Simončič
d476b47dcd Installer: remove LIBTHAI_DICTDIR environment variable (no longer needed, see https://gitlab.gnome.org/GNOME/gimp/issues/2496#note_365235 )
(cherry picked from commit 4991603b2a)
2021-05-10 17:00:32 +02:00
Jernej Simončič
0ed37058de Installer: remove lib\gegl-0.2
(cherry picked from commit 47103dc28f)
2021-05-10 17:00:32 +02:00
Jernej Simončič
2cc134b8f4 Installer: include debug symbols for babl/gegl DLLs in lib\*
(cherry picked from commit ed08c1eded)
2021-05-10 16:59:27 +02:00
Jernej Simončič
2c724ba064 Installer: proper fix for libthai
(cherry picked from commit 3fd5b50f94)
2021-05-10 16:59:26 +02:00
Jernej Simončič
f959726b5d Installer: remove Thai locale temporarily (causes crash on Windows 7)
(cherry picked from commit e40a5b9d4c)
2021-05-10 16:59:26 +02:00
Jernej Simončič
f05f51295e Installer: include extra debug symbols, Ghostscript 9.25
(cherry picked from commit 628a5ecb79)
2021-05-10 16:59:25 +02:00
Jernej Simončič
9ed68c833c Installer: don't scan recursively for configuration override files
(cherry picked from commit dde5de7340)
2021-05-10 16:59:24 +02:00
Jernej Simončič
63d5e3591b Installer: small fix for 32on64
(cherry picked from commit 398d176855)
2021-05-10 16:59:23 +02:00
Jernej Simončič
c8dfa69def Installer: don't include unnecessary files, some more fixes for new plugin paths
(cherry picked from commit b7a32ee848)
2021-05-10 16:59:23 +02:00
Jernej Simončič
4c64588f18 Installer: zlib1.dll has no version info, compare timestamp when updating in System32
(cherry picked from commit 6fceb041df)
2021-05-10 16:59:22 +02:00
Jernej Simončič
f030ade0be Installer: plug-ins install changes
(cherry picked from commit ab3ff790ab)
2021-05-10 16:59:21 +02:00
Jernej Simončič
97289a0989 Installer: remove plugins from the lib\gimp\2.0\plug-ins directory
(cherry picked from commit 5ddccb0de4)
2021-05-10 16:58:40 +02:00
Jernej Simončič
101d1a4d97 Installer: fix .svg MIME type in Registry (fixes toolbox icons)
(cherry picked from commit d93b4437b7)
2021-05-10 16:58:39 +02:00
Jernej Simončič
e6eb002eb3 Installer: improved compile.bat
(cherry picked from commit 038e9e711b)
2021-05-10 16:58:38 +02:00
Jernej Simončič
d2190e70df Installer: show progress while removing old .debug files
(cherry picked from commit 324570712e)
2021-05-10 16:58:37 +02:00
Jernej Simončič
655a874f1b Installer: remove all obsolete 2.8 plugins
(cherry picked from commit 16562649f3)
2021-05-10 16:58:37 +02:00
Jernej Simončič
f592814100 Installer: more verbose debug messages
(cherry picked from commit 363b03aa35)
2021-05-10 16:58:36 +02:00
Jernej Simončič
06b98b9bea Installer: include full version number in icon name
(cherry picked from commit 78fbf159a6)
2021-05-10 16:58:06 +02:00
Jernej Simončič
0f775b5adc Installer: update python2 interpreter file
(cherry picked from commit a296c92f7c)
2021-05-10 16:58:05 +02:00
Jernej Simončič
5c31c6ac3d Installer: remove Quick Launch icon
(cherry picked from commit 76f7d6fa21)
2021-05-10 16:58:04 +02:00
Jernej Simončič
66ccd53174 Installer: install debug symbols by default
(cherry picked from commit e5988ed940)
2021-05-10 16:57:45 +02:00
Jernej Simončič
33d0af3d19 Installer: ignore version information on files installed to {app}
(cherry picked from commit ff66d3d218)
2021-05-10 16:57:44 +02:00
Jernej Simončič
e939fcec31 Installer: include gdk-pixbuf-query-loaders.exe
(cherry picked from commit 04be184020)
2021-05-10 16:57:31 +02:00
Marc Espie
6dc98fe7f0 Issue #6850: support for memory in the dashboard under OpenBSD. 2021-05-09 19:57:49 +02:00
Jehan
6466d46052 app: check the time before last selection draw before queuing a redraw.
This way, we would queue a lot less canvas region unnecessary redraws.
We still remake the time-before-last-draw check in the draw() signal
handling before we want to update the marching ants index for draw
events coming for other reasons (canvas updates, moving/zooming on
canvas, exposition changes, etc.).
2021-05-09 15:51:20 +02:00
Jehan
e8a531e51e app: fix selection display on right/bottom borders when rulers are…
… displayed.

We should use the dimensions from the GimpDisplayShell not the the
GimpCanvas. Indeed the canvas is shorter when rulers are visible, hence
the selection next to the extreme sides (bottom and right sides of the
canvas) was not drawn.
2021-05-09 15:37:22 +02:00
Jehan
4fee04b839 Issue #5640: Selection tools not showing selection on Wayland.
As suggested in a comment (itself coming from an IRC discussion), we
should not use gdk_window_(begin|end)_draw_frame() functions as this
works on X, but not on Wayland anymore. Instead draw directly during
draw() call of the shell widget, and force it to happen regularly, to
update the marching ants, via gtk_widget_queue_draw_region().

This is tested and works on Wayland. Please everyone, test thoroughly to
make sure it works well in all situations, and also that we don't get
any unexpected slowdowns.

Since the symptoms are very similar, it is highly possible that it also
fixes the issue #5952 too, for selection not showing on macOS since Big
Sur 11 (maybe they changed the same way as Wayland did). Unfortunately I
can't check this myself. Please test, whoever has access to a macOS Big
Sur and can build GIMP!
2021-05-09 02:47:47 +02:00
Jehan
8c2afcb31b NEWS: start the GIMP 2.99.8 section. 2021-05-08 13:28:56 +02:00
Trần Ngọc Quân
60a9e25101 build: add Vietnamese translation to the Windows installer
Signed-off-by: Trần Ngọc Quân <vnwildman@gmail.com>
2021-05-08 13:08:21 +02:00
Jehan
419892c3bd gitlab-ci, build: CI job to package GIMP on Windows from MSYS2 build.
This new job resulted in a package which allows to run GIMP on Windows
(as tested in a VM; at least it starts, I can create a new canvas and
paint). Of course I think this will need to be tweaked a little bit
more, as I'm sure we miss things here and there.

At the very least, even though I add the Python and Luajit binaries,
GIMP on Windows didn't find them. This will need to be investigated.

Also it looks like opening from a remote location may not work. Not sure
if this about a missing GIO module or maybe something which works
differently on Windows (I was not even able to drag'n drop from the
browser!). Anyway this needs to be looked at as well.

Note that gdk-pixbuf-query-loaders is apparently unneeded when GIMP is
built this way (unlike with our crossroad build).

All this to say that this is still an early attempt to full CI build for
Windows.
It doesn't invalidate the crossroad build, because cross-compilation
builds from Linux will always stay very important for Linux developers
to be able to easily fix Windows bugs too; yet the crossroad build has 2
major issues:
1. We haven't figured out yet how to run GObject Introspection tools for
   cross-builds, so the crossroad builds are not full-featured (and this
   is quite a major feature we are missing!).
2. Also I will want to run the installer in the CI at some point and the
   one we use can only run on Windows itself AFAIK. We could try to run
   it through Wine, but still anyway the point 1. is already quite a
   blocker, let's do the simple thing.

Note that we will likely want to move to meson for this build, because
autotools is very slow on Windows. But as long as the few blocker meson
bugs are not fixed, let's stick to the slow yet good build.
2021-05-07 20:04:03 +02:00
Jehan
2ad349106a gitlab-ci: add Win 32-bit and Linux Clang builds to schedules.
These are interesting and may find very specific bugs from time to time,
but the usefulness is rare enough not to warrant to run at each commits.
This is just a waste of resources.

For scheduling finesse (in case we want to separate these in separate
scheduling), also rely on the existence of variables during scheduling.

Finally make sure that the non-scheduled builds are not run in schedule
pipelines (they are already run far enough).
2021-05-07 20:03:56 +02:00
dimspingos
89e83ae5e4 Updated Greek translation 2021-05-07 16:26:49 +03:00
Ngọc Quân Trần
84766839f1 Update Vietnamese translation 2021-05-07 08:13:24 +00:00
Jehan
3027b4eb4c devel-docs: update a bit the release-howto.
In particular add the need to wait a bit for installers before actually
publishing news. Also add a few usage examples for the gimp-web helper
tools for binary file publishing (torrent creation and mirror checking).
2021-05-06 02:47:18 +02:00
Jehan
7cca69cd49 build: fix a weird (yet unexplained) build bug.
Without this, the native Windows GIMP build fails in CI with:

> make[2]: *** No rule to make target '_install\include\gegl-0.4\gegl.h', needed by '../libgimpcolor/gimpadaptivesupersample.lo'.  Stop.

Even though `gegl.h` is present (as checked through artifacts). It's
just so weird.
2021-05-06 02:29:41 +02:00
Jehan
6c91e7f964 build, gitlab-ci: break the native Windows build into 2 jobs.
One for dependencies, one for GIMP.
2021-05-06 02:29:41 +02:00
Jehan
ffd732c444 build: do not build Windows dependencies with ccache.
The build rules were highly inspired by other projects on GNOME's
Gitlab. All of them used to build with ccache. It worked fine for the
main build, but completely broke GObject Introspection build on both
babl and GEGL. And the worse thing is that meson was absolutely not
displaying the error, just saying it failed (even in verbose mode). A
lot of time wasted trying to debug.

Therefore let's get rid of ccache, but only for babl and GEGL. Keep it
for GIMP itself as it works fine there.

Other minor changes:

* Build from the build dir, rather than source. The other way around
  works too, but I actually find commands simpler this way.
* Adding artifacts.
2021-05-06 02:29:40 +02:00
Jehan
7254d7500d Cleanup the Gitlab runner manually.
Ok so this is horrible, but this is the only way I found to get past
some errors. The build would break randomly (sometimes it would,
sometimes not, with the same gitlab-ci rules) because of existing files.
The errors would be the following when trying to install dependency
packages with pacman:

> mingw-w64-x86_64-glib2: /mingw64/bin/libglib-2.0-0.dll exists in filesystem

At first I thought it was a bug in Pacman or MSYS2, but on some runners,
I had such warnings at the very start of the runner (note: on some
runners, the warnings would not be displayed even though the final
conflicting files error would still happen at the end of the logs):

> warning: failed to remove mingw64/bin/libglib-2.0-0.dll: Invalid argument

It looks like it might be related to this Gitlab bug where a runner
would fail to clean its environment:
https://gitlab.com/gitlab-org/gitlab-runner/-/issues/1839

In any case, the only way I found so far is to manually remove the
conflicting files before installing the packages supposed to install
these. This is completely horrible (and I sure hope it won't come up
again with different files each time) but really the only workaround I
found so far (I think a real solution will have to come from Gitlab code
or from the GNOME admins, not sure what is the exact source of the
problem).
2021-05-06 02:29:40 +02:00
Jehan
1858aac4c3 gitlab-ci, build: testing native Windows build.
Just an initial test to get a hang of the thing, mostly inspired from
GTK gitlab-ci rules adapted to our build.

All in one job (deps, babl, GEGL, GIMP itself) for now, for simplicity
of debugging. We'll see later to break this into CI sub-jobs.
2021-05-06 02:29:40 +02:00
Jehan
6c1a0e8be7 app: gui_free_progress() should accept any GimpProcess widget.
Simply it should free only GimpProgressDialog as these would be
dedicated dialog (with no meaning once progression is done), and leave
alone other GimpProgress widgets. In any case, it should not output
CRITICAL errors on these.

Fixing the following CRITICAL:
> GIMP-CRITICAL: gui_free_progress: assertion 'GIMP_IS_PROGRESS_DIALOG (progress)' failed

When dropping an image on the toolbox.
2021-05-06 00:19:25 +02:00
Jacob Boerema
8fdeaddbe7 plug-ins: fix using wrong offset for group layer masks in psd export.
Exporting to psd could result in very large files which often failed to
load in both GIMP and PS when a group layer with a layer mask
was present.

Reported on our IRC channel with a sample xcf which made it
possible to figure out the problem.
2021-05-04 15:48:34 -04:00
Ngọc Quân Trần
fca3f23c60 Update Vietnamese translation 2021-05-04 07:21:05 +00:00
Ngọc Quân Trần
644abd790a Update Vietnamese translation 2021-05-04 07:18:27 +00:00