diff --git a/.domains b/.domains old mode 100644 new mode 100755 diff --git a/blog/2022/december/web3-2.html b/blog/2022/december/web3-2.html index b076dba..8d98acb 100755 --- a/blog/2022/december/web3-2.html +++ b/blog/2022/december/web3-2.html @@ -48,11 +48,11 @@ docker run --rm -v ~/Solid:/data -p 3344:3000 -it solidproject/community-server:

After that, I went to try some apps again. I was able to log in with the Solid file manager, but because I had been using the localhost IP when I created my user in the web interface, the file manager kept throwing errors. I had to delete all my data and start over from the beginning. And by delete all my data, I mean running sudo rm -rf ~/Solid/*, deleting the Docker images, and then re-downloading the Docker images. Turns out this is a known problem that the developers don't feel like solving at the moment:

The account system is still quite rudimentary and does not include account deletion yet. To delete the accounts on your server you would have to delete the .internal/accounts/ folder on your disk.

After the full reset, the file manager then worked as intended, and I was able to create folders and upload files.

-

screenshot of a browser showing an image of Asuka eating a Happy Meal

+

screenshot of a browser showing an image of Asuka eating a Happy Meal

I thought about self-hosting the file manager, but I looked at the Git repo, and apparently it's unmaintained:

NOTE: This project has no active maintainer. It may or may not be working, and from time to time stuff will probably get fixed.

As for alternatives, Penny and Solid IDE are actively maintained, and the UI for Penny is nicer. But Penny constantly sends HTTP requests every time you do anything in the window, which could easily overwhelm a server if you have more than a few Pods hosted on it, and the hosted instance of Solid IDE linked in the Solid app listing 404s, so I couldn't test it.

-

screenshot of Penny showing an image

+

screenshot of Penny showing an image

I thought about deploying Plume on my Pod since my whole reason for exploring web3 is to find new and creative ways to host my website, but the guide links to an empty Releases page on a Github repo that's been abandoned since early last year. Not exactly reassuring.

Next on my list of apps to try was Notepod, a notepad application (also with an abandoned Git repo, this time from 2020). But after I entered the URL of my Solid provider (solid.letsdecentralize.org) and clicked "go"... nothing happened. Docker showed a few HTTP requests were being made every time I clicked "go":

@@ -94,10 +94,10 @@ docker run --rm -v ~/Solid:/data -p 3344:3000 -it solidproject/community-server:
 				
 				

And here I was, saying that I wouldn't do free labor for cryptobros... Payment for the editing is welcome, PokedStudio. Fiat only. You know where to contact me.

If you want to do something other than buy expensive images, there are nine projects in the "Social" category. As my patience was starting to wear thin, I decided to try the first one listed: a Reddit clone named DSCVR. But I wanted to be prepared before I dove in, so I went to the "Wallet" category and installed the first one listed, Plug. I mean, if web3 is all about cryptocurrency, then it makes sense that you'd need a wallet, right? I clicked on the extension icon once it popped up by the address bar, and I was immediately met with this sleep paralysis demon:

-

screenshot of a creepy plug mascot with the text 'create password for Plug' underneath

+

screenshot of a creepy plug mascot with the text 'create password for Plug' underneath

(For those not familiar with zoomerspeak, "frfr" is short for "for real, for real".)

It prompted me to create a password, so I gave it a fourteen-word-long passphrase made in KeePassXC. Then it gave me a recovery phrase to backup... and whatever the hell this is:

-

screenshot of a creepy plug mascot saying 'keep this sh*t safe, forreal'

+

screenshot of a creepy plug mascot saying 'keep this sh*t safe, forreal'

I get the feeling that the people at Fleek (the company that made Plug) don't take professionalism very seriously. Which is all good and fine when you're a Broke Dumbass like me who just wants to snark at everything, but when you're a company dealing with financial assets... well, a mascot with a creepy face who swears at you during the onboarding process doesn't exactly reassure the user that the company won't lose all the customer's assets.

Once I'd suffered all the way through the Plug setup, I went back to DSCVR, now ready to sign in. The homepage immediately blasted me with a post where... Christians were arguing over whether Christ had a vagina. (DSCVR also seems quite hostile to being archived by both the Wayback Machine and archive.md.) I was expecting the usual NFT hype to clog every post, but this time I had to actually scroll for it. I'm still not sure if I'd prefer the NFTs or not.

On your first visit, a welcome popup appears offering a site tour. Page one of the tour (there are six in total) is about receiving NFT airdrops... and so is page three. Page five says you can make subreddits "portals", and then paywall them by requiring certain NFTs to visit. I don't have any NFTs, and I don't have any interest in paywalling my content, but I forged ahead to the login page anyway.

diff --git a/blog/2023/january/UterusPin.html b/blog/2023/january/UterusPin.html new file mode 100755 index 0000000..8a0a843 --- /dev/null +++ b/blog/2023/january/UterusPin.html @@ -0,0 +1,41 @@ + + + + + Uterus Pin Perler Bead Pattern - Archive - MayVaneDay Studios + + + + + +
+
+

Uterus Pin Perler Bead Pattern

+

published: 2023-01-01

+
+
+
+

Something was wrong with the milk machines at Hell College. Skim milk tasted like literal cow water, and the 2% milk made me want to puke. The chocolate milk dispenser was alright, but since my main source of milk meal-wise during my stay at Hell College was at breakfast for cereal, that would have been too much sugar at once for my poor body.

+

Thankfully, due to the high volume of lactose-intolerant and vegan students on campus, there was a regularly-restocked soy milk dispenser. It was delicious, which is a shame because I don't remember what brand it was and I have yet to find soy milk that tastes just as smooth. The cooks- and even a campus administrator once- ran out of the kitchen multiple times during my year there to yell at me for taking so much. I think once they purposely didn't refill the damn thing until noon because they knew I was coming to drink it all at breakfast. So, just for that morning, I was forced to use the almond milk dispenser instead. Maybe it was starting to go bad, or maybe almond milk just naturally tastes rancid, but I never tried that again.

+

meme where a dude does an online quiz to tell him what the next five years are like, and 2019-2022 is a bunch of pictures of Hell and 2023 is a meme about almond milk

+

Which is why, when I look at the calendar and see that the Year of the Almond Milk is upon us, my hope is that it means this is the year where I close the loopholes that men keep using to cause me pain, just like how I eventually stopped eating cereal at Hell College so the cooks would stop threatening to beat my ass for the crime of... drinking milk. (Have you ever had hash browns covered in hot sauce at six in the morning? Religious experience right there. Highly recommended. Alternatively, get a bunch of noodles in alfredo sauce in a take-out box, put some chicken tenders on top, and let it sit in the fridge overnight. The food is the only thing I really miss about Hell College.)

+

Dammit, I'm digressing again.

+

Wanna know one thing the cooks didn't do? Keep harassing me after I left Hell College. Exactly zero of the cooks stalked me after I left the campus and never returned. Not a single one gave me unsolicited passive-aggressive "career advice". Not a single one sicced their friends on me to leave nasty misogynistic screeds in my inbox, email or IRL, after I got COVID-19. I can't think of a single one who went out of their way to bypass my elaborate server filters just to tell me to kill myself. (I wish Zoho's web admin panel had an actual mobile version. Too much pinching and zooming for my bleary eyes.) I left Hell College, and they forgot about me, and we went our separate ways. Maybe it helped that all the cooks I remember were female. I mean, Ovarit was full of shitty people, but I haven't received even a single peep of harassment from them since I left. I wish I knew exactly what it is about the Y chromosome that makes men Behave Like That.

+

So, as the first post of the Year of the Almond Milk on this blog, let me remind everyone who this website is really for: on Christmas, instead of pretending to be a Christian, I sat in my grandmother's basement and designed from scratch a uterus pin. There were existing designs already on the Internet, but they were either too simplistic or too oblong and likely to have dangling pieces chip off when actually used as a pin.

+

I don't have a PO box to ship these from, so I currently have no way of safely selling them on Etsy... so apologies if you wanted one Certifiably Made By A Madwoman. As recompense for a crime not committed, here's the pattern. Use the "mini" bead size for these. Good luck, have fun, and may your first womynstruation in the Year of the Almond Milk be light and pain-free.

+

+

+

+
+
+
+

CC BY-NC-SA 4.0 © Vane Vander

+
+
+ + + + diff --git a/blog/index.html b/blog/index.html index f1f7169..2da2451 100755 --- a/blog/index.html +++ b/blog/index.html @@ -15,6 +15,12 @@

The list items marked with a star are the posts I feel are the most written and should be considered a kind of "greatest hits".


+
+

2023

+ +

2022

-
    -
  1. Start the Hyperdrive daemon. (You should do this in a multiplexer, as it will run in the foreground.)
  2. -
-

hyperdrive start --foreground

-
    -
  1. Seed your first site.
  2. -
-

cd ~/Hyperdrive && hyperdrive mount MakeUpANameHere SiteKeyHere

- -
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
- - - diff --git a/tutorials/i2p.html b/tutorials/i2p.html deleted file mode 100755 index f6a20d6..0000000 --- a/tutorials/i2p.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - How to create an I2P eepsite on Caddy on Debian 10 - Archive - MayVaneDay Studios - - - - - -
-
-

How to create an I2P eepsite on Caddy on Debian 10

-

first published: 2021-02-08

-
-
-
-
    -
  1. Install I2PD (an I2P router that is lighter on resources than the original I2P).
  2. -
-

sudo apt install i2pd

-
    -
  1. Install the Caddy web server.
  2. -
-

echo "deb [trusted=yes] https://apt.fury.io/caddy/ /" | sudo tee -a /etc/apt/sources.list.d/caddy-fury.list

-

sudo apt update; sudo apt install caddy -y

-
    -
  1. Edit /var/lib/i2pd/tunnels.conf to create the eepsite.
  2. -
-

Open /var/lib/i2pd/tunnels.conf in your favorite text editor. (Please note that this usually requires root privileges.)

-

Go to the end of the file and add:

-
-[mycooleepsite]
-type = http
-host = 127.0.0.1
-port = 80
-keys = mycooleepsite.dat
-				
-
    -
  1. Restart I2PD.
  2. -
-

sudo systemctl restart i2pd

-
    -
  1. Find out your new eepsite's hash.
  2. -
-

Open http://127.0.0.1:7070 in a web browser that can access that machine's localhost.

-

If you don't know what you're doing, run the following:

-

sudo apt install lynx -y

-

lynx http://127.0.0.1:7070

-

Go to the "I2P Tunnels" page. (In Lynx, press the down arrow until "I2P Tunnels" is highlighted, and then press the enter key.)

-

In the "Server Tunnels" section, there should be a string that looks something like VERYLONGHASH.b32.i2p. Copy the VERYLONGHASH part.

-
    -
  1. Configure Caddy to serve the eepsite.
  2. -
-

Open /etc/caddy/Caddyfile as root with your favorite text editor.

-

Type the following in:

-
-http://VERYLONGHASH.b32.i2p {
-	root * /your/website/file/path/here
-	file_server
-	encode gzip
-}
-				
-

The "http://" in front of the address is important as that tells Caddy to not try to enable HTTPS for that website. HTTPS is unnecessary for I2P eepsites as all traffic to and from the server is already encrypted in transit. And since I2P eepsites aren't accessible on the normal clearnet, the request for Let's Encrypt to give Caddy a certificate would fail as they wouldn't be able to access the domain.

-
    -
  1. Restart Caddy to apply your changes.
  2. -
-

sudo systemctl restart caddy

-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/index.html b/tutorials/index.html deleted file mode 100755 index 7980cce..0000000 --- a/tutorials/index.html +++ /dev/null @@ -1,39 +0,0 @@ - - - - - Tutorials - Archive - MayVaneDay Studios - - - - - -
-

Tutorials

-
-
-
-

Darknet Guides

-

Create a Tor hidden service website on Caddy on Debian 10

-

Create a Yggdrasil hidden service on Caddy on Debian 10

-

Create an I2P eepsite on Caddy on Debian 10

-

Seed a Hyperdrive website on Debian 10

-

Virtualhost on Gemini using Tor

-
-
-
-

Root the Nook 1st Gen on Linux

-

Run Oasis, a Secure Scuttlebutt client, on a remote server

-

Install the Kristall browser in Haiku

-

Build and install LokiNet on Linux Mint 32-bit

-

Play music in the CLI with an equalizer

-

Install Misskey on Debian 9

-

Install Syncthing on Tails

-

Make playlists on the SanDisk Clip Sport on Linux

-

Set up a detached and encrypted ZeroNet seedbox on a Raspberry Pi

-

Dump tiles from a GameBoy ROM on Linux

-

Browsing and publishing Gemini on a... Kobo?!

-
-
- - diff --git a/tutorials/kobo-webdav.html b/tutorials/kobo-webdav.html deleted file mode 100755 index 5a4846c..0000000 --- a/tutorials/kobo-webdav.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - Browsing and publishing Gemini on a... Kobo?! - Archive - MayVaneDay Studios - - - - - -
-
-

Browsing and publishing Gemini on a... Kobo?!

-

published: 2021-01-07

-
-
-
-

I have a Kobo Libra H2O. It's a little e-ink tablet-like device. While the specs aren't great, it does run Linux, which means theoretically one can run whatever programs they want on it! ...As long as those programs are line-based command-line or written for Kobo's special flavor of Qt.

-
-
-
-

Getting shell access to your Kobo

-

The first step is getting KOReader on the Kobo. Not only is it a much better reading app than the Kobo's built-in Nickel, it also includes a terminal emulator, a text editor, and a SSH server. The install instructions are on the KOReader wiki. I personally recommend using the NickelMenu installation method halfway down the page.

-

After you have KOReader set up, plug your Kobo into a computer with a USB cable.

-

cd /path/to/your/kobo/

-

cd ./.adds/koreader/settings/SSH/

-

ssh-keygen -trsa -b 2048 -f ~/.ssh/kobo

-

cp ~/.ssh/kobo.pub ./authorized_keys

-

Safely disconnect your Kobo from your computer. Go into KOReader, then tap the gear icon on the top of the screen. Tap "Network". Connect to the same WiFi network your computer is on, then tap on "SSH server" and then "Start SSH server".

- ssh -i ~/.ssh/kobo -p 2222 root@your_kobo_local_ip_address -

Shell access should only be necessary for troubleshooting. For this guide, we are more interested in SFTP file transfer.

-
-
-
-

Setting up your environment

-

There are four programs you'll need:

-
    -
  1. godown: an HTML to Markdown converter
  2. -
  3. gemget: wget, but for the Gemini protocol
  4. -
  5. kurly: cURL, but written in Golang (since the version of wget that ships with KOReader's Dropbear doesn't support HTTPS for some reason)
  6. -
  7. dave: a simple WebDAV server
  8. -
-

The first three we will install on your Kobo. The last one will go on the server that runs your Gemini site.

-

I specifically picked programs written in Golang because they compile to a single binary. This means no trying to manually resolve dependencies, since the Kobo doesn't have a package manager installed (that I could see). However, they still must be compiled for ARM. I compiled them on my Raspberry Pi 4 (which is also an ARM device) and copied the resulting binaries to my computer. If you want to cross-compile on your local computer instead, you're on your own.

-

The config file for dave needs to go in ~/.swd/config.yaml on the remote server. It should look something like this:

-
-address: "domain.tld"    # the bind address
-port: "7778"            # the listening port
-dir: "/path/to/your/gemsite/files"     # the provided base dir
-prefix: "/"       # the url-prefix of the original url
-users:
-#  user:                 # with password 'foo' and jailed access to '/home/webdav/user'
-#    password: "HASHED_PASSWORD"
-#    subdir: "/user"
-  YOURUSERNAME:                # with password 'foo' and access to '/home/webdav'
-    password: "HASHED_PASSWORD"
-tls:
-  keyFile: gemini.key
-  certFile: gemini.crt
-				
-

You can make a HASHED_PASSWORD by running davecli passwd and following the prompts.

-

After that, you need to get TLS certificates so kurly doesn't shit its pants complain about having no certificates.

-

On your local computer:

-

sftp -P 2222 -i ~/.ssh/kobo root@your_kobo_local_ip_address

-

cd /etc/

-

mkdir ssl && cd ssl

-

mkdir certs && cd certs

-

lcd /usr/share/ca-certificates/mozilla/

-

put -r *

-

This will put all the certificates installed on your computer onto your Kobo. If this is too much for you, you can instead just upload the public key you used for your WebDAV server above (Gemini uses TOFU for its TLS and thus doesn't require a certificate store). Just change the extension to .pem first before uploading.

-

Put your binary program files in /bin/.

-

At this point, you should be all set up. You can disconnect from the SFTP server and turn the SSH server on your Kobo off.

-
-
-

The fun commands

-

Next to the gear icon at the top of the KOReader menu is a tool icon. Press it and then press "More tools". There's a terminal emulator!

-

Except it's not interactive, only processing one command at a time, and it doesn't save the state of the terminal in between sessions. While vi is installed, curiously, it's really only for debugging over SSH and isn't usable here. Best case scenario, it'll only print a bunch of terminal control characters and then exit without letting you do anything.

-

To look at an HTTP/S site: /bin/kurly http://example.com | /bin/godown | grep -v -e '^$'

-

To look at a Gemini site: /bin/gemget -o - gemini://domain.tld

-

To upload a text file: /bin/kurly -T /path/to/file.txt -u 'username:password' "https://domain.tld:port/"

-

These are quite a lot to type every time. I recommend saving them as shortcuts so you only have to change the domain or the file path every time instead of retyping everything.

-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/kristall-haiku.html b/tutorials/kristall-haiku.html deleted file mode 100755 index 088f852..0000000 --- a/tutorials/kristall-haiku.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - How to install the Kristall browser in Haiku - Archive - MayVaneDay Studios - - - - - -
-
-

How to install the Kristall browser in Haiku

-

published: 2020-06-09

-
-
-
-

Disclaimer: This was tested with Haiku nightly hrev54304. You may have to install more or different dependencies if you are using the r1beta2 release instead.

-
    -
  1. Clone the Git repository:
  2. -
-

git clone https://github.com/masterq32/kristall

-

cd kristall

-
    -
  1. Install some build dependencies:
  2. -
-

pkgman install qt5 qt5_devel qt5_tools libiconv_devel

-
    -
  1. Compile and install:
  2. -
-

make

-

cd ~/config/settings/deskbar/menu/Applications/

-

ln -s ~/kristall/kristall .

-

Kristall should now be listed with the rest of your applications in the Deskbar.

-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/lokinet-32.html b/tutorials/lokinet-32.html deleted file mode 100755 index b5bc063..0000000 --- a/tutorials/lokinet-32.html +++ /dev/null @@ -1,50 +0,0 @@ - - - - - How to build and install LokiNet on Linux Mint 32-bit - Archive - MayVaneDay Studios - - - - - -
-
-

How to build and install LokiNet on Linux Mint 32-bit

-

published: 2020-04-11

-
-
-
-
    -
  1. Install LokiNet’s build dependencies:
  2. -
-

sudo apt install build-essential cmake git libcap-dev curl libuv1-dev libsodium-dev libcurl4-openssl-dev pkg-config

-
    -
  1. Clone the LokiNet Git repository:
  2. -
-

git clone https://github.com/loki-project/loki-network; cd loki-network

-

git submodule update --init --recursive

-
    -
  1. Edit the Makefile to force the correct libsodium to be used.
  2. -
-

Open Makefile in your text editor of choice. Find the line that says DOWNLOAD_SODIUM. Change OFF to ON.

-
    -
  1. Build and install LokiNet:
  2. -
-

make sudo make install

-
    -
  1. Bootstrap and run:
  2. -
-

lokinet -g

-

lokinet-bootstrap

-

lokinet

-

If the LokiNet executable complains about not being able to set up network interfaces, run this command:

-

sudo setcap cap_net_admin,cap_net_bind_service=+eip /path/to/lokinet/executable

-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/misskey.html b/tutorials/misskey.html deleted file mode 100755 index 27686bf..0000000 --- a/tutorials/misskey.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - How to install Misskey on Debian 9 - Archive - MayVaneDay Studios - - - - - -
-
-

How to install Misskey on Debian 9

-

published: 2019-09-21

-
-
-
-
    -
  1. Create a user for Misskey:
  2. -
-

adduser --disabled-password --disabled-login misskey

-

adduser misskey sudo

-

passwd misskey

-

Give the misskey user a strong password. Write it down somewhere safe.

-
    -
  1. Add the Node.js and PostgreSQL repositories:
  2. -
-

curl -sL https://deb.nodesource.com/setup_12.x |bash

-

echo "deb http://apt.postgresql.org/pub/repos/apt/ stretch-pgdg main" > /etc/apt/sources.list.d/pgdg.list

-

cd /tmp

-

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -

-

apt-get update

-
    -
  1. Install Misskey’s dependencies:
  2. -
-

apt-get install -y nodejs postgresql redis-server build-essential python certbot byobu sudo

-
    -
  1. Set up a password for PostgreSQL:
  2. -
-

passwd postgres

-

Write this password down somewhere safe. You’ll need it later.

-
    -
  1. Download Misskey:
  2. -
-

su - misskey

-

git clone -b master git://github.com/syuilo/misskey.git

-

cd misskey

-

git checkout master

-

npm install

-
    -
  1. Configure Misskey:
  2. -
-

cp .config/example.yml .config/default.yml

-

Edit .config/default.yml with your terminal editor of choice.

-

url should be the URL of your server.

-

Assuming you don’t know what you’re doing, which is probably true if you’re reading this, uncomment the line that says port: 443. This will make Misskey start its own web server on port 443 (the HTTPS port).

-

Uncomment the key: and cert: lines. Replace example.tld in the file path with the same URL as you used above, omitting the https:// at the beginning.

-

Under the user: postgres line, there should be a password line. Make sure it is uncommented and put in the password that you set up earlier.

-

Uncomment the autoAdmin: true line. This will make the first user registrated on the instance the admin of the instance. Hopefully this is you!

-
    -
  1. Set up PostgreSQL:
  2. -
-

exit

-

su - postgres

-

You are now logged in as the postgres user. Type in psql and press enter. A different command prompt should show up. Type in CREATE DATABASE misskey; and follow whatever instructions it gives you.

- -
    -
  1. Set up SSL:
  2. -
-

exit

-

certbot certonly -d example.tld

-

example.tld should be the URL you previously configured in the Misskey config file. Make sure that your DNS is properly set up to point to your server’s IP address.

-

Follow the instructions Certbot gives you.

-
    -
  1. Compile Misskey:
  2. -
-

su - misskey

-

cd misskey

-

NODE_ENV=production npm run build

-

Sit back for a hot minute while it compiles. If you have 2 GB or less of RAM, pick a god and pray. If you have less than 1 GB of RAM and you’ve somehow made it this far, nuke your server and give up now.

-

After that’s done, run npm run init to set up the Misskey database.

-
    -
  1. Run Misskey:
  2. -
-

cd ~

-

byobu

-

You are now in Byobu. This is a window manager for the command line. This will allow you to daemonize Misskey (run it in the background) without using systemd, which is an absolute pain in the ass to diagnose and fix.

-

cd misskey

-

sudo NODE_ENV=production npm start

-

If everything looks good (there are no fatal error messages), open your configured URL in a web browser and complete setup from the web interface.

-

When you want to close the terminal, press Ctrl and A at the same time. Pick the first option for whatever Byobu nags you about. Press Ctrl and A again, and then press D. You should get a “detached from session” message. Log out of the misskey user and then the root user until the terminal disconnects from the server.

-

If Misskey ever locks up or it uses more than 70% of the server’s CPU, either:

-
    -
  • log in as root, run systemctl reboot now to reboot the server, then log in as root, su - misskey, and repeat step 10 to get Misskey running again.
  • -
  • use your VPS provider’s dashboard to reboot the server, then log in as root, su - misskey, and repeat step 10 to get Misskey running again.
  • -
-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/nook.html b/tutorials/nook.html deleted file mode 100755 index d7cdb68..0000000 --- a/tutorials/nook.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - How to root the Nook 1st Gen on Linux - Archive - MayVaneDay Studios - - - - - -
-
-

How to root the Nook 1st Gen on Linux

-

published: 2021-07-15

-
-
-
-

Note: this guide assumes you already have ADB installed.

-
  1. Download the prerequisite files.
-

At the very least, you need the launcher APK, ratc.bin, and exploit.html. These files should also be accesible on this XDA Forums thread.

-

Rename exploit.html to index.html.

-
  1. Setup the crash server.
-

Run sudo python3 -m http.server --bind YOUR_COMPUTERS_LOCAL_IP_HERE 80 in the directory with the index.html file in it.

-
  1. Crash your Nook's browser to enable ADB.
-

Open http://YOUR_COMPUTERS_LOCAL_IP_HERE in your Nook's built-in web browser (make sure that your computer and Nook are on the same network). The browser should refresh a few times and then crash to the home menu.

-
  1. Connect to your Nook over ADB.
-

adb connect YOUR_NOOKS_LOCAL_IP_HERE

-

If ADB refuses to connect, run step 3 again until it connects. This might take one try; this might take a hundred tries.

-
  1. Get and edit /init.rc.
-

adb pull /init.rc

-

Open /init.rc in your favorite text editor.

-

Find the line that says service adbd /sbin/adbd.

-

Below that should say disabled. Change that to enabled.

-
  1. Get root access.
-

Repeat step 4 to connect to the Nook. Once connected:

-

adb push ratc.bin /sqlite_stmt_journals

-

adb shell

-

cd /sqlite_stmt_journals

-

/system/bin/chmod 777 ./ratc.bin

-

./ratc.bin

-

Several lines of output will appear. Do not press anything. A few seconds later, adb will disconnect you.

-

adb kill-server

-
  1. Push the patched init.rc to the Nook.
-

Repeat step 4, as usual.

-

adb push init.rc /

-

If all goes well, your Nook should now be rooted with adbd running on reboot.

-

Go to the source link on the top of these instructions and install whatever apps you want. You must install, at the very minimum, ru.mynook.launcher.apk in order to access any of the other third-party apps installed.

-

To install apps over ADB:

-

adb install APP_NAME_HERE.apk

-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/oasis.html b/tutorials/oasis.html deleted file mode 100755 index ecfc6ff..0000000 --- a/tutorials/oasis.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - How to run Oasis, a Secure Scuttlebutt client, on a remote server - Archive - MayVaneDay Studios - - - - - -
-
-

How to run Oasis, a Secure Scuttlebutt client, on a remote server

-

published: 2021-11-13

-
-
-
-

This tutorial assumes you already have a functioning Node.js and Caddy installation.

-
    -
  1. Install Oasis.
  2. -
- git clone https://github.com/fraction/oasis.git
cd oasis
npm install
-

Test the installation by running node . (yes, including the period).

-
    -
  • If the output stops after a few lines and isn't an obvious Node error, hit Control and C at the same time to exit; you're ready for the systemd file.
  • -
  • If you get an error about port 3000 already being in use, use the command node . --port PORTNUMBER instead, where PORTNUMBER is any open port you want.
  • -
-

If your instance immediately throws an error about ssb.friends.get:

- git checkout 4e8f7426a4eb1d95f6e55cf894a3168f523f8af8
rm -rf node_modules
npm install
-
    -
  1. Prepare the systemd daemon file.
  2. -
-

Edit /lib/systemd/system/oasis.service as root with your favorite text editor. Paste the following:

-
-[Unit]
-Description=Oasis client for Secure Scuttlebutt
-After=network.target
-
-[Service]
-User=YourUsername
-Group=YourUsername
-ExecStart=/path/to/your/node/binary . --port 8787
-WorkingDirectory=/path/to/where/you/cloned/oasis/
-TimeoutStopSec=5s
-LimitNOFILE=1048576
-PrivateTmp=true
-ProtectSystem=full
-
-[Install]
-WantedBy=multi-user.target
-				
-

Replace /path/to/your/node/binary with whatever comes up when you run which node. You may need to change this if you update Node.

-
    -
  1. Edit your Caddyfile. (This will probably also require root.)
  2. -
-
-yourdomain.tld {
-	reverse_proxy 127.0.0.1:PORTNUMBER {
-		header_up Host 127.0.0.1
-		header_up Referer http://localhost
-	}
-	basicauth * {
-		AnyUsernameYouWant EXTREMELYLONGCADDYHASHHERE
-	}
-}
-				
-

EXTREMELYLONGCADDYHASHHERE is used instead of an actual password so you don't have cleartext credentials hanging around. Generate this with caddy hash-password. Make sure you save your actual password in a password manager, as you can't reverse a hash!

-

The header_up lines are there to trick Oasis into thinking it is running on a local machine, as it (very aggressively) wants to be. Normally this would be true, as Secure Scuttlebutt is peer-to-peer and intended to be run on a personal device that may see intermittent internet connectivity. However, if you're looking at this tutorial, you probably want to host a public peer as an actually functioning alternative to a pub or room.

-
    -
  1. Get everything running.
  2. -
- sudo systemctl daemon-reload
sudo systemctl restart caddy
sudo systemctl start oasis && sudo systemctl enable oasis
-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/onion.html b/tutorials/onion.html deleted file mode 100755 index 76c5bca..0000000 --- a/tutorials/onion.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - How to create a Tor hidden service website on Caddy on Debian 10 - Archive - MayVaneDay Studios - - - - - -
-
-

How to create a Tor hidden service website on Caddy on Debian 10

-

first published: 2020-01-31

-

last updated: 2021-01-13

-
-
-
-
    -
  1. Install Tor.
  2. -
- sudo apt install tor -
    -
  1. Install the Caddy web server.
  2. -
-

echo "deb [trusted=yes] https://apt.fury.io/caddy/ /" | sudo tee -a /etc/apt/sources.list.d/caddy-fury.list

-

sudo apt update; sudo apt install caddy -y

-
    -
  1. Edit /etc/tor/torrc to create the hidden service.
  2. -
-

Open /etc/tor/torrc in your favorite text editor. (Please note that this usually requires root privileges.)

-

Go to the lines that say:

- - #HiddenServiceDir /var/lib/tor/hidden_service/
- #HiddenServicePort 80 127.0.0.1:80 -
-

Uncomment them by deleting the # mark in front of each line.

-

If you want, you can change the HiddenServiceDir directory, but you will need to remember it for later. For security purposes, keep the new directory inside of /var/lib/tor/.

-
    -
  1. Restart the Tor service.
  2. -
-

sudo systemctl restart tor@default

-
    -
  1. As root, go to the hidden service directory and get the new hidden service's domain.
  2. -
-

sudo -i

-

cd /var/lib/tor/directory/

-

Replace "directory" with the actual directory you chose in step 3.

-

cat hostname

-

If all is well, you should now see a long string of letters and numbers that ends in ".onion". Copy this somewhere safe. You'll need it next step.

-
    -
  1. Configure Caddy to serve the hidden service.
  2. -
-

Open /etc/caddy/Caddyfile with your favorite text editor. You should already be root, but if you did exit after getting the Tor hostname, just sudo -i again.

-

Type the following in:

-
-http://YourTorHostnameHere.onion {
-	root * /your/website/file/path/here
-	file_server
-	encode gzip
-	bind 127.0.0.1
-}
-				
-

The "http://" in front of the address is important as that tells Caddy to not try to enable HTTPS on that domain. HTTPS is unnecessary for Tor hidden services as all traffic to and from the server is already encrypted in transit. And since Tor hidden services aren't accessible on the normal clearnet, the request for Let's Encrypt to give Caddy a certificate would fail as they wouldn't be able to access the domain.

-
    -
  1. Restart Caddy to apply your changes.
  2. -
-

sudo systemctl restart caddy

-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/playlist-clip.html b/tutorials/playlist-clip.html deleted file mode 100755 index 4ed1d1c..0000000 --- a/tutorials/playlist-clip.html +++ /dev/null @@ -1,44 +0,0 @@ - - - - - How to make playlists on the SanDisk Clip Sport on Linux - Archive - MayVaneDay Studios - - - - - -
-
-

How to make playlists on the SanDisk Clip Sport on Linux

-

published: 2019-08-13

-
-
-
-
    -
  1. Make a playlist with the songs you want in VLC.
  2. -
  3. Save said playlist as an .m3u file. (Other playlist file types will not work.)
  4. -
  5. Make a copy of said playlist file. Open it up in a text editor of your choice.
  6. -
  7. Remove all the lines that start with "#EXTINF".
  8. -
  9. Using the find-replace function, change the following strings:
  10. -
-

Whatever the path to your main music folder on your computer is, starting with "file:///", to "\Music". For example, the path to my main music library is file:///mnt/Hell3/Music/Music Archive/Popular. (My music is sorted into "Popular", "Soundtrack", and "Vaporwave".)

-

"%20" to " " (that is, a space).

-

"/" to "\".

-
    -
  1. Change the end-of-line markers to the DOS/Windows version.
  2. -
-

Open a terminal and cd to the directory you saved the copy of your playlist in, then type the following:

-

unix2dos playlist-copy.m3u

-
    -
  1. Plug in your Clip Sport player. Make sure it is mounted properly (ie. not as a read-only device) before proceeding.
  2. -
  3. Copy the playlist you just converted in step 6 to the "Playlists" folder, and your music to the "Music" folder.
  4. -
-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/syncthing-tails.html b/tutorials/syncthing-tails.html deleted file mode 100755 index 9d89318..0000000 --- a/tutorials/syncthing-tails.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - How to install Syncthing on Tails - Archive - MayVaneDay Studios - - - - - -
-
-

How to install Syncthing on Tails

-

published: 2019-07-01

-
-
-
-
    -
  1. Create a persistent volume in Tails. If you already have a persistent volume configured with Additional Software, Dotfiles, and Personal Data enabled, skip to step 2.
  2. -
-

After your first boot, go to the Applications menu in the top left corner. Open the Tails menu, and then select “Configure persistent volume”. Follow the on-screen instructions. At the very least, enable Additional Software, Dotfiles, and Personal Data. When the on-screen instructions tell you to reboot, do so.

-
    -
  1. Set up an admin password on Tails.
  2. -
-

On boot, go to the advanced settings button in Tails Greeter (the first window that pops up, before you go to the desktop). Click on the plus button, then select Administration Password. Type in a password of your choice and click Add.

-
    -
  1. Install Syncthing.
  2. -
-

sudo apt install syncthing

-
    -
  1. Configure Syncthing to use Tails’ SOCKS5 proxy and use your Persistent folder for its configuration.
  2. -
-

Open ~/.bashrc in your favorite text editor. At the end of the file, add the following lines:

-

export all_proxy=socks5://127.0.0.1:9150

-

alias sta=‘syncthing --home=/home/amnesia/Persistent/.config/syncthing’

-

Save and close the file. Copy it into your persistent Dotfiles folder, usually at /live/persistence/TailsData_unlocked/dotfiles/.

-
    -
  1. Initialize and start Syncthing.
  2. -
-

Reboot and unlock your persistent volume. Once on the desktop, open a terminal and type sta.

-
    -
  1. Configure Tor Browser to connect to the Syncthing web interface.
  2. -
-

Open Tor Browser (obviously). Open the hamburger menu and click on Preferences. At the very bottom, click on “Settings” next to “Configure how Tor Browser connects to the internet”. In the “no proxy for” box, type in “127.0.0.1” without the quotes.

-

Click the OK box and exit Preferences. Open another terminal and type:

-

sudo iptables -I OUTPUT -o lo -p tcp --dport 8384 -j ACCEPT

-

You will need to do step 6 every time you reboot Tails, as there is currently no way to make this persistent.

-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/tiles.html b/tutorials/tiles.html deleted file mode 100755 index 88a5b0c..0000000 --- a/tutorials/tiles.html +++ /dev/null @@ -1,39 +0,0 @@ - - - - - How to dump tiles from a GameBoy ROM on Linux - Archive - MayVaneDay Studios - - - - - -
-
-

How to dump tiles from a GameBoy ROM on Linux

-

published: 2020-04-08

-
-
-
-
    -
  1. Download the yy-chr tool. Extract it to a directory of your choice.
  2. -
-

Please note that it comes as a Windows binary; from my personal tests, it runs quite well in WINE.

-
    -
  1. Open/run yychr.exe. Go to File > Open and open the ROM you want to dump tiles from.
  2. -
  3. Scroll to the place in the ROM you want to dump files from.
  4. -
  5. Go to File > Save snapshot. It will ask you to save a file named chrXXX.bmp, where XXX is a number. Save it wherever you please.
  6. -
  7. Repeat steps 3 and 4 until you have saved screenshots of all the places in the ROM that have tiles you want to dump.
  8. -
  9. Once you are done, open a terminal and cd to the directory you saved the BMP files as.
  10. -
  11. Run the following command, replacing XXX with the actual numbers in the file name:
  12. -
-

convert chrXXX.bmp -crop 16x16@ +repage +adjoin tile-%d.bmp

-

This will dump each individual 8x8 tile into its own separate BMP file. Please be warned: this may generate more than a hundred files in that folder! Best to keep each separate chrXXX.bmp file in its own folder to keep everything organized.

-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/vlc.html b/tutorials/vlc.html deleted file mode 100755 index 5c65997..0000000 --- a/tutorials/vlc.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - How to play music in the CLI with an equalizer - Archive - MayVaneDay Studios - - - - - -
-
-

How to play music in the CLI with an equalizer

-

published: 2020-04-10

-
-
-
-
    -
  1. Install VLC.
  2. -
-

sudo apt install vlc

-
    -
  1. Open VLC and drag some music in.
  2. -
  3. While playing some music, open the Tools > Effects and Filters menu. Play around with the presets until you find one that sounds good.
  4. -
  5. Write down the name of the preset you used and then close VLC.
  6. -
  7. In a terminal, cd to where the music you want to play is.
  8. -
  9. In that terminal, execute this command:
  10. -
-

cvlc --equalizer-preset=INSERT_PRESET_NAME_HERE -I ncurses *.flac

-

INSERT_PRESET_NAME_HERE should be in all lowercase. For example, the “Headphones” preset (which is what I use) would be --equalizer-preset=headphones.

-

The full list of valid possibilities is: -

    -
  • flat
  • -
  • classical
  • -
  • club
  • -
  • dance
  • -
  • fullbass
  • -
  • fullbasstreble
  • -
  • fulltreble
  • -
  • headphones
  • -
  • largehall
  • -
  • live
  • -
  • party
  • -
  • pop
  • -
  • reggae
  • -
  • rock
  • -
  • ska
  • -
  • soft
  • -
  • softrock
  • -
  • techno
  • -
-

If your files are MP3 or some other format, replace the flac in *.flac with the actual file type.

-
    -
  1. Press the “h” key to open the help menu, which will show you the player controls.
  2. -
-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/yggdrasil.html b/tutorials/yggdrasil.html deleted file mode 100755 index ccb5a3c..0000000 --- a/tutorials/yggdrasil.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - How to create a Yggdrasil hidden service on Caddy on Debian 10 - Archive - MayVaneDay Studios - - - - - -
-
-

How to create a Yggdrasil hidden service on Caddy on Debian 10

-

first published: 2021-01-16

-

last updated: 2021-02-07

-
-
-
-
    -
  1. Install Yggdrasil.
  2. -
-

sudo apt install dirmngr

-

gpg --fetch-keys https://neilalexander.s3.dualstack.eu-west-2.amazonaws.com/deb/key.txt

-

gpg --export 569130E8CA20FBC4CB3FDE555898470A764B32C9 | sudo apt-key add -

-

echo 'deb http://neilalexander.s3.dualstack.eu-west-2.amazonaws.com/deb/ debian yggdrasil' | sudo tee /etc/apt/sources.list.d/yggdrasil.list

-

sudo apt update; sudo apt install yggdrasil

-
    -
  1. Install the Caddy web server.
  2. -
-

echo "deb [trusted=yes] https://apt.fury.io/caddy/ /" | sudo tee -a /etc/apt/sources.list.d/caddy-fury.list

-

sudo apt update; sudo apt install caddy -y

-
    -
  1. Get the IP Yggdrasil generates for you.
  2. -
-

sudo systemctl start yggdrasil; sudo systemctl enable yggdrasil

-

sudo journalctl -xfe -u yggdrasil

-

There will be a line that says "Your IPv6 address is". Copy the rest of that line somewhere safe.

-

Press the Control and C buttons on your keyboard at the same time to exit journalctl.

-
    -
  1. Configure Caddy to serve the hidden service.
  2. -
-

Open /etc/caddy/Caddyfile as root with your favorite text editor.

-

Type the following in:

-
-http://[YGGDRASIL_IP_ADDRESS_HERE] {
-	root * /your/website/file/path/here
-	file_server
-	encode gzip
-}
-				
-

The "http://" in front of the address is important as that tells Caddy to not try to enable HTTPS for that website. HTTPS is unnecessary for Yggdrasil hidden services as all traffic to and from the server is already encrypted in transit. Besides, Let's Encrypt wouldn't be able to issue a certificate for an IP address anyway.

-
    -
  1. Restart Caddy to apply your changes.
  2. -
-

sudo systemctl restart caddy

-
    -
  1. Get some peers for Yggdrasil.
  2. -
-

Open this page in a new tab on your browser. On your server, open /etc/yggdrasil.conf as root with your favorite text editor.

-

At the top of the configuration file will be a section that looks like this:

-

Peers: []

-

Pick some peers from the list and add them to that section of the file (one per line) so it now looks something like this:

-
-  Peers:
-  [
-    tcp://50.236.201.218:56088
-    tcp://lancis.iscute.moe:49273
-    tcp://45.77.107.150:34660
-    tls://longseason.1200bps.xyz:13122
-    tcp://8.9.30.45:34371
-    tls://107.189.4.167:42024
-  ]
-				
-

Substitute for the peers closest to your server geographically.

-

Save the file and close it.

-

sudo systemctl restart yggdrasil

-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- - diff --git a/tutorials/zeronet.html b/tutorials/zeronet.html deleted file mode 100755 index d57dfc4..0000000 --- a/tutorials/zeronet.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - How to set up a detached and encrypted ZeroNet seedbox on a Raspberry Pi - Archive - MayVaneDay Studios - - - - - -
-
-

How to set up a detached and encrypted ZeroNet seedbox on a Raspberry Pi

-

published: 2019-11-06

-
-
-
-
    -
  1. Format a USB stick with LUKS:
  2. -
-

sudo apt install gnome-disk-utility cryptsetup

-

If you're running a different distro on your server, the package name will likely vary: it's usually some form of gnome-disks. cryptsetup is required for LUKS, and for some reason, apt doesn't install it by default.

-

Once it installs, make sure your USB stick is plugged in, open a terminal, and run sudo gnome-disks.

-

Hit the gear icon below the partition table and choose Format Partition, then choose LUKS. Enter a strong password (that you'll remember, of course). In the "Volume Label" section, enter "zeronet" just to make this guide a little easier.

-
    -
  1. Mount the USB stick:
  2. -
-

sudo nano -$ /etc/fstab

-

Put the following line on the bottom:

-

/dev/disk/by-label/zeronet /mnt/zeronet auto user,nosuid,nodev,nofail,x-gvfs-show 0 0

-

Reboot your server.

-

If /mnt/zeronet isn't accessible by non-root users, execute the following command to fix that:

-

sudo chmod -R 777 /mnt/zeronet

-

Please note that 777 isn't the safest of permissions; if you know your username and group, a chown instead is safer:

-

sudo chown -R username:group /mnt/zeronet

-
    -
  1. Download and install the latest version of ZeroNet:
  2. -
-

cd /mnt/zeronet

-

git clone https://github.com/HelloZeroNet/ZeroNet

-

cd ZeroNet

-

sudo -H pip3 install -r requirements.txt

-

Enable the UiPassword plugin, and remove the Multiuser plugin to avoid future issues:

-

mv plugins/disabled-UiPassword plugins/UiPassword

-

rm -rf plugins/disabled-Multiuser

-

Then configure it to be accessible over the network:

-

nano -$ zeronet.conf

-

Paste the following into the text editor:

-
-				[global]
-				fileserver_port = 27328
-				ui_ip = your.local.ip.here
-				ui_password = set_a_password_here
-				
-
    -
  1. Enable Tor access:
  2. -
-

sudo apt install tor

-

sudo nano -$ /etc/tor/torrc

-

Uncomment the lines that say ControlPort 9051 and CookieAuthentication 1.

-

Save and exit the file, then restart the Tor service:

-

sudo systemctl restart tor

-

Then give your user permission to read the Tor cookie you just set up:

-

sudo usermod -a -G debian-tor YourUsername

-

Login and logout of your user, or just reboot the server.

-
    -
  1. Make a systemd service:
  2. -
-

sudo nano -$ /etc/systemd/system/zeronet.service

-

Paste the following:

-
-				[Unit]
-				Description=zeronet
-				After=syslog.target
-				After=network.target
-
-				[Service]
-				Type=simple
-				User=YourUsername
-				WorkingDirectory=/mnt/zeronet/ZeroNet
-				ExecStart=/usr/bin/python3 /mnt/zeronet/ZeroNet/zeronet.py
-				Environment=USER=YourUsername
-				Restart=always
-				StandardError=syslog
-				CPUQuota=80%
-
-				[Install]
-				WantedBy=multi-user.target
-				
-

Then reload systemd to install the new service:

-

sudo systemctl daemon-reload

-
    -
  1. Start ZeroNet:
  2. -
-

sudo systemctl start zeronet

-
-
-
-

CC BY-NC-SA 4.0 © Vane Vander

-
-
- -