mirror of
https://github.com/commaai/agnos-builder.git
synced 2026-08-20 23:53:47 +08:00
4a924daa5a
* Ubuntu 24.04 (#188) * separate out qtwayland5 compilation * ubuntu 22.04 * temp build system image * remove bionic deps * temp packages update * update armhf packages * back to libstdc++6 * replaced remove dqt5-default meta package with actual depss * fix for build libqmi crashing with /usr/bin/env: 'python': No such file or directory * mapbox-gl-native gcc11 fix * openpilot_dependencies.sh change * ubuntu-base 24.04 daily current * apt install meson because PEP 668 * temp g++-11 for mapbox-gl-native * bump capnproto to 1.0.2 * temp build only agnos-compiler-mapbox-gl-native * Fixes for compiling mapbox-gl-native * Fixes for compiling ffmpeg * Build main system image again * pyopencl from git since no 2023.1.5 release since https://github.com/inducer/pyopencl/issues/705 * Try to fix checkinstall - no success * apt capnproto & ffmpeg since can't figure out issue with checkinstall * Commented removed services disable * Ubuntu 24.04 currently has arm-none-eabi/12.2.1 but just use wildcard to go to first folder * pyclean is missing ?! * ubuntu-latest in tests workflow * Updated README * Reverted internal/package_ota.py changes * rebuilt kernel * poetry.lock update * Simplified build_system pipeline * headers for capnproto * Fix typo * Fix for checkinstall * Reverted apt capnproto & ffmpeg * Some cleaning in Dockerfile * 24.04 libwayland-client * libffi6:armhf deb file * Updated qtwayland * Revert "libffi6:armhf deb file" This reverts commitbb9cb5da95. * libffi.so.6.0.4 * qt5-qmake qtbase5-dev qtbase5-dev-tools already in qt5-default * Removed qtwayland old files * checkinstall temp fix * QStandardPaths: wrong permissions on runtime directory /var/tmp/weston, 0770 instead of 0700 * temp permissions fix makes loading build spinner show * temp build optimization * 24.04 new libs * build kernel don't use tools on aarch64/arm64 * updated boot image and ko files * cleaning * switch to release 24.04 * wip - downgrade qt and libwayland * polkitd-pkla package to support polkit *.pkla * fixed issue with old qt needing libssl 1.1.1f * remove /.dockerenv file * more cleaning --------- Co-authored-by: Justin Newberry <justin@comma.ai> Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com> * Ubuntu 24.04 branch fixes (#235) * bump version * /lib64 is now UsrMerged * latest pip poetry; poetry.lock update --------- Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com> * revert README * [upload] * disable failing nvmf-autoconnect.service * disable failing networking.service * [upload] * no replacement for ondemand.service * snapd.service is in snapd package we don't install * nfs is using rpc-pipefs-generator now, when used * checkinstall is still not fixed so remove TODO * updated comment about usr merged lib64 * added checkinstall bug link * removed not used libffi.so.6 and libwayland-client.so.0 * cleaned compile-qtwayland5.sh and removed 5.15 patch * removed unused qt-comma 5.15 deb * cleaned up custom debs for qt and libwayland and added a README * fixed typo [upload] * change version * build-libwayland-deb.sh * build-qt-deb.sh * cleaned README * [upload] * fix libdl.so qtwayland build [upload] * rebuild debs * update libdl path [upload] * added missing systemd-resolved * ping capability * disable some systemd services * etc/resolv.conf link should not be needed * Revert "etc/resolv.conf link should not be needed" This reverts commitb627615a9e. * Revert "ping capability" This reverts commit812ca357cf. * set ping capability outside of container * disable systemd services: console-setup and sfsconfig Co-authored-by: Robin Reckmann <robin.reckmann@gmail.com> * disabled more systemd services * bump version [upload] * update version --------- Co-authored-by: Justin Newberry <justin@comma.ai> Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com> Co-authored-by: Robin Reckmann <robin.reckmann@gmail.com>
# Ubuntu 24.04 + "old" weston The following need to work together in Ubuntu 24.04 (noble): - "old" weston - libwayland - qtwayland - qt The "old" weston is built with: - libwayland-dev_1.9.0-1 - libwayland-server_1.9.0-1 - libwayland-client_1.9.0-1 - libwayland-cursor_1.9.0-1 These are roughly from Xenial (16.04 - https://launchpad.net/ubuntu/xenial/arm64/libwayland-dev/1.9.0-1). In Ubuntu 20.04 (focal) even if libwayland is 1.18.0-1, the protocol between the server (1.9.0-1) and client (1.18.0-1) was still compatible. Unfortunately, this is not the case anymore in Ubuntu 24.04 (noble), where libwayland 1.22.0 is not compatible anymore with 1.9.0. Because of this: - libwayland-*_1.9.0-1 packages can't be installed anymore from noble, but a custom deb has been built (libwayland-1.9.0-1.deb) - this includes all libwayland packages in one package - libwayland has a dependency (libffi6) - libwayland-1.9.0-1.deb can be rebuilt with `build-libwayland-deb.sh` Also, Qt 5.15 from Ubuntu 24.04 (noble) doesn't compile with these old dependencies, 5.12 being the last major being able to be compiled, so: - a custom qt-5.12.8.deb has been built, since qt from focal has a lot of dependencies not existing in Ubuntu 24.04 (noble) - qt has two non-qt related dependencies (libicu66, libssl1.1) - qt-5.12.8.deb can be rebuilt with `build-qt-deb.sh` The dependencies for the two custom debs can be downloaded from Launchpad: ``` curl -LO https://launchpad.net/ubuntu/+archive/primary/+files/libffi6_3.2.1-8_arm64.deb curl -LO https://launchpad.net/ubuntu/+archive/primary/+files/libicu66_66.1-2ubuntu2.1_arm64.deb curl -LO https://launchpad.net/ubuntu/+archive/primary/+files/libssl1.1_1.1.1f-1ubuntu2.22_arm64.deb ``` \* libffi6_armhf is also needed, but already exits in libs32 # When updating weston & removing custom debs After removing qt-5.12.8.deb add these back: ``` libqt5opengl5-dev \ libqt5sql5-sqlite \ libqt5svg5-dev \ libqt5multimedia5-plugins \ qml-module-qtquick2 \ qtbase5-dev \ qtchooser \ qt5-qmake \ qtbase5-dev-tools \ qtbase5-private-dev \ qtdeclarative5-dev \ qtdeclarative5-private-dev \ qtlocation5-dev \ qtmultimedia5-dev \ qtpositioning5-dev \ qtwayland5 \ ``` In case of uncertainty, qt5-default was a metapackage for: ``` qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools ``` More info: https://packages.ubuntu.com/focal/qt5-default After removing libwayland-1.9.0-1.deb add these back: ``` libwayland-client0:armhf \ libwayland-cursor0:armhf \ libwayland-server0:armhf \ libwayland-dev \ ```