Commit Graph

48 Commits

Author SHA1 Message Date
a550d64789
Merge branch 'main' into wb/wadokei-merge 2024-12-05 16:41:43 -08:00
BloodStainedCrow
57e625d4dc
Unify docker devcontainer with dockerfile used for CI (#1587)
* Only use one Dockerfile and build.sh script for both docker and devcontainer
* Remove all now unneccessary tasks and scripts
* Update to clang-format-14
* Move devcontainer.json into root folder
* Fix conditional statements in Dockerfile
* Move .devcontainer/README into doc/usingDevcontainers
* Remove obsolete VSCode Task
* Change standard compiler path to the correct compiler
* Set GDB Path for debugging
* Hide broken buttons from CMake Extension
* Refactor .devcontainer
* Remove unneccessary postBuildCommand
* Add devcontainer dependencies to all docker images
* Add Devcontainer Debug launch config
* Add an additional c_cpp_properties config as a fallback for devcontainer
* Remove obsolete Docker Argument
* Fix wrong C/Cpp versions
* Fix silent fail of gdb, add libncurses5
2024-03-23 10:45:45 +01:00
5510bfe499
Add fonts, remove Digital 2024-01-16 20:33:04 -08:00
cf4f54dc87
smell this 2024-01-16 11:06:56 -08:00
d8c3624f6f
Add location, timezone, and long-press switching 2024-01-09 09:19:07 -08:00
Ben Merritt
9b8eb75f34
docker: Install Node.js in a non-deprecated way (#1849) 2023-11-12 14:09:41 +01:00
Reinhold Gschweicher
77546c9fe2 lv_img_conv_py: minimal python port of node module
Create a minimal python port of the node.js module `lv_img_conv`. Only
the currently in use color formats `CF_INDEXED_1_BIT` and
`CF_TRUE_COLOR_ALPHA` are implemented.

Output only as binary with format `ARGB8565_RBSWAP`.

This is enough to create the `resources-1.13.0.zip`.

Python3 implements "propper" "banker's rounding" by rounding to the nearest
even number. Javascript rounds to the nearest integer.
To have the same output as the original JavaScript implementation add a custom
rounding function, which does "school" rounding (to the nearest integer)

Update CMake file in `resources` folder to call `lv_img_conf.py` instead of
node module.

For docker-files install `python3-pil` package for `lv_img_conv.py` script.
And remove the `lv_img_conv` node installation.

---

gen_img: special handling for python lv_img_conv script

Not needed on Linux systems, as the shebang of the python script is read
and used. But just to be sure use the python interpreter found by CMake.
Also helps if tried to run on Windows host.

---

doc: buildAndProgram: remove node script lv_img_conv mention

Remove node script `lv_img_conv` mention and replace it for
runtime-depency `python3-pil` of python script `lv_img_conv.py`.
2023-10-26 22:45:01 +02:00
Riku Isokoski
bd8e6d8c15 docker: Make build.sh more portable 2023-01-07 18:56:15 +02:00
Riku Isokoski
419d8413c6 Revert "enable CMake unity build in build.sh"
This reverts commit 35654fbd98.
2022-12-31 12:41:45 +01:00
Riku Isokoski
2b62eaf65f Revert "Update docker/build.sh"
This reverts commit 7103f9d806.
2022-12-31 12:41:45 +01:00
Dominik Nussbaumer
7103f9d806 Update docker/build.sh
Co-authored-by: NeroBurner <pyro4hell@gmail.com>
2022-12-27 12:17:46 +01:00
tnixeu
35654fbd98 enable CMake unity build in build.sh 2022-12-27 12:17:46 +01:00
cybuzuma
081cc60aa5
fixing build.sh not returning error in build (#1460)
Return the build status as return code from the `main` helper function.
In the process convert the handling if the file was sourced or directly
executed into an explicit if/else statement to make the intent clearer.

In case of an build error the error is now reported at the build step,
where the error happened.

Fixes: https://github.com/InfiniTimeOrg/InfiniTime/issues/1292
2022-12-13 08:18:53 +01:00
Jean-François Milants
6ed8e983e9 Remove CMake targets and corresponding CLI arguments that are specific to the debugging environment (USE_JLINK, USE_OPENOCD and USE_GDB_CLIENT). 2022-09-17 21:25:54 +02:00
Jean-François Milants
e2a3d9f0c7 Small improvement in generate-fonts.py following code review.
Add lv_img_conf in Docker image to build resources at build time.
2022-09-11 14:44:36 +02:00
Riku Isokoski
c2b6a8de3e
Fix markdown format with autoformatter (#1284) 2022-08-21 14:50:09 +03:00
Finlay Davidson
4482078d84 Downgrade GNU Arm Toolchain to 10.3-2021.10
This is because of this bug:
https://community.arm.com/support-forums/f/compilers-and-libraries-forum/52623/gcc-11-2-arm-none-eabi-internal-compiler-error-illegal-instruction
It is causing some of the GitHub Actions builds to fail.
2022-07-08 17:18:21 +02:00
Finlay Davidson
94cd2ba563 Update arm gcc toolchain to 11.2-2022.02
Updates the buildAndProgram doc and the docker
image, which means GitHub Actions will also use
the new toolchain.
2022-06-11 22:59:38 +03:00
Jean-François Milants
831f93cd92 The main build workflow for GitHub Actions now uses the infinitime-build docker image to build the firmware. This allows to avoid the duplication of the build logic in Docker and Github workflow format.
The Dockerfile has been slightly adapted (remove the USER instructions). Docker images are now published in DockerHub (jf002/infinitime-build).
2022-05-26 11:35:25 +02:00
Yehoshua Pesach Wallach
c9f23c11b3 update docker to 22, and use python3 by default 2022-05-10 22:20:02 +02:00
Yehoshua Pesach Wallach
f56788465d docker: bump ubuntu to 20.04 and node to 18 2022-05-10 22:20:02 +02:00
Yehoshua Pesach Wallach
95a970a75d fontgen: install npm, lv_font_conv in Dockerfile 2022-05-10 22:20:02 +02:00
carlosperate
c4b8ff314a Update git URLS, MCUboot is now independent w/ different GitHub org. 2021-10-17 00:31:21 +01:00
Stoian Minaiev
d82a1c5225 docker: add git system package to image 2021-05-14 01:07:32 +03:00
Peter
f8c502e447
Gitpod workspace path update due to repo rename
Gitpod workspace path is based on repo name... it was `/workspace/Pinetime`, 
but after the repo rename it's now `/workspace/InfiniTime`. 
Also added second pip call as it's in the main dockerfile.
2021-04-18 17:23:28 +10:00
Jean-François Milants
9f67e6f652 Merge branch 'develop' into recovery-firmware
# Conflicts:
#	src/CMakeLists.txt
#	src/displayapp/DisplayApp.h
#	src/systemtask/SystemTask.cpp
#	src/systemtask/SystemTask.h
2021-03-07 08:44:14 +01:00
Jean-François Milants
5fdfb2112e Fix merge conflict. 2021-02-14 14:19:30 +01:00
Jean-François Milants
740b3d7b58 Add new cmake option to disable the generation of DFU file (which needs adafruit-nrfutil on the build machine) : BUILD_DFU (disabled by default, enabled in docker build). 2021-02-01 21:07:53 +01:00
Jean-François Milants
25f35c7d0e Generate pinetime-recovery : a light version of InfiniTime design to be used as a recovery firmware : it only provides basic UI and BLE connectivity for OTA.
This new FW is build on the same codebasse than the actual InfiniTime. Only the display task is different (this allows to remove lvgl from the recovery fw, which is very heavy).

CMake builds and docker have been modified accordingly.
Note than the fw is converted into an image and then into a DFU in the cmake build (previously, it was only done in the
2021-01-26 20:31:45 +01:00
petter
a028c39ddd check for cmake build-success before running post-build.sh 2021-01-23 11:11:14 +01:00
Joe Eaves
cf187d342c Use root for package installation
And forget the chown.
sudo can be used if the dependencies ever need to be updated "live"
2021-01-05 00:34:15 +00:00
Joe Eaves
0880d53a94 Custom Dockerfile for gitpod.io
Little configuration to give https://gitpod.io users an environment with the SDKs pre-installed
2021-01-05 00:34:15 +00:00
Joe Eaves
5cdd3f6e6f Improve the post_build again, again? 2020-12-22 12:40:21 +00:00
Joe Eaves
6c6ffc61ee Make the post_build output a little cleaner 2020-12-22 11:39:21 +00:00
Joe Eaves
1f243aeedb Make TOOLS_DIR if needed
Added some extra dir names to gitignore
2020-12-22 11:38:57 +00:00
Joe Eaves
60ef9b54fb Integrate improvements from #137
Also fixed a bug with empty quoted strings
2020-12-21 03:10:42 +00:00
Joe Eaves
a7df0a0279 Unify the Dockerfiles by fleshing out build.sh
Script is written to handle it's own dependencies so it can be used within Docker or on the host system
2020-12-21 01:42:41 +00:00
Peter Feerick
3eab95ea4e Add cleanup and make download stages more readable 2020-12-12 13:02:55 +10:00
Peter Feerick
1aaa906a78 Expand update block for readability and add cleanup 2020-12-12 12:58:14 +10:00
Peter Feerick
8a6b828ab7 Move user block to reduce layer change breakage + tweaks 2020-12-12 12:56:21 +10:00
Peter Feerick
d50912a837 Reference specific architectures 2020-12-12 12:33:38 +10:00
Peter Feerick
8f69a45fd9 Rename dockerfile folders to correct architectures 2020-11-20 10:07:17 +10:00
JF
8d2e56bf00 Update to the latest version of the bootloader (https://github.com/lupyuen/pinetime-rust-mynewt/releases/tag/v5.0.4) 2020-09-20 11:29:56 +02:00
JF
d757344f1b Docker post build : generate post build script with versions from the CMake project. 2020-09-08 22:15:10 +02:00
JF
e6a1aff6ce Docker build : split build.sh into 2 scripts : build.sh that always exists and post_build.sh that is generated by cmake build.sh 2020-08-20 09:38:10 +02:00
JF
f197a3fe88 All output files (bin, hex, image, dfu) contain the version of the project in their filename.
Update Docker build script accordingly.
Also fix permission issue with docker build (all files belonged to root).
2020-08-19 21:52:46 +02:00
JF
58811d76cf Add doc about Docker image. 2020-08-19 16:01:01 +02:00
JF
5ed7fbe126 Add docker file create docker image that builds the project on amd64 and arm64 arch. 2020-08-19 12:22:48 +02:00