Commit graph

202 commits

Author SHA1 Message Date
Bruno Lopes
d56676a2fa
meson, desktop, plug-ins: Generate MIMEtypes var dynamically
This way, we avoid divergence with MIMEs declared on the
plug-ins .c and .py files and we eliminate duplicate work.

See also: 2ce3c604
2025-06-13 13:47:19 -03:00
Bruno Lopes
35fbb10d43
desktop: Use GIMP_DESKTOP_NAME on appdata too 2025-06-13 10:17:09 -03:00
Jehan
aede2709b0 Issue #14233: incorrect StartupWMClass in gimp.desktop.
The WM_CLASS X property is apparently set to windows throughout the
program by the g_set_prgname() call which we changed in commit
95e32ebb34 from being the executable name (being the fully qualified
program name with the version) to the desktop name.
2025-06-12 02:31:36 +02:00
Jehan
427cc49074 desktop: new release tag for upcoming GIMP 3.1.2. 2025-06-11 03:04:45 +02:00
Jehan
81c0c7a98b desktop: fix release notes.
I realized that without a listing of changes, the "Release Notes" tab is
missing from the Welcome dialog. I can change this in the code, but
having just a single small sentence filling a big tab is not really nice
either. So instead, let's add some more details even if these are not as
major changes as on a minor point release.

After all, these are still nice changes anyway.

Several of these even take good advantage of the demo feature in our
AppStream parsing.
2025-05-18 00:51:03 +02:00
Integral
95e32ebb34 app: set a specific desktop filename to fix wayland window icon
Set a specific desktop filename to fix window icon under Wayland.

Closes: #13183
2025-05-17 13:24:20 +00:00
Jehan
286b80ac36 desktop: set GIMP 3.0.4 release date. 2025-05-17 11:24:00 +02:00
Jehan
9d9265f099 desktop: preparing GIMP 3.0.4 metadata. 2025-05-05 15:31:32 +02:00
Jehan
9ebc1f2126 desktop: make sure "GIMP" (original acronym) stays in the list of keywords.
Some languages may **add** localized variants of the acronym (in
particular when the language system is different, usually when it's not
latin script), but the original acronym should stay a valid keyword
because many people will still use it to search the software.
2025-05-03 18:42:35 +02:00
Bruno Lopes
8ef7bf3553
desktop: Port test-appdata.sh to Python
This works on Windows too so let's make it cross platform.
2025-04-18 20:56:07 -03:00
Jehan
af754df863 desktop: add AppStream metadata to prepare for GIMP 3.0.2.
See #13266.
2025-03-20 23:52:35 +01:00
Jehan
599f209238 desktop: update release date. 2025-03-16 23:06:32 +01:00
Jehan
60119602be desktop: fourth screenshot, by Liam! 2025-03-16 22:58:52 +01:00
Jehan
ba4dae9cd9 desktop: update the screenshots. 2025-03-16 20:32:04 +01:00
Jehan
9fc83f03c6 desktop: GIMP 3.0.0 AppStream <release> tag. 2025-03-10 00:20:37 +01:00
Jehan
d5f730d589 desktop: set release date for 3.0.0 RC3. 2025-02-09 17:25:54 +01:00
Jehan
68947df3f1 desktop: AppStream update. 2025-01-27 17:50:39 +01:00
Jehan
b931f177d3 desktop: prepare RC3 AppStream metadata. 2025-01-15 17:22:02 +01:00
Daniele Forsi
994137a82e Fix spelling errors found with codespell 2025-01-04 15:11:03 +00:00
Jehan
921f8a0676 desktop: update AppStream metadata release date. 2024-12-27 12:18:29 +01:00
Jehan
a18d347bf5 desktop: fix AppData unit testing when in RC+git code.
We still want the normal GIMP_RELEASE C macro to be set because the
whole development frame should have code behaving like release code, yet
only for the AppStream metadata testing, we want to allow a "TODO"
release date while in +git code.
2024-12-11 09:18:13 +01:00
Jehan
27e4c10e81 desktop: prepare the RC2 release with AppStream metadata. 2024-12-06 16:56:59 +09:00
Jehan
7faf646790 desktop: update release date.
We are very likely releasing on Monday 4, and not even now but after a
good night. The whole Gitlab infrastructure is clearly half-borked right
now, we are constantly waiting for runners, sometimes we get random
error 500 when loading Gitlab pages, sometimes some stuff get stuck on
display and we need to refresh.

Not only this, but the Flathub infra is also broken (I believe it's also
hosted by GNOME?) and all our builds are either failing or sometimes
going further then failing at "Committing builds" or other steps,
usually with some HTTP error.
It's not the wisest idea to make a RC1 release in such condition.
2024-11-04 03:28:48 +01:00
Jehan
9368c8abdd desktop: fix AppStream validation with TODO release date.
As I recall, this is something we in fact used to have in gimp-2-10
branch and which we lost when switching from appstream-util to
appstreamcli validation tool (the later is now recommended, but it's
also less featureful, they don't even have a relax test!). So that was a
regression in the build system.

Note that it's not just not to have to put a date too early in our
AppStream metadata, but it's also that this way, we won't forget to
update it upon release (hence shipping with a wrong release data in
metadata). Indeed, when building a non-release version, date="TODO" will
pass the test, yet moving on to a point release version, the validation
test will now fail on a TODO date.
2024-08-29 23:19:58 +02:00
Jehan
5d4e271d5a desktop: add a <release> item for GIMP 3.0.0-RC1.
I had just forgotten to add it, though fortunately (or not) it doesn't
break string freeze because the <release> description fields are not
localized right now.
Cf. discussions in #8628 and this infrastructure report:
https://gitlab.gnome.org/Infrastructure/damned-lies/-/issues/473
2024-08-29 16:29:58 +02:00
Anders Jonsson
a9cf2d7a3e desktop: change gimp20 to gimp30 for gettext
The real used value for gettext_package is
already changed in meson.build
2024-08-29 09:09:29 +00:00
Jehan
b0d1668594 desktop: sync AppStream metadata after GIMP 2.10.38 release. 2024-06-06 21:12:32 +02:00
Jehan
c3840c63e8 build: gimp.ico now generated from the new icon. 2024-03-28 00:19:10 +01:00
Jehan
4e3792d3f1 desktop: application icons are now generated from the new logo source SVG. 2024-03-28 00:19:10 +01:00
Jehan
70d681f6fb desktop: release GIMP 2.99.18 today. 2024-02-17 11:33:32 +01:00
Jehan
5c81f05804 app, desktop: add demo scenarios for 2 release note items. 2024-02-14 16:50:26 +01:00
Jehan
768b01fbf5 desktop: small grammar fix.
Just noticed this while reviewing the Welcome dialog. Since it's user-facing
text, let's avoid too many grammar errors.
2024-02-06 15:49:41 +01:00
Jehan
d1ea2f35c3 desktop: update the <release> info in AppStream metadata. 2024-01-23 22:09:03 +01:00
Jehan
6fc468e7a4 desktop: prepare GIMP 2.99.18 AppStream release notes. 2023-12-31 17:08:31 +09:00
Jehan
5f03859abf desktop: syncing the AppData with gimp-2-10 one. 2023-11-10 16:02:33 +01:00
Jehan
74fee1a957 desktop: update release date (to today) in AppStream file. 2023-07-05 15:57:24 +02:00
Jehan
90f155365b desktop: new AppStream metadata for upcoming 2.99.16 release. 2023-06-12 16:39:46 +02:00
Jehan
3da0cdc03d desktop: removing autotools-only test files.
These are implemented directly in the meson build files.
2023-05-27 00:16:47 +02:00
Michael Natterer
26dce72d2c Remove autotools 2023-05-27 00:03:52 +02:00
Daniel Novomeský
359ce849bc Fix flatpak release info about JPEG XL
(cherry picked from commit d8566241a0)
2023-02-27 01:47:17 +01:00
Jehan
2167ff98fb desktop: update AppStream metadata release date.
(cherry picked from commit c4efe45cab)
2023-02-22 14:04:15 +01:00
Jehan
9c15a2055f desktop: new <release> tag for GIMP 2.10.34.
See #9136.

(cherry picked from commit 0cd38a87e1)

Note: when cherry-picking, the tags were fixed as the main dev branch does not
need the underlined tags for localization anymore.
2023-02-22 14:04:08 +01:00
Jehan
6083fd81a1 app, desktop: prepare AppData <release/> item for upcoming GIMP 2.99.14. 2022-11-09 15:31:39 +01:00
Jehan
ca230cb770 meson: fix warnings of deprecated features.
Now that we bumped our meson requirement, meson is complaining about
several features now deprecated even in the minimum required meson
version:

s/meson.source_root/meson.project_source_root/ to fix:

> WARNING: Project targets '>=0.56.0' but uses feature deprecated since '0.56.0': meson.source_root. use meson.project_source_root() or meson.global_source_root() instead.

s/meson.build_root/meson.project_build_root/ to fix:

> WARNING: Project targets '>=0.56.0' but uses feature deprecated since '0.56.0': meson.build_root. use meson.project_build_root() or meson.global_build_root() instead.

Fixing using path() on xdg_email and python ExternalProgram variables:

> WARNING: Project targets '>=0.56.0' but uses feature deprecated since '0.55.0': ExternalProgram.path. use ExternalProgram.full_path() instead

s/get_pkgconfig_variable *(\([^)]*\))/get_variable(pkgconfig: \1)/ to
fix:

> WARNING: Project targets '>=0.56.0' but uses feature deprecated since '0.56.0': dependency.get_pkgconfig_variable. use dependency.get_variable(pkgconfig : ...) instead
2022-08-31 01:29:37 +02:00
Jehan
fbbe3dbaa9 desktop: update Appdata.
Getting ready for release.
Sorry to translators for adding these strings so late!
2022-08-21 02:56:15 +02:00
Niels De Graef
f663d26ab5 Migrate from intltool to gettext
intltool has long been dead upstream. Let's not poke the dead corpse,
please.

This commit is quite large, but that's mostly since trying to support a
hybrid of both gettext and intltool with both Meson and Autotools was
really hard, so I stopped trying.

Due to gettext relying on quite some things being at the exactly right
place in the autotools build (like `ABOUT-NLS` and `config.rpath`) we
really needed to cleanup the `autogen.sh` to only call `aclocal` and
`autoreconf`. No more strange magic; I tried to do it without changing
too much in the file, and things just broke. If people want to do
something more custom, they can just change the script directly. This
change also uncovered some problems in our `configure.ac`, like using
deprecated macros.

The following major changes happened:

* meson: Changed `custom_target()` to `i18n.merge_file()` for all
  supported file types
* Added `.its` and `.loc`  files for the GIMP-specific XML formats, so
  that gettext understands them
* For the `.isl` (Window installer stuff) file, there's no easy way to
  do this in gettext, so instead we start from an XML file (again with
  its own ITS rules etc), translate that with gettext, and then use
  `xsltproc` with a bit of magic to output the .isl file for each
  language
* the `po*/Makefile.in.in` files are migrated to `Makevars` files,
  which gettext natively understands.

Fixes: https://gitlab.gnome.org/GNOME/gimp/-/issues/8028
2022-06-25 10:25:49 +02:00
Jehan
2b4e433e87 desktop: adding a <release> tag for GIMP 2.10.32.
(cherry picked from commit 4fbc497c28)
2022-06-08 20:59:09 +02:00
Jehan
920041c3a0 desktop: gimp-data-extras AppStream was moved to the appropriate repo.
See the commit 28467cb on the gimp-data-extras repo where I moved this
data in. Not sure why this metadata file was ever pushed to the main
repo as it is obviously for the data-extras package (or else I am
missing some information!).

The old 2017 report where it was originally added:
https://bugzilla.gnome.org/show_bug.cgi?id=763398
2022-05-04 23:00:00 +02:00
Jehan
6895631388 desktop: add (bogus) date for 2.99.12 release.
appstreamcli on CI fails with error:

> E: org.gimp.GIMP:394: release-time-missing date

I didn't have such error on my local build, because it is a new check
only recently added. The CI appstreamcli errored-out this way.

It forces us to add a bogus release date since we don't know it yet. I
chose May 29, because we usually release on Sundays, and it might soon
be time to make a dev release (so who knows, we might get lucky and it
might happen this day), though it should not be taken as a promise or a
real plan just now. I just needed to fill something in, in order to fix
the CI.

I opened a report to ask that appstreamcli proposes a relaxed check mode
where we can test on the <release> tag before knowing the future date:
https://github.com/ximion/appstream/issues/398
2022-05-04 00:06:43 +02:00
Jehan
caf506af0c desktop: we might not be valid project_group GNOME?
appstreamcli returns an info message:

> I: org.gimp.GIMP:3: cid-missing-affiliation-gnome org.gimp.GIMP

Checking the message, it happens because the application ID does not
start with "org.gnome." (but "org.gimp.").

Double-checking AppStream docs, a note says:

> You should only identify with an umbrella project if you use all their
> infrastructure and policies, for instance string freezes dates,
> bugtracker and source control instance.

GNOME Foundation is indeed an umbrella for us for the infrastructure and
obviously part of its policies. But we are still independant and don't
depend on GNOME's freeze dates, or release dates, or design rules
(though we try to follow what makes sense), and so on. So I guess it
means we should not set this metadata tag? 🤷 Let's drop it.

See: https://freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-project_group
2022-05-03 22:53:12 +02:00