From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?B?YWzDrXJpbyBleW5n?= Subject: Re: Proposal: Prefix language-name for language library packages Date: Sun, 1 May 2016 03:00:48 +0000 Message-ID: References: <20160429233632.GA13525@jasmine> 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]:40300) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1awhdH-0003Rh-Su for guix-devel@gnu.org; Sat, 30 Apr 2016 23:01:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1awhd5-0005aV-To for guix-devel@gnu.org; Sat, 30 Apr 2016 23:01:14 -0400 Received: from mail-wm0-x22a.google.com ([2a00:1450:400c:c09::22a]:38046) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1awhd4-0005WO-KI for guix-devel@gnu.org; Sat, 30 Apr 2016 23:01:07 -0400 Received: by mail-wm0-x22a.google.com with SMTP id g17so92480650wme.1 for ; Sat, 30 Apr 2016 20:00:52 -0700 (PDT) In-Reply-To: <20160429233632.GA13525@jasmine> 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+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: leo@famulari.name Cc: guix-devel@gnu.org On 4/29/16, Leo Famulari wrote: > On Fri, Apr 29, 2016 at 06:31:24PM +0000, al=C3=ADrio eyng wrote: >> Ludovic Court=C3=A8s: >> >what about multiple-language packages? I=E2=80=99m thinking of >> >=E2=80=98c+guile-guile=E2=80=99 and =E2=80=98c+siod+python-gimp=E2=80= =99. >> the ideal categorization would be one output for each interface. >> so "guile" (scheme), "guile:c", "gimp" (gui), "gimp:c", "gimp:siod", >> "gimp:python", "emacs" (gui), "emacs:tui", "emacs:elisp" (to run >> "emacs -batch -eval"). >> e.g. guile:c and emacs:tui are pretty useless for me, so i could not >> install them. >> it's worth to focus on packages already split: "emacs" (gui+tui+elisp) >> and "emacs:no-gui" (tui+elisp), linux-libre, ... > > I don't think we should split packages up unless there is a pressing > reason to do it. For example, some our packages have a rarely-used > component that uses a lot of disk space or has a very large dependency. > It makes sense to put those in different outputs. > > But if we go too far, nobody will be able to tell which package to > install to accomplish their task. defining "too far" is a problem, but ok. in the end splitting things (in packages or outputs) is just an optimization; with unlimited resources we could just install everything (ignoring security, untracked dependencies, ...). note the difference between "ideal categorization" to answer about multiple-language packages and "suggestions" (that i want implemented). >> c nomenclature: >> packages with c interface currently have nothing, "lib" (prefix or >> postfix), "c-", "-c", "4c" or "-headers". >> e.g. "readline" "libunistring" "htslib" "c-ares" "json-c" "icu4c" >> "mesa-headers" "linux-libre-headers". >> and lots of synopses with nothing, "C library for", "C library >> providing", "C library to", "implementation in C" or "written in C". > > Again, unless some package's headers take up a large amount of disk > space, or have some other onerous cost, I don't see a reason to put them > in a separate output. note the "currently"; mesa and linux-libre (and emacs) are _already_ split in packages, so a reason should exist. linux-libre-headers seems to avoid rebuilds. i guess in mesa the runtime has some onerous cost (probably disk space). splitting in outputs would be cleaner, and probably more efficient on hydra= . but mesa and linux-libre are corner cases, which my suggestion was comprehensive enough to handle. the point is trisquel has a standardized way to express c interface in names (lib*-dev), guix doesn't; there's lot of evidence it would be useful (eleven non-standardized ways).