Re: [m-users.] I'm back and I need help!
Fabrice Nicol <[email protected]> Sat, 13 Dec 2025 14:41:05 +0100
| Newsgroups | gmane.comp.lang.mercury.general |
|---|---|
| Message-ID | <CANTSrJu3zejFm=FRrqVFa5aqLM4-AOHDpPgOjgnNNJ71VwbC7g@mail.gmail.com> |
--===============8035316681429806643== Content-Type: multipart/alternative; boundary="00000000000039cd5f0645d58890" --00000000000039cd5f0645d58890 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Yes, Volker, the Docker image fosters an integrated approach in which your environment is within the image. It's the only way, with static linking, to avoid dependency nightmares and quickly get something that "just works" as Linus says. This is why there is an Emacs build in the image and a handful of common developer dependencies. Also, Mercury builds are more often than not static builds, unless there are external dynamic libraries used, which often causes pain at deployment stage. I tend to statically build as much as possible and then copy the build out of the image, which is super easy to do. FN Le sam. 13 d=C3=A9c. 2025, 14:19, Volker Wysk <[email protected]> a =C3= =A9crit : > Hi, Fabrice, Ralph > > I've tried the Docker image, four months ago. I found it very confusing a= t > first. Please note that you will have your entire development environment > inside the container, when you choose to do it this way. > > You can copy your compiled program out of the container and use it outsid= e, > if you have linked it statically. > > I had tried to set things up, such that only the compiler is inside and t= he > source code and the generated files are outside. This can be done with a > bind mount inside-outside of the container. But that didn't work > satisfactorily. > > About Fabrice's suggestion to bootstrap the compile by using the docker > image, I'm not so confident that this will work easily. You need to > understand Docker images for that. > > You can bootstrap the compiler the way it's intended by the developers. > That > isn't that hard. > > Hope this helps, > Volker > > Am Samstag, dem 13.12.2025 um 13:53 +0100 schrieb Fabrice Nicol: > > If you are comfortable with using Docker there is also a working ROTD > > image dating back from about a month. It is normally updated daily to > > current ROTD. > > https://github.com/fabnicol/ubuntu4mercury > > > > You can use this image to possibly bootstrap a build from recent source > > code, should you meet problems doing so directly (this has been recentl= y > > tested). > > > > Fabrice Nicol > > NB: For about a month the GitHub Actions process has been failing owing > to > > memory overload. I will have to streamline the build a little for it > > continue working. > > > > > > Le sam. 13 d=C3=A9c. 2025, 13:42, David Overton <[email protected]> = a > > =C3=A9crit : > > > Welcome back Ralph. I also have recently (well last year) returned to > > > Mercury after a couple of decades away. > > > Prince builds are using an ROTD from last February, this one in > > > particular: > > > > https://github.com/Mercury-Language/mercury-srcdist/releases/tag/rotd-202= 4-02-27 > > > So installing that ROTD from source may be a good place to start. > > > > > > David > > > > > > > > > On Sat, 13 Dec 2025 at 17:34, Paul Bone <[email protected]> wrote: > > > > > > > > Yes, the right thing to do would be install from source. > > > > > > > > As you noticed, those packages & instructions are for .deb based > > > > systems, and that's not Arch, it's Debian and Ubuntu. > > > > > > > > Good to see you again, good luck! > > > > > > > > On Sat, 13 Dec 2025, at 3:47 PM, Ralph Becket wrote: > > > > > Hi everybody, > > > > > > > > > > After nearly a couple of decades using C# in industry, it looks > like > > > > > I'm coming back to Mercury! > > > > > > > > > > I'm trying to install Mercury under WSL on my home Windows box an= d > > > > > I'm getting nowhere. (Please forgive me if I come across a touch > > > > > Forest Gump: even back in the day I only had half a clue about > Linux > > > > > admin.) If anyone can offer advice, I'd be most grateful. I've > > > > > installed Arch Linux under WSL and I'm trying to install Mercury > > > > > using the instructions at Mercury packages for .deb based system= s > > > > > > > > > > Now Arch, it seems, uses something called 'pacman' to install > > > > > things, whereas the instructions refer to 'apt'. Okay, so > > > > > > > > > > * I install 'apt', edit /etc/apt/sources.list.d/mercury.list to > > > > > include > > > > > > > > > > deb http://dl.mercurylang.org/deb/ DISTRO main > > > > > deb-src http://dl.mercurylang.org/deb/ DISTRO main > > > > > > > > > > * I run the weird GPG thing that the document tells me to do > > > > > > > > > > * I run 'apt update' and then... > > > > > [root@Herbert tmp]# apt update > > > > > Ign:1 http://dl.mercurylang.org/deb DISTRO InRelease > > > > > Err:2 http://dl.mercurylang.org/deb DISTRO Release > > > > > 404 Not Found [IP: 45.56.89.38 80] > > > > > Error: The repository 'http://dl.mercurylang.org/deb DISTRO > Release' > > > > > does not have a Release file. > > > > > Notice: Updating from such a repository can't be done securely, a= nd > > > > > is therefore disabled by default. > > > > > Notice: See apt-secure(8) manpage for repository creation and use= r > > > > > configuration details. > > > > > Notice: Missing Signed-By in the sources.list(5) entry for > > > > > 'http://dl.mercurylang.org/deb' > > > > > > > > > > At this point I'm so far down the rabbit hole of Things I Don't > Care > > > > > About While Recovering From The Flu that I'm here to call for hel= p. > > > > > > > > > > Is the right thing to do now to try installing from the sources > > > > > instead? > > > > > > > > > > Anyway, looking forward to re-connecting with everyone again! > > > > > > > > > > Cheers, > > > > > Ralph > > > > > _______________________________________________ > > > > > users mailing list > > > > > [email protected] > > > > > https://lists.mercurylang.org/listinfo/users > > > > > > > > > > > > > _______________________________________________ > > > > users mailing list > > > > [email protected] > > > > https://lists.mercurylang.org/listinfo/users > > > _______________________________________________ > > > users mailing list > > > [email protected] > > > https://lists.mercurylang.org/listinfo/users > > _______________________________________________ > > users mailing list > > [email protected] > > https://lists.mercurylang.org/listinfo/users > _______________________________________________ > users mailing list > [email protected] > https://lists.mercurylang.org/listinfo/users > --00000000000039cd5f0645d58890 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"auto">Yes, Volker, the Docker image fosters an integrated appro= ach in which your environment is within the image. It's the only way, w= ith static linking, to avoid dependency nightmares and quickly get somethin= g that "just works" as Linus says.=C2=A0<div dir=3D"auto">This is= why there is an Emacs build in the image and a handful of common developer= dependencies.<div dir=3D"auto">Also, Mercury builds are more often than no= t static builds, unless there are external dynamic libraries used, which of= ten causes pain at deployment stage. I tend to statically build as much as = possible and then copy the build out of the image, which is super easy to d= o.</div><div dir=3D"auto">FN</div></div></div><br><div class=3D"gmail_quote= gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">Le sam. 13 d= =C3=A9c. 2025, 14:19, Volker Wysk <<a href=3D"mailto:[email protected]= ">[email protected]</a>> a =C3=A9crit=C2=A0:<br></div><blockquote clas= s=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;pad= ding-left:1ex">Hi, Fabrice, Ralph<br> <br> I've tried the Docker image, four months ago. I found it very confusing= at<br> first. Please note that you will have your entire development environment<b= r> inside the container, when you choose to do it this way. <br> <br> You can copy your compiled program out of the container and use it outside,= <br> if you have linked it statically.<br> <br> I had tried to set things up, such that only the compiler is inside and the= <br> source code and the generated files are outside.=C2=A0This can be done with= a<br> bind mount inside-outside of the container. But that didn't work<br> satisfactorily. <br> <br> About Fabrice's suggestion to bootstrap the compile by using the docker= <br> image, I'm not so confident that this will work easily. You need to<br> understand Docker images for that.=C2=A0<br> <br> You can bootstrap the compiler the way it's intended by the developers.= That<br> isn't that hard.<br> <br> Hope this helps,<br> Volker<br> <br> Am Samstag, dem 13.12.2025 um 13:53 +0100 schrieb Fabrice Nicol:<br> > If you are comfortable with using Docker there is also a working ROTD<= br> > image dating back from about a month. It is normally updated daily to<= br> > current ROTD.<br> > <a href=3D"https://github.com/fabnicol/ubuntu4mercury" rel=3D"noreferr= er noreferrer" target=3D"_blank">https://github.com/fabnicol/ubuntu4mercury= </a><br> > <br> > You can use this image to possibly bootstrap a build from recent sourc= e<br> > code, should you meet problems doing so directly (this has been recent= ly<br> > tested).=C2=A0<br> > <br> > Fabrice Nicol<br> > NB: For about a month the GitHub Actions process has been failing owin= g to<br> > memory overload. I will have to streamline the build a little for it<b= r> > continue working.<br> > <br> > <br> > Le sam. 13 d=C3=A9c. 2025, 13:42, David Overton <<a href=3D"mailto:= [email protected]" target=3D"_blank" rel=3D"noreferrer">[email protected]= d.au</a>> a<br> > =C3=A9crit=C2=A0:<br> > > Welcome back Ralph. I also have recently (well last year) returne= d to<br> > > Mercury after a couple=C2=A0of decades away.<br> > > Prince builds are using an ROTD from last February, this one in<b= r> > > particular:<br> > > <a href=3D"https://github.com/Mercury-Language/mercury-srcdist/re= leases/tag/rotd-2024-02-27" rel=3D"noreferrer noreferrer" target=3D"_blank"= >https://github.com/Mercury-Language/mercury-srcdist/releases/tag/rotd-2024= -02-27</a><br> > > So installing that ROTD from source may be a good place to start.= <br> > > <br> > > David<br> > > <br> > > <br> > > On Sat, 13 Dec 2025 at 17:34, Paul Bone <<a href=3D"mailto:pau= [email protected]" target=3D"_blank" rel=3D"noreferrer">[email protected]</a>> = wrote:<br> > > > <br> > > > Yes, the right thing to do would be install from source.<br> > > > <br> > > > As you noticed, those packages & instructions are for .d= eb based<br> > > > systems, and that's not Arch, it's Debian and Ubuntu= .<br> > > > <br> > > > Good to see you again, good luck!<br> > > > <br> > > > On Sat, 13 Dec 2025, at 3:47 PM, Ralph Becket wrote:<br> > > > > Hi everybody,<br> > > > > <br> > > > > After nearly a couple of decades using C# in industry, = it looks like<br> > > > > I'm coming back to Mercury!=C2=A0=C2=A0<br> > > > > <br> > > > > I'm trying to install Mercury under WSL on my home = Windows box and<br> > > > > I'm getting nowhere.=C2=A0 (Please forgive me if I = come across a touch<br> > > > > Forest Gump: even back in the day I only had half a clu= e about Linux<br> > > > > admin.)=C2=A0 If anyone can offer advice, I'd be mo= st grateful.=C2=A0 I've<br> > > > > installed Arch Linux under WSL and I'm trying to in= stall Mercury<br> > > > > using the instructions at=C2=A0 Mercury packages for .d= eb based systems<br> > > > > <br> > > > > Now Arch, it seems, uses something called 'pacman&#= 39; to install<br> > > > > things, whereas the instructions refer to 'apt'= .=C2=A0 Okay, so=C2=A0<br> > > > > <br> > > > > =C2=A0* I install 'apt', edit /etc/apt/sources.= list.d/mercury.list to<br> > > > > include<br> > > > > <br> > > > > deb <a href=3D"http://dl.mercurylang.org/deb/" rel=3D"n= oreferrer noreferrer" target=3D"_blank">http://dl.mercurylang.org/deb/</a> = DISTRO main<br> > > > > =C2=A0deb-src <a href=3D"http://dl.mercurylang.org/deb/= " rel=3D"noreferrer noreferrer" target=3D"_blank">http://dl.mercurylang.org= /deb/</a> DISTRO main<br> > > > > <br> > > > > =C2=A0* I run the weird GPG thing that the document tel= ls me to do<br> > > > > <br> > > > > =C2=A0* I run 'apt update' and then...<br> > > > > [root@Herbert tmp]# apt update<br> > > > > Ign:1 <a href=3D"http://dl.mercurylang.org/deb" rel=3D"= noreferrer noreferrer" target=3D"_blank">http://dl.mercurylang.org/deb</a> = DISTRO InRelease<br> > > > > Err:2 <a href=3D"http://dl.mercurylang.org/deb" rel=3D"= noreferrer noreferrer" target=3D"_blank">http://dl.mercurylang.org/deb</a> = DISTRO Release<br> > > > > =C2=A0 404 =C2=A0Not Found [IP: 45.56.89.38 80]<br> > > > > Error: The repository '<a href=3D"http://dl.mercury= lang.org/deb" rel=3D"noreferrer noreferrer" target=3D"_blank">http://dl.mer= curylang.org/deb</a> DISTRO Release'<br> > > > > does not have a Release file.<br> > > > > Notice: Updating from such a repository can't be do= ne securely, and<br> > > > > is therefore disabled by default.<br> > > > > Notice: See apt-secure(8) manpage for repository creati= on and user<br> > > > > configuration details.<br> > > > > Notice: Missing Signed-By in the sources.list(5) entry = for<br> > > > > '<a href=3D"http://dl.mercurylang.org/deb" rel=3D"n= oreferrer noreferrer" target=3D"_blank">http://dl.mercurylang.org/deb</a>&#= 39;<br> > > > > <br> > > > > At this point I'm so far down the rabbit hole of Th= ings I Don't Care<br> > > > > About While Recovering From The Flu that I'm here t= o call for help.<br> > > > > <br> > > > > Is the right thing to do now to try installing from the= sources<br> > > > > instead?<br> > > > > <br> > > > > Anyway, looking forward to re-connecting with everyone = again!<br> > > > > <br> > > > > Cheers,<br> > > > > Ralph<br> > > > > _______________________________________________<br> > > > > users mailing list<br> > > > > <a href=3D"mailto:[email protected]" target= =3D"_blank" rel=3D"noreferrer">[email protected]</a><br> > > > > <a href=3D"https://lists.mercurylang.org/listinfo/users= " rel=3D"noreferrer noreferrer" target=3D"_blank">https://lists.mercurylang= .org/listinfo/users</a><br> > > > > <br> > > > <br> > > > _______________________________________________<br> > > > users mailing list<br> > > > <a href=3D"mailto:[email protected]" target=3D"_bl= ank" rel=3D"noreferrer">[email protected]</a><br> > > > <a href=3D"https://lists.mercurylang.org/listinfo/users" rel= =3D"noreferrer noreferrer" target=3D"_blank">https://lists.mercurylang.org/= listinfo/users</a><br> > > _______________________________________________<br> > > users mailing list<br> > > <a href=3D"mailto:[email protected]" target=3D"_blank" = rel=3D"noreferrer">[email protected]</a><br> > > <a href=3D"https://lists.mercurylang.org/listinfo/users" rel=3D"n= oreferrer noreferrer" target=3D"_blank">https://lists.mercurylang.org/listi= nfo/users</a><br> > _______________________________________________<br> > users mailing list<br> > <a href=3D"mailto:[email protected]" target=3D"_blank" rel= =3D"noreferrer">[email protected]</a><br> > <a href=3D"https://lists.mercurylang.org/listinfo/users" rel=3D"norefe= rrer noreferrer" target=3D"_blank">https://lists.mercurylang.org/listinfo/u= sers</a><br> _______________________________________________<br> users mailing list<br> <a href=3D"mailto:[email protected]" target=3D"_blank" rel=3D"nor= eferrer">[email protected]</a><br> <a href=3D"https://lists.mercurylang.org/listinfo/users" rel=3D"noreferrer = noreferrer" target=3D"_blank">https://lists.mercurylang.org/listinfo/users<= /a><br> </blockquote></div> --00000000000039cd5f0645d58890-- --===============8035316681429806643== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KdXNlcnMgbWFp bGluZyBsaXN0CnVzZXJzQGxpc3RzLm1lcmN1cnlsYW5nLm9yZwpodHRwczovL2xpc3RzLm1lcmN1 cnlsYW5nLm9yZy9saXN0aW5mby91c2Vycwo= --===============8035316681429806643==--