=> f1d7e7176719f4bd8956dfacc9ab4a13540e9936
[1mdiff --git a/INSTALL.md b/INSTALL.md[m [1mnew file mode 100644[m [1mindex 0000000..8872eba[m [1m--- /dev/null[m [1m+++ b/INSTALL.md[m [36m@@ -0,0 +1,56 @@[m [32m+[m[32m# Installation[m [32m+[m [32m+[m[32m## Install ImageMagick[m [32m+[m [32m+[m[32mMake sure ImageMagick is installed.[m [32m+[m [32m+[m[32mHowever this works on whatever distribution of whatever operating system you use.[m [32m+[m [32m+[m[32mIf you do not have access to the command `convert` then this will not work.[m [32m+[m [32m+[m[32m## Add a webserver[m [32m+[m [32m+[m[32mCopy brutalproxy to a directory and create a webserver to point to that directory.[m [32m+[m [32m+[m[32mMake sure brutalproxy is owned by the same user as the webserver. If you use Nginx on a Debian-like linux, this is probaby www-data. If you need a server block because you don't understand how Nginx works, it should look something like this:[m [32m+[m [32m+[m[32m```[m [32m+[m[32mserver {[m [32m+[m[32m listen 80;[m [32m+[m[32m server_name proxy.brutal.url;[m [32m+[m [32m+[m[32m root /var/www/brutalproxy;[m [32m+[m[32m index index.php;[m [32m+[m [32m+[m[32m location ~ \.php$ {[m [32m+[m[32m try_files $uri =404;[m [32m+[m[32m fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;[m [32m+[m[32m fastcgi_index index.php;[m [32m+[m[32m fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;[m [32m+[m[32m include fastcgi_params;[m [32m+[m[32m }[m [32m+[m[32m}[m [32m+[m[32m```[m [32m+[m [32m+[m[32mYou might want to add some kind of password control too so people don't casually hijack this to download bad things.[m [32m+[m [32m+[m[32m## Add a cron job[m [32m+[m [32m+[m[32mEdit cleanup.sh to point to where you installed brutalproxy.[m [32m+[m [32m+[m[32mCreate a cron job to run cleanup.sh once a day. This will sweep out any old files from the cache so you don't burn up your disk space.[m [32m+[m [32m+[m[32m```[m [32m+[m[32m0 12 * * * root /var/www/brutalproxy/cleanup.sh[m [32m+[m[32m```[m [32m+[m [32m+[m[32m## Patch Brutaldon[m [32m+[m [32m+[m[32mOpen brutaldon.patch with your favorite text editor and replace "http://proxy.brutal.url" with the actual URL where you are running brutalproxy.[m [32m+[m [32m+[m[32mSave.[m [32m+[m [32m+[m[32mApply the patch to your Brutaldon installation.[m [32m+[m [32m+[m[32mRestart Brutaldon.[m [32m+[m [1mdiff --git a/LICENSE b/LICENSE[m [1mnew file mode 100644[m [1mindex 0000000..d168027[m [1m--- /dev/null[m [1m+++ b/LICENSE[m [36m@@ -0,0 +1,7 @@[m [32m+[m[32mThis work is released to the Public Domain.[m [32m+[m [32m+[m[32mThe author, Anonymous, has dedicated the work to the public domain by waiving all copyright and related or neighboring rights to this work worldwide under copyright law including all related and neighboring rights.[m [32m+[m [32m+[m[32mEven beyond the extent allowed by law: if your law does not allow a creator to give his work to the public domain then your law is fake and gay and retarded.[m [32m+[m [32m+[m[32mYou can copy, modify, distribute and create derivative work, even for commercial purposes, all without asking permission.[m [1mdiff --git a/README.md b/README.md[m [1mnew file mode 100644[m [1mindex 0000000..621f4b0[m [1m--- /dev/null[m [1m+++ b/README.md[m [36m@@ -0,0 +1,21 @@[m [32m+[m[32m# brutalproxy[m [32m+[m [32m+[m[32m## Why make this?[m [32m+[m [32m+[m[32mGoogle and browser developers broke the World Wide Web.[m [32m+[m [32m+[m[32mThe cancer of SSL everywhere, enforced by browsers redirecting to HTTPS and Google downranking pages that don't use HTTPS.[m [32m+[m [32m+[m[32mThis affects almost every server in 2024, and the Fediverse is not immune.[m [32m+[m [32m+[m[32mBrutaldon gets halfway to a solution since you can run it on port 80 and let your server negotiate communication with all the HTTPS-only Fediverse servers. Unfortunately, images still won't load.[m [32m+[m [32m+[m[32mEven if you can get an image pulled down to your computer, there is a good chance of it being Googleshit WEBP that isn't supported.[m [32m+[m [32m+[m[32m## How does it work?[m [32m+[m [32m+[m[32mThis is a dead simple caching proxy that downloads images over HTTPS, processes it with ImageMagick to remove malicious payloads and reduce the size, and sends it over port 80 to your legacy browser.[m [32m+[m [32m+[m[32mIt includes a simple template patch for Brutaldon to alter its image links so that they go yo your proxy instead of the actual server.[m [32m+[m [32m+[m[32mImages are downloaded and stored using an sha1 hash of the full URL.[m [1mdiff --git a/brutaldon.patch b/brutaldon.patch[m [1mnew file mode 100644[m [1mindex 0000000..b9eb0ce[m [1m--- /dev/null[m [1m+++ b/brutaldon.patch[m [36m@@ -0,0 +1,191 @@[m [32m+[m[32mdiff --color -Naur brutaldon/brutaldon/templates/accounts/account_partial.html ../brutaldon/brutaldon/templates/accounts/account_partial.html[m [32m+[m[32m--- brutaldon/brutaldon/templates/accounts/account_partial.html 2025-01-12 07:16:02.990452094 -0500[m [32m+[m[32m+++ ../brutaldon/brutaldon/templates/accounts/account_partial.html 2025-01-11 12:26:07.630934344 -0500[m [32m+[m[32m@@ -1,7 +1,7 @@[m [32m+[m[32m[m [32m+[m[32m