Bluesky reposts from my phone without a Bluesky account
The only reason I’d ever be tempted to set up a Bluesky account, or go through the whole “set up a PDS oh god my eyes are glazing over” thing, would be to repost nice art/techbro memes/et cetera, and it doesn’t really seem worth setting up a PDS oh god my eyes are glazing over for that. My “journal” posts are syndicated to the … cringe … ATmosphere by Bridgy Fed as long as they don’t have bad words in them or whatever it is that triggers the block on the crossposter. So I do kind of have a Bluesky “presence”, if not an actual account. I wouldn’t want to make a real account, even solely for reposting purposes, because I’m not about the “signing up for other people’s websites” life, but using that existing presence for reposts doesn’t seem completely objectionable when it’s there anyway.
Bridgy Fed does have support for reposts. If I enact a repost of something by writing a little bit of HTML that conforms to that syntax, and then send the webmention to Bridgy Fed, it should work in the same way that crossposting usually does. I didn’t want to make a separate page for every repost, because all I need to include for each one is the URL of the original and the time at which I’m reposting it. So I set up a page with a (hidden) <ul>
with the class h-feed
, put my h-card details and the Bridgy Fed link into that, and then added an <li>
for each repost with the h-entry
class, with the repost link and the time inside, marked up as required.
I wanted a way of adding new reposts to this file without having to go in and manually edit the HTML each time, so I eventually worked out a bash script that would do the following:
- Read in the URL for the post I'm reposting.
- Find a specific string in the “boosts” page (basically just a marker for the top of the h-feed), and then after that string append the
<li>
, marked up as required, adding the URL as the value of thehref
attribute and the current time formatted in the required way as the value of thedatetime
attribute.- String to get the timestamp:
date +'%Y-%m-%d %T'
- String to pass to
sed
:"s|<!-- sed -->|<!-- sed -->\n<li class=\"h-entry\"><a class=\"u-repost-of\" href=\"$post\"></a><time class=\"dt-published\" datetime=\"$timestamp\"></time></li>|g"
- String to get the timestamp:
- Send the webmention to Bridgy Fed using cURL.
The “sending the webmention” part was slightly more complex than I expected, because it looks like if you’ve already sent BF a webmention from a certain page, it ignores it on subsequent requests, which I guess makes sense. I somehow came up with the idea of appending ?
+ the current Unix timestamp to the URL to force BF or whatever’s sending the request to treat it as a new source. So this is read in as a variable in the same way: utime="$(date +%s)"
and then $utime
goes into the cURL command.
I saved this in a script in my home directory on the server, so all I need to do is ssh in using Termius and run ./boost.sh
, paste in the URL of the post I want to repost at the prompt, and that should work! At least, it’s worked so far.
You can find this post on the fediverse by searching for https://fed.brid.gy/r/https://tre.praze.net/notes/20250815/
in your fediverse client.
n° 1
2025-08-15
this is so fucking cool
reply: :D
Comments
You can comment on this post if you like. Comments will be posted below after moderation. All comments are anonymous and email addresses, if provided, will not be published.