From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ivan Petkov Subject: Re: Rust development tools Date: Thu, 18 Apr 2019 08:47:52 -0700 Message-ID: <6947C782-9FDD-421B-A80F-CB3D96AC0CB9@gmail.com> References: Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\)) Content-Type: multipart/alternative; boundary="Apple-Mail=_7FCFE676-525F-4C96-A7B7-B40CA2A7912D" Return-path: Received: from eggs.gnu.org ([209.51.188.92]:47642) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hH9Gm-0000gN-9P for help-guix@gnu.org; Thu, 18 Apr 2019 11:48:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hH9Gk-0006hp-4x for help-guix@gnu.org; Thu, 18 Apr 2019 11:48:12 -0400 Received: from mail-pl1-x629.google.com ([2607:f8b0:4864:20::629]:44159) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hH9Gh-0005fR-A2 for help-guix@gnu.org; Thu, 18 Apr 2019 11:48:08 -0400 Received: by mail-pl1-x629.google.com with SMTP id g12so1342328pll.11 for ; Thu, 18 Apr 2019 08:47:57 -0700 (PDT) In-Reply-To: List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: mikadoZero Cc: help-guix --Apple-Mail=_7FCFE676-525F-4C96-A7B7-B40CA2A7912D Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Hi! > On Apr 17, 2019, at 7:26 PM, mikadoZero wrote: The rust integrations within Guix are a bit incomplete at the moment, = but I=E2=80=99ve been making some efforts to get things going. Right now it is possible to = build individual crates but with a *ton* of manual intervention in the package = definitions. I=E2=80=99m working on another change that should make it possible to start packaging rust = based packages/applications into Guix, hoping to share something next week. > If cargo is not packaged are people who are using rust with Guix = System > using rustc and manually managing their dependencies? Cargo is packaged in Guix today, however, it is exposed as an output of = the rust package (http://guix.info/manual/en/Packages-with-Multiple-Outputs.html = ). This confused me a bit the first time I installed rust on Guix as well. = You=E2=80=99ll need to run `guix package -i rust:cargo` to make it available. Perhaps the = Guix search needs updated to also search for matching package outputs=E2=80=A6 As for extra tools like rls, rustfmt, and clippy: these are usually = distributed with the compiler source tarball. Currently they are not being build/packaged = as outputs because no one has done the work to expose them as such. If you=E2=80=99re interested in using them, I encourage you to try = exposing them in the rust package definitions! If you need any help, feel free to reach out! > Are there any special considerations for Guix packages that provide > programs like cargo and rustup that are also package managers? >=20 > How does Guix deal with something like rust nightly releases if at = all? Guix does not package nightly rust, and I don=E2=80=99t anticipate it = ever will. Getting the rust compiler built and packaged into rust takes a little bit of = effort, and it would be impossible to keep up with the nightlies by hand. Rustup seems to be the right way to make alternative rust toolchains = available and maintained outside of the Guix store. The last time I tried to = install rustup via the conventional installer, it failed to run on my machine outright, = probably because all necessary artifacts are in the store and not in the usual = Linux distro locations. Once the Guix cargo build system is flushed out a bit more, I anticipate = it should be possible to define and build rustup as a Guix package. =E2=80=94Ivan --Apple-Mail=_7FCFE676-525F-4C96-A7B7-B40CA2A7912D Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 Hi!

On Apr 17, 2019, at 7:26 PM, mikadoZero = <mikadozero@yandex.com> = wrote:

The rust = integrations within Guix are a bit incomplete at the moment, but I=E2=80=99= ve been
making some efforts to get things going. Right now it = is possible to build individual
crates but with a *ton* of = manual intervention in the package definitions. I=E2=80=99m = working
on another change that should make it possible to = start packaging rust based
packages/applications into Guix, = hoping to share something next week.

If cargo is not = packaged are people who are using rust with Guix System
using rustc and manually managing their dependencies?

Cargo = is packaged in Guix today, however, it is exposed as an output of the = rust





Guix does = not package nightly rust, and I don=E2=80=99t anticipate it ever will. = Getting
the rust compiler built and packaged into rust takes a = little bit of effort,
and it would be impossible to keep up = with the nightlies by hand.

Rustup = seems to be the right way to make alternative rust toolchains = available
and maintained outside of the Guix store. The last = time I tried to install rustup
via the conventional installer, = it failed to run on my machine outright, probably
because all = necessary artifacts are in the store and not in the usual Linux = distro
locations.

Once the = Guix cargo build system is flushed out a bit more, I anticipate it = should
be possible to define and build rustup as a Guix = package.

=E2=80=94Ivan

= --Apple-Mail=_7FCFE676-525F-4C96-A7B7-B40CA2A7912D--