SAFE Network in Debian (and Ubuntu, FreedomBox etc.)

SAFE Network should be part of our operating systems. Not just as an addon, but integral to the systems themselves.

As discussed for some time, progress is being made towards integrating SAFE Network with Debian, and I think that work deserves its own topic.

Debian is self-contained. All code in Debian was built from code in Debian. This is different from “registries” like npm.org and crates.io where code dependencies are by default pulled from the interwebs. This difference gets important when aiming for stabilizing a full system: The JavaScript and Rust communities are working in many directions at once, whereas Debian is consolidating every 2-3 years to make a unified distro release, which is then kept stable for another several years.

Ubuntu - an operating system based on a subset of Debian - will likely benefit directly from this, and also have SAFE Network included when Debian does.
FreedomBox - another subset of Debian with the specific aim of providing turn-key self-hosting for non-technical users - will most likely adopt this Debian packaging as well.

Concrete goal is that users of Debian can do sudo apt install safe-network which will provide them a meaningful set of SAFE Network components, integrated with their system and updated as part of the system itself.
Getting there involves several tasks:

  1. Create a draft functional deb package.
    Done!
  2. Publish draft packages
    (optional: irrelevant for Debian adoption but helps ease bleeding-edge testing till then)
  3. Package all dependencies
    70 Rust crates missing.
  4. Get deb package accepted into Debian officially.
    Pending (awaits dependencies getting packaged).
  5. Refine package to integrate tighter with system
    (see bottom parts of TODO notes)
  6. Maintain package, keeping it in sync with upstream development and aligned with dependencies and other system components.
    Currently (as of 2023-11-04) in sync with upstream release 0.96.29

Do you have questions or concerns? Or perhaps suggestions for functionalities or addons? The floor is open for discussions and debate!

28 Likes

I hit this sometimes too. I’m not sure if creating the topic will help, so if it doesn’t you could instead make the OP a Wiki and add updates to the end of it rather than replying to the topic. If you don’t have permission to make it a Wiki, a mod can for this for you.

4 Likes

I decided to restructure the initial post to allow progressive updates instead, to not need my monologue style writing. I saw the option of turning into a wiki but am not sure there’s a benefit in opening up to everyone editing the text. Thanks anyway for the suggestion - and please do tell if you think I am missing some benefits from turning it into a wiki (I am evidently not familiar with nor very excited by this forum system).

(for those puzzled about the above quote: @happybeing grabbed that merely minutes before I decided to drop that rant part of the initial post)

4 Likes

You may need to make it a Wiki eventually because edits have a cut off. I’m not sure if that’s time from creation or time from last edit, so you might be ok if the edits are never to far apart.

EDIT: we could delete these replies now we’ve had this chat if you like, and keep the topic clean?

2 Likes

Hmm, I am just happy to get some posts other than my own here. :wink:

You think this meta discussion is more likely to scare off contributions than an “empty dancefloor”?

1 Like

Heh! Obviously this forum system will find ways to harrass me - no surprise there. I will keep it in mind - thanks!

4 Likes

Who will maintain the debian packages for the rust crates that are not in debian?

1 Like

I guess you mean the crates not yet in Debian but required by the core SAFE Network crates - and therefore needed to be packaged as well for core SAFE Network to get accepted into Debian.

I expect to maintain those that others in Debian (most notably the Debian Rust team) picks up before I get to them.

If instead you mean crates not required by core SAFE Network crates, then those will not be packaged - unless someone in Debian gets convinced to do it.

As an example, I am working on a draft packaging of vdash (where the Debian package is planned to be renamed safe-vdash).

If you have some particular crates in mind that you think would be beneficial to have included in Debian, please do elaborate - that might help convince me to take on the task of maintaining them.

update And if you would like to get involved yourself in maintaining some crates officially in Debian, then that would be just awesome! You do not need to first become an official member of Debian to get involved with official Debian packaging mainentance (that’s a common misunderstanding) - what you need is to team up with someone you can do the final push of a package into Debian. I can be that person if you are ok with us collaborating on it (as I don’t want to only push stuff over, socio-politically I insist on improving collaboration in Debian). Or alternatively I am sure the Rust team will welcome you as well (if you like their working style better than mine - I am happy to elaborate on why I am not in that team but only if there’s interest, to not get more technical for no reason).

11 Likes

Thank you for your hard work on this @jonas

7 Likes

Hmm - looks like I cannot update initial post any longer. Wonder if noone cares about my (still ongoing) work, or I should create a new thread, or…

5 Likes

@moderators should be able to override this.

3 Likes

I made it a Wiki, which means you (anyone really) can update it anytime.

Otherwise a new topic. Discourse puts a time limit on doing edits and the system setting affects everyone/everypost and is why I prefer not to change that one since you’d need it set to years to work.

7 Likes

What a spectacular idea! I would be really happy to directly access my SAFE Disk from my native OS.

7 Likes

Thanks, @neo - that helped, and I have now updated status for this glacier.

16 Likes

We are lucky you are part of this comunity @jonas glad you are able to find time for this :slight_smile:

12 Likes

Less than 95 crates need to be packaged now, as of draft packaging release 0.71.1-0~draft5!

I am studying now, where I have very little time left for Debian work (and I maintain quite a few packages already that need a bit of attention).
I have just had a few weeks of vacation, but from now on only slow progress can be expected, unfortunately.

12 Likes

Just caught up with this thread and saw this - I personally think your work here is fabulous, Jonas, and I’m very happy you’re doing it! Keep at it. For me it’s a “not all heroes wear capes” type thing. There’s a couple of others on the forum plodding along steadily and surely on their own side who I’d say the same of.

My personal and professional situation at the moment is such that I can’t help out with this kind of thing, but if that changes (and it could) you’ll be one of the first to know :slight_smile:

11 Likes

How are you @jonas?

1 Like

Thanks for asking.

I am a happy being (pun intended): Have graduated and will begin to study in university in a month. I have bought a recumbent racing trike (an “Ice Sprint”). And I continue to work on packaging Safe network for Debian. I actually completed packaging vdash few days ago, and it is now awaiting a final inspection and approval before (if approved) it enters Debian. Safe network itself is still a lot of work - I am currently fighting to get all the dependencies for libp2p packaged, and then libp2p itself…
I never heard back from those people that I was encouraged to ask for help funding my work on thos, so I am doing it on my own time, which is running out most likely, now that I enter university.

How are you @happybeing ?

12 Likes

ONG that’s awesome, I’d forgotten or didn’t know you were doing that. Thank you :clap: : and for your continued work on safe_network packaging. @dirvine is it time to try and get some help with this?

I’m glad you can say you are a happy being :smiley:. Congratulations on graduating and heading to uni. That’s even more awesome.

I’m doing ok myself. Much more to it but not for here. Since we chatted one big change is I have a personal trainer, my dog who just turned two and never lets me out of her sight, miss a walk, or sit on my phone too long.

I’m glad you are still around and wish you lots of luck at uni and fun with your trike.

8 Likes