- You host it yourself
- You can get a cool domain name
- It’s pretty low maintenance
DevOps as a profession and software development for fun. Admin of lemmy.nrd.li and akkoma.nrd.li.
Filibuster vigilantly.
I would still go with one that isn’t one of the biggest. My general advice is to find one that fits the vibe you’re going for, communities you’re interested in (e.g. some are focused on art or cybersecurity, etc), or is somehow tied to your locality. It shouldn’t matter that much, though some servers will be a little more (or less) strict with things like federation, content warnings, alt text, etc. Usually the server will have some info telling you some of this, and their admin should be linked and likely has a post or two pinned to their profile explaining some of this as well.
I am partial to kind.social, though have opted to run my own instead of joining up anywhere.
No, these issues are pretty much by-design. In ActivityPub IDs are inherently tied to the domain on which they were created. Based on the nature of federation it is safe to assume someone somewhere will still go looking for that thing via the outdated URL.
If you’re taking that approach make sure you shut down the stack before you copy the data over so everything gets copied over consistently (e.g. the DB isn’t in the middle of a write), and yes it should pretty much be that easy.
Nope, not from a DNS level. All the posts you are reading are cached by whatever instance your account is on. Basically the only thing served from the remote instance is full-size media uploaded to that instance. Even thumbnails are served from whatever instance you use. Mastodon/Akkoma/etc can be set up to even proxy full-size media for users, which is a feature I imagine will eventually make its way into Lemmy. Your best bet at the moment would be to find an instance that defederates those you don’t want to see (or run your own and do so yourself). I know “blocking” an instance is an often-requested feature, so that may end up a feature in Lemmy itself at some point.
As someone who hosts a bunch of other stuff already including my own email (because I am a madman), does stuff like this as a job, has developer experience, etc. it was simple.
Figuring each of these things out (and how they all work together) for the first time was a hell of a journey.
Asklemmy isn’t really a place to ask about lemmy, it’s for asking general questions to users of lemmy, jut like you wouldn’t ask for Reddit support in /r/askreddit.
Regardless, this question gets asked and talked about in the !selfhosted@lemmy.world community fairly often, here is a (slightly edited) comment I made a while back.
You will need a domain name, you can buy one from a registrar such as hover or namecheap (for the love of all that you consider holy do not use godaddy).
You will need a way to expose the server that you set up via port forwarding or similar on your network.
You will need to set up DNS records on the domain you buy to point to your home IP. You may want to figure out a different way to avoid just handing that information out, cloudflare can help with that. You will want to make sure the DNS records get automatically updated if your IP address changes, which is not uncommon for residential ISPs.
You will need to figure out how to get an SSL certificate, Let’s Encrypt will issue them for free, cloudflare gives you one if you use them as a reverse proxy.
Some of this would likely be easier to do on a cloud provider like digitalocean or linode and could be done reasonably cheaply.
These are all common things for setting up any website, so lemmy docs won’t cover them. In addition to those (this answer was just addressing “how to get a URL”) you will need to install and configure lemmy, lemmy-ui, postgres, and pictrs somewhere (the join-lemmy docs cover this well).
If you want your instance to send emails you will have to figure out how you want to do that (too many options to cover in this answer).
When 0.18.1 gets released if you want captcha you’ll probably have to figure out an mCaptcha provider or set that up yourself.
Not to mention thinking about backups, high availability, etc, etc.
As far as hardware to host on you could get away with like ~$10/mo on most any cloud provider, run it on a Mini-PC in your closet, etc. My instance uses 1-2 GB of RAM, ~13GB of disk (and growing a few hundred MB per day), and ~30% of a CPU (an old i5).
Best of luck.
Yeah, I think how most Lemmy clients (including the default web UI) handle display name is a real mistake.
Posts will make their way over when someone interacts with it (comments/votes on it). I think old comments may make their way over under the same conditions. Old votes will not make their way over.
You can search for a post or comment to force your instance to load it (copy the federation link, the rainbow-web-looking icon) just like you would do for communities.
Not sure if it’s relevant as pretending to be form Germany may be the point here, but “Tor clients” aren’t “from” anywhere you can know, that’s just where the exit node is located.
They have been tuning the algorithm for that in the past releases, so may be related to that. Also, there is/was a bug where if you don’t restart lemmy (on the server) regularly stuff will get stuck at the top of hot and/or active.
I’d be glad to help. The more people actually run their own mail the harder it gets for the big players to shut us out, haha.
Yeah… they really shouldn’t be shipping that mail relay at all IMO, just leads to confusion.
I do run my own mail and assuming it’s reasonably low volume would be more than happy to get you set up to use my mailserver instead of relying on something like sendgrid or postmark.
Alternatively if you want some help getting your own set up in a dockerized way I run my mail using docker-mailserver and if only set up for outgoing mail it is pretty easy to run, though you may will run into deliverability issues…
It looks like you aren’t signing your mail with DKIM, don’t have SPF set up right, don’t have a DMARC policy, and don’t have RcRDNS, all of which basically any mail provider will require from you to even consider accepting your mail. Basically without all of that literally anyone can pretend to be whatever.com
and send email from it.
What mail provider are you using?
I got an email when I signed up as a test. It is most likely spam filters and/or improper email server setup. I will try to help debug in a bit.
With the specific concern/idea you are talking about, I have suggested the use of a system like (or just ripping-off wholesale) the Mastodon Content Warning system in a discussion where someone was advocating a “porn” tag in addition to the NSFW one, which I thought was not going to be flexible enough.
First, it’s worth noting that ActivityPub is built on ActivityStreams which is in turn built on ActivityVocabulary. It is necessary to read all of these to have a full understanding of what the stuff in AP actually means. It is also worth reading up on LDN and JSON-LD as those are also used in the spec.
I think you are right in AP being a bit more oriented toward social media in the vein of twitter or facebook and less like reddit, but really a lot of it comes down to how an AP implementing server interprets the objects it receives. I’m not sure if anywhere near this level of customization would be possible if everything spoke pure AP (which does have a client-server interface, not just a server-server federation interface) rather than your clients interacting with bespoke “lemmy” or “mastodon” or whatever APIs.
As far as lemmy goes I think they may have extended the objects a little, as there is a lemmy NS included in results, which is what most implementations including big ones like Mastodon do to introduce new fields (such as content warnings in the case of Mastodon) to things like a Note. Lemmy adds info like postingRestrictedToMods
, matrixUserId
, and moderators
.
As far as objects:
audience
of the community and an attributedTo
of your user (to
the community and special public endpoint).inReplyTo
its parent (post or comment), to the special public endpoint and CCing the author of the parent and the community.As far as actions, I am less sure because it is less easy to inspect without reading the lemmy code or setting up something to get federated to, but AFAICT:
Every time you visit any website someone will know your IP address. Unless very specific measues are taken that “someone” will be whoever operates that website.
Lemmy has features (I think they are optional) that will tell you that you viewed a post and how many new comments a post has from the last time you viewed it, that necessarily requires tracking. I cannot say whether turning this feature off disables the tracking or just doesn’t show you that information without digging into the code, this is only local to your instance.
There is also likely to be some level of logging at the server and any reverse proxy layers that could, with effort, be used to figure out what you looked at with reasonable accuracy. Again, this is only on your instance. Some instances may not create/store logs, but it is usually important to do so to troubleshoot if things go wrong, especially with as immature a software project Lemmy is.
Any time you visit a website you are putting a large amount of trust in the site operator, your ISP, your DNS provider, etc. if state actors are in your threat model.
If you run your own instance you have better condom of this, and the only thing potentially externally observable is that a post has been sent to your server. Also, you should run your own server anyway.
Seems like most of the Tesla shills haven’t really made it over to the fediverse yet, so that’s nice.