Tech Over Tea - Budgie Desktop Is In For A Qt Future | Joshua Strobl

Episode Date: March 27, 2026

Today we have Joshua Strobl of the Budgie project and Buddies of Budgie back on the show to talk about the projects move over to the Qt library and KDE frameworks as well as the Budgie 11 future.=====...=====Support The Channel==========► Patreon: https://www.patreon.com/brodierobertson► Paypal: https://www.paypal.me/BrodieRobertsonVideo► Amazon USA: https://amzn.to/3d5gykF► Other Methods: https://cointr.ee/brodierobertson==========Guest Links==========Website: https://buddiesofbudgie.org/Mastodon: https://fosstodon.org/@buddiesofbudgie@floss.socialPersonal: https://fosstodon.org/@me@joshuastrobl.social==========Support The Show==========► Patreon: https://www.patreon.com/brodierobertson► Paypal: https://www.paypal.me/BrodieRobertsonVideo► Amazon USA: https://amzn.to/3d5gykF► Other Methods: https://cointr.ee/brodierobertson=========Video Platforms==========🎥 YouTube: https://www.youtube.com/channel/UCBq5p-xOla8xhnrbhu8AIAg=========Audio Release=========🎵 RSS: https://anchor.fm/s/149fd51c/podcast/rss🎵 Apple Podcast:https://podcasts.apple.com/us/podcast/tech-over-tea/id1501727953🎵 Spotify: https://open.spotify.com/show/3IfFpfzlLo7OPsEnl4gbdM🎵 Google Podcast: https://www.google.com/podcasts?feed=aHR0cHM6Ly9hbmNob3IuZm0vcy8xNDlmZDUxYy9wb2RjYXN0L3Jzcw==🎵 Anchor: https://anchor.fm/tech-over-tea==========Social Media==========🎤 Discord:https://discord.gg/PkMRVn9🐦 Twitter: https://twitter.com/TechOverTeaShow📷 Instagram: https://www.instagram.com/techovertea/🌐 Mastodon:https://mastodon.social/web/accounts/1093345==========Credits==========🎨 Channel Art:All my art has was created by Supercozmanhttps://twitter.com/Supercozmanhttps://www.instagram.com/supercozman_draws/DISCLOSURE: Wherever possible I use referral links, which means if you click one of the links in this video or description and make a purchase we may receive a small commission or other compensation.

Transcript
Discussion (0)
Starting point is 00:00:00 Good morning, good day, and good evening. I'm as well as your host, Brodie Robertson. And today, I believe this is your, you've only been on once before, haven't you? Yeah, it's my second time on. Yeah, thanks for having me. Yeah, it's a pleasure to have you back. For anyone who didn't watch the previous one or doesn't know the work you do, introduce yourself, we'll just go from there.
Starting point is 00:00:21 Yeah, so I'm Joshua Struble. I am the founder and lead of Buddies of Budgy. We work on the budgy desktop environment. You may have heard from us from great hits like we're moving to Q5 and then we're moving to GDK4 and then we're moving to EFL
Starting point is 00:00:37 and now we're moving to QT6. So I'm here, baby. Oh, right. I forgot about that one. To talk about all the wonders of cute six because we actually have written code this time around for it
Starting point is 00:00:49 if you could believe it or not. So thanks for having me on. Yeah, no, pleasure to have you back. I guess like maybe it's a good place to kind of start, like, what... What was actually going on with, like, the prior toolkit stuff? Was that just, like, discussions? And then...
Starting point is 00:01:05 Because it sounds like, obviously, now you've code. You're doing, like, development streams and stuff. We'll talk about that a bit later as well. But, like, why was there this idea that there was going to be, like, a big swap? We might have touched this last time. I don't remember. Yeah.
Starting point is 00:01:19 So, back in the day, this was 2015, 2016. I don't have Archive. dot org and it's been years. Aiki was not too happy with the way G2K3 was moving and some of the Gnome ecosystem was moving. So even back then, particularly he had some bad experiences with trying to take up maintainership of Gnome screen saver, which then led to Budgee screen saver. So he wasn't having a good time.
Starting point is 00:01:47 So he's like, all right, well, let's go ahead and write everything in QT5 and also at that point improve our wayland story, even back then. So he made a big announcement, but nothing to show for it, because, hey, I got to learn from somebody, right? And spent a good part of like half a year working on Q5 as an implementation. He didn't get too far, but he was working on it. and then the life of a VolvoS
Starting point is 00:02:27 and souls pulled him in different directions and then he disappeared so when he disappeared when he disappeared which when he disappeared which was in 2018 me and
Starting point is 00:02:45 Beatrice aka Datatrake we were sitting in evaluating our options and at that point like we had long abandoned as a team the notion of going to Q5 because everything else was GDK and the whole the idea of converting all of our applications to QT wasn't really something that we were up to the task of doing as a team. So we were like, all right, well, if we're going to be sticking with GDK, well, what's the next biggest thing that's coming right around the corner any day now? What's GDK4? So we were like, well,
Starting point is 00:03:22 we'll just say we're going with GDK4, right? I mean, round about when was that happening? And that was 2018. Right. And GDK4, so, you know, 2018 goes by, 2019 goes by. And I believe it was, was 2021 when it released? I don't remember I have to look it up.
Starting point is 00:03:45 Sorry. I feel like it was maybe, of course, Kaji isn't pulling up the result. But years later, they finally get it out. And to be clear, I actually think GDK4 is great. Maybe a hot take there, given everyone likes to think I like to crap on GDK all the time. But objectively speaking, it is a vast improvement over GDK3, especially when it comes to like lists and list models. and when it comes to not having to subclass, which back in the day, I used to really, I liked to subclass to hell and back, and the budgie code base had lots of subclassing,
Starting point is 00:04:30 but that made it really complex for, for like popovers as an example. So they had ripped out subclassing for popovers and a few other things. Can you just briefly explain what you mean by subclassing in this context? So subclassing is when you have a, let's take, for example, GDK popovers. So when you click on a popover, you expect to have window content. And subclassing allows you to extend effectively the functionality of, as an example, a popover and change its behavior. So you can override particular features and functionality. And we, at the time, we're considering using popovers for budgie to replace our terrible, dedicated GDK windows.
Starting point is 00:05:21 Because while we move to Wayland, well, we lose out on the wonders of arbitrary positioning. So, but it's just, it's a superior option. But unfortunately, all the cool stuff that we are really looking forward to went into a different, library that shall not be named. Mm-hmm. And that made, that made me very unhappy. I understand why they did it, but that doesn't change the fact that I was not happy with that. So, given all the ecosystem changes and also given how we were seeing the engagement between System 76 and Gnome at the time, which sort of then precluded their ration of cosmic.
Starting point is 00:06:09 at least the Cosmic that we all know today. Right. Cosmic originally was like, Cosmic originally was like the customization on top of the Ghanome desktop before they turned it into what it is now, the Smithy-based, ice-based thing they have. Exactly, yeah. So we were like, all right, as a team, we're not interested in C++.
Starting point is 00:06:34 I don't know why. whatever. All right. It was years ago. Some people had different opinions. So if we're not going with C++, it doesn't leave us many options. So all right, EFL it is because, well, that's the last, that's the last option we have besides building our own toolkit, which we also weren't going to do. Right. That's, that's an entire
Starting point is 00:07:00 project unto itself. Yeah. But this time around, we were going to just build everything out of EFL. We were going to rewrite everything. We were committed to that notion. And then I leave Souls for unspecified reasons. And I decided to create a dedicated org for Budgie desktop. And we all agreed. So it was Evan, aka Eben Degger,
Starting point is 00:07:36 It was Campbell, aka Sarah a bit, David, aka Foss Freedom from Uber into Budgie and myself at the time. We all just agreed we're not going to say shit about what compositor, not what compositor, but what toolkit we are going to use. And we're just going to keep everyone guessing, oh, you want to believe it's EFL? You know what? I'm not going to say any different. Oh, you want to say it's iced because I mentioned it's theoretically a possibility. just like how it's theoretically possible that we go with G2, right? I mean, nobody would, but you could. Yeah, you know what?
Starting point is 00:08:14 Dream it. It's sky's the limit. But internally, we were all like, it's going to be cute, right? We know what cute's capable of to a vague extent. I mean, once you start really looking at the APIs, you're like, damn, they do that too. Well, okay, well, all right, that's going to save me a few thousand lines of code. But we all kind of knew. And none of us were anti-C++ either.
Starting point is 00:08:41 So we decided, all right, well, we're just going to keep that in our back pocket. It's going to be cute. But we're not going to announce anything until we actually have something shipping. We are like, I put my foot down and we're like, we're not going to do pre-announcements. That is like, I literally pre-announced two of those things and they both fell right on their face. right i i take complete ownership on on those two i don't take ownership on the q5 one but uh the other two absolutely so this time around when we have production code out we will announce something and uh it took a lot longer than any of us expected uh maybe a couple of years
Starting point is 00:09:30 longer than any of us expected but we got there in the end so when did the qt six stuff actually start. At first line of code. The first, well, we were all kind of tinkering, right? Like I tinkered with like my audio manager application that I had spent a little bit on.
Starting point is 00:09:52 I had started converting that to cute so I could get some experience. And that was in 2024. Okay. Is when I started tinkering.
Starting point is 00:10:05 Like we knew by then. Campbell had written Waycheck, which I know you've covered before. And that is written in Q26 as well. But in terms of actual budgie code, if I go into my budgie desktop services, hopefully there won't be too many commits. But it was, let's see, let's see if I could find it. Forgeo, don't fail me now. Come on.
Starting point is 00:10:33 I believe in you. Uh, it was last year when I converted it. So December, uh, no, it was actually December 2020 as well when I converted it from S-D-Bus CPP to Q to D-Bus. So that was the first time when we had actual Q code in Budgy desktop proper. Mm-hmm. So when was the first, so that's in like the code base. So when was the first actual like shipping code? A budget 1010.
Starting point is 00:11:07 Okay. So that was... When did that happen ago? Month ago or so? That happened in January. So not that long ago. Yeah. Okay.
Starting point is 00:11:15 Okay. January of this year. Not the January that we had planned last year. Or the Q1 of last year or the first half of last year. Well, I do recall the announcement of Wayland was also going to be shipping last year as well. Yeah. And then we started working on the bridge. functionality for LabWC and I was having a real, a real joy with the WLR output management
Starting point is 00:11:43 protocol, which is definitely up to modern standards and definitely has things like ICC profiles and a bunch of other things that you would expect. It doesn't, it doesn't at all. It's a, it lacks all of that. And there is also a really good user story around persistent configuration. there isn't an automated way. You have to write your own configs. With like Kanxi, which is like a sway thing, like a sway BG's attack, it's terrible, and it's not automated in any way.
Starting point is 00:12:19 Yeah, so I had to fix all that because telling a person, oh, hey, yeah, just open up this random file in this random DSL and write your thing there and hope it works. that's not gonna that's not what we do so i spent a lot of time on trying to fix a lot of deficiencies so so where do things stand right now like what what is the kind of state of things obviously you know don't know how long it's going to take but like what what is what is working what's not working well magpie technically it works already
Starting point is 00:13:02 I could... Magpie being... ...windows. Magpie is our Mere-based Whalen Compositor. Mm-hmm. Which I know is quite a surprise to people, because when most people think of MIR, they think of the thing that was being developed
Starting point is 00:13:22 at the same time as Wayland, as effectively an alternative to X-11 in Wayland. But that's not what it is nowadays. It is a framework for building Wayland-based compositors. And if WLRoot's is the 30 lines of Wayland Compositor Code that you're going to write anyways, mirrors like the 60,000 lines. It handles a lot for you, which is great for our really small team.
Starting point is 00:13:51 But we have that working, and we technically have a panel. It doesn't do anything, which is what I was working on this week. I'm actually having it, like, get some configuration and dynamic sizing, but I'm a scrub when it comes to QML and integration of C++ still, so I didn't quite get it working. But that's in progress. And, yeah, that's currently it. I know Evan is often the weeds working on notifications already, so a dedicated notification server and then OSDs. So while I'm working on some of the panel code, he's going to be working on that. But that's the current scope.
Starting point is 00:14:37 So you mentioned you have some custom quality being worked on there with MIR. You mentioned LabWC in the original announcement. So is the plan to have both? Is LabWC kind of just there to have something working? Like, what's happening there? So LabWC is the preferred default for Budgie 1010. So Budgy 1010 is the GDK3-based desktop environment that we, like, we fully moved over from being X-11 only to Wayland only. So we don't support both.
Starting point is 00:15:16 And at least in terms of the user story for Budgy 11, well, I'm not locking anybody down to using Magpie. They could, so long as their composer supports the protocols we use. I don't care what they use is their freaking system. If they want to throw Neri at it and it breaks, yeah, fix it, whatever. Like, you know, we'll do it live. But LabWC itself, I don't expect us to be consuming for Budgie 11 at the very least by our planned preview one. Which no timeline for it because we are fantastic at timelines. but we already have
Starting point is 00:15:57 a laundry list of all the must-haves for Budgie for Budgie 11 preview one I was curious about that because with Cosmic even though it's not documented right now you can swap out the compositor with both KDE and Gnome
Starting point is 00:16:13 you can't really technically could with KDE kind of but a lot of the shell is also implemented through the compositor so that is still something you're going to be able to do. It's just, is that something you want to encourage?
Starting point is 00:16:29 You want to have that documented, or is it something where if people want to swap out magpie, they could go and do so? With, yeah, I mean, documentation is always a pain point, but yes, I would like to have a clear, clear guidance on, hey, you could do whatever. Here's the, here's the Wayland protocols that you need to support. and we actually, as part of our building budgie 10-10 document for like packages, we say, hey, you can actually ship this with like, if you want to ship with Wayfire, you can. And in fact, the Ubuntu Buggy guys wrote a bridge. So we already have it working under Wayfire, which is another WL RootSpace composer.
Starting point is 00:17:10 And in fact, for my streaming PC, I have it running on top of Wayfire because it's more stable. OBS doesn't randomly crash and somehow lose the connection to the wavelength socket. I don't know how that's possible. But regardless, yeah, absolutely. I want to have it documented. I want to encourage it. Here are the settings you should take into account and the integration patterns. And the control center that we're going to be building, we don't have it locked in stone, but it may be that it uses KCM.
Starting point is 00:17:44 And we provide a clear path for even writing graphical configuration. directly in. So we would have one for Magpie, and then if you're running something else, maybe a different panel would show up for like Neri with its own options. This is all stuff we want to expose. Obviously, when it comes to like the Whalen libraries, and you don't really have much of a choice in that regard if you want to do C++, you've kind of just, like, if you're going to do W-L roots, you're going to do C.
Starting point is 00:18:18 if you're going to do yeah and then if you and then you consider maybe Smithy you'd then have to do Rust instead yeah and I have absolutely no issues with Rust
Starting point is 00:18:31 but Smithy I would say is more of a parallel to to WL roots than it is to something like Mirich in fact they as far as I'm aware they explicitly call out
Starting point is 00:18:44 that they're not a framework and that's perfectly fine and I know the XSEE people recently announced that they're going to be using Smithy, and I completely agree with that decision. They're able to have a dedicated person work full-time leveraging funding from XSEE to make that a reality. But we're a much smaller team. I have a full-time job. And to be frank, I don't think composers are particularly sexy of a topic for most end users.
Starting point is 00:19:17 It's can it display my application? Great. Can I full screen something like a game and performance is it terrible? All right. Good enough. Can I do some basic window management in tiling? All right. Well, that's basically it.
Starting point is 00:19:35 So for us, MIR makes a lot of sense. C++ native like you mentioned. We don't, so we don't have to do any sort of wrapper of like X turn C around WL roots. And we get a lot more out of it, especially if you use mural, which is the mere abstraction layer. Right. I was not actually aware of that until I saw that in your post. So what is mural then? Mural is, as the name implies, an abstraction layer.
Starting point is 00:20:07 So it handles things like window management policies. So they have a bunch of predefined ones, including, like, floating window management policies. Okay. And they handle the actual rendering. in decorations and you just say if you want to prefer SSDs, boom, done. It's just one flag. And suddenly, oh, yeah, we support SSDs. We're not going to force CSDs on you and force people to use lib decor like some other,
Starting point is 00:20:32 some other compositors. So it enables you to go to go from having no compositor to having a compositor in, I don't know, 15 minutes. it's insane. Like a functioning one too. I'm not talking like, oh wow, I could run kitty and that's it. I was able to to launch, it took a little finessing, to launch a budgie panel in my magpie within, if I wasn't farting around with whalen sockets for that long, in the span of like an hour. Okay.
Starting point is 00:21:12 And most of that was just me experimenting with stuff. I mean, what other sort of compositor framework enables that? I don't think there's any of them. Now, the benefit of all those other ones is you could get really, really into the weeds on, you know, how you want surfaces to render. And they might handle abstractions like lib input and, you know, video buffers and whatever else. I'm not interested in that, at least not yet. And for that, if I need to go a level deeper, there's always just MIR and MIR APIs. But for me, it's like window management policies.
Starting point is 00:21:56 It's where do layer shell windows go? So these are like surfaces like the panel, the panel I expect to anchor in a particular position. It may or may not have exclusion zones to prevent windows from overlapping it. and that's kind of it. That's all I particularly care about. I'm going to have to integrate like KD output management because, well, Mir doesn't support that. And I am not going to go with the WLR alternative
Starting point is 00:22:27 because if you compare the two, it's like the KDE one was actually invented for people that use monitors and need to do things like color grading or like HDR, and the WLR one is like, do you like having a mode? All right, you could go 4K. All right, you like Adaptive Sync. All right, we got you there.
Starting point is 00:22:52 Cool. I mean, for most people, that's perfectly fine. Not for everybody else, though. It's basically equivalent to what you get with XRanda. And for like basic configuration, that's, you know, that's fine. Yeah, yeah. I mean, exactly. Yeah.
Starting point is 00:23:08 And I mean, clearly we thought it was okay enough to ship it with Buzzy 1010. Otherwise, we would have gone off into the weeds and had to somehow integrate KD output management into, like, a compositor like LabWC or something. But it seems to be working for most people. But I mean, Budgy 1010 hasn't launched and created a massifier. So I would say it's, it's been fine. I mean, that's all I could hope for. Not everything works, which is why we shipped a 10-10-1, and we will continue to ship point releases. But that will basically just be whaling compatibility fixes and maybe some minor features here and there that are like easy wins that David wants to work on.
Starting point is 00:23:56 Because like they plan on shipping it in an LTS for Ubuntu. So he has a lot of incentive to keep it running and to keep it working and to keep it improving. Meanwhile, I could be off in the weeds with Budgie 11. So with Meryl doing so much for you, like, what does that actually leave for you to actually do with it, right? Because obviously there's the Magpie repo, so there's code that you've had to write. Yeah, the first thing I really wanted to implement, well, first off, it doesn't handle configuration for you. Sure. So you have to have some sort of configuration method.
Starting point is 00:24:34 I went with K-Config because with my experience using, implementing budget desktop services, which uses Hummel 11, I did not want to have to write manual parsing code by hand again.
Starting point is 00:24:50 And K-Config does like 99% of what I want. It outputs in any, which isn't great, but it's something I can live with. And they haven't really been opposed to the idea of supporting other formats either, which is great. So we use K-Config, and we actually have
Starting point is 00:25:13 the cute main loop working so we could do cute things, signals and slots, that sort of stuff, which is good for kiosk mode, which isn't something that is just magically supported in mirror. So kiosk mode, for those that don't know, allows you to launch or enables you to launch a given process and ensure that process is running or if it stops running you either restart it or you kill the compositor. So this is particularly important if you want to have your compositor running something like SDDM for login management. You really want to make sure end to end that thing is going to have a compositor and you're not going to be creating a security vulnerability or security issue by just enabling somebody to kill the compositor. And oh, look, suddenly I somehow
Starting point is 00:26:03 magically have access to the system. How come in you? So kiosk mode was a big one. And then I was like, you know what? I have to learn how to figure out where windows are because I want to build a due custom positioning for like budgie panel outside of, outside of what layer shell is capable of because we want to support things like talk mode. I mean, what a better way to start of just the different focus modes. So click to focus on a window follow focus so it will automatically raise a window sloppy focus so it doesn't it doesn't raise a window but it allows you to put your mouse over a window it has focused so you can start typing like is that what that's called is that like yeah it's sloppy focus yeah okay i i didn't know that had a name
Starting point is 00:26:52 like that's just how i used to you yeah so none of that existed i was like i really want that because we we were like, oh, that's a big feature. We got it with LabWC. I was like, you know what? Wouldn't it be a nice flex just to be like, that's the first thing I implement properly? So I did it. It took a stream, so a few hours and a little bit of time after that to figure out
Starting point is 00:27:17 like a, that I was missing an override on a function. But like other than that, like it was implemented. It's great. So it doesn't, MIR doesn't handle a lot of that for you. but you'd be surprised how much their window management does support.
Starting point is 00:27:37 You can't do tiling, so you have to implement your own window management policies around that. And we're going to have tiling because we like computers and we're not macOS as well. So we're going to have tiling capabilities. Got to implement that. There's a laundry list of shit I got to implement. On the topic of like tidal, like windowing policies,
Starting point is 00:28:01 what is your, I don't know if you ever tried it out, what is your thoughts on like the scrolling stuff that things like Neri do nowadays? I haven't used it. I would love to at some point have an excuse to use it. I think it's just, I think it's amazing people are able to come up with all these different ways of interacting
Starting point is 00:28:23 with their devices and doing multitasking. So I love the fact that we, as a community and through like wl roots and smithy are able to provide that as an opportunity for people just to build their own solutions and that's sort of the model that we're going with with budgie 11 as well making a clear distinction between budgie core and budgie shell which is just our default shell so it's what people typically think of like with raven and budgie menu and in a panel. But
Starting point is 00:28:59 nobody's required to use our shell. They could just go and implement their own if they really want to. So somebody wanted to go and like make something in like quick shell or something and just like make some custom shell for it. Yeah. And and what we plan on doing is having a lot of the applications that we end up writing be in a completely separate organization. So outside of Badi's a budgie.
Starting point is 00:29:27 So that way you could just take, you could look at almost like a, like a practically a menu. You're like, all right, I want to run this wallpaper management. I want to have this for persistent configuration and make sure it supports multiple different protocols. And you know what? I'm just going to take this off the shelf control center that supports a bunch of stuff already and build my own panels. And then suddenly you have a functioning shell up and running. So yeah, and if you could compliment that with QuickShall, then I mean, we're in an era where scary enough, does it even matter what the desktop environment is that you're running when you could just, and I hate to use this word and you could yell at me about, you can vibe your way through it. You can practically vibe code. I hate it. All right. It makes me gag saying it, but you can practically vibe code your own desktop environment, your own desktop experience. And suddenly that is
Starting point is 00:30:25 I was just saying And suddenly that is another reason To use Linux In an era where everybody is telling you Including budgie and plot We're all we're all in some way pushing you in a given direction A given way of working a given way of thinking
Starting point is 00:30:41 That Yeah you don't like it Just build your own thing It's super easy And we're going to be like we leverage KDE frameworks You can leverage KDE frameworks If you want you can leverage these apps and suddenly build your own thing.
Starting point is 00:30:56 I actually do have a video in the pipeline talking about exactly this. I think this is kind of part of the reason why environments like Neri have been gaining a lot of popularity. It's obviously it's a different way of doing things and all that. But obviously that that helps. But it also helps that it's in this time where like I've always been on window managers. But building your own custom shell on the window manager in the past meant grabbing Waybar and grabbing Dunst and grabbing like a random custom launcher. And all of these are great tools.
Starting point is 00:31:26 But they're all these disconnected tools. And trying to bring them to all work together can be a little bit weird. But now you have things, like if you want to build something yourself, obviously there's QuickShall, but there's people that have built shows with QuickShill. There's projects like Dank Material Show. Yeah, Dank Material Show. There's Noctalia. Other projects like that.
Starting point is 00:31:50 I've heard of it because there's a, there's a change. proposal for, and I really, I did do a double take of having a dank spin for Fodora. Yeah. And I was like, what? I'm like, is this a joke? Is this like, I know people thought my thing was an April Fool's joke when I wrote my change proposal. But is this, I had to look up, I'm like, no, okay, that's actually a thing.
Starting point is 00:32:12 Fair enough. Pretty, pretty dank, I guess. It often goes by DMS specifically for that reason. Right. No, I think it's really cool just how easy it is now to have... Like, if you want something that just works out of the box, a desktop environment is great. But being able to build your own custom desktop environment, you've always been able to do it, right? You can always go and make your own custom shell in C or C++.
Starting point is 00:32:44 But now it is easier than ever to go and do so. Yeah. Yeah. I just think it's cool. That's pretty much it. So... Yeah, and that's sort of my perspective with with budgie in a lot of ways. It's like, yeah, you could customize it, but we're not, we're not, like, quote-de-quote, rising focus.
Starting point is 00:33:06 Sure, sure. We are, you go in, it should have same default. Maybe you go in and change your theme. But otherwise, like, just get to work. Right, like, that's what I think most, I would like to think most of us, are using our desktops or our laptops. We're using it for work, maybe for gaming, right, depending on the audience.
Starting point is 00:33:31 I'm not booting it up to then spend eight hours tinkering with a panel to make sure that I could, I don't know, adjust padding in some way to make something look just right for myself. Great that that's an option for people. But for Budgie, it's, that's never been the focus. but I don't want to lock people into our way of thinking so that's why we made the clear architectural distinction
Starting point is 00:33:56 of having our budgie core which handles a lot of the logic and then shell itself so you mentioned using kD frameworks and it's not just cute six you're using my understanding is you're also using kirigami as well yeah we're not using it in panel at the moment remains to be seen whether or not we actually
Starting point is 00:34:18 do that but I expect that some of the applications like the control center we wind up using Kirogami for it provides some nice to have that it's like we could technically implement
Starting point is 00:34:36 in QQQWX slash QML but it provides us a good opportunity to have responsive design elements if necessary because not everybody is running something on a 4K monitor. So they have to do the unfortunate thing of scaling down a window.
Starting point is 00:34:55 And you kind of want to maximize the usable space there. So that's why responsive design exists. It's why Libidweda has, you know, panels that will auto show and auto hide and flip into a hamburger menu. I just think the kirogami is a better implementation. And it supports or it will support theming through union, which is also. a big W. So that's why, that's the biggest reason why I would say we're going with Kirogami.
Starting point is 00:35:26 Is there a concern that by using Kriami, you start looking a lot like KDE? Is that something that you're worried about? Is that even something you're thinking about? It's, it's something we're thinking about. I don't really even consider the downside that we use a lot of the same mechanisms because there's a portability factor there of if somebody wants to write a theme and applies to plasma and budgie that's great of course some stuff will look broken but it's not going to look as broken as trying to use edweda on budgie 10 as it is uh but if union is implemented in the way we expect it to then i i don't see a reason why we wouldn't build a build our own dedicated themes and make budgie look how we want. So I'm not too worried on that front, to be honest.
Starting point is 00:36:24 No, that makes sense. Like my only, you know, there's even some like sort of discussion within KDE about whether people want to use kigami or not. Like, this is kind of why union is becoming a thing because you have people that are doing like five different ways of building applications. And like, there's, There's plenty of things that be said about the way that Ginobe is handling building applications. But what I can say is that by sort of enforcing the use of Libid Wader across their entire stack, it makes things a lot easier.
Starting point is 00:37:01 If they want to have a... If it wasn't successful, they wouldn't have as many applications that have been written in it. Yeah. Like, if they want to have a consistent style, that, like, that method of doing things has managed to do that. Yeah. And I think union, well, I mean, it's in the name. It's trying to unionize. It's trying to unify all these desperate ways of doing theming into one, you know, one ring to rule them all.
Starting point is 00:37:31 And it seems to be working out great so far. I'm, I'm hoping. I'm hoping. I'm hoping it continues in the direction it is. I see no reason why it doesn't. And then hopefully we'll have. There was, I haven't looked recently, but there's even the notion of maybe having a generate GDK themes. Okay.
Starting point is 00:37:54 I don't know what apps at this point. You don't really see apps written in GDK4 only nowadays. I think most people that are riding them are heavy into Gnome and just use Libidweda. Well, I mentioned, I mentioned before the singularity desktop before we started recording. So there's that. There's one thing. Oh, okay. So there's a desktop actually using GDK4.
Starting point is 00:38:19 Yes. Wow. Yeah, it's another sort of not so secret. I think I might have even mentioned it in our state of the budgie. But one of the goals with this new org, aside from just providing it a very easy mechanism for people to build their own shells, is to get people off GDK3 and not on to four, but on this beautiful thing called Q6. because the more people that are on Q2C6, I think the better, especially given how flexible it is. So it's a little interesting somebody going with GDK4 at this point, especially given the direction they might take GDK5 and requiring more platform libraries. And maybe that's perfectly fine for the singularity folks, I don't know.
Starting point is 00:39:12 It's one guy working on the project. He basically said why he's doing GTK is he knows GTK. It's this, it's not really clear what the environment's supposed to be right now. It's kind of just a playground to do things. Right. Please tell me he's at least not writing Envola. Don't, all right. As a PSA, if you want to write, I don't care if it's a lot of an app.
Starting point is 00:39:42 I don't care if it's a GDK4 app. Right. Just save yourself to trouble. Not Vala. All right. It's not well maintained. Go with, go with Rust. Don't go with C. Just go with Rust. All right. Like, that's your option. Go with it. You'll make yourself happier. Trust me. I will. I have dealt with G Object C. I've dealt with Vala. Don't do it, friend. All right. I care about you. Even if I'm throwing shade on GDK, I care about you. Just, I care about you. Just. do it in Rust. I will make sure to pass the message across. Thank you. Thank you. So what has the experience been like going from GDK to Q? Like what is what is kind of just made sense? What has been confusing? What is that learning experience been like? So there's a little bit of a column A of it's been amazing and a little bit of a column B of WTF. So in the column A, it's been amazing because GDK is a toolkit. Right.
Starting point is 00:40:51 Right. And you have some functionality in GLIP, but otherwise you're calling out to a lot of libraries like GStreamer and whatever else, maybe pipe wire. With QT, it's practically everything is in QT. You want to do key sequencing. Apparently, that's a thing. I didn't know. It makes sense that key sequences are. are a thing. So this is just like, you know, you handle control an A and they have a massive
Starting point is 00:41:19 binding that probably includes a co-pilot key at this point. As a example, there is a cute maths library. Why does it need to be in cute? Ask the cute devs, but there is one. There is probably one industrial partner at some point, or a commercial partner that needed. So they're like, yeah, all right, we'll do it. You hand over the bag, we'll hand you the feature. Basically. And you know what?
Starting point is 00:41:49 More power to them. So I time and time again am surprised by what is supported in QT, to the point where I will just sort of blanket assume something doesn't, and then get frustrated because I wasted two hours implementing something that would have been four lines of code in QT. And then I'm like, I'm like, all right, let me look at the doctor. And I'm starting to get into the habit of, like, I'm just going to assume this, this thing is a cute thing. All right.
Starting point is 00:42:20 Oh, look, look, Q point. That's the thing. All right. Q. Rec, those are, those are things. Oh, Q shared pointers because, well, we don't hate ourselves when it comes to pointer stuff. And you have to think about that because we don't have a concept of lifetimes and the whole notion of safe C++ was killed. so we'll never have even a rust feeling safer C++.
Starting point is 00:42:44 There's just everything's in there. You want to do with UUIDs. For some reason, somebody at Qute wrote a UYD generator and shoved it into Q. Great. Some business, again, some commercial person probably needed this. So it was implemented. So that's been the biggest enjoyment. Even though it's like sometimes a little frustrating, go down a rabble hole, you end up out the other side with code that looks way cleaner, way more robust.
Starting point is 00:43:20 And my experience with budgy desktop services compared to when it was just sort of clinical stock C++, which I know that I know there's different versions across all the 20 years of C++. well more than 20 years we good uh but in my experience yeah we're good i just heard discord maybe it was on my side okay whatever doesn't matter Aussie internet my discord never makes noise i don't know what that was
Starting point is 00:43:52 so fine all right anyway go on no no worries um so so back back to the tangent uh at this point i'm just in the habit of assuming something is is cute and in general I've had the experience of my code is more robust and safer as a result. On the flip side, I don't understand QML.
Starting point is 00:44:15 I would like I it looks brain dead simple, but I I come from the era where like everything is the cute widget way of implementing things and my brain hurts from QIP like it is a brain dead simple syntax. But when you start getting the nuance of it. It supports a lot of complex features and also integration with C++ because you can add like QML Singleton types and effectively have backends that are C++. That is a completely different way of thinking. And it's going to take some getting used to for me.
Starting point is 00:44:54 That's going to be a struggle. But fortunately, Evan has written BlueJ and QML, BlueJay being a Bluetooth management application. So I could always fall back to him and I could always fall back to the the KDE rooms as well. There's always helpful people there that are always willing to call out when I'm doing something dumb. And I'm grateful. I'm grateful. Well, I asked for it, right? Like when you came into my stream, I'm like, man, you had the opportunity to throw more shade at how long I took for.
Starting point is 00:45:30 I'm disappointed in you. So when I go into a KDE room, I'm like, listen, this code sucks. All right. I know it. You know it. Everybody knows it. Let's just make it not suck.
Starting point is 00:45:42 How? How do? And they are some of the most helpful bunches with that. So I'm really grateful to them. But QML has been the biggest pain point so far, but we are very early on. I'm sure the next time we talk, I'll have a laundry list of all the things that I hate about cute. And how I wish I probably wrote it in my, like, iced or slinters. something. But so far
Starting point is 00:46:06 I'm in the what is what is the freaking term for it? For new adopters of the technology Oh. It's not like Golly Locks down, but it's... No, no, I know. I don't know the term. I don't know what you're talking about. Somebody throw in the comments.
Starting point is 00:46:23 Sure. I'll be grateful for it. Yeah, thank you. Ice would have been in a... Ice is a weird choice and it's kind of weird to me that Cosmic went with it. not because it's bad, but because the ICE developer is incredibly honest that it's a personal project. Yes. He doesn't care to write good documentation. Yeah.
Starting point is 00:46:48 Exactly. So when people ask like, oh, why didn't we go with ICE, I mean, just read the read me of the project. Yeah. Like, and I'm not throwing in shape, like, I think what the cosmic people I've done is absolutely fantastic. I'm glad it exists. I'm glad that they're able to push that direction of like graphical rust development forward. And I think, I don't know, but I would not be surprised if the work that they have done on Cosmic has at least weighed into the decision making process at Kew Group to push more towards the cute bridges concept that they recently, well, they had announced last year. have now code for nowadays, because language bindings have kind of sucked for a long time,
Starting point is 00:47:44 especially when I look at QT. And the fact that they now have like this concept of bridges, and yes, it has a, it has lots of limitations, but the idea is you can write QML, you can have a graphical application, and then you could tie that into your Rust Code. I think that's what 99% of people are looking for. And I expect it's what their industrial partners are looking for too, especially as more of those move to safe languages like Rust. But I would like to think that the work the system 76 people have done on Cosmic and pushing Lib Cosmic out and making it a viable toolkit for people to build Rust-based applications on played into the thinking for Q.
Starting point is 00:48:29 Maybe that's just copium. But I... For us it just didn't make any sense. Sure, sure. On the topic of Cosby, I actually do like the fact that they've effectively created the ability to make a rust-based environment.
Starting point is 00:48:46 Like, that didn't really exist before. Rust-gooey stuff was very immature. Like, there were toolkits, and there were definitely applications, but there was nothing that tried to make a full desktop. Smithy, like back before System 76, didn't get involved with it and bring Victoria, Breckenfield on. Like, it was still, it was a very early project. Now you actually have things being built of like Nike Nerey, which I'm using right now.
Starting point is 00:49:11 And you're actually seeing Rust sort of develop an ecosystem as a graphical language, rather than just being a systems language. Yeah, I completely agree. And at least looking at the cute bridges, going back to that, my biggest pain point has always been, like with ICE, I'm not the biggest fan of the L-M architecture. Sure, sure. And sort of the model view update. If it works for you, great. That's not really been something I've ever jived with.
Starting point is 00:49:47 So having something like being able to intermix QML with Rust is quite exciting to me. So who knows? Like I'm not committing to anything, but don't be surprised if you see you breast code at some point and the budget code base because we'll use it where it makes sense. But yeah, it is really great to see a full-fledged desktop environment and all the apps that come along with that written in safe languages. Besides QML, is there anything else that you find that is kind of confused?
Starting point is 00:50:25 or is it generally just getting used to the APIs? I think it's generally like just C++ isms. Because the last time I really wrote any C++ was, let's see, what grade would you have been in? But you would have been in like elementary school. I was in like early middle school. It was like a long, long time ago. And C++ has changed a lot.
Starting point is 00:50:52 And they keep everything around, which means the footguns are not obvious and the right ways of doing things in C++20 or 23 or whatever are non-obvious as well. So I would say I lean as heavy as I possibly can into cute because, well, the cute way of doing things is at least up to date.
Starting point is 00:51:18 I know it's going to work across multiple different versions of compilers, across multiple architectures, which is also an important, thing that we are focusing on with Budgie 11 as well is multi-arch. But C++, my God. I'm not sure I'll ever get a full understanding of it. Maybe in 20 years when I'm probably like, I have like a massive receded hairline. I've just decided to like shave off all my hair.
Starting point is 00:51:49 The rest of it's gray. You know, half my livers. destroyed from all the whiskey I've had to drink because dealing with C++ probably something like that that's been the biggest struggle. Right. Is C++ itself.
Starting point is 00:52:07 Yeah. I know I know some developers that somehow do enjoy the language. I don't understand why I'm happy they do. I'm glad they enjoy it
Starting point is 00:52:26 they can enjoy it for me well sadly knowing knowing where the ecosystem is going and the fact that new languages are developed practically every week who knows in 20 years time people are probably like I don't like this way of writing this language I'm just going to vibe code to shit
Starting point is 00:52:43 some alternative in a way that I like and start using that yeah I don't want to I don't want to be in that era but I have a feeling we're going in that direction whether I like it or not look at this point
Starting point is 00:52:59 I can't I can't look you can't change anything right there is so little there is so little point stressing about oh we're seeing all I think that the biggest concern is sort of
Starting point is 00:53:17 what's going to happen with like a new generation of developers coming to open source. I think that's sort of the biggest problem because I know people who are teaching right now and basically all of their students using AI in some capacity. Some are actually using it to learn. Some are just there to get the piece of paper. The ones who are just getting the paper, you know, they're not going to have a job in development anyway. I don't know, right? Like my experience, sort of building that foundational programming knowledge was well before AI.
Starting point is 00:53:57 You were obviously the same. I don't know what the new generation of programmers is going to be like. And I don't know what that new generation starting in 10, 15 years is going to be like. What's going to be available? How they're going to want to learn? Like, I don't know. All I know is I'm along for the ride. Yeah.
Starting point is 00:54:18 I mean, and you see this all the time where it's just people are focused on solving their particular problem. And open source has always been that, right? Sure, sure. Somebody will fire something off because it was a personal project and maybe they're using it for learning or maybe they were frustrated at a given problem. And now it's like people are leveraging large language models or and all this random like AI tooling, whether it's from Anthropic or whether they're doing like Versal V0 to boot. strap a graphical web environment or something, they're focused on their one solution and the technical underpinnings to that, for the most part, they don't care about. They care about what functionality it provides.
Starting point is 00:55:05 And we see that, you know, it sometimes bites them in the ass because they, for example, forget real level security on their public database, as we have heard from, I don't know what it's called at this point because they keep changing their name. But there is a crab tooling. It's like open crab, I think, is what they call it this week. We'll see about next week. Where they they left that open. So, so I think we're seeing it as just a means to to solve people's particular problems in a very hyper niche way. And to be honest, like I also use large language. models. I don't really in the context of what G11. I tried to in one stream to get it to figure out a thing. It fell right on his face. And I was like, yeah, that's about what I expected. All right. Well, glad I wasted those tokens on on on on that. But for something like see make when there's like who knows how many decades of a corpus of knowledge, do I really want to have to learn the
Starting point is 00:56:10 ins and outs of that? No. I want to I want to like focus on how do I make a public consumable library with these sort of headers and yada yada and then the rest of it being private that clear separation so that's how i'm using it with budgie and otherwise i try to in the context of budgie avoid it because then i feel like i'm robbing myself of that same experience that i had when i was learning c when i was learning vala and developing that knowledge around gdk because well i'm building a desktop environment that who knows how many people are going to use. I have what I feel is an ethical responsibility to understand the code that I am writing. It seems like a pretty basic principle nowadays, but a lot of people are just like, yeah, I generate it. All right, what does it look like
Starting point is 00:57:04 under the dot? I don't know, but I click that button and it does the thing I want. Yeah, yeah. That's not, that's not the way I want to operate. I did see a funny comment the other day. I don't know if it's a joke, but I'm sure people actually think like this it doesn't matter that the code is bad code isn't meant to be read by people anyway like that's actually it's it's half true
Starting point is 00:57:27 because yeah at the end of the day it just gets compiled down into a language if the machine can execute like does it doesn't really matter if nobody else is looking at it if you want to think that another way right but at the same time like take some fucking pride in your work right like holy
Starting point is 00:57:43 if you want to think okay let's put on like the best possible interpretation there are people that build graphical environments with like drag and drop like there's the cute creator thing you can just drop in a widget the code it generates is
Starting point is 00:58:02 utter disgusting code never look at it don't even know what it's doing yep yeah sure is that any different like that because if you're net If your entire development of a cute GUI is done with Cute Creator and you never look at the actual GUI code, is that really any different to it being generated by an LLM? I think, it feels weird to me.
Starting point is 00:58:32 I don't think so. Yeah. I want to say yes. I want to say yes as well, but at the same, like, if you actually break it down, like, I don't think, I. I can't reason a, like, a way that that is different. Yeah. I can't either. Welcome to the modern era.
Starting point is 00:58:58 Granted, don't do this with anything... Don't do this with anything security relevant. I keep seeing that. Yeah, yeah. Please don't. Don't vibe code your own way to do encrypted messaging, please. just just roll with signal stuff all right like especially in the era of discord and
Starting point is 00:59:20 face ID and who the hell knows what else just like Matrix or Signal please for the love of God don't like create if you want your own fancy shell create a Matrix client there you go let's bring back IAC be happy with them IACC bring it back maybe maybe not
Starting point is 00:59:41 Maybe this is the chance for XMPP. I know the XMPP people are all very excited for people to eventually realize it exists. Yeah, nobody is going to, but this might be the chance. This might be their Windows 10. Sorry, I mean Windows 11. Sorry, I mean, whatever the next thing Windows does that is going to drag over a bunch of people magically onto Linux. I recommend a rebrand. because XMPP is a horrible name.
Starting point is 01:00:17 What would you call it? I don't know. Give it some stupid... Matrix isn't a great name either, but XMPP is just... We have stuff like Mumble and TeamSpeed. Yeah, but they're words that are easy to say. I don't...
Starting point is 01:00:33 Exactly. I was going to say X-Chap, but no, that's Twitter. I don't know. Yeah. How, I don't know how we got here. I'm not sure how it happened. I don't know. We got to bring it back.
Starting point is 01:00:51 Yes. But, but, right, we got here with Budgie. Yes. So, so this whole, the whole reason I'm talking, I don't really use it as in models all that much for Budgie in the context of 11, because I want to, I want to understand what it's generating. Right, right, right. And I wouldn't be able to do that, like, and know that it's the right way of doing something. With Budgie 1010 on the other hand, my God, the amount of G-object C code I've had to stare at in my life is far too much. The amount of Vala code I've had to write and then rip out and convert to C is far too much because there will be some weird thing that Vala does underneath the hood and it transpiles down to some invalid C that blows up the system.
Starting point is 01:01:40 That has happened. that has happened. Evan had to rewrite something in a 10-9 release. But generally speaking, I could go in and like for Budgy 10-10, we moved some of the functionality out of the
Starting point is 01:01:57 displays panel and into various other panels like power management. Right, right. I know what that code looks like. All the panels look the same. They're all structured the same. So I was like, all right, Opus, just here's a plan.
Starting point is 01:02:12 I have detailed what you should do and what you shouldn't do. Just move the code. You are my fancy control C, control V. Let's go. And it didn't have one shot it, as one would expect. It was like a three shot,
Starting point is 01:02:28 but I was able to go, what would have probably taken me like a day's worth of work was like an hour. Right. With a model. And then I was able to do a PR and then go back to way more important. important stuff like budgie 11.
Starting point is 01:02:43 So. Right. I think at the end of the day, it's like a difference in how you want to approach things. Like you clearly want to actually learn how this works. You enjoy the process of building things. Where it seems like a lot of people, what I've noticed is a lot of people who like the end result,
Starting point is 01:03:08 but don't care about the process. It's the difference kind of. buying an artisan table compared to going to IKEA and just buying a table, right? Like, you can get a well-crafted, beautiful table that has all of this engraving. Wow, it looks so good. But if you just want a table, there's tables you can get. If you want something that is going to hold your cup next to you while you're on the sofa, you get something from IKEA.
Starting point is 01:03:37 If you want a conversation piece, when someone enters your lip, living room, you go to a proper artisan carpenter. And for me, I, I treated it a little bit more like art than just writing code. Yeah. I mean, at the day, at the end of the day, it is all just code. Sure, sure. But I like to think about the architecture. I like to try to reason about it.
Starting point is 01:04:02 And especially if you want to have this clear separation between what's in the shell and what's in this core, core thing that everybody can consume, you can't just throw a bottle at that. It's just all it has is tokens and it's probability. Like what token is most likely based off weights to generate this next token? That's it. It's not magic. We all like to think it is, but that's just because people lack an understanding of it. So all technology sufficiently advanced is indistinguishable for magic, right?
Starting point is 01:04:39 Whereas I want to reason about things. I want to take a 20-foot view at the architecture. And then if necessary, get really into the weeds. And I say if necessary, because with something like Magpie, it's a compositor. It renders windows. I don't care. Most people probably don't. And if they do, there are way better options for them.
Starting point is 01:05:05 Sure. There's going to be things like Neary that exist. that are going to be crazy. They can build their own thing with like WL Roots for Smithy if they really want to. And the democratization of that is really great. But for me, that aspect is like just a means to an end. Right, right.
Starting point is 01:05:27 Providing end users a particular set of functionality and then the rest of it's like, let me focus on more important aspects of budget desktop. Right. As long as the compositor is stable and isn't using, a ludicrous amount of resources and, you know, has basic windowing. And nowadays, I guess, you know, HDR and stuff like that
Starting point is 01:05:47 is also nice to have, but isn't a requirement. Yeah, and funny going back to like the ludicrous amounts of RAM. Yeah, I mean, like even, I think especially now that we've announced
Starting point is 01:06:02 our move to QT, a lot people fairly ask, all right, why would I go? with budgie when there's LXQ, right? Mm. I mean, they pitched themselves as a lightweight desktop environment, but they don't build their own compositor. They take a similar approach to Budgie 1010,
Starting point is 01:06:25 and that is just you grab a bunch of off-the-shelf components, and that's great, and I'm glad it works, but I think that sort of lightweight qualifier is really important, because that lightweight qualifier is really important, in their descriptor of what their desktop environment is means that there will be decisions that affect what they should or shouldn't do based off whatever they define as lightweight.
Starting point is 01:06:54 I don't know if they've defined anywhere what that means, especially in the era of like, well, of course, pre all the memory issues, but let's pretend that didn't exist. In the era of like everybody having 32 gigs, of memory or something, right? Like how my mini PC has 64 gigs.
Starting point is 01:07:12 If something consumes 40 megs, is that suddenly lightweight? Where do we draw the line? Right. I mean, I certainly would say 500 megs is not lightweight. That's an electron app. At the bare minimum, it's probably 500 megs. But where do we draw that line?
Starting point is 01:07:34 So wherever they've drawn that line means that they, they need to make sort of decisions that influence what they should or shouldn't do, what functionality they expose, you know, basic UX, animations, all this fancy stuff some of us actually expect. They might decide, well, we don't want to pursue that. Right. And then also with their, them not pursuing a compositor, it means that they, like us with Budgie 1010, have to sort of, there's a give and take.
Starting point is 01:08:06 we could expose X, Y, Z toggles that the compositor provides, but we can't provide the rest because, well, the compositor doesn't support that. And for Budgie 11, I don't want us to be in that position. I don't want it to be like, well, you know, LabWC, it doesn't support per output workspaces, so, yeah, I guess you're out. You don't want to be in a, in a situation where your compositor is just a soft fork, and, yeah, or even, just the project itself. And then if they decide we want to, we don't feel like implementing
Starting point is 01:08:44 so-and-so feature that is really useful, you then have to be like, okay, what do we do at this point? Do we make a soft fork? Do we do something? Do we start building something now? It's sort of, it's a problem that is, is fine when your goals line up. But as soon as they don't, now you have to decide what direction do we actually want to take this? Do we want to be held back by this? Or do we want to do our own thing now? Yeah, Budgie has a lot of experience with that. He has a whole mutter thing, the whole Gnome session thing.
Starting point is 01:09:29 GDK itself as a toolkit, right, the direction that they're taking GDK, which, I mean, from their view, it's they're making it more generalized so people can more easily build on top of it and then they plan on probably doing that with um when it comes to platform theming as well and maybe that model is is what works for them in the end and so i can't really blame them for taking it but for for us and i'm off in the weeds here so you might might have to pull this back fair enough fair But going back to Alex, Alex Q, there are, yeah, there's going to be sacrifices they have to make. And you're going to have to, you're going to have to make compromises. And I don't really want to do that with Budgie 11.
Starting point is 01:10:26 I think we've been held back a lot in Buggy 10 by the tech stack that we have chosen. And the fact that. there is only so much you could do with GDK. So we needed something, because we're a really small team, that is way more capable than probably all the functionality we would need. So QC obvious choice. And on top of that, we want to have an existing ecosystem. So this is what we get with KDE frameworks of well-engineered libraries that do stuff that we were planning on doing anyways. Like writing a configuration, like writing code that parses a function.
Starting point is 01:11:07 file and converts it into a configuration and a Q object, it's not fancy, but if somebody's already done the hard work for me, why would I put myself through that? Right. That's the whole point of libraries. Right. Your goal isn't to sort of engineer the entire stack, it's to build an environment. Exactly. Yeah. That's fair. That's fair. I guess that sort of also leans into the use of mural as well, where you, again, you could go and actually build something at lower level, but you'd effectively end up basically doing everything the library you're building off of is already doing. So unless there is some, you know, major design flaw with it, why not go and use that? Exactly, yeah.
Starting point is 01:11:58 And that's the way we take an approach with, of course, that doesn't mean that we're just going to choose a KD framework for everything. You'll cover possibly a solution for. But let me tell you, one example of something we are absolutely going to use is K-Status Notifier item, because no one wants to deal. I mean, some desktop environments literally don't deal with the notion of system trays. UGI, I will die on the hill of having a system tray, but I will not die on the hill of implementing two different two or three different specifications for how to render a stupid icon in a tray that shows a menu there is no way in hell we're going to do that again and thank god
Starting point is 01:12:47 the kate people i've written case status notifier item because in theory that is going to shift all that work of away from us where we could just say all right yeah uh here's an app it provides an icon great render it in this uh this row of icons all right click on it exposes this menu render the menu out that's it so i i expect and i'm not going to put any timelines on this that we are going to have a functional shell a lot faster than people expect and a hell of a lot faster than it took us to ship budgie 1010 because we're not having to try to reinvent things and also we were learning Wayland stuff along the way as well.
Starting point is 01:13:44 Right. Because it is right to say that the blog post from last year did say Ten Tem was going to be that year, yes? At the time, I think. I believe we were aiming for first half of 20. Yeah, yeah, that's that I that sounds like what I read in that. Because like with the 10-9 series, it was like we were going in the direction. Like we weren't necessarily committing to being in 10-9.
Starting point is 01:14:15 But it was like we were laying the groundwork by starting to leverage things like lib x-fc for windowing to make sure that what we had supported both x-11 and wayland. And then we announced, yeah, we're going to. we're going Wayland Only because the entire ecosystem is moving to it clearly or it has been and who the hell knows where Xorg server is going to be by the time
Starting point is 01:14:46 Budgie 11 is out. I like with Rel, they don't ship it. It's Wayland only. Gnome Shell going Wayland only with Gnome 50. Who would have expected that? Plasma also announced plans.
Starting point is 01:15:06 I believe it's what for, is it, 2020E? What was it? I'm trying to remember what holds yes. Oh, let me see. Because they announced the version it was going to have, but then they said they might extend the life of that version. Yeah. Dropping X-11.
Starting point is 01:15:23 6-8 will go Whalen exclusive. Yeah, yeah. So, funny number that I'm not going to say is the last. one. Right. Yes. Early, let's see. Session supported until early
Starting point is 01:15:41 2027. Right, okay. So, so they're going Wayland only. Where the hell does that leave us? Where, we, it's not like we're fan of the X-A is also going, they're going both, but they're working in their
Starting point is 01:15:57 Whalen session. Obviously, then you're doing that. And then Cinnamon's doing something. They've got an experimental session. Yeah. Maybe they'll get there in the end. Mate is working on it. Yeah. I think most
Starting point is 01:16:14 of them would use it with Wayfire. I think Wayfire is like the kind of go-to. Yeah, yeah. Because they had started working on a compositor and then stopped years ago. The thing that's keeping X-Log around, basically is
Starting point is 01:16:34 when, because Fedora has official spins that are X-11, Ubuntu has flavors that are X-11. It sort of gets to a point where I would expect Ubuntu is like, do
Starting point is 01:16:51 we want to keep this around? Because there's going to have to come a point where they say where either Fadora or Bunchy says we're getting rid of X-Og. We need to get rid of these spins, these flavors. I don't know when that's going to happen, but that conversation is going to have to be had at some point.
Starting point is 01:17:10 Even if it's just for like, Vodora I-3. I know for a fact that those conversations have been taking place. Right. Because we really wanted to get 10-town out the door as soon as possible because the last thing we want is for canonical and or Ubuntu Bagi to be on the hook for maintaining X-work for what? Our desktop environment. Sure. No. So it absolutely had to go Wayland only. Or Wayland first technically, but we weren't going to maintain both. So, yeah, it would be interesting to see by the time Budgie 11 is released where the ecosystem is, I don't expect it to, you know, knock on what to take that long. But XSE as an example, with their compositor, like if it gets into a good enough shape, and I'm glad they're, I'm glad they're using their.
Starting point is 01:18:03 open collective funding, building a composite, right? For some stupid reason, they got a bunch of flack for for using money people had donated. Yeah. That had just been sitting there. If you were supporting it... If you were donating to XSECE
Starting point is 01:18:20 and you didn't know they're working on a... They were thinking about Wayland. That's actually just a skill issue. They've been talking about it for at least five years at this point. But literally, like, Budgie is using one of their freaking libraries. That is intention. designed to support X-11 and this thing called Wayland.
Starting point is 01:18:38 My understanding with X-C is they... Their money was basically just being spent on hosting, and that's pretty much it. That's what most of our money for Bodies and Budgee is spent on. Like, for Budgee 11, we have our own for GEO because we have been getting more and more AI slop towards the Budge E10 repositories. Who hasn't been at this point? and we just wanted to provide, frankly, an extra barrier. And it also doesn't help when GitHub randomly shoves even more agent stuff into the user interface.
Starting point is 01:19:15 So all that, we now have our own for JEO instance, and we also use Woodpecker CI. So I actually have all of our builds are actually running by default on ARM, on an ARM server. Okay. So not even X8664. So we're explicitly making it a target to like we, we are going to support Arm officially. And I've been trying to get in touch with some of the Risk 5 folks now that RVA 23 hardware is out. I'd really like to get some some Risk 5 hardware. Even though it will run probably like a potato, I'm here for it, right?
Starting point is 01:19:59 Budgie on open source potato. Let's go. So that's a explicit goal. But yeah, we mostly spend our money on that. So if they have a massive bucket where they could get one guy to just hyper-focus on a compositor that gets them to where they want to go for XSCE, go for it. I'm all here for it. I don't know why anyone would be up in the arms about money they donated. Like once you donate it, I'm sorry, but that's that's the end.
Starting point is 01:20:33 end of that relationship there. There's no obligation to, like, work on something you particularly want. If you want that, we have a concept for it. It's called contracts. You contract somebody to work on something that you want for your particular use case. When you donate, that's where the relationship ends. I think you can at least... I will say, look, if they just start, like, I don't know,
Starting point is 01:21:03 hosting cocktail parties, like, just burning the money. Sure. Of course. I'll give you that. But like... Yeah, I'm not, like, I'm giving it like the most generous use case for donations, which is you use it responsibly and normally, like we're all adults. You're not, you're not going to Las Vegas with 50 grand and throw it all on one craps table and hoping to just absolutely come home with...
Starting point is 01:21:32 I don't know. I'll gamble. Lots of money. The analogy ended there, right? You mentioned the Forge a couple of times. I do have to ask you. What's up with the tagline you got on the homepage for it? The tagline.
Starting point is 01:21:51 The Modern Desktop Initiative, building for a better Linux desktop. Yeah, I couldn't come up with anything better. But this is going to be, spoiler. or the org that hosts all the componentry that the generalized componentry and applications for other people to consume should they want. What is a better desktop? What's a better Linux environment? Leave it up to the individuals to interpret that the way they want. In my view, it's we have cute, write whatever you want, but it's cute all the way through and through for the toolkit that.
Starting point is 01:22:31 that's what modern desktop initiative is going to host and all the budgie stuff is under there so hopefully we're building up a better budgie desktop environment at least that's certainly the goal by moving away from GDK3
Starting point is 01:22:49 I expect it'll be it's not going to let me tell you this it's not going to be like the Gnome 2 to Ghanome Shell slash 3 move budgie shell is going to look scarcely similar to budgie 10 there will be raven raven will look like raven there'll be a panel there's only so many ways you could design a panel there'll be better workspace management but by and large that'll be the same but the generalized component tree that'll all live under mDI so so when Budgie 11 is eventually ready. What is, okay, what does ready look like? Is that functionally equivalent to what you have now?
Starting point is 01:23:41 Is that that with more? Like, what is 11? Well, I try to look at 11 in different stages. Okay. So, as we develop it, we're not just going to go, like we did with 1010 of Radio Silent. Oh, like, oh, yeah, we're working on this thing. And all right, see you guys.
Starting point is 01:24:06 And it's going to be a few years. But we'll eventually write a blog post. You all think Budgie is dead in the meantime. But we're working on it. Trust us. So what the plan is is to do previews. Similar to, like, we're not calling them alphas or betas. We don't want to qualify them with like it's at this particular stage in development.
Starting point is 01:24:30 Because in a reality, different elements will be. at their own version of whatever you would consider an alpha beta as a package. Here's a preview of the experience. So our preview one, I'm going to cheat a little bit because I actually have this, I have it written down because I figured you were going to ask. Okay. So our first preview is what we consider to be daily drivable by the team. So we could dog food it.
Starting point is 01:25:00 So we need to have Alt tab. which means we need to have key binds that properly work, which I already have key binds with MacBuy implemented, but I need to implement like a concept like meta action. So, you know, tiling and yada, yada. So we need all tab. We need a panel. The panel needs, we need to have multiple panels because that's what we support.
Starting point is 01:25:24 And while it's a bit of a stretch goal, because of how we're implementing it anyways, we need to have multiple panels, on multiple displays. It's not something but G10 is supported and it's annoyed the shit out of me for forever
Starting point is 01:25:40 but I've never had enough time to really dedicate especially given how God off our panel manager code is. Is the plan to just like duplicate the panel across the displays or what what's the goal there?
Starting point is 01:25:55 The plan at the moment is for dedicated panels. Okay. Maybe we could figure out something where like the layout could be duplicated. I think that would make sense. But I would like it to be dedicated panels across outputs. And layer shell provides this easy functionality to facilitate that anyways. But multiple panels.
Starting point is 01:26:21 And then in terms of applets, you're going to have budgie menu because you kind of need to build the launch apps, right, to run them. And then icon task list in some form, which is what. we have for displaying running applications and grouping them. System indicator, particularly for battery and volume because, well, volume is important because you don't want to blow your ears out and battery because my think pad has amazing battery life, he says. And sorry, that three hours is actually three minutes of battery life. So having a battery status is really important.
Starting point is 01:26:56 System tray, I refuse to call it a preview if we don't have a system tray. unacceptable. Raven is going to be there as well. It'll support her app volume control as the first thing because that's important functionality for me. We have notifications. These will likely only be on-screen displays, not persistent in Raven for preview one and then on-screen displays for volume-changing and brightness control as well. So those are sort of the general things. In terms of magpie, I would like to start with side-by-side and maybe three-column tiling. Those are, I mean, I need side-by-side because, I mean, that's like the bare minimum, I would say. Focus methods, which we already support. That was like, you know, a few-hour job, how hard could it be? Oh, so one out. One thing on side-by-side.
Starting point is 01:27:55 Yes. Would it be thought to do top and bottom for, like, a vertical display? I have considered that, yes. Okay. Yep. So tiling, focus methods, which already implemented, and then the key binds, like I mentioned. So a lot of this is just going to be config files. We're not going to have like a graphical control panel in the preview one.
Starting point is 01:28:19 But the way we're going to be delivering these is a couple of different ways. I'm going to have a dedicated RPM repo. Probably a copper for Fedora. So if people want to do something stupid and throw it on their existing system, they could go for it. But the way I expect a lot of people to try it out is a live ISO. And this is all going to be leveraging infrastructure that we are building or plan on building because we want to have effectively a pipeline that takes it from you write a commit, the commit gets validated by CI.
Starting point is 01:28:58 The C, like we merge it. We have CI built that. And then at the end of the night, if everything is good, we build RPMs. And then after we build all those RPMs, we create a Kiwi image. And that Kiwi image then enables us to provide like virtual box images, OVF images, and ISOs. And then that will proceed to go through an open QA process. where we do validation. And then after all that validation,
Starting point is 01:29:30 it's dumped into a public, well, semi-public bucket. So the idea is, open collective backers will get first dibs on taking a look at it. And then after probably a couple of weeks or something, whatever that snapshot was
Starting point is 01:29:47 will be automatically exposed on the download page for Buddies of Budgie. So if you go to Buddy's a Budgie, dot org. Like we have a budgy 10 section and that's something I worked on is a a budget like right now it's just a budgie 11 like panel informing you that open collective images that they'll be available to our backers. But when we have when we start getting actual ISOs generated, they'll start showing
Starting point is 01:30:15 there so you could go and download the latest. The latest build. So all that is going to be like fully automated. or at least that's the goal. And yeah, that's preview one. In terms of where things are in the grand scheme, I don't want it to just be feature parity. There's been a lot of pain points I have personally had,
Starting point is 01:30:43 particularly related to workspace management, that I need to solve for 11. It's not like a nice to have it. It's like we're not shipping unless my workspace management is like I could I could write out a config where I could define I want on this workspace to be these applications. They should always be full screen. I should be able to use this key bind to switch between them. I should have a different profile between what I'm doing for work. And if I'm gaming, right?
Starting point is 01:31:17 If I switch the profile, I would expect Discord to show up on a particular output. Okay, that's like that. game on a full screen one, like all sorts of crazy shit related to that. That's the end goal. What everything else looks like kind of remains to be seen. I would like to say we've mapped everything out, but some of it's just like, well, I'll figure it out as we go. Right, right.
Starting point is 01:31:41 And it's kind of, it's kind of nice and refreshing to be able to be at that stage again. You know, green, you don't really get a lot of opportunities for Greenfield projects. like this, especially a desktop environment, to reconsider everything. Yeah, I think using that early testing can sort of help you to guide some of that vision as well, because
Starting point is 01:32:06 especially with the early testing when it is people that are, you know, donating to the project, these are most, I would assume, most people that are donating to Budgie are using Budgie. So they probably have some pain points existing with Budgie, and that can be like, okay, here's, I like the direction this is going, I don't like the direction this is going. People are greater identifying problems, but usually not solutions. But that should at least give you
Starting point is 01:32:32 some idea of what kind of makes sense outside of the stuff that you're fully committed on, like improving work space management. Yeah, exactly. And that's sort of that, that is, you really hit the nail on the head when it comes to preview images, is really getting early feedback and really testing in a way that is super approachable to your end user. They're not going to want to blast away a system or run the or feel like they're running the risk. I don't really think there actually would be a risk of installing budgie 11 side by side with 10. But it's really easy to mitigate that risk just by providing an ISO to them. And then they could be like, oh, yeah, I, I installed it or, you know, I just booted it up in a live environment.
Starting point is 01:33:20 and my right output was detected on the left-hand side, WTF, and how do I change that? Oh, well, all right, maybe it is a priority after all to get this output, multi-output management working in Magpie, like who knows? But it'll be good for shaping priorities, and that way we're not planning too far ahead. We're able to be a little bit more responsive than we have been historically with Budgie. I did mention... No, I was just going to say, especially given for a lot of
Starting point is 01:33:59 Budgie's lifetime, at least in our org, it's been a lot of maintenance and small things. Nothing really innovative, to be honest. And I want to get back to the innovation and not, yeah, remember that budgie thing? Oh, yeah, but why wouldn't you just use like XSCE or something? I want to provide like oh yeah i want to install budgie 11 because that workspace management is dope or i want to install
Starting point is 01:34:27 it for xyz reasons like maybe a raven has a brand new piece of functionality that makes it way more approachable and interesting to most people those those elements random side question do any of the people that like a quarter budgie use a vertical display I think so. But fortunately for you, I have many monitors, my friend. No, I bring it up because every time I test an environment with a vertical display, I always find some vertical display bug. My favorite example from Cosmic, their screenshot tool assumed horizontal, so it would cut off the bottom half of the screen. Well, feel free to give it a shot
Starting point is 01:35:24 I will definitely do so And report issues Because I would be surprised If any of us have vertical Vertical Monitor's It's certainly Like something I'm going to be testing for 11
Starting point is 01:35:39 But I don't think any of us have tested it for 10 I was just curious anyone If anyone just happens like The Daily Drive 1 Because I have them Because it's convenient to have like chat and stuff there. And that's the way, the way I do it.
Starting point is 01:35:53 Obviously, my main display is horizontal. But like, every time I show my... Every time I show my display layout, people get very concerned. What's a good way to demonstrate it? Is it like a tie fighter where it's like... Or you or something? Do you have like vertical monitors on both sides?
Starting point is 01:36:16 So, okay. I have some pens here. It's kind of like... Yeah, here we go. It's kind of like this. Yeah, it's like this. I'm sorry, what? Okay, so it's not actually like that.
Starting point is 01:36:38 Blink twice if you need help. Okay, my monitors are shaped like a you. But my third monitor, I don't actually use really as a monitor. I only have, so I actually have it behind my main display. I can only see the top half of it. I have it there, so I can have it right next to my camera, so I can have my video notes and stuff there. I basically use it as a teleprompter.
Starting point is 01:37:07 If I didn't have that, I would just be using two displays. Yeah. Man, how many problems would be solved? if Elgado just released their telop, like, had that telepropter software, available for Linux. Like, I don't know if you've taken a look at it. There is an open-source project that I can use.
Starting point is 01:37:27 There's a, was it, Q-prompt? Yeah. Yeah, I just... Yeah, with, um, I know with, uh, this, we both do videos. Well, you do way more than, than I do. But a big thing, yeah, is teleprompting. And for, for me, an important aspect is,
Starting point is 01:37:45 as I'm speaking, it is doing like word detection. It knows when I, when I'm going off on a random tangent, so it knows I can add lip things and then get back to the script. Whereas with, I don't know if, I don't think you prompt supports. Not yet.
Starting point is 01:38:00 Maybe you can plug him like a model. Yeah, probably. But with like Elgado software and a bunch of these other like proprietary solutions, they, they have that capability of actually understanding of what you're saying.
Starting point is 01:38:15 I would love for that to be, maybe, maybe there's something I haven't discovered yet, but I would love to have a solution on a Linux for that. You could, it doesn't seem like it'd be that crazy to do. All you'd need to do is sort of hook in a, like, like a voice recognition tool with a text feed. Yeah, which goes like speech to text. Yeah. But then, but then you have to plug it into, well, whatever. application you're you're using sure sure but okay i could i can understand your now that you've
Starting point is 01:38:51 explained it it's less insane it is it is certainly a redneck solution uh to make it look more organic when we're we're looking directly into the cameras and and speaking yeah so i i got you i got you. Still think you might need a little bit of help. Yeah. Maybe just get like, maybe like get a smaller display. Like how big is this display that we're talking about? It's like a, I think's 20 inches. It's a small display. Actually, I was trying to get like a full white three display. I was attempting to get like a full white three display. I was attempting to get a full by three display. Then I don't have it behind it. But like, have you considered just going on to like Alley Express and getting like those seven inch panels and. because there's some that that's a really good point actually
Starting point is 01:39:46 I'm pretty sure there's some that are just like over US, I don't know what other but like probably just USBC I like that I'll have to actually might have to consider that I'm not saying they're going to be good quality you might find one that has like
Starting point is 01:40:07 three orders or something and it comes from some random brand that just spun up yesterday. But maybe it'll work if you could find one. But they definitely make smaller displays, particularly for, well, I've seen them be used a lot for like homeless assistant when like when you're building out your own custom hardware for home assistant and custom panels for that.
Starting point is 01:40:33 So there might be an option there. Hmm. Hmm. You know, that way you don't have to have a 20 inch monitor where you're probably using like five inches of space next to your lens. I'm like 10. Something like that.
Starting point is 01:40:50 Okay. Right. Yeah. I can see the top half of it. Anyway. Well, just don't test Budgie on that, okay? No, I definitely... Test it on your other one.
Starting point is 01:41:01 Yeah, I did. If you test it on that right one, I'll be like, can you even see the elements of Budgie panel? Yeah. Yeah. Well, again, it's my third model, though, so it is what it is. But... I will not make the mistake of testing on hardware for the first release.
Starting point is 01:41:21 I'm sure it'll be mostly stable, but the problem is it'll be mostly stable for the developers, and then it's on someone else's system, and then you have some weird hardware the developers never tested, and then it just dies. Yep. Yep. Or it's, oh, this piece of hardware uses this one driver, graphics driver, instead, and suddenly things explode. Yeah. What I have been surprised by, because I, I've tested it on full AMD hardware and then before my GPU, my Intel GPU died. Let's not talk about that. It also worked on that, and I've tested it even on 50 series, Navidia, and it works across the board.
Starting point is 01:42:08 And that's with proprietary drivers. Okay. Because I need that for my NVink for streaming. Right, right, right. So my dedicated streaming PC. And of course, I'm not going to throw like a different desktop. Why would I run a different desktop environment than my main one on my own PC? So I had to be budgy, so I had to test it.
Starting point is 01:42:29 Thank God it worked. Otherwise, I would have returned that and had to get an AMD GPU. Yeah. Well, you look, you have to have a media working eventually, so, you know. Yeah. Might as well be immediately. So one of the problems that people have sort of, and you've acknowledged as well, is that Budgie kind of just vanishes every so often.
Starting point is 01:42:51 There's no communication. And I guess now there is sort of this, there are these new posts being made, these somewhat more frequent posts. Is the plan to keep these going basically all the way through release? Is this something you want to do more long term? I like I'm not committing to weekly but I don't want to get into the habit of us deciding oh well you know only two things have happened this week let's just hold off until next week and then before you know it's three months down the line and we have such a pile of stuff if then we're like oh right well and I'm not going to write anything because I have to go through and summarize stuff and that's a lot of work and it's a pain in the like no no thank you so I figure we have these things called chirps, tweets was taken, and we had to go with a bird theme, right?
Starting point is 01:43:43 That's just the way we are. So we have these things called chirps, and it's basically short to the point what we've worked on, like sometimes what we haven't worked on because of some sort of technical issue just because I think it's important for transparency to know not everything is sunshine and rainbows.
Starting point is 01:44:03 Writing software sometimes sucks, and you're stuck on a problem for a few weeks. And then you figure out the solution was actually stupid simple. This is exactly what it was for, for me with Q object and Q event loop integration into Magpie. So it turned out solution was really simple. But like these are the things that we want to have in these development updates. So so far they've been weekly. We'll see how things go longer term.
Starting point is 01:44:33 But it's definitely going to be, I would like to aim for it to be. be like at least every couple weeks. We have something. Right. And I expect even when Budgie 11 is out, similar to what we've done with 1010, we are getting a big influx of users testing stuff, which means a lot of issues. And that means a lot of fixes. And what's great is when there's a lot of issues and a lot of fixes, that means you
Starting point is 01:44:59 have a lot of content to write about. So you could just continue turning that. And it helps communicate that. the project is alive, it has trajectory, it's going somewhere. We have a particular vision that we are focused on. And I think that's important for not just ourselves to know that, you know, people are, or at least aware of what we're doing in the space. But also for those that are interested in shipping budget as part of, you know, their distribution or as a spin or a flavor or whatever you would want to call it, to know that they're not,
Starting point is 01:45:37 wasting a bunch of time, packaging something and testing something, only to find out the project's been dead. And I guess to some extent, like streaming the work as well also sort of goes into that. Is that a recent thing? Have you been doing that for a long time? That is a very recent thing. So I was very fortunate that, you know, we were talking about funding. We have a bunch of money in the Open Collective, but given the memory, prices and all that. I was like, all right, we're going to go with like a super old refurb machine. I made the mistake of going with the Lenovo. We could talk about that as a sidebar if you want. I have this existing Intel GPU, which turned out it was dead. So I shelled out money for a
Starting point is 01:46:25 for an RTX card just so I could get Invick. It was a whole disaster. But I was like, I need a dedicated system because if the compositor crashes, Or if I'm working on the compositor and it crashes, or I'm working on some other element and something blows up, or my hardware randomly thinks I pressed a power button somewhere, even though the only power button is on my mini PC and decides to shut down my system. I at least have a stream still going. And I have more hardware on the way so I could easily flip my camera and all that,
Starting point is 01:47:02 but to the streaming PC. But that's a recent thing because I wanted to be. able to do streaming and offload all that to a dedicated hardware and just be able to focus on if I want to blow up my system you know my mini PC I could do that and still have something going what is um what is it moving up through bios and then yeah fedora and choosing kernels it's it's fun what is that um what does that been like doing the streaming it's been nice it uh I I haven't done done that in a long time and it's it's been cool like having like even katy people and some people from the budget community drop in and ask questions you know ask me like oh hey are you are you
Starting point is 01:47:53 taking the approach cosmic does where they have like every applet is per process and some crazy crazy thing and being able to the answer is no we're not doing per per process by the way before before you ask uh like being able to come in and ask questions or even help me live. Like, oh, God, I'm sorry, I'm forgetting your name by a wonderful guy who worked on all the Kirigami documentation. He dropped in, and I was like, oh, yeah, like the, you know, the Kirigami documentation is really great, and, but this, this K-Config doc.
Starting point is 01:48:33 Oh, I think it was, that might be the stream that I jumped in. I think, I think it was like, oh, like, that could really use. some improvement. He's like, oh, yeah, I'm the guy that did that. I was like, oh, shit. Well, this is what I get for actually streaming my work. And it being interesting because I'm consuming KD frameworks as part of the development of Budgie 11. So, of course, they're interested in saying how it goes because how many other people are building a desktop environment with their frameworks. Right. Like L-Excut, I think when I checked, they use like three things. They use K idle time, K Windows system, and there's like one other thing that I saw, at least on their
Starting point is 01:49:16 GitHub, of KDE libraries that they use. Otherwise, they mostly do their own thing. So having somebody that's like, we're not afraid to leverage a KDE framework just to get shit done is quite, quite exciting for them. And it's been good for me to sit down, focus on or try to focus focus on like one or two particular things when it comes to what we're working on for Budgie 11. A lot of it has just been magpie related. But in my last stream, it was it was Budgie shell related. Being able to give people a peek behind the curtain is nice, especially in contrast to Budgie 10, where it was, what's behind the curtain? well, you could join the Matrix from it, you could ask.
Starting point is 01:50:11 Right, right. Or you might get a social media post every once in a while, but if you go to our blog, it's dead. There's nothing on it. When was we were planning on shipping budgie first half, 2025? It goes by, is there another blog post? No. Is there an update?
Starting point is 01:50:33 Hell no. And I do kind of get it, right? Like you're working in the environment, that's like the thing you want to be doing. But I think it is nice to let people know what is going on who want, like, obviously you can always go and read the Git commits and all that. Like, sure. But most people aren't going to be doing that. They're just consumers of the environment. So having at least some indication of, hey, at the very.
Starting point is 01:51:07 least, it's being worked on. Like, that's, that's nice to know as someone who, you know, I would assume if they're using, it likes the environment. Yeah, and I think it also paints a good contrast between all of our 500 other announcements on different toolkets that we've said we've planned on using, where it's like, yeah, you might get a post, or when it came to like the GDK4 and, and, you FFL thing. It's, yeah, you get what we're using supposedly and then no updates on anything. Now, there's a lot of reasons behind that. Sure. Like, GDK4 not being quite what we expected and things going sideways and soulless. And so we obviously weren't going to use EFL with the new org because all of us, like, we weren't interested in that, to be honest, particularly with,
Starting point is 01:52:07 using C. We weren't going to torture ourselves more with that. It was either going to be C++ or rest. But the contrast of saying, all right, we are actually finally working on Budgee 11. We've promised that we will work on it for years and years and years and years. It's finally here. And then just to say nothing and then maybe every once in all having a blog post, that doesn't sound very exciting to me. I want to bring people along for that journey of building it from scratch because I think a lot of what you see is like oh yeah this new this new desktop environment just cropped up I posted about it on Reddit you don't you don't hear anything about the story behind it I mean of course a lot of those are brand new projects they don't have such a
Starting point is 01:52:54 storied past like budgie does but yeah there's something really nice about having a greenfield project where you're able to to communicate every every every the good and the bad about developing a desktop environment the pains the struggles the victories especially those of course the most rewarding stuff it's to victories um yeah well i hope the project ultimately goes well i hope budgie 11 goes well i hope getting involved in cute six goes well and it sounds like and from my experience with kd people as well, like a lot of them are very helpful and very sort of interested to know, like, you know, how are other people using this, even just from like the user side, like, how are people
Starting point is 01:53:49 actually getting involved with this? Are they using it the way we expected? Are there areas where things are sort of, there's oversights in what we've done? So it seems like this is a, I guess you know good path to go and I hope it goes well yeah I mean so so far it has
Starting point is 01:54:11 I don't see a reason for that to change from my perspective that KD folks culturally are more similar to us than say Ganyom they are more platform
Starting point is 01:54:26 driven they're you know they want to build these flexible frameworks for other people to consume I mean, the KD framework tiers was entirely structured to give transparency around the dependencies. So, of course, they wanted to be considerable by others. So, yeah, I'm happy to provide them feedback to get involved. We'll see how things go.
Starting point is 01:54:55 I'm not going to say you should, but do you want to say how long do you think? Lodge 11's going to take. Oh, man. You know if I say anything. You can dodge the question if you want to. You know if, I will say this. There are, I, I, I have concrete targets internally on which particular Fedora version I'm going to ship this on. Uh-huh.
Starting point is 01:55:26 I'm not going to say which one. Good plan. It could be, it could be Fedora 70 for all we know, right? I don't know when that is. Somebody could do the mass, but let's say it's like 2050. All right. Let's be generous here.
Starting point is 01:55:38 So 2050. Yeah, yeah. Oh, definitely. We definitely have to call you on that. If it's not ready by 2050, then we can start a problem. Well, what's great is I could give a really high astronomical answer. And then anything below that is just we have been cooking, right?
Starting point is 01:55:57 So let's say it's going to be ready in 10 years, buddy. Yeah. Yeah, and then when it's shipping and a fraction of that. Hey, we're a way ahead of schedule, right? Sure. You know what? I will tell you, I will tell you off, off video. Okay.
Starting point is 01:56:20 Off recording. Okay, fair enough. On that note, then, is there anything else you wanted to bring up, or is that pretty much touched on everything important? Nope, that's it. We're alive. We're doing things. I know that might be shocking to people, but you are welcome to go on over to buddiesabudgy.org. New website as well. Hopefully it works on Brody's screen as he goes. It is working. Yes. Which is fantastic. Recent design has actual information about budgie, which we haven't had for a while. It's almost as if we're trying to actually communicate stuff about the project nowadays. And including the news section. which has blog posts, if you can believe it. I'm pretty sure we've had more blog posts already this year
Starting point is 01:57:08 than we've had in the last probably two or three. As a recording, we are at three in February, which is crazy. Yeah, we have, what, three chirps? Four terps? I don't know. Four is the latest one. Yeah, chirp four. And there will be one coming out tomorrow.
Starting point is 01:57:30 It's not going to have a lot of exciting stuff in it. But hey, content is content, baby. Sure. If people want to keep an eye on the work being done, your streams and all that, where can they go? It's easiest, honestly, if you go to buddiesabudgy.org. And then head on over to the other section in the nav. And the other section has a link to our Mastodon,
Starting point is 01:57:58 Blue Sky X slash Twitter if that's your thing I cross post there because reasons but generally Mastodon which is
Starting point is 01:58:11 buddies of budgie at floss dot social and I boost myself when I'm planning on doing a stream you know a project league
Starting point is 01:58:20 has that has that privilege so that's how you know you could find me me at Joshua's fable dot social. No one's going to remember that. That's okay. But you can't do the at me look up because that's not going to return anything useful.
Starting point is 01:58:37 So good luck finding me. You'll never find me. And I don't know if you, maybe you mentioned it. I don't know if I, maybe I blanked it out. There is the Open Collective as well if you want to go support the project. Of course, everybody likes money. And the more money we get, the more money we could spend. We don't have any particular targets. That's how money works. That's how money works. We don't have any particular targets on what we want to spend on besides infra. But if one magical day I could work on it full time, that would be great.
Starting point is 01:59:08 Let's be realistic. It's probably never going to happen. But it's a goal. And if you want to help get us to that goal, go ahead. And in the next few weeks, actually, we're going to be updating the sponsor chairs and all that as well to provide a little bit more transparency. and hopefully some benefits. We're cooking on some ideas. We'll see how it goes.
Starting point is 01:59:31 If there are any lottery winners who want to support a desktop rather than buying a Ferrari and going broke within the next year, you can donate to budgie. Yeah. Yeah, I would say your money will be a lot more spent with us than it will be if you threw it into an investment in like an index fund for all the AI stuff because that's all crashing down.
Starting point is 01:59:53 Yeah, we'll see how that goes. Yeah. Anyway, is that pretty much everything you want to mention? All the links, no other links to check out? Nope, yeah, thanks for having me on. Always appreciate. Yeah. I guess I do my outro and then we'll sign off.
Starting point is 02:00:08 All right. Okay. My main channel is Brodie Robertson. I do Linux videos there six-ish days a week. Sometimes I stream as well. I've been kind of lazy on the streaming. Maybe I'll stream Budgie at some point. That could be fun.
Starting point is 02:00:20 I was breaking Cosmica lock during their alpha, so maybe I'll break Budgie. That'll be fun. I'm sure we'll run into the video. something. Do it. I'll do it in a virtual machine because I did kind of crash Cosmic a lot of times. And I wasn't using a streaming of PC at the time. So that ended the stream. Yeah. I've got the gaming channel, Brodion Games. Right now I am playing through Shenamu and DMC 5. So check that out. If you're watching the video version,
Starting point is 02:00:46 they should find the audio version, basically everywhere you can find a podcast. Search Tech of a T. There is an RSS feed as well. You will find it in all of your favorite apps. The video is on YouTube and we have Spotify video if for some reason you watch Spotify video. Yeah. How do you want to sign us off? What do you want to say?
Starting point is 02:01:08 Oh, oh, you're leaving it to me. I always do this. You did this the last time you're on as well. I never tell anyone they're doing this but I usually assume that if you've been on before you kind of, you might know. I guess you just I forgot. This was years ago. It was. But fortunately you brought me on on Valentine's Day.
Starting point is 02:01:26 That did have to. Which shows just how much you love me and love the project. And, you know what? I feel both ways, you know. Honestly, I'm surprised that you waited until the end to do that. I had to find a good, a good place to hook it in. You gave a good opportunity. Okay, sure.
Starting point is 02:01:48 And like Cupid, I shot, I shot my arrow and it landed right on its target. Didn't it? Right into that heart of yours. I'm going to stop the recording now. Yep. Yep.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.