From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?G=C3=A1bor?= Boskovits Subject: bug#30680: [racket-users] Using Racket's raco on on Guix(SD) Date: Sun, 12 Aug 2018 11:32:10 +0200 Message-ID: References: <87d0xn24d9.fsf@dustycloud.org> <0990d521-934b-069b-3f29-faf8a22a5bd0@fastmail.net> <87wosxexu7.fsf@dustycloud.org> <87h8k0d54i.fsf@ngyro.com> <87va8gfu0c.fsf@dustycloud.org> <20180811220538.ca2wyilh6gq62dm3@abyayala> <87tvo0fpox.fsf@dustycloud.org> <871sb4cpeu.fsf@ngyro.com> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000586c24057339a718" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:53034) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fomkE-0006FX-3n for bug-guix@gnu.org; Sun, 12 Aug 2018 05:33:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fomkA-0000ZU-Ti for bug-guix@gnu.org; Sun, 12 Aug 2018 05:33:06 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:43601) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fomkA-0000ZH-Pi for bug-guix@gnu.org; Sun, 12 Aug 2018 05:33:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1fomkA-00012P-Gb for bug-guix@gnu.org; Sun, 12 Aug 2018 05:33:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <871sb4cpeu.fsf@ngyro.com> 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: samplet@ngyro.com Cc: 30680@debbugs.gnu.org, help-guix , racket-users@googlegroups.com, ng0 --000000000000586c24057339a718 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Timothy Sample ezt =C3=ADrta (id=C5=91pont: 2018. aug. = 12., V, 4:03): > Christopher Lemmer Webber writes: > > > Likewise, Gregor and Raart do not install: > > > > $ mv ~/.racket ~/.racket-borked > > $ raco pkg install gregor # lots of errors during install > > $ racket > > racket@> (require gregor) > > explode-path: contract violation > > expected: (or/c path-for-some-system? path-string?) > > given: #f > > context...: > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/path.rkt:116:0: > do-explode-path > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/path.rkt:126:0: > find-relative-path7 > > > /home/cwebber/.racket/6.12/pkgs/tzinfo/tzinfo/private/zoneinfo.rkt:117:2: > for-loop > > > /home/cwebber/.racket/6.12/pkgs/tzinfo/tzinfo/private/zoneinfo.rkt:107:0: > read-tzids > > > /home/cwebber/.racket/6.12/pkgs/tzinfo/tzinfo/private/zoneinfo.rkt:70:0: > make-zoneinfo-source > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/contract/private/arrow-val-first.rkt:388:18 > > /home/cwebber/.racket/6.12/pkgs/tzinfo/tzinfo/main.rkt:63:0: > system-tzid > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/contract/private/arrow-val-first.rkt:388:18 > > /home/cwebber/.racket/6.12/pkgs/gregor-lib/gregor/private/moment.rkt= : > [running body] > > > /home/cwebber/.racket/6.12/pkgs/gregor-lib/gregor/private/generics.rkt: > [traversing imports] > > /home/cwebber/.racket/6.12/pkgs/gregor-lib/gregor/private/clock.rkt: > [traversing imports] > > /home/cwebber/.racket/6.12/pkgs/gregor-lib/gregor/main.rkt: > [traversing imports] > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/private/misc.rkt:88:7 > > This is a timezone issue. The =E2=80=9Ctzinfo=E2=80=9D package cannot fi= nd the > =E2=80=9Czoneinfo=E2=80=9D directory in GuixSD. If you install the =E2= =80=9Ctzdata=E2=80=9D Racket > package, things seem to settle down. (It would be better to tell > =E2=80=9Ctzinfo=E2=80=9D to use the system database, but that=E2=80=99s h= arder to do.) > > > ... install raart, lots of "cannot open output file" error messages ... > > racket@> (require raart) > > get-module-code: no such file: > # > > context...: > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/syntax/modcode.rkt:120:0: > get-module-path54 > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/syntax/modcode.rkt:225:0: > get-module-code82 > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/private/more-scheme.rkt:261:28 > > standard-module-name-resolver > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/private/more-scheme.rkt:261:28 > > standard-module-name-resolver > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/private/more-scheme.rkt:261:28 > > standard-module-name-resolver > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/require-transform.rkt:266:2: > expand-import > > parse-reprov-spec1 > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/syntax/wrap-modbeg.rkt:46:4 > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/private/more-scheme.rkt:261:28 > > standard-module-name-resolver > > > /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/share/racket/coll= ects/racket/private/misc.rkt:88:7 > > I got better results with =E2=80=9Craart=E2=80=9D when =E2=80=9Cgcc-toolc= hain=E2=80=9D was available > (i.e., =E2=80=9Cguix environment --ad-hoc gcc-toolchain=E2=80=9D). I gue= ss it has to > compile a bit of native code, so it needs a compiler. It still brakes > due to a syntax error, but I get the same error on Debian, so I guess > that=E2=80=99s something. :) > > Also, I checked all of this from Racket without grafts, and it never > complained about compiling OpenSSL stuff. Running =E2=80=9Craco setup=E2= =80=9D gives > some other errors, though. > In the Actually this problem resembles me to another one, it's similar to why gdb is not working when grafting is used. I believe that the correct solution to these types of issues would be to recompute the hashes, and provide the updated hashes to the packages relying on them, so that they know the correct hash of the grafted file. In the gdb case this seems to be easier to solve, as the problem occurs inside a single package. --000000000000586c24057339a718 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


Timoth= y Sample <samplet@ngyro.com>= ezt =C3=ADrta (id=C5=91pont: 2018. aug. 12., V, 4:03):
Christopher Lemmer Webber <cwebber@dustycloud.org> writes:<= br>
> Likewise, Gregor and Raart do not install:
>
> $ mv ~/.racket ~/.racket-borked
> $ raco pkg install gregor=C2=A0 =C2=A0# lots of errors during install<= br> > $ racket
> racket@> (require gregor)
> explode-path: contract violation
>=C2=A0 =C2=A0expected: (or/c path-for-some-system? path-string?)
>=C2=A0 =C2=A0given: #f
>=C2=A0 =C2=A0context...:
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/path.rkt:116:0: do-explode-path
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/path.rkt:126:0: find-relative-path7
>=C2=A0 =C2=A0 /home/cwebber/.racket/6.12/pkgs/tzinfo/tzinfo/private/zon= einfo.rkt:117:2: for-loop
>=C2=A0 =C2=A0 /home/cwebber/.racket/6.12/pkgs/tzinfo/tzinfo/private/zon= einfo.rkt:107:0: read-tzids
>=C2=A0 =C2=A0 /home/cwebber/.racket/6.12/pkgs/tzinfo/tzinfo/private/zon= einfo.rkt:70:0: make-zoneinfo-source
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/contract/private/arrow-val-first.rkt:388:18
>=C2=A0 =C2=A0 /home/cwebber/.racket/6.12/pkgs/tzinfo/tzinfo/main.rkt:63= :0: system-tzid
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/contract/private/arrow-val-first.rkt:388:18
>=C2=A0 =C2=A0 /home/cwebber/.racket/6.12/pkgs/gregor-lib/gregor/private= /moment.rkt: [running body]
>=C2=A0 =C2=A0 /home/cwebber/.racket/6.12/pkgs/gregor-lib/gregor/private= /generics.rkt: [traversing imports]
>=C2=A0 =C2=A0 /home/cwebber/.racket/6.12/pkgs/gregor-lib/gregor/private= /clock.rkt: [traversing imports]
>=C2=A0 =C2=A0 /home/cwebber/.racket/6.12/pkgs/gregor-lib/gregor/main.rk= t: [traversing imports]
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/private/misc.rkt:88:7

This is a timezone issue.=C2=A0 The =E2=80=9Ctzinfo=E2=80=9D package cannot= find the
=E2=80=9Czoneinfo=E2=80=9D directory in GuixSD.=C2=A0 If you install the = =E2=80=9Ctzdata=E2=80=9D Racket
package, things seem to settle down.=C2=A0 (It would be better to tell
=E2=80=9Ctzinfo=E2=80=9D to use the system database, but that=E2=80=99s har= der to do.)

> ... install raart, lots of "cannot open output file" error m= essages ...
> racket@> (require raart)
> get-module-code: no such file: #<path:/home/cwebber/.racket/6.12/pk= gs/ansi/ansi/private/tty-raw-extension.rkt>
>=C2=A0 =C2=A0context...:
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/syntax/modcode.rkt:120:0: get-module-path54
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/syntax/modcode.rkt:225:0: get-module-code82
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/private/more-scheme.rkt:261:28
>=C2=A0 =C2=A0 standard-module-name-resolver
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/private/more-scheme.rkt:261:28
>=C2=A0 =C2=A0 standard-module-name-resolver
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/private/more-scheme.rkt:261:28
>=C2=A0 =C2=A0 standard-module-name-resolver
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/require-transform.rkt:266:2: expand-import
>=C2=A0 =C2=A0 parse-reprov-spec1
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/syntax/wrap-modbeg.rkt:46:4
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/private/more-scheme.rkt:261:28
>=C2=A0 =C2=A0 standard-module-name-resolver
>=C2=A0 =C2=A0 /gnu/store/jx0bkmaafb8fq0mqs5ywgnxq8rbpn8j1-racket-6.12/s= hare/racket/collects/racket/private/misc.rkt:88:7

I got better results with =E2=80=9Craart=E2=80=9D when =E2=80=9Cgcc-toolcha= in=E2=80=9D was available
(i.e., =E2=80=9Cguix environment --ad-hoc gcc-toolchain=E2=80=9D).=C2=A0 I = guess it has to
compile a bit of native code, so it needs a compiler.=C2=A0 It still brakes=
due to a syntax error, but I get the same error on Debian, so I guess
that=E2=80=99s something.=C2=A0 :)

Also, I checked all of this from Racket without grafts, and it never
complained about compiling OpenSSL stuff.=C2=A0 Running =E2=80=9Craco setup= =E2=80=9D gives
some other errors, though.
In the=C2=A0
Actually this problem resembles me to another= one, it's similar to why gdb is not working when grafting is used. I b= elieve that the correct solution to these types of issues would be to recom= pute the hashes, and provide the updated hashes to the packages relying on = them, so that they know the correct hash of the grafted file. In the gdb ca= se this seems to be easier to solve, as the problem occurs inside a single = package.
=C2=A0
--000000000000586c24057339a718--