foundation-devices / passport2 Goto Github PK
View Code? Open in Web Editor NEWv2.x.x series of firmware for Passport
License: Other
v2.x.x series of firmware for Passport
License: Other
Current Behavior:
macOS: Attempting to install and build the cross-compiler and MicroPython tools results in the following errors:
make -C mpy-cross
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
GEN build/genhdr/qstrdefs.collected.h
QSTR not updated
CC ../py/objgenerator.c
../py/objgenerator.c:102:21: error: variable 'n_exc_stack_unused' set but not used [-Werror,-Wunused-but-set-variable]
size_t n_state, n_exc_stack_unused, scope_flags, n_pos_args, n_kwonly_args, n_def_args;
^
../py/objgenerator.c:102:41: error: variable 'scope_flags' set but not used [-Werror,-Wunused-but-set-variable]
size_t n_state, n_exc_stack_unused, scope_flags, n_pos_args, n_kwonly_args, n_def_args;
^
../py/objgenerator.c:102:54: error: variable 'n_pos_args' set but not used [-Werror,-Wunused-but-set-variable]
size_t n_state, n_exc_stack_unused, scope_flags, n_pos_args, n_kwonly_args, n_def_args;
^
../py/objgenerator.c:102:66: error: variable 'n_kwonly_args' set but not used [-Werror,-Wunused-but-set-variable]
size_t n_state, n_exc_stack_unused, scope_flags, n_pos_args, n_kwonly_args, n_def_args;
^
../py/objgenerator.c:102:81: error: variable 'n_def_args' set but not used [-Werror,-Wunused-but-set-variable]
size_t n_state, n_exc_stack_unused, scope_flags, n_pos_args, n_kwonly_args, n_def_args;
^
5 errors generated.
make: *** [build/py/objgenerator.o] Error 1
Expected Behavior:
mpy-cross should install and build without errors.
This issue happens on macOS. I was successfully able to build mpy-cross on Linux.
Here are some links to similar or related issues:
microbit-foundation/micropython-microbit-v2#154
micropython/micropython#8805
adafruit/circuitpython#6158
Based on the information from the related issues, it seems that upgrading to a new version of MicroPython may resolve the issue. The issue may be due to recent changes to clang on macOS. Evidently, newer versions of MicroPython (v1.20.0 and above) fix this issue (micropython/micropython@9e3e67b). Therefore, Foundation Devices should upgrade the Passport firmware to the latest version of MicroPython to fix this issue. Perhaps MicroPython could be installed in an /external or /lib subfolder so it is easier to upgrade in the future.
I went through the DEVELOPMENT.md procedure and even did the (code-signing)[https://github.com/Foundation-Devices/passport2/blob/main/DEVELOPMENT.md#code-signing] section to generate developer pubkey. When I went to build the firmware using the just sign 2.0.4 color
command, the result was two ERROR messages as pictured below:
INFO: Key /home/billybob/bin/keys/user.pem not a supported public key. Assuming user key.
Wrote signed firmware to: build-Passport/v2.0.4-beta-passport.bin
ERROR: Failed to open 'build-Passport/v2.0.4-passport-key-user.bin'.
ERROR: File 'build-Passport/v2.0.4-passport-key-user.bin' has no data.
Not sure what this means or if this is an error that can be ignored. Further clarification in the DEVELOPMENT.md documentation would be greatly appreciated. I will also be submitting a PR for some edits to the documentation that I made during my build process.
2.1.2
Passport Batch 2
Envoy. Wallet not needed to reproduce this bug.
When users set up two-factor authentication or change login settings on a website or other service, they typically are asked to confirm the new authentication method after setup. Allowing the confirmation to be bypassed may cause user confusion.
The Show at Login option remains enabled despite no successful PIN verification
No response
No response
No response
{"label"=>"Low: Minor issue with minimal impact on usability."}
did not
Support for message signing.
No response
No response
No response
No response
Tried building the bootloader as per the DEVELOPMENT.md documentation and it results in the following error:
error: Justfile does not contain recipes 'build' or 'color'.
There is pending bug in the proces of signing. When you scan an invalid QR code (for example a bitcoin address) in the Bitcoin menu (signing) the menu showing a process:
"Parsing transaction"
The QR code is invalid and the Passport will keep this process running (spinning wheel). The only way to exit is to shutdown the Passport.
Requesting:
quick scan if the QR code is valid or not
A way to cancel or go back in the menu.
2.2.0
Passport Batch 2
Hello, I'm Danny from WalletScrutiny,
I've been trying to follow the instructions for reproducing Passport2 v2.2.0 (I've also tried 2.3.0 - same issues.)
Just as I run $ just build-docker
I get:
danny@lw10:~/work/builds/hardware/passport2$ just build-docker
docker build -t ${DOCKER_IMAGE} .
Sending build context to Docker daemon 613.6MB
Step 1/12 : FROM ubuntu:20.04
---> 2abc4dfd8318
Step 2/12 : ARG DEBIAN_FRONTEND=noninteractive
---> Using cache
---> 03a3b1b5a63c
Step 3/12 : RUN apt-get update && apt-get install -y automake autotools-dev build-essential curl gcc-arm-none-eabi git libffi-dev libssl-dev libtool pkg-config pycodestyle python3 python3-pip && rm -rf /var/lib/apt/lists/*
---> Using cache
---> dc534010a0a6
Step 4/12 : RUN pip3 install reuse
---> Using cache
---> a3fec50fb507
Step 5/12 : ENV RUSTUP_HOME="/rustup"
---> Using cache
---> 0db3622d0c31
Step 6/12 : ENV CARGO_HOME="/cargo"
---> Using cache
---> a8410d4d058a
Step 7/12 : RUN mkdir -p /rustup /cargo && curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain 1.67.1
---> Using cache
---> 47645745ad68
Step 8/12 : ENV PATH="/cargo/bin:${PATH}"
---> Using cache
---> c8a59a0fe6e1
Step 9/12 : RUN rustup component add clippy && rustup component add rustfmt && rustup target add thumbv7em-none-eabihf
---> Using cache
---> 7a02ab61f9e9
Step 10/12 : RUN cargo install cbindgen --version "^0.24"
---> Using cache
---> 7be40032dfcc
Step 11/12 : RUN cargo install just --version "^1.26" && mv /cargo/bin/cbindgen /usr/local/bin/cbindgen && mv /cargo/bin/just /usr/local/bin/just && chmod 755 /usr/local/bin/cbindgen && chmod 755 /usr/local/bin/just
---> Running in 4e5f8c6f2748
Updating crates.io index
Downloading crates ...
Downloaded just v1.26.0
Installing just v1.26.0
error: failed to compile `just v1.26.0`, intermediate artifacts can be found at `/tmp/cargo-installUn9hbg`
Caused by:
failed to select a version for `env_logger`.
... required by package `just v1.26.0`
versions that meet the requirements `^0.11.0` are: 0.11.3, 0.11.2, 0.11.1, 0.11.0
the package `just` depends on `env_logger`, with features: `anstream` but `env_logger` does not have these features.
It has an optional dependency with that name, but that dependency uses the "dep:" syntax in the features table, so it does not have an implicit feature with that name.
failed to select a version for `env_logger` which could resolve this conflict
The command '/bin/sh -c cargo install just --version "^1.26" && mv /cargo/bin/cbindgen /usr/local/bin/cbindgen && mv /cargo/bin/just /usr/local/bin/just && chmod 755 /usr/local/bin/cbindgen && chmod 755 /usr/local/bin/just' returned a non-zero code: 101
error: Recipe `build-docker` failed on line 10 with exit code 101
This is run in our build server. I would appreciate some assistance, thank you.
Should build the firmware.
git clone https://github.com/Foundation-Devices/passport2.git
cd passport2
git checkout v2.1.2
# create ~/bin
mkdir -p ~/bin
# download and extract just to ~/bin/just
curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to ~/bin
# add `~/bin` to the paths that your shell searches for executables
# this line should be added to your shells initialization file,
# e.g. `~/.bashrc` or `~/.zshrc`
export PATH="$PATH:$HOME/bin"
# just should now be executable
just --help
$ just clean
$ just build-docker
No response
No response
No response
{"label"=>"Low: Minor issue with minimal impact on usability."}
None
Passport Founders Edition
running docker build --no-cache -t ${dockerImage} .
works
...
Downloaded regex v1.10.4
Downloaded nix v0.28.0
Downloaded regex-syntax v0.8.3
Downloaded regex-automata v0.4.6
error: failed to compile `just v1.23.0`, intermediate artifacts can be found at `/tmp/cargo-installzHBtxM`
Caused by:
package `nix v0.28.0` cannot be built because it requires rustc 1.69 or newer, while the currently active rustc version is 1.67.1
Try re-running cargo install with `--locked`
The command '/bin/sh -c cargo install cbindgen@^0.24 && cargo install [email protected] && mv /cargo/bin/cbindgen /usr/local/bin/cbindgen && mv /cargo/bin/just /usr/local/bin/just && chmod 755 /usr/local/bin/cbindgen && chmod 755 /usr/local/bin/just' returned a non-zero code: 101
...
2.3.0
Passport Batch 2
N/A (On device)
Explore address screen shows addresses properly when center button is pressed.
Navigate to explore addresses screen for any wallet on the passport 2 device and attempt to view addresses 1 by 1. However, when using the center button pad and pressing the (RIGHT) button. It jumps via 10 addresses due to receiving a (DOWN) button press. The buttons are too connected together and thus make it very finicky/easy to fat-finger jumping +10 addresses preventing proper use of this functionality.
I would reccomend proposing 2 possible solutions to this issue.
Unable to use screen properly
No response
No response
{"label"=>"Medium: Moderate issue affecting usability."}
N/A
I have trouble scanning the QR code from different wallets. The camera on different phones have trouble auto focussing on the screen. Also the same for computer camera. Increasing the animated QR code size or lower the brightness are not helpful.
It might be related to general problem of autofocus on white screen (this is a common problem).
See here also: https://photo.stackexchange.com/questions/9095/why-doesnt-auto-focus-work-with-an-all-white-subject-like-a-wall
A solution is to make the white background another color, like grey, so all camera can detect the QR code and the edge of the screen.
restoring a 24 word trezor wallet to passport doesn't seem to work with sparrow or specter. I need the derivation path of m/49'/0'/0' and nested segwit. is there any way to get the xpub off passport to support this? The 'connect wallet' feature always seems to export the derivation path of m/84/0/0
restoring a 24 word trezor wallet to passport doesn't seem to work with sparrow or specter. I need the derivation path of m/49'/0'/0' and nested segwit. is there any way to get this on passport? Thanks!
No response
No response
No response
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.