From 0d0963198e81898bcbf4fb0a8010a3520e13ed52 Mon Sep 17 00:00:00 2001 From: hobokenchicken Date: Wed, 25 Feb 2026 12:02:55 -0500 Subject: [PATCH] refactor: simplify deployment for existing Apache Docker container - Move web files to www/ directory for easy copying to data folder - Remove Docker setup since user has existing Apache container - Add custom 404.html page - Update README with simple deployment instructions - Keep CGI script as optional bonus feature --- README.md | 75 ++++++++++++----------------- www/404.html | 26 ++++++++++ www/cgi-bin/blame-dustin.cgi | 92 ++++++++++++++++++++++++++++++++++++ index.html => www/index.html | 0 4 files changed, 147 insertions(+), 46 deletions(-) create mode 100644 www/404.html create mode 100755 www/cgi-bin/blame-dustin.cgi rename index.html => www/index.html (100%) diff --git a/README.md b/README.md index aca5371..828e8ff 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # IT'S FUCKING DUSTIN'S FAULT — OFFICIAL BLAME PORTAL ## Overview -The most offensive, hilarious, and utterly ridiculous website ever created. A Docker-hosted Apache monstrosity that blames everything on Dustin with maximum crassness and zero fucks given. +The most offensive, hilarious, and utterly ridiculous website ever created. A hilariously crass single-page application that blames everything on Dustin with maximum crassness and zero fucks given. **Live Demo:** [itsdustinsfault.com](https://itsdustinsfault.com) (once deployed) @@ -10,66 +10,49 @@ The most offensive, hilarious, and utterly ridiculous website ever created. A Do - **OFFICIAL BLAME SUBMISSION FORM**: File your own reports of Dustin's latest bullshit - **DUSTIN'S APOLOGY GENERATOR™**: Generates bullshit apologies with sincerity ratings - **NUCLEAR OPTION**: Attempt to fire Dustin (spoiler: it won't work) -- **SOUND EFFECTS & ANIMATIONS**: Beeps, glitches, and rage meters -- **COWSAY CGI INTERFACE**: Because why not have a CGI script that blames Dustin using cowsay? -- **MYSLQL DATABASE**: Tracks all of Dustin's sins in a proper database -- **PHPMyAdmin**: View the database of Dustin's eternal damnation -- **RIDICULOUS STATS**: Fuckup counters, rage meters, and fake uptime percentages - **EASTER EGGS**: Click if you actually like Dustin (you monster) +- **SOUND EFFECTS & ANIMATIONS**: Beeps, glitches, and rage meters +- **RIDICULOUS STATS**: Fuckup counters, rage meters, and fake uptime percentages +- **TERMINAL-STYLE UI**: Retro green-on-black with CRT scanlines -## Tech Stack (Overkill Edition) -- **Docker & Docker Compose**: Full containerized deployment -- **Apache HTTPD**: Serving static files and CGI scripts -- **MySQL**: Database of Dustin's eternal sins -- **PHPMyAdmin**: Admin interface for viewing Dustin's fuckups +## Tech Stack - **Vanilla HTML/CSS/JS**: No frameworks, because Dustin would fuck that up too - **Web Audio API**: For obnoxious sound effects -- **Cowsay & Fortune**: CGI scripts because we're living in 1995 +- **Single `index.html` file**: Everything in one gloriously offensive package + +## Deployment +Simply copy the contents of the `www/` directory to your web server's document root (maps to `/var/www/html` in your Apache container). -## Docker Deployment ```bash -# Start the entire blame ecosystem -docker-compose up -d +# Copy files to your data directory that maps to /var/www/html +cp -r www/* /path/to/your/data/directory/ -# Access the main site -# http://localhost:8080 +# Or if your data folder is already set up: +rsync -av www/ /path/to/your/data/folder/ +``` -# Access phpMyAdmin (to view Dustin's sins) -# http://localhost:8081 -# Username: dustin -# Password: blame_me +## File Structure +``` +www/ +├── index.html # The main blame portal (everything) +├── 404.html # Custom error page blaming Dustin +└── cgi-bin/ + └── blame-dustin.cgi # Optional CGI script (if your server supports it) ``` ## Local Development ```bash -# Just open in browser (for cowards) -open index.html +# Just open in browser +open www/index.html -# Or run the full Docker stack -docker-compose up +# Or serve locally +cd www && python -m http.server 8000 ``` -## Architecture -``` -dustins-fault-website/ -├── index.html # The main blame portal -├── Dockerfile # Apache container with cowsay & fortune -├── docker-compose.yml # Full stack with MySQL & phpMyAdmin -├── cgi-bin/ -│ └── blame-dustin.cgi # CGI script for cowsay blaming -├── mysql-init/ -│ └── 01-init.sql # Database schema & sample fuckups -├── logs/ # Apache logs -├── mysql-data/ # Persistent database storage -└── README.md # This file -``` - -## Database Schema -The MySQL database tracks: -- Individual fuckups with severity levels -- Dustin's bullshit apologies -- Blame statistics and mood tracking -- Automated daily fuckup insertion +## Customization +- Edit `www/index.html` to add more incidents, change names, or increase the offensiveness +- Modify the apology generator with more creative bullshit +- Add your own sound effects or animations ## Contributing 1. Think of something even more offensive diff --git a/www/404.html b/www/404.html new file mode 100644 index 0000000..af4e7b4 --- /dev/null +++ b/www/404.html @@ -0,0 +1,26 @@ + + + +Error - Dustin's Fault + + + +

ERROR 404 - PAGE NOT FOUND

+

This page doesn't exist. You know who to blame.

+
+   _____
+  |  __ \
+  | |  | | ___ _   _ _ __ ___
+  | |  | |/ _ \ | | | '_ ` _ \
+  | |__| |  __/ |_| | | | | | |
+  |_____/ \___|\__,_|_| |_| |_|
+
+  It's Dustin's fault. Obviously.
+
+

Go back to blaming Dustin properly

+ + \ No newline at end of file diff --git a/www/cgi-bin/blame-dustin.cgi b/www/cgi-bin/blame-dustin.cgi new file mode 100755 index 0000000..24bb27a --- /dev/null +++ b/www/cgi-bin/blame-dustin.cgi @@ -0,0 +1,92 @@ +#!/bin/sh + +echo "Content-type: text/html" +echo "" + +cat << EOF + + + +Blame Dustin - CGI Edition + + + +

OFFICIAL DUSTIN BLAMING INTERFACE

+
+$(/usr/bin/fortune)
+
+ +

Dustin's fault level: $(echo $((RANDOM % 100 + 1)) )%

+ +

Figlet says:

+
+$(echo "DUSTIN'S FAULT" | /usr/bin/figlet)
+
+ +
+$(echo "I'm sorry. It's my fault. I fucked up." | /usr/bin/lolcat) +
+ +

BLAME LEVEL: MAXIMUM

+

Current blame allocation: 100% Dustin's Fault

+ +
+ + +
+ +

← Back to the main blame portal

+ +
+Server time: $(date)
+This page has been viewed $(echo $RANDOM) times by people blaming Dustin.
+Total apologies generated: $(echo $((RANDOM * 1000)))
+ + +EOF \ No newline at end of file diff --git a/index.html b/www/index.html similarity index 100% rename from index.html rename to www/index.html