aboutsummaryrefslogtreecommitdiff
path: root/org/4get-guide.org
diff options
context:
space:
mode:
Diffstat (limited to 'org/4get-guide.org')
-rw-r--r--org/4get-guide.org142
1 files changed, 142 insertions, 0 deletions
diff --git a/org/4get-guide.org b/org/4get-guide.org
new file mode 100644
index 0000000..171bccd
--- /dev/null
+++ b/org/4get-guide.org
@@ -0,0 +1,142 @@
+#+SETUPFILE: ../org-templates/level-1.org
+#+BACKGROUND_IMAGE: images/4get-guide-background.jpg
+#+TITLE: 4get guide
+
+* About 4get
+:PROPERTIES:
+:CUSTOM_ID: about
+:END:
+4get is a meta search engine similar to searxng. Its faster, less resource
+intense, and more reliable than searxng. *This guide is made for peeps using
+4get with lighttpd+freebsd*. Those using a more sane setup should just check
+out [[https://git.lolcat.ca/lolcat/4get/src/branch/master/docs/][the 4getdocs]].
+
+* Installing 4get
+:PROPERTIES:
+:CUSTOM_ID: installing
+:END:
+First install a few packages. Replace =84= with whatever php version your using.
+#+begin_src shell
+ pkp install lighttpd curl git php84 php84-curl php84-fileinfo php84-filter \
+ php84-mbstring php84-pecl-APCu php84-pecl-imagick php84-sodium php84-zlib
+#+end_src
+
+Next cd into =/usr/local/www= or wherever you keep your website data and clone
+the repo with =git clone --depth 1 https://git.lolcat.ca/lolcat/4get <whatever
+the fuck you want>=
+
+Now that you have it downloaded check out =data/config.php= and change it to
+your liking. It's not my job to tell you how you want your 4get instance
+configured (:
+
+* Setting up lighttpd
+:PROPERTIES:
+:CUSTOM_ID: lighttpd
+:END:
+If your reading this you likely already used lighttpd since there is no other
+reason you would pick lighttpd out of all the other web servers rofl. Well
+anyways here is a basic config for 4get to get you started.
+#+begin_src
+ server.modules += ("mod_rewrite", "mod_fastcgi")
+ server.name = "<whatever the fuck you want>"
+ server.document-root = "/usr/local/www/<whatever the fuck you want>"
+ server.pid-file = "/var/run/lighttpd.pid"
+ index-file.names = ("index.php")
+ fastcgi.server = (
+ ".php" => (
+ "localhost" => (
+ "socket" => "/var/run/php/php-fpm.pid",
+ "broken-scriptfilename" => "enable"
+ ))
+ )
+ url.rewrite-once = ( "^(.*)/$" => "$1/" )
+ url.rewrite-if-not-file = ( "^([^?]*)(\?.*)?$" => "$1.php$2" )
+#+end_src
+
+Next run =mkdir /var/run/php= and =chown www:www /var/run/php= to create the
+directory for the sock
+
+To configure the sock path open =/usr/local/etc/php-fpm.d/www.conf= and set
+this value somewhere:
+#+begin_src
+ listen = /var/run/php/php-fpm.pid
+#+end_src
+
+To prevent those annoying php warnings from showing up put these in
+=/usr/local/etc/php.ini=
+#+begin_src
+ error_reporting = E_ALL &amp; ~E_DEPRECATED
+ display_errors = On
+#+end_src
+
+To enable and start it run:
+#+begin_src shell
+ service php_fpm enable
+ service lighttpd enable
+ service php_fpm start
+ service lighttpd start
+#+end_src
+\\
+
+* Tor proxy
+:PROPERTIES:
+:CUSTOM_ID: tor
+:END:
+Using a proxy is likely something you will want to do. Meta search engines tend
+to get IP banned and all of that funky stuff.
+
+** torrc
+:PROPERTIES:
+:CUSTOM_ID: torrc
+:END:
+To use tor as your proxy add these lines to =/usr/local/etc/tor/torrc=
+#+begin_src
+ SOCKSPort 127.0.0.1:9050
+ DNSPort 53
+ AutomapHostsOnResolve 1
+#+end_src
+The reason to also use torDNS is that if you don't you will get DNS leaks.
+
+** Tor service
+:PROPERTIES:
+:CUSTOM_ID: service
+:END:
+For tor to be able to create a DNS server in freebsd add this to =/etc/rc.conf=
+#+begin_src
+ tor_setuid="YES"
+#+end_src
+
+To use tor DNS change the content of =/etc/resolv.conf= to
+=nameserver 127.0.0.1=
+
+Run =service tor enable= and =service tor start= to get it going
+
+To config 4get to use tor edit =<4get directory>/data/config.php= and set all
+the =const PROXY_<...>= to ="onion"=
+#+begin_src php
+ ...
+ const PROXY_DDG = "onion"; // duckduckgo
+ const PROXY_BRAVE = "onion";
+ const PROXY_FB = "onion"; // facebook
+ ...
+#+end_src
+
+** Freebsd pkg issue
+:PROPERTIES:
+:CUSTOM_ID: pkg
+:END:
+Freebsd pkg doesn't like torDNS. To fix that run
+=mkdir -p /usr/local/etc/pkg/repos=
+then =cp /etc/pkg/FreeBSD.conf /usr/local/etc/pkg/repos/=
+
+Now change =/usr/local/etc/pkg/repos/FreeBSD.conf= to something like this:
+#+begin_src
+ FreeBSD: {
+ url: "https://pkg.FreeBSD.org/${ABI}/quarterly",
+ mirror_type: "none",
+ signature_type: "fingerprints",
+ fingerprints: "/usr/share/keys/pkg",
+ enabled: yes
+ }
+#+end_src
+