Episode: 2774
Title: HPR2774: CJDNS and Yggdrasil
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr2774/hpr2774.mp3
Transcribed: 2025-10-19 16:40:24

---

This is HBR episode 2,774 entitled, CKDNS and DIG Blassel.
It is posted my first time post-order and is about 10 minutes long and carrying a clean
flag.
The summary is a summary of the thing I like about CKDNS and DIG Blassel and the places I think
they could improve.
This episode of HBR is brought to you by Ananasthos.com.
At 15% discount on all shared hosting with the offer code HBR15, that's HBR15.
Better web hosting that's honest and fair at Ananasthos.com.
Hey guys so today I'm going to try something a little bit different which is doing a sort
of podcast like thing and we really usually do this sort of thing but I thought I'd try
it out.
Feedback would be appreciated.
There's a good chance that my mic is going to be really broken just because I haven't
really had enough time to calibrate it but whatever.
Yeah, I'm going to talk about mesh networking for a while so CKDNS.
It hurts me.
It really does.
So for those of you who aren't familiar, CKDNS is some mesh networking software, it lets
you build your own mesh networks on top of the internet or with physical hardware.
It doesn't really matter, it lets you build your own mesh networks.
It's so cool but at the same time it's so bad.
So the first pro to CKDNS is the fact that it actually works.
It works.
It does do what it's supposed to do which is really impressive.
It's super cool piece of software.
The idea is solid.
I really, really want something like this and it also gives you a whole lot of choice.
The way CKDNS is set up right now is in order for somebody to peer with you, you actually
have to send them a password to peer.
And I think that's great.
That puts more control into the hands of the users.
Initially I was skeptical because that makes it feel a little bit sort of elite that you
need an invitation to join the network.
But the more I did experiment with it for a while and that's not really how it actually
played out.
I never actually got a key for somebody.
I just use a public peer but I certainly see the appeal.
It gives users the power to moderate the community to moderate themselves which is super cool
and I've tried to apply that sort of philosophy to some of my own projects.
So the problems because there's a lot of them.
The first is Node.js.
The CGDNS itself is written in C but for whatever reason CGD decided to use Node.js as a build
system.
My opinions on Node.js are pretty strong and I don't really want to get it into it right
now because this would be a 30 minute podcast if I did.
But it's kind of a deal breaker for me.
I'm not going to get it into it.
A lot of people dislike Node.js as much as I do.
In the fact that this being uses a build system is even worse.
I don't like non-standard build systems.
I'll get into that more a bit later.
But the last point is what really kills it.
It turns out CGD is actually trying to monetize the entire thing.
There are plans for adding a cryptocurrency into the network itself.
From what the conversations I've had, it seems like it might be done as an external
program but the way it's set up is basically going to be forced on everybody especially
because CGD is developing a graphical installer right here and the graphical installer will
use the metered bandwidth program by default.
So it's going to end up everywhere.
If the graphical installer does it by default, it's going to be everywhere.
There's no escaping it.
So that's a major downside.
That's not acceptable in my opinion.
Not to mention the fact that it's actually building the cryptocurrency into the network itself.
They're not using existing cryptocurrency.
They're building their own which is that's not okay.
Which is really a shame because it's a really promising project.
It's pretty cool.
I used it for a while.
It's unbelievably cool.
I could even go as far as recommending that you check it out even if it isn't the
optimum thing.
Obviously you would see a new maintainer or something like that to maybe help wrinkle
out some of those issues specifically the whole Node.js thing as well as figuring out
how to do sort of damage control on the cryptocurrency.
But other than that, it's really, really cool.
JJDS actually has a sort of evil twin, which is Yig Juzil.
I'm sure I'm butchering that name.
I'm really sorry.
What can I do?
Yig Juzil is very similar to JJDS and it's also super cool.
It also gives people the same level of choice that JJDS does.
I think it has slightly less configuration options, but it's not really a problem.
It also works really well.
It's actually from what I've heard significantly faster than JJDS right now at least.
And there's no cryptocurrencies or Node.js or anything.
Which is pretty cool, except it's written in Go.
My issue with Go is static linking, which kind of, it takes away the freedom of using your
own custom built libraries.
I know most people don't do that, but I use Gen 2.
So everything on my system is built from source.
And a lot of that has, I've set use flags because I want things to work differently.
And taking away that control is kind of terrible.
I understand that Go was kind of designed for Windows-like systems, not so much for Linux,
but it's the system I use so it matters to me.
The bigger issue is Go, just like Node.js, well, just like CJDS, use the non-standard build
system, specifically Go has its own built-in build system, which has two problems with it.
The first is that it downloads dependencies during compile time, which is a huge problem
for Deasters like Gen 2, where everything is built from source.
Because that's a big no-no, you never download anything well-compiling.
And the other issue is that Deasters like Gen 2 already have configured on Gen 2.
They're called E-classes that basically let you build a program automatically.
Like for example, basically any project that uses CMake, you can build it basically
entirely automatically on Gen 2.
Because the system already knows how to talk to CMake, it already knows how to make it
installed to different directories, it's already all sorted out for you, pardon me.
With Go, that's not quite the case.
Now there may well be an E-class for Go, and I'm sure somebody could write one, but
at the end of the day, Go is a programming language.
It's not a build system, so it really shouldn't have a build system built into it.
If you're just going to use Go, but it also used CMake to build instead of the building
and Go system, that would be much better, in my opinion.
There would still be the static linking issue, which would never really be fixed because
Go is built from the ground up for static linking.
But having a new build system would be a good first step.
I don't actually expect anybody to listen to me.
I don't expect any changes to be made.
I'm just voicing my opinion.
So yeah.
It's been a while.
I've looked at quite a few different projects like this.
Yik Juzil and Cedric and S are the only of their kind, obviously.
But I've looked at a whole lot of things, things like Matrix and IPFS.
I have some pretty strong opinions on a lot of them, so I thought it would be cool
to share some.
If you found this interesting, let me know.
If you have feedback, please, it would be greatly appreciated.
I'm thinking about maybe doing some other things in the future.
Maybe just general Linux tips or just more comparisons of different open source projects,
like Cedric and S.
I might do some dev blogs, but I feel like it would be a little bit boring because it's
just code.
I don't know.
I don't know what you think.
I hope you enjoyed.
You've been listening to Heka Public Radio at HekaPublicRadio.org.
We are a community podcast network that releases shows every weekday Monday through Friday.
Today's show, like all our shows, was contributed by an HBR listener like yourself.
If you ever thought of recording a podcast, then click on our contributing to find out
how easy it really is.
Heka Public Radio was founded by the Digital Dog Pound and the Infonomicon Computer Club,
and is part of the binary revolution at binwreff.com.
If you have comments on today's show, please email the host directly, leave a comment on
the website or record a follow-up episode yourself.
Unless otherwise status, today's show is released on the Creative Commons, App Tribution,
and share a light 3.0 license.
