Commit graph

2601 commits

Author SHA1 Message Date
Sabine
e4e05a794f feat(linux):check buffer size moved 2024-06-21 09:40:52 +02:00
Sabine
404d888fde feat(linux): work on 2nd round of comments on PR 11816 2024-06-20 17:44:21 +02:00
Sabine
f22088c2d9 Merge branch 'feat/linux/mcompile-rework_deadkey' into feat/linux/mcompile-rework_mc_import_rules 2024-06-20 09:36:08 +02:00
Eberhard Beilharz
0cf24fddc2
Merge pull request #11789 from keymanapp/feat/linux/9396_RecreateMissingFiles
feat(linux): re-create missing files at run-time
2024-06-19 16:35:52 +02:00
Sabine
e0bd714f5f feat(linux): edit nit picks 2024-06-19 15:33:17 +02:00
Sabine
ade07bb298 feat(linux): move CODE__SIZE and #include <../../../../common/include/kmx_file.h> instead of double #include "kmx_file.h" 2024-06-19 12:18:54 +02:00
Sabine
d2f031e9bc feat(linux): function ensureValidInputForKeyboardTranslation instead of 2 comparisons at several places 2024-06-19 08:49:09 +02:00
Sabine
80390b6b61 feat(linux): start rework mc_import_rules 2024-06-18 11:10:38 +02:00
Sabine
f07cb3a12e feat(linux): change variable names 2024-06-18 10:03:28 +02:00
Sabine
801baf55d0 feat(linux): remove comments 2024-06-18 09:34:45 +02:00
Sabine
f724b4e79e feat(linux): layout changes only 2024-06-18 09:26:50 +02:00
Eberhard Beilharz
2ebb0bd554
Merge pull request #11775 from keymanapp/fix/linux/restartibus
fix(linux): restart ibus after manual integration test run
2024-06-17 17:41:36 +02:00
Sabine
fa192039b5 feat(linux): rework deadkey.cpp/.h format document 2024-06-17 17:25:03 +02:00
Sabine
4cf80439f0 feat(linux): rework deadkey.cpp/.h 2024-06-17 17:21:56 +02:00
Eberhard Beilharz
64515b025b
feat(linux): re-create missing files at run-time
This changes re-creates the `<package>.bmp.png` as well as the
`<package>.json` files if they are missing when `km-config` starts.

- `<package.bmp.png` gets created from a `.bmp` or `.ico` file included
in the package, similar to what happens when installing the keyboard.
- `<package>.json` gets created from downloaded metadata, similar to
the installation.

If the files are missing or we can't write to the directory, e.g. if it's
the shared area, we skip the re-creation.

Fixes: #9396
2024-06-14 18:11:11 +02:00
Eberhard Beilharz
a5b9321fde
refactor(linux): make method private and change variable names 2024-06-14 15:58:21 +02:00
Eberhard Beilharz
1e67022a44
change(linux): restart ibus only when manually running tests
If we try to restart ibus when we run the tests as part of a build we
run into a timeout in the test teardown.
2024-06-14 15:37:43 +02:00
Eberhard Beilharz
407cfa8f33
chore(linux): address code review comments
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-06-14 15:09:13 +02:00
Sabine
724e5b6eaf feat(linux): rename symbols more 2024-06-14 14:49:34 +02:00
Eberhard Beilharz
13700e4a9f
Merge pull request #11671 from keymanapp/chore/linux/cherry-pick/changelog
chore(linux): Update debian changelog 🍒
2024-06-14 08:32:52 +02:00
Eberhard Beilharz
b93c459515
fix(linux): restart ibus after manual integration test run
Previously keyboard input was no longer input after manually running
the integration tests. This change fixes this by restarting ibus after
the tests. However, we only want to do that if the ibus instance we
started for the tests got killed. The cleanup script might get called
multiple times, so we need this check.
2024-06-13 17:50:41 +02:00
Sabine
39c25c4cf0 feat(linux): renaming symbols: mostly capital-non-capital at beginning of symbol name 2024-06-12 10:20:30 +02:00
Marc Durdin
577986bb50
Merge pull request #11523 from keymanapp/chore/common/8399-cleanup-meson-warnings
chore(common): cleanup meson deprecations and warnings
2024-06-08 10:46:41 +10:00
Marc Durdin
60303791ac
Merge pull request #11728 from keymanapp/chore/merge-master-into-linux-mcompile
chore: merge master into linux-mcompile 🐘
2024-06-07 19:02:11 +10:00
Eberhard Beilharz
d52de2d878
docs(linux): Update description of deb-packaging.sh 2024-06-04 16:38:11 +02:00
Eberhard Beilharz
e2147daac8
chore(linux): Update debian changelog
(cherry picked from commit e96becc26d)
2024-06-03 21:58:30 +02:00
Marc Durdin
a385d4806d
Merge branch 'epic/linux-mcompile' into chore/merge-master-into-linux-mcompile 2024-05-25 05:51:13 +07:00
Marc Durdin
1b3be1540a chore(common): update linux documentation and control for meson 1.0 2024-05-24 14:49:27 +07:00
Marc Durdin
900f248558 chore(common): cleanup meson deprecations and warnings
Most warnings have been cleaned up:

* min meson version is now 1.0
* additional parameters such as check, recursive added
* uses now global_source_root() instead of source_root()
* catting files on Windows wasn't actually working -- used in unit
  tests. This is because meson passes paths with forward slashes to
  cmd.exe `type` command, which doesn't understand them. This is bad,
  because we were running effectively null tests for the affected tests.
  Fortunately, the same tests were configured correctly on macOS and
  Linux, and were all passing, so no serious damage.

There is one significant warning left:

`WARNING: Project targets '>=1.0' but uses feature deprecated since
'0.64.0': copy arg in configure_file. Use fs.copyfile instead`

Refer to mesonbuild/meson#12792. I have opened a PR against that to
undeprecate `copy` kwarg in a future version of meson.

Fixes: #8399
2024-05-24 08:46:52 +07:00
Eberhard Beilharz
81957750aa
Merge pull request #10637 from keymanapp/chore/linux/10626_apichecks
chore(linux): Move API verification to separate action
2024-05-21 19:03:36 +02:00
Darcy Wong
15c1fddae8 chore(common): Clear whatsnew help files
Clear whatsnew.md files for beginning of 18.0 alpha development
2024-05-17 09:32:27 +07:00
Steven R. Loomis
a8776afac2 chore(linux): yet more updates for libkeymancore version 2024-05-08 14:51:43 -05:00
Steven R. Loomis
165bf1848f
Update linux/debian/libkeymancore2.symbols
Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2024-05-08 09:08:26 -05:00
Steven R. Loomis
1fe76bcd26
Merge branch 'master' into chore/core/11033-points-not-units 2024-05-07 09:26:07 -05:00
Steven R. Loomis
5e8b4a1a17 chre(linux): bump libkeymancore version
- also minor typo in docs
2024-05-07 08:55:48 -05:00
Steven R. Loomis
fbd1c0c841 chore(core): km_core_cp -> km_core_cu
- fix comment
- fix API version

Fixes: #11033

Co-authored-by: Eberhard Beilharz <ermshiperete@users.noreply.github.com>
2024-05-06 09:54:07 -05:00
Eberhard Beilharz
40aa8b8646
Merge pull request #11356 from keymanapp/chore/linux/fixtest
chore(linux): Fix typo
2024-05-06 11:34:35 +02:00
Eberhard Beilharz
7478db8b57
chore(linux): Fix typo
This suddenly started failing. I guess there was a deprecated
`assertEquals` in older Python libraries, but with the latest version in
Ubuntu 24.04 Noble this disappeared. Anyway, with this change we use
the same assert method as in the other test files.
2024-05-03 17:39:14 +02:00
Steven R. Loomis
6706ae0957 chore(core): km_core_cp -> km_core_cu
- km_core_cp represents a 16 bit code unit, not a code point.

Fixes: #11033
2024-05-02 17:39:15 -05:00
Marc Durdin
cd8121ef65 chore(common): builder scripts now use /resources/build/builder.inc.sh
Note: there is a bit of potential confusion about the difference between
/resources/builder.inc.sh (the full implementation for builder scripts),
and /resources/build/builder.inc.sh (the source script that builder
scripts should always use).

This allows us to make assumptions that will always be true for builder
scripts that may not be true for other scripts, such as setting base
folder.
2024-05-02 15:54:31 +07:00
Marc Durdin
0f390d47cc chore(common): maintenance on build scripts - cd
Fixes #11324.

* Always `cd "$THIS_SCRIPT_PATH"`
* Remove unnecessary `cd` from all build.sh
* Remove unnecessary `set -eu` from all build.sh (and `# set -x`)
* Replace old build-utils.sh incantation in a few build.sh scripts
2024-05-02 15:54:29 +07:00
Marc Durdin
f119682cf0
Merge branch 'master' into chore/a18s1-merge-beta-into-master 2024-05-02 14:48:58 +10:00
Marc Durdin
38a0359361
Merge pull request #11295 from keymanapp/fix/linux/icon
fix(linux): Fix icon for .kmp files
2024-05-01 14:21:43 +10:00
Eberhard Beilharz
d81cff200b
Merge pull request #11292 from keymanapp/fix/linux/11225_environment-detection
fix(linux): Improve detection of Gnome environment
2024-04-30 15:52:41 +02:00
Sabine
977007be4d feat(linux): mcompile add line 2024-04-29 09:40:16 +02:00
Eberhard Beilharz
888ec56d5a
chore(linux): Prepare for stable release
- Adjust branch name
- Update Debian standards version
- Update dependency name (`pkg-config` is deprecated and replaced by
  `pkgconf`)
2024-04-25 09:29:35 +02:00
Eberhard Beilharz
e9398133fc
chore(linux): Install python3-dev
On a new machine we need to install python3-dev so that we can access
`Python.h`. It shouldn't be in `debian/control`, so we put in our
script where we check the requirements.
2024-04-24 18:38:40 +02:00
Eberhard Beilharz
627703734a
fix(linux): Fix icon for .kmp files
It seems some Ubuntu versions ignore the `icon` field and only use
`generic-icon`, so this change adds that field. This will fix displaying
the icon on newer Ubuntu versions. And since we keep the `icon` field
it should still work everywhere else.

Fixes #11144.
2024-04-24 18:00:41 +02:00
Eberhard Beilharz
2044b188f8
fix(linux): Improve detection of Gnome environment
This change improves the way we detect if we're running a Gnome based
UI that needs it's keyboards installed under
`org.gnome.desktop.input-sources`. We use the environment variable
`XDG_CURRENT_DESKTOP` and check if it contains the word `gnome`.
Additionally this change renames `is_gnome_shell()` to
`is_gnome_desktop()`.

Fixes #11225.
2024-04-23 15:16:03 +02:00
Eberhard Beilharz
414a120bb2
chore(linux): Move API verification to separate action
The new `api-verification` workflow runs after `deb-packaging`.

Implements #10626.
2024-04-23 15:10:36 +02:00