# Rickstodon - Rickroll Your Friends (or Foes) With A Fake Mastodon Registration Page ## -- Introducing a new way to present an old prank ![screenshot with most of the buttons and links on the page pointing to the signature rickroll cover image on youtube](img/rickstodon.webp) See [video demo](https://fkfd.me/static/rickstodon.mp4); hosted on [social.fkfd.me](https://social.fkfd.me); see [Codeberg repo](https://codeberg.org/fakefred/rickstodon) ## How to host it? Because Mastodon is licensed under AGPL, and the frontend is not explicitly excluded, I doubt the legitimacy to redistribute it unlicensed. Therefore, this repo only contains a guide to make your own Rickstodon in N easy steps. You need either a working nginx, or python+pyramid. ## Prepare a place for your prank Get a domain. If you already have one, you can always add a subdomain record into its DNS settings, typically available in the registrar's web panel. For example, `social.[your.domain]` is a subdomain that seems totally legit. Set up an A/AAAA record pointing to your server IP. Let's call this domain `social.legit.website` throughout the tutorial. ## Capture the Mastodon Go to a Mastodon instance you are logged out of. You will be redirected to its about page, which looks like the screenshot above. Download the page using your browser, including the files. Chromium seemed to be unable to fetch the files? idk. Firefox works fine. Press ctrl+s to save `about.html`, as well as its embedded files into a directory called `about_files`. You will see your files in a structure like: ``` about.html about_files/ common-9fa4342b.css d96d39a0abb45b92.png # admin avatar f6a76f37d508b407.png # user avatar fc87edd00a925e4c.png # user avatar 56270e3bbd5ef1a4.png # user avatar vlcsnap-2018-08-27-16h43m11s127.png # the mastodon-paper planes-trumpet picture common-a45d1c15f1388e6b8338.js default-78232038.css favicon.ico locale_en-0b1defbea6f42c8f057f.js public-5e7c276e9e232153d9c4.js ``` Open `about.html` in your browser. The files should load in their respective place because the filepaths are substituted with `/about_files/xxx`, except for external links, which are retained, e.g. `Documentation` links to `https://docs.joinmastodon.org/` unchanged. Now that you've shut the mastodon in the cage, this is where the fun begins. ## Teaching the Mastodon to rickroll Open and edit `about.html`. It is quite large for some text editors (~25 KiB). It's unindented by default. Format it using a code formatter to save your eyes from burning. Remember the site you fetched the page from? Change all occurrences of that site (for example, `mastodon.social` to yours: `social.legit.website`. For example, in `
`, you may see the following: ```html ``` Edit the URL's, edit meta content, you name it. The meta content also goes into the visible `