blob: a9bfd586f1a4519f2d5426b45c9c3b3d480392d0 [file] [log] [blame] [view] [edit]
# Running Fingerprint Study Using Python Virtualenv
This is an **alternative method** to install the fingerprint study tool on a
test device. It bypasses the Chrome OS/Gentoo dependencies and allows using
providing a clean virtualenv for the execution on the test device.
## 1) Build python3 virtual environment bundle
```bash
# Optionally, you can build the virtual environment in a Docker container.
# docker run -v$HOME/Downloads:/Downloads -it debian
# On Debian, ensure that git, python3, python3-pip, and virtualenv are installed.
(outside) $ sudo apt update && apt install git python3 python3-pip virtualenv
# Grab the fingerprint study tool source
(outside) $ git clone https://chromium.googlesource.com/chromiumos/platform2
# Create an isolated python3 environment
(outside) $ virtualenv -p python3 /tmp/fpstudy-virtualenv
(outside) $ . /tmp/fpstudy-virtualenv/bin/activate
# Install fingerprint study dependencies
(outside) $ pip3 install -r platform2/biod/study/requirements.txt
# Copy the fingerprint study source
(outside) $ cp -r platform2/biod/study /tmp/fpstudy-virtualenv
# Bundle the virtual environment with study source
(outside) $ tar -C /tmp -czvf /tmp/fpstudy-virtualenv.tar.gz fpstudy-virtualenv
# For Docker with Downloads volume shared, run the following command:
# cp /tmp/fpstudy-virtualenv.tar.gz /Downloads/
```
The output of these steps is the `fpstudy-virtualenv.tar.gz` archive.
*See [Typography conventions] to understand what `(outside)`, `(inside)`,
`(in/out)`, and `(device)` mean.*
## 2) Enable developer mode on the chromebook
See [Enable Developer Mode].
## 3) Install python3 virtual environment bundle
Transfer the `fpstudy-virtualenv.tar.gz` bundle to the test device.
One such method is to use scp, like in the following command:
```bash
(in/out) $ scp fpstudy-virtualenv.tar.gz root@$DUTIP:/root/
```
On the test device, extract the bundle into `/opt/google`, as shown in the
following command set:
```bash
(device) $ mkdir -p /opt/google
(device) $ tar -xzvf /root/fpstudy-virtualenv.tar.gz -C /opt/google
```
Enable the fingerprint study Upstart job.
```bash
(device) $ ln -s /opt/google/fpstudy-virtualenv/study/fingerprint_study_virtualenv.conf /etc/init
(device) $ start fingerprint_study_virtualenv
(device) $ sleep 2
(device) $ status fingerprint_study_virtualenv
```
## 4) Configure
To configure the number of fingers, enrollment taps, and verification taps
expected by the fingerprint study tool, please modify
`/opt/google/fpstudy-virtualenv/study/fingerprint_study_virtualenv.conf`.
## 5) Test
Navigate to http://127.0.0.1:9000 in a web browser.
[Enable Developer Mode]: https://www.chromium.org/chromium-os/developer-library/guides/device/developer-mode/
[Typography conventions]: https://www.chromium.org/chromium-os/developer-library/guides/development/developer-guide/#typography-conventions