It turned out that having two copies of firmware sketches - one in Kaleidoscope, one here - is not viable. The original vision was that this repo would be the canonical source, and we'd remove the copies from Kaleidoscope, but that did not came to be, because the examples there are useful.
So instead, we should be using Kaleidoscope as the upstream source, in a way that we do not have a copy of the firmware sketches here, so we don't need to copy things around, and risk things getting out of sync. We do not want to deprecate this repository either, because it's useful for publishing the Chrysalis firmware bundle separately from Kaleidoscope itself.
So the plan is to remove the firmware sketches from here once keyboardio/Kaleidoscope#1293 is dealt with, and pull in Kaleidoscope as a submodule, and either symlink the sketches to the place the tooling here expects, or copy them during build-time. This way we don't have two copies, we can control when we sync (by updating the submodule), and we have more control over which version of Kaleidoscope we compile against (currently, we always compile against master, which is not always desirable).
It turned out that having two copies of firmware sketches - one in Kaleidoscope, one here - is not viable. The original vision was that this repo would be the canonical source, and we'd remove the copies from Kaleidoscope, but that did not came to be, because the examples there are useful.
So instead, we should be using Kaleidoscope as the upstream source, in a way that we do not have a copy of the firmware sketches here, so we don't need to copy things around, and risk things getting out of sync. We do not want to deprecate this repository either, because it's useful for publishing the Chrysalis firmware bundle separately from Kaleidoscope itself.
So the plan is to remove the firmware sketches from here once keyboardio/Kaleidoscope#1293 is dealt with, and pull in Kaleidoscope as a submodule, and either symlink the sketches to the place the tooling here expects, or copy them during build-time. This way we don't have two copies, we can control when we sync (by updating the submodule), and we have more control over which version of Kaleidoscope we compile against (currently, we always compile against master, which is not always desirable).
Our tooling will need updates too, of course.