@Ben Pate 🤘🏻 What if moving a server looked like this:

1. sign up for new account
2. authenticate old account (OAuth, whatever)
3. click "migrate"
4. click "yes really"
5. celebrate

If this were possible, then a whole lot of people could become "server admins" without being IT nerds.
Reality on Hubzilla for longer than Mastodon, as well as on (streams) and Forte:

  • Register a new account.
  • Optionally: Wait for it to be manually activated by the admin.
  • Be asked to create a channel (= the actual identity with posts and contacts and files and stuff; your account is not your identity).
  • Choose the option to move an existing channel.
  • Enter the URL of the existing channel.
  • Enter the password of the account on which the existing channel is located.
  • Confirm
  • A clone of the channel is created on the new server.
  • The data of the existing channel is mirrored to the clone.
  • The clone is promoted to main instance of the channel; the already existing instance of the channel is demoted to clone.
  • The ID of your channel is changed accordingly.
  • All nomadic contacts (= on Hubzilla, (streams) or Forte) are automatically changed to the new ID.
  • (streams) and Forte only: All non-nomadic contacts receive a new connection request.
  • The former-main-instance-and-now-clone is deleted because you chose to move rather than clone.
  • If there are no other channels on the account on the old server, the whole account is deleted because accounts cannot exist with no channels on them.

  • The only two differences between cloning and moving are that cloning leaves your main instance intact instead of deleting it, and it leaves it as your main instance by default rather than making the new clone your main instance.

    It works for Discord, why not the Fediverse?
    It's a common misconception, probably even by FLOSS devs, that "server" on Discord that a handful of clicks on the Web interface inserts a new 19" rack iron into a rack inside some data centre with a LAMP stack and an installation of the Discord server backend on it and makes you the tech admin. Or something like that.

    This is far from the truth. Discord has integrated the word "server" into its newspeak. On Discord, "server" means "chat room". A chat room on the same centralised, corporate-owned, commercially-operated server farm as all the other "servers".

    At the same time, Generation Z and newer think that this is what "server" always means because they've never come into contact with TeamSpeak and never experienced LAN parties.

    Administrating a Fediverse server, on the other hand, does equal administrating a LAMP stack on the command line, full stop.

    I sincerely hope that the day won't come when someone does with e.g. Mastodon what the Outworldz DreamGrid did with OpenSimulator: turn a full server stack into an "easy-peasy", fully-preconfigured, Windows-only point-and-click application that anyone can install on their Windows machines with absolutely zero prior knowledge about servers or networks, that even automatically connects to a dynamic DNS service that was created specifically for this application so you don't even need to know anything about domains, and that can only be handled through the built-in Windows GUI. (Mind you, there are people who are actually asking for exactly this, only not for Windows, but for their iPhones. Food for thought.)

    CC: @silverpill  @Contraquestão

    #Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #Fediverse #Hubzilla #Streams #(streams) #Forte #MovingInstances #NomadicIdentity #Discord #OpenSim #OpenSimulator #DreamGrid
    Outworldz OpenSim Installer

    @Marcus Rohrmoser 🌻 Not to my knowledge.

    First of all, nomadic identity won't be described in one single FEP that'll cover everything. It was not created on and for ActivityPub. In fact, the concept predates ActivityPub by some six years, and the first implementation predates ActivityPub by some five years.

    See, nomadic identity started as an idea. Then Mike built a brand-new protocol around that idea, Zot. Then, in 2012, Mike forked one of his own forks of his own software that is now known as Friendica, originally based on yet protocol designed by himself, and re-wrote the whole thing against Zot. That's how the software was born that's known as Hubzilla now.

    As for nomadic identity via ActivityPub, there is only one publicly available software implementation for that. And that's Mike's own Forte. Forte still does everything the Hubzilla/(streams) way which is very very different from how anything else in the Fediverse works, even including Friendica itself, and especially including Mastodon.

    Whereas Zot was designed around nomadic identity, ActivityPub isn't. It's having nomadic identity bolted on with a whole slew of FEPs authored by @silverpill who is working on converting Mitra (typical Fediverse software: built only against ActivityPub, non-nomadic, login/account equals identity) into something that's every bit as nomadic as Hubzilla, (streams) and Forte.

    Nomadic identity via ActivityPub was originally silverpill's idea, by the way. And that was in 2023. It turned out that this was actually doable, and so he and Mike started working on it, using experimental "nomadic" branches of Mitra and the streams repository respectively. Their approaches were naturally different: silverpill had to make something non-nomadic nomadic. Mike had to make something nomadic be nomadic using a protocol that wasn't made for nomadic identity.

    Not only is silverpill's approach much more difficult because Mitra wasn't made for nomadic identity either, but he also took it upon himself to put everything into FEPs by and by. He is still publishing FEP after FEP. Nomadic identity is quite a complex thing from a "Fediverse equals ActivityPub" point of view; it's just that the Hubzilla/(streams) bubble is so used to it whereas silverpill actually has to explore and research something that's natural to Mike.

    There's no common set of commands either. There can't be any. Forte, like everything else in the family all the way back to Friendica, is written in PHP. Mitra is written in Rust. Nobody has ever attempted to make something not written in PHP nomadic.

    In fact, code sharing would be next to impossible anyway: Forte, like Hubzilla and early Mistpark/Friendika, is published under the MIT license, (streams) is in the public domain, but Mitra is licensed under the GNU Affero GPL v3. Any code coming out of Mitra's conversion to nomadicity would be AGPL-licensed Rust code. And MIT-licensed PHP code that was created when turning Nomad-based (streams) into ActivityPub-based, Nomad-less Forte would be useless for non-nomadic-to-nomadic conversions anyway.

    So don't expect any how-to's or the like for converting non-nomadic, ActivityPub-only-by-original-design, login/account-equals-identity Fediverse server software to the same level of nomadicity as Hubzilla, (streams) and Forte until
    • the first stable release of Mitra with full support for that level of nomadicity is officially rolled out
    • silverpill declares that everything necessary for Hubzilla/(streams)/Forte-level nomadic identity via nothing but ActivityPub is cast into FEPs and finalised

    Seeing as this has been in the making for some two years now, and I don't even know if the experimental nomadic branch of Mitra even allows cloning right now, I guess this will be a long way to go. He may actually first have to change Mitra from the standard Fediverse model of the account and the login being the identity to Hubzilla's, (streams)' and Forte's model of the identity being a container inside your account and one account being able to host multiple such identities. That's because you can't clone logins.

    Oh, by the way, nomadic identity is not just about moving. It's not "moving-your-Mastodon-account-to-another-instance on coke". It's way more.

    The core feature is cloning. Imagine you have full, live, hot backups of your Mastodon account on one, two, three, four or more other Mastodon instances. Imagine they all have the same identity, based on which one of them is your main instance. Imagine whatever happens on one of them is sync'd to the others in near-real-time. Imagine you can log into either of them and use either of them all the same, regardless of how many and which of the servers are actually online, as long as at least one is.

    Moving is actually even more complex than cloning because it involves both cloning and changing the main instance of your identity.

    Allow me to illustrate by supposing Mastodon works like Hubzilla, (streams) and Forte:

    • Situation:
      • You have an account on digitalcourage.social with one channel, [email protected].
      • You want to move to troet.cafe.
    • Step 1: You create an account on troet.cafe.
    • Step 2: There can't be accounts with no channels. You have to add a channel.
      So you choose to move your channel [email protected] from digitalcourage.social to troet.cafe.
    • Step 3: Your channel [email protected] is cloned over to troet.cafe.
    • Situation now:
      • You have an account on digitalcourage.social with the main instance of your channel; its identity is [email protected].
      • You have an account on troet.cafe with a clone of your channel; its identity is still [email protected].
    • Step 4: All data on your channel is synchronised over from your main instance on digitalcourage.social to your clone on troet.cafe. Posts, images, other files, followers, followed, settings, lists, filters etc. etc. pp. Everything.
    • Now the main instance and the clone are identical.
      Up until here, the process of moving is the same as the process of cloning. What follow is exclusive to moving.
    • Step 5:
      • The clone on troet.cafe is promoted to main instance.
      • As there can be only one main instance for each channel, the former main instance on digitalcourage.social is demoted to clone.
    • Situation now:
      • You have an account on digitalcourage.social with a clone of your channel, formerly the main instance; its identity is [email protected].
      • You have an account on troet.cafe with the main instance of your channel, formerly a clone; its identity is [email protected].
    • Step 6: All your connections on servers of nomadic software are changed from [email protected] to [email protected], both locally on the servers that you are on and locally on the servers that they are on.
    • Step 7 (AFAIK, this only happens on (streams) and Forte in reality): All your outbound connections ("followed") on servers running non-nomadic software receive a follow request from [email protected] which, to them, is an all-new, independent identity.
    • The actually move is done. What follows is the clean-up that really makes the move a move, namely taking care that nothing is left behind in the old location.
    • Step 8: When these last steps are finalised, your clone on digitalcourage.social is deleted. After all, you wanted to move, not to clone.
    • Step 9: As your account on digitalcourage.social has no channel on it anymore, the whole account is deleted.
    #Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #Fediverse #Mitra #Hubzilla #Streams #(streams) #Forte #NomadicIdentity #ActivityPub #Zot #Zot6 #Nomad #FEP #MovingInstances #Clone #Clones
    mitra

    Federated social network

    Codeberg.org
    @volkris It's unfortunately a core problem with this platform, but we shouldn't pretend it's not.
    It's being worked on, though, and it has been since 2023 when @silverpill wanted to implement nomadic identity in Mitra, but without moving to the Nomad protocol.

    Current status as far as I'm informed:
    • Mitra has at least got support for nomadic identity via ActivityPub in a development version.
    • (streams), a Hubzilla descendant by Hubzilla's and Friendica's creator, has had support for nomadic identity via ActivityPub in its stable release for months. It doesn't rely on it, though, because it uses Nomad for that.
    • Forte, a (streams) fork by the same developer, is the first Fediverse server application to actually rely on ActivityPub for nomadic identity. It's still experimental and a "closed alpha", though.
    • The building blocks of nomadic identity as implemented in Hubzilla, (streams) and Forte are being cast into ActivityPub FEPs such as FEP-ef61 "Portable Objects".

    The long-term goal is to make nomadic identity available for everything that uses ActivityPub. Unlike now, moving instances and cloning and sharing identities shall not be limited to within the same project, but all across the whole Fediverse. But even if this should become stable one day, and I'm pretty sure it will, the next obstacle will be adoption by the various Fediverse projects.

    CC: @Jürgen Hubert

    #Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #Mitra #Hubzilla #Streams #(streams) #Forte #NomadicIdentity #MovingInstances #MovingServers
    Netzgemeinde/Hubzilla

    @Jürgen Hubert This is very much not a unique selling point of Mastodon. Mastodon is not the only decentralised software that lets you move servers, nor is Mastodon the decentralised software that's best at moving servers, or where it's the easiest, nor is it unprecedented.

    I'm writing to you from Hubzilla (official website). It was originally created in 2012, almost four years before Mastodon. And it was created with the goal to roll out an entirely new feature to the Fediverse: nomadic identity (semi-official website).

    I can move my entire identity from one server to another in one go, including:
    • all my posts and private messages, including conversations
    • all my connections (followers and followed are unified here by default); connections on Hubzilla, (streams) and Forte are even automatically re-written to my new identity on the other side (can Mastodon do that with non-Mastodon connections?)
    • all settings for all my connections
    • all my channel-wide filter entries
    • all individual filter entries for my connections
    • my NSFW keyword list
    • all my privacy groups (= lists) with everyone in them
    • the whole channel configuration
    • all my files including the directory structure in my file space
    • my federated event calendar
    • my CalDAV calendars
    • my CardDAV addressbook
    • my articles
    • my wikis
    • all modifications I've done to the theme on my channel
    • all modifications I've done to any pages on my channel (yes, I can completely re-arrange them)
    • etc.

    The only thing that I think doesn't come with me is which apps I have activated.

    I can easily do so using only Hubzilla's UI, all through the wire within a few minutes, without having to export or import anything.

    After moving, the channel is automatically deleted on the old server. And if the account on the old server has no more channels on it, the account is deleted, too. Moving on Hubzilla leaves no dead accounts or channels behind.

    And this is just a subset of what nomadic identity was originally designed for: cloning channels. Instead of moving my channel to another server, I can also create a bidirectional, live, hot real-time backup which I can log into and use just like I can log into and use the original. I can make as many clones as I want, and they're synchronised with each other. I can declare a clone the "original" and demote the previous "original" to clone (which is part of what happens when I move). This makes my channel resilient against servers shutting down.

    Again, all this has been available since 2012, almost four years longer than Mastodon. On something which is part of the Fediverse, and which has been continuously federated with Mastodon for as long as Mastodon has been around.

    #Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #Hubzilla #NomadicIdentity #MovingInstances #MovingServers
    Hubzilla - Join the Fediverse

    Onward I go - you can find me at http://kind.social/@smitha.

    I should have already re-followed all my followers over there.

    Thanks for everything, Famichiki Fam. 🙏🏽🥰

    #fedipact #MovingInstances

    smitha (@[email protected])

    0 Posts, 177 Following, 0 Followers ·

    Be More Kind

    My appeal about the removal of my profile pic ("too sexy") has gone unanswered so it's time to move instances! Does anyone have an easy how to guide?

    #movinginstances

    Welp, just did my first instance move. I am both a furry and a software dev, and I just felt that this instance would fit me better than the one I was on before. Hopefully that didn't just spam everybody with a bunch of notifications or something...

    #movinginstances

    Ya que mastodon.lol va a cerrar en breve, mañana voy a cambiar de instancia. Espero encontraros a todos de nuevo. Mi agradecimiento a @nathan por acogernos todo este tiempo.

    Since mastodon.lol is going to close soon, tomorrow I'm going to change instances. I hope to see you all again. My thanks to @nathan for welcoming us all this time.

    #movinginstances

    Ok here I go, moving instances.

    See you on the other side (I hope)!

    #moving #MovingInstances

    Transferring some of my old posts from mastodon.lol over to this instance, so I don't lose them forever.

    I'm going to be switching over to this instance soon, so please bear with me.

    Thanks for your patience for those of you seeing a whole bunch of my posts on your Home feed.
    #movinginstances #InstanceMigration #ADHDmemes #Raccoon