Download raw body.
NEW: devel/corrosion and graphics/cxx-rust-cssparser (new approch without devel/cxxbridge-cmd)
NEW: devel/corrosion and graphics/cxx-rust-cssparser (new approch without devel/cxxbridge-cmd
NEW: devel/corrosion and graphics/cxx-rust-cssparser (new approch without devel/cxxbridge-cmd
På tirsdag 23. juni 2026 kl. 19:20, skrev Rafael Sadowski <rafael@sizeofvoid.org>: > On Tue Jun 23, 2026 at 04:28:04PM +0200, Rafael Sadowski wrote: > > XXX: If you tried the approach before, please remove devel/cxxbridge-cmd > > > > Please find a new approach to make rust and cmake work together with > > devel/corrosion. The new approach leaves devel/corrosion as it is and > > does all the work in the consumer port. For graphics/cxx-rust-cssparser > > it looks like this (I also tested it with another port): > > > > 1. We ship our own Cargo.lock for cxxbridge-cmd so the build resolves > > against the modcargo vendored crates instead of reaching out to > > crates.io. > > 1.1. We provide a crates.inc that lists all crates, both for > > MODCARGO_CARGOTOML and for the cxxbridge-cmd version. > > > > 2. We replace Cargo.lock, so we drop its entry from > > .cargo-checksum.json, because otherwise cargo's integrity check fails > > the --locked build. > > > > corrosion builds cxxbridge-cmd during the build step, but everything it > > needs is already present in MODCARGO_VENDOR_DIR. > > > > If this is OK for everyone, I would like to ask for OKs to import it. > > > > I tested this with the KDE Plasma 6.7 update at runtime. > > > > Here is the base idea: > > > // Uninstall the packages # pkg_delete -Dsnap -cc cxxbridge-cmd cxx-rust-cssparser corrosion // Remove the old revisions $ cd /usr/ports/devel/ && rm -Rv corrosion cxx-rust-cssparser/ cxxbridge-cmd // Copy ark extracted folder/files to my local cvs in /usr/ports $ cd /usr/ && cp -Rv /tmp/corrosion_and_cxx-rust-cssparser/* ports/ // Clean old tgz and pobj/* for corrosion and rebuild and do test/checks $ cd /usr/ports/devel/corrosion/ && make clean=all clean && make clean build package port-lib-depends-check test check-shlib-syms 91% tests passed, 9 tests failed out of 102 Total Test time (real) = 1098.70 sec The following tests did not run: 59 - rustup_proxy_build (Disabled) 60 - rustup_proxy_cleanup (Disabled) The following tests FAILED: 1 - config_discovery_build (Failed) 2 - config_discovery_run_config_discovery (Not Run) 4 - config_discovery_run_cargo_clean (Not Run) 30 - custom_target_build (Failed) 31 - custom_target_run_test-exe (Not Run) 32 - custom_target_run_rust-bin (Not Run) 49 - install_lib_run_main-shared (Subprocess killed) 63 - hostbuild_build (Failed) 64 - hostbuild_run_rust-host-program (Not Run) -- // No complaints from either checks. Ran make test twice, same results // other than time. // Install built corrosion # TRUSTED_PKG_PATH=/usr/ports/packages/amd64/all/ pkg_add -Dsnap corrosion corrosion-0.6.1: ok -- // Clean old tgz and pobj/* for cxx-rust-cssparser and rebuild and do // test/checks $ cd /usr/ports/graphics/cxx-rust-cssparser/ && make clean=all clean && make clean build package test port-lib-depends-check check-shlib-syms 100% tests passed, 0 tests failed out of 2 Total Test time (real) = 419.69 sec /usr/local/lib/libcxx-rust-cssparser.so.0.0 --> /usr/ports/pobj/cxx-rust-cssparser-1.0.0/fake-amd64/usr/local/lib/libcxx-rust-cssparser.so.0.0 No dynamic export changes -- // Rebuilt twice to have to make test twice. Both results same other // than time. // Install built cxx-rust-cssparser # TRUSTED_PKG_PATH=/usr/ports/packages/amd64/all/ pkg_add -Dsnap cxx-rust-cssparser cxx-rust-cssparser-1.0.0: ok > If we can trust the "archlinux required by"[1] list (We can't but it's a > good indicator), here are two of four consumers (The other one is > "kdepim-addons" which comes in the 6.7 update): > > 1: https://archlinux.org/packages/extra/any/corrosion/ > // Apply attached patch cd /usr/ports/ && patch -l -p1 -E < /tmp/corrosion_consumers.patch // Clean old tgz and pobj/* for akonadi-search and rebuild and do // test/checks $ cd /usr/ports/x11/kde-applications/akonadi-search/ && make clean=all clean && make clean build package test $ cd /usr/ports/x11/kde-applications/akonadi-search/ && make port-lib-depends-check check-shlib-syms /usr/local/lib/libKPim6AkonadiSearchCore.so.0.0 --> /usr/ports/pobj/akonadi-search-26.04.2/fake-amd64/usr/local/lib/libKPim6AkonadiSearchCore.so.0.0 No dynamic export changes /usr/local/lib/libKPim6AkonadiSearchDebug.so.0.0 --> /usr/ports/pobj/akonadi-search-26.04.2/fake-amd64/usr/local/lib/libKPim6AkonadiSearchDebug.so.0.0 No dynamic export changes /usr/local/lib/libKPim6AkonadiSearchPIM.so.0.0 --> /usr/ports/pobj/akonadi-search-26.04.2/fake-amd64/usr/local/lib/libKPim6AkonadiSearchPIM.so.0.0 No dynamic export changes /usr/local/lib/libKPim6AkonadiSearchXapian.so.0.0 --> /usr/ports/pobj/akonadi-search-26.04.2/fake-amd64/usr/local/lib/libKPim6AkonadiSearchXapian.so.0.0 No dynamic export changes -- // Update with built akonadi-search # TRUSTED_PKG_PATH=/usr/ports/packages/amd64/all/ pkg_add -Dsnap -u akonadi-search akonadi-search-26.04.2->26.04.2p0: ok // Clean old tgz and pobj/* for kdepim-addons and rebuild and do // test/checks $ cd /usr/ports/x11/kde-applications/kdepim-addons/ && make clean=all clean && make clean build package test $ cd /usr/ports/x11/kde-applications/kdepim-addons/ && make port-lib-depends-check check-shlib-syms /usr/local/lib/libKPim6AutoGenerateText.so.0.0 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libKPim6AutoGenerateText.so.0.0 No dynamic export changes /usr/local/lib/libadblockplugin.so.0.0 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libadblockplugin.so.0.0 No dynamic export changes /usr/local/lib/libakonadidatasetools.so.2.2 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libakonadidatasetools.so.2.2 No dynamic export changes /usr/local/lib/libdkimverifyconfigure.so.5.1 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libdkimverifyconfigure.so.5.1 No dynamic export changes /usr/local/lib/libexpireaccounttrashfolderconfig.so.2.1 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libexpireaccounttrashfolderconfig.so.2.1 No dynamic export changes /usr/local/lib/libfolderconfiguresettings.so.2.1 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libfolderconfiguresettings.so.2.1 No dynamic export changes /usr/local/lib/libkaddressbookmergelibprivate.so.2.0 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libkaddressbookmergelibprivate.so.2.0 No dynamic export changes /usr/local/lib/libkmailconfirmbeforedeleting.so.3.2 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libkmailconfirmbeforedeleting.so.3.2 No dynamic export changes /usr/local/lib/libkmailmarkdown.so.3.1 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libkmailmarkdown.so.3.1 No dynamic export changes /usr/local/lib/libkmailquicktextpluginprivate.so.2.0 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libkmailquicktextpluginprivate.so.2.0 No dynamic export changes /usr/local/lib/libopenurlwithconfigure.so.2.1 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libopenurlwithconfigure.so.2.1 No dynamic export changes /usr/local/lib/libshorturlpluginprivate.so.2.0 --> /usr/ports/pobj/kdepim-addons-26.04.2/fake-amd64/usr/local/lib/libshorturlpluginprivate.so.2.0 No dynamic export changes -- // Update with built kdepim-addons # TRUSTED_PKG_PATH=/usr/ports/packages/amd64/all/ pkg_add -Dsnap -u kdepim-addons kdepim-addons-26.04.2->26.04.2p0: ok This was on current/amd64 with privsep. I am not seeing any nits or grammar/spelling errors. They look fine aside from missing licences in crates.inc. I want to say the command is 'make modcargo-gen-crates-licenses' but not sure.(Saw it the top comment in the crates.inc and it looks like what I had in my missing rust notes.) Could you ask someone more knowledgeable if there are any missing steps for rust associated submissions? TLDR: They built and look fine. Please ask a rust maintainer if any steps missing. Let me know if I missed anything needed for review or have other parts needing testing for the kde-plasma 6.7.x or other updates. Hope this helped as well. Also hope you and devs are having a blast at the g2k26 hackathon in Kloosterburen, Netherlands. Hack the planet. :D Good night, yaydn 𝅘𝅥𝅮I will protect you, your sand, and your shells, coming back every year to update my spells.𝅘𝅥𝅮
NEW: devel/corrosion and graphics/cxx-rust-cssparser (new approch without devel/cxxbridge-cmd)
NEW: devel/corrosion and graphics/cxx-rust-cssparser (new approch without devel/cxxbridge-cmd
NEW: devel/corrosion and graphics/cxx-rust-cssparser (new approch without devel/cxxbridge-cmd