Commit graph

328 commits

Author SHA1 Message Date
Eberhard Beilharz
1823e1febb
feat(linux): Address code review comments 2023-05-23 11:48:58 +02:00
Eberhard Beilharz
ab25157364
feat(linux): Refactor to benefit from C++ RAII
Also apply changes from code review comments.
2023-05-22 19:51:45 +02:00
Eberhard Beilharz
a820d34c08
chore(linux): Fix meson warnings 2023-05-22 18:10:54 +02:00
Eberhard Beilharz
16daabd0f4
feat(linux): Make cleanup more consistent
Follow-up of code review comments.

# Keyman Conventional Commit suggestions:
# - Consider appending the text ". Fixes #4273" to your commit message.
2023-05-17 10:46:20 +02:00
Eberhard Beilharz
f6e5e468c4
chore(linux): Rename test-helper.sh to test-helper.inc.sh
Follow-up of code review.
2023-05-16 10:59:16 +02:00
Eberhard Beilharz
c2e6fe23bd
feat(linux): Client side 2023-05-15 09:13:58 +02:00
Eberhard Beilharz
a8e0b3666e
chore(linux): Merge remote-tracking branch 'origin/master' into chore/linux/config-build.sh 2023-05-10 18:09:11 +02:00
Eberhard Beilharz
efb48e5568
chore(linux): Add build.sh for keyman-config
Also remove second output from build.sh which isn't supported and
doesn't work. `ibus-keyman-tests` will be built when running
`build.sh test`.
2023-05-09 11:59:21 +02:00
Eberhard Beilharz
24d808a210
chore(linux): Address code review comments
This is a follow-up of #8510.
2023-05-09 11:03:55 +02:00
Eberhard Beilharz
215e8d5eb8
Update linux/ibus-keyman/tests/scripts/test-helper.sh
Co-authored-by: Steven R. Loomis <srl295@gmail.com>
2023-05-08 09:53:45 +02:00
Eberhard Beilharz
f150f0cd68
Update linux/ibus-keyman/tests/scripts/test-helper.sh
Co-authored-by: Steven R. Loomis <srl295@gmail.com>
2023-05-08 09:53:36 +02:00
Eberhard Beilharz
a7630a0265
fix(linux): Fix linux tests 2023-05-05 10:55:45 +02:00
Eberhard Beilharz
fe4e968a49
chore(linux): Fix build script
Previously we didn't correctly change directories which could lead
to the error "cd: ../build/x86_64/release: No such file or directory".
2023-05-03 11:36:15 +02:00
Marc Durdin
c5d79a9fb4
Merge pull request #7330 from keymanapp/feature-kmcompx
epic: kmcompx - kmcmpdll cross-platform compiler 🚑
2023-04-10 07:34:04 +10:00
Eberhard Beilharz
38b2254d39
chore(linux): Improve robustness of test cleanup
Closes #8517.
2023-03-28 19:51:17 +02:00
Marc Durdin
c18ef54029 refactor(common): move core baseline tests into common
Decided to use the name `baseline` for this set of tests. They can be
used by any project in the repo now. Tests will be treated as shared,
and not modified (except in the case of a buggy test).

* Moves .kmn files, add `&NAME` line (don't use meson templating for
  these files)
* Generates reference .kmx files using kmcomp for use as a baseline with
  kmcmplib (kmc) tests, and for linux tests
* Updates references in core, kmcmplib, and linux builds
* Renames all the .kmn / .kmx to use a standardized, clean name format
  (this was needed for building packages in the core tests)
2023-03-28 05:20:45 +07:00
Eberhard Beilharz
40e6c6edaa
Update linux/ibus-keyman/build.sh
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-03-14 16:14:23 +01:00
Eberhard Beilharz
c33635b2f4
chore(linux): Use dependency on core in ibus-keyman/build.sh 2023-03-13 09:50:14 +01:00
Eberhard Beilharz
d0ec73825a
Merge pull request #8376 from keymanapp/chore/core/obsoleteOption
chore(core): Remove obsolete `--target-path` option
2023-03-09 16:27:23 +01:00
Marc Durdin
00017350d3 chore(common): clean up --debug usage in build scripts
Fixes #8373.

Note that the core functionality requested in #8373 is already in place;
this commit just does some cleanup to make this easier to maintain in
the future:

* Uses `builder_is_debug_build` function to test for debug build
  (instead of `builder_has_option --debug`, which would also work but
  using the other function avoids typo issues with the option name).

* Renames `$_builder_debug` to `$_builder_debug_internal` to reduce
  naming confusion

* Documents `$builder_debug`, `builder_is_debug_build`, and clarifies
  usage of `--debug` option.

* Logs command line for dep builds (we could hide this in the future,
  but it certainly doesn't hurt for now!)
2023-03-08 05:40:40 +07:00
Eberhard Beilharz
794557f7d5
chore(core): Remove obsolete --target-path option
Linux package builds no longer require a different target path, so
we can remove the `--target-path` parameter.
2023-03-07 13:38:31 +01:00
Eberhard Beilharz
c20531b08a
chore(linux): Log error 2023-03-06 16:00:43 +01:00
Eberhard Beilharz
a26caa4d18
feat(linux): Add DBus method SendText
This new DBus method allows an OSK to output a junk of text.
2023-03-06 16:00:43 +01:00
Eberhard Beilharz
02b36a8d8d
Merge pull request #8294 from keymanapp/fix/linux/debian
fix(linux): Fix debian postinst script
2023-02-28 15:02:30 +01:00
Marc Durdin
b809a60936
Merge pull request #7054 from keymanapp/feature-ldml
epic: LDML keyboard support 🙀
2023-02-28 20:38:00 +11:00
Eberhard Beilharz
67bd5fb399
fix(linux): Fix ibus-keyman/build.sh
Paths that describe outputs are supposed to be relative to root,
not absolute. Also, it turns out we don't use the `--output`
parameter, so this change removes it.
2023-02-27 18:42:38 +01:00
Eberhard Beilharz
ec0048955b
chore(linux): Improve detecting presence of test files
With recent work the location where we generate the test files
changed, but the test setup script didn't completely work.
2023-02-24 09:00:40 +01:00
Marc Durdin
a0fa39232d chore(linux): use core kmx tests from source rather than build 2023-02-24 05:57:15 +07:00
Eberhard Beilharz
efe94598ac
fix(linux): Fix setting libexecdir
Follow-up of the move to meson.
2023-02-23 17:43:09 +01:00
Eberhard Beilharz
a507ac6cab
chore(core): Update path to test library 2023-02-23 16:22:10 +01:00
Marc Durdin
9eb472579c chore: Merge branch 'feature-ldml' into chore/merge-master-to-feature-ldml-A17S7-2 2023-02-23 08:05:31 +07:00
Marc Durdin
699b289899
Merge pull request #8289 from keymanapp/chore/dirname-to-builtin
chore: use builtin instead of dirname for perf
2023-02-23 08:42:29 +11:00
Marc Durdin
80689a794b
Merge pull request #8288 from keymanapp/chore/readlink-only-instead-of-greadlink
chore: remove greadlink from standard script prolog
2023-02-23 08:42:21 +11:00
Marc Durdin
ce864ea923 chore: update standard script prolog to use builtin instead of dirname 2023-02-22 11:04:15 +07:00
Marc Durdin
463c7ff907 chore: remove greadlink from standard script prolog 2023-02-22 10:43:06 +07:00
Marc Durdin
e645b8665f chore: Merge branch 'feature-ldml' into chore/A17S7-master-to-feature-ldml
* core/build.sh -- accept feature-ldml changes (remove call to get_builder_OS)
* developer/src/kmlmc/build.sh -- delete file
*	linux/debian/rules -- accept master changes, fixup call to core/build.sh
*	linux/ibus-keyman/tests/Makefile.am -- accept master changes, fixup call to core/build.sh
*	linux/scripts/build.sh -- accept master changes, fixup call to core/build.sh
*	linux/scripts/reconf.sh -- accept master changes
2023-02-22 08:00:08 +07:00
Eberhard Beilharz
4d3755770c
fix(linux): Collect consecutive backspaces
When using Wayland `im-wayland.so` (which is part of libgtk) gets
loaded into the client app instead of `im-ibus.so`. This means that
our ordered output doesn't work with Wayland.

This change works around a problem with keyboards that use multiple
consecutive backspace actions. Because method calls get processed
asynchronously some backspaces get lost. In clients that support
surrounding text we can count the consecutive backspaces and then
do one call to delete surrounding text with the appropriate number
of characters.

This can be tested with "Khmer Angkor" keyboard by typing `xEjmr`,
or with "Vedic Sanskrit Devanagari Phonetic (ITRANS)" keyboard by
typing `shrI`.

Part of #4273.
2023-02-20 18:47:51 +01:00
Eberhard Beilharz
2d97381fbf
Merge pull request #8113 from keymanapp/chore/linux/5981_refactorScripts
chore(linux): Refactor scripts and packaging 🏗️
2023-02-20 09:45:06 +01:00
Eberhard Beilharz
2e12021a74
Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2023-02-20 09:43:04 +01:00
Eberhard Beilharz
9179af611e
chore(linux): Remove all action
Instead this can be done with internal dependencies (except
running `clean` first). Running `./build.sh clean build` will
achieve the same.
2023-02-15 17:39:25 +01:00
Eberhard Beilharz
89c59c6940
chore(linux): Set correct flags on debug builds
This adds setting the appropriate variables when doing a debug build.
This eliminates the need to have those in the documentation.
2023-02-15 17:16:22 +01:00
Eberhard Beilharz
f286cd1f07
chore(linux): Remove po files from ibus-keyman
We currently don't have any localizable strings in ibus-keyman,
so we don't need the po directory.
2023-02-14 09:52:55 +01:00
Eberhard Beilharz
958b7db068
chore(linux): Remove autotools related files 2023-02-14 09:51:46 +01:00
Eberhard Beilharz
95bcb8b5a9
fix(linux): Skip failing Wayland tests
This change skips the four failing Wayland tests so that the builds
pass on CI. They will have to be re-enabled once Wayland support
is implemented (#4273).

Also remove `run-tests.sh` which got moved to `scripts/run-tests.sh`
but I forgot to delete the old one when I did the move.
2023-02-14 09:42:13 +01:00
Eberhard Beilharz
61ba40a212
chore(linux): Refactor scripts and packaging
This change modifies the scripts and the Debian packaging to use
the meson build / build.sh script for building instead of autotools.
2023-02-14 09:42:13 +01:00
Steven R. Loomis
db272e08e7 Merge remote-tracking branch 'upstream/master' into chore/merge-master-20230210-epic-ldml 2023-02-10 11:01:27 -06:00
Eberhard Beilharz
182acf21a4
chore(linux): Fix installation
Also update README.md.
2023-02-08 17:10:36 +01:00
Eberhard Beilharz
0fad0ee1c5
chore(linux): Merge remote-tracking branch 'origin/master' into chore/linux/5981_addBuild.sh 2023-02-08 08:31:42 +01:00
Eberhard Beilharz
c02741a535
chore(linux): Add output descriptions for ibus-keyman
Also since core doesn't use the new build.sh syntax the dependency
on core doesn't work yet.
2023-02-07 18:31:06 +01:00
Darcy Wong
7a7ba2f70c chore(linux): Set test-helper script executable 2023-02-07 10:38:08 +07:00