Commit graph

86 commits

Author SHA1 Message Date
Alx Sa
ea8b9dc13c core, paint, tools: Port to MyPaint Brushes2
This patch ports our MyPaint code to use the
MyPaintSurface2 API, allowing us to support
version 2 MyPaint Brushes correctly.
The API update lets us take into account
the zoom factor and rotation of the canvas
when drawing. It also adds a "Gain" option
to the GUI in order to control the strength
of the input's pressure (tablet or mouse).
As a caveat, this patch does not yet
implement spectral/pigment blending.
2025-07-09 22:14:42 +00:00
Bruno Lopes
7f527d8c72
build/linux: Update poppler, libheif and graphviz modules
poppler: Update poppler-25.06.0.tar.xz to 25.07.0
libheif: Update libheif-1.19.8.tar.gz to 1.20.1
graphviz: Update graphviz-13.0.1.tar.gz to 13.1.0
2025-07-06 14:14:11 +02:00
Bruno Lopes
4b549c61f2
build/linux: Restrict Gexiv2 module version to the API we support
See the explanation in: #14361
2025-06-29 10:48:26 -03:00
Bruno Lopes
fc06a435fa
build/linux: Fix OpenBLAS comment position 2025-06-23 07:06:06 -03:00
Bruno Lopes
c1422a9008
build/linux: Update graphviz module 2025-06-21 08:59:25 -03:00
Bruno Lopes
2defc3d07b
build/linux: Delete some whitespaces on Flatpak deps script 2025-06-19 14:45:08 -03:00
Bruno Lopes
fd47161215
gitlab, build, tools: Port bashisms to POSIX-compliant code
Although these scripts are not called by Meson, portability outside the
build system is always welcome (specially on macOS or non-GNU OSes).
2025-06-16 22:06:06 -03:00
Bruno Lopes
26c2fe9e3d
build/linux: Add comment about why libbacktrace is custom built 2025-06-14 12:46:41 -03:00
Bruno Lopes
d178d741b0
build/linux: Sync Flatpak nightly modules with Flathub branches 2025-06-13 21:52:11 -03:00
Bruno Lopes
ac320fb6a6
build/linux: Enable dependency check on Nightly flatpak
Inspired by https://github.com/flathub/org.gimp.GIMP/pull/437

Now, in the weekly builds the job will fail if some module is old.
It is reasonable to make the job fail since nightly builds are
supposed to be blending edge so they should have the latest deps.

This makes way easier to spot when some module needs to be updated,
reducing a bit the continuous burden of syncing the 3 manifests.
2025-06-13 21:52:06 -03:00
Ondřej Míchal
c55f4b104c build/linux: Sync dependencies with Flathub flatpak
Poppler - 25.05.0 -> 25.06.0
2025-06-06 08:09:08 -03:00
Bruno Lopes
4290f3dc7b
build/linux: Update flatpak SDK and runtime install commands
Ported from: 25ba247a96
2025-05-10 13:23:37 -03:00
Ondřej Míchal
3988b76e33 build/linux: Sync dependencies with Flathub flatpak
OpenEXR     - 3.3.2   -> 3.3.3
Poppler     - 25.03.0 -> 25.05.0
Ghostscript - 10.04.0 -> 10.05.1
libheif     - 1.19.7  -> 1.19.8
libde265    - 1.0.15  -> 1.0.16
SuiteSparse - 7.10.1  -> 7.10.3
2025-05-08 11:46:35 +03:00
Bruno Lopes
a2aedc789b
build/linux: Improve a bit the comments of Flatpak dist script 2025-04-26 22:11:48 -03:00
Bruno Lopes
00ff3831e4
build/linux: Fix indentation on Flatpak scripts after c2771753 2025-04-26 14:13:27 -03:00
Bruno Lopes
72f80d5331
build/linux: Make Flatpak scripts POSIX-compliant 2025-04-26 11:08:29 -03:00
Bruno Lopes
c2771753db
build/linux: Add org.flatpak.Builder support for Flatpak .sh scripts 2025-04-26 10:52:38 -03:00
Bruno Lopes
8b5ddf53aa
build/linux: Sync with Beta manifest
Ported from: 7d7e018d0f
2025-03-25 13:32:39 -03:00
Bruno Lopes
dc53786acd
build/linux: Update README regarding versioning 2025-03-16 07:02:44 -03:00
Bruno Lopes
b0b4c513ff
build/linux: Make gimp module a bit more alike the one on Beta manifest 2025-03-15 21:30:50 -03:00
Bruno Lopes
2ad8aa8a56
build/linux: Update Flatpak modules preparing to 3.0 RC3
Ported from:

4006f0fcf5
8d6a68748b
fd3926baac
2025-03-08 08:04:44 -03:00
Bruno
0c1d11dc86
build: Unify checksumming behavior
As a rule, dist scripts will always output sha-256 and sha-512 sums but
the checksums files will be generated only on releases.
2025-02-13 09:24:19 -03:00
Bruno
4464537a38
build/linux: Do not distribute 'gegl-imgcmp' on Flatpak nightly
Similarly to 188deedb
2025-01-26 16:22:52 -03:00
Bruno
f61b98dd98
build/linux: Complete c45a4eed (regarding cfitsio update) 2025-01-26 14:46:12 -03:00
Bruno
c45a4eed48
build/linux: Update cfitsio module to 4.5.0 preparing to RC3 2025-01-25 22:13:06 -03:00
Jehan
26a079bd57 devel-docs: get rid of g-ir-doc.
Per the (quite off-topic) discussion in #12772, the fact it's quite
broken on Windows, apparently not too maintained anymore and its syntax
clashes with gi-docgen syntax…
2025-01-23 13:07:03 +01:00
Bruno
6b13a9fff2
build/linux: Fix dangling "gimp-console*" and "gimptool*" symlinks on Flatpak
Ported from: 323972fdf5
2025-01-17 16:20:00 -03:00
Daniele Forsi
994137a82e Fix spelling errors found with codespell 2025-01-04 15:11:03 +00:00
Bruno
01ce43d94b
build/linux: Sync with Beta manifest regarding OpenMP and libbacktrace
11d009928e

30d588c455
2025-01-01 21:29:30 -03:00
Bruno
e32cf624a4
build/linux: Sync with Beta flatpak regarding updated modules for RC2
See: 17144650cd
2024-12-31 10:36:54 -03:00
Bruno
2952039ea7
build/linux: Use custom App ID on Nightly flatpak
This avoids DEs mixing icons from stable/beta with nightly.
2024-12-19 09:16:25 -03:00
Bruno
1309e98fb9
gitlab-ci, build: Implement GL collapsed logs (like GHA/CircleCI 'steps')
This provides us fine-grained info on how much time each step take,
making easier to spot stuckness and to quickly understand the logs.

'gimp' jobs normally do not take advantage on this due to log limits
(they expand and crop the log), so I adapted them to only output errors.

---

Also, to reduce logs, all jobs were reviewed with proper GIT_* variables.
2024-12-15 09:36:11 -03:00
Bruno
e2614019b6 gitlab-ci, build/linux: Give .flatpak artifact a "standard" name
Every artifact from our CI have a pretty name with some reason for it:
- Installer: it is this way on download.gimp.org since ever(?) and that's fine
- Store: follows Microsoft de facto spec of .msix files naming
- AppImage: follows AppImage draft spec of .appimage files naming

But the .flatpak just looks like AUR pkg. So, let's use reverse DNS
naming which is used at least for .flatpakref files. This makes more sense.
2024-11-04 01:52:20 +00:00
Bruno
fb5e72fbbf
build/linux: Build 'openblas' with DYNAMIC_ARCH enabled (for now)
Fixes: #12237

We were building with that option disabled here because it was making our
runners to randomly fail at building it. However, that option disabled also
makes some machines to fail, due to its low-level nature. So, there is no
fix for it(?), let's enable then and hope the runners willn't fail again.
2024-11-03 10:55:30 -03:00
Bruno
9d8e20f432
build/linux: Build flatpak with GCC to avoid LLVM/freedesktop branch hell
Despite building GIMP with Clang helped a lot to make our deps builds robust,
it is very hard to maintain, not because of LLVM but because of freedesktop.
We needed to ensure that the branch of LLVM matched the one of freedesktop on
which GNOME SDK is based. That stopped to work resulting on bad inconsistency:
1) flathub never had a problem; 2) GNOME runners sometimes worked, others not;
3) locally it stopped to work completely, so the .json right now is unportable.

Some annoying bugs were:
- "error: Requested extension *llvm* not installed"
- "Similar refs found for *llvm*"

So, let's end this not using any extension anymore while keeping only the nice
improvements in the custom builds.
2024-11-03 10:55:27 -03:00
Bruno
5284b5258f
build/linux: Clean Flatpak dist stage output 2024-11-03 10:55:23 -03:00
Bruno
d5c7c9304c
build/linux: Stop Flatpak scripts if any command fails 2024-11-03 10:55:19 -03:00
Bruno
1182d7606c
build/linux: Make flatpak scripts humanly readable
Despite my good intentions in the previous structure, it
was just too complicated and not linear to read. Let's
make it more orthodox.
2024-11-03 10:55:08 -03:00
Bruno
975a462dc2
build/linux: Instruct contributors about flatpak-builder dependency
GNOME docker image and Flathub runner seems to use edge flatpak-builder,
which auto set -DCMAKE_INSTALL_LIBDIR option, crucial for some deps.
Pre-1.4.3 versions don't do this so the build fails in some machines.
Let's prevent this making the script more clear about flatpak-builder.
2024-11-03 10:48:27 -03:00
Bruno
d9710697d6
build/linux: Sync with beta manifest updating some modules
Ported from: f381737705

This updates openexr, libdeflate, poppler and suitesparse, after testing them.
2024-10-28 20:40:50 -03:00
Bruno
4a41b76411
build/linux: Update ghostscript, json-c and graphviz modules
Ported from: e499861f14
2024-09-29 12:58:47 -03:00
Bruno
cf2893747d gitlab-ci, build: Do not bundle nor dist any Lua related files
Following 78665ca372

Since our official builds tends to be vanilla (only using meson
standard options), there is no need to shipping these lua files.

This commit can be reverted in the future if Lua is stable again.
2024-09-28 01:42:44 +00:00
Bruno
aa10a33db9
build/linux: Sync with Beta manifest regarding imath, poppler, suitesparse and graphviz
Ported from: 1ddf27837b
2024-09-14 17:44:04 -03:00
Bruno
898f8917ab
build/linux: Sync with Beta manifest regarding IFF support
Ported from: 0acddb8909
2024-09-08 16:57:47 -03:00
Bruno
0e245e86c1 build/linux: Always use latest commit in luajit and lua-lgi modules
luajit download server to tarballs stopped to work, which is expected,
since it was advised by the team in https://luajit.org/download.html:
"Please do not use obsolete versions from older tarballs or zip files.
Please remove any outdated links to these downloads — these links will
cease to work soon."

We also will not use the official git server since it does not support
all git clone features, which makes flatpak-builder cloning stage fail.

---

Regarding lua-lgi, we will not use the latest commit since seems that
our goat exercises or gobject-introspection or lua-lgi iteself is broken
since lua-lgi commit: 3f47eb57ef5a84be878ce33c15b7ff037059b08d
2024-08-28 11:16:57 +00:00
Bruno
d389068d5d build/linux: Update suitesparse module on flatpak manifest 2024-08-28 11:16:57 +00:00
Bruno
d7806d92ec
build/linux: Make flatpak maintainer instructions clearer
Some parts of the README got obscured or dated with time. Let's improve them:

- Remove redundant text about keeping GIMP buildable (it's already said on
  Cod. Style and Dev rights pages on gimp-web-devel, and not flatpak specific)
- Remove text about 1-hour timeout which isn't true according to my tests,
  specially after the improvements of splitted jobs and updated build options
- Reorder Anitya text to before "module dropping" text, it's linear this way
  ("module dropping" by checking runtime is last step of module cycle of life)
- Remove very confusing "flatpak run... gimp" line which was breaking the
  explanation flow about "module dropping" and it's not too useful since the
  manifest (which is only a bit different) can be acessed in-source with tags
- Changed title from "Mantaining the manifest" to "Mantaining the modules"
- Added not so clear "Versioning the flatpak" to separate it from other modules
  text. The title is not perfect, but at least make a needed pause on reading
2024-08-20 07:39:39 -03:00
Bruno
18188dbb1c build/linux: Sync with Beta manifest regarding gexiv2 and exiv2 headers
Ported from: 37b173e3a9
and ac0069eb20

The reason for this change is because part of our API (babl, gegl and
gimp headers) directly links to gexiv2 then exiv2 headers so these two
should be provided, even if they aren't on babl/gegl/gimp namespaces.

This change is useful to beta. But, despite we not using extensions on
GIMP nightly to need these headers, doesn't hurt syncing this change.
Indeed, this commit clarify "why" we aren't cleaning these headers.
2024-08-20 10:33:10 +00:00
Bruno
b4ad767296 build/linux: Sync with Beta manifest regarding openexr and imath (add libdeflate)
Ported from: 55fdadd10f
2024-08-15 11:09:48 +00:00
Bruno
aabfec824d
build/linux: Sync with Beta manifest regarding graphviz
Ported from: 395358b517
2024-08-11 13:59:17 -03:00