Lemmy maintainer. Like programming in Rust.

Also posting at https://fedibb.ml/view_profile?u=2

  • 90 Posts
  • 561 Comments
Joined 3Y ago
cake
Cake day: Jan 17, 2020

help-circle
rss

It’s definitely a major feature which requires changes to most parts of the code. So maybe a week or two for the initial implementation (or more if you are unfamiliar with the stack). I don’t think these multilemmys would have to federate at all, so you don’t have to know anything about Activitypub.


Definitely. lemmy.ml previously had like one new user per day, now its a few dozen per day.



Dessalines and I are busy with other things, so we wont be able to work on this anytime soon. But contributions are always welcome :)


You can see it here by enabling only the “blocked” checkbox: https://lemmymap.feddit.de/


Make sure to checkout a tag like 0.17.2 in both repos. We are currently removing websocket support, so its already gone from the backend. In the frontend this is not finished yet.



There are a few other big instances which are not listed because they don’t federate. However none of them can be considered general purpose. I hope this migration wave will lead to new instances being created.

However lemmy.ml also used to be more general purpose, until it focused more on specific topics that the users care about. So maybe it’s just the way Lemmy works that general purpose instances get more topic specific over time.


Its too much in English and too many people from United States.




Fact check me if I’m wrong but I heard that 3 or more nuclear ICBMs hitting Earth at the same time could literally pull us off balance and we could all freeze or burn to death in seconds.

There were already over 2400 tests of nuclear weapons. A few more won’t make any difference.

https://en.wikipedia.org/wiki/List_of_nuclear_weapons_tests


100 houses with huge private gardens. If you get rid of the private gardens, it leaves lots of space for nature and common spaces.


Because we don’t have millions of usd in venture capital funding. Just donations and volunteer work.



most adults know that second hand bikes are routinely stolen and resold for cash, and buying one without clear provenance is a risky endeavor,

If police come after you because you bought a used bike, you already live in a police state. Most of the world isn’t like that.


Users can signup and create communities (blogs). These are automatically set to “only mods can post” by the frontend. This way there can be multiple blogs per user. There are already Writefreely and Plume which work more or less like that afaik.


I was thinking of a frontend to turn Lemmy into a blogging software. I think the backend has all the required functionality. An image gallery could also be good, like scrolller.com.


Communities are completely independent from one another, even if they happen to share the same name. So if you are banned from community A, you can still post in community B. Another matter are instance bans, if you are banned from an instance then none of your posts will be visible there, or in any of its communities.

Also its called football.


Vielleicht ist es auch andersrum, und es kommen so viele zu Mastodon weil es am meisten erklärt wird immer wenn es ums Fediverse geht. Ich denke die meisten kennen Mastodon schon, aber andere Fediverse-Plattformen sind noch eher unbekannt.


Lemmy requires a moderator for communities, which is the user who initially created the group. If it were created automatically that would leave the group unmoderated. It wouldnt even be possible to edit the description or upload an avatar, let alone ban trolls. So this seems like a bad idea.


It would be possible to implement that (Mastodon has it), but there are no current plans to implement it in Lemmy. After all its easy to create a new account.




You can definitely open issues in the Lemmy repo if there are any problems federation with other platforms. To publish the results of your testing you can also simply make a post in !fediverse@lemmy.ml or !lemmy@lemmy.ml. Doing this will be really helpful to make federation better.


What is this Snort and who is using it? Never heard of Meraki either. Anyway people who are affected by that can just sign up on another instance. And changing domains is not possible with federation.


Its the same for posts or comments, you need to paste the url in the search bar of your instance. For this you should copy the url from the colorful fedilink icon.


It sounds like you might be interested to host a new Lemmy instance. Right now the number of instances is still limited, and most of them cover niche topics. So it would definitely be good to have a Lemmy instance that is more mainstream. Hosting an instance requires some technical knowledge, but you can always ask for help in /c/lemmy_support or find someone else to take care of that aspect.


Creating a community on an existing instance is less effort. However it means that the instance admins have full control over your community, and you have to follow their rules. There is also no way to automatically migrate a community to another instance. Having your own instance gives you full control over the rules/moderation, and also lets you apply custom themes or change instance configuration (eg signup mode).


Thats not really how federation works. If you want Mastodon to render the data differently, you have to ask the Mastodon devs.


You can create a Lemmy account. If you are talking about Mastodon, you need to open an issue in their repo.



Thats not currently possible, you can open an issue. Or implement a bot which removes non-text posts automatically.


In that case you can contact instance admins to remove the mod.


I dont think I found anything useful back then. So you can fill in the issue template and post it here, then someone can copy it to Github.


That depends entirely on the community where the post was made. If the community is on lemmy.ml, then the deletion federates to all other instances (including yours I think). Otherwise, if a lemmy.ml admin deletes a post in a remote community, that action isnt federated at all. At least thats how it should work, might be worth testing to confirm.


Its not so difficult to implement functionality that remote content can be fetched automatically on demand like you describe. It just takes a certain amount of work, and so far we are busy with other things. These things take time when there are only two developers funded with donations, and not some startup with millions in venture capital.


You can also fetch comments by pasting the url from the colorful fedilink icon into the search. For example https://feddit.it/comment/63117.


You should open an issue in that apps repository.



The difference is, the moderators moderation action will federate to other instances, but the instance admins will not.

Unless the admin and community are on the same instance, then admin actions will federate. Not so easy to explain…



Welcome Reddit refugees!
We are happy to see that many of you are exploring Lemmy after Reddit announced changes to its API policy. I maintain this project alongside [@dessalines@lemmy.ml](https://lemmy.ml/u/dessalines). Lemmy is similar to Reddit in many ways, but there is also a major difference: Its not only a single website, but consists of many different websites which are interconnected through federation. This is achieved with the ActivityPub protocol which is also used by Mastodon. It means that you can sign up on any Lemmy instance to interact with users and communities on other instances. The project website has a [list of instances](https://join-lemmy.org/instances) which all have their own rules and administrators. We recommend that you sign up on one of them, to avoid overt centralization on lemmy.ml. Another difference compared to Reddit is that Lemmy is open source, and not funded by any company. For this reason it relies on volunteer work to make the project better, whether it's programming, design, documentation, translating, reporting issues or others. See the [contributing guide](https://join-lemmy.org/docs/en/contributing/contributing.html) to get started. You can also [donate](https://join-lemmy.org/donate) to support development. We also recommend that you read the [documentation](https://join-lemmy.org/docs/en/index.html). It explains how Lemmy works and how to setup your own Lemmy instance. Running an instance gives you full control over the rules and moderation, and prevents us developers from having any influence. Especially large communities that want to use Lemmy should host their own instance, because existing Lemmy instances would easily be overwhelmed by a large number of new users. Enjoy your time here! If you have any questions, feel free to ask below or in the [Matrix chat](https://matrix.to/#/#lemmy-space:matrix.org).
fedilink



What should be added to Lemmy documentation?
My current task is to improve the Lemmy documentation, particularly to explain things better for people who are new to Lemmy and the Fediverse. For this I would like to know if there are any things that were unclear when you first joined (or even still unclear now). To give you some idea, these are the pages which I plan to write for the first section, with average users in mind: - Getting started (choose an instance, register, follow, setup profile, start posting) - What is federation - Moderation - Censorship resistance - Votes and ranking - Media (Markdown, images, links) - Other features (theming, language tags, ...) Besides this I also plan to improve other parts of the documentation, to add things like documentation for the HTTP API (currently only exists for websocket), a guide to run Lemmy with TOR, and explanation of community/site options. Is there anything else where documentation is missing or requires clarification? By the way, just like other parts of Lemmy the documentation is [open source](https://github.com/LemmyNet/lemmy-docs), and you are welcome to open pull requests with improvements.
fedilink

Announcing crate activitypub-federation 0.4.0: Major rewrite with improvements to usability and documentation
I want to announce a new version of the activitypub-federation crate. Over the last weeks I worked on major improvements to the usability and documentation. It now includes an extensive guide on getting started to implement federation from scratch, and also an example project which can directly be deployed to a server and federate with projects like Mastodon. The library takes care of basic functionality like HTTP Signatures, activity sending, and fetching data from other servers. Application developers can focus on the main logic, and treat federation as another form of API. There is no restriction to the content being federated: you can implement a microblogging platform, link aggregator, video hosting site or any other type of social media. The goal is to encapsulate all basic functionality, so that developers can easily implement federation without any prior knowledge. Using this library can help to share core Activitypub logic between different projects, so that the same code doesn’t have to be implemented and maintained separately by each project. This way improvements can benefit everyone. It also encourages the use of effective patterns to make Rust and Activitypub work together. All of this has been proven to work in Lemmy which uses this library and is the biggest Activitypub project written in Rust. https://docs.rs/activitypub_federation
fedilink

Announcing crate activitypub-federation 0.4.0: Major rewrite with improvements to usability and documentation
I want to announce a new version of the activitypub-federation crate. Over the last weeks I worked on major improvements to the usability and documentation. It now includes an extensive guide on getting started to implement federation from scratch, and also an example project which can directly be deployed to a server and federate with projects like Mastodon. The library takes care of basic functionality like HTTP Signatures, activity sending, and fetching data from other servers. Application developers can focus on the main logic, and treat federation as another form of API. There is no restriction to the content being federated: you can implement a microblogging platform, link aggregator, video hosting site or any other type of social media. The goal is to encapsulate all basic functionality, so that developers can easily implement federation without any prior knowledge. Using this library can help to share core Activitypub logic between different projects, so that the same code doesn’t have to be implemented and maintained separately by each project. This way improvements can benefit everyone. It also encourages the use of effective patterns to make Rust and Activitypub work together. All of this has been proven to work in Lemmy which uses this library and is the biggest Activitypub project written in Rust. https://docs.rs/activitypub_federation
fedilink







This standard document explains how group federation works in Lemmy and other projects. It can be useful to developers who want to implement a similar federation model.
fedilink


Should Mastodon users be able to create threads on Lemmy?
There have been some requests to make it possible for Mastodon users to create threads on Lemmy. At the moment this is not possible because Mastodon cant set the title field which is mandatory in Lemmy. The same problem affects other projects like Pleroma or Friendica (where title is optional). It is unlikely that Mastodon would make any change in this regard, so a workaround in Lemmy would be necessary. I implemented such a workaround which makes the title optional when receiving a federated post, and uses the first line of the content instead. This workaround could also be made configurable per instance or per community. But to be honest I am not sure the workaround is a good idea in general, as it could result in bad titles, and generally more low-quality posts. Thats why I want to know what the community thinks about it.
fedilink

Request for build servers
We are looking for someone who would be willing to provide a build server for Lemmy's continuous integration. This is used to ensure that new changes and pull requests pass all the checks, and that the code is written well. At the moment we are using a small VPS for this purpose (2 vCPU, 2 GB RAM). This works but is quite slow, and can slow down the development process with unnecessary waiting times. For this reason we are looking for a community member with a spare server or computer, who would be willing to provide it as a build server. There are no specific hardware requirements, but the faster the better. The build server has to run 24/7 and run the [Drone Docker Runner](https://docs.drone.io/runner/docker/overview/). The setup is very easy, especially if your machine is already running docker. If you have such a server and are willing to provide it, please comment below with the specs. Additionally we are also looking for an ARM builder, so that we can provide official releases for this platform as well. Note that some Raspberry Pi models seem unable to build Lemmy (our 4GB memory builder failed), so please try if the compilation works on your device. If you can provide an ARM builder, also comment below with the specs.
fedilink



fedibb.ml is open for signup!
Give it a try if you are interested in the project. If you notice any problems, you can [open an issue](https://github.com/LemmyNet/lemmyBB/issues). Contributions are also more than welcome. In a few days I will publish the first release, and make a proper announcement.
fedilink
20

What would be a good name for a lemmyBB flagship instance?
I dont think lemmybb.ml sounds good, so im looking for other suggestions. https://github.com/Nutomic/lemmyBB
fedilink

This is the first time that people insulted me using software which I created
Its a very interesting feeling. On one hand Im proud because Lemmy has come so far. Two years ago there was only one instance dev.lemmy.ml and no federation. On the other hand disappointed, because some people are unable to appreciate how much time and work I put into this project. Its especially ironic that these attacks are coming from people who pretend to represent the working class.
fedilink




Bienvenidos a Lemmy!
Soy programador de este proyecto, juntos con [@dessalines](https://mujico.org/u/dessalines@lemmy.ml). Me alegra que habeís decidido mudaros a esta plataforma, espero que os gusta! Una diferencia fundamental entre Lemmy y Reddit es la federación. Eso significa que puedo comentar aquí en mujico.org directamente desde mi cuenta en lemmy.ml. Igualmente, vosotros podeís interactuar con otras instancias, por ejemplo siguiendo a [@asklemmy@lemmy.ml](https://mujico.org/c/asklemmy@lemmy.ml). Echad un vistazo al sitio web de [join-lemmy](https://join-lemmy.org/instances) para una lista de sitios Lemmy. También podeís interactuar con otras plataformas federadas, cómo [Mastodon](https://joinmastodon.org). Otra diferencia es que Lemmy verdaderamente es un proyecto de código abierto. Podeís seguir el desarrollo en [Github](https://github.com/LemmyNet), informar de problemas, o [traducir la interfaz](https://weblate.join-lemmy.org/). Sí teneís cualquier duda, comentad aquí e intentaré resolverla.
fedilink

New domains for Weblate, Gitea, Drone (updated)
I have just finished migrating the services mentioned above to new domains, and also to hosting on the lemmy.ml server, instead of my personal server. This makes sense because all of them are used almost exclusively for Lemmy development. It will also allow [@dessalines@lemmy.ml](https://lemmy.ml/u/dessalines) to administrate the services in case of problems. The new domains are: Gitea: git.join-lemmy.org Weblate: weblate.join-lemmy.org Drone: drone.join-lemmy.org There are redirects in place, so you will automatically be forwarded from old domains to new ones.
fedilink

I have finished writing instructions for deploying lemmyBB on a production server, which you can follow at the link above. Right now the project is still in a very early stage, nevertheless main funcionality is already working. This includes browsing communities, posts and comments, writing posts/comments and registration/login. Before developing the project further, I would like to get some feedback from users and admins. If you are interested, you can follow the instructions to install lemmyBB on your own server. This setup also installs lemmy-ui, in order to access functionality which is not yet available in lemmyBB (particularly moderation). You can also try out lemmyBB on a test server with this setup, namely [lemmybb.lemmy.ml](https://lemmybb.lemmy.ml/). It runs lemmy-ui at [lemmyui.lemmy.ml](https://lemmyui.lemmy.ml/), which shows the same data in another format, and the same account login works on both domains. Registrations are currently open, but keep in mind that this instance is only meant for testing, until other instances are created. If you notice any bugs or want to request new features, please open an [issue](https://github.com/LemmyNet/lemmyBB/issues) or comment here.
fedilink

LemmyBB, a new frontend based on phpBB
Lemmy is structured in a way that backend (database, api, federation etc) and frontend (html, css, javascript) are completely separate. This makes it possible to create other frontends which can take the place of lemmy-ui. I have long been playing with the thought of having a Lemmy frontend that looks more like a traditional forum. Now I finally found some time to work on this, and get an initial proof of concept working. ![](https://lemmy.ml/pictrs/image/91170cff-8737-4a84-b70d-5e2c4d85bf72.png) ![](https://lemmy.ml/pictrs/image/da0d0bd8-5dcd-4ea8-a3ab-3b8eabf8b85a.png) To reduce the amount of work, the project uses HTML templates and CSS themes from [phpBB](https://www.phpbb.com/), which are open source under GPLv2. This also has the advantage that many preexisting phpBB themes can be used for lemmyBB. It is written in Rust, because it allows for tight integration with the Lemmy API, and is generally a great language for webservers. For now the funcionality is very basic, but nonetheless its already usable. You can: - browse the local post listing - browse comments - login and logout - create new posts and comments To give it a try, run the following commands on your local computer, replacing lemmy.ml with your own instance: ``` git clone https://github.com/Nutomic/lemmyBB.git LEMMY_INTERNAL_HOST=https://lemmy.ml cargo run ``` If there is any specific feature that you would like to see added, please [open an issue](https://github.com/Nutomic/lemmyBB/issues). For now there arent any instructions for deploying lemmyBB to a server. If you would like to do that, please open an issue as well. This post was made from lemmyBB.
fedilink

making a test post
hello world
fedilink

Presenting Activitypub-Rust crate
[Activitypub](https://www.w3.org/TR/activitypub/) is decentralized social networking protocol recommended by the W3C. It provides a client to server API for creating, updating and deleting content, as well as a federated server to server API for delivering notifications and content. As part of the work on [Lemmy](https://join-lemmy.org/), we have implemented some high-level abstractions for handling the server-to-server protocol in Rust. These abstractions are now available as a standalone library. The main features are: - Data structures for federation are defined by the user, not the library. This gives you maximal flexibility, and lets you accept only messages which your code can handle. Others are rejected automatically during deserialization. - ObjectId type, wraps the id url and allows for type safe fetching of objects, both from database and HTTP - Queue for activity sending, handles HTTP signatures, retry with exponential backoff, all in background workers - Inbox for receiving activities, verifies HTTP signatures, performs other basic checks and helps with routing - Generic error type (unfortunately this was necessary) - various helpers for verification, (de)serialization, context etc Documentation is currently lacking. If you want to get started with the library, best look at the example. The code has already been used in production as part of Lemmy for a long time, without any notable problems. However, ergonomics are lacking and need to be improved. There are also many additional features which would be worth implementing. See the project readme for details. Contributions and suggestions are very much welcome! You can find the project here: [https://github.com/LemmyNet/activitypub-federation-rust](https://github.com/LemmyNet/activitypub-federation-rust) [https://crates.io/crates/activitypub-federation](https://crates.io/crates/activitypub-federation)
fedilink


Free hosting for liberal/mainstream political instance
Lemmy.ml has long had some political conflict among the userbase, especially in communities like worldnews. This is because the instance is composed of both leftists (anarchist/communist) and liberals (those who agree with the mainstream political views in western countries). Additionally, the instance admins all belong to the former group. Recently we made an announcement offering [free Lemmy instance hosting](https://join-lemmy.org/news/2022-03-17_-_Free_Lemmy_instance_hosting) for one year, for non-politics instances. We are hereby making a similar offer to host a liberal or mainstream political instance, which can accomodate those who are unhappy with lemmy.ml moderation. This has many advantages. Instance admins have full power to set the rules, block federated instances (like lemmygrad.ml), or remove unwanted content. An administration team that is closer aligned politically would certainly be an improvement for some of the users here. So if you are interested to host such an instance, send an email to contact@join-lemmy.org some relevant details about yourself. You will also have to buy a domain. We will only host one such instance, so if multiple people are interested, you should coordinate among yourselves. As in the original offer, the hosting will be limited to one year. On a side note, we would also like to help with the creation of a general-purpose instance that is less focused on politics than most of the existing instances. This is fully within the terms of the initial "free instance hosting" announcement, so if you are interested, send us an email!
fedilink



Lemmy 0.15.4 released
We just released a new patch which fixes an important federation problem. Due to a mistake in the code, activities were only sent out once, even if delivery failed (e.g. because the target instance is down, or a temporary connection issue). Instance admins should definitely upgrade. This problem is fixed, so that failed deliveries are retried up to 9 times, with exponentionally increasing intervals. The only limitation now is that it will not keep retrying after Lemmy is restarted, but that case should be less common. [PR link](https://github.com/LemmyNet/lemmy/pull/2109)
fedilink