From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id MJNYL0INTGQB8gAASxT56A (envelope-from ) for ; Fri, 28 Apr 2023 20:15:30 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id EFhAL0INTGQmqAAAauVa8A (envelope-from ) for ; Fri, 28 Apr 2023 20:15:30 +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 85B6D40193 for ; Fri, 28 Apr 2023 20:15:30 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1psRSj-0002FH-4C; Fri, 28 Apr 2023 13:00:49 -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 1psRSh-0002ET-46 for guix-devel@gnu.org; Fri, 28 Apr 2023 13:00:47 -0400 Received: from mail-wm1-x330.google.com ([2a00:1450:4864:20::330]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1psRSe-0007N3-8F for guix-devel@gnu.org; Fri, 28 Apr 2023 13:00:45 -0400 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-3f3284dfe34so1647855e9.0 for ; Fri, 28 Apr 2023 10:00:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1682701242; x=1685293242; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id :reply-to; bh=dknsnbr+8gR9cLM83KDR5o0CW8av1OLGZUyUQSmaGa8=; b=NGXTI2KyAaNtWpq1Mgg7fcYcbnwUlb7Fla2Xfe6rZJG4ykQQgJK74FqYzBxUeouVGs TItOf/ExZUXrx5oG3SdiJYjdVl8fd3mhrvXqAxBLJSlnYT2CM+wbO7c7bbhrbM/VxASk Q6r2e3N9e788HuEwFhoZGG6C+cjW4CmfQDaoz0J4a34nJOXVABw84n93NLb1Dl5D5zTL +cy6TyNoqmjH7G+TdBSk36FIekASIw027ta5ikv4Fu2L9zp0vqu+4uS+W3vwRnzpygiL BhOAujFe//Jre66wBsqr+2vut3OaEBEx/WkNXlHiwFpZXYc22qnJyTdI3mPf8NS66I36 qTuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682701242; x=1685293242; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dknsnbr+8gR9cLM83KDR5o0CW8av1OLGZUyUQSmaGa8=; b=IAttGfJp/7uzxjSsnSHXhXWLjwrQjuJyfY4F1MzFyx8oECUMK92CDVolU1txepEAHE eS0OHeJ7EvlvQAQG8t6PyMLYoeErmOpFkoPiBiKEVP/bHjB/dVtzrbeR3HOoJt1rFvwr FE9P0jY0lhJo8yPHlTET4zSb/THBksWUKnM0rwCjdrX4a0SxmQ3fL4R5FwVgh6NSziSS n+wyVPoGRLNIqaHQCgx0/KHYvTDLryJhSAawP5ktTdkB9lH8gpLUC1glEe/cI+JrvHJe f67Og3XgMwJIgptZ0eVq+bCofO3uEdYNruRfMh+L/mO2JynA1tPzA3xT+/4EFZAseM9s 7YBw== X-Gm-Message-State: AC+VfDxFBn/34KFLEqSQP7V2nPCapz8fCnUReivFSGTujbXiAmKQv9gI N7xmLy51gq4bTAJP9anTJ8PM8DyEJFg= X-Google-Smtp-Source: ACHHUZ6bnBnw7Bo2anOXlbGA6bareMMbJKUqgrCDMF7+ufLrmQoOqY9mktMfraPOb1/ndICfHU7GAw== X-Received: by 2002:a05:600c:5409:b0:3f1:7490:e58e with SMTP id he9-20020a05600c540900b003f17490e58emr4902209wmb.2.1682701242439; Fri, 28 Apr 2023 10:00:42 -0700 (PDT) Received: from pfiuh07 ([193.48.40.241]) by smtp.gmail.com with ESMTPSA id y5-20020a1c4b05000000b003e91b9a92c9sm24790350wma.24.2023.04.28.10.00.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Apr 2023 10:00:42 -0700 (PDT) From: Simon Tournier To: Simon Josefsson , Andreas Enge Cc: guix-devel@gnu.org Subject: Re: Build dependency inflation (was: Re: Core-updates merge) In-Reply-To: <87a5ytw6nd.fsf@kaka.sjd.se> References: <87a5ytw6nd.fsf@kaka.sjd.se> Date: Fri, 28 Apr 2023 15:54:29 +0200 Message-ID: <87pm7o9koa.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=2a00:1450:4864:20::330; envelope-from=zimon.toutoune@gmail.com; helo=mail-wm1-x330.google.com X-Spam_score_int: 5 X-Spam_score: 0.5 X-Spam_bar: / X-Spam_report: (0.5 / 5.0 requ) BAYES_00=-1.9, DATE_IN_PAST_03_06=1.592, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, FREEMAIL_REPLY=1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: guix-devel-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Seal: i=1; s=key1; d=yhetil.org; t=1682705730; a=rsa-sha256; cv=none; b=j1pYZzcTPV3fQjAgYzgLbJlgYt2EBNAgXO8xU1Yf3CAKoaXtNTHlFYS9l6YDi7zbBQ286M WLhZYBthSaN1YwcE6jilNhGmL/svVHWA6ByH8kB8njmwcJ5nILMlLT1DVf8GpGBp7wJEvk 08dOXPbFtrH56N3T+xQgQzZHUgqkycYA2CLt0opMbY6CX+5TXNpLwZJWV7FQjbESJNWr6G Z5ScHOzou54Ib28dW+6EbQ4ZiOLV0THn2kIQothCUYcRxFGsiDUEvQcYvZtsscBqz+o4ds 0Hh+pm6kPEPegEQAsGFQ6Oe8+PAC33aPh4xIFQZENg8EcC4FkBea0nsjzWZJRg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=NGXTI2Ky; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1682705730; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=dknsnbr+8gR9cLM83KDR5o0CW8av1OLGZUyUQSmaGa8=; b=NlAYlDn2Ir98SWF1aO4VtRmWL4NlpPsydQEiKTIznuFvQ6KzTJlxd+WR+8VdsSPgFlkEtt ZogeJJH+2pvgHG4X4AUmV+nx5Q1M6SNBE6TzOUU0kbMktxcj086SeDlXKXc7kC0OAnSwsk vU88YsVEK66yNJPxKESE6oGGZ5HTjHh5EnPFVMBOaVV7NQQYfVeYuGYyqP2fp9GRzxN81+ L/92Pdldld2lAR9RqOSq/IUmTxCYZb+KTqOAS02TX8lCOPX9vGzFZvzp8+ozU/jQwtLLnn Z41aKa7zjE4xvlJPMn957vlb3cXK8BgCFPZMbmt1cJMtOxpBOuofMKs0KO7PEQ== X-Migadu-Scanner: scn1.migadu.com Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=NGXTI2Ky; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -6.41 X-Spam-Score: -6.41 X-Migadu-Queue-Id: 85B6D40193 X-TUID: f+P8Vhbs6Eap Hi, On jeu., 27 avril 2023 at 19:56, Simon Josefsson via "Development of GNU Gu= ix and the GNU System distribution." wrote: > Andreas Enge writes: > >> - Too much in Guix depends on too much else, which makes building things >> needlessly entangled; in particular time zone data should not be refer= red >> to by packages, but be loaded at runtime (Leo Famulari). > > This is an important open problem -- is there any way to attack this > problem in a systematic way? I guess it is hard to understand which > packages ends up depending on what since it is a large graph with long > cycles, and also to understand which build depencies are essential and > which are superficial, and thus consequently challenging to know where > to start working to reduce build dependencies? Hum, I am not to get the =E2=80=9Clarge graph with long cycles=E2=80=9D par= t. Since the graph for packages is a DAG. Well, =E2=80=9Cguix graph=E2=80=9D and =E2=80=9Cguix graph --path=E2=80=9D = help to spot the chain of dependencies between two packages that seem unrelated. >From my point of view, we should increase the tooling to inspect these graphs. Other said, add feature to =E2=80=9Cguix graph=E2=80=9D. At some point, it could be nice to have =E2=80=9Cguile-igraph=E2=80=9D a Gu= ile binding of igraph [1]. Last, back on December [2], I started to apply some well-known network algorithm (link analysis, centrality measure, pagerank, etc.) to the graph of packages. From my point of view, these kind of tools could be very helpful to spot out the packages that need some specific care. Maybe it would fit a project for a student. ;-) 1: https://igraph.org/ 2: https://yhetil.org/guix/874ju4qyd4.fsf@gmail.com Some stats about the graph of dependencies Fri, 09 Dec 2022 18:29:43 +0100 id:874ju4qyd4.fsf@gmail.com Cheers, simon