

Does this get rid of ad-reads as well or is it just the ads served by YouTube?


Does this get rid of ad-reads as well or is it just the ads served by YouTube?


https://blog.cubieserver.de/2020/adding-a-tag-cloud-to-my-hugo-blog/
Fast, secure, bundled how you want and integrates easily with caddy and git runners.
https://docs.gitlab.com/tutorials/hugo/
Also is easily run in a container locally and deployed to a VPS or anywhere you like. Uses native markdown and is still actively developed.


Quadlet is a game changer


Saltstack, nixOS, OpenTofu, OpenBao and gitlab ci.yml to glue it all together on top of proxmox.


The fediverse—a decentralized social web powered by protocols like ActivityPub—is an exciting space to explore. If you’re considering building the next great federated app, connected to platforms like Mastodon, Lemmy, Pixelfed, and more, you might be tempted to implement ActivityPub from scratch. While this approach offers total control, it’s a daunting task due to the complexity of the standards involved.
At its core, ActivityPub relies on ActivityStreams 2.0 vocabulary and JSON-LD syntax. This combination introduces significant complexity:
Understanding ActivityStreams Vocabulary:
You need to model actions and objects (e.g., posts as Note or Article, profiles as Person or Organization, and actions like Create, Follow, Like, Announce) using the precise terms defined in the specification.
JSON-LD Specifics:
JSON-LD has unique rules that complicate direct JSON manipulation:
// No name property
{ "@context": "https://www.w3.org/ns/activitystreams", "type": "Note", "content": "…"}
// Equivalent to:
{ "@context": "https://www.w3.org/ns/activitystreams", "type": "Note", "name": [], "content": "…"}
// Single value
{ "@context": "https://www.w3.org/ns/activitystreams", "type": "Note", "content": "Hello"}
// Equivalent to:
{ "@context": "https://www.w3.org/ns/activitystreams", "type": "Note", "content": ["Hello"]}
// Embedded object
{
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Announce",
"actor": { "type": "Person", "id": "http://sally.example.org/", "name": "Sally" },
"object": { "type": "Arrive", "id": "https://sally.example.com/arrive", /* ... */ }
}
// Equivalent to:
{
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Announce",
"actor": "http://sally.example.org/",
"object": "https://sally.example.com/arrive"
}
Fedify, a TypeScript framework, abstracts the complexity of ActivityPub development. It handles the heavy lifting, allowing you to focus on what makes your app unique.
Fedify simplifies federation logic:
// Handle follow
federation.on(Follow, async (ctx, follow) => {
// Implement follow logic
});
// Handle post activity
federation.on(Create, async (ctx, activity) => {
// Implement post activity logic
});
When running your app:
Web interface available at: http://localhost:8000/
Logs example:
.lhr.life/r/2 | ╰─────────────────┴───────────────────────────────────────╯
Building a federated app with ActivityPub is challenging, but tools like Fedify make the process manageable. By abstracting away the complexity of JSON-LD and ActivityStreams, Fedify allows developers to focus on creating innovative applications for the fediverse.


I just use this


Just because I and my family benefit now, doesn’t mean it’ll stay that way. Also again, I don’t want to support or platform an app that charges others, who are not me, to share their own collection.
If they want to charge for the Plex TV or Plex Movies they host, and leave the app free of cost for a person’s own personal collection to be shared. That’s fine.
I have no confidence that’ll happen though.


Yes, that’s great for me and mine, but not for others. I don’t like to support or platform/promote applications that require a subscription for any access at all.
The problem is Plex aren’t Netflix in my usecase. I’m sharing my library with my friends.
Now if they’d like to charge for the content they host. Great more power to 'em, but I feel icky with a payment or subscription model that charges to deliver my collection to my friends and family.
So, like I said. I’ll likely start migrating to jellyfin and start the conversation with people in how to get the jellyfin app on whatever device they have.


A lot of flatpaks early on wouldn’t survive a major point release upgrade or worst case would hold on to dependencies and the user would end up with an unbootable mess after an upgrade.
I haven’t seen that recently though.
However I regularly run appimages on my fedora silverblue system so take what I say with a grain of salt.


IMPORTANT NOTE FOR CURRENT PLEX PASS HOLDERS: For users who have an active Plex Pass subscription, remote playback will continue to be available to you without interruption from any Plex Media Server, after these changes go into effect. When running your own Plex Media Server as a subscriber, other users to whom you have granted access can also stream from the server (whether local or remote), without ANY additional charge—not even a mobile activation fee. More on that later in this update.
I guess that’s something.
Gonna be a long slow explanation to my family and friends how to switch to jellyfin. Hopefully there’s an app ecosystem there as well. I was lucky to get a lifetime pass way back in 2009 when I did some work for them. It’s very different now.


Plex/jellyfin
If I could do it all over I’d pick jellyfin however plex is on more devices and easier for people to setup…for now.
However you may also be interested in the arr stack. For reasons.
NixOS and OpenTofu are pretty great. Add OpenBao to secure ssh keys and passwords and you can get a job as a sysops if you get good enough.