https://github.com/voltangle/kumitateru
Build system for Garmin ConnectIQ. Simple, fast, powerful!
https://github.com/voltangle/kumitateru
connect-iq monkey-c rust
Last synced: 3 months ago
JSON representation
Build system for Garmin ConnectIQ. Simple, fast, powerful!
- Host: GitHub
- URL: https://github.com/voltangle/kumitateru
- Owner: voltangle
- License: gpl-3.0
- Archived: true
- Created: 2021-05-11T06:42:33.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2022-01-03T09:24:18.000Z (over 3 years ago)
- Last Synced: 2025-02-11T16:40:50.009Z (3 months ago)
- Topics: connect-iq, monkey-c, rust
- Language: Rust
- Homepage:
- Size: 315 KB
- Stars: 10
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-garmin - kumitateru
- awesome-garmin - kumitateru - Build system for Garmin ConnectIQ. Simple, fast, powerful! (2022-01-03, archived) (Tools / Older resources)
README

# Kumitateru
Kumitateru is a build system for Garmin ConnectIQ, written in Rust.It is ALPHA software, be aware
## Project structure
The basic directory structure looks like this:
```
├── id_rsa_garmin.der
├── kumitateru
├── package.toml
├── resources
│ ├── drawables
│ │ ├── drawables.xml
│ │ └── launcher_icon.png
│ ├── fonts
│ │ └── fenix5
│ ├── layouts
│ ├── menus
│ ├── settings
│ └── strings
│ └── main
│ └── strings.xml
└── src
```## Build config
Build config sits in the root of the project, and named `package.toml`. It looks like this:```toml
[package]
name_res = "@Strings.AppName"
icon_resource = "@Drawables.LauncherIcon"
main_class = "MyApp"
# Currently here for the future, exactly for supporting libraries(barrels) as projects, not only apps.
package_type = "app"
app_type = "watch-app"
min_sdk = "1.2.0"
# This property is for setting the SDK, which will be used to build the app
target_sdk = "4.0.4"[package_meta]
name = "MyApp"
id = "app-id"
version = "1.0.0"
devices = ["fenix6xpro"]
permissions = ["Background"]
languages = ["eng"][build]
signing_key = "id_garmin_sign.der"
# This will be, again, for future. Will be used for code analysis, like possible places of crash, bad design, and much more
code_analysis_on_build = false
type_check_level = 0 # Type checking, which was introduced in CIQ 4.0.0. Levels: 0: disable, 1: gradual, 2: informative, 3: strict
compiler_args = "" # If you want some custom parameters, place them here[dependencies]
"simple-barrel" = ["0.1.0", "simple-barrel-0.1.0.barrel"] # The second entry is a path to the barrel inside of dependencies folder.
```## Using the build system
Basic build command is `./kumitateru build`, which compiles the app in .iq format. To build
for a specific device, run `./kumitateru build --target `. To build for all devices
in .prg, you run `./kumitateru build --target all`.