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

Installer fails on Fedora Silverblue #962

Closed
evenreven opened this issue Mar 12, 2021 · 7 comments
Closed

Installer fails on Fedora Silverblue #962

evenreven opened this issue Mar 12, 2021 · 7 comments

Comments

@evenreven
Copy link

main: line 362: openssl: command not found
Error: Could not determine OpenSSL version for ''.

Error: The current operating system (Linux) does not appear to be supported by Volta.

Error: Could not download Volta version '1.0.2'. See https://github.com/volta-cli/volta/releases for a list of available releases

Looks like Silverblue doesn't actually have an executable named openssl. There's a package called openssl-libs-1.1.1i-3.fc33.x86_64, but it doesn't provide an executable. Would that be a problem actually using Volta, or is it only a problem for the installer shell script? Can I safely install the volta-1.0.2-linux-openssl-1.1.tar.gz archive instead? I noticed there's a RHEL openssl version, but I assume Silverblue (which is an immutable/ostree-based Fedora spin) shouldn't use this?

@charlespierce
Copy link
Contributor

Hi @evenreven, assuming that package makes the shared lib files available, then yeah, it should be safe to install using the tarball. Most likely the standard (non-RHEL) one would be the appropriate one, we create a special RHEL package because RHEL rolls their own OpenSSL version that uses a different SONAME value from the stock OpenSSL tree.

If using the tarball, you'll need to replicate what the install script does, which primarily is:

  • Determine the appropriate Tarball
  • Download and unpack the contents into ~/.volta/bin
  • Run ~/.volta/bin/volta setup

The last step there will modify your shell's startup scripts to include Volta on the PATH, so it should prompt you afterwards to open a new terminal. For more details, the process is described under "Custom Installers" in the Installer Docs.

@evenreven
Copy link
Author

Thanks for the lightning-fast response! I actually prefer installing from tar balls and setting up the zshrc stuff myself, so no trouble there. I'll go for the regular openssl 1.1. 👍

(Also tempted to start a thread on discussion.fedoraproject.org to ask some more knowledgeable people why it's like this, but that's no big rush.)

@evenreven
Copy link
Author

evenreven commented Mar 16, 2021

I did some digging, and Fedora has split openssl into two packages, openssl-libs and openssl. -libs is the main package, while openssl contains related "utilities", according to the dnf description, including the executable.

Since Silverblue is immutable and you can't easily remove base packages, the maintainers err on the side of minimalism, so they include only the -libs package (the same is true on the podman fedora image). Both are probably there on Fedora (don't have it handy to check, though).

It's a niche distro (for now), so I'm used to applying elbow grease and doing stuff manually. But is it doable to check for the existence of openssl without using the output of the openssl version command? Or if that's hard, show an error message if /etc/os-release contains the line VARIANT_ID=silverblue. Something along the lines of "You have to install Volta manually. Since you're a weirdo Linux user, you should be okay with this." :)

PS: I tried actually using Volta after a manual install. Works really well, thanks for writing this!

@charlespierce
Copy link
Contributor

@evenreven Thanks for digging in a bit! I suspect we may be able to detect the openssl version without using the openssl executable, though it'll take a bit of investigation to see how best to handle that. Regardless, we can definitely improve that error message to provide more context and a path forward for the more esoteric linux distros.

So glad you're enjoying Volta despite the difficulties!

@chriskrycho
Copy link
Contributor

What's the status here, @charlespierce @evenreven? I do not personally use or work with Fedora, so do not have any visibility here. I think our work to switch over to rustls in #1214 should have helped?

@charlespierce
Copy link
Contributor

charlespierce commented Dec 20, 2023 via email

@chriskrycho
Copy link
Contributor

Excellent! 🎉 I am going to go ahead and close this accordingly, and ask folks to open new issues if they have similar issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants