Clarification: Just making fun of people(including myself) who watch shitty videos instead of official documentation.
I really like the man pages, but they’re an encyclopedia, not a tutorial. Great for looking up specifics when you already have a foundation. Not so great when starting out
My dryer broke the other day, which turned out to be the heating element. I watched a bunch of videos to try and figure out how to troubleshoot the problem and hopefully address it.
One of the videos, after an intro, claimed to have the solution. Then they proceeded to talk about the temperature control features of the machine and how I should make sure the heat is turned on.
That is the level many of the unix / software development videos out there. Just literally some AI slop or silly person who doesn’t know what they are talking about uploading a quick clip to grow their channel.
Man pages are for reference, not learning.
To be fair we do the same with windows.
Man pages fucking suck, and I say that having been working with linux full time professionally for 11 years.
The best ones have plenty of examples.
How about using tealdeer?
Is there any reason to use tealdeer over just tldr aside from speed?
Some mans are unreadable. I’ve been curling cheat.sh/[command] and its been great for example commands. Highly recommend.
I also like tldr for new commands. Sometimes I discover new ways by using it on the commands I know…
what the fuck is a man page
something related to mansplaining… /s
its a giant wall of text i have never used that can be opened with the terminal command
man <othercommand>
where <othercommand> is literally any other commandoh is it short for ‘manual’?
yeah i kind of forgot that word
man man
Consider this, nearly every major distro (and some minor distros like Alpine) has a wiki (or is based on a Distro that does).
Thihi and sooner or later they all end up at the arch linux wikis.
We use arch btw.
I also use Arch btw :3
Same outcome even if you read man pages
A lot of man pages suck ass.
Except openBSD ones, they should be the standard of quality for user documentation.
Man pages are for people who already know a lot about Linux and understand all the nuances and understanding of Linux
Even after using Linux for many many years I still don’t understand wtf nearly all man pages mean. It’s like a fucking codex. It needs to be simplified but not to the extreme where it doesn’t give you information you need to understand it.
Tbh that’s most of Linux, not designed for average people, designed by Linux users who think that all others should know everything about Linux.
Tbh a lot of man pages don’t even give you enough usage information to make full use of a package. I’m thinking of the ones which are like an extended
--help
blockThey also usually assume a lot about the users’ knowledge of the domain of the program itself.
In my experience, many programs’ man/help is very brief, often a sentence or less per command/flag, with 2 or more terms that don’t mean anything to the uninitiated. Also, even when I think I know all the words, the descriptions are not nearly precise enough to confidently infer what exactly the program is going to do.
Disclaimers for potentially dangerous/irreversible actions are also often lacking.Which is why I almost always look for an article that explains a command using examples, instead of trying to divine what the manual authors had in mind.
Enter tldr and navi
I’d like to add
apropos
to this as well.my favorite is tealdeer!
l must be using man pages very differently from you. To me they are mostly the easy reference to check the available flags for a command, and sometimes the reference on available config file entries, e.g. ssh_config(5)
For those things I was using them quite soon when I started using Linux, because it’s quicker than googleing every time if you just need one flag or one option name. For more complex things, like tar-and-gzip in one which needs like four, I still google though.
Probably there are very complicated ones too, the ones explaining subsystems or APIs of the kernel, but those I don’t need as a user.
I mostly use Tealdear but
--help
works well when Tealdear gets too simplified.Man pages are literally indecipherable as a newby
No worries!
man man
… I’m in over my head here.
Here’s a excerpt from
man chmod
that can be summarized as “You probably want to mark the file you downloaded as executable. Runchmod +x FILENAME
”DESCRIPTION
This manual page documents the GNU version of chmod. chmod changes the file mode bits of each given file according to mode, which can be either a symbolic representation of changes to make, or an octal number representing the bit pattern for the new mode bits.The format of a symbolic mode is [ugoa…][[-+=][perms…]…], where perms is either zero or more letters from the set rwxXst, or a single letter from the set ugo. Multiple symbolic modes can be given, separated by commas.
A combination of the letters ugoa controls which users’ access to the file will be changed: the user who owns it (u), other users in the file’s group (g), other users not in the file’s group (o), or all users (a). If none of these are given, the effect is as if (a) were given, but bits that are set in the umask are not affected.
The operator + causes the selected file mode bits to be added to the existing file mode bits of each file; - causes them to be removed; and = causes them to be added and causes unmentioned bits to be removed except that a directory’s unmentioned set user and group ID bits are not affected.
The letters rwxXst select file mode bits for the affected users: read ®, write (w), execute (or search for directories) (x), execute/search only if the file is a directory or already has execute permission for some user (X), set user or group ID on execution (s), restricted deletion flag or sticky bit (t). Instead of one or more of these letters, you can specify exactly one of the letters ugo: the permissions granted to the user who owns the file (u), the permissions granted to other users who are members of the file’s group (g), and the permissions granted to users that are in neither of the two preceding categories (o).
A numeric mode is from one to four octal digits (0-7), derived by adding up the bits with values 4, 2, and 1. Omitted digits are assumed to be leading zeros. The first digit selects the set user ID (4) and set group ID (2) and restricted deletion or sticky (1) attributes. The second digit selects permissions for the user who owns the file: read (4), write (2), and execute (1); the third selects permissions for other users in the file’s group, with the same values; and the fourth for other users not in the file’s group, with the same values.
chmod doesn’t change the permissions of symbolic links; the chmod system call cannot change their permissions on most systems, and most systems ignore permissions of symbolic links. However, for each symbolic link listed on the command line, chmod changes the permissions of the pointed-to file. In contrast, chmod ignores symbolic links encountered during recursive directory traversals. Options that modify this behavior are described in the OPTIONS section.
This is a perfect example bc five years ago this would be total gibberish to my fledgling self. But today it’s mostly readable as reference material
I just wish they’d put some damn usage examples in there. I usually just need to do one thing I don’t need a dissertation about it.
manpages of gnu commands usually lack them because they’re in their info system
Info system?
Run
info info
Texinfo pages were originally meant to be a longer alternative to manpages that had support for featureful navigation (links, indexes, etc). They’re nice and I can see a world where they did catch on, but the standard viewer is always a little bit of a shock to jump in to (being based off Emacs and all)
Install
tealdeer
. Then instead ofman programname
typetldr programname
.Some man pages have them. I agree that they should be more common though.
I’ve gotten in the dumbfounding habit of searching
man <program>
on the web instead of in the terminal I’m already typing in.Sometimes I try to quit my browser with
:q
or try to send emails with:wq
That’s a browser extension worth building
You ask someone for instructions
They send you some bullshit 10 minutes long video
Now instead of ctrl+f or skimming the article and jumping where you want to go you need to jump around in a video
REEEE
I have a theory a lot of people are functionally illiterate and thus prefer videos as they can’t skim well
Or maybe they just grok things more effectively via verbal instruction and visual aids?
Isn’t that the same thing?
Man pages are useful references but go ahead and learn how to use sed or awk from their man pages.
Yep.
That’s what the RTFM folks don’t seem to understand: if you didn’t even know, what you’re looking for, you can’t look it up.
This in general is the main reason for the ai surge. Just dump the 2 sentence explanation into a prompt and hope something sensible comes from it rather than googling for half an hour.
At least for programming/Linux stuff, it often enough actually does deliver keywords, that you can use as jumping off points. The proposed solutions however…
No, make it like this:
I have a problem with program x. Please tell me how i do y if I want z. Use this man page for reference:
[insert man page into promt py copy paste]
This gives way better results.
Most of the time you don’t have to insert the man page, it’s already baked into the neural network model and filling the context window sometimes gives worse results.
I noticed that mentioning commands you want gives good results e.g.:
Hi,
I want to replace line with HOSTTOOLS += " svn"
in all layer.conf files under current directory
by usingfind
andsed
commands.If it’s more complicated, pasting parial scrript for LLM to finish gave better results (4 me),
than pure prompt text.
Or make