Fork of github.com/InfiniTimeOrg/InfiniTime
Find a file
NeroBurner 6f2a661a36
docker: fix NRF_SDK download and subsequent build.sh (#2299)
The upstream NRF-SDK download url and zip archive filename changed,
which was fixed with https://github.com/InfiniTimeOrg/InfiniTime/pull/2270

But the archive contents stayed the same, with the "old" folder name.

After #2270 we have basically the same docker-container as before the PR,
but the `GetNrfSdk` function of the `build.sh` script is called again during
firmware build time as the expected foldername for the SDK isn't the same as
the zip filename:

```sh
[ ! -d "$TOOLS_DIR/$NRF_SDK_VER" ] && GetNrfSdk
```

Then during the build the `buils.sh` script tries to execute `GetNrfSdk` again,
which fails as the files already exist resulting in the following error:

```
replace /opt/nRF5_SDK_15.3.0_59ac345/components/802_15_4/api/HAL/hal_atomic.h? [y]es, [n]o, [A]ll, [N]one, [r]ename:  NULL
```

Fix this by reverting the `NRF_SDK_VER` to the folder name in the zip
archive and by some character replacement generate the download URL from
the above (the download is in lower-case without the `_` and `.`
characters).

Furthermore add safeguards to check after the `GetNrfSdk` call if the
expected folder is really created. Then we have an error early during
container image creation if the contents of the zip-archive are
unexpected.
2025-05-27 22:56:10 +02:00
.github fix: fix short ref not getting set in github builds 2025-05-21 20:18:23 +02:00
.idea/codeStyles Improved CLion configuration 2021-07-02 16:29:09 +02:00
.vscode Unify docker devcontainer with dockerfile used for CI (#1587) 2024-03-23 10:45:45 +01:00
bootloader README: Fix broken URLs 2024-02-25 13:17:19 +01:00
cmake-nRF5x 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
doc Fix nRF SDK download links (#2270) 2025-05-21 21:17:42 +01:00
docker docker: fix NRF_SDK download and subsequent build.sh (#2299) 2025-05-27 22:56:10 +02:00
hooks hook: Find correct clang-format version better 2024-01-12 14:42:53 +01:00
src Refactors watch faces. Replace lv_tick_get() with xTaskGetTickCount() 2025-05-23 17:46:14 +01:00
tests Update clang-{format,tidy} to 14 2023-01-04 17:15:33 +01:00
tools Allow mcuboot tool to use cbor2 additional to cbor 2023-06-04 19:46:37 +02:00
.clang-format clang-format: Always break template declarations 2023-02-16 09:13:58 +02:00
.clang-tidy Update clang-tidy configuration and fix some warnings (#1474) 2022-12-18 18:14:36 +01:00
.devcontainer.json Unify docker devcontainer with dockerfile used for CI (#1587) 2024-03-23 10:45:45 +01:00
.gitattributes Fix EOL related build issues on Windows (#2077) 2025-02-11 23:43:10 +00:00
.gitignore clangd: Add clangd cache directory to gitignore (#1763) 2023-05-27 20:24:17 +02:00
.gitmodules Remove unused submodule QCBOR (#2138) 2024-10-09 20:26:08 +02:00
.gitpod.yml Custom Dockerfile for gitpod.io 2021-01-05 00:34:15 +00:00
CMakeLists.txt Set version to 1.15.0 2024-12-03 20:11:08 +01:00
CONTRIBUTING.md branches: Update files to refer to main instead of develop 2023-03-02 09:45:47 +02:00
gcc_nrf52-mcuboot.ld Update gcc_nrf52-mcuboot.ld 2022-12-27 09:58:51 +13:00
gcc_nrf52.ld Linker script: Update gcc_nrf52.ld to reflect changes done in gcc_nrf52-mcuboot.ld. 2023-01-29 12:38:05 +01:00
LICENSE Add LICENSE file and information. 2020-08-02 17:38:51 +02:00
nrf52.svd Fix various typos 2022-06-05 09:31:23 +03:00
nrf_common.ld Fix link error because of missing file "nrf_common.ld" 2020-01-12 16:26:20 +01:00
README.md Update Amazfish details in README.md 2024-11-17 00:10:20 +00:00

Header Image


GitHub tag GitHub License Issues - InfiniTime Pull Requests - InfiniTime Downloads - InfiniTime Stars - InfiniTime Forks - InfiniTime

InfiniTime

Fast open-source firmware for the PineTime smartwatch with many features, written in modern C++.


New to InfiniTime?

Companion apps


InfiniTimeExplorer is only compatible with web browsers that support Web BLE. Current fully supported browsers include Chrome and Microsoft Edge.

We removed mentions to NRFConnect as this app is closed source and recent versions do not work anymore with InfiniTime (the last version known to work is 4.24.3). If you used NRFConnect in the past, we recommend you switch to Gadgetbridge.

Development

Contributing

Build, flash and debug

API

Architecture and technical topics

Project management

Licenses

This project is released under the GNU General Public License version 3 or, at your option, any later version.

It integrates the following projects:

Credits

Im not working alone on this project. First, many people create pull requests for this project. Then, there is the whole #pinetime community: a lot of people all around the world who are hacking, searching, experimenting and programming the Pinetime. We exchange our ideas, experiments and code in the chat rooms and forums.

Here are some people I would like to highlight:

  • Atc1441: He works on an Arduino based firmware for the Pinetime and many other smartwatches based on similar hardware. He was of great help when I was implementing support for the BMA421 motion sensor and I²C driver.
  • Koen: Hes working on a firmware based on RiotOS. He integrated similar libs as me: NimBLE, LittleVGL,… His help was invaluable too!
  • Lup Yuen Lee: He is everywhere: he works on a Rust firmware, builds a MCUBoot based bootloader for the Pinetime, designs a Flutter based companion app for smartphones and writes a lot of articles about the Pinetime!