From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id GMTvH2dMXGNCHgAAbAwnHQ (envelope-from ) for ; Fri, 28 Oct 2022 23:40:55 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id QEz0H2dMXGMXOAAAauVa8A (envelope-from ) for ; Fri, 28 Oct 2022 23:40:55 +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 446363DD60 for ; Fri, 28 Oct 2022 23:40:55 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ooX5f-0004yi-Tt; Fri, 28 Oct 2022 17:40:37 -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 1ooX5c-0004yI-IH for help-guix@gnu.org; Fri, 28 Oct 2022 17:40:32 -0400 Received: from smtp-out-2.univ-rouen.fr ([193.52.152.97] helo=mailhoc.univ-rouen.fr) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ooX5V-0007fo-15 for help-guix@gnu.org; Fri, 28 Oct 2022 17:40:32 -0400 Received: from localhost (i16-les01-ix2-62-35-41-231.sfr.lns.abo.bbox.fr [62.35.41.231]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mailhoc.univ-rouen.fr (Postfix) with ESMTPSA id BD3D82537; Fri, 28 Oct 2022 23:40:19 +0200 (CEST) From: =?utf-8?Q?S=C3=A9bastien?= Rey-Coyrehourcq To: Wojtek Kosior Cc: zimoun , help-guix Subject: Re: Help packaging R Quarto Cli Date: Fri, 28 Oct 2022 23:32:10 +0200 References: <87ilk9xwtq.fsf@univ-rouen.fr> <87bkq1i1yt.fsf@gmail.com> <20221024204024.2c580b81@koszkonutek-tmp.pl.eu.org> <86czag2p1g.fsf@gmail.com> <20221025131709.36ac4915@koszkonutek-tmp.pl.eu.org> <87a65hyc78.fsf@univ-rouen.fr> <20221027115445.0655c84d@koszkonutek-tmp.pl.eu.org> <87a65fud5k.fsf@univ-rouen.fr> <20221028221738.3bf01294@koszkonutek-tmp.pl.eu.org> User-agent: mu4e 1.8.9; emacs 28.2 In-reply-to: <20221028221738.3bf01294@koszkonutek-tmp.pl.eu.org> Message-ID: <878rkztyny.fsf@univ-rouen.fr> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="===-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" X-Spamd-Bar: ------ X-Rspamd-Server: mailhoc X-Rspamd-Queue-Id: BD3D82537 X-Spamd-Result: default: False [-6.20 / 15.00]; ARC_NA(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; TO_MATCH_ENVRCPT_ALL(0.00)[]; FREEMAIL_ENVRCPT(0.00)[gmail.com]; TAGGED_RCPT(0.00)[]; MIME_GOOD(-0.20)[multipart/signed,multipart/mixed,text/plain]; REPLY(-4.00)[]; TO_DN_ALL(0.00)[]; NEURAL_HAM(-0.00)[-1.000,0]; SIGNED_PGP(-2.00)[]; RCVD_COUNT_ZERO(0.00)[0]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:+,3:+,4:~]; ASN(0.00)[asn:5410, ipnet:62.34.0.0/15, country:FR]; FREEMAIL_CC(0.00)[gmail.com]; MID_RHS_MATCH_FROM(0.00)[] Received-SPF: pass client-ip=193.52.152.97; envelope-from=sebastien.rey-coyrehourcq@univ-rouen.fr; helo=mailhoc.univ-rouen.fr X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-guix@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Help-Guix" Errors-To: help-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1666993255; 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:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=ZyM1ihmAQlsqy4Lq+0VZWVSzDimlp8slUAa/W0t+3cI=; b=kEOdFiYOpj679eSOz4txfDhN4JucQrIavqxqrEZXIFTt2y+TvX2yGlm5+qvWwGCPV0iqp9 SsyNIdZxd2xzbhiNvSXT+JcVqpReAyWcF9vpuAcDKtmHRqWpdcJjSdryxCMJvW0BGwG+i+ K9uOFbIepZCdopaEiG1wVUrsCb9fYPhyTKII3eUYg192a2qs+ozWKZ9W1NrgPKliTc4r24 LQk4vSk8ed6dFb5rC7T8/SFCVD/wGKe3Kybhh4eWT+l0Scd7rKorS+KjbpL/6EiIWM+dHk Ph6ctr/iTYHNHtQX+8DUz/21SgrB8v/emCQq0lW/ERMWVqz+De8Tta1eTqQh1g== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1666993255; a=rsa-sha256; cv=none; b=pTDAUWiQmHv5Pdz19WjOXV8OcsKyQM3yNTlQHOafK9CiK9BXY52Pm5M0wx+zOkIy9lNnQ0 /uhzTwZPA371N30iletdUpc+gAslgfApAX+Aui5amj9lscUe169M4uKT1yFXR24/KCKWKc ksQVt9BzHBwTzFe9+1pS6v/q3Ji/I0M8sy/rzpyZzYf1piojIuTll3wfHdPJ1ZAeGN7N3U UXN6ehTfe+gihQyZNq6LVMyQoJP/R0Y/unXuAFdlBqnk5V/FI8/nHqqqOOPqCWoTvk0J5a iuqLvsUtUp7uuVYZ7VBDwd1NE2Pas+tricv7AkAe2rujCEWzSlkTfuDPsb4tAA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -4.92 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: 446363DD60 X-Spam-Score: -4.92 X-Migadu-Scanner: scn1.migadu.com X-TUID: fj2UHlTBGo/H --===-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: multipart/mixed; boundary="==-=-=" --==-=-= Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Wojtek Kosior writes: > I think I almost understand your approach. Just a quick question - what > Guix command are you using to try building? With this setup I=E2=80=99d t= ry > something like > > guix shell -L ./export/ rust-deno > Actually, from export folder i try : i try *guix build -L . -f rust-deno-1.scm* But the module are not loaded, i don=E2=80=99t understand well the way guix= load module it seems. Into rust-deno-1.scm i put : (define-module (rust-deno-1 rust-deno-1) #:use-module (rust-cache-control-0.2 rust-cache-control-0.2) and into ./rust-cache-control-0.2/rust-cache-control-0.2.scm i put : (define-module (rust-cache-control-0.2 rust-cache-control-0.2) But any of this pass using the *guix build* command : `no code for module (rust-cache-control-0.2 rust-cache-control-0.2)' > and then I=E2=80=99d put > > (define-module (rust-ecdsa-0.14 rust-ecdsa-0.14) > #:use-module (rust-serdect-0.1 rust-serdect-0.1)) > > inside `./export/rust-ecdsa-0.14/rust-ecdsa-0.14.scm`. That=E2=80=99s how= guile > modules work - a module is identified by a list of symbols that match > module file=E2=80=99s path (starting from a guile=E2=80=99s modules root = directory, in > this case the one passed via the `-L` option). > >> If that works locally i suppose i could sent a patch with all the >> rust modules needed to build Deno ? > > A patch would then expect the module(s) to be put under gnu/packages in > the Guix repo and then their `#:use-module` lines would need to be > modified accordingly=E2=80=A6 So you=E2=80=99d need to make these small a= daptations > first. > > Honestly, I haven=E2=80=99t been submitting patches before and I don=E2= =80=99t know > exactly what module structure Guix devs expect. Perhaps someone else > may help you here. > > Anyway, it seems right now you just have the result of running > `guix import` and you have not yet built any of those recipes? I don=E2= =80=99t > want to be pessimistic but here=E2=80=99s a warning - there=E2=80=99ll su= rely be some > fixes you=E2=80=99ll have to make. Be prepared to dive into scheme :) > I first put all the things into deno.scm, with thousand of lines, that comp= ile a little=E2=80=A6 and i changing my mind finally =E2=80=A6 imho the module way is perhaps less discouraging : Resolving bug modules by= modules=E2=80=A6 I push some corrections to my python script to generate good module name wh= en i found. Yes, i probably need some guile diving =E2=80=A6 Best, Sr-C. > Best, > Wojtek > > =E2=80=93 (sig_start) > website: > PGP: > fingerprint: E972 7060 E3C5 637C 8A4F 4B42 4BC5 221C 5A79 FD1A > > Meet Krak=C3=B3w saints! #16: saint Jan z Dukli > Poznaj =C5=9Bwi=C4=99tych krakowskich! #16: =C5=9Bwi=C4=99ty Jan z Dukli > > =E2=80=93 (sig_end) > > > On Fri, 28 Oct 2022 18:19:32 +0200 > S=C3=A9bastien Rey-Coyrehourcq = wrote: > >> Hi, >> >> Wojtek Kosior writes: >> >> >> Hi, >> >> >> >> I continue the packaging using guix import crate, this is a slow proc= ess, but everything goes well at this time. >> >> >> >> My file deno.scm contain 6000 line, with all packages imported, this = is a problem because i need to remove duplicate. >> >> The best way was probably to export all `(define public method =E2=80= =A6 )` into a folder with corresponding library.scm. >> > >> > Do you have wour work-in-progress in some public repo? This would make >> > us easier to understand your setup and would also allow more ppl to >> > cooperate (although unfortunately Idk if there=E2=80=99s anyone else w= ho=E2=80=99s >> > particularly interested in deno at this particular moment). >> > >> >> Here we are : >> >> This is a wip python script that build an `export/=E2=80=99 directory co= ntaining all rust module needed to compile deno (i suppose) >> >> The deno script is localized at the root of `export/=E2=80=99 folder >> >> I build the modules folders, but know i don=E2=80=99t know how to compil= e all this folders correctly using correct path =E2=80=A6 >> Any guile help appreciated to do that ! >> >> For example, the module *./export/rust-ecdsa-0.14/rust-ecdsa-0.14.scm* n= eed a module localized to *./export/rust-serdect-0.1/rust-serdect-0.1.scm* >> >> I simply try *#:use-module (../rust-serdect-01)* in *rust-ecdsa-0.14* de= fine-module but this probably not the good way. >> >> >> I need to create a module by package do you thing ? and after that im= port all the package using `use-modules` ? >> > >> > From what I=E2=80=99ve seen, Guix package definitions are usually grou= ped into >> > modules thematically. Although until you actually try upstreaming your >> > work, you=E2=80=99re not bound by any reqs and you can structure the >> > definitions in a way that=E2=80=99s comfortable for you. >> > >> > Also, are you adding your package by modifying the actual Guix sources? >> > Or by creating modules outsite of these? Perhaps this was already >> > metioned but I don=E2=80=99t have previous emails on the top=E2=80=A6 >> > >> >> If that works locally i suppose i could sent a patch with all the rust m= odules needed to build Deno ? >> >> Best ! >> SR. >> >> > Good luck :) >> > Wojtek >> > >> > =E2=80=93 (sig_start) >> > website: >> > PGP: >> > fingerprint: E972 7060 E3C5 637C 8A4F 4B42 4BC5 221C 5A79 FD1A >> > >> > Meet Krak=C3=B3w saints! #33: blessed Antonin Bajewski >> > Poznaj =C5=9Bwi=C4=99tych krakowskich! #33: b=C5=82ogos=C5=82awiony A= ntonin Bajewski >> > >> > =E2=80=93 (sig_end) >> > >> > >> > On Thu, 27 Oct 2022 09:05:52 +0200 >> > S=C3=A9bastien Rey-Coyrehourcq wrote: >> > >> >> Hi, >> >> >> >> I continue the packaging using guix import crate, this is a slow proc= ess, but everything goes well at this time. >> >> >> >> My file deno.scm contain 6000 line, with all packages imported, this = is a problem because i need to remove duplicate. >> >> The best way was probably to export all `(define public method =E2=80= =A6 )` into a folder with corresponding library.scm. >> >> >> >> I need to create a module by package do you thing ? and after that im= port all the package using `use-modules` ? >> >> >> >> Best >> >> >> >> Wojtek Kosior writes: >> >> >> >> >> >> >> > Out of curiosity - what are the problems between Guix and JS? Wh= en I >> >> >> > read this my first suspicion was that maybe TS is a self-hosted >> >> >> > language and cannot be bootstrapped. However, when I ran `guix s= earch >> >> >> > typescript`, it revealed the existence of some TS->JS compiler c= alled >> >> >> > =E2=80=99rust-swc=E2=80=99. So I guess problems lie somewhere el= se, right? >> >> >> >> >> >> Nothing per se. Note that =C2=ABTypeScript is a strongly typed pr= ogramming >> >> >> language that builds on JavaScript=C2=BB and from my understanding= (maybe I >> >> >> am wrong?), it is hard to package Javascript for Guix because the >> >> >> Javascript ecosystem is messy. Janneke provides some explanations= [1] >> >> >> and I am not convinced the situation have changed since then. May= be I >> >> >> am wrong=E2=80=A6 >> >> >> >> >> >> 1: >> >> > >> >> > A few months ago (I think) I did run some code to actually check wh= at >> >> > the dependency tree of the protocol buffers JS library (from npm) i= s. >> >> > The tree of runtime deps wasn=E2=80=99t horribly big. The tree of >> >> > recursively-computed dev deps was, on the other hand, as bad as >> >> > described by Janneke or even worse=E2=80=A6 However, It seems in mo= st cases >> >> > many of those packages designated as dev deps are not strictly need= ed >> >> > for actually building stuff. Some are just test dependencies. Others >> >> > were perhaps put there because developers understood =E2=80=9Cdev d= ependencies=E2=80=9D >> >> > differently from how packagers understand it=E2=80=A6 >> >> > >> >> > Anyway, it seems the only way to check what the situation really is= is >> >> > to actually try packaging something. I=E2=80=99m confident it will = be way >> >> > easier than it seems :) >> >> > >> >> > Luckily for S=C3=A9bastien, it seems quarto-cli - although written = mostly in >> >> > JS/TS - has no NPM deps. Or at least I don=E2=80=99t see any=E2=80= =A6 >> >> > >> >> > Wojtek >> >> > >> >> > =E2=80=93 (sig_start) >> >> > website: >> >> > PGP: >> >> > fingerprint: E972 7060 E3C5 637C 8A4F 4B42 4BC5 221C 5A79 FD1A >> >> > >> >> > Meet Krak=C3=B3w saints! #15: saint Jan Pawe=C5=82 II >> >> > Poznaj =C5=9Bwi=C4=99tych krakowskich! #15: =C5=9Bwi=C4=99ty Jan P= awe=C5=82 II >> >> > >> >> > =E2=80=93 (sig_end) >> >> > >> >> > >> >> > On Tue, 25 Oct 2022 12:08:59 +0200 >> >> > zimoun wrote: >> >> > >> >> >> Hi, >> >> >> >> >> >> On Mon, 24 Oct 2022 at 20:40, Wojtek Kosior via wrote: >> >> >> >> >> >> > Out of curiosity - what are the problems between Guix and JS? Wh= en I >> >> >> > read this my first suspicion was that maybe TS is a self-hosted >> >> >> > language and cannot be bootstrapped. However, when I ran `guix s= earch >> >> >> > typescript`, it revealed the existence of some TS->JS compiler c= alled >> >> >> > =E2=80=99rust-swc=E2=80=99. So I guess problems lie somewhere el= se, right? >> >> >> >> >> >> Nothing per se. Note that =C2=ABTypeScript is a strongly typed pr= ogramming >> >> >> language that builds on JavaScript=C2=BB and from my understanding= (maybe I >> >> >> am wrong?), it is hard to package Javascript for Guix because the >> >> >> Javascript ecosystem is messy. Janneke provides some explanations= [1] >> >> >> and I am not convinced the situation have changed since then. May= be I >> >> >> am wrong=E2=80=A6 >> >> >> >> >> >> 1: >> >> >> >> >> >> Cheers, >> >> >> simon >> >> >> >> >> > >> >> > >> > >> > > > --==-=-=-- --=-=-=-- --===-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQJcBAEBCABGFiEEQdBRWS1ZqcB6tN8l3FXLa3BDQW4FAmNcTEEoHHNlYmFzdGll bi5yZXktY295cmVob3VyY3FAdW5pdi1yb3Vlbi5mcgAKCRDcVctrcENBbpJED/9v gbtlNyrCNy1Bx5Rb9dS0h9saSfLPozjLg+XfBPygEqJ6H3+oUrWbKSCeGDT3BJhN VUapPbqP2claYatH5VYt3GaM4xBcK05/Z5vNBEO3D2Rs6TQIc81JMq1UJW4y7VCW ovpsies256YnVp5TBR60ar9aC+fe5nywuvliPaW1KE4u4rB107AHyDMPK/jz224e tj87OyxO3sxaVbGU7Zqe4rPcy7DA8a+9uabup79SgX3apITOtfeByZiIlkkgaHmb eV1a+H+trvjbSmGmVCN7N1HSqamG7I1fv9Xk+Tp0pPHgC2duNAdq5bAErIeFyX75 IgyeQorY2bfOiVryn/8cuuRT14t2Vf5g+Tckxh4YeVb7jTI4QAj68hIwGRN6QpTA N6UIVPr7J0kqDWKXN8GB24ODupd4yDTcxdW8xKFmVZd5iInm6T7j197CXorwN0+y 8BSH/4IdS5q8FkrEQL7hsMO4cq1XmLG5BknF6cnlYhDKfc847ql5qofVeZgboylw Xl5meIoHIdzTklSQ/7QtqnXvTKDptno9T0okXsa7FqVV9sGtgkDTpy5LJM+C6VGK eHqcbXTfKlaft3FA6JoKla4key0gu5r0m1pSgPJAdBin+DvdZryqD0HnyR4fyiNs hiOKrAXYIHP1w52FWH6Jw6L66ailnLlsEwW030wtPA== =EbUJ -----END PGP SIGNATURE----- --===-=-=--