Tech Over Tea - What If Wayland Sucked Less | Shrub
Episode Date: May 1, 2026Today we have one of the creators of Wayland FYI on the show which I and others have been referring to as Suckless Wayland and we are here to rant about Wayland, X11 and all random things going on in ...the Linux world==========Support The Channel==========► Patreon: https://www.patreon.com/brodierobertson► Paypal: https://www.paypal.me/BrodieRobertsonVideo► Amazon USA: https://amzn.to/3d5gykF► Other Methods: https://cointr.ee/brodierobertson==========Guest Links==========Wayland FYI: https://wayland.fyi/==========Support The Show==========► Patreon: https://www.patreon.com/brodierobertson► Paypal: https://www.paypal.me/BrodieRobertsonVideo► Amazon USA: https://amzn.to/3d5gykF► Other Methods: https://cointr.ee/brodierobertson=========Video Platforms==========🎥 YouTube: https://www.youtube.com/channel/UCBq5p-xOla8xhnrbhu8AIAg=========Audio Release=========🎵 RSS: https://anchor.fm/s/149fd51c/podcast/rss🎵 Apple Podcast:https://podcasts.apple.com/us/podcast/tech-over-tea/id1501727953🎵 Spotify: https://open.spotify.com/show/3IfFpfzlLo7OPsEnl4gbdM🎵 Google Podcast: https://www.google.com/podcasts?feed=aHR0cHM6Ly9hbmNob3IuZm0vcy8xNDlmZDUxYy9wb2RjYXN0L3Jzcw==🎵 Anchor: https://anchor.fm/tech-over-tea==========Social Media==========🎤 Discord:https://discord.gg/PkMRVn9🐦 Twitter: https://twitter.com/TechOverTeaShow📷 Instagram: https://www.instagram.com/techovertea/🌐 Mastodon:https://mastodon.social/web/accounts/1093345==========Credits==========🎨 Channel Art:All my art has was created by Supercozmanhttps://twitter.com/Supercozmanhttps://www.instagram.com/supercozman_draws/DISCLOSURE: Wherever possible I use referral links, which means if you click one of the links in this video or description and make a purchase we may receive a small commission or other compensation.
Transcript
Discussion (0)
Good morning, good day, and good evening.
I'm as well as your host, Brodie Robertson.
And maybe a week, two ago.
I remember how long ago it was at this point.
I did a video on something called whalen.fyi.
And one of the people who was involved in making that page
decided to comment on the video.
And as I do, I tend to reach out to people when they do neat things.
So how about you introduce yourself and we'll go from there?
My name is Shrubb on the internet.
It's not a real name.
It's my internet name, I guess.
And I play with computers, and they're a reason I'm here
because I and other people.
I was one of the people involved.
I don't want to say I'm the lead person.
It sounds kind of arrogant.
I was one of the people involved.
We made this website called Whalen, FYI,
which some people have been referring to as suck this way of putting it.
I want to say some people I mean you.
By, yes, by people you mean me.
I'm the one who started that, yes.
Yeah.
Although a few people had said similar things before.
So obviously, I guess most people who know, it's probably a good way that's starting
getting into explaining it.
So Sarklist, they like made software that's simple.
Some bit is good.
Some bit's not very good, in my opinion.
But, um, so I, now they made something called DWM,
which is a window manager for the X-org display server.
and I have used it in the past.
I was kind of sick of X-11 as a whole.
And I was also not, I mean, I had moved to, I used to Way for a bit,
and then I was on Neri, which is very good as a piece of software to use as a user.
But I don't really like it from, I don't really like most of the Wayland compositors
and software from the kind of code and backend perspective,
even though most of it is great from a user perspective.
It's much better than X-11.
So I wanted to do something that was a bit simpler, approachable for a developer from a code standpoint.
And I found this project called on GitHub by a wonderful programmer and developer called Michael Forney,
who's made many other amazing things.
But he made SWC, the Simple Wayland Composter.
And I tried it out.
So it's all came about because I'm developing a Linux distribution.
I feel like I'm going on a bunch of tangents.
But I was developing a Linux distribution.
Jump around as much as you want.
I, as you're jumping, I'm like jotting things down and we can go back to.
So do whatever you need to do.
So I was developing my Linux distribution, which is called three of Linux.
It's amazing.
No, don't install it, by the way.
No one installed it, okay?
But I was working on that and I wanted to get sway because I think it's probably the,
I thought it would be easy.
It wasn't easy.
It wasn't easy because my distribution has no Mesa.
It's all Satsky-Links, so you can't have Mesa.
It has no U-Dev because U-Def is bad.
And so I was trying to get W-L-R-R-R-R-T to compile statically with just Pixman,
which means a CPU rendering on DRM without U-DV,
and it was really hard, and I could not get it to work at all.
So obviously I decided the next best thing is that I should fork a different project
and make my own compositor that works with my distribution.
It seems like the logical next step.
So the way it started is with Havel,
you mentioned it in the video that you made.
So originally the project was just Havel,
and we bundled a modified version of SWC
inside the Havel repository.
And that was the way we did it.
Then eventually we started making so many modifications
and improvements to SWC that we decided to make a new repository
just for that.
And also, SWC has something that's laid on top of
called WLDD-WALM drawing library.
So we also made a repository of the changes we made to that.
We called it new SWCN, new WLD.
And those are on my source help page.
And I posted some stuff like on Reddit and whatever,
and it kind of ended up gaining more traction than the distribution that was working on.
So you know how these things go, right?
So we made a little page for it.
And that's Wayland.fye.
So it has that on it.
And there's loads of composters that people, me and other people have made on top of our stuff.
off and also some assorted software that isn't really related to the what we're making,
but is kind of aligned with the message.
So yeah, that's why I'm here, I guess.
So why are you sick of X-11?
Like what, you know, actually firstly, when did you start using Linux?
How long have you been using it?
I've been using it since I was about 13, and my dad helped me install Ubuntu on my laptop.
And so I was using my first desktop was Gino,
probably on Wayland. I don't remember. I wasn't interested at the time.
Then I was using
20, I think it was either
24 or 22. I don't remember.
I think it was 22.
I think they'd swap by default by then?
Maybe. Yeah.
It was either that or the next version.
It was around that point.
And then after that, I was using
Marte, I think that's a page on X-11.
Then I started trying out more
like DWM, like window managery stuff,
mostly on X,
and then recently I moved to Sway and Neri, and now I'm only using my own software, which is fun, right?
I'm using my own compositor.
But the main reason I got sick of X-11 is not really from a user perspective.
As a user, I think both X-11 and Wayland have their strength and weaknesses.
But I think sort of in the back, when you look at how X-11 actually works, it's just the most utterly disgusting, evil.
it's like layers and layers and layers of bullshit
that's been stacking up for like 40 years.
It's actually unbelievably bad
when you actually look at how it works.
So I guess I should probably explain how it works
what the difference is.
Yeah, go into that.
So X, now there is only one
X11 implementation.
People will tell you there are more, but they are liars.
The X Libre is just Xorg
and then XORC is also XORC.
To be fair,
they don't really exist anymore
there are some independent
um
what is like a minimal
X11 server
um
XFBDF
I don't know
um
TinyX
maybe it was TinyX
maybe that's the one I'm thinking of
TinyX is based on Xorg
okay we'll take back on Xorg
okay
I was I was originally using
my distribution before I want to switch away
to wait to be fair
sorry I'm gonna
I'm gonna tangent you again
is the MacOS X-11 related to X-Og.
I don't know anything about Wood Gardens.
I'm not going to try to-
Fair enough.
Probably not, if I had to assume,
but I don't know nothing any about that.
So X-org is the singular X-11 implementation
that works on computers nowadays.
Yeah.
And it is like horrible, basically.
So you have, the way the X-11 protocol works is there is a server, which is the X-11 server,
and clients can connect to that server.
But the clients are not just applications that, like, user applications that appear at the window.
The clients can be your window manager.
The clients can be your compositor.
Now, if you want to composite, you're going to need an X extension called X-render, or,
no, X composite, obviously.
And then there's, so all of these extensions, if you want to do anything on X, you need
an extension. They didn't make this easy. Each extension is a library. It's not like an extensible
protocol. I mean, imagine if someone did that, right? It's each extension is a library.
So you have X font for server side font rendering, XFT for the client who wants to do font
rendering, Xcomposite I mentioned for compositing, X shum, I don't know how you say that,
shared memory, for shared memory stuff, which is similar to some stuff on Wayland. But
all of that stuff builds up. And then if you want to get a working X11 stack on a computer,
you need about 60 libraries.
It's like millions and millions and millions of lines.
I'm not joking about it.
It is for the bare minimum X-11, I think it's about 50 libraries.
That's what I had on my distribution.
And that was literally the bare minimum.
I've deleted all that now.
I don't want to ever touch it again.
I don't want to maintain it.
I don't want to think about it.
But with Wayland, it's like 15 or less things.
As a core library, it's much simpler.
Now, the way Whedon works,
instead of having a cool server with clients that connect,
you have something called the compositor.
Now, this is confusing.
This is like a big part of website,
because people kept saying this to me.
It was like my biggest pet peeve.
So on X, you can have a compositor.
And what that does is, it takes the windows
and it renders them off-screen
and then it can add effects or whatever,
no screen tearing.
It adds it on top of them.
That's called compositing.
But that's not,
composing is actually just drawing the thing
where the thing is supposed to go.
That's what compositing means.
So on Wayland, the compositor is,
it draws the thing.
It accepts connections from the client,
so it's the server.
And, yeah, and it also has the window management logic in it,
inside of it usually.
So it's a window manager, a server, and a
composter all in one, which
some people say that's fragmentation
or something. I don't really know. I think it's
a good thing, but
but hey, and then
so now, it's
quite hard to make a composter from scratch.
It's very hard to make a composite
scratch. I think like,
what was that? I know. Anyway, I think like
three or four
people have made a composter from scratch that
work successfully. The ones I can think of our
K-Win, Gnome.
I don't really know about these two.
To be honest, I didn't touch that.
And then W.L. Roots, which is like the famous one, made originally, I think, by Drew DeVolt.
And now it's like free desktop.
All those people work on it.
And that is the premier implementation of a whaling compositor for the last, how of many years.
So sway is based on that.
All the other ones that I don't use are based on that.
I don't know.
There's probably more.
And then there's also one in a rust
You could make the argument
It's not really using the desktop
But Western does exist as well
And for a while that was considered
The reference implementation
Most of its use nowadays
Is embedded systems
The other ones you have are basically
Just
Libraries that exist
Like you know Smithy
Smithy doesn't have a composite
There's not a core
Like smithy compositor
Like
W.O. Roots spawned out of sway
Originally there wasn't a W.R.R.
It was
just part of sway and then it got separated out.
Whereas with Smithy, it started as a library
from the beginning and then things a bit with it.
Yeah, but nowadays, Dobia Roots is kind of using the same way
where it's a library and stuff on top of it.
So,
and now,
my opinion actually on Dobio Roots
used to be a lot more hostile than it is.
People have sort of brought me
to the dark side, shall we say.
Although I'm still not
too happy with it, especially the U-Dev thing.
So U-Div is a,
a device manager. It originally was part of SystemD, but it's used on most distributions,
including ones that use non-SystemD in its system, so Void Alpine, they will use U-D as their
device manager because it's very convenient. I like to make my life as inconvenient as possible.
It's kind of the way I live. So I used MDev from Busybox on my systems.
And that's what I do. I mean, like I said, I make my life as inconvenient as possible.
So I can not compile.
I was unable to compile W.O.R.
Now, there is a solution to this.
It's called Lib U-Def Zero on GitHub.
It's like a U-Dave, a fake U-Dive.
It tricks the computer into thinking you have U-DV.
It's like a U-DV-SHM.
Okay.
Yeah, it's a chip.
And I tried to use that.
I also couldn't get it to work.
I probably could if I tried really hard,
but now I have my own composer.
I really don't care.
Yeah, and then the other thing about W-O-Routes is that,
it is very much the supported path is to have it with Mesa or Graphics
Scaleration which obviously is convenient for many people but again not
convenient for me because I Satski Link everything so those are two problems that
have but really the problem specifically for me because I'm insane
or people tell me I'm insane um the real problem that I have with W Roots is now I
have messed around with making X window managers in the past so I was like okay I
want to make away Linkaposit I guess Wroots is the place to start right
it is not as easy to make a compositor with W Roots as it is to make a window manager
because it's not really a library for making for writing window management logic it implements
sort of the base protocol level stuff and then you have to do all the uh compositing and
window management policy and all the stuff on top of that not just window management but also
like the input stuff the seat stuff a lot of that you have to handle yeah i've heard similar
I've heard this a lot from people who sort of say that MIR is such a good choice.
I don't know if you've looked at MIR at all.
I've never really master in there.
Yeah.
But apparently,
with MIR makes some of that stuff easier.
Smithy apparently does as well.
And there's been other libraries that are trying to be like W-R-Routes, like Loove.
I don't know how the project's going along nowadays.
But a lot of those things have been trying to, like, simplify that.
I'll let you keep going down that route.
We'll talk about another thing that's going to make it easier afterwards, if I remember.
Keep you on.
So now the way that my library, oh, it's not really my library, because it's a fork,
but the library I'm working on, and hopefully, by the way, we're going to upstream a lot of
the changes we've made in the forked ups, the upstream project, because I've made contact
with the original developer now, which I was neglecting to do.
I'm not very good of these things.
But I've done that now.
So SWC, it makes it a lot easier.
It's compatible to writing a window manager for X.
You basically just have to handle window management logic.
and everything else is handled for you.
Now, that does, maybe people say, oh, you can't, you don't have as much freedom.
What I would say is you could just edit the compositor library.
That's what I did originally when I was making HAYVo.
I wanted to add that Zoom feature that is probably the thing that got me a million upvotes on radio, whatever.
I wanted to add that.
Now, because you only encode the window management policy,
and you have to add that feature to SWC, the compositing library.
So I agree that that is one of the reason why people like W Roots, because it does give you that freedom.
By the same time, I think a lot of people who want to make their sort of like hobby, Whalen thing,
they don't need to write a thousand lines of code to do input or whatever.
They just want to write the window management logic.
So that's one thing that I think is good about my library.
And also, it works on NetBSD, which is useful people who use NetBSD.
I use NetBST occasionally sometimes, not that often.
But no other Wayland works on NetBST.
It was an effort, I think, to get sway and all of that jazz working on NEPBST.
I haven't seen any screenshots of like a fruitful sway working on NEPC.
Maybe there is, but one has worked on NEPC pretty flawlessly.
I've verified that, so I'm acquit that.
And then they have also, by using all the compatibility shims, they have proper WL-Route sway, Wayland on,
in fact, they have KDE and stuff on Free BSD, and I think they've got Sway on OpenBST, and I think
We've got sway on Open BSD, but they use a lot of compatibility shames, whereas with SWC, it has sort of native support for, for example, WS-cons, which is the input.
So on Linux, there's lib input, which is what they use.
On BSD, it's typically WS-cons, which is a whole different thing.
So W-R-R-R-R-R-I think there was a pull request for it somewhere, but it doesn't support that, whereas SWC does.
so you get that native input support i think it's pretty cool uh it wasn't me who did that it was a net
bsd contributor contributing to the original project in like 2020 but it does work and it's cool um so that is
one thing yeah that is one thing about what i'm doing that is cool it's more portable a more portable
way than i think one thing i'm thinking about doing is getting it on solaris i think they have libdrm
with drivers there it might be possible the input stack is different but i think it might be possible and i do
believe that would be the first time
way and would ever have been used on Solaris.
I mean, I've never installed Solaris, but I'll give
it a shot. Like, it will be cool, right?
Yeah.
I feel
bad for anyone who's English
as a second language for this episode,
because you were just like,
go ahead.
I'm sorry. I'm sorry. I'm sorry.
No, no, it's fine. It's fine.
I can see that you're clearly really, really
passionate about this.
I'm pretty passionate. It's something I spend a lot of time working on, probably to the detriment of my results at school.
But, okay, my parents are going to watch this, so maybe cut that out?
Are you aware of the work that River is doing with separating out the way and visiting with the window management?
I think it's actually a really cool project. I wanted to make a river compatible compositor that takes River Window Managers and works.
instead of using W-L-Routes and ZIG, do it on SWC with C.
I think that would be really cool because obviously I can't use River in my system
because I'm, also I don't have a Zyg compiler, but I'm yet to compile WL Roots.
So if I could get something like that, because I think it's a really good idea,
and I think it's well-designed as well what they've done.
I'm a fan of River, yeah.
That is one of the, like, the idea you're saying there about, like,
maybe, I don't know, 10 minutes ago of Raw, about, about,
But on X-11, a lot of people, sorry, I'm jumping around now.
So the problem is when I jump around, I didn't even start talking.
I just start, like, jumping between things in my head.
So a lot of people make this argument sort of from this position of not knowing what's going on,
where they say things like, oh, X-11 is simpler.
X-11 is more, like, you know, it might be more simpler to make something for,
but it's simpler to make something for it because it hides a lot of that complexity,
behind the 40 years of legacy nonsense.
And whilst that might be the case,
it has made a lot more approachable for people
who actually want to go and make a new wind managing system for X-11.
And at least until fairly recently,
we just haven't had a good option for building something
where you don't want to get like really, really into the weeds, right?
If you want to go and do everything from the ground out,
Hey, W.R. Roots, great. Go and do it. Do something from scratch if you want to.
But if you just want to make, hey, this is, you know, tiling window manager, but slightly different, unless you're just going to fork off an existing project, there just wasn't really a great way to do that.
Because the co-bases are so big. Yeah, yeah, yeah.
So that is one of the things that I think SMC is going to help with.
I think, like, on the website, we have six compositors that already made with it or something of that number.
And that's just popped up like in the last few.
I mean, this hasn't been going for long.
So it shows you it's not super hard.
You can spring something up.
I think I'm working on a video.
I'm procrastinator on a video.
I'm working on a composer with SWC.
My example is about 80 lines of code.
You can get a window on the screen in 80 lines of code.
Like that is kind of what I'm going for.
Yeah.
And so it is really good to make things more approachable.
because not only is it more approachable from the front end,
like it is for the user buy,
it's also approachable, it's simple at the back.
You can trace through a whole Wayland stack
without reading, like, going through 60 libraries.
Like, you want to put text on the screen?
Like, it's easy.
Like, that's one of the things I like about Raymond
is it removes loads of, a lot of abstraction layers.
It's a very clear protocol,
but it's also extensible, so you can do what you want.
Okay, that leads me into another thing
that always really annoying when people talk about Wayland,
when they say,
but I can't have a hotkey demon
and the security policy
now, it's too secure
it's terrible, but they didn't realize
maybe if they put their hands on the keyboard
and start making a compositor, they could just
make a Wayland protocol that broadcast
all the keyboard events to every single window
and you can have like whatever
bullshit thing that you want to do
you can have that.
It's pretty easy too. I was thinking of doing it
to prove everyone wrong that you
could have like a universal hotkey demon on Whelan
but no one told me it.
prove anyone wrong. No one ever talks about it, but that's a thing you can do in Hyperland.
You can scope it to like application names, but like you can already do that. It's just
nobody else implements it. It's pretty annoying when people talk about waiting like it's a monolith
because that's like the main point of it is that it's not compared to X, which is a monolith.
Although recently they've been trying to make new Xs like the Phoenix thing. I didn't know. You interviewed
that guy, right? I did, yes.
I didn't watch the whole thing
I started watching it
but I just can't wrap my head around
why anyone would put themselves through that
I don't understand it
I read the read me of the project as well
and they're trying to add like the permissions
feature from Wayland
into X
I think that's going to make a lot of people really angry
right
I mean if it works like kudos
like it's cool
but I do think we do just need to let it die
at this point
we just need to let it die
And into like, there's just so many parts that I could just ramble about how much I hate X, like with a passion.
But maybe I'll park it there.
If you, no, if you want to, if you, look, I, my audience is very interesting, right?
I have a lot of people who understand the benefits of Wayland, but I get those, like, drive-by hardcore X-11 people.
It's always fun to just, to just see.
So if you want to, if you want to annoy them, please, go right ahead.
Say what if you want.
Okay.
I can't forget what I was going to say.
I just had an idea.
But I forgot what I was going to say.
What was it?
It was...
Well, I was talking about Phoenix.
Something about letting it die.
So, yeah.
When you want to put something on the screen, like a window,
when you want to draw something into the window,
it is like unbelievably ridiculously complicated
the way that it's done in the back on X.
So you have X-Lib.
Now, X-Lib is like the X-Library for drawing stuff to the screen.
It's like the most ridiculously hard to use.
disgusting evil library in the world,
that there's an extraction library on top of it
called XCB, which is like the modern
modern replacement.
But the way drawing a window works on X is like,
okay, put a line here and then put like a line underneath it.
And like you're talking directly to the server
exactly what you want to draw lines, this, this, this, that.
It's like an insane way to do it.
It's almost like it was designed like in the 70s or something.
What year? Okay, what year is X-E-B? X-C-B, X-C-B is 2001.
Okay, so not too old, but at least seven years older than me.
On Wayland, do the application, like, okay, here's my, here's my buffer, just put it where you want.
That's literally it. There's no, there's no cap.
And that's something I think is also, as if you're doing client development, it also makes a lot, if you're developing applications, it makes things a lot.
simpler. But then obviously nowadays most people who develop their
applications are using like GTK or like whatever crap UI library people like now.
So it's all abstracted away anyway. But um
it's the base level. It's nicer to develop an application for Wade than it is for
X. Um, I'm working on some like fun applications now. I wanted to make,
I think where you could draw a little 16 by 16 pixel art.
and then export it as a PNG.
That's like a, it's like a fun project.
But just doing it with the WLD drawing library and like nothing else, like simple.
The way I like it.
Yes.
Okay.
What's the other?
Okay, so there's on the list here, the list.
I've been given a list of topics.
Yeah, it's just like general things.
Oh, well, um, sorry, I'm just trying.
I'm like mostly.
keeping up with what you're saying. It's just I'm going to process things sometime.
I try slow it down. I'm sorry if I'm going too fast. No, no, no, no. It's so good. It's so good.
Just a bit of a side change. How long have you been doing like development for?
So I started working on my Linux distribution to Reeve. I think maybe it's been four or five months now.
It's been not super long, but maybe about half a year if I had to make a guess. And then
I think this way and stuff is at most two months old, I think.
It company started because I was using, so my first Linux supervision I used when I was
developing Linux stuff was Arch.
And then one day, my yay stopped working.
Because a shared library had disappeared from my system after an update.
I felt to get like radicalized.
What are these shared libraries here for?
what is the point of this?
I still, by the way, to this day,
I don't understand what the point of a shared library is.
It doesn't seem simpler in any way.
So then I installed Alpine.
I was like, okay, this is much better.
But I wanted to get like a desktop work at Alpine
and then like all these dependencies start coming up,
like debas and like random GTK stuff.
I don't want this.
What is this?
So I was going through every dependency.
I'm like, look me at it.
Like, why do I need this?
And I just realized you actually just don't need any of it.
Like, okay, debas is like, it's like, it's evil. It's like so evil.
They, I'm pretty sure they made debuts to like make me angry.
Like, I don't think there's another reason to make software that bad.
It's like completely undocumented, like utterly undocumented.
Also, the protocol itself, not only is it undocumented, but it's also like a poorly designed protocol.
And it's like the most complex non-solution to an absolute non-problem.
Like in the day, in the glory.
days of Unix when I was like a pre-feetus. They decided that you have two processes and you
want to communicate with them. So obviously when you're communicating two things, you do it directly.
And that's like the simplest, the most effective ways to do inter-process communication.
But somehow we've stumbled upon this idea that we need like this ultimate mediator written in like
C++ that's incredibly slow with object method calls. I don't even know what that means.
but so you have a process that makes a call on an object and then debus sends that to the other process
and all that does is put a notification on your screen shortly we could have thought of a better way to do this right
so I'm trying to the aim of my distribution is to remove all of that bad stuff that I hate passionately
and do a Linux that's like simple not for you but for me right right right like simple like simple
conceptually. Maybe it's hard to set up. Maybe a pain to use, but conceptually very simple.
So, if I'm understanding it right, like, you're, you're, basically, you're, this is a story that's been
told many times. We have a, we have a young developer who is convinced that he can do everything
better than all of the people over the past 40 or so years. I'm going to draw my best, okay?
I'm going to try. I respect it.
Like when I was, so it started off like the goal was, I just want a small, fatically linked
newsland. And the original compiler I was using was GCC and I had like some Gnu stuff
on the system. And then over time, as I was developing it, I started to get like radicalized.
Like, like all these like canoe dependencies kept popping up. You might see on the website,
the fifth point is that the system is almost 100% canoe free. I guess, I guess, I guess, I guess,
everyone knows what gnu is uh they're like a software project they use a license called the gpl the
guy richard staleman uh is a he has a long beard and he dresses funny you might see a picture of him
um yep they make bad software they make very bad software now you know so Microsoft who are not
gune Microsoft are a different company they make windows they do they have this they have this uh
what's the word strategy they like to do cool what is it like extend expand expand expand extend
But the idea is they add, they take something, oh, embrace extend extinguish.
They take something, they embrace it, they embrace it, they extend it, and then they destroy it.
So, Britsen was like, okay, I can do this, but instead of charge people money for it, I'll do it for free.
So he took Unix, even though he doesn't even like it.
He said multiple times that he doesn't even like it that much.
He extended it by adding all his like extensions, right?
And then he makes everyone use them because there was no really other option.
The GCC was a free compiler, and everyone is going to use it.
And then now everyone is stuck using all this canoe stuff with a GPU license and we're stuck here forever.
It's crazy, right?
Oh, that's going to annoy someone.
Oh, I know.
That is probably the take that I have that gets people to hate me the most.
I don't know why.
It's just my opinion, man.
Some of the canoe stuff is not even that bad.
Like, GCC and Clang, like, they're both large, angry, annoying compilers.
because now everyone's stuck.
The main thing that's annoying is
Bison versus YAC.
I don't know, you know, YAC?
So, YAC is, it was like an original Unix tool,
yet another compiler compiler.
It's a tool that's used to make,
pass the tables, to parse things,
that you can use to make a compiler
or to make another thing.
So the reason that I started to just,
so Gannu made their own version of YAC called Bison.
I don't know why it's called that.
They like things with horns, I don't know.
Yak, bison, animal naming.
Oh, no, the yak, the animal.
I wasn't thinking about that because it's spelled with two Cs.
Yeah, yeah, yeah, yeah.
That's actually, yeah, okay, anyway.
So I was compiling LibxKB common, which is the X keyboard library,
which is also used on Wainan.
They really should rename it.
We should start a petition.
Please rename it.
I was compiling that, and it says you need Bison to compile the, I forgot even what it was,
but you need Bison to compile this to create one of the pastors for it.
And I look back in the commit history and it used to support YAC.
And they just deleted it.
And now it only supports Bison.
I was like, I just started to get so confused.
Like, why?
So I patched it back in and it worked fine.
And I started this journey of like, why are we using all of these extensions that are non-standard
that canoe invented when the original still works fine?
So that's another thing I'm trying to do in my distribution is work through all this
software with Ganoo dependencies and like just sort of rip out.
Because we don't need that.
Hmm.
Well, I think we don't need that.
I know people really hate when I say this.
Like I posted on Reddit like a screenshot of my distribution.
I was like, no Ganoon was used in the making of the screenshot.
And then someone like commented like, you're an edge lord.
You know nothing about software.
Your distribution will be dead in a year.
I'm not quite quit by now, but now he said that, I have to keep doing out of Spine.
Like just for the next year.
yeah.
I don't really understand this,
but people really hate when you say bad things about Ganoo.
With the exception of bash,
people are like totally fine with you saying like,
I want to do everything in POSIX script,
but anything else,
don't touch it.
Don't touch it, yeah.
I mean, even some of the like
more like crazy people distributions like DeVuan
where they patch everything, they also still use
Gnu stuff.
but we didn't bash.
People hate Baff because the extensions they added
like so not good.
Like they don't really fit in a shell script in context
like arrays and stuff like that.
I mean, it's, it's kind of useful.
There are times in my life where I'm like, gosh,
if I only had some Ghanu C extension,
it would make my life a lot easier.
But I don't use that.
So like I said, I like to make my life
as inconvenient as possible.
Yeah.
So you say almost 100% Ganoe free.
What is leftover?
The only thing that is currently a dependency in the repository is Gnu MAP, which is
very, very hard.
I am, well, I'm trying to get this replaced, but it's very, very hard to replace Gnu
because it started off of like the tool people use to build software made by Gnu and then
they add a few extensions, but really it's kind of evolved.
It's like a build DSL domain scripting language.
Like it is like a whole language of build system.
Like the Linus Colonel builds, you just K-Build.
cable is like an abstractionator that generates like loads and loads and loads of Gunu make files.
It's really hard to replace that.
It's really hard.
Ideally, what I would like is something that passes the Ganoo make file and outputs a Ninja, you know, Ninja, Ninja Builds file because it's a lot faster and better.
Google did try and do that to speed up Android builds.
It's called Kati.
Yeah, it's called Kati.
I try it.
It's pretty cool, but it's like really hit or miss.
And it's a C++, which I don't know how to work with, really.
Um, so I'd like to do something like that, but not in C++ and works like for everything,
absolutely everything.
And then I can destroy and put a big banner on the website, 100% new for it.
It'll be amazing.
But yeah, that's my plan for I'm working on.
Okay.
Yeah.
Okay.
We probably went on a tangent.
It's just supposed to be mostly about Whalen, right?
I don't know what this is about.
Yeah, I don't know either.
I can talk about some of my plans for Wayland stuff I want to do in the future.
Sure. Yeah. So I recently stumbled upon the website. I'll try to find it. I don't remember. But
so have you heard of Oasis Linux? It's another project made by Michael Forne who originally made
SWC. It's a project I'm pretty inspired by. Right. Right. Right. Someone made a system
with Oasis Linux and an SWC custom compositor and they put it on a pine phone. And I thought that
was awesome. I don't have a pine phone. I want to do that. So I looked on the guys outside and he said,
I used to have this all on my personal get repository, but I accidentally deleted the VPS and it's all gone.
So the idea was cool.
So I'm going to try and maybe do something like that.
I do need some funds to buy a pine phone, but I'm sure I can get something worked out.
Right now I have an iPhone because my parents pay for my phone, but I'm sure I can buy a pine phone, right?
And then I want to try and get my distribution with a mobile compositor and work on some like sort of mobile UI stuff.
This is quite a recent idea.
I only thought of it like three days ago, but I think that'll be awesome, right?
Linux phone support has been evolving silently, but pretty well.
You can make calls on it.
You can do camera.
You'll never be able to do banking because the ones just sucks.
Yeah, that's like a whole.
They do have like very, what's the word?
I'm forgetting the word.
They don't want it to be run in a very specific environment.
I'm forgetting the word.
Yeah.
A tested environment.
That's the word.
I think it would be cool if I could get like a sort of simple suckless Linux phone
with a cool
mobile way link compositor
so that's something I want to do
and the other thing I want to do is
I started a bit of work on this to someone else
is make a compositor
that represents all the windows
as a in a 9P file system
you know 9p is the protocol that was meant for Plan 9
nowadays it's been delegated to like
Qimil and WSL it used to be a cool
network file protocol now I just use it for like
to make Windows and Linux work together or something
but I want to make a waylonic capacitor
where all the windows are represented in 9p file system
and instead of having keybyes that are like preset
and hard-coded in the compositor,
hard-coded in a config file,
you just interact with a 9P file system in some way
and that manipulate the windows in that way,
which kind of makes it an easier or less,
so we say, less secure way of interacting with Wayland Windows.
So that's something that I want to do as well.
There was on X something they did that.
I think it was released as something.
It's called WMII or WM2.
It's spelled WMII.
That's a similar idea, but on X.
I want to do something like that,
but a bit more barebones on Wayland.
Small scriptural window manager
with a 9P files,
just fastened interface with an actually like a layout.
Dominguezports classic title
when you manage.
Okay, I didn't even know about this one.
It's very old.
I think it might be the precursor to the DWA.
if I remember correctly.
And then some other things that I've done,
I mean, I ported, so Plan 9 is something that I'm inspired by.
I got this, let me get it, think pad.
It's not fun of good right now.
It's a massive one.
This is my dad's from like 2003.
Oh, okay.
It's like some old-ass think pad.
I have Plan 9 installed on it, but it's not charged right now.
Plan 9 is a cool operating system.
I really like it.
But the thing I like most about it,
even though it has good operating system back-end design,
is the Acme editor that they made is like really, really good to use.
I've been using it for like probably a year and a half now.
But the only way to get it on Linux is through Plan 9 port,
which is a fort of Plan 9 to Linux.
But Plan 9 port, as far as I could get it to compile,
only really supports X.
So I made a compatibility shame using the WLD drawing library
that takes Plan 9 port draw calls
and converts them to Wayland draw calls
and then I can get Acme working negatively on Wayland
and it's on my source site.
It's called Hat.
which is, yeah, I don't know why I called it,
but I forgot what I called it that.
But I don't say,
Wayland, a native Wayland Port of Acme.
So that's,
so it's sort of small things like that,
getting kind of niche-ish
X software that I like to work on Wayland.
Because I'm kind of an ex-guy,
like, to be honest,
at heart, I want a hotkey Diven
and like a script for Window Manager.
And none of that stuff really exists on Wayland yet,
even though it is a much better protocol.
So I'm trying to get all that, like,
set up, kind of.
Hmm. You're trying to like,
you're trying to like
show that it's possible
at least for your own setup
yeah and then use it
honestly
honestly that's all really cool
that's all honestly
everything here sounds awesome
one of the things that was brought up
in Wayland
FYI was
regarding desktop
portals
desktop portals
so
a desktop port was some kind of like
satanic like interface.
I don't really understand
like what it does.
Right.
It's like they use
Debus in some way to
take something called
using your screen
with pipe wire and then there's like a
divus interface and in some way that lets you
screen share on Discord
using Debus and
pipe wire and a desktop portal.
I honestly, I really try to
comprehend it. But when I can't
comprehend something, it probably means it's poorly
designed.
software. And I really think they should make a way of screen sharing without a desktop portal.
There probably is a way to do it. Because like I said, Wayland is infinitely extensible. You can
really do what you want. But the problem is when there's a standard like a desktop portal
for screen sharing or for other things like a file picker, the applications need to obviously
support it. So Firefox or whatever needs to support them, whatever you're using. So probably the
solution that I have to do, if I work something out, is create something that isn't.
stupid to screen share and then probably patch Firefox or whatever browser or thing to support
a non-Destop portal way of screen sharing and doing other file pickers such interactions.
But I think one of the main use of desktop portal is with flat packs because it's a soundblocks
application.
I really use flat packs.
So that's not like a big thing to me.
The main thing is screen sharing.
I know a lot of people want that.
Right now you can't screen share on SWC or any SWC-based compositor.
So that's something I would like to work out.
in the future, because desktop portal, like, it doesn't make sense.
It doesn't make sense to me.
Possibly a stupid idea, and I don't know if there'd be a sensible way to get
to work, but most of these apps obviously are able to capture your screen on X-11.
So, theoretically, what you could do is have your own compositor, and then sort of build
a shim between your desktop and the X-11 support that then somehow manages to abuse that.
That's an interesting idea. I didn't think of something like that could be interesting.
What I was thinking is to implement like a protocol kind of similar to just like a screenshot
protocol we have now and then sort of just like directly stream that into a patched version of the application,
which is obviously a lot more complicated because you have the patched the application.
But then there's also an interesting idea. I think I'll look into that, see if it's possible.
And you know, you can get a little thing.
Thanks, screen sharing, Brodie Robertson for the idea. You get credit.
Another alternative route, which is a dumber idea, but also has been done in the past,
you can
pretend like your screen capture
as a webcam
which will work for some applications
I think that's something
you could do now
if you get it set up right
it's just a bit of a pain
like people don't really want to do that
they expect things to work out of the box
that is the way the
when
Discord screen capture it wasn't working
that's the way that KDE was working around the problem
with Discord
they had like basically a little
Damon that ran in the background
that would just take the screen capture
and then convert it into a webcam feed
you know
that's the way I could do
get it set up now because there are times that I wish I can screen share. Some of those people
come into my RSC chat and they ask me, how do I screen share on SMC composite? I just tell
them why you need to screenshot? Who need to see your screen? That's terrible privacy. I mean,
but that's obviously not true. I'm just lying to them. I think that is one of the
problem with sort of trying out a lot. There are some projects I've wanted to try out and like
wanted to actually give a proper shot. But if there's not a way to screen capture, I just, I
can't daily driving myself. It's not really practical. I know it's practical, not practical for not
people. I mean, to be honest, I don't think SWC, I think I might be the only person
daily driving it, maybe, although I think there's the other person who's developing and
composed of them I'd be using theirs. But there are reasons why it's not super daydry for right now.
So the original SWC project, before we fault it, didn't have any subsurface implementation,
and there are some apps which I use subsurface very heavily, like Firefox.
And now I'm using Firefox right now, because I implemented subsurface.
surfaces into SWC. It took a long time. It's still not perfect, but it does work. So that's one thing.
And then the other thing is layer shell. That wasn't in there at all. So no bars worked.
It had its own protocol called SWC panel. Because this, by the way, SWC was made in 2013 before
layer shell existed. Right. Okay. That makes sense then.
So they had to implement their own protocols to do like a DWM style bar. And we were just using
that to like make our own little bars and stuff. But as of, I think two or was it two or three days ago,
I implemented layer shell properly, so it supports some simple layer shell clients like Waybar now.
And just over time, I'm hoping to update some of the protocols that are on old versions,
add new protocols that people expect,
hopefully get most of it upstream into the original SWC project,
because obviously he did most of the original code, Michael Forney,
and I shouldn't be taking credit for it all.
Everyone goes to the Michael Forney GitHub page and start all his stuff,
because he's like the goat. I just want to say that.
He's probably one of the best people, like, of programming in the modern.
He made so much good stuff.
So that's my plan.
And eventually I want to get it to the point where, like, you can just use it.
And it's easy and it's simple and it's not a pain and things just work most of the time.
And it will never be like WL routes because they have like probably like people are probably getting paid to work on that.
And they're probably, there are like loads of jobs to work on that.
This is just me and like five other people.
But I still do want to get at the point where it just like does just work.
And but also it is a little bit simpler approachable as a developer.
easy to make a compositor,
extensible, like code-based-wise,
easy to hack on W-R-R-R-R-R-R-R-R-T is massive.
It's 85,000 lines of code,
if I remember correctly.
W-R-R-R-R-R-R-R-R-R-R-R-R-R-R-N-R-R-R-N-R-R-R-R-S-M.
Now, they say 60,000 lines of code that you don't have to write yourself.
I think that was in the read-B-C at one point.
Right.
I did, I ran the clock,
C-L-O-C count lines of code command on it,
and it's like 80K, actually.
I don't know big than that, okay.
But SWC is, the original is about 10K and R4K is I think 18K.
And you still get most of the core.
It's very usable like for a basic window management system.
So it just shows you don't really need it.
A ginormous monolith megacode base to just get things working.
So yeah, that is my end goal with this, all this wailing stuff.
Yeah, that's something I've heard quite often with people who've like gone away from the WRO routes,
route where it's like W.Root's is very over-engineered what I understand.
Like it does kind of everything.
And if like that makes sense you're trying to be a generic library, but doesn't...
You don't always want to do everything.
Yeah, right, right, exactly.
Because it leads to a lot of code, yeah.
So there's only more focused and more approachable, like, for developers and simple to work on.
I just think it'll be nice.
And it doesn't really exist.
I mean, I haven't tried Smithy because I don't want to write Rust particularly.
Maybe that's easier if you like Rust.
I don't like Rust.
You can't even bootstrap the compiler anymore, I think.
That's like crazy, right?
But yeah, just a simple...
I don't think people made some composters for SWC using Zigg,
because Zick has a really good C interoperability.
So I thought that was cool.
I mean, Zig is like an alright language, I guess.
So, and that was cool.
I didn't expect that.
able to do that.
Every time I see someone making a composter with S&C makes you really happy because it's like,
it's just cool someone's using stuff that I made or help make to make something that is fun
and cool.
So, yeah.
So you wanted to be simple.
Is there anything that's sort of like outside of the scope of what you wanted to even
really be part of the core project?
Outside of the scope.
I mean, so the main thing I'd say is out on the side of scope is giving like full composite level
control to the compositor you make with the library like WR roots because I think that would just
make things really complicated.
So that's out of scope.
Originally I was planning to make things a lot simpler, like just do like literally the bare
minimum to get winners on screen because that works for me.
But I've realized with the help of some convincing of people that maybe that's not practical
for the majority of links users.
And even if I want it to be simple, I guess it's a waste of time if at least most people
won't be able to use it.
So, like, I wasn't going to implement layer shell because I thought it was, we already have something similar.
Like, what's the point? I wasn't going to update any of the protocols because everything, or most apps I use already work.
But I've kind of shaken our mind on that. I've done a bit of a U-turn because I think it will be better if you can keep, I think I can keep it simple while also keeping it, you know, up to date, modern wayland, works with everything, has decent protocols support and stuff like that.
So I wouldn't say anything is out of scope. It just depends how much time I have.
Right, right, right.
So something I've
I don't know if we
like properly covered it
We just
We just sort of like
Covered it as part of like a general rent
You've brought up D-Bus as being a problem
A number of times
It sounds like you have
Pretty much anything that touches Devas
You just like
I don't want to touch that
Yeah I don't want to use it
I generally don't understand D-Bus
I spent like multiple days
Trying to wrap my head around it
And I don't really understand how it works
At all
in any capacity.
I don't,
it's,
it seems like a very overcomplicated,
a very overcommunicated solution to what I thought is a very simple project,
problem,
which is like making Firefox put a notification on the screen,
like stuff like that.
Like,
I don't think you need an entire,
uh,
bus service to do that.
I don't see why Firefox can't just fork and execute some executable that,
uh,
as a layer shall collide with a message in it.
It should be that easy, right?
I don't know.
Am I crazy?
I feel like I'm crazy, but it seems so much simpler.
I mean, why has no one done this, right?
Though DeBas, I don't understand why it exists.
I feel like free desktop do a lot of things where the lower levels libraries that they make are actually mostly good.
Like obviously they have a big part in Wayland.
Free desktop, it's hosted on Wayland.
I mean, Wayland is hosted on Free Desktop.
And it's a great protocol, as I've said many times.
Or like stuff like Evdev or like all of the lower level stuff they do is really good.
But then when you get to the sort of like desktop level user space programs, I think they really like overcomplicating everything.
Like D-Bus is really over-complicated.
All of the stuff like the past, like with desktop environments, the sound they have for that.
I just don't understand why it's like this.
I don't understand why it's like this.
I feel like it could be so much simpler.
I have a kind of mindset that everything should be as simple as possible because I don't see why we need so much abstracting abstracting complication in computing.
and people think that having things be simple
means that like everything has to be like hard to use
right right right but I don't think that's true at all
you can have an intuitive like system that a beginner can pick up and use
while also having it be internally simple
but if you have a externally simple program
with an ex with an internally that is internally complicated
the universe will present you with a user who knows how to use the program
but has no idea how it works
which is not what you really want.
When you really want it's something that is externally simple and internally simple
so the user can easily use the program and also easily understand how it works
because that is how you're supposed to use a computer, I think personally.
I think we have a lot of that on lunch,
but you have people who are confident with an application,
have no idea how it works,
and then have a lot of opinions on the correct way the things should be done.
Yeah, you shouldn't have that opinion if you don't understand what is happening internally
because your idea or suggestion or opinion might just be impossible.
That's why we need to make software that is comprehensible, unlike D-Bus, which is incomprehensible.
Even someone like me spends a lot of time working with computers and looking at code.
And another problem with D-Bus, which has been mentioned many times by a variety of people,
some who I agree with, some are disagree with, is that D-Bass is just completely undocumented.
Like, they just lie in the specification.
They do just blatantly lie in the specification.
There are some things that they say, I'm lamented, and you try and do it,
and then no application will accept it.
Like, it just doesn't exist.
That, like, shouldn't happen.
Like, there's just pure incompetency.
There's no, there's no excuse for that.
They just isn't.
That is actually a somewhat common thing in free desktop.
And some of it is, honestly, just because it's been handed around a bunch of times.
And there's a bunch of old pages that are completely outdated,
but they're still being linked to from pages that you assume are the correct up-to-date.
page. So there might be good
correct documentation somewhere.
It's just there's a bunch of these...
Yeah, there's a bunch of these like weird
incorrect links just scattered
around the place.
I'm not good. I feel like I shouldn't hate too much
because it is, like it's free. Like these people
aren't getting paid to work on stuff. Like at the end of the day
we are all just hobbies to an extent
some more serious than others.
I do feel like there
could be a little bit more clarity, especially with the
debus stuff about making sure
that the stuff that you write on the website,
also works when you implement it.
I feel like it's a little bit bare minimum.
I don't know.
Yeah, what I end up hearing for anyone who writes a, like, new implementation is they just
go, like, for actually, for a lot of this stuff, and they just look at what, like,
KD is done and just like, the documentation is the implementation that KD has.
The code is the best documentation.
I mean, what, like, is no, though, because K, obviously what KD has actually handles
it properly, because KD is used in production on your laptop.
So, yeah, that's the only way of making a De Blas implementation.
Also, the original DeBus implementation was, like, crazily slow.
And now there are like five more, like Debus broker, I think is the one that's
used on most mainstream distributions.
And there's like, one in Rust, probably called like Debus RX if I had to guess.
But yeah, there are a bunch of implementations.
I feel like if they just made one competent implementation, it would be easier.
I mean, I'm all for multiple implementations.
It's something that I, there should be multiple implementations of everything.
It's something that I do often.
I just re-implement something in a way that I think is better.
But make sure that when you do that,
that it's in harmony with the original implementation
or you end up with a situation where nothing works as intended,
which is like, annoyance for everyone involved.
On the topic of multiple implementations,
we kind of touched on the idea of like fragmentation of Whelan.
This is something people often talk about.
It's like, you know, on X-11, you have X-Og.
So X-Og is the thing that is doing everything.
Wayland, you do have.
a bunch of these different implementations and you kind of like brushed off the idea of fragmentation
earlier i don't know if you wanted to like touch more on that i think the fragmentation generally
if the all inventations are mostly compatible or 99% compatible is obviously a good thing like
talk about most composers for waylon that people make are made with wl roots that's great but if i
want to make something simpler i feel like there should be an alternate implementation i can use
or if i want to make something in russ there should be an alternate implementation if i can use
on x if you want to do that you need binding and all this stuff it's not really native it's not
great and also when you have the freedom to use an accessible protocol and layer on top of it in
whatever way you want you can make whatever you want whereas with x you're limited to what the
server can handles for you and what the protocol handles the ex protocol handles for you so it's a
little bit more limiting in that way whereas wayland is people can sign as compared to vulcan
it's a very low level it's just a wire protocol that it doesn't handle graphics like it is really
bare bones. So you can layer anything you want on top of it. And that is what makes it,
in my opinion, great. When people say fragmentation, I just see it as more freedom to make the
thing that you want to make on top of it. Now, I'm not going to dispute and say that maybe there's
like one case where like it works on KDE, but it doesn't work on some other thing. Like, okay,
that's not great. But overall, I think it's a positive. Absolutely. That used to be a lot more
of a problem in the early days. It's getting a lot better. Like when, especially like you were saying before,
where you had SWC, which didn't even,
this was before layer shell,
so it had a custom way to do bars.
That's just, yeah.
Like, yes, Kewin has their own thing,
but like those are desperate environments.
Those are sort of intended to be used
with the shell they built.
With themselves, yeah.
Right, right, right.
But when we talk about things,
you know, that are built with Mia,
that are built with W.O.S.,
they're built with Smithy,
that are, like, you know, Hypland.
Like, all of these make use of layer shell.
So at this point,
that issue is pretty much just eliminated.
So that so is the problem I think probably the main problem with the way here.
This is one thing I agree with all the haters on is that the time it takes,
you've probably met, I think you've mentioned this in your video,
the time it takes and the insane statements people make in the discussions about when they're creating new protocols,
it's not great.
I think it could probably be done in a better way.
Like the session restored protocol took ages or the zones protocol, that was really needed.
The worst part about session restore is.
everybody agreed that it was a good thing.
It wasn't even like an argument about
do we want it. Everyone was just arguing
about the correct way to do it.
Yeah.
I think it's just stupid,
to be honest. And then the Zones
Protocol is something that was really needed.
The one where you have multiple, like, for stuff
like key cataracts, multiple windows, there are so
many people, I feel like they were kind of
brushing a software that wasn't a real use case,
but there are a lot of people who are using software that just needs
that support.
And it's just ridiculous not to have it.
Now, in my opinion, everyone just says there and complains about it.
What I would have done if I was using that software,
is I would have just made a protocol that does that,
implemented it into SWC,
and then just patched the software I was using to use it,
and then eventually maybe I would actually be what I was telling,
or I would wait until they made a real protocol for it.
But I think people just have to start taking initiative a little bit more, okay?
It's open source software, so you take the software and you do the thing you want to do with it.
Be solution-oriented people, okay?
Don't just complain, just fix it yourself.
That's what I think.
Yeah, there actually has been
Now it's time to get into like the
the Linux boomer talk
There has sort of been this change in
The kind of person that uses Linux
And this, I don't know when it happened
But if you look at the early days Linux
You know, before GUIs were you know
As widely available as they are now
Most people using Linux
If you're back in like the early 2000s
The pre-Abuntu
Let's just say pre-Abuntu
Most people using Linux at that point
were developers or developer interested,
something, developer adjacent,
they're most likely doing something in that space,
whereas now it's pretty much dead simple.
Like you can just install like a cashier-o-s or a door,
pretty much anything.
And you don't have to ever even open a text editor,
look at a line of code.
And that has completely changed the kind of person
that uses Linton.
At this point, you don't even need to have,
like a development background or any interest in development.
And that's, I think that's a good thing because it means things are actually in a good state.
But at the same time, you also have the issue where a lot of people don't even realize that
the only reason this exists is because people are actually writing a code.
The only reason this exists is because there is this ecosystem of volunteers who are trying to make something.
I think it demonstrates that from a huge perspective, Linux at a really good point where
like anyone basically, I mean, I installed like Debbie and mate Marte on my friend's computer and
he's like using it for school and he was using it for a bit and like that so it shows like
like you can just pick stuff up and do it but at the same time it once a person is using
Windows or some other operating system like Chrome OS they aren't really considering they
say like, oh, think of all the paid volunteers of Microsoft who worked on this,
who worked in the operating system.
But I think maybe, I think it's something that some of the desk environments have been doing
where they have, like, the little donation, medication that pops up like once a year.
I think it's kind of good to remind people that, like, this is free software, open source
software, made by normal people, mostly, or just normal people.
So, and you should treat it in that way.
and if you have a problem, don't just cry about it, maybe learn, try learn something or try
help someone or report it, like, to take a bit of initiative, I feel like that's the way to go.
But also, I feel like a lot of the, I really want to make, at some point, I use a friendly
desktop environment that isn't either the overcomplicated.
I feel like that's something that doesn't exist.
I mean internally overcomplicated, because they all use like debass and GTK and stuff like that
that I really don't like or agree with.
So I want something that is like a Linux-Mitt-style thing where you can just pick it.
up and use it and it's easy, but it's not ridiculously terribly designed. I do know if I'll be able to do
that, to be honest, because those sort of projects take a lot of people who know about interface
design and who know about making things easy. I find it hard to make things easy because I'd like
to make my life really hard. Hmm. So, but that's something I want to do because I feel like at the
end of the day, like the more people using a free operating system, the better. Whether it be a Linux
or a BSD, I feel like that's also underappreciated. Make sure you're something.
software works on all Unix's guys. It's important. MP, at least. I think you can definitely say that
like, because a lot of these big desks, like, you're going to own, your KD's things, like, they've been
around for a while now, you know, going on 30 years very soon. Um, there has sort of been this sort of,
like, you've had these rewrites and a new toolkit. You've had this like, feature creep over the
years. And obviously, you know, pulled back a lot of features over the years and tried to, like,
like simplify things, but you're going to have that sort of problem where it is difficult to
wrap your head around a code base that has been around for that long, that whilst they might
have had some like general guidelines and I'll write the code, it's not something that was,
you know, fully architected from the start. We have like build documents on how to extract different
components. It's mostly just done through vibes, done through code guidelines and adding
things on as individual developers want to add things on and then developers review the code,
like, oh, that makes sense. And it's mostly fits together and mostly works. But because of that,
I think a lot of people do find it, especially for the established projects, find it hard to,
I guess, see how to get involved in that. And,
Yeah. Yeah.
That's something I really struggled with and I was getting to bring it.
It's kind of hard to just like make a PR like or like you or like make a contribution.
Like you don't really know where to start or you don't really know what like an open problem is.
I try and make my projects like approachable to contribute to.
I hope I'm doing that.
Everyone who's watching like make something with my stuff like I'll be you can email me.
You can contact me like I just want to I want to make sure everyone can I contribute.
That's something I'm committed to.
That's why I mean I read code bug is terrible.
It always goes down.
But I keep my stuff, at least my distribution stuff on codebug because it's easy to make a PR.
It's not as easy to use the Git, send email, pat thing, or source that.
So I like to keep some stuff on codebugs so people can easily contribute without having to learn how to use Git too much because Git is complicated, right?
But contribution, making contribution successful is something that's important.
And there are a lot of like, I know when I was starting to get seriously into Linux programming, I mean, I was always programming.
When I was like doing Linux exchange programming, I was just making my own stuff and I was never like,
contributing to other people's stuff, which maybe has led to like this cool stuff happening,
but it's also important. Like there are all these projects out there, like,
there are loads of people who are solo working on like cool stuff that they might not finish
if they don't get contributors. So like, look out and it's never that hard to reach out
someone like to try and make a contribution. The thing you said about
architecting like how it just kind of builds up in these layers. But I think the reason
that happened is because when you, I mean, I watched this video, it's a, I forgot the guy,
he's like a really smart guy.
It's, I think it was called
the one unbreakable law and software.
And he just explained that
that software takes the shape
of the organization that's working on it.
So when you have like, I know,
Microsoft isn't that organized,
but let's take Microsoft an example.
They have all these teams that like,
Molly Rocket?
Yeah, that's the channel.
That's not the guy's name,
but that's his channel.
Okay, yeah.
Um, we have a,
like, say they have different software teams
working on like different stuff and they kind of split it and you kind of get that that shows in
the software where the thing is abstracted like let's let's say we have a sound team and that sound
team is working on three different things or the sound team is split into three different teams so
each work on three different things that comes out in the software where it might be abstracted
abstracted in three different ways with open source projects when it's not like a super centralized
organization what generally happens is there's a developer and its contributions to a sort of
just going on top on top on top on top so that I think that's why I love open source software
ends up in this sort of pile of trash
like software architecture
where it's just stuff laid on top of stuff
on top of stuff on top of stuff
because the way that it's organized
is literally just a guy
and then a contributor going on top of that
and another contributor on top of that
and on top of that
where people are really working in
like he synchronized teeth
so that's why we have this problem
in Linux and open source of like
poorly architected designs
in my opinion
when you talked about like
doing stuff yourself
I don't you know
People talk about this issue of, I don't think it's an issue.
I think it's people just complaining because they're like complaining,
where, you know, they do like that.
Where you have a lot of these sort of re-implementation is the same thing, right?
Like the 30, the 300 different implementations of like Neufet, for example,
or all of these, like, you know, I, like, this is VIM but slightly different text editor,
or you've seen how many terminals are out there probably, where...
Too many.
I don't, like, it's not a...
bad thing, right? I think people assume
people are weird
with it, people are really weird with like
code being worked on where it's like
they assume that
the work that you've done
on one project is sort of
that work would have been
transferable into another project
right, where if you
weren't spending time on your thing
you would have spent time on this
other thing that was maybe more
like widely used whereas that's not
that's not really how that works
It's people are working on the things they are personally interested in.
Happen it about, yeah.
That's like probably, I guess, the reason why most of you recommend stuff.
Like, I could, I don't know, I could contribute to W.R.
So, like, add a patch that makes it work without U-Dib or something.
But, like, it's more interesting for me personally to, like, sort of make a new or a new-ish,
because there's a thought, but new-ish thing rather than, like,
have to contribute someone else's massive code-based.
So that is why people do it.
At the same time, like, you should also try.
If you have code that's useful, you should try and contribute back.
Oh, sure, sure, yeah.
Yeah.
I have a lot of patches for my distribution that's like removing Bison dependencies
and replacing it with standard yak.
I might try and upstream some of those.
I don't know if the projects will accept them.
I don't know if they're interested, but I might try.
Because I feel like that.
Like, if you have something that's useful, like, just show it to people.
Like, see if they want to upstream it.
I neglect to do that for like two months when I was working on my fork of SWC
and then the microphone, he just found it one day, and he was like, he emailed me, I felt so bad.
He emailed on the mailing list.
Like, I feel quite sad in that, like, maybe you didn't want me involved.
I had said like a whole long email, like, no, no, no, that's not how it is.
It's not idea what you involved, I just forgot.
Or I'm not very good at reaching out.
So you should always reach out to people if you're working on their stuff.
It's important.
And that's something I've learned, definitely, over the last few months or so.
I will say when you're doing stuff by yourself, it does avoid that a complexity of, like, interpersonation.
personal stuff, right? Where if you're trying to get it upstreamed, like this is probably going to happen with the, with the yak stuff, where you're going to try to upstream it, and then you're going to justify why it's, why it's a good change, and you're going to have projects where maybe they're interested, but then there's going to be arguments about whether or not we do want to do this. And for stuff like that, maybe it's not super complicated, but when it is some more like fundamental thing, like, as we're talking about with the Wayland Protocol stuff, you know, the way, the problem with most.
Whalen protocols isn't technical.
You can, like, documenting a protocol, doing all the XML, all that stuff,
relatively straightforward.
Yes, there's going to be some technical challenges on some protocols.
Most of the issues are more like these interpersonal things,
trying to justify to other people why this is a good change,
especially for those ones where it is a bit more of like a controversial protocol.
And doing stuff by yourself, maybe you can...
Yeah, maybe you can say,
bit of a cop out to not have to deal with the people, but it is nice to not have to deal with
other people.
Yeah, when you scroll through those discussions on the free desktop GitLab about the
whaling protocols, man, I don't want to be dealing with that.
That's why I'm never going to try and contribute this probably.
They're not logging over there about just like random, very specific things that no one's
ever going to think about when using their computer.
But hey, I guess someone has to do it.
Like, with the Zones protocol, for example, like, what if a window,
was to pretend to be a password prompt and then place itself over another password prompt.
It's like, yes, that could theoretically happen.
Do you have a documented case of it happening on Windows or on X-11 or on any other systems?
Like, yes, it could theoretically happen.
But like...
It's a classic case.
A lot of people do this where they try mitigate security problems that don't actually exist.
Like half of the Open BSD's security mitigations are just like, they're mitigating a problem that could theoretically happen, but no one's tried it, but it might happen.
It's basically the same thing with that, like, well, what if they make a fake part of a window?
Like, okay, they could, but will they?
I don't know, maybe.
But, I mean, I would say better safe and sorry, but it does add, like, a lot of BS for no reason,
a lot of, like, unnecessary conversation and complexity to the protocols and stuff like that
or to the operating system in the case of open BSD.
But if you are, I mean, I know Whalen has a big focus on security.
Security isn't something, like, I'm, like, huge on.
But I don't know.
I guess it's worth it if it's going to make our lives more secure, maybe, if those password
prompts can't appear.
I'm not so sure on it.
I don't know.
I feel like if you're in a situation where somebody, well, firstly, like, with Wayland,
you can't see the other windows with most composites anyway.
So you're in a situation where a password prompt knows where to place itself on your screen
to pretend to be another password prompt.
I feel like the person who is doing this
has quite a bit more knowledge about your system
than...
Yeah, well, they have enough knowledge about your system
where there are more dangerous things
they could probably go after.
For example, it's like,
have you seen any of the system D birthday stuff
people in the argument recently?
Yeah.
Yeah, so the argument...
that Pottering made in favor of adding it is applications that aren't sandboxed can
like just see every file on your system anyway and uniquely identify you as a user so the
birth date doesn't actually change it so it's like the birthday is sort of this that that was his
logic right his logic is the birth date's a sort of a red herring problem until you worry about
like sandboxing all your applications and not just having everything just
you know, read every file in your system.
Yeah.
Like, it's kind of a non-issue from his perspective.
Do I agree?
I mean, the thing with the system D, like, age verification, is I'm pretty sure you could just edit.
If you have re-access, you could just edit your age, right?
That's how they're going to do it.
Well, yeah, no, it's, it is an optional field that any, like, you can just edit, pretty much.
I mean, here's the tip for anyone who really cares by age verification.
This is in no way biased.
If you want to avoid age verification, you should, use, you.
user distribution that doesn't have D-Bus or SystemD,
and then there's no way they'll be able to verify your age.
Okay, I'm telling you,
because the two ways that they've proposed to doing it
is a D-B interface and a system-D user DB field.
So if you have either of those things not on your system,
they're not going to be able to tell how old you are.
I promise, I promise, okay?
That's my opinion on the matter.
But, I mean, the age-verpeat thing was really scummy from California.
I do think that the open-source project should have more of a, like,
make-me attitude.
Like, I don't see why we need to force ourselves to comply with this, like, if it's volunteer projects.
But at the same time, I guess people don't really want to get sued, right?
My distribution is illegal in California.
So, yeah, I guess that's the end of that.
Yeah, I agree with you saying that.
Like, at the end of the day, it's just a whole mess.
That's one of the it.
It's just a whole mess of a situation because, you know, you can say, like, just,
don't comply and don't like do all this.
Like, yeah, I agree.
You probably shouldn't just,
especially when things are still being discussed,
I do think they just jump the gun
and merging it pretty much as soon as possible.
The law probably isn't even an effect yet.
Laws take ages to be in effect.
Well, yeah, that's the thing, right?
It's like, we can also say that, like, just don't do it.
But also, there's no compliance being done right now.
So it's like, there are these, like,
there are these small distroses
are, like, posturing about, like,
we're never going to do the age verification.
Like, sure, okay, sure.
I believe you.
Let's see what happens when the fine has sent you, right?
I'll believe you for now, but I don't, look,
until you show me some proof that you're not going to fold immediately
with any sort of pushback, you know.
I saw one, it was actually no other links.
I think it was Nomad BSD or one of those, like small BSDs.
They changed their license.
It's technically no longer an open source project.
Oh, midnight.
Yeah, their license says that you can't use it if you're in California.
I think that's hilarious.
For California.
What are they going to do if they're a very strict license to beaers?
I'm not a license to bea at all because it's kind of impossible to obey some licenses
when you statically link things.
That's another reason why I make my life really complicated.
Like FFMPEG, I have to link a GPL library statically, which is like illegal, basically.
Well, I think it's a gray area, but it's quasi illegal.
So there are legal things that I'm doing.
Should I be admitting on the internet or Richard Stalman send like his agents to like kill me and help me down?
It's not like Nintendo.
They don't, I don't think I have agents.
So they do do a bit of doing people, but they don't have, they don't really have a phone.
Do it so often.
But I think it's kind of a bad, what the Midnight BST people did.
It's understandable, but I think it sets a bad precedent like overall.
Like it's not really something we should be doing.
Even though obviously people living in California can just like ignore it.
It's just words on a screen.
but it's so I don't think it's not that a bad precedent like are we just going to start excluding
I think they said their plan was to implement age verification in some way but
personally I think there should be a little bit more protest like these open source projects
we're not corporations we're not um these laws are I guess if I was if I was appealing to
lawmakers I would say they're anti-competitive I don't really believe that but that's what I would say
if I was appealing to lawmakers and it's I don't think it's really fair to enforce that
on volunteer-run project.
So there should be more protest.
If you live in America and you have to deal with this bullshit,
maybe like cool up your congressman or whatever you have over there.
I think they'll have it in Brazil now.
It's really bad.
The world's kind of going into a bad place.
I hope we can get this sorted.
But hey, until then we'll have a system D,
age refrication thing, I guess.
Yeah.
Yeah, it's...
I don't know.
I'm in Australia, right?
I have, you know, we have our own problems down here with all that mess.
The fun thing with the, the funding with the Australian stuff is they've basically just
admitted that none of it worked.
So.
Wait, what do they have in Australia?
Oh, you don't know?
Yeah, yeah.
We have social media.
Yeah, yeah, yeah.
They had an under 16 social media ban.
We have, I'm in the UK.
We've got like, uh, couldn't tell.
It's just a shitty law, like, uh, like child safety banning certain websites for, uh,
under 18s, but what it led to, the one thing, it doesn't really affect me day to day,
except that like, I don't know, I can't join some weird servers on Discord.
But apart from that, there's one website, it's repo.
I think it's repo.org.c, there's one open source project that I constantly,
I think that's the website, that I constantly need to download a tarbill from.
And it's now blocked in the UK.
And I have to find a mirror that it's really annoying.
So please, any politicians in the UK, please revert this law so I can download my tarbill from.
Thank you very much.
That's so...
I...
Yeah, how'd that got included?
I think that's the other thing.
Like, I've seen sites also jumping the gun here
that are not even remotely affected by the laws.
Just like, ah, just make sure, be safe.
Yeah.
Like, I've seen a lot of stuff where it's like,
we might be affected by the law.
So, fuck you.
We're not going to show you the website anymore.
It's really annoying.
People should be more angry and protesting and saying no.
But also,
that has its own problems because you could get sued at any time.
But hey, this is what we live in now.
You talked about not complying.
And that's something a lot of people aren't really talking about with the whole
age verification stuff.
Most of the bills don't actually have any punishment for individuals.
It's not even like written in the bill.
It is entirely targeting the operating systems.
You avoiding it, there's no reason to give them the information.
I mean, what they're going to do?
Like, you lie about your age and then they like say he's president.
Like, so, yeah, Windows those type of laws, they target the organization because it still
incentivizes the organization to force it on the user, which is like, obviously, still annoying
for the user.
But, yeah, you can just avoid it on if you have an operating system that lets you edit your age
freely, which I guess probably Windows and those ones probably won't be doing that.
But hey, I haven't touched that in a long time, so I don't want to think about that.
Yeah, or just, I don't know, build your own operating system.
From scratch.
Yeah, exactly.
one day I'll do that maybe if I have a lot depends how much time I have
so from the um definitely not a lawyer perspective what are the issues with
statically linking when it comes to like GPU and stuff like that
from what I understand so the GPL when you um when you link a GPL library
you need to make the light I think it's something about you need it needs to be you
need to redistribute the library code as freely modifiable but if you distribute a static
binary on its own with a GPL linked library, you have to provide to the user everything they would
need to modify the GPL library to their liking and then relink it against their program.
I'm not a lawyer. That could be completely wrong. But from what I understand, it is hard and it was
slash illegal slash not allowed to link a GPL library statically, which is why one of the reasons
why I think that LGPL exists. I mean, I don't like that. I don't think most of the. I don't think most
the GPL, the thing GPL licenses are not that great, but the LGPR, I think, allows you to
bypass that restriction, whereas the GPL doesn't. So, if I start a binary repo for my distribution,
which I'm going to soon, and then I distribute an FFMPEG binary, I believe that I am breaking
the law in some manner. But I hope nothing bad happens out of that.
Should be fine. Should be. Yeah, probably. Was it?
Yeah, so that's another thing.
I don't recommend people to use licenses that restrict the user's freedom.
The GPS is supposed to protect the user's freedom from what I understand.
But I don't think in practice it does that from my experiences with it,
because you can't start to link things with it, and it makes it.
It just kind of makes life of pain for everyone.
So you shouldn't, I think there are cases where it has been beneficial.
Like, obviously the Linux kind of probably wouldn't be where it is today without the GPL.
But I'd say for like the majority of software, like 99% of the tide.
I would recommend to use a license that just kind of do what you want.
That's my opinion.
I used to be a big GPL guy because I'm like, but the corporations, they're going to steal my thing.
But that doesn't happen most of the time.
Again, with the exception of huge things like Linux, most of the time the corporations, they don't really care, man.
They're going to give you code back anyway, probably, even if they do care about your project.
So use a license that makes life easier for everyone.
That's what I try and do.
What is your what does your do you go to your license?
IFC or just like nothing.
Okay.
I don't know much about ISC.
That's a, that's a fun choice.
If anyone who doesn't know,
that is the license that pseudo uses, I believe.
Really? I don't know that.
Oh, no, you do.
I chose it because it's like MIT, but with less words.
And the less words, the better, right?
Yeah, fair enough.
I think ISD kind of sounds nicer to say than MIT, or it looks nicer on a screen.
That was also another consideration, a very important consideration when choosing a license.
I think the reason licenses really don't matter most of the time is because actually it's kind of all just doesn't matter.
It's sort of just a thing people like to spend a lot of their time thinking about, like the legal ramifications.
But really, it's just code.
And unless your project starts to get like serious traction, it doesn't really matter what like whether you
have a license or not. I know it's like people like say like, oh, but technically it's all right
it's reserved. But it is just sort of like a, I'm not going to say made up, but like it is,
it doesn't really matter. It's just a thing people like to think about, spend a lot of their time
thinking about. But I see as the license I choose generally because I guess people get angry at me
when I don't put a license in the repo. I don't know why. I don't think of any reason why.
Well, at the end of the day, right? Like, unless you have a lawyer, you're not enforcing the
license. Like, it doesn't matter. Like you can, it.
License are a fun one, right?
Because, like, you can go to another open source project.
Like, hey, you're misusing the license of my project.
And they'll be like, okay, yeah, sure, I'll fix that.
But the people you actually are using the license to protect your code from
probably don't care, right?
Like, there have been a ton of cases of, you know,
people in jurisdictions that just don't give a shit about licenses.
And they're just like,
GPL code?
What's that?
Don't know.
Who cares?
What's the GPU?
Yeah, you can even do that
like yourself.
Like, no, if you,
if you fork a GPL project
and put it on Gtab and change the,
don't put it on GitHub, actually.
I shouldn't have said that.
Put it on a free,
non-microsoft owned GIForge.
And then you change the license to like some other thing.
Like, no one's going to do anything.
Like, you'll be fine.
So it kind of is all like a made-up mental game
that we open-sort developers like to occupy our minds with,
probably because there's not much else going on in our lives.
But, um,
Uh, yeah, licenses. They're interesting. They are interesting.
Hmm. I know, I think it's a fun topic. And obviously, like,
like, it is, it is important to an extent, but I do agree. People do,
especially when we start getting into the, we start getting into the niche,
the niche differences between the very similar sorts of licenses, like, oh, are you using
BSD3 clause or MIT or ISC and it's like
they're all the same all that permissive licenses are the same
except the original BSD that says like any software
that uses this must say in the advertising material that it came from the
University of Berkeley which I think is a really funny clause
to pay a license like if you use the software and you advertise it
you have to put my name on the thing I think maybe I should start doing it
and it can say everywhere like shrub that would be great
But yeah, I think they now, FreeBSD and all the other projects who are originally using that Berkiew license, like, remove that specific laws, because it's kind of a pain for everyone.
Yeah.
Yeah.
You use licenses that make life easy for everyone.
That's the best thing to do.
You said that the Linux channel probably wouldn't be where it's at without the GPU.
Have you ever actually looked at the original Linux license?
I have not.
I know it was like some even stricter copy left, if I remember correctly?
Yeah, let me see if I can quickly find it.
original Linux
Colonel license
It was something that Torvald's
wrote himself
Um
Not a good idea by the way
That's another piece of life
Don't write your own license, okay?
Yep
Yep
Yep
Don't do that
Uh
Okay, thank you
AI nonsense
Give me the actual
license text
Google AI summary
Uh
Okay,
all right
It was merged
into the readme
It wasn't even
Its own separate
document at this point
Jesus
Thank you
Torvald
very useful
where the
where is it
okay here we go
copyright section 2
just in the middle of the document
the kernel is
the kernel is copyright
1999 line is 12 volts
but all or part of it may be redistributed
provided you do the following
full source must be available and free
if not with the distribution
then at least on asking for again it's such
like a
weird way to
a weird way to describe it.
Copyright notices must be intact.
In fact, if you distribute only parts of it,
you may add to copyrights as there aren't copyrights in all files.
Small partial excerpts may be copied without bothering with copyrights.
Again, that's just like not an illegal text.
It's like, what is small?
Yeah, a small redistribution of the entire code base.
And then the most important one that definitely Linux wouldn't have been,
where it's at. You may not distribute this for a...
Oh, distribute, it has a spelling mistake. You may not distribute this for a fee,
not even handling costs, so you just weren't allowed to sell the kernel.
Non-commercial. I guess that makes it not open source, if I remember the definition
correctly. Yeah, yeah. That's funny. That's pretty funny. I mean,
the thing that, like, I don't like the GPL license. I think it's a really bad license.
But at the same time, you look at where BSD is at today. Sony is using it in the PlayStation.
Nintendo, I think, used the networking stack on the switch.
It's being used, Netflix used it in their stack for a long time.
They probably all could have made significant contributions,
but they obviously have decided not to.
That is bad.
I think that's really bad because BST is a much better designed operating system
than Linux.
It's just not as usable for daily use.
Now, maybe if all these corporations would,
out of the kindness of their heart, contribute to it,
then it would be better.
But it's not.
So that is one thing where maybe the GPS,
has had a slight positive effect on the world.
But for most other use cases, it is pretty annoying.
Things could have been very differently in that regard.
So.
A lawsuit, right?
Hmm?
Like the AT&T Unix lawsuit and like Ginnu were going to use the BSD kernel,
but then there was a lawsuit and they didn't use this.
They used Linux instead.
Is that what you're going to refer to?
No, I was going to talk about the Ganoo operating system
where they were building the,
they were building Heard, which was,
if you look at the original,
the original email that Linus Sentow
was like, this is not going to be big and serious like,
because everyone at the time was like,
this is going to be the free operating system.
It's going to be amazing.
But originally they were going to use,
I believe it was 386 BSD,
and then Storm was like, no, no, we're not doing that.
We're going to wait for the mock kernel
from this university
because it was like a micro-colonel,
but it wasn't even open,
source when he wanted to use it.
He was like waiting for...
It was like still in the research stage.
So it delayed things for like six years.
And then by the time it was ready,
people had already started using Linux.
We already started...
I think Debbie and Slackware were already out at a time.
They even got properly started.
I mean, microcuttals are hard.
They're really hard.
That's proven by the good you heard still like only working 78% of the time
after 30 years.
that's like a real figure.
They can only build 78% of the Debian package deposit
which I guess is impressive but it's been 30 years man
like come on, beat up a bit.
I mean people have made whole operating systems in that time
but microchernels are hard
like I think Apple the Mac OS is like a weird quasi microchernel
and it kind of works but it's also just like a micro kernel
like with BSD the entire BSD like hammered onto it.
Oh yeah that's another thing that's built off of
BSD stuff.
Oh yeah. Another stolen BSD
developed. I think I want to
like all the free BSD developers do these Macs
anyway, so I guess they get thumb kick out of it.
But
Free BSD isn't even a real BSD because they
have like a hundred compatibility ships of Linux
to make anything work. So it doesn't
even count. It's basically
a Linux distribution with a different kernel
which I guess makes it not an interesting distribution, but it's
so close to Linux that it's like funny.
But was I even
not, what's it saying?
Um, something about BASD.
You were talking about FreeBSD then.
Complaining about FreeBSD.
Yeah, before.
Uh,
MicroC are quite hard.
Make the work because the IPC.
Now, IPC is hard.
Debust is slow.
Debust is IPC.
Mercocondles also use IPC, but for drivers
and they are generally slow,
which is a reason why I don't think
they've ever taken off.
But, like, conceptually,
it's a much better design than a macrocona.
I mean, having drivers in user space is nice.
Having as much you can in user space is nice.
But we, we,
kind of here now. I think it'll take a very long time.
I'll probably have a long,
great bid like Richard Stalman before there's ever in Michael Colonel
that works in production.
Production being on my laptop once again.
You said just before that you think the BSD is better designed.
Where, what do you, yeah?
Linux is massive. I mean, it's massive for a reason,
because it works on everything, like literally on everything.
I don't like massive things. I think that you generally ugly.
I think Linux is a pretty ugly beast, but it's a very useful beast.
And sometimes I need to do schoolwork and homework on Firefox.
And Firefox is a complicated program.
And while it does work on NetBSD, which is the only BSD that I'm willing to use,
it's kind of a pain to set up, and it's an old version of Firefox.
And there's all these other problems with BSD.
So that's why I generally use Linux.
But purely from an operating system design standpoint, BSD,
I'm talking specifically about Net BSD because it's the one that I like.
It's a much smaller code base.
It's specifically like the least desecrated corpse of research Unix.
Like it is like kind of like the last real Unix.
The code base is nice to read and look at.
It's simpler.
Conceptually, there's less subsystems upon subsystems upon subsystems.
But again, like it will never be where Linux is.
I don't think it ever will be.
Or it'll be a long time and by the time it gets to Linux.
Now Linux will be in like a whole different place.
although, you know, I'm not really a fan of Rust in the kernel.
My opinion on Rust is like, I don't really like it.
I don't really know why.
I'm not going to, I think the, I really don't like that the compiler is so hard to bootstrap.
That's the one reason I don't like it.
But, like, if it ever came to a point where I would have to get a Rust compiler on my system to build the next kernel, then, which I think is probably going to happen soon, but someone will probably patch out.
Anyway, then I might consider moving to BSD more.
but unfortunately it's not really a usable system for me personally who's as someone who does a lot of
software development and a bit of gaming um so that's why i don't use it but the user spaces having
the user space in development with the kernel is always a good idea uh that's one reason having
most of having everything developed as what having the libsie developed with the kernel it's
again also a good idea now because linux has been developed for so long they're kind of
is harmony between the Libcy and the user space and the kernel only if you use the one that's
the Gnu Lipsi and the Ganoo user line. Now, there's Muzzle, which is one of the best programs,
one of the best pieces of software ever, in my opinion. It's amazing Lipsi. But there's a lot of,
not a lot of actually, but there are a few things that don't work with Muzzle. Um, I do, I,
I don't think I've ever said the word muzzle in real life. How do you even pronounce it?
Is it muscle? I assume it's muscle. I don't know. I don't know. I think it's muscle. I
actually have no idea.
Anyway.
So that's why like what I thought I do like kind of the swapability aspect of Linux.
Like you can use a different user land or a different Lipsie or a different.
And when I say Usaland, I'm referring to core utilities mostly.
Or different Libby or stuff like that.
It also means that like it does feel a bit disjointed and a bit less unified as a system.
And a unified system is maybe in some ways better.
So that's why I think BSD, two reasons.
The code quality is nicer.
It's smaller and simpler, less subsystems upon subsystems.
Generally, a simpler build system, and it's more unified.
Those are the reasons I think BSD is there.
But there are other things I can't do in it, like run a virtual machine with kind of virtual machines.
So I'm not going to use it as a daily system.
It sounds like your general, like, overarching goal is to have your software be as simple as possible.
And like simple and easy to understand, but not necessarily.
simply simple as in, like it doesn't do much, but like easy to understand code and not just,
you know, not something that is trying to account for every possible situation.
Something that works for me and for people with so many use cases to me and it's like just
comprehensible. I don't think things that are comprehensible. I look to understand everything.
That's why when I don't understand something, I start making a replacement for it, which is probably a bad habit.
But yeah, that's my general, I guess, stuff where,
philosophy. Although people who say they have a software philosophy have too much time on their hands,
but you should go outside and touch graph. But yeah, that's mine, I guess. Maybe I should cook outside
and touch grass. Yeah, probably a good idea. So, on that note then, like, what,
sort of going back to the whalen stuff, like, what is, what is your criteria then for, like,
good Wayland software? Because, you know, you've, you've some examples listed on here for
random utilities, but, like, what, what, yeah, what goes into that sort of idea then?
So the things on that page, I guess, are mostly
just a shill of my stuff and stuff that is affiliated
to my stuff.
Yeah, that I'll do it.
And I'll do it.
Right.
And I look to a few other things from there.
But generally, because
Whalen Software is kind of such an overarching thing,
like Firefox is technically Wean Software.
Discord, the electron client is Whelan Software.
Oh, hello.
Do you see?
You might still be able to hear me, but I can't hear you.
Thank you, Discord.
I love it.
It's gonna come back.
Yes, no.
And...
Okay, so this is a super scuffed way to finish this.
My internet's currently out,
so I'm currently playing the Discord audio
from my phone into my microphone.
Yeah.
But we had two conversations.
So, it's probably talking about for the Wi-Fi camera.
But I guess you can finish that off and then call it a day.
I believe we're talking about
something about Wayland
Um
BSD staff and it's about
I don't remember
But
This is the
Apologies for the ending here
Like my
Two hours of footage
Around two hours
I do that's pretty good going
Yeah
It was an hour and a half
Yeah
A conversation of some manner
On the internet
So
That's pretty
Pretty good
thanks for having me on
it was awesome to talk
and I'm watching your videos
for like probably for like
three or three two three years maybe
oh nice nice
yeah
it's cool to be here
and it was also cool to like
be talking about stuff
that I'm interested in
something maybe I don't get this often
so thanks for having me
and I hope the people
I've enjoyed watching me
ramble and talk aggressively at the screen
about code and numbers and software
and things
things of that nature.
If people want to, like, check your stuff out, where can they go?
We are on IRC on IRC.orgio.com
hashtag D-E-R-I-V-E, Dereve, which is my name of my distribution.
You can follow me on, I guess, Mastodon is probably the best place.
I'm Shrub 900.
I'm also Shrub 900 on pretty much every single social media slash non-social media
slash anything in the world platform.
So if you want to contact me on, like,
no, LinkedIn. I'm joking. I'm not on LinkedIn. But you can, you can contact me pretty much
anywhere from Scrub 900. And if you want to check out on my projects, they are under the name
Shrug 100. They are trying to split between Codeburg and Source Hub. But if you want to look
at code, that's where to find it. Okay. Yeah, pleasure to have you on. I hope,
I happen to have you on again in the future. Hopefully next time we don't have this happen.
Sure, sure. Yeah. Yeah, no, pleasure to have you on. This was a fun episode.
You're clearly incredibly passionate about this and honestly those always make the best episodes.
I hope that it's enjoyable to watch as much it was to make.
I guess I guess bye.
Yeah, I'll do my outro and then I guess we'll sign off.
Okay, cool, cool, cool.
Okay, so my main channel is Brodie Robertson.
I do Linux videos there, Six is Chase's week.
Sometimes I stream as well.
I have got the gaming channel, Broidion Games, where usually
my internet doesn't go out. Sometimes, I guess
it might. And if you're watching the video version
of this, you find the audio version of basically every podcast
platform at Tech Over T,
and you can find the
audio podcast on pretty much every
audio podcast platform. Search Tech of Tee there,
and you will find it. I'll give you
the final word. How do you want to sign this off?
Um,
I hate Debust, and good news.
Perfect.
