I’m impressed that Lemmy only needs 150 MB RAM and uses virtually no CPU

This seems like an ideal thing to install on an embedded system such as a Raspberry Pi.

Problem: Where are the builds?

In the installation page, you have three options: Docker, Ansible, From Scratch

I’m currently doing the from scratch option since my OS distributor is not a fan of docker or ansible (and neither am I), but the build is taking ~1hr.

Are there no nightly builds with .deb packages?

You are viewing a single thread.
View all comments
0 points
*

Providing binary packages is kind of a futile effort since you’d need one for each distro/version and architecture. I don’t like/use Docker either but it is at least a distro-agnostic format. If you want distro packages, ask your distro maintainers to package it.

Are you compiling it directly on the Pi? If so, try cross-compiling, it’s going to be a lot faster that way. I just cross-compiled the server in about 5 minutes on my machine as a test.

permalink
report
reply
1 point

Other packages do this though, and builds are easy to automate. Is it because it’s not stable software, and so hasn’t passed the usual unstable, testing, stabile repo vetting process? If so, I’m surprised, it really looks mature.

Ah cross-compiling is something I hadnt considered… do you have a preferred toolchain for this?

permalink
report
parent
reply
1 point

My preferred toolchain for most things these days, including this, is the Nix package manager. It makes cross-compiling most programs (or other similar things like compiling fully statically linked binaries, or a combination of the two) really easy, in this case with a single command, without having to deal with setting up any of the cross-compiler toolchain itself or anything else like that. It also has a huge package collection including the Lemmy packages. For example, this is the command I used for testing:

nix build nixpkgs#pkgsCross.armv7l-hf-multiplatform.lemmy-server

For building and copying to a remote host (both the build and target host should have Nix installed), something like this should work instead:

nix copy --to ssh://raspberry-pi nixpkgs#pkgsCross.armv7l-hf-multiplatform.lemmy-server

There is NixOS, the distro built on top of Nix, but Nix itself works on any distro and doesn’t come into conflict with your distro’s package manager, so there’s no issue with having it installed in parallel.

I actually make a lot of use of the cross-compiling functionality since my router is also an armv7l box which isn’t very powerful, so I cross-compile the whole NixOS system (including some custom packages) on my PC and then copy it over. It’s very nice to work with.

Here’s the website: https://nixos.org/

permalink
report
parent
reply
0 points

Wow, I tried NixOS at one point but I couldn’t keep it as a daily driver because it didn’t play nicely with my conda-based dev environment.

I knew nix like guix (another failed experiment I wanted to make my daily driver) could be run as a package manager but I had no idea it could cross-compile and copy in one command!

These are static builds right?

permalink
report
parent
reply

Lemmy

!lemmy@lemmy.ml

Create post

Everything about Lemmy; bugs, gripes, praises, and advocacy.

For discussion about the lemmy.ml instance, go to !meta@lemmy.ml.

Community stats

  • 857

    Monthly active users

  • 1.1K

    Posts

  • 14K

    Comments

Community moderators