From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:306:2d92::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id uKZgBLedsmQDBgEASxT56A (envelope-from ) for ; Sat, 15 Jul 2023 15:23:03 +0200 Received: from aspmx1.migadu.com ([2001:41d0:306:2d92::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id +Gt1A7edsmQmOAEAG6o9tA (envelope-from ) for ; Sat, 15 Jul 2023 15:23:03 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 881F83EC7E for ; Sat, 15 Jul 2023 15:23:02 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1689427382; a=rsa-sha256; cv=none; b=dkIjUmuhpKWBlCNWN1jWEbZ55rvW5pRarYuwcBaudysrsIsk/knYvI8+aRMuqfQaNUYcVA qd1CyAJ6+3uz3+ExEpxLvqAcHWvsd6m+WfEpNLpGDsLO0Frj2gWs5IU6fvN/z1St2HzudS R1k9E0PcR2UxuEGH2ouD8zRllsI/fo/dqlQeKf6mueZqhOb+AYd2/WPoJd1l8B0XVpBQ3C 2dgdwsN5KVVS4bMT9C91MR5LC3DBvkht3CoOECMoQgJ/C15tdFx6DGzDdlAcYl+Q/Lavr1 zJQ7sd9J7Fvw4iiVzuGWC/iicgOZJsXOb0IyamiqVsuP2xeartLmPaN0rsiZjw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1689427382; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=uA3RT/m5GE8TQjANAZZkgdZ218jPxn4hoMWm/maL/Pg=; b=a3Ku+7a/yHqnNeUOrDS3l3aS9jqdA50fy2OHHTILkNxsUGCDvyDYGW7rVdTQUQFXSk/JQx s98FpAHRKwKi9kR2hquvYhd4cNnwPBZWIHaVAagVAt2RQAj2nMp9pRIqKiaG+Jwd44ktuP P+yTL6fvnFn/K4h+MjBuw7pl7kglUa654FKkTrWhiQmYHJJKq2lH4eHM7AsRkyJIxtQWgB VmyMCiG8f6F3kUf1LFV2hc/lDfpIiwcKKe5URgsXYkNsIXF3g7FbAaZLQawYbSNpGwi+ss BsdCIsB5MPzrm6zvICEhLrgL+x5503mj7LP6Psn/1VtS9Yu9xpCJVaD3yEzM+g== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qKfEL-0005lc-VE; Sat, 15 Jul 2023 09:22:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qJalQ-0005Vd-Py for help-guix@gnu.org; Wed, 12 Jul 2023 10:24:20 -0400 Received: from hera.aquilenet.fr ([185.233.100.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qJalP-0005f6-1z for help-guix@gnu.org; Wed, 12 Jul 2023 10:24:20 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id A0EC21CB4 for ; Wed, 12 Jul 2023 16:24:13 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at hera.aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id LTxdHHupvAt6 for ; Wed, 12 Jul 2023 16:24:13 +0200 (CEST) Received: from Amsterdam (unknown [37.167.249.198]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 11EF87FB for ; Wed, 12 Jul 2023 16:24:13 +0200 (CEST) Date: Wed, 12 Jul 2023 16:24:42 +0200 From: Paul Collignan To: help-guix@gnu.org Subject: Packaging a rust program with a lot of crates Message-ID: Mail-Followup-To: help-guix@gnu.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Received-SPF: pass client-ip=185.233.100.1; envelope-from=paul.collignan@aquilenet.fr; helo=hera.aquilenet.fr X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sat, 15 Jul 2023 09:22:35 -0400 X-BeenThere: help-guix@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+larch=yhetil.org@gnu.org Sender: help-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: 0.09 X-Migadu-Scanner: mx2.migadu.com X-Spam-Score: 0.09 X-Migadu-Queue-Id: 881F83EC7E X-TUID: 45WDNgsP6x2k Hi, First of all I would like to apologize if the answers to my questions are obvious. This is a first for me in many areas. First mailing list, first time I want to contribute to a free project, first time I have to write something in a programming language, first time I use git, etc. I'm not a computer scientist at all. At best you could call me a GNU/Linux end user for some time, but only to consume, never to produce. I would like to contribute a little, and for that I want to start with guix. So I discovered guix last week, and spent the last few days reading the documentation and playing with it. I would like to package a program that I use on my computer but which is not in the repositories. It turns out to be a program written in Rust, with lots of dependencies. If I were to copy/paste all of what guix import -r returns the patch would be over 3000 lines long. I would like to know what are the best practices to adopt in this case. There are simple additions, updates, and additions with inheritance. I guess I shouldn't send a patch with all of this mixed up. Should I group crates by "logical patches", say slicing by origin url (like a first patch with all related to microsoft/windows-rs), wait for that patch to be accepted, then send the next one? Or maybe I should send one patch per package update first, then one patch per package with inheritance, then one patch with all the simple additions? Or a mixture of these two proposals? Also, in this kind of case, I think that adding the program will take weeks when you're a beginner like me. Did I miss something? For example, is it possible to automate package inheritance during an update to a major version of a crate, or does it have to be done by hand? Last question, for my culture, is there a plan to "clean up" old packages and dependencies that are no longer used, or will the scm files grow indefinitely? Thanks for your help, Paul