Privacy-respecting front-end to iFunny
Go to file
Skylar "The Cobra" Widulski 4105c9df46
Add missing space in index page
Signed-off-by: Skylar "The Cobra" Widulski <cobra@vern.cc>
2024-01-21 14:44:09 -05:00
guile-libxml2@1c3ff42fa4 Update copyright 2024-01-03 11:30:31 -05:00
static Make logo's eyes bigger 2023-12-16 17:13:30 -05:00
unfunny Add missing space in index page 2024-01-21 14:44:09 -05:00
.gitignore Init 2023-12-16 15:34:45 -05:00
.gitmodules Init 2023-12-16 15:34:45 -05:00
LICENSE Init 2023-12-16 15:34:45 -05:00
README.md Mention only one page, add imagemagick to dependencies 2023-12-16 15:54:00 -05:00
instances.json Add ~vern instance 2023-12-17 06:16:09 -05:00
unfunny.scm Update copyright 2024-01-03 11:30:31 -05:00

README.md

UNfunny

UNfunny is a privacy-respecting frontend to iFunny

iFunny? more like UNfunny!!!!

Currently only the images are supported because afaik thats the only reason anyone goes to ifunny.com. If you think I'm wrong, open an issue.

Support

Join our Matrix room for support and other things related to UNfunny

Instances

See instances.json

Run your own instance

Dependencies

This program is written in Guile Scheme.

You will need need guile, guile-gnutls, guile-lib, imagemagick (for removing the watermark), and guile-libxml2. guile-libxml2 is submodule in this repository libxml2, libgumbo, and gumbo-libxml installed.

Running

  1. Clone the repository using git clone --recurse-submodules http://git.vern.cc/cobra/UNfunny
  2. cd into guile-libxml2
  3. Follow the build instructions there
  4. cd back to the main repo
  5. Run guile -L . -L guile-libxml2 unfunny.scm
  6. Connect to http://localhost:8004 (or point your reverse proxy to it)
  7. Profit

Environment

PATCHES_URL - Link to any patches that were applied. Necessary if there are any. Do not set if there aren't.

The following are optional.

PORT - What port to run on (default 8004).

WAND_PATH - Path to libMagickWand-6.Q16.so (default similar to below).

LIBXML2_LOCATION (Used by guile-libxml2) - Path to libxml2.so (default libxml2, which checks LD_LIBRARY_PATH).

GUMBO_LIBXML_LOCATION (Used by guile-libxml2) - Path to libgumbo_xml.so (default ./gumbo-libxml/.libs/libgumbo_xml.so, can be edited to libgumbo_xml, which does the same thing as libxml2 in LIBXML2_LOCATION)

Notes

When using a service manager (e.g. systemd), make sure the stop signal is set to SIGINT, or 2. This will prevent EADDRINUSE.