1{ pkgs, lib, ... }:
2let
3 # Example Android app
4 demoApp = pkgs.fetchurl {
5 url = "https://gitlab.com/android_translation_layer/atl_test_apks/-/raw/061e32a3172c8167b1746768d098f0e62d8f564b/demo_app.apk";
6 hash = "sha256-aXxLZEAMNsL6nL4r2N9rVsbBPmf3+gFGmgo3kZjdo4s=";
7 };
8in
9{
10 name = "android-translation-layer";
11 meta.maintainers = with pkgs.lib.maintainers; [ onny ];
12
13 nodes.machine =
14 { config, pkgs, ... }:
15 {
16 imports = [
17 ./common/x11.nix
18 ];
19
20 services.xserver.enable = true;
21
22 environment = {
23 systemPackages = [ pkgs.android-translation-layer ];
24 };
25 };
26
27 enableOCR = true;
28
29 testScript = ''
30 machine.wait_for_x()
31
32 with subtest("launch android translation layer demo app"):
33 machine.succeed("android-translation-layer ${demoApp} >&2 &")
34 machine.sleep(10)
35 machine.wait_for_text(r"hello PoC world!")
36 machine.screenshot("atl_demo_app")
37
38 machine.succeed("pkill -f android-translation-layer")
39 '';
40}