Commit graph

40 commits

Author SHA1 Message Date
Eberhard Beilharz
81c92537c9
Merge pull request #15944 from keymanapp/maint/linux/uploadppa
maint(linux): fix uploading to ppa 🏗️

It seems that since a recent DDOS Launchpad only accepts secure connections. This change uses the new keyman-ppa section (which has already been created on the TC build agents) to upload to the ppa.

Follows: #15928
2026-05-11 18:33:25 +02:00
Eberhard Beilharz
d0983ddea4
maint(linux): fix uploading to ppa
It seems that since a recent DDOS Launchpad only accepts secure
connections. This change uses the new `keyman-ppa` section (which has
already been created on the TC build agents) to upload to the ppa.

Build-bot: skip
Test-bot: skip
2026-05-11 18:05:39 +02:00
Eberhard Beilharz
1f02bc02f6
chore(linux): address code review comments
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
- make `verify_source.sh` a full builder script
- make options for `launchpad.sh` less confusing
- reference `--help` in `packaging.md`
- run new script as part of Ubuntu packaging workflow

Co-authored-by: Marc Durdin <marc@durdin.net>
2026-05-08 19:11:18 +02:00
Eberhard Beilharz
b0cc243e1d
chore(linux): remove --project parameter
The option to be able to specify a project for some linux scripts was
left over from older Keyman versions where Keyman was split over several
source packages. The current Keyman version builds multiple binary
Debian packages from just one source package, so this option is no longer
needed. This change gets rid of it.

Build-bot: skip
Test-bot: skip
2026-05-07 16:56:30 +02:00
Eberhard Beilharz
2c8f878f1d
chore(linux): add verification for source tarball and source package
This change adds a new GitHub action that verifies that Keyman can build
from the source package. Also check that source package used for Launchpad
and Debian/Ubuntu packaging doesn't produce lintian errors. Previously
lintian errors did go unnoticed because they didn't stop the build.

Also refactor `launchpad.sh` script to be a proper builder script, and add
some new parameters to allow skipping some steps in the script.

Build-bot: skip
Test-bot: skip
2026-05-06 19:03:12 +02:00
Eberhard Beilharz
9d2b17613c
chore(linux): add manual test for localization
This change adds a manual test that allows to see if all strings are
localizable. It also fixes the `update-template` target in the
`Makefile`.

Build-bot: skip
Test-bot: skip
2025-12-15 19:05:58 +01:00
Eberhard Beilharz
a666072679
docs(linux): address code review comments
Co-authored-by: Marc Durdin <marc@durdin.net>
2025-10-16 16:38:50 +02:00
Eberhard Beilharz
19c09e8bc3
docs(linux): update packaging documentation 2025-10-15 11:57:02 +02:00
Eberhard Beilharz
152a9122fe
docs(linux): improve documentation for installing km-config
Test-bot: skip
2025-10-15 11:57:01 +02:00
Marc Durdin
7390cc66aa maint(resources): move build trigger scripts into resources/teamcity
This also removes the need to have a test for `-b` parameter in
trigger-test-builds.sh, because the TC scripts calling this can already
factor that in.

Testing script trigger so only do builds of common to verify

Fixes: #14483
Test-bot: skip
Build-bot: skip:all build:common
2025-08-27 07:28:24 +02:00
Eberhard Beilharz
4d81589f48
maint(common): use unique names for Keyman version variables
Previously the builder scripts defined a readonly `VERSION` environment
variable for the Keyman version. That caused problems when another
(external) script tried to define a `VERSION` variable. We encountered
this problem when trying to move the TC build steps of a configuration
into a single script (#13399) when we tried to source `~/.nvm/nvm.sh`.

This change uses a Keyman specific prefix for the version variables and
renames `VERSION` → `KEYMAN_VERSION` etc. Unfortunately these variables
are used in a lot of places, so this turned out to be a bit of a yak
shave.

Test-bot: skip
2025-05-07 18:46:51 +02:00
Eberhard Beilharz
02a3a1a66c
chore(linux): cleanup code
Now that we no longer support Focal we can use more modern tools for
packaging.
2025-02-11 19:32:29 +01:00
Eberhard Beilharz
7edda3beca
chore(linux): address code review comments 2024-11-27 10:16:58 +01:00
Eberhard Beilharz
3c800ed65a
feat(linux): implement UI part of SimulateAltGr option 2024-06-21 18:24:02 +02:00
Marc Durdin
1b3be1540a chore(common): update linux documentation and control for meson 1.0 2024-05-24 14:49:27 +07:00
Eberhard Beilharz
ac8cd01efd
docs(linux): Update how to build binary package with docker
The previous command failed if there was more than one *.dsc file.
This change now uses the one with the highest version number.
2024-02-22 18:20:30 +01:00
Jeremy Bícha
7ea8d9648b chore(linux): Build with webkitgtk 4.1 instead of 4.0 2024-01-23 14:40:57 -05:00
Eberhard Beilharz
30250e3d8d
chore(linux): Enhance GHA API check
This change adds additional checks for the symbols file:

- if a line with a method name gets changed, the package version number
  in that line also needs to be updated
- for major API changes (methods renamed or removed) the API version
  numbers needs to be incremented
- the API version numbers in the .symbols file and in `CORE_API_VERSION.md`
  need to match
2023-10-26 18:04:43 +02:00
Eberhard Beilharz
4a3556ca89
chore(linux): Allow to collect coverage on TC 2023-10-18 16:06:28 +02:00
Eberhard Beilharz
798026632d
chore(linux): Update readme 2023-10-18 11:37:58 +02:00
Eberhard Beilharz
943370d682
chore(linux): Add --open option to open coverage reports in browser
This addresses code review comments.
2023-10-16 17:22:41 +02:00
Eberhard Beilharz
0ed8d35bb2
chore(linux): Add code coverage index page
This change adds an index page that can show the reports for the
child projects.

Also fix a path problem in the `keyman-system-service/build.sh` script.
2023-10-13 22:51:00 +02:00
Eberhard Beilharz
48e54b13b7
Merge pull request #9380 from keymanapp/chore/linux/jenkins
chore(linux): Remove package build on Jenkins for Keyman 17
2023-08-02 11:14:26 +02:00
Eberhard Beilharz
b8d0777800
chore(linux): Remove package build on Jenkins for Keyman 17 2023-08-01 15:03:47 +02:00
Eberhard Beilharz
93f05d6456
docs(core): Document how to build Core on Linux
Closes #8913.
2023-07-24 19:54:17 +02:00
Eberhard Beilharz
ff77b51ce6
docs(linux): Update documentation
- fix docker packaging command
- add option to run only unit tests to `tasks.json`
2023-07-17 18:40:30 +02:00
Eberhard Beilharz
764d1c47bb
docs(linux): Update readme
Closes #9065.
2023-07-05 15:13:18 +02:00
Eberhard Beilharz
82d86af91a
chore(linux): Adjust documentation 2023-06-07 10:18:58 +02:00
Eberhard Beilharz
879a34a180
feat(linux): Add package for keyman-system-service 2023-05-15 09:13:58 +02:00
Steven R. Loomis
aa1a702432 chore(core): icu fixes in comments and linux packaging 🙀
- version is 73.1 not 72.1
- add mention in linux build docs
- add libicu-dev dependency in debian control (but not runtime)

for #8495
2023-04-24 09:04:35 -05:00
Eberhard Beilharz
37b9c9bc2c
chore(linux): Add ibus-keyman as child project
Also address code review comments.
2023-02-16 12:39:38 +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
e9d5e28190
chore(linux): Merge remote-tracking branch 'origin/master' into chore/linux/5981_addBuild.sh 2023-02-14 09:22:16 +01:00
Eberhard Beilharz
1b059a9885
docs(linux): Update packaging documentation
- remove obsolete `packageName` variable
- add section on how to build with Docker, similar to how the
  package build is done on GHA
- updated "uploading to Debian" section
- some reformatting
2023-02-09 17:08:08 +01:00
Eberhard Beilharz
182acf21a4
chore(linux): Fix installation
Also update README.md.
2023-02-08 17:10:36 +01:00
Eberhard Beilharz
a3d1654364
chore(linux): Address code review comments 2023-02-06 20:25:56 +01:00
Eberhard Beilharz
3dbdef651d
chore(linux): Add build.sh to ibus-keyman 2023-02-01 08:49:26 +01:00
Eberhard Beilharz
eb076c08c8
chore(linux): Build with meson instead of autotools
This change introduces meson for building ibus-keyman instead of
autotools.

Closes #5981.
2023-01-30 16:32:38 +01:00
Eberhard Beilharz
ea059df541
chore(linux): Remove legacy projects
This change removes the KMFL legacy projects. They are still
available in the stable-16 branch if we need them.

Also removed some shellcheck warnings.
2023-01-26 11:51:13 +01:00
Eberhard Beilharz
5cf88878da docs(linux): Move Linux documentation
This change moves the Linux developer documentation to the new location
`docs/linux` as discussed in our planning meeting.
2022-12-05 18:07:10 +01:00