user doc: changing handle, domain

https://docs.microblog.pub/user_guide.html#profile states:

note that the following config items cannot be updated (without breaking federation):

  • domain
  • username

As these two config items define your ActivityPub handle @handle@domain.

I tried exactly that and it broke federation (as far as I can tell).

Then I tried to find out why and how to re-federate, but didn't resolve the problem.


I started out using username.do.main as the domain setting - the same as my dns domain username.do.main.

Then I found that I didn't like my handle *username@username.do.main* and wanted to change the domain to do.main to end up with *username@do.main*.


#Is it possible at all to have the dns domain username.do.main and at the same time the profile.toml domain setting do.main?

#If possible, did I configure it correctly?

# cat /opt/yunohost/microblogpub/microblogpub/data/profile.toml 
domain = "ween.de"
username = "chrichri"

#If this is correct and should work, how can I re-federate?

#Can we put this into a short sentence to add it to the docs?

If not the docs should maybe say something like that it is not possible to change the settings without breaking the setup.

Assigned to
2 months ago
a month ago
No labels applied.

~tsileo 2 months ago

Hi, yes I will update the doc to mention that this setting should not be changed (and maybe prevent it too).

Basically, ActivityPub provides no way to change a domain without losing all your posts/objects.

This is because the domain is part of the object ID, and it is the same for followers/following.

If you have your 2 domains pointing to your server, I think the best move is:

  • Set the config to the original domain user name
  • Execute the self-destruct task
  • Re-install with the new domain

Let me know if you have more questions!

~tsileo 2 months ago

In theory, there's another way which would allow you make your followers follow your new instance (but there's no way to migrate your existing content or the account you're following):

  • Set the config to the original domain/user name
  • Make a second install with the new domain/user name
  • Set also_known_as = "https://your-old-domain.tld" in the new instance
  • On the old instance run the move-to task with the new user@domain.tld
  • Then run the self-destruct task

But the inv.sh helper for Yunohost does not yet support argument, if you want to try this way let me know I can create a custom script for you.

~chrichri 2 months ago

I only did some testing, yet. I'll just start over - thanks a lot for the help and information!

Did I understand correctly that it is not possible to run microblog.pub on let's say https://chrichri.ween.de/ and have @chrichri@ween.de as username/handle?

~tsileo 2 months ago

I need to do some research on that, as I think it's possible with Mastodon, but I don't remember exactly how it works or if it actually does that. I will keep you updated.

~chrichri 2 months ago

If it would be possible, would be nice.

Otherwise I'll just go for me@chrichri.ween.de ... and done. :)

Alexey Shpakovsky 2 months ago · edit

First, thanks for the nice project!

Second, I'm new to fediverse, and would also like to have this feature :)

In my case, I would love to have username of @firstname@lastname.tld, while microblog itself being hosted at microblog.lastname.tld - i.e. slightly different from what ~chrichri wants (I already have a simple blog at https://firstname.lastname.tld)

Don't know if it helps, but so far I'm aware of one another gotosocial having this feature: see how account @gotosocial@superseriousbusiness.org has this page: https://gts.superseriousbusiness.org/@gotosocial

Also worth noting that searching for above account in my instance of microblog.pub shows it as @gotosocial@gts.superseriousbusiness.org, so there's some more work that needs to be done :)

~wychwitch a month ago

As a potential alternative solution, check out #50 for how to host the site at do.main.tld/microblog/ while your username is user@do.main.tld !! This might not address everyone's use cases, but it did address mine ^^

Alexey Shpakovsky a month ago · edit

Thanks! That's indeed a nice idea, but I might need a bit more guidance. I've seen ~doof's answer about .well-known/webfinger, thanks! But also worth mentioning how do you change username, domain, and id for everything to work correctly. I think for your example you set:

domain = "do.main.tld"
username = "user"
id = "https://do.main.tld/microblog"

is it correct?

~wychwitch a month ago

Just to pop in and answer for anyone else who might stumble into here, yes that id is correct! You also need to add the argument --root-path=/subdomain to your supervisord.conf (or docker-supervisord.conf, or ynh-supervisord.conf if you use them) and make sure nginx is configured correctly, and then it should work just fine!

Register here or Log in to comment, or comment via email.