Commit graph

117 commits

Author SHA1 Message Date
Bruno Lopes
c3e152a4c3
build/linux: Remove useless line on AppImage script
It was introduced by 6f632974
2025-11-15 20:19:52 -03:00
Bruno Lopes
6f6329744d
build/linux: Create pseudo-release on AppData if nightly builds
This is specially useful for Flatpak since now the
correct version will be shown on 'flatpak list'
2025-11-11 13:49:08 -03:00
Bruno Lopes
014aa5ae6f
build/linux: Patch mypaint brushes on AppImage and Snap too
Following 2f6b7591
2025-09-28 21:39:00 -03:00
Bruno Lopes
47eac319b1
build/linux: Silence noisy warnings about GTK_MODULES
From GTK mouth:
https://gitlab.gnome.org/GNOME/gtk/-/blob/3.24.50/gtk/gtkmodules.c?ref_type=tags#L250
2025-09-28 19:58:25 -03:00
Bruno Lopes
b0689f565b
build/linux: Little improvement on libheif plugins bundling 2025-09-28 08:25:27 -03:00
Bruno Lopes
2b32496195
build/linux: Remove some uneeded lines after move to Trixie 2025-09-28 07:41:45 -03:00
Bruno Lopes
de62139894
build/linux: Fix GJS bundling on AppImage
It have an undeclared dependency on GioUnix typelib.
2025-09-28 07:40:20 -03:00
Bruno Lopes
f774ad7f16
Revert "Issue #13001: build/linux: Sandbox XDG_DATA_DIRS on AppImage"
This reverts commit bc095d5c83.

Sandboxing XDG_DATA_DIRS, while can fix the crash due to share/mime,
on the other hand makes impossible to call share/applications
associated with such mimes on host.

So, since we bumped the AppImage to Debian Trixie so the Glib
crash due to mime is gone, we can (and should) revert the
wrong sandboxing without problems.
2025-09-27 19:58:02 -03:00
Bruno Lopes
f53a843c3d
gitlab-ci, build: Move to Debian Trixie on AppImage only
Fixes: #13001 #13106 #13492 #13647 #14779

AppImage jobs are now built with Trixie to adress #13001 and many others.

To have two Debian versions with less complexity possible, I needed to:
- Revert the prevalence of the AppImage CI (now nonreloc comes first);
- Revert the use of Clang on Debian (also to save 120MB from registry,
  since we now have 4 Docker images, each one with its own STEP cache!).
In short, .gitlab-ci.yml will look more like before I changing it a lot.
2025-09-27 18:58:18 -03:00
Bruno Lopes
d5f3fa77db
build/linux: Improve bund_usr check added in 5bc2f26c 2025-09-21 21:37:25 -03:00
Bruno Lopes
63b4d69e48
build/linux: Drop --permissive mode introduced in 5bc2f26c
It was an awful design of mine.
2025-09-21 14:44:11 -03:00
Bruno Lopes
5bc2f26cb0
build/linux: Stop AppImage script if bund_usr target do not exist 2025-09-20 20:31:24 -03:00
Bruno Lopes
b70186bc99
build/linux: Bundle needed files for PostScript support on AppImage 2025-09-16 12:10:21 -03:00
Bruno Lopes
c734c0f33f
build/linux: Make bund_usr function more robust on AppImage script 2025-08-22 19:55:31 -03:00
Bruno Lopes
9eee96328b
build/linux: appimagetool now supports specifying .appimage path on .zsync
See: https://github.com/AppImage/appimagetool/pull/111
2025-08-14 21:44:15 -03:00
Bruno Lopes
893f268e60
build/linux: Complete a3aca3c1 2025-08-03 19:47:24 -03:00
Bruno Lopes
a3aca3c171
build/linux: Print info message about which archs will be distributed
All our Linux dist scripts are multi-arch aware so
we need to be clear like on windows scripts.
2025-08-03 19:39:59 -03:00
Bruno Lopes
bd6218a12f
build/linux: Some cosmetic changes to AppRun vars 2025-08-01 10:55:54 -03:00
Bruno Lopes
bc095d5c83
Issue #13001: build/linux: Sandbox XDG_DATA_DIRS on AppImage
Closes #13001

XDG_DATA_DIRS is a variable used by many deps (e.g. glib) to
find runtime data. So, let's point XDG_DATA_DIRS to the
appimage bundle so prevent unexpected data from the host.
2025-08-01 10:46:07 -03:00
Bruno Lopes
d731a8fc0d
build: Make scripts CWD check run on CI too 2025-08-01 09:19:21 -03:00
Bruno Lopes
70eb95bff8
build: Reorder shasums output on AppImage and Installer scripts
The output being before the release-only file generation is more logical
2025-07-31 19:24:40 -03:00
Bruno Lopes
e0b2bcba27
build/linux: Some cosmetic changes and comments to AppImage script 2025-07-31 18:40:13 -03:00
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
464b1fb32f
build: Only bundle the strictly needed .typelib files
Otherwise plug-in developers would rely on .typelib available only on
Linux OR macOS OR Windows so create unportable/broken .py plug-ins.
2025-06-21 18:40:22 -03:00
Bruno Lopes
6c5401b9da
build/linux: Explain the purpose of $APPENDED_LIST 2025-06-19 16:25:16 -03:00
Bruno Lopes
f59b83ed6c
build/linux: Reorganize a bit the files section of AppImage script
This makes it a bit more similar to the Windows bundling script so
easier to read and maintain in the future.
2025-06-19 16:20:00 -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
b57744ceba
build/linux: Fix AppImage StartupWMClass
This completes aede2709b0
2025-06-13 10:09:22 -03:00
Bruno Lopes
472123181d
build/windows: Do not bundle unneeded share/metainfo on Windows
Seems it was used at runtime in the past but that is
not the case anymore. Indeed, it started to be bundled in
af79bbe028 due to an
error: before the Windows bundling unification the
crossbuilds "script" on .yml bundled all the 'share' dir.
2025-06-12 18:59:48 -03:00
Bruno Lopes
7fd2489985
build/linux: Run gimp process without LD interpreter on AppImage
Closes: #12929

This normalizes argv0, making the AppImage debuggable by gdb etc.

From now, the AppImage can't be run in pre-Bookworm (glibc < 2.36)
distros, but that use case was never officialy supported anyway.
2025-06-07 16:47:30 -03:00
Bruno Lopes
f2bd9fcd7f
build/linux: Do not bundle daemons on AppImage
We weren't launching then (and not sure if
we should at all). Also, the proper fix to
some errors encountered is 330ebe90.
2025-06-07 13:44:40 -03:00
Bruno Lopes
330ebe90b6
build/linux: Prevent loading host's GIO_EXTRA_MODULES on AppImage
We can't guarantee that the .so modules pointed by GIO_EXTRA_MODULES will
link properly to the bundled libc and other bundled deps in the AppImage.

So, by making our AppImage ignore that var we avoid errors on terminal due
to linking mismatch (e.g. on NixOS which sets that var by default).
2025-06-06 21:22:44 -03:00
Bruno Lopes
ddf9d57ab6
build/linux: Fix bundling of GEGL json modules 2025-05-09 21:22:27 -03:00
Bruno Lopes
373e46f871
build: Fix pkgconfig files not being fully bundled (e.g. gimpui*.pc) 2025-05-04 14:36:29 -03:00
Bruno Lopes
2cedc9fc96
build/linux: Do not allow library preloading on AppImage
Closes: #13527
2025-04-12 19:20:29 -03:00
Bruno Lopes
d3501ffc35
build/linux: Make AppImage script tool-agnostic (part 3) 2025-04-10 07:33:01 -03:00
Bruno Lopes
4070cfb9ee
build/linux: Add some comments to AppRun
And make APPDIR output clearer.
2025-04-10 07:27:36 -03:00
Bruno Lopes
f2bdf03b9a
build/linux: Do not set uneeded GIMP3_* dirs on (relocatable) AppImage
Relocatable builds do not need them.

Also, remove comments about the inspiration for the scripts since
they are now so refined that make no sense to link 3P sources.
2025-04-09 08:58:03 -03:00
Bruno Lopes
43ae9fced5
build/linux: Prevent LD_LIBRARY_PATH leaking on AppImage
Closes #13603

Following 8fe7ddf3
2025-04-07 09:23:45 -03:00
Bruno Lopes
abeac94e8e
build/linux: Fix '--no-expand' param of conf_app function on AppImage script 2025-04-06 22:05:21 -03:00
Bruno Lopes
b303b6e20b Issue #13367: set Mesa drivers on Continuous appimage from stable series.
Partially reverts 3bbcdbd325
2025-04-06 20:19:31 +00:00
Jehan
afa152ea54 Issue #13367: use correct AppImage and MSIX IDs for continuous builds.
Also make sure we ship the relevant graphviz runtime dependencies when
the debug menu is visible.
2025-04-06 20:19:31 +00:00
Bruno Lopes
b2bf83a6bd
build/linux: Make AppImage script tool-agnostic (part 2) 2025-04-06 16:04:49 -03:00
Bruno Lopes
30d7631d34
build/linux: Make AppImage script tool-agnostic (part 1) 2025-04-06 13:39:15 -03:00
Bruno Lopes
c29be7ba5f
build/linux: Bundle correct Resource dev files on AppImage
Similarly to 73c7d468
2025-03-29 15:38:31 -03:00
Bruno Lopes
ad155fd545
build/linux: Do not include .debug symbols
Shipping .debug symbols is not a common practice on Linux distros.
Also, backtrace() API seems to not be able to read them separetely.

So, there is no use for them. Who wants top tier debugging can set:
export DEBUGINFOD_URLS="https://debuginfod.debian.net"
2025-03-28 21:10:44 -03:00
Bruno Lopes
8cb3f0ff66
build/linux: Ensure that 'ld-linux' have .debug symbols
x86_64 have a peculiar path so this trick is needed.
2025-03-16 19:27:31 -03:00
Bruno Lopes
4e073a6788
build/linux: Do not bundle 'gdk-pixbuf-query-loaders' .debug symbol 2025-03-16 19:27:27 -03:00
Bruno Lopes
4c8c64aa46
build/linux: Remove leftover from previous try of .debug on AppImage
It is not needed because the .debug files are bundled.
2025-03-16 17:43:01 -03:00
Bruno Lopes
958e82d5e9
build/linux: Bundle deps .debug symbols on AppImage with 'debuginfod' 2025-03-16 17:14:54 -03:00