This change replaces the deprecated `g_type_class_add_private`
and `G_TYPE_INSTANCE_GET_PRIVATE` with `G_DEFINE_TYPE_WITH_PRIVATE`
and the generated method `km_service_get_instance_private`.
This change imports `os` instead of `os.path`. This is the
recommended way. It also reduces confusion whether to use
`os.path.whatever()` or just `path.whatever()`.
Previously uninstalling of a keyboard failed if the directory was
a symlink (e.g. with keyboards from unit tests). This change treats
symlinks differently.
Fixes Sentry issue KEYMAN-LINUX-32.
- **Groovy** is EOL
- llso is not yet capable of processing **Impish** packages because
of an too old version of reprepro (which currently can't be updated
because of an tool old version of the OS). Therefore Jenkins builds
for Impish fail, so this change removes Impish from Jenkins builds.
We continue to build for Impish on Launchpad.
Fixes#5488.
This updates Keyman Core, corresponding tests, and Keyman Engine for
Linux to support deletion of markers through an action, ensuring that
the action queue does not desynchronize with the context.
Introduce methods to get paths instead of hard-coding the values.
This also deprecates four methods (`user_keyman_dir`,
`user_keyman_font_dir`, `user_keyboard_dir`, and `get_isntall_area_path`).
This change also fixes a crash trying to install a package in the
shared area.
When installing in the shared area the user has to run
`km-package-install` with sudo so that he has sufficient permissions.
In that case we have to do extra work to restart ibus for the
logged-in user instead of root.
Fixes#5309.
For auto-generating help files we need `buildtools`, so we can't
exclude it from source package. Also, we now include our version
of `help2man`, so we no longer need it as a build dependency,
but instead directly depend on `perl`.
During a package build we don't have access to `scripts/reconf.sh`.
However, we don't really need it since we already ran it before.
This change adds a `--no-reconf` flag that allows skipping
`reconf.sh`.
help2man is an improved version of the tool available on Linux. It
has a few bugs fixed.
help2md is based on help2man and converts the python --help and
--version output to a markdown help page.
The changelogs should match what got uploaded (and accepted) to
Debian so that the changelog reflects the upload history to Debian.
(cherry picked from commit f91b52d3ea)