makewhatis
on macOS fails to process Lix man pages #515
Labels
No labels
Area/build-packaging
Area/cli
Area/evaluator
Area/fetching
Area/flakes
Area/language
Area/profiles
Area/protocol
Area/releng
Area/remote-builds
Area/repl
Area/store
bug
crash 💥
Cross Compilation
devx
docs
Downstream Dependents
E/easy
E/hard
E/help wanted
E/reproducible
E/requires rearchitecture
imported
Needs Langver
OS/Linux
OS/macOS
performance
regression
release-blocker
RFD
stability
Status
blocked
Status
invalid
Status
postponed
Status
wontfix
testing
testing/flakey
ux
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: lix-project/lix#515
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The Lix man pages look like this:
They need to look like this:
Way more details than you want
So the Fish shell's default completions for
man
uses a wrapper aroundapropos
to get the names of available man pages. This wrapper uses/usr/libexec/makewhatis
to build a cache of the availableman
pages and their descriptions.On macOS,
/usr/libexec/makewhatis
is a completely different program than themakewhatis
binary you get from building Nixpkgs'mandoc
, although they probably have a common lineage. You can check the macOSmakewhatis.c
source code here.Man page excerpts
On macOS:
From Nixpkgs:
Anyways, when you run this program on macOS, it chokes on the Lix man pages, and apparently if it can't parse a description it doesn't bother writing any indication that the command exists at all:
Long story short it turns out that
makewhatis
needs.SH Name
on one line.Related: https://github.com/fish-shell/fish-shell/pull/10713
Needs
lowdown
options indoc/manual/render-manpage.sh
: https://kristaps.bsd.lv/lowdown/Submitted a patch upstream: https://github.com/kristapsdz/lowdown/pull/138