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 ms9.migadu.com with LMTPS id sE5+FAzYP2SfHwAASxT56A (envelope-from ) for ; Wed, 19 Apr 2023 14:01:16 +0200 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 yCUcFAzYP2QYPQEAauVa8A (envelope-from ) for ; Wed, 19 Apr 2023 14:01:16 +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 744A0395A2 for ; Wed, 19 Apr 2023 14:01:15 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pp6UB-0007jL-9K; Wed, 19 Apr 2023 08:00:31 -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 1pp6UA-0007il-2P for guix-devel@gnu.org; Wed, 19 Apr 2023 08:00:30 -0400 Received: from sender4-of-o50.zoho.com ([136.143.188.50]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pp6U8-0001Dp-6f for guix-devel@gnu.org; Wed, 19 Apr 2023 08:00:29 -0400 ARC-Seal: i=1; a=rsa-sha256; t=1681905623; cv=none; d=zohomail.com; s=zohoarc; b=dfYZ80NO3nMzVhwLW9khdbkgDBOnTRhrJpRsgVT8Ebg9+wY9gaXNMfCHD6vU9h6TY++gg7Rhzw1cLuv8FvRTKM5Y0W5CCpoFZfRhALdc+SaUxb1+TQEDrwMa+tr3zC5bO5ua5Z5V04d14mVlNH+tUGdEassQ3Bkr5b9N0/QCHXA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1681905623; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=0E/8H716EdqbqrjyHWm1LNLp4Bh5k+qXc69k3BXepLc=; b=c5tQPoUEQjyVcKt+NU0kVqu2RcUPHghkVvogxblZTQhnFhXId/dqm6mlfziaf5dfgGEKnMc0KvktyLCjyS6wpKZYzgMgP6k8OkmZ6dlSqAjEIoFsRa5KEclV61xmvWdhIY46MLQD8aC/O1A7wk3XMyInzQ4HHrZiS/ULqiNlPSM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1681905623; s=zoho; d=elephly.net; i=rekado@elephly.net; h=References:From:From:To:To:Cc:Cc:Subject:Subject:Date:Date:In-reply-to:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=0E/8H716EdqbqrjyHWm1LNLp4Bh5k+qXc69k3BXepLc=; b=L0pZS+IqANkfeU0bjsjKdxUUrrqVtv09W78WD0+5VDbmEEbOnjlRu780VpyKFmtD 7Qc6bSXLMBV3ZRZWfhhdUFQViy4+zeY4Avq11olmn3WitCMG7aK+kMHH/3XXiPs9BlF opqFPINmq1MAozHzgOvQY5O2W50UwLw3ImPQY2Jw= Received: from localhost (i5E862D7D.versanet.de [94.134.45.125]) by mx.zohomail.com with SMTPS id 1681905621443540.9485825582955; Wed, 19 Apr 2023 05:00:21 -0700 (PDT) References: <86fs8wjm1y.fsf@gmail.com> <87mt34qlmk.fsf@nicolasgoaziou.fr> <87o7nkqkap.fsf@elephly.net> <87ildsqekb.fsf@nicolasgoaziou.fr> User-agent: mu4e 1.10.2; emacs 28.2 From: Ricardo Wurmus To: Nicolas Goaziou Cc: Simon Tournier , Guix Devel Subject: Re: Question about packaging TexLive Date: Wed, 19 Apr 2023 13:56:40 +0200 In-reply-to: <87ildsqekb.fsf@nicolasgoaziou.fr> Message-ID: <877cu8qdym.fsf@elephly.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-ZohoMailClient: External Received-SPF: pass client-ip=136.143.188.50; envelope-from=rekado@elephly.net; helo=sender4-of-o50.zoho.com 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, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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=2; s=key1; d=yhetil.org; t=1681905675; a=rsa-sha256; cv=pass; b=YSz2vbHUECShgaXdx76pYWpf9ZlOGvw46SINEMIbKjz3GYtRwFi1MXADXKTTY8BY5BlISj qIN8phl3iBJXzsWg0m/XTI4r4u+CllBvV8pUQYQMvEqvZxrot19yVTpYepCFct20AxjwG8 HCDq5ifLEZW4n1U5+qhyvWy5hG1HDZQu3COs5dyd/Chv0+AYiTU6p4GS1NJH0BmIucn1e4 JA2B4ftRDI7S/FcrrZ4KOzcn0K2s4ygLm1dS1BxNTyhnLS4C6SOwLW9PWzdLEaT6toOjUy 1YaJJePP1XklQXJ1EnSDCJq/nOMkPl6rUgynxRxUK/5X5LlcyPUqaVo8Tj0JqQ== ARC-Authentication-Results: i=2; aspmx1.migadu.com; dkim=pass header.d=elephly.net header.s=zoho header.b=L0pZS+Iq; dmarc=none; arc=pass ("zohomail.com:s=zohoarc:i=1"); 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=2; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1681905675; 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=0E/8H716EdqbqrjyHWm1LNLp4Bh5k+qXc69k3BXepLc=; b=RRVbOHzCoAzxkklE5r95zLPWLSY6WhItkpuYqJYSno4uRFWn4Trxx1aAYYkl/czA9T7N9q J05OPPYlVd9CpjUW6RcQRymlOeUChagRXicgyZZd9GS4wN6mcb/NEVtGjJgqCgahTJJyK7 mX4F8gFdP+rwXtaEuetzbSehOopoUtnKf9p+8rcmO/SfIFvUCwqwhFZQfSmnS0bDdFW5m2 fPQtCjsswp9JXxx5AwpIcSrDY4q9+tZFHMihNcSq8ITbPXr62SP4ghLyMtxVeRaDqXqzHF jrdVDy9OoD1LGRc1UZL+P0kWNLbqNI1cmvs7szpQAvZLez6pmU3Mu0wB5EqWTg== X-Migadu-Scanner: scn1.migadu.com X-Migadu-Spam-Score: -6.90 X-Spam-Score: -6.90 X-Migadu-Queue-Id: 744A0395A2 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=elephly.net header.s=zoho header.b=L0pZS+Iq; dmarc=none; arc=pass ("zohomail.com:s=zohoarc:i=1"); 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-TUID: m/WPsKFeZk76 Nicolas Goaziou writes: >>> 2. Some affected packages are also missing propagated inputs (e.g., >>> texlive-latex-graphics for texlive-latex-fncychap); >> >> Correct. The old importer didn=E2=80=99t know about dependencies. The = newer >> importer uses tlpdb to get a list of dependencies. > > AFAIU, this is not sufficient. All dependencies do not appear in > "texlive.tlpbd". For example, `texlive-halloweenmath' has no "depend" > entry in the tlpbd. Yet, it requires both texlive-amsmath and > texlive-pict2e (i.e., "halloweenmath.sty" contains > "\RequirePackage{amsmath,pict2e}"). > > So, unless I'm mistaken, most dependencies have to be resolved manually. Yes. My point was that tlpdb contains some dependency information, which is completely absent in those packages produced with the earlier importer. We should change the importer to scan the directory for RequirePackage and the like. >> All packages must be checked for completeness. All new packages I=E2=80= =99ve >> added have been checked. All old packages must be checked before >> renaming them. The way to check them is to build them and then check >> the outputs with something like this: >> >> --8<---------------cut here---------------start------------->8--- >> ,use (guix import texlive) >> ,pp (files-differ? "/gnu/store/=E2=80=A6-texlive-amsfonts-fixed-59745/sh= are/" "amsfonts") >> --8<---------------cut here---------------end--------------->8--- >> >> This compares outputs with tlpdb. > > I use this valuable tool, but this is somewhat tedious. Could this > become a test in the linter? I don=E2=80=99t see why it could not. >> Note that simple-texlive-package is far from perfect. We have many >> tex packages that require excessive workarounds to ensure that files end >> up in the correct location and that superfluous files are removed. >> simple-texlive-package should eventually take care of all of this, but I >> haven=E2=80=99t been able to make time to work on it. > > We may need to update more Texlive packages to get a better grasp of the > changes required in `simple-texlive-packages'. A good example for the required changes is texlive-totpages or texlive-soulutf8. All these overrides to #:tex-directory and #:phases are pretty common. We usually need to add a chdir phase to change directories to the sources and override the copy-files phase, because otherwise it copies garbage. This is the least I=E2=80=99d expect simple-texlive-packages to take care o= f. --=20 Ricardo