91e75e620b
CI: cua-driver distro-compat matrix / debian:12 (glibc 2.36) (push) Has been cancelled
CI: SPDX Headers / Check SPDX headers (warn-only) (push) Has been cancelled
CD: Docs MCP Server / build (linux/amd64) (push) Has been cancelled
CD: Docs MCP Server / build (linux/arm64) (push) Has been cancelled
CD: Docs MCP Server / merge (push) Has been cancelled
CI: cua-driver distro-compat matrix / Resolve release version (push) Has been cancelled
CI: cua-driver distro-compat matrix / fedora:41 (glibc 2.40) (push) Has been cancelled
CI: cua-driver distro-compat matrix / rockylinux:9 (glibc 2.34) (push) Has been cancelled
CI: cua-driver distro-compat matrix / ubuntu:22.04 (glibc 2.35) (push) Has been cancelled
CI: cua-driver distro-compat matrix / ubuntu:24.04 (glibc 2.39) (push) Has been cancelled
CI: cua-driver distro-compat matrix / Distro compat summary (push) Has been cancelled
CI: Rust Linux unit / Rust Linux unit and compile (push) Has been cancelled
CI: Rust Windows unit / Rust Windows unit and compile (push) Has been cancelled
CI: Nix Linux Rust source / Nix / compositor build (push) Has been cancelled
CI: Nix Linux Rust source / Nix / driver package (push) Has been cancelled
CI: Nix Linux Rust source / Nix / Rust unit tests (push) Has been cancelled
48 lines
1.1 KiB
Nix
48 lines
1.1 KiB
Nix
# CUA Driver NixOS Module
|
|
#
|
|
# Installs the cua-driver binary and its runtime dependencies for
|
|
# Linux computer-use automation (X11, AT-SPI accessibility, ImageMagick).
|
|
#
|
|
# Usage in a NixOS configuration:
|
|
# imports = [ ./nix/cua-driver/module.nix ];
|
|
# services.cua-driver = {
|
|
# enable = true;
|
|
# package = cuaDriverPackage;
|
|
# };
|
|
#
|
|
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
|
|
let
|
|
cfg = config.services.cua-driver;
|
|
in
|
|
{
|
|
options.services.cua-driver = {
|
|
enable = lib.mkEnableOption "CUA Driver MCP server for computer-use automation";
|
|
|
|
package = lib.mkOption {
|
|
type = lib.types.package;
|
|
description = "The cua-driver package to use.";
|
|
};
|
|
};
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
environment.systemPackages = [
|
|
cfg.package
|
|
pkgs.imagemagick # `import` command used by capture.rs for window screenshots
|
|
pkgs.at-spi2-core # AT-SPI bus daemon for accessibility tree queries
|
|
];
|
|
|
|
# D-Bus is required for AT-SPI communication
|
|
services.dbus.enable = true;
|
|
|
|
environment.variables = {
|
|
CUA_DRIVER_BIN = "${cfg.package}/bin/cua-driver";
|
|
};
|
|
};
|
|
}
|