mirror of
https://github.com/commaai/agnos-builder.git
synced 2026-09-08 17:33:42 +08:00
pull in all
This commit is contained in:
+7
-1
@@ -118,7 +118,13 @@ ARG XDG_DATA_HOME="/usr/local"
|
||||
COPY ./userspace/uv /tmp/agnos/uv
|
||||
RUN source $XDG_DATA_HOME/venv/bin/activate && \
|
||||
cd /tmp/agnos/uv && \
|
||||
MAKEFLAGS="-j$(nproc)" UV_NO_CACHE=1 UV_PROJECT_ENVIRONMENT=$XDG_DATA_HOME/venv uv sync --frozen --inexact --compile-bytecode
|
||||
MAKEFLAGS="-j$(nproc)" UV_NO_CACHE=1 UV_PROJECT_ENVIRONMENT=$XDG_DATA_HOME/venv uv sync --frozen --inexact --compile-bytecode \
|
||||
--no-install-package msgq \
|
||||
--no-install-package opendbc \
|
||||
--no-install-package pandacan \
|
||||
--no-install-package rednose \
|
||||
--no-install-package teleoprtc \
|
||||
--no-install-package tinygrad
|
||||
|
||||
# Install nice to haves
|
||||
COPY ./userspace/install_extras.sh /tmp/agnos/
|
||||
|
||||
@@ -12,6 +12,10 @@ fi
|
||||
|
||||
cd userspace/uv
|
||||
curl -sSo openpilot/pyproject.toml https://raw.githubusercontent.com/commaai/openpilot/master/pyproject.toml
|
||||
# Replace openpilot's checkout-relative submodule sources with the Git sources
|
||||
# configured by AGNOS below. The lockfile pins each resolved commit.
|
||||
sed -i '/^\[tool\.uv\.sources\]/,$d' openpilot/pyproject.toml
|
||||
sed -i '${/^$/d;}' openpilot/pyproject.toml
|
||||
|
||||
pc="$(python3 -c "import sysconfig;print(sysconfig.get_config_vars('installed_base')[0])")" && \
|
||||
pcpath=$pc"/lib/pkgconfig" && \
|
||||
|
||||
@@ -155,11 +155,3 @@ default-groups = ["standalone"]
|
||||
override-dependencies = [
|
||||
"opendbc", # panda pins opendbc from git for standalone use; always use our submodule
|
||||
]
|
||||
|
||||
[tool.uv.sources]
|
||||
msgq = { path = "msgq_repo", editable = true }
|
||||
opendbc = { path = "opendbc_repo", editable = true }
|
||||
pandacan = { path = "panda", editable = true }
|
||||
rednose = { path = "rednose_repo", editable = true }
|
||||
teleoprtc = { path = "teleoprtc_repo", editable = true }
|
||||
tinygrad = { path = "tinygrad_repo", editable = true }
|
||||
|
||||
@@ -6,16 +6,16 @@ requires-python = ">=3.12.3, <3.13"
|
||||
description = ""
|
||||
dependencies = [
|
||||
"openpilot",
|
||||
"openpilot[tools,testing]",
|
||||
"openpilot[tools,testing,submodules]",
|
||||
"msgq",
|
||||
"opendbc",
|
||||
"pandacan",
|
||||
"rednose",
|
||||
"teleoprtc",
|
||||
"tinygrad",
|
||||
"tinymesa==25.2.7.2",
|
||||
|
||||
"pycapnp==2.1.0", # 2.2 introduces a memory leak due to cyclic references
|
||||
"comma-deps-eigen",
|
||||
"cython",
|
||||
"libdatachannel-py>=2026.1.0.dev2",
|
||||
"pycryptodome",
|
||||
"setuptools",
|
||||
"spidev",
|
||||
|
||||
# hardware.py
|
||||
"dbus-python",
|
||||
@@ -42,3 +42,9 @@ dependencies = [
|
||||
|
||||
[tool.uv.sources]
|
||||
openpilot = { path = "openpilot" }
|
||||
msgq = { git = "https://github.com/commaai/msgq.git", rev = "master" }
|
||||
opendbc = { git = "https://github.com/commaai/opendbc.git", rev = "master" }
|
||||
pandacan = { git = "https://github.com/commaai/panda.git", rev = "master" }
|
||||
rednose = { git = "https://github.com/commaai/rednose.git", rev = "master" }
|
||||
teleoprtc = { git = "https://github.com/commaai/teleoprtc.git", rev = "master" }
|
||||
tinygrad = { git = "https://github.com/tinygrad/tinygrad.git", rev = "master" }
|
||||
|
||||
Generated
+130
-20
@@ -7,52 +7,52 @@ name = "agnos"
|
||||
version = "0.1.0"
|
||||
source = { virtual = "." }
|
||||
dependencies = [
|
||||
{ name = "comma-deps-eigen" },
|
||||
{ name = "comma-deps-raylib" },
|
||||
{ name = "cython" },
|
||||
{ name = "dbus-python" },
|
||||
{ name = "evdev" },
|
||||
{ name = "flaky" },
|
||||
{ name = "ipython" },
|
||||
{ name = "libdatachannel-py" },
|
||||
{ name = "libusb1" },
|
||||
{ name = "matplotlib" },
|
||||
{ name = "openpilot", extra = ["testing", "tools"] },
|
||||
{ name = "msgq" },
|
||||
{ name = "opendbc" },
|
||||
{ name = "openpilot", extra = ["submodules", "testing", "tools"] },
|
||||
{ name = "pandacan" },
|
||||
{ name = "paramiko" },
|
||||
{ name = "py-spy" },
|
||||
{ name = "pycapnp" },
|
||||
{ name = "pycryptodome" },
|
||||
{ name = "pyusb" },
|
||||
{ name = "setuptools" },
|
||||
{ name = "rednose" },
|
||||
{ name = "smbus2" },
|
||||
{ name = "spidev" },
|
||||
{ name = "spidev2" },
|
||||
{ name = "teleoprtc" },
|
||||
{ name = "tinygrad" },
|
||||
{ name = "tinymesa" },
|
||||
]
|
||||
|
||||
[package.metadata]
|
||||
requires-dist = [
|
||||
{ name = "comma-deps-eigen" },
|
||||
{ name = "comma-deps-raylib" },
|
||||
{ name = "cython" },
|
||||
{ name = "dbus-python" },
|
||||
{ name = "evdev" },
|
||||
{ name = "flaky" },
|
||||
{ name = "ipython" },
|
||||
{ name = "libdatachannel-py", specifier = ">=2026.1.0.dev2" },
|
||||
{ name = "libusb1", specifier = "==3.1.0" },
|
||||
{ name = "matplotlib" },
|
||||
{ name = "msgq", git = "https://github.com/commaai/msgq.git?rev=master" },
|
||||
{ name = "opendbc", git = "https://github.com/commaai/opendbc.git?rev=master" },
|
||||
{ name = "openpilot", directory = "openpilot" },
|
||||
{ name = "openpilot", extras = ["tools", "testing"], directory = "openpilot" },
|
||||
{ name = "openpilot", extras = ["tools", "testing", "submodules"], directory = "openpilot" },
|
||||
{ name = "pandacan", git = "https://github.com/commaai/panda.git?rev=master" },
|
||||
{ name = "paramiko" },
|
||||
{ name = "py-spy" },
|
||||
{ name = "pycapnp", specifier = "==2.1.0" },
|
||||
{ name = "pycryptodome" },
|
||||
{ name = "pyusb" },
|
||||
{ name = "setuptools" },
|
||||
{ name = "rednose", git = "https://github.com/commaai/rednose.git?rev=master" },
|
||||
{ name = "smbus2" },
|
||||
{ name = "spidev" },
|
||||
{ name = "spidev2" },
|
||||
{ name = "teleoprtc", git = "https://github.com/commaai/teleoprtc.git?rev=master" },
|
||||
{ name = "tinygrad", git = "https://github.com/tinygrad/tinygrad.git?rev=master" },
|
||||
{ name = "tinymesa", specifier = "==25.2.7.2" },
|
||||
]
|
||||
|
||||
@@ -489,6 +489,15 @@ wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/1e/5e/d4e9f1a599fb8e573b7b87160658329fbf28d19eac2718f51fc3def3aa5a/idna-3.18-py3-none-any.whl", hash = "sha256:7f952cbe720b688055e3f87de14f5c3e5fdaa8bc3928985c4077ca689de849a2", size = 65455, upload-time = "2026-06-02T14:34:06.319Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "importlib-resources"
|
||||
version = "7.1.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/e4/06/b56dfa750b44e86157093bc8fca0ab81dccbf5260510de4eaf1cb69b5b99/importlib_resources-7.1.0.tar.gz", hash = "sha256:0722d4c6212489c530f2a145a34c0a7a3b4721bc96a15fada5930e2a0b760708", size = 44985, upload-time = "2026-04-12T16:36:09.232Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/8a/db/55a262f3606bebcae07cc14095338471ad7c0bbcaa37707e6f0ee49725b7/importlib_resources-7.1.0-py3-none-any.whl", hash = "sha256:1bd7b48b4088eddb2cd16382150bb515af0bd2c70128194392725f82ad2c96a1", size = 37232, upload-time = "2026-04-12T16:36:08.219Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "inputs"
|
||||
version = "0.5"
|
||||
@@ -609,6 +618,24 @@ wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/d7/9d/1e10131396d28e84a8088a63c14978cc215f6677dc85acdd96b6068f0664/libdatachannel_py-2026.1.0.dev2-cp312-cp312-manylinux_2_38_x86_64.whl", hash = "sha256:1f31db7347549edcd69fcc1ecb8b31e7183894808ccf9387afc49a4d68debaae", size = 1751748, upload-time = "2026-05-19T03:37:06.98Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "libusb-package"
|
||||
version = "1.0.30.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "importlib-resources" },
|
||||
]
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/42/a8/8b3d5dae7340880d556f9f866874b9674b2e3a22fee1e2b96f1ab0feae36/libusb_package-1.0.30.0-py3-none-macosx_10_9_x86_64.whl", hash = "sha256:2b98784bac3bedda7e95bb5039dd0eded84b02f36110e4d5d607375366c61090", size = 69516, upload-time = "2026-06-30T07:41:02.451Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/52/6f/26de4e9f858ab50e87931f0be268f3c1bbfce33e8584add60da857632142/libusb_package-1.0.30.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:4ad25f8d254bbbdd234446d5580b24d62d59bb0e690d8090457dac347f044437", size = 65700, upload-time = "2026-06-30T07:41:03.557Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/11/12/9ba8fa91dc95b1cbfa4a68207d4048b08b900fd3686fa72b99846608de01/libusb_package-1.0.30.0-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c71b5f8c65b286425c02c7d624eee1fd7f08bfb1dfa492ddc20e27f06fee3829", size = 76166, upload-time = "2026-06-30T07:41:04.462Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/6f/e1/a7c83535749332825f02d6693868f8ee9ae99c4104e60a483773bb652c0e/libusb_package-1.0.30.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f502ad5a0527b8c0431de817662325c88a1bba2cc334173665b04ad168d7b6d3", size = 76159, upload-time = "2026-06-30T07:41:05.543Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/de/56/a1fb1726fc96a8ee3bd0e04e5e505500f022dd310dd348ecebf5cdae7a60/libusb_package-1.0.30.0-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:7a2a1c82f6ef85d9920cbe2898aa6927d4c487744ef9f20b0d7d6d95705095bb", size = 77162, upload-time = "2026-06-30T07:41:06.581Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/7b/03/264cefc51275ecb047194c4973bc40b3b278566a64bbe6e74f86bf1e0afc/libusb_package-1.0.30.0-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:2ee5ef8ac6f08402b4e8334f7404850316bdd26037c9a97f2a7456ee9a5d1550", size = 76676, upload-time = "2026-06-30T07:41:07.505Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/e5/95/d166eeefe0d9dd5833d5724a97b023ec380c3a2d364040ec0485fd57703c/libusb_package-1.0.30.0-py3-none-win32.whl", hash = "sha256:79728146e1f01e525786900b2ccd8298a8eca53cd94b37fb0885e56aa6f9d60a", size = 78769, upload-time = "2026-06-30T07:41:08.432Z" },
|
||||
{ url = "https://files.pythonhosted.org/packages/60/4a/ff49bd77f33af05ca26fee29d601beb1e19ca791bb86efece82a3833885c/libusb_package-1.0.30.0-py3-none-win_amd64.whl", hash = "sha256:90808da724c8939a333d931d0c7226372ca5fefd98e2f2f3ef79fd918aa37522", size = 90711, upload-time = "2026-06-30T07:41:09.318Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "libusb1"
|
||||
version = "3.1.0"
|
||||
@@ -658,6 +685,20 @@ wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/41/09/5b161152e2d90f7b87f781c2e1267494aef9c32498df793f73ad0a0a494a/matplotlib_inline-0.2.2-py3-none-any.whl", hash = "sha256:3c821cf1c209f59fb2d2d64abbf5b23b67bcb2210d663f9918dd851c6da1fcf6", size = 9534, upload-time = "2026-05-08T17:33:32.055Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "mpmath"
|
||||
version = "1.3.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/e0/47/dd32fa426cc72114383ac549964eecb20ecfd886d1e5ccf5340b55b02f57/mpmath-1.3.0.tar.gz", hash = "sha256:7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f", size = 508106, upload-time = "2023-03-07T16:47:11.061Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl", hash = "sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c", size = 536198, upload-time = "2023-03-07T16:47:09.197Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "msgq"
|
||||
version = "0.0.1"
|
||||
source = { git = "https://github.com/commaai/msgq.git?rev=master#425b61a60358895b894e9a6920b1d3e06903132e" }
|
||||
|
||||
[[package]]
|
||||
name = "numpy"
|
||||
version = "2.5.1"
|
||||
@@ -677,6 +718,17 @@ wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/2b/2a/d1a88066b1c14186f5d3c0d18c94f17b064511982bab0578d49ee9d43c29/numpy-2.5.1-cp312-cp312-win_arm64.whl", hash = "sha256:17a25e09640602e10bc8de0e6fa2b3fd68eedd84ba6d7842dc8f32f9ab87bd0b", size = 10350488, upload-time = "2026-07-04T17:06:37.785Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "opendbc"
|
||||
version = "0.3.1"
|
||||
source = { git = "https://github.com/commaai/opendbc.git?rev=master#1bacd87e5aee0abb7dc5b3fdee41382f8032f639" }
|
||||
dependencies = [
|
||||
{ name = "numpy" },
|
||||
{ name = "pycapnp" },
|
||||
{ name = "pycryptodome" },
|
||||
{ name = "tqdm" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "openpilot"
|
||||
version = "0.1.0"
|
||||
@@ -709,6 +761,14 @@ dependencies = [
|
||||
]
|
||||
|
||||
[package.optional-dependencies]
|
||||
submodules = [
|
||||
{ name = "msgq" },
|
||||
{ name = "opendbc" },
|
||||
{ name = "pandacan" },
|
||||
{ name = "rednose" },
|
||||
{ name = "teleoprtc" },
|
||||
{ name = "tinygrad" },
|
||||
]
|
||||
testing = [
|
||||
{ name = "codespell" },
|
||||
{ name = "coverage" },
|
||||
@@ -743,23 +803,23 @@ requires-dist = [
|
||||
{ name = "inputs" },
|
||||
{ name = "jeepney" },
|
||||
{ name = "matplotlib", marker = "extra == 'tools'" },
|
||||
{ name = "msgq", marker = "extra == 'submodules'", editable = "openpilot/msgq_repo" },
|
||||
{ name = "msgq", marker = "extra == 'submodules'" },
|
||||
{ name = "numpy", specifier = ">=2.0" },
|
||||
{ name = "opendbc", marker = "extra == 'submodules'", editable = "openpilot/opendbc_repo" },
|
||||
{ name = "pandacan", marker = "extra == 'submodules'", editable = "openpilot/panda" },
|
||||
{ name = "opendbc", marker = "extra == 'submodules'" },
|
||||
{ name = "pandacan", marker = "extra == 'submodules'" },
|
||||
{ name = "pycapnp", specifier = "==2.1.0" },
|
||||
{ name = "pyjwt", extras = ["crypto"] },
|
||||
{ name = "pyzmq" },
|
||||
{ name = "qrcode" },
|
||||
{ name = "rednose", marker = "extra == 'submodules'", editable = "openpilot/rednose_repo" },
|
||||
{ name = "rednose", marker = "extra == 'submodules'" },
|
||||
{ name = "requests" },
|
||||
{ name = "ruff", marker = "extra == 'testing'" },
|
||||
{ name = "scons" },
|
||||
{ name = "sentry-sdk" },
|
||||
{ name = "setproctitle" },
|
||||
{ name = "sounddevice" },
|
||||
{ name = "teleoprtc", marker = "extra == 'submodules'", editable = "openpilot/teleoprtc_repo" },
|
||||
{ name = "tinygrad", marker = "extra == 'submodules'", editable = "openpilot/tinygrad_repo" },
|
||||
{ name = "teleoprtc", marker = "extra == 'submodules'" },
|
||||
{ name = "tinygrad", marker = "extra == 'submodules'" },
|
||||
{ name = "tqdm" },
|
||||
{ name = "ty", marker = "extra == 'testing'" },
|
||||
{ name = "websocket-client" },
|
||||
@@ -779,6 +839,17 @@ wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/63/34/ba1c580383c9eada3711951fef0795c80b829a078d72188184bcab9dd527/packaging-26.3-py3-none-any.whl", hash = "sha256:d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c", size = 129956, upload-time = "2026-08-04T18:15:27.159Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pandacan"
|
||||
version = "0.0.10"
|
||||
source = { git = "https://github.com/commaai/panda.git?rev=master#dd8a5b3df77706337a11555377e7180c5adc8726" }
|
||||
dependencies = [
|
||||
{ name = "libusb-package" },
|
||||
{ name = "libusb1" },
|
||||
{ name = "opendbc" },
|
||||
{ name = "spidev", marker = "sys_platform == 'linux'" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "paramiko"
|
||||
version = "5.0.0"
|
||||
@@ -1050,6 +1121,20 @@ wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/dd/b8/d2d6d731733f51684bbf76bf34dab3b70a9148e8f2cef2bb544fccec681a/qrcode-8.2-py3-none-any.whl", hash = "sha256:16e64e0716c14960108e85d853062c9e8bba5ca8252c0b4d0231b9df4060ff4f", size = 45986, upload-time = "2025-05-01T15:44:22.781Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rednose"
|
||||
version = "0.0.1"
|
||||
source = { git = "https://github.com/commaai/rednose.git?rev=master#1520e8e9d19bdbe3016588ef506bb4a23cf02d02" }
|
||||
dependencies = [
|
||||
{ name = "cffi" },
|
||||
{ name = "comma-deps-eigen" },
|
||||
{ name = "cython" },
|
||||
{ name = "numpy" },
|
||||
{ name = "scons" },
|
||||
{ name = "setuptools" },
|
||||
{ name = "sympy" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "requests"
|
||||
version = "2.34.2"
|
||||
@@ -1202,6 +1287,31 @@ wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695", size = 24521, upload-time = "2023-09-30T13:58:03.53Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "sympy"
|
||||
version = "1.14.0"
|
||||
source = { registry = "https://pypi.org/simple" }
|
||||
dependencies = [
|
||||
{ name = "mpmath" },
|
||||
]
|
||||
sdist = { url = "https://files.pythonhosted.org/packages/83/d3/803453b36afefb7c2bb238361cd4ae6125a569b4db67cd9e79846ba2d68c/sympy-1.14.0.tar.gz", hash = "sha256:d3d3fe8df1e5a0b42f0e7bdf50541697dbe7d23746e894990c030e2b05e72517", size = 7793921, upload-time = "2025-04-27T18:05:01.611Z" }
|
||||
wheels = [
|
||||
{ url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl", hash = "sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5", size = 6299353, upload-time = "2025-04-27T18:04:59.103Z" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "teleoprtc"
|
||||
version = "1.0.1"
|
||||
source = { git = "https://github.com/commaai/teleoprtc.git?rev=master#3f0b03a1d1c4887a0e76bc55888bc1a2eec29802" }
|
||||
dependencies = [
|
||||
{ name = "libdatachannel-py" },
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tinygrad"
|
||||
version = "0.13.0"
|
||||
source = { git = "https://github.com/tinygrad/tinygrad.git?rev=master#7b6d2ddf23b02a3e4b625432e1900525016da8cc" }
|
||||
|
||||
[[package]]
|
||||
name = "tinymesa"
|
||||
version = "25.2.7.2"
|
||||
|
||||
Reference in New Issue
Block a user