Tech Over Tea - Fixing KDE Plasma One Issue At A Time | David Edmundson
Episode Date: October 20, 2023Today we have the one and only David Edmundson a frequent KDE Plasma and QT contributor who's been responsible for things like the XwaylandVideoBridge and the recent KDE robustness changes. ======...====Guest Links========== Season Of KDE: https://dot.kde.org/2022/12/14/join-season-kde-2023 KDE Twitter: https://twitter.com/kdecommunity/ KDE Website: https://kde.org/ Blog: http://blog.davidedmundson.co.uk/ Github: https://github.com/davidedmundson ==========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 Supercozman https://twitter.com/Supercozman https://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 always, your host, Brodie Robertson, and today, my voice is dying, apparently.
We're not restarting that.
I, uh, we have a KDE person on today, David Evanson, welcome to the show.
How you doing?
Hello.
I'm doing fine, thank you very much.
And luckily for once-
I've got my, I've got, I've-
Sorry?
I've been looking at all your fun i've been looking at
all your thumbnails got a suitable shirt on now i just need to do irrelevant faces
see the thing is people don't realize how their face moves sometimes like i none of those like
thumbnail pictures i've forced they've just been i found weird frames throughout the video
and they just happen to work weird frames throughout the video and they
just happen to work pretty well like the ones I do for my like actual main
channel stuff like those are planned but anything on this channel entirely just
off the cuff whatever happens there scrub through the video I find something
like hmm I think that works with that what I was gonna say before is my
internet's actually working
Stably today which is
A nice change so hopefully
Everything actually works
There's no thunderstorm today which is good
Um
So let's just see how that goes
And hopefully nothing changes there
So if you freeze
It just means I've bored you to death
Rather than an internet problem
Yeah well look let's make sure that doesn't happen Um So if you freeze it just means I've bored you to death rather than an internet problem.
Yeah, well, look, let's make sure that doesn't happen.
Um, people may not know your name, but they may know some of the stuff that you've been involved with.
So... we... do you want to get started on that, or do you want to start instead on, like, how you got involved in, like, KDE and stuff first?
That probably makes more sense to start with.
Yeah.
Then we can go into like the actual stuff you've done in the project.
KDE.
I mean, I've been in KDE for 15 years.
I'm very, in my mind, long time contributor.
There's people who go generations before me.
And the backstory is the same as everyone.
I was meant to be studying.
I did not do that.
Instead, I started hacking away at a project,
and I did not finish my PhD because I got a job,
and that's a way forward.
Well, hey, you could have said I didn't finish my PhD,
and I didn't have a job, so, you know,
there's a silver lining there.
Exactly, so not worth finishing
don't take me for academic advice on this but yeah i mean same story everyone
you go for you get introduced to linux you have that weird gen 2 phase and then you get out of it and um yeah a point we think ah i'm so much faster with a
terminal for everything because you're faster with a terminal for some things and then you start
browsing your web in some console ui and then slowly that starts going away i found myself
from one of these minimalistic window managers where you just have a tiny box in your terminals
to, oh, start running KMail.
Oh, start running Capeta, your messaging client.
And then before I knew it, I was running Kika,
the main KD panel.
I was like, I should just start using KD at this point.
And then somehow went to my first conference started doing more and more patches
became a maintainer of more and more things too many things now i'm a maintainer of
quinn partly with some other amazing people cute waylon and the entire waylon back end for
all of the Qt clients as well as generally
plasma stuff.
You've got a lot on your plate, it sounds like.
Pardon?
I said you've got a lot on your plate, it sounds like.
Oh, yeah, yeah, yeah.
But not enough time, can still spare some time for interviews with you.
Oh, thank you.
Appreciate it.
So,
you said you started on KDE back in 2008. How long had you been using
Linux before that point,
by then?
I know, where dates
are confusing. You have to work out how
old would I be back then.
So, I mean mean not many years
yeah i mean start on back in the day everyone started on mandrake or this live cd called
nopics those i was gonna say the other one is red hat linux which i've i've had a lot of people say
red hat linux but back when you get a cd your way to get Linux would be to go to your shop and buy a magazine with a CD on the front
because installing 700 megabytes would just be an outrageous amount of phone time and you'd get shouted at a lot by your mother.
So that's how you got Linux back then.
So you start on Mandrake, but then university with a big internet connection to your
world it was amazing and then you somehow expanded out you got to gen 2 at some point
oh i mean that's you go through your phases when you're when you start vicing start customizing
everything yeah yeah yeah yeah yeah okay i. I joined this computer society group at university and they had the people who were hardcore into Linux as a technology.
And then equally I had this one friend who was into open source, not into necessarily Linux as a tech, but open to open source as a philosophy.
Right, right. open source as a philosophy right right and that guy was fascinating because he was blind
legally blind he could see a little bit but blind and back then a lot of accessibility tech was
rubbish in the commercial world and open source also rubbish but you could fix it right right so i mean he had this monitor where you had x11 and
you panned around when you moved your mouse to the edge of your screen because his fonts took up like
quarter of your screen each and he was amazing because one of the first things he started telling
me about was back in and dvds were how you watch media and there's a dmca
at the time a digital millennium copyright act and it was illegal to make it so you can avoid
strobe effects on a dvd and prevent people from having epileptic shock because that's
manipulating a media so he was very passionate
about all these accessibility things and making things safe was technically illegal
and circumventing the law. So a whole open source thing of, or let's just change
things because we can change things, was something he was passionate about.
we can change things was something he was passionate about to point that he has this cool project um called a grip which was a version of quake for blind people okay
a grip.org i think you'll find it if you want to bring it up because
it sounds insane it is insane i've played it got nowhere. I got shot all the time by blind people.
Your walls make sound, aliens make sound, and then you navigate around.
How do you spell Agrip? Because there's also a government agency.
A-G-R-I-P.
There's a government agency with the exact same name.
Oh, here we go. No, I found it.
Okay, yeah. It's agrip.org.uk.
Agrip.org is the government agency. Yeah, okay.
Okay, this is... huh.
And it was still being updated like as of two years ago.
Oh wow.
And...
Quick with open source back then, and this was the idea of
you take code and you make something else out of it,
completely different to what the authors intended, but still amazing for some other people.
Really made an impact.
I mean, I'm talking about this 15 years later because it's still in my head.
later because it's still in my head and that combination of using being introduced to Linux by people who were just vicing their systems and having cool themes and this guy who's
passionate about open source and that sort of made me start developing on the things
that interested me which you know wasn't Quake for blind people but yeah then just started
hacking more and more and more and then
before you know it you end up here eventually uh you know running parts of the kde project
yeah that uh that i think you mentioned about you know starting with these terminal applications
then slowly bringing these gui tools because you realise like the GUI tools actually are just a more efficient
way to do it. Like that reminds me of
how I used to do things
with like my emails
and calendar and all that. Like I would have
I'd have like Calcurse and all these tools
now I just use Thunderbird.
It's fine. It's great. It does everything I need.
Yeah, it's about
using the right tool for your job and not
saying I'm sometimes
fast in terminal, if I always because it's not always true.
Don't get me wrong, I still use a lot of like, my main file manager is like a terminal
file manager because I've got a thousand hotkeys that go to exactly where I need stuff to go.
Like that is a really convenient way for me to work, but there are times when just using a, like, using a GUI is just more convenient for things like,
I don't know, I want to drag a file into Discord, for example, or I want to, like, you know, like,
one thing, I upload a YouTube video, I can just have the file manager open, drag the file into the
web browser, and it just uploads it like that stuff that like yeah there's
like weird workarounds that you can do stuff with terminal applications but it's absolutely a
workaround and half the time you end up just opening a gui anyway it's like a very minimal
gui that just exists for the sole purpose of dragging a file which at that point you might
as well just use a file manager properly.
Absolutely.
But now I'm going to sell you on my favorite feature in
KD's file manager, Dolphin.
You press a button, little
terminal pops up out of the bottom.
That's not that insane.
But when you change directory in the terminal,
the UI on
top changes to the same folder.
And if you change folder in your UI, the terminal changes changes to the same folder and if you change folder in your ui
the terminal changes directory to the same folder so you can have a ui start clicking through
clicking on your bookmarks whatever and then if you need to type
grep pipe whatever you know something that's not necessarily trivial to do in a UI. You do that, you're in your UI folder,
magic. That's actually really cool.
Because it's pretty common to have...
It's one of my favourite features.
It's pretty common to have a hotkey to open up a terminal
in the current directory you're in, but actually
having them directly linked like
that, I don't know of
another... There's probably another file manager that does it, but
I don't know of one myself.
It's my go-to feature of sort of in kd had this motto for a while of simple by default powerful when needed which is a cool phrase i think um and i think it sort of encapsulates
what we're trying to get at with the ui of don't shove a terminal in your user's face for no reason, because that's
not a good UI.
And you want
to dump things... You don't want to dump things down,
but you want to make it so it's easy to find
the common things.
But
having all this stuff just slightly
blow your hood so you can do
this if you want to get that sort of thing, because
Linux users
are mostly nerds.
Sure.
It's the target audience
you're making stuff for.
It's making stuff for ourselves.
You get better things when you make things for yourself.
Mm-hmm.
You know what? That does make sense.
Having a...
Providing those powerful tools, but...
Sort of...
Having a layer on top of it that's very approachable for someone who might be new to that sort of experience.
Like, you know, you've moved over from Windows, you've moved over from Mac OS,
you're familiar with this normal file manager approach of doing stuff.
But if you want that extra level of control in those cases where maybe,
you know,
does the KD file manager have like a mass renaming function?
There is warm as a standalone application.
I was going to say,
cause that's like,
that's a basic thing you could have like do in the terminal.
That's really easy to do.
But then doing that from the GUI tool,
if there's no function for that, like maybe you don't need that like every day. Maybe it doesn. But then doing that from the GUI tool, if there's no function for that,
like maybe you don't need that like every day.
Maybe it doesn't make sense to have as a GUI tool,
but having a quick way to just get the terminal open
and do that there, like that's really nice to have.
Yeah, definitely.
Dolphin, Dolphin's the name of our file manager.
Yeah, yeah, yeah.
Comes from users using it.
And as sometimes shows in any project is the person developing it uses it.
And you don't always have that.
I think certainly a lot of commercial projects lack that.
It's people guessing what users want.
And that's not always in sync.
Yeah, yeah.
Well, there's still a lot of that
in
the Fossil Wars books. It's hard to
understand
what the
users as a general collective
want and what the loud people
who feel like getting involved in the issue tracker
want. Because those aren't
always the same group.
Yeah, definitely. I I mean I spend a lot
of my time on Bugzilla
and you see the same names again
and again and again and if
that is a target audience
my only audience then I should just
give up what I'm doing because
it's very
it's just a handful of people
you're right there's definitely a huge passive voice.
But most people aren't too dissimilar.
It might not be the same nerd as us.
I mean, we don't need tools.
I mean, development tools of our own software,
but they're still Linux users.
I think what's important is to get something out there and then sort of test the waters with what people feel about like it's
all well and good to just sit there and theorycraft about what people might want like you know have
this big this big group meeting like okay how are we going to do this? But eventually, like, something has to be released,
and no matter what you do,
there's going to be some people that don't like the idea.
Like, for example, the recent thing
with swapping from single-click to open to double-click
as the default.
Like, there are people...
I will ask you about your opinion on that in a minute,
but there are people who are like die hard
Single click to open anything besides that is terrible
Then there are people like no double click to open is that's the way that everything else does it like this is like what it
should be done, but
what you need to do is just
get something out there and then see what people actually want and
Luckily in the KDE case oftentimes that also comes with
Customization as well like in this one like you can swap back to the old method if you wanted to so
It's not like that for everything obviously
But when there are things that do make sense to have as a configuration option
It is nice to have that there as well for those people
nice to have that there as well for those people so you asked about my opinion yeah people who prefer double click should take a mouse in the garden and bury it it makes no sense
but i do understand that if you keep hearing the same remarks again and again and again and again, there must be some basis for it.
And almost everything comes down to some levels of compromise.
Because people are used to it.
There's a level of familiarity.
If you swap back and forth, I understand familiarity.
Keeping that familiarity to go back and forth is important
we don't want to
be making an
exact clone of
something and
that's frustrating
when these people
start saying oh
and then you
should have this
setting for this
here because that's
the way windows
does it and yeah
yeah i think it's
fine i think it's
fine that people
should can have a
learning curve
sure we don't
have to be the
same as long as
everything's findable
but yeah the fact that
this one keeps coming up again and again and again
means these people,
despite being wrong,
um,
yeah,
it do need to be somehow catered for.
As you said, it's only a setting.
Why do you prefer
single click?
What's your reasoning for that?
On the web.
Okay, this is where we're going, right.
It's where I'm going, because on the web you single click.
So in my daily life, there's nothing I double click on.
And everything else, to invoke an action, button, OK, cancel, single click on it. Doesn't matter if it's a destructive action, you single click on it. So this one, why?
I mean, if you don't have a preconception,clicking on it seems a questionable thing to do.
I mean, I understand why.
It's because you need to separate select and invoke.
But it's a somewhat arbitrary thing to do.
Nobody double-right-clicks on anything.
Yeah, no, that's fair.
Yeah.
I mean, there's probably some video game where you do it or something, but...
Almost certainly.
Oh!
But, I mean, but...
Yeah, okay, now you mention that, it definitely is.
Yeah.
Huh.
Oh, no, I was thinking of...
Sorry, I was thinking of Armored Core, where you can have a semi-auto gun in your right hand,
and you right-click to shoot it so technically
you double click whatever yeah i'm just gonna nod along just so i look cool and pretend i know
these references it's a mech game but i know yeah yeah yeah no um i know what you mean i mean if in
video games if you play a one where it's not wasd to move and moving a mouse you'd think it's weird no
matter if they come up with something better sure weird is bad so i don't understand that
i guess well i personally i just do double click because that i have no actual reason for it it's
just what i've always done that's that's my entire reason for it. I can only get used to single click, I just use
double click because that's, it's just how far
I've managed to work for me. But if you,
like, if your first computing device
was a phone,
or was, like, a
Chromebook, and you did everything on the web,
like,
that's not an unreasonable
situation now. Like, there are going to be
people where they won't, people where their first couple of years of using a computing device
is going to be something where every single interaction is either going to be a single click or a hold click.
Double click is just not an operation that exists whatsoever.
We introduced a hold and click pattern in Plasma. It was to
enter the edit mode of dragging it out. Oh yeah, that makes sense. And even though it was a common
pattern on the phone, that also wasn't understood because it's a common pattern on the phone,
nobody expects it on your desktop because you've got a mouse so we introduced
that pattern and it sort of tanked similar reason of it might be fine but if it's unfamiliar
i've probably seen like one or two applications do it for a similar sort of function but
it's definitely not common not common enough to be like a standard understood pattern at least.
Yeah.
So we sort of separated, I mean, now we've got a lot of access to what input device
did what, and we started having different behaviors based on what users interacting
with, because as you said, if you're, if you're touching with it with your big fingers
yeah double clicking is kind of weird you want to press once and then get some sort of
ui prompt or something
so yeah you do need to customize based on input because they're different. That, well yeah, that's definitely true.
What is the touch support like on KDE?
That's not an area that I've really paid any attention to.
We're in a difficult state in KDE as a transition between two technologies.
Right.
We've got the old widgets, which is writing a C++, here's a push button, blah blah blah.
And then we have the newer apps coming up, written in Qt Quick.
Mhm.
Oh.
Uhhh...
I can't hear you.
You're... Is that my end? Wait wait can you hear me raise your hand if you can hear me
what wait what happened um uh i'm gonna drop out of the call for a moment and come back
for a moment and come back.
Sorry, I'm going to ask the question again.
Yeah, say to touch support in KDE.
Yeah, so, oh yeah, we've got widgets and QML.
Yes, sorry.
So we have the old technology widgets.
Yeah.
I seem to edit this.
Okay, sorry about that.
That part kept going.
Yeah, I heard that.
It was whatever you said after going. Yeah, I heard that. It was one of you said after that.
Yeah.
And the new technology,
Qt Quick,
which is being targeted towards a mobile audience
at a lower level in the stack by Qt.
So we have it written for YOLA
and for Android
and targeting those things.
And it does have
that much more finer grain control
over touch stuff
and so because of that the experience within the kd applications is varied there are some which
are amazing because we have a plasma mobile project uh so some are like touch first yeah
we have been trying to push for that convergence
so there's stuff that works on your desktop,
works on phone, which is perfect.
And because it's a huge project,
we've got stuff that simply isn't targeting that.
Right.
So I don't think you can paint all the KD
with a single brush
because in an application like KFloppy, an application
for formatting of floppy disks,
nobody's gone and said, let's
update this for touch. I was going to say, when was
the last time someone touched the code base for that?
I think it's actually
been deprecated, but only
in the last year or so.
I'm still going to be my go-to example.
Okay, sure.
Yeah, I mean, we've been releasing it,
releasing it because it takes no effort to just update to new libraries and whatnot.
So that's there.
Plasma as a shell, again, I mean,
we've got a Plasma mobile project that's really pushing it.
Two-in-one support situation where it's halfway between the two.
We have some support.
Things could be better, like a virtual keyboard and how it interacts.
Certainly on Waylander the situation's better than on X.
So generally good, could be better.
That's the takeaway.
Right.
So it's fair to say desktop is sort of the focus,
and other things, you would like it to be better,
but it's not like they're being just thrown to the side,
not worried about what to say.
Exactly, yeah.
Yeah.
Yeah, so, and the file manager's a bit quicker to get used to,
but if you take something like a Steam Deck, where it's hybrid,
and you can use
your fingers for doing a bit of operation but there we didn't want to just make it a big touch
ui because the desktop mode is there for if you want a full-fledged desktop and you've got a touch
pad anyway so yeah so things are okay ste Steam makes a really interesting device.
Like, the...
Valve decided to do something very different
from what they tried last time
when they tried the whole Debian...
I think it was...
What was it?
Debian 9 or...
It was something old at this point.
I don't remember exactly which version it was.
And then...
I don't even remember what they had as a...
Did they even have a desktop or not?
Was everything...
It did have GNOME that you could access.
Oh, it was GNOME, was it?
It was GNOME.
Ah. And now they've
got this immutable Arch thing with
KDE.
It seems like, I've looked at some
of the Valve Linux documentation,
it seems like whoever they have there
clearly has a
deep understanding of Linux. Like the documentation is clearly written by someone who actually knows what they're talking about when it comes to Linux.
And there's like, there's
in, in, one example I like for example, is in their documentation on Linux VR support,
it mentions supported things.
So it's like, everything on X11, KDE Plasma, dub your roots,
and then lists out, like, not just Sway, but I think it mentions Hyperland
and another relatively small-ish project.
Clearly whoever wrote this is not just
like, you know, I'm just going to mention the biggest thing.
They actually know some of the things that
exist in this environment.
Oh, definitely. I mean, there's
talented people and people who
are in the community
as names that you know from the community
just working
in collaboration
I'm really happy
with the state that
gaming's in on Linux at this point
it's gotten
it's gotten a lot better for sure
for sure over the past couple of years
but
were there any with that with that whole like extra
user base that came in from the steam deck being this like sort of like big and still base for
kde was there anything like that was specifically changed because the steam deck showed some
sort of holes in the design or like any areas where things could be improved?
If there's anything that comes to mind.
With my upstream KDE hat on, very little feedback has come from the Steam community.
And if you look at your social media, you can definitely see people saying, I'm using a desktop mode, I'm using a desktop mode, I'm using it and stuff.
But there's been very few bug reports,
which could be a sense of not feeling like it's a community to get involved in,
because it's a product you've bought rather than something you've gone and...
I mean, you wouldn't install KDE on art without having an understanding of open source
and all of this kind of thing so there hasn't been a lot of engagement through our typical channels
from steam deck users and because of that there's been little feedback but if you look at social
media there is all this stuff um i don't think anything's come in directly because of that.
There's a nice positive sense within the KD community since it,
because having somebody else believe in your project helps.
I mean, the social side of that within the last few conferences has been a bit more of a buzz than it has been in the previous years.
So, in future years, when we get Dell and IBM on board, they'll be shipping it by default.
Yeah, yeah.
Well, you have to get them to stop selling devices with Ubuntu on it then.
And then maybe
you'll, uh, maybe you'll get something then.
Yeah.
Yeah.
Well.
Maybe get, maybe get a little, uh, old, like, Ubuntu or something, then you'll get some,
uh, some KD discussion.
But I, I, I think you do make a good point about it being, like, a product, because,
like, it's, it's a's a lot how would I how would I
say it like when something is what you've chosen to install yourself
there's going to be a lot more interest in getting it to improve and
you have a more of an understanding of what you're actually running in the
first place I can imagine there are a lot of Steam Deck
users who this is the Steam Deck desktop it's not this is KDE that's running on
the Steam Deck. Yeah and none of the branding has been removed but definitely
it's that sense of when you when you select it from the main
game mode it says enter desktop mode it doesn't have that KD band yeah so I
think you're absolutely right and it's nothing wrong with that I mean you want
users to have that gradual introduction to Linux in
in a way where it is something that people just use. I mean, most of our audience of people
are just using Linux rather than contributing back.
Yeah.
And that's the way it should be.
I mean, you don't want your user base
to be the same as your Git history.
Otherwise, you're not doing it for people.
No, that does make sense.
It's definitely important that people get involved in repos.
I've... maybe not... not always necessarily contributing codes.
That's a... that's a part I see a lot of people get confused on, when I'm like, if this is
a problem, actually, like, do something about it.
Like, there are people out there who don't know how to write code,
and that's totally fair.
But if you have, like...
This is something I've certainly had to... I've gotten more used to as I've been using Linux longer.
Like, if you have a problem,
actually go and mention that it's a problem.
Make an issue about it.
Do it in a respectful way please but
actually bring up the problem like a recent one that i had is uh with caden live um where
there was a regression with a with the new version of mlt which caused mkv files to duplicate the
first audio track onto every other audio track, deleting all the other tracks.
And nobody caught this before it shipped in a version of KDE,
in Kdenlive.
So I noticed that I was like,
hmm, this literally is impossible to edit videos in.
So I went and reported the bug.
Turns out someone had reported a bug with another name.
But that's a problem
that you know needed to be addressed and it clearly someone missed it when it got shipped
like that part of the testing didn't get done and now that problem i believe there's already
a shipped version that's fixing it like that's because there was a report made that problem
actually got dealt with and i've noticed a lot of people tend to just
sit around and
complain about problems
without actually
mentioning it's a problem. Like,
I can probably bring up a thousand
different Weyland examples.
But,
yeah.
Yeah.
I'm sure you've run into very similar things.'ve noticed sorry i cut you off again i've no i scrolled through some of the things you're applied to on on reddit and i
noticed there are people that like complain about something and you're like did you make
an issue about it give more details about like you know balance i mean i don't think there's anything wrong with going this doesn't work for me i'm
not going to use it that's absolutely fine i mean i do that with plenty of projects i don't
contribute to everything i ever touch so sure responsibility but i think if you're going to go
and complain on social media about something you actively use and if you're going to go and complain on social media about something you actively use and
if you're going to go to the effort of doing that you might as well go to the effort of
doing something productive definitely
i get like i get why people don't do it like it's easier to just sit there and complain about it
like you know but But, yeah.
It's also frustrating as a developer point of view because if you do see people complaining on social media,
you don't want to just fix it
because then you're just encouraging more people
to complain on social media.
So it's an awkward balance.
But you don't want to ignore it
because it's getting attention.
Sure, sure.
That's a difficult thing to ignore it because it's getting attention and sure sure that's a
difficult thing to play with because i mean as a developer i do sometimes see something get annoyed
by it and then think well i'm not going to fix that now and it's a very childish attitude because
there's hundreds of other people also affected by the same bug not being tools about it so you shouldn't just punish those
people just because one person's being a tool but difficult not to to sort of separate
you know that's the first time i've heard that mindset about it
you know i i get it it is admitting to being childish but i've seen it play out
so many times yeah no i i get it like you know we're all just like i think that's something
people tend to forget i've brought this up a couple of times in other episodes but
a lot of people tend to forget that the people that are maintaining these open source repos are just people.
Like, you see that screen name there, you see that profile picture,
and it's easy to forget that the person doing that work actually is a person,
and has their own goals, has their own intentions.
This played out really well with the um the thing with gnome
dropping x11 in the future like that thread is an absolute disaster minefield um or that or the
whalen positioning uh thread that i saw you comment on the uh uh ext placement i think it's called now yeah um like that's a minefield
even though like they're all like contributors there they're like a lot of people they're like
very active in this space like you could clearly see that a lot of people are getting emotional
about it we're getting like very attached to their position and not really willing to have a
discussion about it it's like i'm just gonna yell about what my perspective is and eventually if i
yell enough people are going to listen to me where that's just not gonna happen like especially some
of the most like hot-headed people there just need to take some time away from that specific issue, come back to it later, and just
remember the fact that, you know, everybody here is just trying to, especially in that, the, the
Wayland placement case, like, everybody here is just trying to make the Linux desktop better,
it's just that there is a lot of different perspectives on how it can be made better,
and they don't really align with each other
wayland definitely had a problem with a lot of talking not a lot of listening and
a big technical problem in wayland where there's always tension is is all about whether applications
should be built around Wayland or
Wayland needs to accommodate the existing requirements. And those two are at odds
with each other. There needs to be balance, there needs to be compromise, but
there's not a lot of understanding each other's perspectives and achieving that.
And part of this, it's like a social problem behind this, is the people who hang out in
hash Wayland on matrix and the main people on the GitLab project, they're all excited about Wayland.
Therefore they're in that mindset that everyone's excited about Wayland, everyone should be doing this
poor thing to Wayland and doing it just for Wayland. And if you're not in that space, if you're trying to,
in my position, I'm trying to make this in Qt,
this multi-platform toolkit,
I can't have Wayland specialities
in a multi-platform toolkit.
So I am very much between this fixed API,
which is immutable from Qt API,
and this Wayland protocols, which is thisutable from acute API.
And there's Wayland Protocols, which is this fixed immutable API-ish. And then I'm in the middle trying to
connect these two things up. And it's an impossible job.
And if it's not done right, applications
break. And doing an impossible job right is
a frustrating position to be in.
I did see what you said, let's see if I can find the thread. I don't know exactly what you said,
but what is your perspective on that protocol? Actually, for anyone who didn't see my video on
it, the idea is that right now in Wayland there is no way for applications to position themselves.
So all positioning is up to the responsibility of the compositor. So if
you have an application like GIMP in its multi window mode and the compositor
doesn't have any rules for how those windows can be placed, like you might
have a situation where instead of the windows being placed you know you have
like your main GIMP, what do you call it, canvas with all the toolbars on the side, it might decide
okay let's just spawn them all on top of each other, which is obviously not
intent, like the intended behavior that you're supposed to be seeing. So what
this would be doing is giving that sort of placement ability that exists on Windows, exists on
Mac OS, exists on Linux with X11 to Wayland as well. But the Wayland devs sort
of have very different opinions about how this should be done, clients shouldn't
be positioning themselves, all of these different perspectives on it, but what is your perspective at least?
I know you did say that it's not like a consistent thing among KDE developers, like it's not
like everybody just agrees on this is what we're going to do, but what's yours?
Sure, I mean it's important, I don't want to speak on behalf of the other Quindevs who
do have different opinions, so particularly I iron is the position of this cute Wayland maintainer.
And the thing that Wayland's lacked a lot of is thinking about transition.
Because people sometimes say when apps port to Wayland.
Apps don't do porting to Wayland. Toolkits do porting to Wayland.
Applications get taken along for your ride.
Wayland, toolkits do porting to Wayland, applications get taken along for your ride.
So Kfloppy, that floppy disk formatter, works on Wayland because why wouldn't it? It's a new version of Qt, everything just works. But that means all your calls that it tries to do need
to do something. And it's absolute positioning comes up
in all these different places.
So pop-ups, if you position, open like a file menu,
you want it to appear, it's a new window,
you want it to appear just beneath the file menu.
And Wayland has a separate protocol for that
where you give it your relative position.
And we can fake that on a cute level.
We pretend the window's in the top left corner
as far as the application code is concerned.
And then when it places a menu,
it tries to place it in an absolute position
and then we translate it.
In theory, that works fine, right?
But then as soon as you get near the screen edge,
you want the menu to be on the other side.
You want to know about,
oh, I'm going to go off the screen,
I should be somewhere else.
And Wayland, brilliant on paper,
has this protocol where you give it
all of this semantic information.
You say, if I hit a screen edge, here are my
constraints, here's what I want you to do instead. Slide the window or flip to the other side of this
rectangle. And you don't give it a point, you give it a whole rectangle. And on paper, it is fantastic.
It covers everything. And I remember reading it thinking, oh, this is brilliant. I can come up
with all these hypothetical situations in my head
where it fixes problems that were unfixable on X11.
And reality is a lot of problems, or real world problems,
which are only hypothetically fixable.
Because from that Q point of view, where I am,
I can't just magic this information out of nowhere.
I can't work out what
the client wanted to do i've only just got this one point that it concluded and that's a huge
challenge that's why our pop-ups are sometimes off there's a whole issue of clients don't know
their own positions but do know your screens so if you have the screens in a weird position so your top left corner isn't
on a screen all the applications were going oh my menu doesn't fit i'll move it but because that's
not where your window actually was it just meant the menu just went flying off into the middle of
nowhere when we try to map between absolute and relative and whatnot. So it's great on paper,
but it requires applications having to change.
And that's an uphill battle.
And you need to think about its transitions.
I think a good comparison is Flatpak.
Flatpak, you're introducing a new way of packaging, but it thought about
about your transition. You can just go to flat C or you can just check some boxes and
if you wanted to access all your home folder, you press a button, it accesses all your home
folder. And then the application can opt into these portals afterwards.
Right.
Whereas with Wayland, it's let's get things perfect
from the get go.
And that's the only thing they're trying to accomplish.
They've only got this one path of we're only
going to do the right thing.
And granted, all this stuff on Wayland is better on paper but it requires all of these
changes to just magically happen
which you can't
just get out of nowhere
I hadn't thought
of it like in that
fashion yeah having that
yeah no it is trying to
like just be this
revolutionary change without that
transitionary step which is fine for the open source tooling especially but when
you start getting into like you know you were part of the x-way on video bridge
stuff that was the problem they need to be fixed just doing things in a perfect
way where there's no
transitionary goals
it ends up just
Waylon's got this bad reputation
because for so long
basic things have just been broken
because
there's just not been a way
to do it
yeah so
it's an absolute position
it comes up again and again in all these different
places. So you mentioned with the pop-up windows, any window with a splash screen, a splash
screen you want it somewhere in the middle, and that might be a default placement, but
it might not. And on windows on OS X, on X11, you just set a flag and you're done.
On Wayland, there is a proposed protocol.
And it replaces, instead of just setting a flag on existing Windows,
a new window type.
And I made a patch in Qt.
And instead of being one line like it was in all the other platforms,
my patch was 2,000 lines.
instead of being one line like it was in all the other platforms, my patch was 2,000
lines. And then I was
so embarrassed of having
to submit this to acute devs who
don't know Wayland that well.
And then I had to explain to them
why this is a 2,000 line patch.
And then
I just didn't bother because
it would ask what to just do better
and then I wouldn't be able to have an answer,
because the idea is, from a pure Wayland perspective,
you don't have API calls that don't make sense.
You shouldn't be able to put a pop-up on a splash screen.
But because Qt and every other toolkit abstracts that,
from an application- level point of API,
you still have all of your options.
So instead of it failing at a protocol level,
it fails in my Qt Wayland backend level.
Okay.
So it doesn't really solve much.
But then I'm still left with my splash screens being wrong.
I, yeah, I, but
I guess it makes sense you would have to, like,
because you don't want to, like,
fully redesign Qt
every time a new Wayland protocol comes in, so you
have to, like, force the Wayland
protocol to function around
the things already
existing Qt in a way that
doesn't break existing APIs that developers are using.
Absolutely. So that's what I have to do. It's what SDL maintainers have to do.
GTK to an extent, though, I think it's fair to say they get- they're in a position where they get to be Linux first.
Whereas Qt in SDL, not necessarily Linux first. It's Linux first. Whereas Qt and SPDL, not necessarily Linux first.
It's Linux adjacent.
They still support us, but it's not...
I couldn't get any public
API. It's Wayland only.
Because they quite rightly would say
what's it going to do on Windows?
Any public API has to work.
And that means both ways.
And then you have products like Wine.
People writing Windows applications definitely not thinking about Linux at all.
And Wine's in that similar position that I'm in of you have to bridge it.
And they don't even have the option of putting in some specific API for applications to opt into.
The Windows calls just have
to work to do something.
We are just barely getting to the
point where game
devs are choosing to
include the Linux binaries to make
their anti-cheat work. Like, that's as
far as we've gotten to supporting
Windows programs through
Wine.
Most things just work work so it's
fine but like there's a lot of
things that don't.
Like at all and probably never will.
You know as your Wine becomes like
a complete clone of Windows which
maybe look one day, one day
we'll be good. The Wine devs
are doing great work. I have nothing but respect for the Wine devs, but they have...
Oh, absolutely, I didn't mean that against...
No, no, but, like, they have, like, a infinitely high mountain to climb
that is only getting worse every single update.
Sorry?
But somehow are managing to climb it.
Somehow, yeah, I don't...
There's a lot of intelligent people on that project
doing a lot of great things.
Definitely.
So, when did you start getting involved
with the Weyland stuff?
So, embarrassingly,
I remember 2008, I looked it up,
it was a conference where the then Quinn maintainer And, embarrassingly, I remember 2008, I looked it up,
it was a conference where the then Quinn maintainer said,
next year will be all on Wayland.
Desktop Summit in Berlin.
So, I didn't get involved in that was very
much it. It's become more and more. So when that maintainer
sort of left there was a gap and I sort of right right. I'm in a
lucky situation I get paid to work on what I do. But I mean,
if I'm working on something, it means it's considered a problem space.
And...
What happened with my audio again?
What...
I lost you again.
Why?
What is Discord doing today?
Yeah, I can't hear you.
What in the world is going on? Okay, I'll drop out again, I guess.
Hello. Hello. What? Why is Discord so terrible? We're back, so keep going, whatever you're saying.
Okay.
Oh, rambling about something.
I will need a prompt.
We're talking about you getting involved in Weyland 2008.
Oh, yeah.
Yeah, so around 2005...
Sorry, back to the bit.
Around five years ago, I started doing more and more Weyland,
and then it sort of snowballed. It started just filling off the void, Around 205... Around five years ago, I started doing more and more Weyland,
and then it sort of snowballed.
It started just filling off the void, and... Yeah.
And there's still so much to do
in terms of getting things right.
Right now, colour paint,
which I don't think is a particularly big application.
You can guess from the name what it is,
even if you're not familiar with it.
Not all features of that work in Wayland right now.
There's a toolbar on the bottom with a color palette.
If you click and you drag up, it explodes.
And because it's one of those draggable windows,
it's sort of that...
And we fixed that in Qt we've got that we've got a
proposed uh protocol which isn't approved um we've just currently got support coming up in QN6
and I know in Qt 6 already uh with support for fixing that within QN but but that's not enough. I mean, you want to fix things universally
for it to be considered fixed.
So we're still waiting on
other implementations
of that, and
every single
thing is just...
You can tell what's happened with Wayland.
Instead of looking at the public API
of SDL and Qt and saying,
well, here are our requirements.
It's very much starting with this minimal application
and then going, we'll start here,
and then add everything as a case-by-case,
solving a specific problem that comes up.
So you feel like it's sort of designed backwards.
Yeah, in my opinion.
It's certainly, I don't want to say backwards,
because that's maybe inflammatory,
but it's not designed with transition in place.
It's not designed with that transition of moving existing clients.
Yeah, yeah.
And that's the crux of it.
If it had been designed by,
let's look at all the requirements of all the existing applications,
start here and split things out so we can move and change things later.
But start with this minimal thing.
And then things like injecting keys.
I've been going around in circles for ages with, oh, remote desktop needs to inject keys.
OK, we'll come up with something specific for remote desktop.
Oh, accessibility needs to inject keys. I'll come up with something specific for remote desktop. Oh, accessibility needs to inject keys.
Oh, we'll come up with something specific for accessibility.
Oh, input methods need to inject keys.
We'll come up with something specific for this.
And we've ended up with multiple solutions to effectively the same problem.
None truly as standard as they, as universal as they should be because you've got portals you've
got libvi and they all sort of come together but still in flux and it's still useless case coming
up with you know oh now we're gonna have test frameworks wanting to do the next thing and
always use cases which are similar but subtly different. And you're 98% of the way there with all the Weyland stuff,
but each of that remaining part requires so much work.
They're huge projects on their own.
Yeah.
I wasn't trying to just say Weyland was a disaster and stuff,
but what I was really trying to say with it was like the idea is it wasn't designed around existing use cases it was designed around this theoretical
sort of improved desktop like this is what we want to do not how can we do something that improves upon what we have that brings everything along with it
yeah absolutely
and that's fine
I mean a bit depends on whether you expect ex-Weyland to exist around forever
for all of these old old applications
or whether they should come along to Weyland
and then start chopping things down afterwards and I'm of the perspective that it's easier to get along to Weyland and then start chopping things down afterwards.
And I'm of the perspective that it's easy to get everyone to Weyland,
do your splits you want to do,
and then start chopping away gradually at making things of,
oh, now we want to introduce a pop-up way
and now we want to introduce a splash screen.
Now we want to do that afterwards.
And session restoring for window positioning.
I don't think it should be controversial that you should have a system in place.
Have people use that. Introduce your new system like you'll introduce your session restore for
your absolute window positioning. Wait a couple of years for people to opt into it and then remove the fallback
rather than not have a fallback
and expect people to use something that doesn't exist
and then make those people do their work on implementing it
because that doesn't work.
And we do see a lot of people making wayland issues.
The compositor developers aren't going out into clients and then,
okay, I'll help you make those Wayland changes.
They focus on themselves.
And there's only one person who has patches in GTK, SDL, and Wayland.
It's GTK, SDL, and Qt.
And that person's me.
And that's kind of a... I looked it it's not not not meant as a brag it's meant as a everyone's a bit too inwardly facing i think if you
what we should be in a position of if someone implements a protocol for doing curses in a
different way that they should be helping going into other projects and actually doing that work
and we're not seeing that it's just that yet there is a very small list of names i can make like
the obvious mention is like neil gomper like neil does a lot of work in everywhere pretty much he's
not big on the gnOME side but like everything else
like Neil is like incredible I love Neil's work you got work you got people
like Dallas Strauss doing incredible work as well but like this is a very
very short list of people. Yeah, yeah. But... What...
Go on.
I mean, Wayland just
needs a bit more cohesion and working
together towards that common goal of
we all want Wayland.
Let's all make this happen rather than putting
the tasks on other people.
It requires us doing the work
everywhere to bring the applications up.
I think the big issue...
I think the
big issue you have with
Weyland, and this is just
a natural problem of not having
like a
BDFL or some sort of
clear leadership, is Weyland
is very much
designed by committee. Like most FOSS projects
are like this, but most FOSS projects don't have as wide a scope as Weyland. Like I'm sure that
there is a lot of bike shedding on random KDE projects where people have different ideas and
how to do things, but everyone's trying to do KDE. Like, this is a very set, like, you all agree on, like, fundamental things.
Like, we're going to do this with Qt.
We're going to use, like, the KDE APIs.
You all agree on, like, basic things.
The Wayland problem is that nobody agrees.
The only thing people agree on is we're going to make Linux better,
which is fine, but there's a lot of ways to do that.
Absolutely.
And having people push in different directions is fine
as long as everyone listens to where
everyone's trying to push and trying to compromise.
And that's the part that's lacking.
And you're right, there's different perspectives.
People trying to push for a security model,
absolutely valid goal.
People trying to push for compatibility. My goal is people trying to push for a security model, absolutely valid goal. People trying to push for compatibility.
My goal is if people trying to push for
Wayland Everywhere don't want to
necessarily rely on these portals
and D-Bus stuff that you know people are pushing for.
And different sides.
Yeah, it's tension.
And it will get there.
I mean, things keep moving forward and that's my positive spin oh yeah things are going a lot better over the past
couple of years like my favorite example is just just like three years ago OBS
didn't work on Wayland like you couldn't capture your desktop
George Sorakas did great work getting pipe wire video capture to it like work
like before that like you just couldn't capture like it just would
maybe there was like a special tool for certain desktops but there's nothing
generic. Like George, he's one of the few Qt GTK contributors who's ever submitted
a Qt patch. Wow. One of three people who have GTK and cute patches.
I don't know why I've sort of memorised this list.
I don't know why either.
Face in my brain
it could have been used for something else, but
I'll use it to shout out
to George for being awesome.
But as
you've been going through
this whole KD and Wayland stuff now, there have been a couple of problems that but as like, as you've been going through this,
this whole Katie and Waylon stuff.
Now there have been a couple of problems that you've been directly involved in solving.
The most notable ones are probably the compositor robustness and the ex
Waylon video bridge.
Um,
I'm sure you've done other things,
but those are the ones that directly come to mind
that i've certainly uh talked about nice i've been life's work summarized in a sentence
no um seriously as i had to highlight um yeah x wayland video bridges is good because it ties
into that last topic about transition and i'm quite a big believer in this don't break user space rule
and the people did x-rayland excellent job and it does a lot but and to go back to our
flat pack analogy your stuff not in a sandbox doesn't break just because the flat box pack exists and I think a similar
situation here we shouldn't have the stuff in x regress just because the Wayland stuff exists
and unfortunately the more esoteric apps are ones that are harder to push to Wayland so
gaps are ones that are harder to push to Wayland so they're ones that need to support.
So X-Wayland is still important and it's become a big part of the project. I mean X-Wayland video bridges are arguably a small part but it was visual so it's why it gets talked about.
The thing we spent the most time on was making sure in X-Wayland,
when you use fractional scaling, and Wayland scaling you set to be scaling of 1.5,
you don't want everything to appear blurry, X11 apps to appear blurry, because X11 apps don't
know about your Wayland scaling mechanism. And the whaling scaling mechanism is fine but it requires the apps
to do something right it requires the app to say i know you've given me a size i know what scale you
want me to be therefore i'll do translation and report back saying i've opted into doing this
translation that's a summary of how it works and it's it's absolutely fine it's a good enough system but you can't
retroactively add that into x where apps don't know about that so we've put a lot of work into
having quinn just take care of that for it and saying to x i'm not going to tell you a size
wayland uh logical size i'm going to tell you actual size, and then I'm going to translate
all of your inputs and
windows about so
that they match what's really
on the screen.
That was a huge
operation, but it's working
quite well now.
Particularly, you've mentioned games.
I was going to be on ExoWayland for a while.
That's really important.
You don't just...
Either waste resources blowing them up and scaling them down,
or just making them blurry,
because when you've bought a fancy graphic card
and then you're upscaling your game you're playing,
it'd be awful.
I could really do a whole two-hour video
just on the
the wine
Wayland patches because there's like seven
patch sets at this point
it is a long and
arduous process that's a while
away from happening but
it's making progress
eventually
definitely
but I mean for now
we're using Discord right now.
I mean, I'm running application.
I don't want that looking blurry.
I want the font to look like proper font.
So that's a scaling thing.
Another thing we did was making sure shortcuts still work.
Yes, yes.
We used a Discord example,
pressing a button,
push a talk, find a new one, let's work.
Wayland's got a concept of not allowing keyloggers, which is reasonable.
I'm going to say it's not reasonable.
But what we've introduced in Quentin is a setting that says if you press a combination
or just control or shift on its own, it can send that to x.
Your password isn't going to consist of ctrl or f or the volume up key. It's only going to consist
of actual letters and numbers. So anything else isn't security sensitive. So we can share that.
If it unbreaks applications,
and it's a setting that's unfortunately off by default,
but I mean, that's maybe a discussion,
but at least there's a path.
At least there's a path to say,
we're going to fix all your shortcuts
and still do it in a safe way.
And I think that's important.
It's not just we've given up.
We're not saying, oh, just let everyone be keyloggers.
You can actually solve the real problem that your users are facing
without having to jump between these two extremes.
That is one of my personal pet issues because I use OBS a lot
and I will switch between my scenes
using hotkeys on my keyboard and that's something that I can't do on Sway.
I could do on Hyperlane because they actually have their own system. I can do on
KDE because there's like, you know, a system now, but
that's a- that- like if I don't have that, that's a massive regression. Like
there are like weird work- one of the workarounds I was gonna do was have like
web sockets to do it because that would be the only other reasonable way to make it happen, but
having- like, I know the end goal is like the global shortcuts portal, like that is the-
the intention, but
you are- like, you've made this point a bunch of times, having these
transitionary steps until
you get to the actual good
goal is so important, because
the user doesn't
really care about
how it works. Like, there are these nerdy
users who care about the technical stuff on the back end,
but at the end of the day,
like, I want my things
to be working, and I don't really care how you get to
working yeah absolutely i i i think the kde side you've got things a bit harder than if you use
don't sway wait it's got your word way in the title you'll go out of your way to only find
apps that work in Wayland and
there's nothing wrong with that it's just that's what your user base is catering for
to not lose some of my existing user base I have to make things work for people that
already have this hatred of Wayland and I think it's perfectly reasonable for me to say
as a desktop engineer,
I control how your pixels get to a screen.
I control how your input gets to your application.
I don't think it's reasonable for me to say that media player you use from United because you like it shouldn't work anymore.
And I think that shouldn't be my call to make.
I think it's my job to make that work.
So we've got your scaling, we've got
your shortcuts. My favourite feature, the old X11 system tray, the version before your
DBus standard, the version where you put a window and you embedded it in another window.
That still works on our Wayland implementation. It's a version from the 80s, and it works.
The way it works is horrible.
We don't talk about the way it works, but it works.
You can run hex chat, which probably hasn't been used since whenever it was last written.
It's my go-to example.
And, yeah, system tray appears. can right click on it you can left click on it as
far as it's concerned it's got its own little x11 window embedded in another
panel somewhere. That panel happens to be off screen but it doesn't know that.
mm-hmm that is such a janky
hacky method but I love it
that's awesome
Oh yeah and then that communicates via Dbus over your newer
protocol to
the system tray
by just taking screenshots of it occasionally
That is disgusting, I hate that
But what's
interesting is I broke it
That's not an interesting part
I broke it for some esoteric setups, I broke it. Right. That's not an interesting part. I broke it for some esoteric setups.
I broke it when using multi-monitor and with scaling.
Right.
You know.
Okay.
Yep, yep, yep.
Fair enough.
I did that.
And then we got bug reports.
So that's how you know something's being used.
Because if you break it and then you get bug reports,
then it must be being used.
And obviously somebody else went and fixed it because there's fuxing when, more shout outs. But yeah, and I think it's
important to not break other apps. And then that brings us to X-Ray and Video Bridge, which you wanted to discuss,
which came out of an accident.
We were using conference calling for work.
We're actually using Discord to chat with somebody.
And I like sharing screen to go over some code.
And I've hit a problem where I can't share my code with somebody.
And we're actually working on put some pipewire implementation
Because we use pipewire quite a lot for you know when you hover over a task manager you get a little previews. Ah, yeah
Yeah, so we're using pipewire for that because it really helps us test all of the remote desktop stuff that's used for more edge cases.
So using it as a daily driver.
And we had some issue on some driver, some content were flipped or something.
I can't remember what we were doing, but weird esoteric stuff with streaming.
And the best thing you do is you have a test tool, you have a window, it shows your contents.
And all this stuff with pipewire doesn't actually
involve Wayland at all. It's pipewire. So I just went out and forced the platform to
X11 and I can show a content upside down. And I was like, actually, you can see not just my debug tool,
but you can see a content of that debug tool.
You can see what we're doing.
That's actually quite a useful product.
And we had all your code.
It was written for a test.
All I need to do is tidy it up, make it full screen,
and do some slightly questionable
things or making it appear invisible so you don't see a window twice, which
involves some creative code which no window manager developer should ever
look at because they will shout at me. But I mean it shows the importance of being able to
do these crazy flexible things I like that. And yeah so we packaged it up and we were planning to release that
as an application of if you want to do the streaming open it up.
And then I took it to people paying me and it was like oh we came up with this idea,
didn't take us long, and then this fixes this extra issue.
And they were like cool and now you're going to make it automatic, right?
No.
No, that would be literally impossible.
And they're like, yeah, you'll make it automatic.
I left a call thinking,
I've got no idea how I'm going to do that.
I'll put in two days
and then write up a report saying it was impossible.
That was my plan. But and started looking for options and managed to make something that worked there's x11 extensions to let you know
when other events happen to other clients and i could detect when somebody tried to redirect, when any client tried to call a redirect method for a window,
and which window ID it had.
So it's a very lightweight filter.
It's only intercepting this one event.
And then I check, does that window match my window?
If so, boom, pop up the portal.
And I was quite surprised that we found something
I mean it was a third attempt
and
yeah I'm quite happy with it
as an end user product
and hopefully
I was going to say I guess that's what happens
when a protocol's been around for over 30
years there's going to be like weird
edge case
built in every
like just weird ideas that someone has at some point
like i'm just going to extend this on and just happens to find something that does what you need
absolutely i mean i feel like i'm doing more x11 work since we started
working on wayland and i ever did back when back when i was actually working on X11, ironically.
So I never had to open X11 source code before.
Now it's almost a regular occurrence
to try and make sure all your sex ways and stuff works as well as it should.
And eventually you actually got something that, like, did the job.
Like, you can just
share the thing you want to share
which is awesome.
Apparently it doesn't work too well under GNOME.
Right, that's fair.
Or in a Wazbug and Sway which was entirely my fault.
Fix and version 0.2
out today.
Oh, nice.
I don't know when you're releasing this.
So I don't know how to run and actually do this.
Next
Saturday, I believe.
Okay, so I'll make a release
before... Now I have to time...
Never promise anything.
Never mention any dates,
never promise anything, and you'll be fine.
You say, working on it, get it when you get it.
It's been fixed, I just need to make a release. Fun paperwork of that.
So yeah, it should open up to a few more desktops.
Oh that's good then well obviously like your you
know initial intention was to get it working like in plasma because like that's what you were using
um it wasn't the intention to like have it broken on other things it's just like that
you know there are additional requirements you need to do to get it working elsewhere
because once again and ultimately at some point this won't be, at some point, this won't be
needed. At some point,
all of your cases will
just be Wayland native.
I mean, I don't know what other applications exist.
Discord's that common example that we keep
going to because it's one that
got a lot of users. Slack, I believe,
has issues. Zoom
fixed their stuff. Okay.
Which is crazy.
I guess all of that, like, remote work money,
they actually went to good use and they fixed some stuff.
But Discord and Slack are basically the only two that I know of that matter, at least.
Yeah.
Yeah.
That matter part's a bit interesting.
It's going to be some random commercial internal tool.
And I mean, I want to have that available,
but it doesn't necessarily need to be part of a Plasma release or anything.
It can just exist somewhere on the internet.
So that one company with that one weird internal tool can go grab it
and continue their rail import.
Like, you mentioned that, and that makes me remember that, um,
I think it's, like, five years from now,
I don't remember the exact year,
but Red Hat is planning to, uh,
like, deprecate X11 from RHEL.
So, when that happens, like like that's what we're going to hear about the
commercial applications that just suddenly don't work yeah and there's definitely a situation where
right now people hit a first wayland issue and then just switch yeah and there it's a silent
number you don't know how many people are doing that.
I know in metrics from KDE,
I know our Wayland numbers are going up and up steadily,
and we haven't even made it to default.
Now it's hitting around 15% or so,
which is quite low, but given it's not a default,
it's not that bad, except on Fedora.
But in other stats are different.
Aiming on Linux.com shows Plasma Wayland usage going up and up and up and up.
But overall, I think Wayland's still way beneath X11.
Yeah, it depends on...
I don't know, because my...
I did a poll recently amongst my audience, and my audience is the more techie audience
so it's like I don't know how accurate that would be
to more general
the general people but
amongst my audience
Waylon was bigger
but it's like within
like 10% of
like so it
and then Gnome it's like a lot bigger, like they're like much more
on the Wayland side, but KDE, I guess, cause KDE is more of that, like hacker desktop. Like there's
more of those people who are like going to have these like 30 year old X11 setups that they just,
for whatever reason, don't want to change. I think also that big passive group,
the people who don't follow blogs,
there's no reason to...
A lot of people won't have heard of Wayland.
A big group of otaku won't have heard of it,
won't care about it.
Yeah.
And at our point,
it defaults to the only thing that matters.
Yes.
I think that's a big part of why you can own a figure
with the Wayland side.
Absolutely.
Absolutely.
And I think that's a big part of why you can only figure with the Wayland side absolutely and I think
it did it again
why? why does Discord keep doing this?
every 20 minutes
it decides that it doesn't want to let you speak
okay
let's do that again
hi we're back. Hello.
Hello. Clearly Discord wants to do an x11.
It really does. I don't know what's going on today.
I mentioned that
defaults bigger, that's why Gnome Wayland is way bigger than the x Xtalk side. I don't know what you're saying after that.
Yeah, yeah, so
Yeah, so the vast majority of our user base
Don't care about X11 or Wayland. They won't even have heard of it. You need to follow developer blogs and
Or some sort of social media, reddits or whatever
There you can't escape it, but a lot of the people are just getting on with their jobs
using it to browse the web or write their thesis or whatever. For those finishing FHEs. And
so they're not going to care. Defaults are the only thing that's going to matter.
And I mean we could flip our defaults.
It's it again. Why? Why did it do it again?
Oh my go-
I don't know if this is like-
I- I've not been having any audio issues all day.
Like, this- it's just Discord right now that's causing issues.
Sigh.
Okay.
Hi. Hello. Okay. Hi.
Hello.
Okay. Go ahead. Continue talking.
We can change the default now. We can change the default next release.
And it would have been fine.
I mean, if people with a common case... All the common cases are fine. I mean, I've been using Wayland Daily Driver for years. Probably be fine for the majority.
But we would definitely have a vocal minority of people be upset in that process.
And I want to find that balance of not upsetting too many people while still getting a majority getting a benefit to Wayland.
upsetting too many people while still getting a majority getting a benefit to Weyland. Yeah.
So I think gradual process makes sense, but there's going to be some cut off and some level
compromise where we do upset some people, but hopefully that can be as small as possible.
Mm-hmm. Well, on that note, what do you think of the whole,
you probably heard that Neil wants to drop the whole X11 side from Fedora KDE.
Where do you sort of stand on that yourself?
Do you think the KD's in a state where most people are fine on Weyland?
Or do you think there are still areas where you would like to polish up first?
On a technical level, I think it would be fine.
On a social level, I don't think I necessarily agree
with this idea of...
I mean, there are things which will progress.
And motivating them by breaking their stuff
is not a policy that I think is very sensible.
Right.
In terms of carrot versus stick ways of motivating people,
you need to make that carrot bigger and more accessible
rather than just introduce a bigger stick.
And making your stuff, taking away an option
it will work, it's definitely a way of encouraging people
but in terms of
if that's the right way to go about things, I'm not sold
and I think everything can be done traditionally i mean i know i've been on raylan by default for a while i don't know how many of their users then change and i think having
that stat would be certainly compelling i do like as many stats as possible yeah yeah and plasma 6 is going to be a big jump in terms of wayland support because we've had
our toolkit frozen for so what so long and now it's going to get a jump of all the work we've
been doing for the last three years it's going to be better sorry go on i was just going to ask
when um when did Plasma 5 come out?
10 years ago, roughly.
Okay, yeah.
That makes sense.
It's been a long time.
So I'm going to look it up and go
it's actually 9. I'm sure.
Yeah, I should know
these things, but I'm old.
Yes.
So is it the right approach?
In terms of what you gain versus what you lose,
when you take away X11 and the fallback option,
you lose quite a lot.
I don't see what a gain is other than bullying people
into doing more work. So it's that effort of what other games
are there because it seems relatively small.
Hmm. Okay.
So I'm not sold on it, but I mean, it's not my project project so I want to make Wayland as good as possible so
if they do that things don't reflect badly
on us and we'll definitely
make sure that happens and
I do trust Neil to
have all the information before
making whatever your call is
but
having full backs is good
in my opinion.
And we should change the default and just keep increasing our motivation rather than
keep increasing a...
Increase a carrot rather than increase a stick.
At this stage, is X11 still the default of the project?
I mean, in terms of the default, it's what a logger manager has the first time round.
X11 is the default, but configurable by distros.
So, yes, it's a default, but I would expect every developer to be running Wayland,
which also is a problem because then potentially we're introducing X11 regressions. And the sooner we can drop some code, the
better. Wayland stuff is held back from the fact that we've got
some of this X11 stuff. No one's utilising some Wayland features
because I'm inviting two code paths and that's not always feasible.
Or having features that only work in one place,
which nobody wants to do.
So once we drop X, things will increase
with more Wayland features,
more reasons to actually use Wayland.
But,
whether now is the right time.
Right. From my point of of view we need a few more
releases with us being a default from my hat because we haven't had that and we'll see that
soon well there's still like a list of blockers that are like i i don't know what the link for
it was but like there is a list of kd blockers that still exist yeah i mean it's a wiki so i
mean take it with a grain of salt
that people are adding stuff on there.
But, yeah, session management's on there.
And crash handling is something you might want to bring up.
The color management thing's also, like, a big one.
Like, that's...
Yeah.
Yeah, and color management's got a couple different steps but basic srgb um
stuff will be in plasma 6 i've got no doubts about that and then i think we'll just see where we are
when we come to the feature fees and then make a decision based on what information we have then. So you don't see a near future
where X11 has gone, but you
see a
near future where at least...
Right now you would say that it's sort of the
development focus, like Wayland
right now? Oh, unquestionably
yeah. All of the developers I'd expect
to be on Wayland. And developers
of other projects as well, and not
just the Quinn and Plasma people,
but you know people maintaining Colourfaint or KMyMoney or all of this. I want to see more of
those people start using Wayland. But you don't see... Not just developers but also people who
hang out in social media. The people who watch YouTube with Way Wayland in the name they're going they're going to um
have switched over already you say that but my comments are like there's so many excellent
comments there are every time I talk about Wayland it's like tons of excellent comments and but this
goes back to the whole there the people who are most passionate are going to be the loudest.
And the people who are on XOR at this point are the most passionate people.
Because it does deal with the use cases for most people.
So anyone who's left over, are those people who are like,
Okay, I have this network transparency set up.
I have this, like, weird set.
Like, it's going to be those people.
It's not just like, I write code on the weekend.
Like, those aren't the people who are, like,
desperately holding on at this point.
It's like the people who are, like,
it's like the Devuin users.
Like, if you're using Devuin,
you are very strongly against System D.
Yeah.
Which goes back to the point about vocal minority.
I don't necessarily care about those people.
I do care about the silent majority
who just want to get their work done.
But hearing from the silent majority
is also challenging because of how
silent they are.
So you don't see a...
We're not going to see a
let's drop X11 merge
request from the KDE project
anytime soon.
I would be surprised if
Quorum were to land.
I wouldn't be surprised if somebody were to make Worm
just having seen Neverworm.
You don't expect anyone actually, like,
respectable in the project to do it just yet.
Not just yet, but pushing a default is definitely coming.
That I would expect.
Yeah, I mean, it's time for that it's
gonna we've got this list of requirements you just brought up um and when that's all ticked
i yeah i guess you did bring up the whole um you you mentioned like the session restoring stuff the
robustness stuff like we can talk about that as well,
because that I think is also really, really cool.
That I had no idea was even being worked on
until I saw the blog you put out about it.
I guess just briefly explain what the issue was
and how you were trying to go about it.
I mean, so the issue we've seen is
X server hasn't been touched for decades,
super stable, partly because of that.
It's also got a lot of separation between that
and the components that are being touched quite a lot
and doing crazy things, the compositor,
because the compositor is doing all sorts of flashy 3D effects
and it's doing all sorts of other jobs, doing your screen sharing, it's doing global shortcuts,
the compositor is taking more and more jobs and you don't have that separation, you've got everything
all together and if it were to crash you lose everything you lose all your stuff you've got going on and it
doesn't happen often but it's enough and it's just knowing that it can happen and that's a
sucky situation to be in you don't want to just lose all your stuff so we set out to try and fix that and the solution is very simple.
Instead of clients quitting when they detect that the compositor is gone, they don't.
And obviously that part's easy, but you still need to come back and say,
OK, I remember I was showing a window. Here's all the information for that window again.
And if you're using a toolkit, which the vast, vast, vast majority of applications are doing,
that's pretty trivial.
Your toolkit knows about the current state that we were in.
And it also knows how to cancel any operations that were happening,
if you were doing a drag and drop, if your was held down or if you had keyboard focus so all we need to do is have your toolkit pretend a bunch of events
have happened and then the applications come back and i mean i'm not going to do it right now but i
could run quinweil and replace and applications come back. And most importantly,
because transition is very important, I don't need to touch those applications.
Yep.
So I wrote support in Qt and that doesn't have any external dependencies,
that's going to be in Qt 6.6. So any application using Qt 6,
with maybe a few exceptions for some quirky whaling things, will just
reconnect and restore. And even if you're using some KDE libraries for other
additional whaling things, they've all got a restart handling, it'll just come back,
same as before. Other than your windows jumping about, you don't really notice it.
windows jumping about you don't really notice it.
But it's not just about Qt. We also have patches for GTK and patches for SDL. The challenge with those is we also need
patches in Mesa, well not just Mesa, obviously in
VideoDriver, some patches in the graphics stack
because we need to tell them here's a new pointer to a new
connection. And all
they need to do is update one
tiny number
between here and this space.
But sorting out that
is challenging.
So we've got a proposed
GL extension.
I've been putting it off because
most of it is just dealing with all of the politics of it. GL extension I've been putting it off because mostly about just
dealing with all of the politics
of it
and my intention was
I had some pushback with people saying
oh this isn't going to work
I managed to make it work without any
dependencies so once we start
seeing that once people start seeing
well it does like I've tried it
20 times and it
keeps coming back and i can't break it then when i submit these other merge requests people are
going to say well actually it's it's it's fine let's do it let's let's opt into this so that's
all my plan is i'm quite a slow person um because i've been doing this for years just every now and
again just pushing things forward trying to get a cute side in. And once that's more established, I'll just upload these other
patches. And SDL has already merged some of this stuff already behind a niff death.
So SDL support is coming and I had Counter-Strike. CSGO has Counter-Strike, isn't it?
Yeah, yeah, yeah. Okay. I had CSGO just surviving,
just catching any issues.
And I technically had to patch that game
to use a newer SDL,
but I didn't patch the game itself
because I can't.
And, you know, SuperTuxCart,
all these things, they just worked.
And the patches are fairly minimal.
I've got GTK patches, I was running Gnome Chess and all these other things.
Something like Firefox might prove harder, but Firefox already has its own crash handling
system.
So one of the design goals was to be flexible.
If Firefox is better off just quitting and reopening,
well, let's do that then.
And we just need a small hook to reopen it again,
and maybe not have that prompt saying,
do you want to restore your session?
But that should be a relatively small patch and and then we're flexible with different approaches
and i think that's important get something to talk it to handle everything if you want to do
something on your own do something on your own something like wl paste a command line tool to
paste something from your clipboard if the Wayland Composer crashes,
that exits. Who cares? It doesn't matter. What matters is your file transfers and all
of your more boring stuff. So it's not an insane concept. Windows does this under your
hood, but it's under your hood. Because Wayland's so low level, I'm having to re-implement it in a few places.
But it's going to work.
And it's going to...
Hopefully most users will never see it.
But when you do need to see it,
I think having that safety net is important.
That... And I think that's, having a safety net is important.
That is not, sorry. Sorry, yeah.
No, no, I've gone into just giving a presentation mode.
No, go ahead, that's fine.
Okay, yeah.
But it's not just about crashes.
I mean, the developer experience,
we're going twice as fast as we did before.
Because I have my print statement.
Like, uh, press the button, Quinn's come back, I don't have to reopen my IDE.
Why is Discord like this? Why does it keep doing this? It's done it again.
It does not want to start this conversation!
Go on, take, Let me just see something.
Yeah, I'm looking at my
QPW graph.
It says everything's still connected, so it's just
Discord that decides it wants to cut
out the audio. That's really weird.
Um...
I thought it may have been like Pipewire dying, but there's nothing wrong on Pipewire's end from what I'm seeing.
I don't know.
Um, I'm not gonna fix it from here.
Yes, uh, shall I continue?
Yes, yes. Yes Shall I continue? Yes
It's not just about crashing
Developer experience has increased
significantly
I can just add my print statement, restart
and just continue where I was
getting information and I think
it's helping why we've seen
our Wayland productivity just jump
in recent weeks, we're catching up
so much faster than we did before.
And that's good.
Plus it opens up some new advert news that aren't just about crash handling.
I did some demos in my blog, which I know you saw,
of switching between different compositors at one time
and having that just work and
so i have some extra caveats in here in the version that's being shipped in cute there is some
detection of making sure that you can't replace a compositor because that could be a security
role sort of right we check your original sockets the same.
So I just had to disable that code and disable that code in SDL to do this demo.
So cheating slightly from the ship code.
But it's definitely doable.
And with some added infrastructure, you could sort all of this out.
And that's interesting. maybe not just for globally,
but if you could do this on a per application basis of saying well I've got this one application
open now send that down Waypipe and then bring it back or stick it on another compositor which
is purely on even on a different GPU or anything like that
that's got some added perks
like I don't know where you want to take it
I just know
it unlocks it so we can take it in some of these places
just having something there
that's being shipped that then people are like
if you give people the option
to mess with something
they will find a use case for it
a use case that you'll have no idea why anyone would ever want to do but they find it useful
for some reason absolutely i think yeah i'm not going to tell people how this can be used i think
other people are going to tell me and absolutely's going to be interesting. And another thing I demoed
and again, this is stuff about robustness handling. That's
stuff that's shippable quality. It's being shipped.
It's other stuff in more researchy, you can't use it
right now state of checkpoint
restore in user space of having this application, suspending it to disk,
and then moving it to another machine and then reopening it. All of this becomes possible.
And I remember I was reading through your Creo docs and kept seeing, oh, X1111 you can't do this x11 or you have to also nest an x11 server
horrible hacks we're using vnc to try and achieve this stuff and they kept saying it was not
possible it's not possible and it was like it should be possible now because i'm not um
because we don't actually if you can handle a composite crashing, you can handle it being a new composite when you reopen.
It's the same thing, you just need to close the socket.
So there is actually a patch in Creo which I didn't mention, again, cheating.
There's a patch in Creo that says if you find the socket Wayland 0, instead of saying you can't handle it, just close the socket.
It'll be fine and
it's this tiny tiny patch of don't suck it it'll be fine and and then everything just unlocked
everything just worked and it has all the same caveats that using checkpoint restore and user
space has like if if you checkpoint color paint Paint and then Update Color Paint and then try and resume it,
it will just say no. Which is fair enough. And it does detect it, it does just say...
It's a very long message that effectively is no, but with a lot more words.
And there's also some issues of if a PID's already being used and
other caveats but I think when you combine this with flat packs some of those problems start to
go away everything's its own PID namespace everything's its own mount namespace you can
control what version of something you know exactly what's in that bundle there's not a lot of stuff
coming from the system and you can pin a version so and you can prevent update or warn something so
this isn't a solution in itself it's we've unlocked this somebody might want to combine
it with these other things and make something new maybe Maybe I don't. Maybe it's something that will only exist for a few
niche cases, but
I think unlocking
it could be
interesting.
I just think this is really cool.
Just the fact that somebody
thought this was a good idea,
and just, like, let's see if it's possible.
Everyone's like, no, it's not possible.
But you're like, no, I'm going to do it.
Like, that's just awesome.
It kind of reminds me of how...
I think it was DXVK came along,
where the author was... No, it was the DX9 translation, I think it was DXVK came along where the author no it was the
DX9 translation I think
it was one of the parts
where Joshua Ashton
was like hmm
people are telling me that this is not
possible there is no way to translate
these DX9 calls
into something that works on
Linux
no I'm gonna do it I don't care what No, I'm going to do it.
I don't care what you say, I'm going to do it.
And then he did it.
And now we have TXPK and like everything just works.
Absolutely.
So, and this has still got to enter mainstream.
And is this a difference between something that we rely on
for a few apps and something that works everywhere for every niche case but and it's handled everything i've thrown
at it so gonna be interesting to see i think what just space which is space
so something sounds like something a YouTuber would say.
I'm fine, I'm fine.
Take over as well.
It kind of sounds like it, yeah.
Or someone who's trying to pretend to be a YouTuber.
Wow, that was an absolute burn.
So I presume at this point you are just daily driving driving Wayland, like just full stop, yeah?
Absolutely, yeah, yeah, yeah, yeah.
What are you actually using as a distro at this point?
I use Arch.
Okay.
The thing with being a distro is all of the stuff that I'm working on, all of the KDE stuff, that's all self-compiled because it's a lot easier to
just jump in a project
if you've got that available.
So to a large extent,
it doesn't really matter.
But for that reason,
anything that's KDE specific
actually ends up being in the way
because then I've got
all of their customizations.
I don't want to distro those KDE packages.
So I needed something that's
as vanilla as possible and nice and up to date so that's where Arch kind of fits in.
Yeah I guess that makes... look you could have gone on Gen 2 if you want to compile everything.
I don't want to compile everything. I mean for all of this restart work, I've been trying to do some patches in Firefox and Electron
and it takes a while.
It's like definitely
you start something going
and then you work on your laptop
on something else for your day.
You're saying there's some,
possibly some issues
with doing like the restart
on Firefox.
What would have been the problem?
And I know obviously
they have their own
like recovery system, so it makes more sense
to use that, but why would it have been an issue
with Firefox to do it in another way?
Simplest
problem means they use
GTK3. Changing
GTK3 is impossible.
Right, okay.
You can get a bug fix into
GTK3. You're not going to get a new feature.
And that does put a bit of a problem in this restarting work.
It's only going to be...
If you want to rely on it for all applications,
it's going to be several years down the line
before all your applications survive,
because I can't do anything for classic apps.
I can do something for X-Wayland,
but that awkward gap in the middle of these Wayland clients are on Wayland and are old.
My file manager is PCManFMGTK2.
At least you're running on X-Wayland, so that'll be fine.
Yeah, well, actually, I'm actually on X11 right now.
I am very heavily... You have no idea how many comments you're
gonna get from that.
You're- No, people know that I'm being awesome right
now.
I was using Hyperland, I had some- So, I know that KDE does not have this issue.
On KDE you can capture like individual windows
on Wroot you can't
there's like
there's an open bug report about it for a while
you cannot do pipeline video capture for individual
windows, it's a known about
problem, there's some issues
that Simon's been trying to deal with
for a long long time
but Hyperland
has a custom portal that lets you do the window
capture um i was using hyperland the custom portal you know whenever you're doing additional things
on top of what's already there you might have some buggy code and there were some issues that
were causing my entire compositor lockup at the time so right now I'm back on X11 but I'll probably-
Only you had a way to restart a compositor without losing your running apps.
Imagine that. Well I have- It's not just about crashes,
it's about your lockups as just as- I have said that I'm probably
gonna swap to Plasma 6 when that comes out. It'll be my first desktop environment I've been using i3, BSPWM
Awesome, Hyperlens, Sway
It'll be the first time I actually use a full on
desktop environment
We have a reputation with.0 releases
so I'm not going to throw it out there
but no, yeah, it'll be fine
I know about I know about...
I know about four.
Four is obviously the most...
Yeah.
No, 6.0 is not going to be the same state.
Yeah.
And, yeah, definitely try it out.
And then I expect to...
I'll be in the comments saying nice things.
Well, look, surely everything I've heard,
it's not like a revolutionary,
we're just trying to reinvent the wheel situation.
It's like, we have a wheel, let's put some rubber on it.
Let's make the wheel a little bit better.
The thing with these big releases is it's not so much
about adding stuff it's more about removing some old stuff because
it's only time to get to break API and that is problematic is
it's your only time to remove some old stuff. And sometimes you do need
to remove some old stuff to go forwards. And yeah, so point O releases generally shouldn't
be that exciting. It should just be the same, but you remove loads of stuff. And it's kind
of frustrating because from a user point of view, you expect point O, big new number,
more stuff.
Right.
So we end up having to comply with that a little bit.
We still throw in a few new features
because you can't not have any new feature development for a year
while you're doing boring...
Double-click default, there's your new feature.
Yes.
No, there's still going to be some exciting visual stuff.
As I said, I've not used it at all before, so everything's going to be exciting for me.
Oh, okay.
Just having a desktop environment there is going to be crazy.
Having all of these extra applications, having all of this stuff just pieced together and
working.
You don't need to install all the other applications.
You just install a Plasma base.
That's fair. And it's going to give you all of the stuff,
like being able to choose your network
and your Bluetooth and your volumes.
I remember in the days of the old,
just running it like a window manager,
you have to do all of that by hand.
So you're going to have all of that stuff.
But applications bring in what you need.
That's fair
I think there is a meta package
that will bring in the entire world
but I don't think everyone uses that
particularly on the Arch base
to be fair I already have a bunch of KDE dependencies installed
because I have Kdenlive installed
which pulls in a lot of things.
Yeah we tried to split our packages up to be really tiny and the rationale behind that wasn't so much for Linux usage but it was about people making embedded clients. Qt's got a huge world
there and if one of those people needs to extract a zip archive or whatever
grab the relevant library. If one of those needs to do some advanced translation, grab
grab our libraries. I'm making it more accessible for those people to just compile and stuff. And that meant
our dependencies look bigger, so it could have gone from instead of having KDLibs, which is one library,
we've now got 50 tiny libraries, but it could have gone from instead of having KDLibs, which is warm library, we've now got 50 tiny
libraries, but it's
actually smaller
because of that. You're only pulling in what you need.
But it looks like
a bigger number.
I guess that makes sense, yeah.
That does make sense.
I've said this before, but I have
currently 1903
packages on this system.
1903.
So in frameworks, a KD library is roughly 100 if you get all of them.
Yeah.
I can't imagine Kdenlive is using all of them, but it wouldn't be far off.
It'll be using quite a bit.
No, my problem is that I've had this system for probably like four or so years
when i last reinstall and i you know will i i will do these showcases of applications and then i
sometimes forget to uninstall them so i build up a lot of garbage over the years um i've considered
doing like a fresh install and then doing that testing inside of like DistroBox.
Just having containers there
so I can just delete the containers
whenever I'm done with the application.
But that involves me just doing a reinstall
and I really don't want to do that.
I'm too lazy.
It all works.
So I just don't want to touch it right now.
I'll do a reinstall when my
root drive dies.
Your Discord doesn't work.
Burn.
Yeah, that's true.
I don't know why. I don't know what's going on today
with Discord. No, no, no, we didn't fix it.
I wish
I... Look, if a reinstall
would fix the Discord right now, I'll go if a reinstall would fix the discord right now I'll go do a reinstall
but
yeah that's that one that one's definitely not gonna help
for that
I don't know
I'm happy with like Arch
it does everything I need
but like yeah
I
I do have another episode planned soon with Nate Graham,
so I'm sure he's going to tell me plenty of stuff
about why Plasma 6 is going to be great.
He's a better salesman, definitely.
He said have the technical discussions with you
and save the other stuff for him.
Ah.
He was saying that you're going to be a lot better
at the technical stuff than he would be.
I don't know.
I've read his blog post.
He might be selling himself short, but...
Nate does an absolutely important job
because, same with your YouTube channel,
I mean, communicating what's happening
is as important as actually
doing it. But it doesn't seem it when it comes to actually writing a blog post.
And because it's time before I could spend that fixing a bug. And I
know long term that writing a blog post might inspire somebody else to get
involved and they'll end up
doing more work yeah than if i just fix the bug but in a short term it's still like no i should
just do something more productive more productive so nate's role of summarizing what we're all doing
and then actually telling people i think there's been this perception of plasma
just gaining momentum in recent
years and
I don't think it has, I think it's just
changed the perception because it changed
our communication
and it's so important
and he does a great job of that
Yeah, it can seem
like, especially
with some of these bigger repos, like Wayland Protocol is a good example of this, it can seem like, especially with some of these bigger repos,
like Weyland Protocol is a good example of this.
It's like this impenetrable wall of just discussion.
Like, it's hard for someone who's not involved in that fairly frequently
to really understand what's going on.
I can imagine KD is exactly the same, where you need someone that can summarize what the intentions are here,
what's trying to be solved, what's actually being worked on.
And that, even if someone doesn't directly go and help out,
it may encourage someone to want to donate to the project even or they they might
get involved in something else similar they might want to you know having this is i don't remember
who said it to me but they would like to see more communication between these like between like
youtubers bloggers and then the developers sort of bridging the gaps
people have a better understanding of uh like what's really going on in the foss world it goes
back to the thing i was saying earlier where the developers seem like these like faceless entities
it's just a name and a a profile picture it's unclear really what's going on and people like me people like
nate can sort of act as that way for people to have an understanding without obviously you know
getting into the the source the line by line source code changes that are happening like
that's important as well but it's also important just to know that things are happening and things are getting better.
Absolutely.
And doing it in a way where you're not doing it just for your clicks.
I mean, there's new sites which sometimes intentionally stir up drama just to get those click-baited titles,
but there's plenty of just views.
It's only a drama.
there's not a need for that there's plenty of
there's plenty of drama
I
I don't know what I meant
so your blogs that come from
the ones that come from
net and KD
they're only focusing on one thing
but they're not trying to stir anything up
yeah yeah
you don't need to like
cherry pick anything with
once again go back to Wayland Protocols you Once again, go back to Weyland Protocols.
You can just say what's happening in Weyland Protocols.
You don't need to make anything up about it.
It's drama enough by itself.
Absolutely, yes.
And then with Plasma, there's a lot of exciting things that are happening.
Just talking about what's going on, that by itself is already interesting enough. Like, yeah, maybe
not every single change is super exciting, but, like, there is enough interesting stuff there that,
you know, gets, like, there's plenty to talk about. And I'm, I have this giant list of topics that I
want to talk about at some point, and I never get a chance to talk about
everything that I want to talk about, like, there's always things I have to cut from the list,
just because, this is, I do six videos a week, there's only so many slots for what I want to
talk about, so I, I have to focus on, like, the, like, the things that, I tend to focus on the
things that really excite me, they may not be the things that exc tend to focus on the things that really excite me they may not
be the things that excite everyone but if i'm talking about something i'm talking about it
because this is something that like i really want people to know about i think that makes sense
because i mean from a developer point of view you know when someone's working on something that
interests them and that's important for for people to work on interest on them and you videoing it about it it's the same as
hashing on it it needs to be interesting otherwise it's not gonna go anywhere
yeah no that yeah you summed up pretty well
um I think we talked about
pretty much everything
I want to talk about
um
I think
so actually
also we're pretty much
on the two hour mark as well I did want to
mention the
the um
whaling input method stuff if you want
to just briefly touch on that otherwise we can stop off now
you did a blog post about like I don't know if there's really much to say about
that outside of what was in the blog but yeah I mean it the only news from that
is the input method guy somebody who does fcitx
came and said a lot of the way input methods works fundamentally is broken um so that was
an added twist now i'm happy to wrap things up you can always have me on again. Awesome. Um, yeah, I guess direct people
to where you want
to direct them to,
like your blog
or anything else
you want to send people to.
Give out some links.
Single click setting.
Uh,
give us some links
where they should go,
whether it's KDE stuff
or your stuff.
Planetkde.org.
So universal.
What is planetkde.org?
Is that...
Oh, my goodness.
How do you find anything?
Yeah, so planetkde.org is an aggregator
of all of the KDE blogs.
Oh.
Which, if you're
interested in KDU, it's the place to follow.
If you're not, I mean,
why would you?
No more to have a planet.
It used to be a thing back in the day,
back when RSS was cool.
I have people just send me links.
Alright.
If people want me to talk about something,
I have a suggestions tab in my Discord, and
it's always just got people being like, hey, talk about this thing, talk about this thing.
I didn't know this thing existed, that's cool.
Lots of planets.
But I mean, if people are sending you links, then you don't need this.
I think you've got your own magic world. It's not everything that I talk about,
but there's definitely a lot of it.
Is that the only one you wanted to mention,
or anything else?
No, it's
only thing vlog.davidemerson.co.uk.
I don't update it very often,
because of the reasons I said.
Absolute laziness.
But, that does mean
all we're posting on now are
hopefully interesting.
Not too much
spam content on there.
You focus too much on development code.
There's your reason for not writing blogs.
Oh, I'll make a note.
Is that the only thing you want to mention?
I'll just leave that in the
description down below and I'll
edit stuff. Yeah, I think so.
Cool. Thanks for having me.
If there's anything you specifically
forget about, just let me know and I
will just chuck it in the description as well.
Okay.
Awesome. As for me,
the main channel is Brody Robinson. I do Linux videos there six-ish days a week. for me the main channel is brody robson i do linux videos there six
ish days a week i have the gaming channel brody on games right now i'm playing through
armored core 6 and kingdom hearts dream drop distance be sure to go check that out
um especially if you want to see me very angry watch me play armored core 6 i get
very heated playing that game um And if you're listening to
the audio version of this, you can find the video version
on YouTube at Tech Over Tea.
If you're watching the video version, you can
find the audio version pretty much on any podcast
platform, and there is an RSS feed.
Search for Tech Over Tea, and you will
find it. I'll give you the final
word. What do you want to say?
Remember to like, comment and subscribe!
And smash that bell button for notifications about bells!
Perfect. Nailed it.
One ever YouTuber.
See you guys later.