From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Subject: bug#30710: guix graph gives duplicate nodes Date: Fri, 09 Mar 2018 23:59:26 +0100 Message-ID: <87d10cyhwx.fsf@gnu.org> References: <86fb9895-768a-bea0-154c-070861c0bb1d@crazy-compilers.com> <87d10i8mpb.fsf@gnu.org> <87efkvsylg.fsf@gnu.org> <20180309110917.79b14a36@alma-ubu> 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]:52979) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1euQze-0005lx-NZ for bug-guix@gnu.org; Fri, 09 Mar 2018 18:00:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1euQza-0000pm-Sl for bug-guix@gnu.org; Fri, 09 Mar 2018 18:00:06 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:45029) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1euQza-0000pi-P3 for bug-guix@gnu.org; Fri, 09 Mar 2018 18:00:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1euQza-0006FW-BU for bug-guix@gnu.org; Fri, 09 Mar 2018 18:00:02 -0500 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <20180309110917.79b14a36@alma-ubu> ("=?UTF-8?Q?Bj=C3=B6rn_?= =?UTF-8?Q?H=C3=B6fling?="'s message of "Fri, 9 Mar 2018 11:09:17 +0100") 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: =?UTF-8?Q?Bj=C3=B6rn_?= =?UTF-8?Q?H=C3=B6fling?= Cc: 30710-done@debbugs.gnu.org, Hartmut Goebel Bj=C3=B6rn H=C3=B6fling skribis: > If you look into gnu/packages/autotools.scm, you see that > autoconf-wrapper is not a package, but a package-factory: > > (define* (autoconf-wrapper #:optional (autoconf autoconf)) > > Now the package definitions of "automake" and "libtool" each use the > same fragment of code in their native-inputs, but a different "package" > in the eq?-sense, although they basically want the same thing: > > `(("autoconf" ,(autoconf-wrapper)) > > As ludo stated above: "Most of the time, there=E2=80=99s exactly one pack= age > object for each derivation; if not, that=E2=80=99s usually a bug." > > This looks to me like a bug. > > Correction: > > (define autoconf-wrapper-default (autoconf-wrapper)) > > And then use this singular package as native-inputs to libtool and automa= ke. > > Furthermore, when I search: > > find . -name "*.scm" -exec grep -H "autoconf-wrapper" "{}" ";" | less > > I find about 10 packages that use the fabrik, but all in the default way. > > So instead of: > > #:export (autoconf-wrapper)) > > > We could just=20 > > (define-public autoconf-wrapper-default (autoconf-wrapper)) > > and use that. > > Or, if noone is using this fabrik, just drop that and make a normal packa= ge out of it. > > WDYT? Reopen this one? Good catch! I implemented what you suggest above in commit 464f5447396fcec9b43f7eab71d5d42b522a157f. Thank you! Ludo=E2=80=99.