From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: bug#27217: texlive is too big Date: Mon, 28 May 2018 14:02:54 +0200 Message-ID: <87efhwhtsh.fsf@elephly.net> References: <87tw3w7v1m.fsf@elephly.net> <871sig90eh.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:33444) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fNGsh-0002Ui-1D for bug-guix@gnu.org; Mon, 28 May 2018 08:04:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fNGsc-0002zR-Pv for bug-guix@gnu.org; Mon, 28 May 2018 08:04:07 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:43834) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fNGsc-0002ym-Jm for bug-guix@gnu.org; Mon, 28 May 2018 08:04:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1fNGsc-0005RN-23 for bug-guix@gnu.org; Mon, 28 May 2018 08:04:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-reply-to: <871sig90eh.fsf@gnu.org> List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Mathieu Lirzin Cc: 27217@debbugs.gnu.org Mathieu Lirzin writes: > Ricardo Wurmus writes: > >> What=E2=80=99s missing? >> >> Currently, one needs to set a lot of environment variables to use these >> separate packages. For =E2=80=9Cfastcap=E2=80=9D I needed to set =E2=80= =9CDVIPSHEADERS=E2=80=9D (to >> find =E2=80=9Ctex.pro=E2=80=9D), =E2=80=9CTFMFONTS=E2=80=9D (for compile= d metafont files), =E2=80=9CTEXFORMATS=E2=80=9D >> (for the compiled =E2=80=9Clatex.fmt=E2=80=9D), and =E2=80=9CTEXINPUTS= =E2=80=9D (for all directories >> containing tex source files). Setting these variables manually is >> really tedious. >> >> How can we set them automatically? A simple idea is to provide a >> procedure =E2=80=9Ctexlive-union=E2=80=9D that takes texlive packages an= d produces a >> wrapped variant of the tools in =E2=80=9Ctexlive-bin=E2=80=9D that run i= nside an >> environment where these variables are set. > > After reading, it is not clear to me why having all the environment > variables set in =E2=80=9C~/.guix-profile/etc/profile=E2=80=9D is not goo= d enough, or > not possible? IIRC the format of these variables is somewhat peculiar and does not correspond to the way environment variables are commonly specified, so we probably cannot use the search-path mechanism that Guix provides. (For example, there is syntax for indicating that a directory is supposed to be searched recursively.) Instead we would generate a configuration file that contains all of the environment variables and then only set the variables that are required to look up this configuration file. That=E2=80=99s roughly what =E2=80=9Ct= exlive-union=E2=80=9D does. (It also builds a union directory, but we do this anyway when building profiles, so that=E2=80=99s nothing special.) -- Ricardo