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

Status of dependencies unclear #823

Open
alerque opened this issue Mar 14, 2023 · 1 comment
Open

Status of dependencies unclear #823

alerque opened this issue Mar 14, 2023 · 1 comment

Comments

@alerque
Copy link

alerque commented Mar 14, 2023

I think the dependencies section of the docs needs some help. Somebody recently pointed out that "libx11 is no longer required" with a link to some commit where it was dropped, but the docs are not clear on this subject.

### Dependencies
#### Debian/Ubuntu
You will need to install the "pkg-config" and "libssl-dev" package:
@[code](@snippets/installation/install_pkg_config_libssl_dev.sh)
#### RHEL based distros
You will need to install "libxcb", "openssl-devel" and "libX11-devel":
@[code](@snippets/installation/install_rhel_dependencies.sh)
#### macOS
Using [Homebrew](https://brew.sh/), you will need to install "openssl" and "cmake" using:
@[code](@snippets/installation/macos_deps.sh)

This section leaves me (as a distro packager for Arch Linuk) with more questions than answers. Why are X11 and XCB libs required on RedHat based distros but not Debian based? Is pkg-config a run time dependency or a build time dependencies? Why does some packaging list curl and bzip2 as dependencies, were these once dependencies now removed, or just undocumented, or just packaging mistakes? Why does macOS need cmake but not other platforms? Experimentally nushell seems to build without XCB or X11 libs, and searching the code base suggests nothing about XCB is used any more.

Can somebody that actually knows clarify what is actually needed at build & run times now and document these as generic dependencies, then comment in the per-distro sections on why those lists vary (e.g. perhaps one was assuming Ubuntu has X11 installed, something that may be true for most workstations but not necessarily servers).

@alerque
Copy link
Author

alerque commented Mar 15, 2023

As far as I can tell neither libxcb or libx11 are used or linked during build. Likewise curl and bzip2 are irrelevant. On the other hand openssl (libssl.so and libcrypto.so) is linked, as is zlib (libz.so), so those should be noted as dependencies besides of course glibc, which kind of goes without saying.

ayax79 pushed a commit to ayax79/nushell.github.io that referenced this issue Jun 26, 2024
Here is a bunch of fixes I implemented to make Winget custom completion
script functional.
Namely,
- Made it compatible with the latest Nushell version
- Fixed parsing of Winget show command
- Added the missing command aliases
- Implemented a workaround for the in Winget itself when filtering for a
particular package source -
microsoft/winget-cli#4236
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant