Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build failure with HOME=/nonexistent #4881

Closed
bremner opened this issue Dec 23, 2023 · 8 comments
Closed

build failure with HOME=/nonexistent #4881

bremner opened this issue Dec 23, 2023 · 8 comments
Labels
build Build failures, Makefiles, Zuo scripts, autoconf, building instructions, etc.

Comments

@bremner
Copy link

bremner commented Dec 23, 2023

What version of Racket are you using?
8.11.1 [cs]

What program did you run?
raco setup (as part of Debian build, full log attached)

What should have happened?
Nothing has changed in the build environment since 8.10

If you got an error message, please include it here.

make-directory: cannot make directory
path: /nonexistant/
system error: Permission denied; errno=13
context...:
/<>/collects/racket/file.rkt:134:0: body of 'register
/<>/collects/racket/file.rkt:134:0: make-directory*
[repeats 2 more times]
/<>/share/pkgs/quickscript/library.rkt:78:0: add-third-party-script-directory!
/<>/collects/racket/contract/private/arrow-val-first.rkt:489:18
/<>/collects/compiler/private/cm-minimal.rkt:696:0: compile-zo*
/<>/collects/compiler/private/cm-minimal.rkt:452:15
/<>/collects/compiler/private/cm-minimal.rkt:441:12: build
/<>/collects/compiler/private/cm-minimal.rkt:412:0: maybe-compile-zo
/<>/collects/compiler/private/cm-minimal.rkt:210:0: compile-root
/<>/collects/compiler/private/cm-minimal.rkt:105:4
/<>/collects/setup/parallel-build.rkt:332:9
/<>/collects/setup/parallel-do.rkt:465:25
/<>/collects/setup/parallel-do.rkt:451:20: loop

Please include any other relevant details
e.g., the operating system used or how you are running the code.
Debian unstable

Full build log
log.txt

@mflatt
Copy link
Member

mflatt commented Dec 23, 2023

@Metaxal — it looks like the problem happens when building quickscript. I don't immediately see why add-third-party-script-directory! would be called at build time, though.

@Metaxal
Copy link
Sponsor Contributor

Metaxal commented Dec 23, 2023 via email

@LiberalArtist
Copy link
Contributor

@bremner For Guix I fixed this by just deleting the offending file in a patch. IIRC from the linked issue, Nix did the same.

(I am planning to work on a solution for Quickscript in the next couple of weeks.)

Knowing now that distros with less idiosyncratic requirements than Guix and Nix are also affected by attempting to write an nonexistent home directory, it would be great if we could figure out how to catch this in Racket's release testing.

@bremner
Copy link
Author

bremner commented Dec 28, 2023 via email

@mflatt
Copy link
Member

mflatt commented Jan 1, 2024

We can update https://github.com/racket/distro-build/blob/master/distro-build-test/tests/unix-installer.rkt to set HOME=/nonexistent.

@mflatt
Copy link
Member

mflatt commented Jan 10, 2024

I've updated "unix-installer.rkt", and although we're not yet in the testing phase for the upcoming v8.12 release, the initial candidate build passes with HOME=/nonexistent. (I also confirmed that v8.11.1 does not pass the updated test.)

@shhyou shhyou added the build Build failures, Makefiles, Zuo scripts, autoconf, building instructions, etc. label Jan 10, 2024
@sorawee
Copy link
Collaborator

sorawee commented May 24, 2024

@mflatt resolved? OK to close?

@mflatt
Copy link
Member

mflatt commented May 24, 2024

Yes, I think the original problem was fixed, and the installer test was part of the v8.13 release (and maybe v812, but I forget).

@mflatt mflatt closed this as completed May 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Build failures, Makefiles, Zuo scripts, autoconf, building instructions, etc.
Projects
None yet
Development

No branches or pull requests

6 participants