From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id OCPBFd1gx2PEeQEAbAwnHQ (envelope-from ) for ; Wed, 18 Jan 2023 04:00:45 +0100 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id AHCTFd1gx2O2RgEAauVa8A (envelope-from ) for ; Wed, 18 Jan 2023 04:00:45 +0100 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 2FDA321180 for ; Wed, 18 Jan 2023 03:41:56 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pHyOD-0004yi-Af; Tue, 17 Jan 2023 21:41:25 -0500 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 1pHyOC-0004yR-1f for guix-devel@gnu.org; Tue, 17 Jan 2023 21:41:24 -0500 Received: from knopi.disroot.org ([178.21.23.139]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pHyO9-0006m6-3a; Tue, 17 Jan 2023 21:41:23 -0500 Received: from localhost (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id 4357540E48; Wed, 18 Jan 2023 03:41:14 +0100 (CET) X-Virus-Scanned: SPAM Filter at disroot.org Received: from knopi.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yJeF7lBJbdhp; Wed, 18 Jan 2023 03:41:12 +0100 (CET) Message-ID: <7e2f18d8-98e6-335e-bcef-8882f9a8f336@disroot.org> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1674009672; bh=P2FzEDpoIfokLZCqtuVjgf0QANBCJyo+xDUJRtZilQg=; h=Date:Subject:To:Cc:References:From:In-Reply-To; b=cSmeH3CR5gNo/kNXwaHCWJ7jrArVM+EdlCs7A6NrZwyCgY7zNmiauoypf2hcH7ECr 82AT4XuN21SKgOqUY/YZ3Z1/NF4rMGqonsTVBnwdWL5AVqzMwnks110Q/hHcUDzoa7 becjghfCQagghXXxG3rYw/4lcUqN3H2K7djkFEKqPdR2yehwQbAxb5RvFXrp8TaQK4 Xn9Wqr1Cwoq2ghKhaPwH0WJcYyJ5hnYTK5mLXxLc9YfOamx50UbxoKXUf8Lidqt4Ht Gjs6/b8g/nUd1BCKv7Y9deA3d0/S07aNImc4wEc+GrwNN4DSdllLpz0zpX7zNIkL6j PmqqBEa35oYqQ== Date: Tue, 17 Jan 2023 21:41:09 -0500 MIME-Version: 1.0 Subject: =?UTF-8?Q?Re=3a_Packages_grow=2c_no_longer_fit_on_a_=f0=9f=92=be?= Content-Language: en-US To: =?UTF-8?Q?Ludovic_Court=c3=a8s?= , "pelzflorian (Florian Pelz)" Cc: guix-devel@gnu.org References: <87tu0s7otg.fsf@inria.fr> <87fscbravp.fsf@pelzflorian.de> <87a62hdt6c.fsf@gnu.org> From: kiasoc5 In-Reply-To: <87a62hdt6c.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=178.21.23.139; envelope-from=kiasoc5@disroot.org; helo=knopi.disroot.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham 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-Country: US X-Migadu-Flow: FLOW_IN ARC-Seal: i=1; s=key1; d=yhetil.org; t=1674009716; a=rsa-sha256; cv=none; b=Q6buXFguK9ppYfbLid+HOX3FPh7a98H4arq/qsl/Jd+4dtI0m9nbZL5qnIzKlJV/BcaT4b S5vGqGwsW/KIYNfLMl/QFWKGu6tX8jPm04r9bDN3hQOWGOSzsEsslo/B3eBWUzTkCRsSCW SsKOw8TVM8Do1Cfz4PWk6LgywohQWflh5zwO9YXOx9NFYeD4O1OdCa3VEkwcVvYkkHeUqz cQiMkII/9OT8qst1YLokaUu//8+6QDL48RPZIcx/bFB2zkpXFqMH1Y3wU21Ykq5pkdzhYJ taKvjlan40ElWd0RE/E/gDny07q14QT+64WyTmiwn7jZo6U6OlyQ1xaB4W4ugw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=disroot.org header.s=mail header.b=cSmeH3CR; dmarc=pass (policy=reject) header.from=disroot.org; 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=1674009716; 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=puj7m318VdABj3AE5p5I+CenD1jBwKALAcfVVu1j4DA=; b=liLByYWwtjSiXxKTbMbTlrFQ/ZmNBNb2mp5aF67Y0vTG/1nrWAjAwF9kSBwre8uqlnqbVu T0n1HmyZLUGuEoYRVKFORPZAN2VUeZkhrseI2DtxjWlzQBLkAGBuEKxltt3MkNWrCc3Dk6 Y+Ex6rL/wWm5Tx4DcBAV8pwp8a5S2R4wkK7Iv57ZXNn9gBzQTC2Fxo7roUl77XKxNu9l7l D7krl4OwV/eQwG8oxAkl1YVPyktFZrrvbsZvPIHl4oYZQ3Pc986joph1kHLbt/t5HVyTzq TJehzgFs+sN5ZxW7wd5vUDLOAu9RAMI017itdOwFYLT/61ylqJJHJcs+70Q7Tg== X-Spam-Score: -11.59 X-Migadu-Queue-Id: 2FDA321180 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=disroot.org header.s=mail header.b=cSmeH3CR; dmarc=pass (policy=reject) header.from=disroot.org; 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-Scanner: scn0.migadu.com X-Migadu-Spam-Score: -11.59 X-TUID: JSA9F7rlefA7 On 1/17/23 11:25, Ludovic Courtès wrote: > > There are slight increases of each and every package, and there are also > new big dependencies being pulled in for what, from a distance, doesn’t > really add functionality. > > Examples include libgccjit in Emacs and mozjs in polkit. > > In a way, that’s the “unavoidable” (?) evolution of software, and the > problem extends largely beyond Guix. > > Still, even compared to contemporary distros, we’re doing pretty bad. > Debian most likely does better, and people often cite Alpine as the > distro providing the smallest packages. Do we have figures? What can > we learn from them? What tradeoffs to they make? We can achieve smaller packages by splitting them more. Here is my guess of the amount of package splitting by some distros, from least to most: Slackware < Arch < Fedora < Debian < Alpine - Slackware I believe does not split anything, everything is included. - Arch splits packages on a case by case basis (QEMU for example) - Fedora typically splits packages into package X and package X-devel, where X contains development headers, but usually not more. - Debian splits packages more aggressively. For example libreoffice is split into 6 packages, 1 for each suite (draw, write, etc). And programs may be separated from their outputs (eg zstd and libzstd are split) - Alpine splits even more aggressively, they also split out man pages and shell completions. We may wish to utilize multiple package outputs to a greater extent. Some Guix packages already have bin, doc, and lib outputs. We could make it a policy to split this for all packages. I also wonder how much of the space is taken by debug output. Would making graft derivations substitutable help? https://lists.gnu.org/archive/html/help-guix/2022-10/msg00225.html