merge and update README - frontends - front-ends for some sites (experiment) (DIR) Log (DIR) Files (DIR) Refs (DIR) README (DIR) LICENSE --- (DIR) commit 5e29f7c0a3a955816bdc5e3b418726ec68d5e0b4 (DIR) parent c70b86a2b202dc627b327714e0eeeb355b21a0ac (HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org> Date: Wed, 10 May 2023 19:11:58 +0200 merge and update README Diffstat: M README | 69 +++++++++++++++++++++++++++++-- M archived/duckduckgo/README | 2 -- D youtube/README | 68 ------------------------------- 3 files changed, 65 insertions(+), 74 deletions(-) --- (DIR) diff --git a/README b/README @@ -14,6 +14,14 @@ Unmaintained and archived: * Twitch (not working anymore, it also now required 2FA and OAUTH). +Dependencies +------------ + +* C compiler. +* LibreSSL + libtls. +* make + + Build ----- @@ -21,10 +29,63 @@ To compile a specific front-end: $ make youtube +or all using: -Dependencies +$ make +# make install + + +Features +-------- + +- Search videos. +- Doesn't use JavaScript. +- Doesn't use (tracking) cookies. +- CSS is optional. +- Multiple interfaces available: CGI web, CLI, gopher (gph), this is a + work-in-progress. +- Shows an Atom feed of the user/channel. +- Doesn't use or require the Google API. +- CGI interface works nice in most browsers, including text-based ones. + On OpenBSD it runs "sandboxed" and it can be compiled as a static-linked + binary with pledge(2), unveil(2) in a chroot. + + +Cons/caveats ------------ -* C compiler. -* LibreSSL + libtls. -* make +- Order by upload date is incorrect (same as on Youtube). +- Some Youtube features are not supported. +- Uses scraping so might break at any point. + + +Install HTTP CGI +---------------- + +Nginx + slowcgi example: + + location /idiotbox/css/.* { + root /home/www/domains/www.codemadness.org/htdocs/idiotbox/css; + } + + location ~ ^/idiotbox(/|/\?.*)$ { + include /etc/nginx/fastcgi_params; + fastcgi_pass unix:/run/slowcgi.sock; + fastcgi_param SCRIPT_FILENAME /cgi-bin/idiotbox; + fastcgi_param SCRIPT_NAME /cgi-bin/idiotbox; + fastcgi_param REQUEST_URI /cgi-bin/idiotbox; + } + +httpd + slowcgi example: + + location "/idiotbox" { + root "/cgi-bin/idiotbox.cgi" + fastcgi + } + + +When using a chroot make sure to copy /etc/resolv.conf and /etc/ssl/cert.pem. + +To test from the command-line you can do: + + QUERY_STRING="q=funny+cat+video" ./main | sed 1,2d | lynx -stdin (DIR) diff --git a/archived/duckduckgo/README b/archived/duckduckgo/README @@ -1,3 +1 @@ duckduckgo CLI search tool - -work-in-progress, do not use. (DIR) diff --git a/youtube/README b/youtube/README @@ -1,68 +0,0 @@ -Dependencies: -------------- - -- C compiler. -- LibreSSL + libtls. - - -Compile -------- - -- make -- doas make install - - -Features --------- - -- Search videos. -- Doesn't use JavaScript. -- Doesn't use (tracking) cookies. -- CSS is optional. -- Multiple interfaces available: CGI web, CLI, gopher (gph), this is a - work-in-progress. -- Shows an Atom feed of the user/channel. -- Doesn't use or require the Google API. -- CGI interface works nice in most browsers, including text-based ones. - On OpenBSD it runs "sandboxed" and it can be compiled as a static-linked - binary with pledge(2), unveil(2) in a chroot. - - -Cons/caveats ------------- - -- Order by upload date is incorrect (same as on Youtube). -- Some Youtube features are not supported. -- Uses scraping so might break at any point. - - -Install HTTP CGI ----------------- - -Nginx + slowcgi example: - - location /idiotbox/css/.* { - root /home/www/domains/www.codemadness.org/htdocs/idiotbox/css; - } - - location ~ ^/idiotbox(/|/\?.*)$ { - include /etc/nginx/fastcgi_params; - fastcgi_pass unix:/run/slowcgi.sock; - fastcgi_param SCRIPT_FILENAME /cgi-bin/idiotbox; - fastcgi_param SCRIPT_NAME /cgi-bin/idiotbox; - fastcgi_param REQUEST_URI /cgi-bin/idiotbox; - } - -httpd + slowcgi example: - - location "/idiotbox" { - root "/cgi-bin/idiotbox.cgi" - fastcgi - } - - -When using a chroot make sure to copy /etc/resolv.conf and /etc/ssl/cert.pem. - -To test from the command-line you can do: - - QUERY_STRING="q=funny+cat+video" ./main | sed 1,2d | lynx -stdin