The test suite had a dependency on the deprecated `pkg-config`. This change
replaces this with `pkgconf`. This fixes a lintian warning.
Cherry-pick-of: #15734
Test-bot: skip
This change allows to collect data for a diagnostic report. This can be
done either from the command line through the new `km-diag-report` tool,
or in `km-config` from the new `Support` tab that allows to generate the
report and then copy it to the clipboard or save as a file.
The diagnostic report contains installed browsers and their versions and
installation methods as well as the default browser. It checks for
browsers installed through apt (Ubuntu/Debian), snap, and flatpak.
The change also has an implementation for pacman (Arch Linux) and
dnf/yum (Fedora), although these have not been tested.
Fixes: #7784
This change updates the copyright year in the `debian/copyright` file
as well as the `Standards-Version` to 4.7.3 in `debian/control`.
Cherry-pick-of: #15558
Test-bot: skip
This change adds tests that execute km-package-install,
km-package-list-installed, and km-package-uninstall and verifies the
results. We have two sets of tests, for both gnome-shell and
ibus-proper environments.
Test-bot: skip
When using a different DBus implementation `dbus-launch` might not exist,
but instantiating a `SessionBus` object might start a session dbus if
it's not already running. This change also replaces the `dbus-x11`
dependency with `default-dbus-session-bus | dbus-session-bus` and changes
the way we detect if dbus is already running.
Also remove `DBUS_SESSION_BUS_ADDRESS` from `sudo gsettings` call. It
turns out we don't need this since we execute the `gsettings` command
in the context of the user anyway which connects to the user's session
dbus.
Fixes: #14888
It looks like we no longer need these lintian overrides:
- `package-contains-documentation-outside-usr-share-doc` got resolved
by excluding these directories from our source package
- the other one was a false positive that looks like it got fixed in
Debian
`onboard-keyman` isn't available on Debian/Ubuntu and doesn't work
properly with Wayland. This change removes the `onboard-keyman`
recommends which used to cause `onboard-keyman` to be installed
automatically together with `keyman`. The user can still manually install
`onboard-keyman`.
Fixes: #14769Fixes: #5214
Build-bot: skip
Test-bot: skip
Until Ubuntu 24.10/Debian 12 `python3-pkg-resources` got installed as a
dependency of `python3-numpy`. With numpy version 2 (Ubuntu >= 25.04/
Debian >= 13) this is no longer the case, so we have to explicitly add
it as a runtime dependency. It might be a bug that this dependency
doesn't get automatically added, but this workaround will do.
Fixes: #14349
Fixes: KEYMAN-LINUX-82
The recommended replacement for `setup.py build` is to use the `build`
module, so we have to add this as additional build dependency.
This change also removes the `devdist` target from the makefile - it
isn't referenced in any script, so I think we can do without.
Unfortunately the `python3-build` package available on Ubuntu 22.04 Jammy
is buggy and looks for `/usr/local/bin/python` so we can't use that.
Instead we continue to use `setup.py` for building on Jammy.
Turns out that Keyman 18 already compiles with ICU 76, so the only thing
left to do is mark the Debian bug as being closed by this change.
Fixes: #12920
This change removes lines that sneaked in through a previous merge that
caused conflicts. The `changelog` on `master` should be idential to the
one in the stable branch.