Commit graph

232 commits

Author SHA1 Message Date
Sean Cross
e6209302e7 xtask: use assets api for determining URL
Now that we have full JSON parsing inside xtask, actually parse the
assets API endpoint to determine the correct URL.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-03-29 21:47:32 +08:00
Sean Cross
35857ab543 xtask: replace curl with ureq
The `ureq` package is much smaller, and may be more reliable on Linux.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-03-29 20:47:37 +08:00
bunnie
d736d54cee make pddbtest not part of the hw build but part of hosted mode by default 2022-03-29 16:49:18 +08:00
Sean Cross
a70aee7bad loader: move loader into main workspace
Add the loader into the main workspace, removing it from its own
sub-workspace. We can do this now that we can specify the linker script
in `build.rs`.

This improves IDE support, and should shrink disk storage requirements.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-03-22 02:09:18 +08:00
Sean Cross
e96a7df267 xtask: remove renode-bypass for renode-image
The `renode-bypass` flag is used for development in order to speed up
certain features. This creates invalid keys and skips many checks, which
causes problems in the main image.

Remove this flag in order to fix the Renode image.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-03-20 10:37:17 +08:00
Gianguido Sorà
ae2762e7f5 fix: on non-TTY terminals if forced, proceed with toolchain download and install
This is a corner case in Github CI.
2022-03-18 17:17:34 +01:00
Gianguido Sorà
ccafeb21a3 if not tty but force install is true, keep going 2022-03-18 17:05:51 +01:00
Sean Cross
65d2ec64db xtask: add --force parameter to install-toolkit
This parameter will remove the existing toolchain and target
directories, forcing a reinstall.

Signed-off-by: Sean Cross <sean@xobs.io>
2022-03-18 23:35:42 +08:00
Gianguido Sorà
cbd412a461 compile for hosted and real hardware on main push 2022-03-18 15:51:58 +01:00
Sean Cross
8920e35e08 xtask: run rustfmt on package
Signed-off-by: Sean Cross <sean@xobs.io>
2022-03-18 12:10:48 +08:00
bunnie
fbf90efe0e add a broader CI target for hosted mode
this will help prevent bugs slipping through where I forget to update
hosted mode stubs when tweaking hardware APIs
2022-03-18 03:21:46 +08:00
bunnie
34c9d83cba add a hack to change the locale for tts builds
unfortunately it greatly increases build times. need to think about
this but at least it prevents me from checking in a locale file that
breaks all the other dev's builds
2022-03-11 19:04:11 +08:00
bunnie
b246a369d4 lay in another layer of tts functionality
now shellchat can talk, and password entries are a thing.

next up: debug oom issues in STT when we start doing really big
strings.
2022-03-11 02:37:48 +08:00
bunnie
c44f794dfe baseline before moving onto the next stage 2022-03-11 00:03:31 +08:00
bunnie
24e295e059 right...don't check that version of xtask in. 2022-03-09 03:51:28 +08:00
bunnie
446317bdd4 add speech rate library call and default setting
350 wpm was the requested default!
2022-03-09 03:48:12 +08:00
bunnie
1227ee06ab final integration with on-line binary download of TTS exec 2022-03-09 00:25:30 +08:00
bunnie
19f09b9ed3 suppress warning messages if no apps are selected 2022-03-08 17:39:57 +08:00
bunnie
1d6fbbe5bb add the basic text to speech infrastructure.
also creates a method for isolating incompatibly licensed repos
2022-03-08 03:08:12 +08:00
bunnie
3325a96fd4 Merge branch 'main' into tts 2022-03-08 00:24:38 +08:00
bunnie
eb7d35e484 Merge branch 'ffi' into main
this add some routines and test stubs that are helpful for debugging
C FFI integrations. In particular it provides some harnessing that adapts
a minimal selection of libc functions by copypasta of various bsd/mit
licensed libc implementations. It also provides a cheesy malloc using
a Rust Vec...only suitable for simple, single-threaded work, but enough
to unlock a reasonable range of middleware.
2022-03-08 00:20:50 +08:00
bunnie
6d697691db add doc string for ffi-test 2022-03-08 00:19:27 +08:00
bunnie
f80d3f089d stash 2022-03-08 00:01:48 +08:00
bunnie
0a11350771
leave a bread crumb for image creation debugging
because I can never remember how to flip that debug environment variable on windows
2022-03-07 15:04:39 +08:00
bunnie
199ce642b3 ok this is the version that works, let's start from here. 2022-03-07 14:02:19 +08:00
bunnie
54e491840d stash to work on an aes api bug 2022-03-07 13:17:58 +08:00
bunnie
4cfd835c0c allow for explicit version pinning of crates in package specifiers for an image
This works around the issue of a dependendent crate e.g. pulling in a version
of sha2 that is an incompatible API with the one provided by the hardware
accelerator. Cargo needs to know for which sha2 crate to build, and
the current "sha2" specifier is too ambiguous.

This is done by specifying it as "sha2:0.9.8", but, this now breaks
the image creation because the actual artifact built is still a filename
of `sha2`, not `sha2:0.9.8`. This patch both adds the fully specified
version to the sha2 crate and also strips out the trailing version
number without breaking e.g. Windows builds which have a ':' built
into every path (so you can't just do a stupid split(':') to strip
off the version number).
2022-03-06 22:24:58 +08:00
bunnie
526bc959af add some facilities for testing net in libstd 2022-03-02 20:43:01 +08:00
bunnie
e7efb14bdf add a bypass for Renode to skip the signature check
- bypass causes warnings to be emitted in compilation
- stark visual change on boot screen ("jail bars" instead of gray on bottom half)
- root keys are locked out permanently from readout
- devboot canary set
2022-03-02 19:51:16 +08:00
bunnie
396b9e134a add app generalization to xtask renode commands 2022-03-02 00:00:33 +08:00
bunnie
a9a5e5c9a9 integrate app name in sec notes patch, make app name update retriggered on change 2022-02-24 19:44:24 +08:00
Gianguido Sorà
b47c7b2793 Add current app name in security notes
This commit adds the current's app name to the security bar at the top
of the screen, just beneath the status bar.
I had to add a new generated function to map app index back to its name,
along with an enum to signal whether or not the id is valid.

Signed-off-by: Gianguido Sorà <me@gsora.xyz>
2022-02-24 19:29:45 +08:00
bunnie
122221227b fix some bitrot on usb burning routines, add windows support 2022-02-12 23:18:27 +08:00
bunnie
b1859b57ae fix hw_pkgs -> pkgs thanks @gsora 2022-02-12 00:56:28 +08:00
bunnie
af52f4ae3c add apps to debug hosted mode flow 2022-02-12 00:42:19 +08:00
bunnie
4abb6548cd add a feature to turn off timestamps
specifying "no-timestamp" causes the build to be reproducible
on the same machine. of course, introducing the timestamp makes
the build no longer reproducible but it's very helpful for debugging.
2022-02-07 17:38:07 +08:00
bunnie
830d875911 slot in the ball demo for renode tests 2022-02-04 17:10:51 +08:00
bunnie
b036d55d24 add dummy app menu generation to renode 2022-02-04 17:07:57 +08:00
bunnie
f1fa030b87 fix some CI issues 2022-02-04 02:24:12 +08:00
bunnie
b498669003 use NIST SP800-38F (AES-KWP) to wrap the system key for the PDDB
this is instead of our lolfail ECB-based method with a check block.
2022-02-03 18:24:06 +08:00
bunnie
3240234e95 re-instate xtask run with command-line specified apps 2022-02-02 23:56:17 +08:00
bunnie
323f737a4b make the rebuild process smarter so we're not triggering if stuff didn't change 2022-02-02 23:25:36 +08:00
bunnie
a4752dbb59 app manifest and auto-gen infrastructure 2022-02-02 16:18:06 +08:00
bunnie
884943c3ad adjust format of autogen file 2022-01-31 23:05:11 +08:00
bunnie
faa51908d7 maybe, just maybe...we finally have version info baked into the kernel correctly. 2022-01-31 23:02:32 +08:00
bunnie
2153c25be3 it is so damn hard to get Rust to inject a relevant build time into a build
Still not there....to get it reporting in a user-visible fashion
I'm realizing I'm going to have to build a dedicated facility in
Xous to track this because otherwise I have to trigger the
automatic rebuild of a "heavy" program that would naturally
encapsulate such information.

Maybe for now, though, at least over the serial port I can
get a somewhat relevant string???
2022-01-31 13:16:09 +08:00
bunnie
9573da00f4 still dicking around with getting versions to appear correctly in builds 2022-01-31 04:12:43 +08:00
bunnie
e55154be69 add version info for ~~xous~~ to the shellchat command
this took...way too long to figure out. Latest versions
of `vergen` for whatever reason seem totally broken for
my build hosts.
2022-01-25 16:37:50 +08:00
bunnie
583c2e172b add a demo REPL app to help users get started with something more interactive 2022-01-24 19:06:58 +08:00
bunnie
6089672960 add localization to the demo app 2022-01-24 04:42:35 +08:00