Skip to content
This repository was archived by the owner on Aug 14, 2023. It is now read-only.
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 28 additions & 1 deletion namespaces/default/hastebin/init-configmap.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,39 @@ kind: ConfigMap
metadata:
name: hastebin-init
data:
monkeypatch_extensions.sh: |
#!/bin/bash

ORIGINAL="file += '\.' + _this.lookupExtensionByType(ret\.language);"
PATCHED="\/\/file += '\.' + _this.lookupExtensionByType(ret\.language);"
FILENAME="static/application.js"

touch changed
sed -i "s/$ORIGINAL/$PATCHED/w changed" "$FILENAME"
init.sh: |
#!/bin/bash

# Clone the repo
git clone https://github.com/seejohnrun/haste-server.git
git clone https://github.com/toptal/haste-server.git
cd haste-server

# Monkey patch - don't add extensions to the URLs.
#
# This is a pretty messy monkey patch, and it may break if the hastebin
# JS code changes significantly. It makes the URL display as "file"
# instead of "file.py" when you save a file, which makes it possible
# to share the URL without triggering Discord's suspicious URL filter.
cp /init/monkeypatch_extensions.sh ./monkeypatch_extensions.sh
chmod +x monkeypatch_extensions.sh
./monkeypatch_extensions.sh

# Check if monkeypatch succeeded. Otherwise, fail hard.
if [ -s changed ]; then
echo "Monkey patch executed: Hastebin will no longer add extensions to URLs."
else
echo "Monkey patch for not adding extension could not be performed. Maybe the hastebin code has changed?"
exit 69
fi

# Install and start
npm install
Expand Down