Source code of manned.org https://manned.org/
Find a file
Yorhel ccecb28835 Drop grog(1) in favor of 'groff -mandoc' + two regexes
This provides an almost 2x speedup in man page rendering time and
removes some heuristics to work around bad guesses by grog(1).

Funnily enough, this also fixes rendering of obscure man pages that
happen to use 'grap' macros; grog detected those correctly but my groff
installation doesn't actually support rendering that.

No doubt I broke rendering of other pages, will have to see.
2024-04-28 15:08:00 +02:00
indexer Get rid of package categories 2024-04-28 10:37:04 +02:00
lib/ManUtils Drop grog(1) in favor of 'groff -mandoc' + two regexes 2024-04-28 15:08:00 +02:00
util Get rid of package categories 2024-04-28 10:37:04 +02:00
web Make the Rust garbage compile again 2021-12-11 11:53:26 +01:00
www Get rid of package categories 2024-04-28 10:37:04 +02:00
.gitignore Index NetBSD 2024-04-14 11:35:04 +02:00
COPYING Switch to AGPL license 2021-12-13 17:56:29 +01:00
Makefile A few more HTML conversion improvements 2017-01-15 20:27:16 +01:00
README.md Make the Rust garbage compile again 2021-12-11 11:53:26 +01:00
schema.sql Get rid of package categories 2024-04-28 10:37:04 +02:00

The Manned.org Source Code

This repository holds the source code of Manned.org. For a description of the site, check out https://manned.org/info/about.

Ironically, documentation about how things work is completely lacking.

Requirements

  • perl: A somewhat recent version (no idea which, due to my XS usage)
  • postgresql: Also a somewhat recent version
  • rust: Version who-knows-which

Web front-end

  • AnyEvent
  • DBD::Pg
  • DBI
  • JSON::XS
  • SQL::Interp
  • TUWF

Man page indexer

  • curl
  • psql

File structure

  • indexer/ -> The Rust program that scans package repositories for updates, fetches new packages and extracts the man pages.
  • lib/ManUtils/ -> Perl/XS helper module to format man pages into HTML (uses web/).
  • sql/ -> Database schema & updates.
  • util/ -> Cron job and scripts to run indexer/ on the right repositories.
  • web/ -> Badly named Rust library to convert man pages into HTML.
  • www/ -> The web front-end.