Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 767451 - dev-lang/rust-bin-1.48.0 add aarch64-unknown-linux-musl support and unmask if possible
Summary: dev-lang/rust-bin-1.48.0 add aarch64-unknown-linux-musl support and unmask if...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal minor (vote)
Assignee: Gentoo Rust Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-01-27 13:54 UTC by fee1-dead-beef
Modified: 2022-10-08 19:40 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description fee1-dead-beef 2021-01-27 13:54:44 UTC
From the Rust Forge Documentation: https://forge.rust-lang.org/infra/other-installation-methods.html#standalone-installers

Architectures amd64 and arm64 have musl tarballs available, so why shouldn't gentoo musl lift the mask?

Reproducible: Always
Comment 1 Ionen Wolkens gentoo-dev 2021-01-27 14:54:28 UTC
Have you tested it?

e.g. is rust-bin package already able to fetch those tarballs and works if you unmask yourself
Comment 2 fee1-dead-beef 2021-01-29 11:48:45 UTC
I wanted to install it for aarch64 but looks like the rust-toolchain.eclass didn't include the aarch64-unknown-linux-musl target because it was recently added in 1.48.0. Will test this soon on an amd64 machine.
Comment 3 fee1-dead-beef 2021-01-29 16:18:29 UTC
It does work for both 1.47 and 1.46 and rustc is working fine. I am able to build binaries and execute them without any errors.

One thing: rust-bin isn't really masked on musl amd64. I am able to emerge without any unmasking on a clean chroot. I don't know if that was intended.
Comment 4 Ionen Wolkens gentoo-dev 2021-01-29 16:25:20 UTC
(In reply to fee1-dead-beef from comment #3)
> One thing: rust-bin isn't really masked on musl amd64. I am able to emerge
> without any unmasking on a clean chroot. I don't know if that was intended.
Ah yes, it's unmasked specifically for amd64 given it's available already. So this is only about aarch64.
Comment 5 fee1-dead-beef 2021-01-30 13:42:33 UTC
I think the mask on firefox should also be removed because rust works on musl now
Comment 6 Kyle Elbert 2021-02-04 12:35:23 UTC
I can confirm at least a simple hello world rust program works with aarch64 musl rust after adding support to the eclass.
Comment 7 Georgy Yakovlev archtester gentoo-dev 2021-02-11 22:01:05 UTC
1.50.0 should have it, landing soon to the repo.

if works fine I can backport back to 1.48.0 if needed
Comment 8 Larry the Git Cow gentoo-dev 2021-02-11 23:49:22 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c30daacad49381e17cffeb5f536b49a89a86991c

commit c30daacad49381e17cffeb5f536b49a89a86991c
Author:     Georgy Yakovlev <gyakovlev@gentoo.org>
AuthorDate: 2021-02-11 21:58:18 +0000
Commit:     Georgy Yakovlev <gyakovlev@gentoo.org>
CommitDate: 2021-02-11 23:40:56 +0000

    dev-lang/rust-bin: bump to 1.50.0, with aarch64*musl support
    
    Bug: https://bugs.gentoo.org/767451
    Package-Manager: Portage-3.0.14, Repoman-3.0.2
    Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>

 dev-lang/rust-bin/Manifest               |  14 +++
 dev-lang/rust-bin/rust-bin-1.50.0.ebuild | 161 +++++++++++++++++++++++++++++++
 2 files changed, 175 insertions(+)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f0e8b7937f7e8a361f53932c850a9996f447e614

commit f0e8b7937f7e8a361f53932c850a9996f447e614
Author:     Georgy Yakovlev <gyakovlev@gentoo.org>
AuthorDate: 2021-02-11 21:51:44 +0000
Commit:     Georgy Yakovlev <gyakovlev@gentoo.org>
CommitDate: 2021-02-11 23:40:55 +0000

    eclass/rust-toolchain.eclass: add aarch64-*-musl target support
    
    Bug: https://bugs.gentoo.org/767451
    Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>

 eclass/rust-toolchain.eclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Comment 9 Georgy Yakovlev archtester gentoo-dev 2021-02-11 23:52:24 UTC
ok support added for both bin and source versions, as for esclass.

not tested much as I lack musl arm64 installations currently.


please report how it works, it's  masked for now still.

if I receive positive reports I'll proceed with unmasking, hopefully will do my tests as well.
Comment 10 Zulu Foxtrott 2021-02-19 08:34:25 UTC
I tried to emerge rust-bin-1.50.0 on aarch64-gentoo-linux-musl, this is what I get:

>>> Unpacking rust-1.50.0-aarch64-unknown-linux-gnu.tar.xz to /var/tmp/portage/dev-lang/rust-bin-1.50.0/work
mv: cannot stat '/var/tmp/portage/dev-lang/rust-bin-1.50.0/work/rust-1.50.0-aarch64-unknown-linux-musl': No such file or directory

(The directory '/var/tmp/portage/dev-lang/rust-bin-1.50.0/work/rust-1.50.0-aarch64-unknown-linux-gnu' exists, but that's -gnu not -musl)
Comment 11 fee1-dead-beef 2021-02-21 04:19:22 UTC
(In reply to Zulu Foxtrott from comment #10)
> I tried to emerge rust-bin-1.50.0 on aarch64-gentoo-linux-musl, this is what
> I get:
> 
> >>> Unpacking rust-1.50.0-aarch64-unknown-linux-gnu.tar.xz to /var/tmp/portage/dev-lang/rust-bin-1.50.0/work
> mv: cannot stat
> '/var/tmp/portage/dev-lang/rust-bin-1.50.0/work/rust-1.50.0-aarch64-unknown-
> linux-musl': No such file or directory
> 
> (The directory
> '/var/tmp/portage/dev-lang/rust-bin-1.50.0/work/rust-1.50.0-aarch64-unknown-
> linux-gnu' exists, but that's -gnu not -musl)

See this comment https://bugs.gentoo.org/771006#c6
Comment 12 tt_1 2021-07-19 14:17:29 UTC
thank you very much for bringing this into the tree, I'm now trying to get an armv7a-unknown-linux-musleabihf std lib via the RUST_CROSS_TARGETS=() env file hack, lets hope for the best :-)
Comment 13 Morteza 2022-10-07 07:08:12 UTC
it's still masked in musl profile https://gitweb.gentoo.org/repo/gentoo.git/tree/profiles/features/musl/package.mask#n280
Comment 14 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-10-08 19:40:32 UTC
(In reply to Morteza from comment #13)
> it's still masked in musl profile
> https://gitweb.gentoo.org/repo/gentoo.git/tree/profiles/features/musl/
> package.mask#n280

It is unmasked on profiles which have binaries:
default/linux/amd64/17.0/musl/package.mask:5:# rust-bin is available on amd64 musl
default/linux/amd64/17.0/musl/package.mask:6:-dev-lang/rust-bin
default/linux/amd64/17.0/musl/package.use.mask:6:dev-lang/rust-bin doc
default/linux/arm64/17.0/musl/package.mask:5:# rust-bin is awailable on arm64 musl
default/linux/arm64/17.0/musl/package.mask:6:-dev-lang/rust-bin