Commit graph

117 commits

Author SHA1 Message Date
Yorhel
fa8e084879 Bunch of fixes 2022-01-10 20:05:09 +01:00
Yorhel
997dd8728c www: Add some new flexible URL formats
New canonical permalink format is now:

  /man.<hash>/<system>/<name>.<section>

Including the system name makes for more predictable navigation between
man pages of the same system.

This new URL format also fixes a problem with not being able to browse
from a package's page to the correct page when the package has multiple
versions of the same man.

This is also yak shaving for some new navigation and formatting features
I have planned.
2021-12-19 17:38:14 +01:00
Yorhel
46b4a5f7e0 Change contact email
contact@manned.org works fine, too, except I don't have outgoing mail
setup to go through an smtp proxy so I can't reply to Outlook and gmail
(and a few others). Seriously, fuck providers who can't see the
difference between spam messages and human replies to legitimate mails.
2021-12-17 10:17:09 +01:00
Yorhel
b39d038811 html: Apply appropriate "lang" attributes
Primarily so that browsers can choose the correct font for CJK pages.
2021-12-16 16:26:00 +01:00
Yorhel
f57c474932 Fixup: remove experimental shorthash URL format 2021-12-16 13:51:10 +01:00
Yorhel
c6f53fb0fb Add system selector to man pages + other stuff
The /man/* URLs now directly open man pages rather than redirecting to
the permalink format, so that the extra source information can be used
to provide a better UI for switching between systems and packages
(currently only between systems).

Step one in getting rid of the JS location/version selection thingies.
Still quite a bit more to do, but I haven't worked it all out yet.
2021-12-16 13:12:14 +01:00
Yorhel
5194ed95cf A few more about page tweaks 2021-12-15 09:52:07 +01:00
Yorhel
2d1dca24e5 Update about page with new license 2021-12-14 15:56:33 +01:00
Yorhel
f376f1f137 Large-ish SQL schema revamp/optimizations
Primarily aimed at reducing the size of the old 'man' (now: files)
table, using smaller integers to refer to man contents and text fields,
and storing a shorthash as an integer for quick lookups. This better
normalization also removes the need to keep a separate 'man_index' cache
for the search function.

The old schema wasn't necessarily bad, but I was in the mood for some
optimizations. And a little cleanup.

Prolly introduces a bunch of new bugs, I haven't tested this too well.
2021-12-14 15:08:54 +01:00
Yorhel
6f7f59c6df Fix homepage reflow while images are loading
Apparently setting the image sizes in CSS wasn't enough, it was still
reflowing in Firefox.
2021-12-14 11:40:14 +01:00
Yorhel
b27d55215a Arch: Mark deleted packages as dead and hide them from listings
We've got a lot of packages in the DB that have long been removed from
the Arch repos. These are still indexed, but won't clutter the package
listing anymore.

Also fixed an issue with packages.id numbers getting rather large
because the indexer allocates a new ID for every package on every
update.
2021-12-13 08:18:17 +01:00
Yorhel
f3323de5e4 churn: Remove systems.relorder column + misc cleanup 2021-12-13 06:56:22 +01:00
Yorhel
3db1283a16 Change to more minimalistic website design + few HTML modernizations
I didn't touch the actual man page pages yet, but they seem to have
mostly survived my CSS changes. There's a LOT of general UI improvements
to be done, while this commit is really just a different style of paint.
2021-12-12 17:29:26 +01:00
Yorhel
b531f71ab0 Index available Alpine Linux repositories 2021-12-11 18:08:46 +01:00
Yorhel
29a6f784f5 wwww: Fix escape_like() to also escape backslash 2021-10-12 13:53:01 +02:00
Yorhel
d0896806c1 Add Debian testing + prefer that instead of Ubuntu 2021-06-10 09:33:32 +02:00
Yorhel
a96aeb6310 Fix /man/* redirects
Forgot to update these functions in the rewrite.
2021-06-09 16:56:43 +02:00
Yorhel
98e4f014ba Rewrite Perl web backend to modern TUWF style
Lots of churn for no real benefit. \o/
2021-06-09 13:43:42 +02:00
Yorhel
c7f85a5685 Workaround issue with spawning child processes in TUWF debug mode
I had applied the same workaround to VNDB's code some time ago. Really
need to figure out why this happens...
2021-04-19 07:45:15 +02:00
Yorhel
212fc725ba Update man page selection algortihm to bias Ubuntu
Should really be Debian, but we only index Debian stable at the moment
and it tends to lag behind Ubuntu a bit. This extra bias is intended to
solve (part of) the issue with distro-specific tooling like 'ifup'.

This really should be updated to have a generic preference order for all
distros, but that's not as easy to implement.

Fixes #1.
2021-04-19 07:39:27 +02:00
Yorhel
89fc82f391 Handle version-indepentend distro man-page redirects
E.g. /man/debian/ncdu
As proposed in issue #1.
2021-04-19 07:26:04 +02:00
Yorhel
92bc63bbde Typo fix on about page 2021-04-17 10:20:08 +02:00
Yorhel
4093dc1911 Fix external link to Arch man pages site 2021-04-14 09:01:06 +02:00
Yorhel
91b43d220b Fix attempts to resolve man pages without name
A bot triggered 'GET /.env', resulting in a lookup on section='env' but
no name. Slow and useless...
2020-10-16 12:49:49 +02:00
Yorhel
bf3c97f981 index.pl: Serve static files when in direct HTTP server mode
Makes it easier to setup a quick development server.
2020-08-07 10:23:40 +02:00
Yorhel
ea0a7a4b71 Link updates 2019-10-22 17:17:05 +02:00
Yorhel
1ce29f7c3f Fix dbManPref(name => "0")
Fixes a timeout and eventual 500 error on https://manned.org/0
2019-06-25 18:54:43 +02:00
Yorhel
958e957791 Add link to mankier.com 2019-03-27 10:50:19 +01:00
Yorhel
cfc656bf12 Convert README to markdown + update git URLs 2018-06-15 10:52:21 +02:00
Yorhel
5480fc206e Link updates 2018-03-25 08:14:53 +02:00
Yorhel
8031a90989 Some improvements to the about text + link to the new Arch man pages 2018-01-21 08:23:57 +01:00
Yorhel
035538f156 Add CentOS 2018-01-21 08:13:05 +01:00
Yorhel
fd657824b3 Add database downloads 2017-12-23 14:28:16 +01:00
Yorhel
aedb1795c1 Favor more recent packages in man page selection 2017-10-27 09:00:46 +02:00
Yorhel
2388aaefcc Stop syncing Fedora 24; Add FreeBSD 11.1 and Ubuntu 17.10 2017-10-20 21:37:33 +02:00
Yorhel
72cb1ff184 Add Ubuntu 17.04 2017-04-14 17:09:18 +02:00
Yorhel
34e8ee8603 Add link to Debian man pages 2017-02-26 09:07:37 +01:00
Yorhel
8e5fa1e165 www: Include .so mans if found in the same package
Unfortunately, this can lead to slightly confusing scenarios, because
the exact package of the displayed man page is not very well defined.
It's possible that, when browsing from a package listing to a man page,
you may see an included file that does not come from the package you
browsed from.
E.g. https://manned.org/pwrite/5f2909f6 - that man page simply includes
pread.2, but from the URL it's unclear from which package or system it
should be included.

The only way to fix this is to add the package ID to the link format.
2017-02-26 08:52:23 +01:00
Yorhel
81e2c99503 Friendlier pagination on package listings 2017-01-25 10:42:01 +01:00
Yorhel
bb46087068 Add Fedora 1 - 25 2017-01-21 09:05:34 +01:00
Yorhel
06694fd131 Style changes 2017-01-20 09:55:43 +01:00
Yorhel
2ee2f7495b Reorganize indexing scripts + use Rust for Debian 2016-11-20 12:34:02 +01:00
Yorhel
1f05463c3a About page: Remove TOC feature as planned 2016-11-09 19:01:24 +01:00
Yorhel
aa01365e60 Move nav menu a bit up to create space
This is where the old nav menu used to be. This involved shrinking the
width of the locations/versions selector, but that never needed the full
page width anyway. Unfortunately I suck at CSS so the nav menu and
selector thing won't look too great on smaller screen sizes; but that's
just a minor visual uglyness.
2016-11-09 18:58:34 +01:00
Yorhel
09af881767 Add TOC listing + more section/lang select back into a nav menu 2016-11-09 18:43:10 +01:00
Yorhel
cb81bedac1 Add arch/encoding metadata to DB + Fetch Arch Linux x86_64
The encoding metadata will be very useful in finding badly decoded man
pages. The package 'arch' is necessary to properly identify which
package was used, which is not obvious now that I'm going to switch more
systems to the (more common) x86_64 arch.
2016-11-06 16:05:16 +01:00
Yorhel
863fae2476 Add link to manpag.es 2016-10-26 19:27:57 +02:00
Yorhel
25a39c6fe4 Improved pagination on package info pages 2016-10-26 19:25:23 +02:00
Yorhel
5436435c3f Improve handling of man names with special characters
The 'source' link was broken for mans with [ or ] characters.
All links were broken for mans with space characters.

Man page of the week:
https://manned.org/KGenericFactory_%20KTypeList_%20Product,%20ProductListTail%20_,%20KTypeList_%20ParentType,%20ParentTypeListTail%20_%20_/dfc33ca6

There's a 5 man pages left with a '%' or '#' character. I've no idea if
it's worth handling those; A fix for these isn't going to be as trivial
as this commit.
2016-10-16 10:19:27 +02:00
Yorhel
6740dc2546 A few more links to other man page sites 2016-10-15 16:46:03 +02:00