Pleroma vs Mastodon vs Misskey
tallarico's really outdone himself this time
They aren't forced to do anything. Manifest v3 is just a part of the WebExtensions API (which is not a standard and is really just "whatever Chrome does except we find/replace'd the word chrome to browser") which both Safari and Firefox chose to implement in order to make porting of Chrome extensions easier.
Before that, Firefox had a much more powerful extension system that allowed extensions quite a lot of access to browser internals, but that turned out to be a maintenance nightmare so they walled those APIs off (not a coincidence that Firefox started getting massive performance improvements after that, and extensions stopped breaking every other release) and decided to go the WebExtensions route. I have no clue what Safari was up to but I think they implemented it after.
If they don't implement Manifest v3, extensions that want to work across multiple browsers need to support both the older Manifest v2 and the later Manifest v3, which would be a burden not many extension authors would want to bother with, which would make them just say "yeah we're not supporting anything outside Chrome". Firefox avoids this problem by extending the v3 API to allow for the functionality necessary for powerful ad blocking Google removed in v3 (webRequestBlocking) while also implementing the new thing (declarativeNetRequest) side by side, so extensions that want to take advantage of the powerful features on Firefox can do so, while Chrome extensions that are fine with the less powerful alternative can still be ported over relatively easily.
Firefox does have it's fair share of extensions on top of the WebExtension API already (sidebar support for one), so adding one more isn't too big of a deal.
I think the general consensus is that it's some automated LLM blogspam tool ran with not too much oversight.
I'm just saying the "steamlib proxy" concept you mentioned is not only possible but has at least one implementation. The fact that Wine isn't true isolation doesn't really change anything (maybe other than the exact details of the underlying IPC channel, which could use some kind of optimized shared memory magic) unless I'm misunderstanding something.
Some games will probably actually rely on Steam, like for achievements or something. For those…If there are a substantial number of Mac games that won’t work in a 64-bit environment, I am wondering if it is possible to make a “steamlib proxy” – basically, have a 32-Mac VM, run the game in a VM, but have Steam running in a 64-bit host environment, and just relay calls to a process launched under the host environment that uses the host steamlib to talk to Steam. Valve presumably isn’t gonna set that up as a supported environment, but I wonder if that might be a viable open-source project.
I think Proton has something of that nature, so games running inside Wine talk to the native Linux Steam binary.
ActivityPub does not govern how user handles work. All AP actors are defined by their IDs (which in Lemmy's case happens to be the URL their profile is hosted in, which is a mistake as you cannot change your username without breaking federation, but at least Lemmy isn't alone, both Mastodon and I think *oma family of software do the same thing)
AFAIK the @username@instance convention is Webfinger's doing, and (to the best of my very incomplete knowledge) the convention of "preferredUsername @ the hostname of the object ID" is a hack Mastodon pulled that got adopted as a de-facto standard (as is quite a lot of other things in AP).
You also can't reuse a domain between software installations (some exceptions apply when migrating between software of the same "family tree", e.g. migrating from a mastodon instance to glitch, or migrating between misskey forks) due to how federation works. Hell, reinstalling the same exact software can break federation if you wiped your database in the meanwhile.
Some software offer a "split domain" option where the software itself is installed in a subdomain like mastodon.example.com but with user handles on a separate domain (usually the root domain, like @example.com) but I am not too sure on the reusability of that, and it's not an easy thing to implement (Lemmy won't deal with that correctly and will always use the full domain for anyone on a split domain instance). There are also a handful of software (like Takahe) which let you "bring your own domain" so to speak.
activitypub isn't something you can abstract into a library in a clean way in my experience. the best attempt here seems to be go-fed. most projects i know of implement it in their own way, specialized to the kind of platform they're planning to build.
misskey and it's forks (firefish, iceshrimp, sharkey, and the approx. million others) use a node/ts backend with a vue/ts frontend. peertube also uses node to the best of my knowledge.
that said:
- misskey itself is developed almost entirely in japanese so you probably won't be able to help out too much.
- firefish in my experience is doing a LOT of questionable design decisions (hello scylladb migration!) so i'm not sure if it's in a good shape right now
- iceshrimp is forked off from firefish and seems to be aiming to fix things up as opposed to introduce new features (their matrix chat has been really interesting to lurk in especially when it comes to database performance talk)
- on the other hand, sharkey follows the latest versions of misskey and has been adding a fair amount of useful features on top of it (post imports that actually work without sending notifications to everyone, message editing which misskey itself found too hard to do, etc.)
i can see why you may not want this but have you potentially considered rehosting/attaching any images from image posts in the bot's replies? as lemmy doesn't federate those properly just yet (https://github.com/LemmyNet/lemmy/pull/4035/commits/ecd8e3b11b5292bad73d48c2fbf11db00bc432c2 will fix it for posts originating in lemmy AFAIK) it'd make the bot quite a lot more useful and things like memes do tend to get boosted a lot more widely than links, though i can definitely see why it may feel a bit like freebooting (so, it could perhaps be a per-community option for non-OC-heavy communities?)
interesting idea
one thing I like from kbin is that because it does this natively I can follow a kbin magazine from an empty unused account and create a misskey antenna pointed at the hashtags in question (with replies hidden) which allows me to subscribe to kbin communities without getting spammed with boosts of replies, so I may end up making use of this depending on how widely it gets adopted
that said I'm still not convinced that increasing lemmys reach outside the threadiverse makes sense just yet while its federation is so buggy, case in point: https://brain.d.on-t.work/notes/9md8phwlkzlj0xe9 (edits on posts are repeatedly re-boosted, which likely wasn't noticed as mastodon only ever allows one boost from an actor)
(or the fact that link posts don't federate to misskey and forks at all, but that's due to a bug in misskey)
TLDR of linked gist: wayland is not X therefore it is bad. end of.
Wayland breaks Xclip: As you said it yourself, Xclip is an X11 application, so it doesn’t work on Wayland. Of course it wouldn’t work on Wayland. With Wayland, we’re trying to prevent what happened with Xorg from happening again, or am I wrong?
also, https://github.com/bugaevc/wl-clipboard. perhaps all OP (of gist) needs is a simple shim that can convert calls to xclip to wl-copy/paste? that doesn't seem too hard to make compared to keeping X.org alive I'd say (perhaps they should try making it if it's that much of a problem)
Wayland breaks screensavers: Yeah, that seems to be the case.
from the dev of xscreensaver at https://www.jwz.org/blog/2023/09/wayland-and-screen-savers/ :
[...] Adding screen savers to Wayland is not simply a matter of "port the XScreenSaver daemon", because under the Wayland model, screen blanking and locking should not be a third-party user-space app; much of the logic must be embedded into the display manager itself. This is a good thing! It is a better model than what we have under X11. [...]
[...] Under X11, you run XScreenSaver, which is a user-space program that tries really hard to keep the screen locked and never crash. It is very good at this, but that it needs to try so hard in the first place is a fundamental design flaw of X11. [...]
other people can comment on the parts they know about, these are two i know of off the top of my head
i wonder if the maven people knew what they were doing when they came up with pom.xml as the filename for their metadata
i tried but i can't lookup your comment because your instance is returning html instead of activitypub data
also remember just like how lemmy has it's kbin, mastodon has it's interoperable alternatives.
i bet a fair bit of the complaints i hear from people on lemmy (low character count, wanting to follow topics instead of people) would be solved by trying out a misskey fork such as firefish, iceshrimp or sharkey.
i don't think there's any instance out there with a char count lower than 1000, and antennas are really good (why limit youself to following a single hashtag when you can follow any number of arbitrary keywords?) if you're in a well federated instance (provided you're ok with them not feeding into your home feed and them not being retroactive (so after you set up an antenna you'll need to wait for new posts to filter in))
they aren't as polished as mastodon since mastodon kinda ate everyone's lunch in terms of developer attention (and upstream misskey is an almost one-man-show mess developed entirely in japanese which is why everyone prefers to fork instead of collaborating), but they've been getting really good.
just avoid flagship instances (> 1k active users) for the time being. scaling is still something not many of them have solved just yet
i was half considering boosting it outside lemmy out of context tbf
the rule of thumb here is that you should really just use one browser ad blocker. having multiple will conflict especially regarding anti-adblocker prevention (as uBO will try to hide itself and redirect to a "defused" version of an ad script and whatever other ad blocker you have will think that's an ad and block it)
not entirely sure how well DNS ad blockers fit into this. there is a chance they could make your ad blocking detectable by blocking a request uBO intentionally lets through (possibly in a modified state), but as far as i'm aware there haven't been too many issues stemming from combining DNS blockers with uBO and the likes.
one of the misskey forks. imo "vanilla" misskey is lacking a fair bit of essential stuff (post editing being a giant one)
the most interesting ones to watch for now are iceshrimp (misskey v12 hardfork based on an early version of firefish, mainly focused on backend tech work compared to new features) and sharkey (misskey ”v13” softfork, aimed at qol changes and other feature work while keeping up to date with misskey itself)
akkoma is alright if you need something light on resources but I personally can't get used to it's interface
and mastodon is just... too bland in comparison to both