From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Tue, 31 Mar 2026 10:10:30 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-qv1-f63.google.com (mail-qv1-f63.google.com [209.85.219.63]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 62V8AT0g011154 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 31 Mar 2026 10:10:29 +0200 Received: by mail-qv1-f63.google.com with SMTP id 6a1803df08f44-89cc1d6dbe4sf37320536d6.3 for ; Tue, 31 Mar 2026 01:10:29 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1774944623; cv=pass; d=google.com; s=arc-20240605; b=bEXHJ1gG/+C1OlK4RAm5AizesmqIdfguhP6ZZXg5fq5EnoJm1c4mvsCJsFN7mdKWSm vOOXZaKDWqO4RwXOzZJPtLIjcHbo77DIkHrVjWvXZi1dkPCHybVlwdjgZPGYcMI3KNrL VW76FKJkRqpt/xfej3E17exyygkzLZ3RlmjCtBtk5wY9/EJzOCABpmk/1JN6LRfP2dOz nma4iz2FlnJx6pb33U77srt9ql8sgLZAB6HKix50Jm6u2kCboyqzj3fgeOKqlzsfxmJ7 DQps0DWzIcTkUQ39yc0qe1FF04VmqGv0MIvrJ33iKiKyc/nOOm0Cd3TgOY+1gF6vZkiA YTIg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=iD9YG11neghaW/wMBoRsmBqTDjmzV2Ln0UDRO4nT6vw=; fh=JP3MtJKf79iQMZzlT/aD6S4eQ5jaWvFLJrxeVlpzE+Y=; b=beejFqA5kwmhb7O1TcyRyGOdaRAkSnpp3beT2uDVhwCqxyi+ciwAumMC2tpBrfrOkE LVI3bbJz48IG87VVJw3DFCL7JG+3itLL57FyTdTMwCz++w5bovGGJLH+EXrA+N6nLWwI XcAhBew+h5fxvg8lt52r/kIaE0KZSXNjLrhGQX8dFfMfqDqazqCGA8qE5vfguJRxy0wQ x3WdPoedd6cpBN3CkOQuwPNGOJRHaks6ZJawFySRSPvW3JyHEZuo9ZasSsYLtv+0tN+W zjHl8p0R2hREte0nCaZTK6t9X5s/7SP5BOYInZCLw/+DNIVjmzUHNdH73ahZQ4HNQAuU BXtQ==; darn=ilbers.de ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=XYv2raMl; spf=pass (google.com: domain of fm-51332-20260331081020835221066b00020700-fvrxim@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-51332-20260331081020835221066b00020700-fVRXIm@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20251104; t=1774944623; x=1775549423; darn=ilbers.de; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:to:from :from:to:cc:subject:date:message-id:reply-to; bh=iD9YG11neghaW/wMBoRsmBqTDjmzV2Ln0UDRO4nT6vw=; b=GF7l7hNtZw6zGm8KYqG2ElN2XoJ/pdWtJ5kxCvkvlHu7vGvGZL8qPd0zbvSXTVAoUl AulaMpmMAkf2t4l+7ZOazLHqqLlP7kCY+yQqV8/jMckklY94QGvfoYWOxNYck9YOB9JU 7r7SEuNF2OdA9mVPVxJX0bxd9SpI+vCWA3BgtFDIwJWVuAC9xiDguPpve/FZ1LCHoRkT HtSg3o2QwiRNqviyKzw7SIjUHKkW3Upy1TckNCj8BmlkzCoOxCgOnlTjUV0aqjR4XL93 EmFRJpCSx0n43DB3PkQHOcMt7drD2aaAmQa2rNF4QfBCujaf3ujJBrczXM4wUZGQZswT h63Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774944623; x=1775549423; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:to:from :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=iD9YG11neghaW/wMBoRsmBqTDjmzV2Ln0UDRO4nT6vw=; b=VJky8pnRd/705gsh26xBQuHfrpQmBdbxm9of9wupv2Vv5lWU3nCwFjtnIz9AwTvf4R whlxOyzBxal+1noteGgKITjuqXDIdFMKnPcdrZCR5XK0SNpPZCNU2Z+Mv2LFWdZ4yWnW GPCk+kiYqdVbLSOyq6RIIqLlHV+IgP8QQ3sowvV2sFWGqpRFqVQM0Ugm3rwRnzrzOVpT +5NM/y4EWhl+C3fCzzucJGBj9FlLHlspFCD2dEywXt8EcWlHvcdg/O4r3Xa4GnKTJ9mz M5pS+hZxoyCulHEV3IIcBaQdQ35CG25+ec3ePp89bN69If2JqfWUJQjarAvxJLJFYlI2 6dig== X-Forwarded-Encrypted: i=2; AJvYcCXECtHQtd/QnX1z6BcZZWJVk2EKOvSciLkVDHAd1KxPmgXehqePHuNYmqJdk+LVwkKVAZb6@ilbers.de X-Gm-Message-State: AOJu0YxgooH4VZy1Q+6rM+XLQlCKuz8drEb7Tlx4BnFutCzHCeedhW16 8G9niAIBNwbRACH3GKnWERF/47uRGar7Ob2qDbJ4OMhZv0QasKeB0Qy2 X-Received: by 2002:a05:6214:1bcd:b0:89c:618b:582c with SMTP id 6a1803df08f44-89ce8d3a3e1mr225853616d6.16.1774944623418; Tue, 31 Mar 2026 01:10:23 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="AYAyTiLcmb6pRsAWMpgwJT0BY5yWn349z/zstalLCheVtRbsNA==" Received: by 2002:ad4:5cca:0:b0:89a:1a93:3389 with SMTP id 6a1803df08f44-89cd80cb955ls144098746d6.2.-pod-prod-06-us; Tue, 31 Mar 2026 01:10:22 -0700 (PDT) X-Received: by 2002:a05:620a:448b:b0:8c9:fb69:e708 with SMTP id af79cd13be357-8d01c60d494mr1935884485a.25.1774944622539; Tue, 31 Mar 2026 01:10:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1774944622; cv=none; d=google.com; s=arc-20240605; b=K8aLdY/tIBo8SvPjG4g43bOOlFGsc2XNviAZlGXzS9iHRxCnAmW+KuaOA//PbW1DsA BjssSRNk9jHY5tQey2Mb6dc9V659irxGPeKGNSdGCc1NnduQEArXWE5BvoDOvzpCv11y +xF0Nvy7dPlLQhdX4ZAal9lw7PxiaA00UwMR9HAp93PSsrfrPeqUptFiRdN/yDdrm3Sx /+3NiQgVDUUQ5W5WFl4H84OHm4x21odnLNvPTlzwmC2Zr2hn1+r83+uxNKmrAbZF2D3C 0yvaYSD80EV6gpekRbeLPJsU0bmDAhwb3KhSEZy5qfLOzJZ2GLQDSB9S7cQwXE7PrL7L inbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:to:from:dkim-signature; bh=pOR+GKf+K3N/ERQy1HrX1vepcWFz7hM2K1M8dpquE0c=; fh=7tclEdh7YbwSQowgJ6LNq720O7H5HTEaqj22NJWRE2E=; b=Uq+0Jl5KqEETz0QQ2edqHg1vNlDDBZZ6olvcCdJPaFJ0x8MLTzs3qL/yBS9cRs3cBl 1/18wyJZYczD224OKVTGtCsYJV8AL8mcMqKr19IQzZeIi8QMq0FxgQbKaBXS018kN+9Y 169WTWrCRttGRoMrVblY/PBI4bA5T9rGurg+81pXrvPUBZg4pBmMR9DGFUxf/u/lDYUi OrmiKrVlNVT6kSDeJjRGEWZdOL/t/2hxYMRh2pYoLvTptuCu40/xOhifHcwT/SYF44eu 3MKGfxQrjdd8chrBrRiHAwckyQr48jlaolLbjyjfERJDIiLhlN4IR7avEGhNH8GKbZ0C DNBg==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=XYv2raMl; spf=pass (google.com: domain of fm-51332-20260331081020835221066b00020700-fvrxim@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-51332-20260331081020835221066b00020700-fVRXIm@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-225.siemens.flowmailer.net (mta-65-225.siemens.flowmailer.net. [185.136.65.225]) by gmr-mx.google.com with ESMTPS id af79cd13be357-8d027f28d3bsi30058885a.2.2026.03.31.01.10.22 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 31 Mar 2026 01:10:22 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-51332-20260331081020835221066b00020700-fvrxim@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) client-ip=185.136.65.225; Received: by mta-65-225.siemens.flowmailer.net with ESMTPSA id 20260331081020835221066b00020700 for ; Tue, 31 Mar 2026 10:10:20 +0200 From: "'Quirin Gylstorff' via isar-users" To: isar-users@googlegroups.com Subject: [PATCH v2 3/3] user_manual: add rust section Date: Tue, 31 Mar 2026 10:10:06 +0200 Message-ID: <20260331081019.32111-4-Quirin.Gylstorff@siemens.com> In-Reply-To: <20260331081019.32111-1-Quirin.Gylstorff@siemens.com> References: <20260331081019.32111-1-Quirin.Gylstorff@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-51332:519-21489:flowmailer X-Original-Sender: quirin.gylstorff@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=XYv2raMl; spf=pass (google.com: domain of fm-51332-20260331081020835221066b00020700-fvrxim@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-51332-20260331081020835221066b00020700-fVRXIm@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Quirin Gylstorff Reply-To: Quirin Gylstorff Content-Type: text/plain; charset="UTF-8" Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: 19ZUbyOxJog5 From: Quirin Gylstorff Signed-off-by: Quirin Gylstorff --- doc/user_manual.md | 68 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/doc/user_manual.md b/doc/user_manual.md index 7520854b..79580702 100644 --- a/doc/user_manual.md +++ b/doc/user_manual.md @@ -20,6 +20,7 @@ Copyright (C) 2016-2019, ilbers GmbH - [Customize and configure image](#customize-and-configure-image) - [Create a Custom Image Recipe](#create-a-custom-image-recipe) - [Add a Custom Application](#add-a-custom-application) + - [Rust in Isar Builds](#rust-in-isar-builds) - [Build statistics collection](#build-statistics-collection) - [Isar Cross-compilation](#isar-cross-compilation) - [Examining and debugging package generation inside their schroot rootfs](#examining-and-debugging-package-generation-inside-their-schroot-rootfs) @@ -1039,6 +1040,73 @@ be installed via `IMAGE_INSTALL`. Have a look at `prebuilt-deb`. --- +## Rust in Isar Builds + +This is a collection of recipes and links on how to +package rust crates. + +This document takes most of its input from https://rust-team.pages.debian.net/book +which contains the practices of the Debian rust team. + +### Crates on crates.io + +We provide a generator in `scripts/generate_cargo_crate.sh` which +generates the scaffold for these crates. This follows more or less +the approach of Debian with https://salsa.debian.org/rust-team/debcargo-conf. + +The user steps necessary are the following: + +1. Generate the package by calling: +`scripts/generate_cargo_crate.sh [CRATE_VERSION]`. + +2. Patch to build with the current Debian release, e.g. relax the dependencies +in `Cargo.toml` + + +### Crates not on crates.io + +There is currently no generator and it is recommended to follow the traditional +packaging approach, see also https://rust-team.pages.debian.net/book/process-workspace.html#general-setup. + +A working rules file could look like this: +``` +#!/usr/bin/make -f + +export DEB_BUILD_MAINT_OPTIONS = hardening=+all +DPKG_EXPORT_BUILDFLAGS = 1 +include /usr/share/dpkg/default.mk +include /usr/share/rustc/architecture.mk +export DEB_HOST_RUST_TYPE +export PATH:=/usr/share/cargo/bin:$(PATH) +export CARGO=/usr/share/cargo/bin/cargo +export CARGO_HOME=$(CURDIR)/debian/cargo_home +export CARGO_REGISTRY=$(CURDIR)/debian/cargo_registry +export DEB_CARGO_CRATE=$(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM) + +%: + dh $@ --buildsystem=cargo + +execute_after_dh_auto_clean: + $(CARGO) clean + rm -rf $(CARGO_HOME) + rm -rf $(CARGO_REGISTRY) + rm -f debian/cargo-checksum.json + +execute_before_dh_auto_configure: + $(CARGO) prepare-debian $(CARGO_REGISTRY) --link-from-system + rm -f Cargo.lock + touch debian/cargo-checksum.json + +``` +This example works for a cargo application and cannot be reused by other components +as the file `debian/cargo-checksum.json` is empty. + +An example for the initial cargo crate can be found at `meta-isar/recipes-app/rust-hello-isar/`. + +Check which packages are already part of Debian by using the tool `cargo-debstatus`. + +--- + ## Build statistics collection While isar is building the system, build statistics is collected in -- 2.53.0 -- You received this message because you are subscribed to the Google Groups "isar-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/isar-users/20260331081019.32111-4-Quirin.Gylstorff%40siemens.com.