Skip to content

bootstrap: sanity check install prefix and sysconfdir #113580

Closed

Description

@cuviper

In the followup discussion on #110906, we discovered that their original problem was because they had chosen a path under their home directory for [install] prefix, but they had not changed the default sysconfdir = "/etc". So most things installed fine, but they didn't have permission to write /etc/bash_completion.d/cargo.

Bootstrap could sanity check this when starting an install, seeing that prefix is writable by the current user but the absolute sysconfdir is not. (A relative sysconfdir goes under prefix, which should be fine.) This should also take DESTDIR into account as a further prefix on all installation paths.

Activity

  1. added
    T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
    on Jul 11, 2023
  2. added
    needs-triageThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triaging
    on Jul 11, 2023
  3. added
    C-enhancementCategory: An issue proposing an enhancement or a PR with one.
    and removed
    needs-triageThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triaging
    on Jul 12, 2023
  4. LJason77 commented on Jul 13, 2023

    @LJason77

    I have just updated to version 1.71.0, and now I'm receiving the terminal warning:
    ~/.rustup/toolchains/stable-aarch64-unknown-linux-gnu/etc/bash_completion.d/cargo: No such file or directory

    In my previous setup, I added the line source $(rustc --print sysroot)/etc/bash_completion.d/cargo to my ~/.bashrc file.

  5. cuviper commented on Jul 15, 2023

    @cuviper
    MemberAuthor

    @LJason77 yeah, #110906 made that effectively $sysroot/src/etc. That was reverted in #113579, and now proposed for stable and beta backports. So you could add src/ for now, but it will be going back to the way it was.

  6. self-assigned this
    on Sep 24, 2023
  7. added a commit that references this issue on Sep 30, 2023
    bb6c66b
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

C-enhancementCategory: An issue proposing an enhancement or a PR with one.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions