Bug 1213364

Summary: openSUSE does not support 'rustup default system' workflow
Product: [openSUSE] openSUSE Tumbleweed Reporter: Lassi Väätämöinen <lassi.vaatamoinen>
Component: DevelopmentAssignee: William Brown <william.brown>
Status: RESOLVED INVALID QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: Current   
Target Milestone: ---   
Hardware: Other   
OS: openSUSE Tumbleweed   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Lassi Väätämöinen 2023-07-16 15:37:02 UTC
Following the standard 'rustup' workflow for linking to system packages causes 

"error: infinite recursion detected",

when attempting to execute 'rustc' or 'cargo'.

1. zypper in rustup
2. rustup toolchain link system /usr
3. rustup default system
Comment 1 William Brown 2023-08-03 01:35:57 UTC
We don't support this since rustup and rustX.XX+cargoX.XX should never be installed at the same time.

Rust packages from the system are intended for server side build work flows only.

Rustup is intended for you to use as a developer.

So we will never support rustup having the system rust as a toolchain since these shouldn't even be possible to parallel install in the first place. 

What you are seeing with this recursion is that rustup works by having proxy binaries for cargo/rustc and that allows it to discover the correct tool chains. So you are actually trying to link rustup to itself which is why you trigger this.