Custom Bluesky and Mastodon usernames with your own domain

I recently went through the process of setting up custom handles/aliases for myself using my domain name on Bluesky and Mastodon. I figure I’ll share the steps here in case anybody else with a similar setup (WordPress on Amazon Lightsail) wants to do the same.

Bluesky

Simply follow the instructions that Bluesky have provided here. In Step 5, you will need to add a TXT record to your domain DNS. If you use Amazon Lightsail, click on the Domains & DNS option and then select the relevant DNS zone (in my case, web-goddess.org).

Lightsail console DNS zone

Then click on the DNS records tab and click the + Add record button.

Lightsail console DNS zone

Change the record type to TXT record and then put in the name and response provided by you by Bluesky. (The “host” is the “Record name,” and the “value” is the “Responds with.”) Click save.

Adding a new TXT record

Wait a little bit — in my experience, 30 seconds is usually sufficient — and then click that Verify DNS Record button in Bluesky. And then you’re done!

In my case, you can now find me at @web-goddess.org on Bluesky.

Mastodon

Mastodon is a slightly more involved process, and it doesn’t change your official server username but rather gives you an alias that you can give out. In my case, my current Mastodon account is @web_goddess@aus.social. However, if I give out an alias instead, then it doesn’t matter if I change servers in the future — you’ll still be able to find me. I was inspired by these posts by Phil Nash and Maarten Balliauw for how to do it.

First, open up a new browser tab and go to this URL, substituting your own Mastodon account values in there:

https://{instance}/.well-known/webfinger?resource=acct:{username}@{instance}

So in my case, I went to https://aus.social/.well-known/webfinger?resource=acct:web_goddess@aus.social. What you’ll get back is a blob of text (JSON). Copy that and set it aside for the moment.

Then go to the Lightsail console and click on the little terminal icon to Connect using SSH to your instance.

Lightsail console

A window with a terminal will appear.

Lightsail terminal

Now you need to go to where the WordPress files are stored for your site. Type in this command in the terminal and hit enter.

cd stack/wordpress/

Important note: The path above is for one of the newer WordPress Bitnami instances. If you have an older instance, the path to where your WordPress files are stored might be different.

Then you’ll need to create a new directory called “.well-known.” (Note the dot in front of the name.) Type in this command and hit enter.

mkdir .well-known/

Then go into that directory. Type in this command and hit enter.

cd .well-known

Now you will need to make a special file called webfinger. Type in this command and hit enter to open a text editor in the terminal.

nano webfinger

This is where you will paste in the blob of JSON text you copied from your Mastodon server. Copy and paste it straight into the editor, and then hit CTRL-X to exit.

The editor will ask if you want to “Save modified buffer?” Type Y for Yes, leave the name as webfinger, and hit enter to save.

You can then exit the Lightsail terminal and close the pop-up window.

exit

If everything worked correctly, you should now be able to go to your own domain and receive the JSON blob back by substituting your domain in this address:

https://{yourdomain}/.well-known/webfinger

In my case, I went to https://www.web-goddess.org/.well-known/webfinger in a browser tab and verified that the JSON was returned.

And that’s it! What does this actually mean? It means I can tell people that my Mastodon username is @kris@web-goddess.org, and if they type that into a search box on Mastodon, it will point them to my official account.

Mastodon search

If I change servers in the future, I’ll just have to update the JSON blob with the correct values from my new Mastodon server, and people will continue to be able to find me from the alias.

New web-goddess theme!

I’ve been feeling like the site needed a new lick of paint, so I spent some time today installing and customising a new theme. I used the Björk theme from Anders Norén, who made my previous theme. My logo remains the awesome one that my friend Matt Hinrichs drew for me many years ago. I also decommissioned my old krishoward.org personal site, moving some of the relevant content here and then changing that domain to a redirect. Please let me know if you find any broken links or anything that looks weird!

Needlepoint Cushions with Mrs. Morris

Eighteen years ago, Mr. Snook’s grandmother (“Kathy-Nanny”) moved into a retirement village, and I was gifted one of her many needlepoint tapestries: a tasteful nude reclining with a whippet. If you don’t know much about needlepoint, it generally involves a heavy canvas with a picture printed on it that you then embroider over with slanted stitches. Many of them are based on fine art, and Kathy-Nanny’s was titled “Venus d’aprés Titien.” (It’s clearly based on “Venus and Musician,” just with the leering musician removed.) It was in a heavy ornate frame, and while it was well-executed and beautiful work, it didn’t really… go with any of our other stuff. I put it in a closet for safekeeping and it basically sat in storage for the better part of two decades.

A couple months ago, we moved back into the house after our extensive renovation, and I decided it was time to bring Venus back to life. Rather than hang her on the wall, I thought that turning her into a pair of cushions might be the best way to go.

First, I had to get her out of the frame. Underneath I found the tapestry wrapped around a piece of plywood and stapled all the way around. There were hundreds of staples, each of which had to be pulled out by hand.

Tapestry over plywood

Thankfully Mr. Snook helped me. The staples were really dug into the edge, so I pried them loose enough for him to grab with a pair of pliers. It was back-breaking work.

Pulling staples

At last we had the tapestry free of the plywood. This is what it looked like from the reverse. Even on that side, you can see what a good job she did with the stitching.

Reverse of tapestry

Once I had it free, I rang up my friends at Morris & Sons. Mrs. Morris has sewn more needlepoint cushions than probably anyone in all of Australia, and she kindly offered to teach me how to do it. I met Mrs. M at her workshop, where we started by deciding on the backing fabric. We narrowed it down to these two velvets, and I decided to go with the more orangey-brown one.

Choosing velvet colours

Then her son Joseph helped me work out what size to make the cushions. We measured up and realised that if we simply sliced her in half, we’d get two very nearly square cushions out of it. They were both incredulous that I wanted to cut it in half, and Mrs. M couldn’t quite get over the fact that I’d have a cushion with just LEGS on it. But they were game for the experiment, so Joseph cut it up the middle.

Measuring up

Joseph also helped me cut appropriately sized pieces of the backing fabric, as well as slicing up many pieces to be used to create piping.

Cutting the background fabric

Then the real lessons began! I don’t want to give too many of her secrets away, but at a high level: Mrs. M first showed me how to piece the strips of velvet together into one very long strip, taking care to ensure the nap always went the right direction so it didn’t look or feel odd. Then I created meters and meters of piping, wrapping the strip around a long cord and sewing it down tightly. The Morrises let me use one of their industrial Singer machines, which took a bit of practice to get the hang of. It had a large foot pedal and a knee lever for controlling the presser foot.

Sewing piping

Next Mrs. M showed me how to sew the piping down around the border of each cushion top, with some special tricks for navigating the corners and for joining the ends up neatly at the bottom.

Attaching the piping

Next I put the backing fabric onto each cushion top, face-down, and pinned it around three sides tight against the piping (leaving the bottom open).

Pinning on the backing

Oh no, it’s time to insert the zipper! Mrs. M is a true legend and assured me that it was going to be much easier than I feared.

Zipper time!

I watched her closely as she showed me her method. I took lots of photos and notes to try to capture the trickier bits!

Mrs. M sewing a zipper

First we sewed one side, and then the other. Hey, I was getting the hang of this!

Sewing the zipper

I managed to insert both zippers without too much trouble, only having to unpick one or two bits where I got a bit too close to the zipper teeth.

Completed zipper

Then it was time to sew the other three sides of the cushion. The bits at each end of the zipper were the trickiest part, and I had to redo them a couple times. The rest was smooth sailing though.

Sewing the other three sides

After turning it rightside-out, I had a finished cushion cover! The legs made me smile immediately. I knew this was going to turn out even better than I’d hoped.

Completed cushion cover

The final step was to sew custom-sized cushion inserts. Mrs. M showed me how to gauge the correct size and how to put them together. Each one took a fair bit of stuffing! The hardest part was then sewing the openings closed when they were so full and fluffy.

Stuffing the inserts

And here are the completed cushions! As you can tell, I was pretty stoked with how they turned out. It’s still obvious that they are part of the same picture, and I only lost a tiny bit due to cutting her in half.

Finished cushions

While I’m sure there are other needlepoint nudie cushions in the world, these are pretty special. They look spectacular on the new couch too! They got a big thumbs up from both Rodd and his sister.

Legs cushion  Lady cushion

If you want to make needlepoint cushions of your own, Morris & Sons is definitely the place to start. They have everything you need including tapestry kits with canvas and threads. They also offer a professional service to make up the finished cushions for you once you’ve finished with the embroidery, which is handy if you don’t have an industrial-strength sewing machine at home.

Thank you to Mrs. M and Joseph for all their help with these! I’m so pleased we’ve been able to keep one of Kathy-Nanny’s pieces alive in our new home. 🩷

Photo Post

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

“This is the greatest damn city in the world.” Happy anniversary to us! We had amazing Japanese-Italian food at the much lauded @lumidining. Everything was so good. 🍷 Also, I wore pristine white Chucks… just as I did on my wedding day. ❤️👰‍♀️

Photo Post

Exciting #renovation day! Our new bedroom furniture was delivered this morning, and I’m loving how the headboard complements the blue wall. 😍 Then our bar and cupboards came back from the restorer, thoroughly cleaned, repaired, and looking lovely. That meant we could unpack a few more boxes, including our Museum of Obsolete Technology. 😂 And the landscapers have built a form for our floating concrete bench seat!

Exciting #renovation day! Our new bedroom furniture was delivered this morning, and I’m loving how the headboard complements the blue wall. 😍 Then our bar and cupboards came back from the restorer, thoroughly cleaned, repaired, and looking lovely. That meant we could unpack a few more boxes, including our Museum of Obsolete Technology. 😂 And the landscapers have built a form for our floating concrete bench seat!

Exciting #renovation day! Our new bedroom furniture was delivered this morning, and I’m loving how the headboard complements the blue wall. 😍 Then our bar and cupboards came back from the restorer, thoroughly cleaned, repaired, and looking lovely. That meant we could unpack a few more boxes, including our Museum of Obsolete Technology. 😂 And the landscapers have built a form for our floating concrete bench seat!

Exciting #renovation day! Our new bedroom furniture was delivered this morning, and I’m loving how the headboard complements the blue wall. 😍 Then our bar and cupboards came back from the restorer, thoroughly cleaned, repaired, and looking lovely. That meant we could unpack a few more boxes, including our Museum of Obsolete Technology. 😂 And the landscapers have built a form for our floating concrete bench seat!

Exciting #renovation day! Our new bedroom furniture was delivered this morning, and I’m loving how the headboard complements the blue wall. 😍 Then our bar and cupboards came back from the restorer, thoroughly cleaned, repaired, and looking lovely. That meant we could unpack a few more boxes, including our Museum of Obsolete Technology. 😂 And the landscapers have built a form for our floating concrete bench seat!

Exciting #renovation day! Our new bedroom furniture was delivered this morning, and I’m loving how the headboard complements the blue wall. 😍 Then our bar and cupboards came back from the restorer, thoroughly cleaned, repaired, and looking lovely. That meant we could unpack a few more boxes, including our Museum of Obsolete Technology. 😂 And the landscapers have built a form for our floating concrete bench seat!

Photo Post

Landscaping update! The stairs are finished, and the stone pavers are being laid. They’ve also put in pads that will support the floating deck. Out the back, they’ve built a new retaining wall that will have built-in seating. I was excited to see some of the corten steel planters have arrived too! I just keep reminding myself that there will eventually be a LOT of plants that will fill in the gaps and turn it into a green oasis. ❤️🌱🌴🌳

Landscaping update! The stairs are finished, and the stone pavers are being laid. They’ve also put in pads that will support the floating deck. Out the back, they’ve built a new retaining wall that will have built-in seating. I was excited to see some of the corten steel planters have arrived too! I just keep reminding myself that there will eventually be a LOT of plants that will fill in the gaps and turn it into a green oasis. ❤️🌱🌴🌳

Landscaping update! The stairs are finished, and the stone pavers are being laid. They’ve also put in pads that will support the floating deck. Out the back, they’ve built a new retaining wall that will have built-in seating. I was excited to see some of the corten steel planters have arrived too! I just keep reminding myself that there will eventually be a LOT of plants that will fill in the gaps and turn it into a green oasis. ❤️🌱🌴🌳

Landscaping update! The stairs are finished, and the stone pavers are being laid. They’ve also put in pads that will support the floating deck. Out the back, they’ve built a new retaining wall that will have built-in seating. I was excited to see some of the corten steel planters have arrived too! I just keep reminding myself that there will eventually be a LOT of plants that will fill in the gaps and turn it into a green oasis. ❤️🌱🌴🌳

Landscaping update! The stairs are finished, and the stone pavers are being laid. They’ve also put in pads that will support the floating deck. Out the back, they’ve built a new retaining wall that will have built-in seating. I was excited to see some of the corten steel planters have arrived too! I just keep reminding myself that there will eventually be a LOT of plants that will fill in the gaps and turn it into a green oasis. ❤️🌱🌴🌳

Landscaping update! The stairs are finished, and the stone pavers are being laid. They’ve also put in pads that will support the floating deck. Out the back, they’ve built a new retaining wall that will have built-in seating. I was excited to see some of the corten steel planters have arrived too! I just keep reminding myself that there will eventually be a LOT of plants that will fill in the gaps and turn it into a green oasis. ❤️🌱🌴🌳

Landscaping update! The stairs are finished, and the stone pavers are being laid. They’ve also put in pads that will support the floating deck. Out the back, they’ve built a new retaining wall that will have built-in seating. I was excited to see some of the corten steel planters have arrived too! I just keep reminding myself that there will eventually be a LOT of plants that will fill in the gaps and turn it into a green oasis. ❤️🌱🌴🌳

Landscaping update! The stairs are finished, and the stone pavers are being laid. They’ve also put in pads that will support the floating deck. Out the back, they’ve built a new retaining wall that will have built-in seating. I was excited to see some of the corten steel planters have arrived too! I just keep reminding myself that there will eventually be a LOT of plants that will fill in the gaps and turn it into a green oasis. ❤️🌱🌴🌳