1import ./make-test-python.nix (
2 { lib, pkgs, ... }:
3
4 let
5 testScript = ''
6 start_all()
7
8 machine.wait_for_unit("multi-user.target")
9
10 # Check that gopro-tool is installed
11 machine.succeed("which gopro-tool")
12
13 # Check that the v4l2loopback module is available
14 machine.succeed("lsmod | grep v4l2loopback || echo 'Module not found'")
15
16 # Check that VLC is installed
17 machine.succeed("which vlc")
18 '';
19 in
20 {
21 name = "gopro-tool";
22 meta.maintainers = with lib.maintainers; [ ZMon3y ];
23 nodes.machine =
24 { config, pkgs, ... }:
25 {
26 # Ensure dependencies are installed
27 environment.systemPackages = with pkgs; [
28 gopro-tool
29 vlc
30 ];
31
32 # Load kernel module for testing
33 boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ];
34
35 # Enable module loading
36 boot.kernelModules = [ "v4l2loopback" ];
37 };
38
39 testScript = testScript;
40 }
41)