this post was submitted on 12 Jun 2023
53 points (96.5% liked)

Selfhosted

40415 readers
365 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

Curious if anyone is working on the codebase for Lemmy. I'm sure we all see a few places where it could use some love.

The main repos are:

Personally, I've been working on a few small things for docs.

PS: Here's a pretty easy ticket to jump on if you want to get started :) https://github.com/LemmyNet/lemmy-ui/issues/1214

There is also a dev chat in their Matrix space: https://matrix.to/#/#lemmy-space:matrix.org

top 35 comments
sorted by: hot top controversial new old
[–] [email protected] 15 points 1 year ago (1 children)

I created a proposal with UI design changes. Feel free to post a comment with your feedback: https://github.com/LemmyNet/lemmy-ui/issues/1183

More things would need to be changed to make the app more readable, but I didn't want to propose too many changes at once. So this is just for the main page with default theme.

screenshot

[–] [email protected] 10 points 1 year ago (1 children)

That's pretty nice! I think that the theme could def use a little love. I think the devs said at one point that they want to make it so any bootstrap theme could be imported but for now it's just the two themes.

Are you a designer?

[–] [email protected] 4 points 1 year ago (1 children)

Thanks! I'm a front-end developer :)

[–] [email protected] 6 points 1 year ago (2 children)

Maybe you could make your changes as a userscript first and let people play around with it? I'd def test it out :)

Fun fact: there used to be many more lemmy themes that were pretty cool but they got ripped out as too hard to maintain a while ago.

[–] [email protected] 3 points 1 year ago (1 children)

That sounds interesting! I wanted to be able to use it myself in case devs weren't interested in changing the UI. Can you tell me how it works and how to do that?

[–] [email protected] 5 points 1 year ago (1 children)

You add a browser extension that lets you write code that runs on any page you want. This video should be a decent explainer: https://www.youtube.com/watch?v=6DmQ_V9ZRlk

[–] [email protected] 3 points 1 year ago (1 children)

Instructions unclear, I wrote a Firefox addon instead :D https://addons.mozilla.org/firefox/addon/lemmy-modern-ui-theme

But you should be able to take the script and easily turn it into a userscript: https://github.com/pkrasicki/lemmy-modern-ui-theme-addon

It works with both light and dark theme, but sometimes the detection fails for me and applies wrong styles. I hope those hacks will last for some time though so that we could have a modern UI. I would change more stuff, but some things are not possible.

[–] [email protected] 1 points 1 year ago (1 children)

Very impressive, I dig it :)

[–] [email protected] 1 points 1 year ago (1 children)

Thanks :). Do you know where to find those older themes? It would be interesting to see how they were implemented.

[–] [email protected] 2 points 1 year ago

That sounds interesting! I wanted to be able to use it myself in case devs weren't interested in changing the UI. Can you tell me how it works and how to do that?

[–] Echolot 15 points 1 year ago

I added a mark as read button to the posts but now patiently waiting till the WebSockets -> REST API transition is complete so it can get merged.

The front end needs a lot of work… Every bit is appreciated and the maintainers are pretty fast at reviewing and providing feedback which is nice to see.

[–] [email protected] 6 points 1 year ago (1 children)

For anyone who isn't a developer: contributing is not just code.

Monetary donations help developers to continue their work, supporting them in their journey much as the brave Samwise supported Frodo. They ensure the continuity of the project, allow developers to dedicate more of their time to it, and help them acquire resources they may need.

Yet not all of us are blessed with the wealth of the Lonely Mountain, and that is entirely acceptable. For in the land of FOSS, gold and silver are not the only treasures that matter. The donation of your time and skills can be as valuable as a chest full of gold.

When you come across a bug, it can be reported, much as Pippin reported his sighting of the Nazgul to Gandalf. Yet remember, respect is key, as it was in all communications among the Fellowship. A bug report, properly done, is a gift to the community, a contribution to the common good. But it should be given with care, with thoroughness, and with the respect due to a fellow traveler on this digital road.

Finally, consider the hobbits who remained in the Shire, who, though they did not journey far, spread tales of courage and bravery, keeping spirits high and ensuring the story was known. If you love a piece of FOSS, speak of it, share it, let others know. In the vast, interconnected realm of the Internet, word-of-mouth travels faster than Shadowfax.

Every contribution, every bit of help, is more than welcome. It is cherished. It is celebrated. For in the realm of FOSS, as in Middle Earth, we are all on this journey together.

Naturally, if you are gifted with the skills of a dwarf smith, able to delve into the deep code and fix bugs or add features, your contribution will be celebrated like Gimli’s axes in the Battle of Helm’s Deep. A good pull request is a bard’s song that echoes across the halls of digital Middle Earth, a melody that can inspire others and boost morale.

[–] [email protected] 2 points 1 year ago (2 children)

@dannym @rayb I used to write documentation for a living so I am open to assist with writing documents when needed :)

[–] [email protected] 1 points 1 year ago

If you're willing, you can just checkout the site here and make suggestions of what you see could be improved :)

site: https://join-lemmy.org/docs/en/index.html

code of site: https://github.com/LemmyNet/lemmy-docs

[–] [email protected] 1 points 1 year ago

Indeed! Writing documentation is also extremely helpful; it's like Bilbo penning Middle Earth's lore, guiding users through the software's labyrinth. Your efforts, whether clarifying existing documents or spreading knowledge, light our collective journey like the Elves' light of Eärendil. Each addition or improvement is celebrated; it's our shared saga.

[–] [email protected] 4 points 1 year ago

I changed some stuff on the Lemmy-Ansible documentation for clarity, but I’m garbage at coding anything useful. Getting my head around rust or typescript is a real challenge from square zero.

[–] [email protected] 3 points 1 year ago (1 children)

I'm interested, but I don't know Rust and haven't done frontend work in years. Might be able to do some work around scalability and contribute to a Kubernetes deployment guide (and/or Helm chart).

[–] [email protected] 3 points 1 year ago

I honestly had a blast learning Rust. Haven't gotten a chance to do much with the language but it definitely shifted the way I think about coding in general.

[–] [email protected] 2 points 1 year ago (1 children)

I thought about writing a few userscripts to fix some minor things I was dealing with... However, I really should checkout the source for lemmy-ui first. Maybe I could help out there.

As for the backend.. it's Rust all the way down right?

[–] [email protected] 2 points 1 year ago (1 children)

userscripts are great for proof of concept to show off and let people test it. However, can userscripts work across so many domains that lemmy instances are on? Maybe a list of domains has to be maintained in the userscript?

Any particular things you thought you might fix with userscripts?

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago)

Good points there.

Maybe this has some issues I hadnt thought about yet. I was thinking, in comments, certain Lemmy links should be rewritten so you load them on your own instance and can actually interact.

Like if a link is '[email protected]', rewrite it to 'usersinstance.tld/c/[email protected]' However, I guess if a community hasn't been discovered by that instance yet it would 404.

Obviously I haven't looked at the source or even activity pub spec so just thinking blindly.

[–] [email protected] 2 points 1 year ago (1 children)

I’ll try to contribute to the backend! I’ve always found it daunting, because often the issues are taken up.

[–] [email protected] 1 points 1 year ago (1 children)

Are you a rust dev? The backend is all rust and I think there are many pretty easy open issues to checkout.

One thing (not sure if there is an issue right now) that is a problem on the backend is that it doesn't send a response if you put the wrong username+password so the frontend just stays loading forever. However, maybe this will be fixed automatically when they stop using websocks (soon)

[–] [email protected] 2 points 1 year ago (1 children)

I've mostly done low level work with it at school but I've been wanting to learn web dev with it :) Might pick up one of the easy issues!

[–] [email protected] 1 points 1 year ago

This might be a easy first issue to try: https://github.com/LemmyNet/lemmy/issues/707

Probably not really coding but would get you familiar with how the system works :)

[–] [email protected] 2 points 1 year ago (1 children)

My wife and I are living full time in a campervan as we travel. I have a couple pi4's, mainly for low-power-consuption reasons. One pi4 is dedicated to Home Assistant, and another one runs our nas.

The Home Assistant pi also runs Grafana, Postgres/TimescaleDB, MQTT broker, and a few other HA addons

Right now, our nas is just a single ssd attached via USB, but that's more than enough right now for the essentials. Eventually the nas will run mergerFS and rclone and automatically back up our data (encrypted) to multiple cloud providers but it's just a starting point

I have a third pi4 running misc software and is kinda my scratch pad, the main thing it does right now is talk to our solar controllers and renogy batteries thru rs485/modbus-rtu using some custom software I wrote in typescript and then publishes that data on the mqtt bus, aggregates it, and then advertises it correctly to get it into Home Assistant and from HA, into grafana

Oh, and I also have a Linksys E8450 running openWRT as our router / ax-wap

[–] [email protected] 10 points 1 year ago (1 children)

Hey friend, I think you fell victim to that bug where you start replying and Lemmy directs you to another topic for some reason!

[–] [email protected] 6 points 1 year ago (2 children)

so I'm not crazy!!! Thanks, I noticed it independently but swore I had commented on the right thing, thanks for pointing it out!

[–] [email protected] 2 points 1 year ago

It’s a bug, it’s happened to me 1-2 times. Not sure the cause.

[–] ShutYourPieHole 1 points 1 year ago (1 children)

I've seen this happening elsewhere. All growing pains.

That said, I am curious as to the thread you were responding. Sounds interesting. =)

[–] [email protected] 3 points 1 year ago (1 children)

here you go! https://lemmy.world/comment/107261

It's a we-need-to-fill-the-content-void discussion thread on [email protected]

i decided to contribute my scribe about my rolling-wifi-machine haha

[–] ShutYourPieHole 1 points 1 year ago

Cheers!

Your comment tweaks my interest as an outdoor person and an engineer. =)

[–] [email protected] 1 points 1 year ago

I tried and it was absolute hell. I used mail-in-a-box and the setup seemed to work but there was a bunch of issues with serving and syncing the e mails. none of the guides helped and in the end i thought if i were to get it working i wouldnt trust it very much. Can't be sure it'll be reliable or if it's gonna be blacklisted because some weird E-Mail thing isnt set fully correctly.

So it's probably possible but I don't think it's worth the hassle

[–] [email protected] 0 points 1 year ago

I ran my own server for many years. There was a learning curve to all the fiddly bits (Postfix Configuration, SPF, DKIM, DMARC, SpamAssassin) required to get the world to see your server as worthy. There's also the problem of finding a "clean" IP that's not been blacklisted by some spam database. And even then, once in a while you end up in a database for who knows what reason. These things often made the email less useful as sometimes I'd end up in people's spam folder.

It was a good experience as I learned a lot. But it was also a constant headache. One I felt I didn't want to keep "learning" that particular thing I just moved to ProtonMail and haven't looked back.

load more comments
view more: next ›