Tech Over Tea - The Great Libadwaita Debate | Gabmus

Episode Date: July 5, 2024

Recently a developer involved in GTK app development reached out to me wanting to discuss the state of the toolkit and why he is a lot more positive than I and many others with the direction that thin...gs are going. ==========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://gabmus.org/ Mastodon: https://fosstodon.org/@gabmus Gitlab: https://gitlab.com/gabmus Gnome Gitlab: https://gitlab.gnome.org/gabmus ==========Support The Show========== ► Patreon: https://www.patreon.com/brodierobertson ► Paypal: https://www.paypal.me/BrodieRobertsonVideo ► Amazon USA: https://amzn.to/3d5gykF ► Other Methods: https://cointr.ee/brodierobertson =========Video Platforms========== 🎥 YouTube: https://www.youtube.com/channel/UCBq5p-xOla8xhnrbhu8AIAg =========Audio Release========= 🎵 RSS: https://anchor.fm/s/149fd51c/podcast/rss 🎵 Apple Podcast:https://podcasts.apple.com/us/podcast/tech-over-tea/id1501727953 🎵 Spotify: https://open.spotify.com/show/3IfFpfzlLo7OPsEnl4gbdM 🎵 Google Podcast: https://www.google.com/podcasts?feed=aHR0cHM6Ly9hbmNob3IuZm0vcy8xNDlmZDUxYy9wb2RjYXN0L3Jzcw== 🎵 Anchor: https://anchor.fm/tech-over-tea ==========Social Media========== 🎤 Discord:https://discord.gg/PkMRVn9 🐦 Twitter: https://twitter.com/TechOverTeaShow 📷 Instagram: https://www.instagram.com/techovertea/ 🌐 Mastodon:https://mastodon.social/web/accounts/1093345 ==========Credits========== 🎨 Channel Art: All my art has was created by Supercozman https://twitter.com/Supercozman https://www.instagram.com/supercozman_draws/ DISCLOSURE: Wherever possible I use referral links, which means if you click one of the links in this video or description and make a purchase we may receive a small commission or other compensation.

Transcript
Discussion (0)
Starting point is 00:00:00 I am definitely a professional and know what I'm doing with OBS. Welcome back to the show. I'm, as always, your host, Brodie Robertson. Welcome back to Tech of a T. And today, we have Gabmus on the show, who has been involved in GTK development stuff before, GTK app development, and wanted to come onto the show to sort of... I guess maybe you should explain why you're here and I think you can give like a better explanation for
Starting point is 00:00:29 it. All right, sure. So first of all, thanks for having me. I'm really excited to be here. So why am I here? There has been some discussion on your channel about GTK and like LiboData and QT. We like to argue about this stuff, like religion wars. If it wasn't on the channel, we would be talking about Emacs and Vim. I'm a developer and I use GTK for the apps that I make.
Starting point is 00:01:13 And I am very much like in the middle of all this discussion. And I think like, I think I about it, I don't think that they really necessarily know what they're talking about. I'm talking about your regular Reddit posters, right? Stuff like that. Yeah, they'll read one headline about it it, or they'll get like one quote from like a developer somewhere, and just that's the thing they repeat on, and maybe they expand from it there, but they don't actually look at what's really going on. They don't go into the repos, they don't read
Starting point is 00:01:56 any documentation, they just sort of guess, basically. Yeah, right. And like in general, I think that for what we're talking about here, so we're talking about open source, we're talking about free software, to be more precise. And in general, in the world of free software, there's always like, I always think about free software stuff
Starting point is 00:02:16 with one assumption in mind. It's free, like free as in freedom, right? So you don't like it, you have your new given right to fork it. And so many people have forked stuff in the past. GTK2 apps with the Mate project a while ago. Still, like, there's a KDE 3 fork somewhere, like Trinity desktop, something like that?
Starting point is 00:02:38 Trinity, I want to say is... What is Trinity desktop? I think it is 3. 3 sounds right to me. let's go to wikipedia would also kind of fit with the name no that's the kde one trinity is kde yeah yeah yeah so that's based off 3.5 yep sounds about right i thought i was still you're saying it was forked off of maybe i misspoke uh no i'm talking about like um uh someone for kd3 because apparently that's a great user experience and people still want to use that that's perfectly
Starting point is 00:03:11 fine see your point um but at the same time like i see that on the other hand end of the spectrum there are people that this is like also a recurring topic they kind of feel entitled to say what is and isn't good, like what developers should or should not do. If I am part of a group of developers that wants to change all user interfaces in their projects to, I don't know, red on pink, right? That's an idea. I'm not saying if it's good or not, but I am entitled to do that as the developer. And I don't think that anyone can come to me and say,
Starting point is 00:03:56 well, I don't like it. Sure, you don't like it, but it's my thing. Don't like it, fork it. thing. Don't like it? Fork it. That's true. That's an exceptionally bad case where if the developer just... Yes. If they actually want to do that, that's fine. But I think the most sound argument to make against that, ignoring anything else like I like the look or anything, just talk about accessibility because that is a nightmare to look at for some people. Okay, let's touch on accessibility for a very brief moment. Accessibility is a problem. And it's a hard problem to solve, not just in the Linux realm, but like in general. And while I think that like, we are pretty decently placed as far as like the toolkits and the tools that we use, we are not as like like, we're not on par with other platforms probably.
Starting point is 00:04:45 But still, deciding if you want to make a piece of software accessible or not is still very much in the realm of the developer's choice, right? Sure, yeah. Like, if you're paying for it, that's, like, the conversation changes a little bit. But if you're not... No, absolutely, absolutely.
Starting point is 00:05:03 I think it depends on what your like your your goal with the project is right if you're making something for if you're making something for yourself right and you're just putting it out there you're like okay hey if you want to like i've got a bookmark strip for example it's written in python i know how it works it's barely documented if you want to add some documentation i don't care i don't need it but i never intended that for other people to actually use so it's designed specifically around how i use it i think things get a little bit weird when you're designing something obviously it is still at the end of the day your choice as the developer but things start to get a bit weird
Starting point is 00:05:43 when you're designing something specifically with the intention that other people are going to be using it. This is obviously cases like KDE, GNOME, Krita, you know, any software that's being developed, not just because the devs want it, because the devs are trying to solve a problem that other people also have. Definitely. Definitely. Like the conversation changes lightly to the extent that if you actually want people to use this, you have to a certain extent to cater to their needs. But I doubt that that's the case for most open source projects out there. In particular, I'm thinking about like the things that I make, right?
Starting point is 00:06:28 Most of... Can you give me an example of something I can bring up? Oh, sure. I have been developing a number of applications. Notoriously, Feeds or Gfeeds is an RSS reader. HydroPaper, it's like a wallpaper manager for multiple monitors for GNOME. And one that I am more recently heavily involved in
Starting point is 00:06:53 is Envision. Envision is a VR app, for lack of a better term. It's an orchestrator to basically click, build, and run Monado and all the accessory components to have open source VR. I haven't been very active in development
Starting point is 00:07:15 as of late for... I have been working my day job, so that's unfortunate. You authored something one day ago. There's something. I do still keep my... I do stuff pretty much. I wouldn't say on a daily basis,
Starting point is 00:07:32 but I'm pretty active. It's just that my time is limited, and I do... The stuff that I develop, and this goes to further my point, the stuff that I develop is something that I do to scratch my own itch, right? And I think it's one of the fundamental pillars
Starting point is 00:07:49 of free software. I want to scratch my own itch and I do something because I am capable of doing it. And in doing so, I am also coincidentally scratching a bunch of people's itches. And that's kind of weird. But also, I think it's also a nice thing to do to in a way give back to the community if the community wants that that thing that I'm making back right and like that's
Starting point is 00:08:17 my perspective on on like the whole like open source development stuff right and in particular for these kinds, like, and this is like one example, because the other example is I'm doing this, like, this is not my case, but like there are people that are lucky enough to do this professionally, where they get paid either in donations
Starting point is 00:08:36 or like there's some company paying them to actually develop something. And at that point, you are trying, well, technically you should be trying to make the best interest of whoever's paying your bills right be that your uh donors or uh patrons or uh the company that's actually paying you to do the particular job well it depends on the terms of your specific contract whether you're doing something sure for the company or they're employing you to specifically address the needs of the community you know it depends on what you're doing something for the company or they're employing you to specifically address
Starting point is 00:09:05 the needs of the community, you know. It depends on what you're doing. Yeah. I'm not talking like strictly legally, but like as a logical thing, like if I'm receiving donations- Yeah, you're being paid to do a specific bit of work. Yeah, yeah.
Starting point is 00:09:16 If I'm receiving donations for like developing software in the open, then I am probably not contractually obligated to do anything. Like, there's no legal thing binding me, right? But, like, it's just more of a moral or, like, we can say moral, like, binding there that, like, if you don't respect it, you're not going to get arrested or pay a fine or anything like that. But it's still like good uh good practice
Starting point is 00:09:45 i'd say yeah yeah um anyway uh and i think that the like that's like a different argument argument that we can make um because it like it becomes more complicated uh at that point but like for most i think that for most uh open source software out, what you're going to find is some random guy in their basement doing work for free. Yeah, absolutely. And I don't think that bringing opinions into that conversation in a certain way is necessarily useful. certain way is necessarily useful. And I'm talking about like people harassing developers or like people saying that, oh, this particular developer did things that I don't like, so they are bad. And therefore, I will, I don't know, boycott them. Right. Okay. I'm not getting money anyways, but do your thing. Fortunately, that's not been the case for me.
Starting point is 00:10:45 But, like, that's something that I've seen happen a lot online, unfortunately. And that's kind of sad. And that, like, discourages people from doing open source. And I think that to a certain extent, you, like, have to have a certain character not to be affected by this kind of stuff or to like learn to ignore it right just just being online enough to know that there are just trolls out there you don't have to feed the trolls right i think a lot of people a lot of developers like they shouldn't have to think about this but they make the mistake of having a public persona, and when you have a public persona, it's going
Starting point is 00:11:27 to lead to people who I guess take the criticism too far, right? Like, there is a clear line between criticism and harassment, and there is a lot of people that like to scrape really, really close to
Starting point is 00:11:44 that line. They like to peek their head over a little bit, you know. Obviously, there's the people out there who are just outright trolls, right? Those people, you know, they're gonna be, they're gonna do what they do. Like, those people, they're just out there, they can't be helped. But there are some people who, whether it's because they, you know, have a lack of social awareness, or they just talk in a certain way that gets them very close to that line. Some people do cross that a bit, and if you're going to exist in an online space, you do definitely have a certain kind of character to know how to deal with that. I think that there's a lot of developers out there who it's basically impossible to contact
Starting point is 00:12:25 them they'll have like an email somewhere maybe they'll hang out in like matrixes but they don't have like a master door and they don't have a twitter they don't have anything like that they just do their thing and that's that's basically it i feel like that's probably a much like healthier way to do things yeah much healthier like mental place to be in rather than like constantly getting involved in like, it's one thing to have, like, discussions in a repo, but when things start getting big enough, they start expanding
Starting point is 00:12:51 out of the repo, they'll start turning to Twitter threads, and Reddit threads, and Mastodon threads, and you know, eventually, it just becomes this thing where, you know, everybody's talking about it. Obviously, I'm definitely part of that. I will talk about these things, and I will, you know everybody's talking about obviously i'm definitely part of that i i will talk about these things and i will you know shine a light on them but i think even before that part happens like some people still take it outside of the like the repos themselves
Starting point is 00:13:18 i'll see this quite often especially in like wayland discussions for example they get very heated people start having discussions about it outside of outside of GitLab and you know when you're outside of the GitLab people start throwing things around more casually, start like you know whatever, insulting people because they're not
Starting point is 00:13:38 actually tagging them so they assume they're never going to see it and that's sort of the thing about social media you're posting it publicly so it's probably gonna make its way to the person you think is not gonna see it i think that that's kind of intentional but yeah definitely for some people but i think that there are other people out there who like just that like a lapse of judgment maybe they just don't assume there's gonna go any further than that maybe they don't specifically mention a name so it's like very vague but then the person
Starting point is 00:14:10 still finds it anyway you know social media is just weird it makes everything just messy yeah it enlarges the social issues that we have in real life because if you have a person in front of you you're not gonna you're not gonna well some people might but like typically if you have a person in front of you, you're not going to, you're not going to, well, some people might, but like typically if you're saying you're not going to throw shit at them, like, yeah, I don't know where, um, anyways. Yeah. So yeah, a little bit, but I think that that's useful for the, the entire conversation. It's not like, uh, so yeah, anyway, um, we would like, one thing that I would like to touch on is, in particular, the whole debacle around GTK4 and LibreData and not supporting themes and all that. That's a conversation that kind of speaks to me because I have been script KDE myself. I have been customizing my Linux desktop back in the GNOME 2 days
Starting point is 00:15:08 with obnoxious themes and broken icon themes. I've done all of that. And people still keep doing that. And I think that that's amazing to a certain extent because it shows some form of creativity and self-expression. And as long as users do that, I'm totally fine with that. And in particular, just as a
Starting point is 00:15:30 general thing, there's this misconception or, well, it's not a misconception. It's like an actual thing. But anyway, GTK3 and 4 and Libadwaita do not support themes. They just, they do have something that resembles a theme engine there.
Starting point is 00:15:52 That's like you can inject CSS into applications. But that's very much not, like it has been used for theming, but it's not a theming thing. In particular, it's used, as far as I know, it's used mostly for far as I know, it's used mostly for the accessibility things, so the high contrast stuff, and also used by developers to make custom-looking widgets in their applications. And it's actually, like, being able to use CSS for that, I think it's actually pretty awesome because everyone knows,
Starting point is 00:16:23 well, most of everyone knows CSS. It's pretty easy to learn if you do it. Yeah, I mean, and like it's made specifically for that styling stuff, right? When at the border, like making something look like a card, stuff like that. So that's an API that exists. And people like in the GNOME tree or well, GTK tree era have used that quite successfully, I'd say, for theming. So changing the default appearance of applications. And again, as far as the user, as long as the user does it, it's perfectly fine. Like you're messing with your system. You're
Starting point is 00:17:00 perfectly fine to do that. But the moment that someone like a company making distribution, it doesn't have to be a company, you know, like a distribution does it, right? Say Ubuntu wants to apply their orange and purple branding to applications. At that point, you're kind of like walking a fine line here
Starting point is 00:17:20 because those toolkits don't really support that, right? It's as if you were a manufacturer for a computer. Let's say a random brand making laptops. And you decided the Windows installation that you ship has to have the Windows logo changed with the brand logo, right? That's just something dumb. Well, first off, there are licensing agreements that prevent you from doing that. But also, you're going to break a lot of stuff for doing that. Even just changing like the little Windows logo. People are going to look for
Starting point is 00:17:57 the start button, like the Windows button. And they're not going to find it. And they're going to complain. They're going to say, oh, Windows is crap and it's difficult. They changed the start button. Well, they can have reasons to say that Windows is crap. But that wouldn't be a good reason.
Starting point is 00:18:21 Because what happens is that the user without knowing it has their user experience completely broken by a mostly aesthetic choice that was out of the control of the original developer. Right? Again, as long as you, the user, are the one making the change, that's perfectly fine. Because you know that you touched the thing. Right? fine because you know that you touched the thing right but the moment you're like when that's not the case then you're just breaking the you're breaking the user experience and what happens
Starting point is 00:18:51 at that point with open source software it happens that like i don't know uh ubuntu let's i keep like using ubuntu as an example uh i have no particularly bad feelings uh for ubuntu apart from snap what they ship isn't really GNOME, because they like to backport specific patches as well. It's this weird amalgamation thing. That's also something that is well within the realm of what they can do, but I wish they would do it differently. I'll maybe touch on that later.
Starting point is 00:19:23 Anyway, let's say like they break something they change an icon that doesn't look like what it was supposed to be uh and it doesn't work anymore for for applications right what happens at that point the user is gonna the user is gonna look at that particular application and say oh this application is broken let me go file an issue and you're gonna see an issue filed for a problem that was not caused by you and that you have no control over. And what I've seen happen in these cases is what I think is the best solution is say, this is not my problem. I won't fix it. Go complain to Ubuntu or whatever else might be the case. The other thing that I've seen is the developer of the application puts in a
Starting point is 00:20:05 specific rule so that if a certain condition is met, the application is going to behave differently. So it's basically like creating more and more complexity in the application. And what happens to that, and I have done that in the past uh like for example uh at some point i tried to um cater to um people that didn't like um client-side decoration aesthetically um definitely talk about that a bit as well that's a that's a big one yeah that's that's the thing where i have a little less of a strong opinion well i have I have an opinion, but it's okay. Let's get to that. I'm getting ahead of myself. Anyways. So I, at some point, like put in support like a toggle for having server side decorations in feeds. I think it was back when it was still
Starting point is 00:21:00 GTK3. And I kept doing that for more and more things. And at a certain point, the settings menu for feeds was just like a bunch of random dials that didn't make any sense. And on top of that, that's just like the tip of the iceberg. Because on top of that, I suddenly had a bunch of edge cases that I had to think about where my application was not behaving right or outright just breaking because there was some combination of options that I didn't test for. Right? So it became more and more of a burden to the point that basically I was having difficulties
Starting point is 00:21:39 doing anything to the application. I couldn't touch it because it would break. And at that point, it clicked. User preference is difficult. It's not a given thing that you should be able to change everything. And at some point, you either decide to stop development and, like, just have it like this and not touch it anymore, or you just start removing stuff that you don't want. You start, like, working around a particular vision that you have, and you just stop, like, wasting precious resources, chasing around random people that want this or that.
Starting point is 00:22:19 Right? Sure. And to that extent, I feel that the same argument can be made for what's been done with LiboDueta. Because with LiboDueta, like it or not, the styling being flat and all, very much a stylistic choice. People have different preferences. That's fine. Anyway, that's the direction that the GNOME developers or the developers behind Viva Dueta wanted to make. That wasn't agreed on choice. The people actually putting the work to develop the thing and that would have like that would have benefit from that particular library agreed
Starting point is 00:23:00 basically on what was and wasn't desirable, and they just did a thing. And at this point, with Leba Dueta and GDK4, I can happily say that, in my experience, GDK4 with Leba Dueta is one of the best toolkits for developing desktop applications, period. Why is that? Because it's straightforward enough. You have complex widgets that are already made for you
Starting point is 00:23:37 that you can just use with very little work put on it. And you can have a sleek looking application without having to either be a designer and like making your own design decisions or without having to like put in the work needed to have some certain thing work in a certain way. And I like picking the GTK three days. That was the case for some things that there were some like applications doing some fancy stuff that like you as a developer, if you wanted to implement that as well, like I see, I don't know, the, just to say a random thing, the Pi spinning, like a Pi thing in Nautilus for like when you're doing file transfers. There's like a loader that looks like a pie that gets filled up as a transfer.
Starting point is 00:24:26 Oh, sure. Okay. Something like that. I'm not sure about GTK4. It's a little bit different in the latest Nowtogl. But anyway, back in GTK3, that particular thing, if you wanted it in your application, you had to implement it yourself. Your best bet was going through the Nowtogical source code and possibly copying some stuff around
Starting point is 00:24:46 if your application was made in C. Otherwise, you would have to translate it to whatever language you were using. And that's not necessarily a great thing, particularly if you want to make an application that not just functions well, but it also looks good to your particular taste. Having stuff like this, I think,
Starting point is 00:25:08 makes a big difference. And that's what makes platform applications pretty to look at, like nice to use and stuff like that. And I could say that's the example
Starting point is 00:25:23 for stuff like Android and iOS to a certain extent. We do have this kind of stuff, right? That's also the case for things like Kirigami. As far as I know, they are doing basically most of the same things. Of course, the design vision is different. The implementation is totally different. But the idea is very much that same one. And the implementation, I must say, is actually quite good.
Starting point is 00:25:50 I don't develop Qt or Kirigami, but I do use some Kirigami apps. And I think that they look good. I prefer personally the LibreData styling, but that's like totally beside the point. Sure. I prefer personally the LibreData styling, but that's totally beside the point. Sure. When you go back to something like GTK or even to some extent Qt, as far as I know, you don't have all that stuff, right? Or if you want to go even more custom-made, something like Electron, right?
Starting point is 00:26:22 Because in Electron, you're just making a website. The interface is a website. Using web technologies, you don't have anything. Well, at that point, you do have access to CSS frameworks. You do have access to CSS. Depending on CSS frameworks specifically, which may offer you something akin to that. It's not as clean,
Starting point is 00:26:45 but there is certainly something there with the web. But mostly that's not designed for making applications. Sure. That's designed for websites. Yeah. That can work for some things like material design, like it or not, works fairly well for both websites and applications, right? So that's a good example. But still, at that point, you're not going to theme it because it doesn't support user theming.
Starting point is 00:27:06 And the same example can be done for stuff like proprietary applications for once. Like, for example, Steam is one proprietary application that we all know and love, particularly in the Linux community. Steam technically supports Steam, sort of. It's like I haven't ever used the theme for Steam that worked actually without breaking anything. So that's
Starting point is 00:27:35 non-themable. And if you even just move to the proprietary operating system scene, Android, iOS, macOS, Windows, Mac OS, Windows. Are any of those themeable except for maybe a dark reference or an accent color?
Starting point is 00:27:53 Not on General Oasis, no. At least without not going and doing some weird breaking stuff. Oh yeah, Windows users will go out of their way to have a shortcut to, I don't know, stop automatic updates, something like that. It's not the intended behavior, yeah. Oh, sure.
Starting point is 00:28:14 And that's fine for most people. And as far as, well, it may be annoying that, for example, I don't like the obnoxious white of the light theme of Windows. That's a lucky thing that I don't use Windows. But regardless, from time to time, I find myself using someone else's computer and I just open the file manager and I go blind for five seconds. So that's a thing. But there's nothing you can do about it.
Starting point is 00:28:46 And that's, again, something you might or might not like, but that's within the realm of the decisions that the developer takes. And again, the lucky thing we have in the Linux space is that, for one, if we don't like something, if it's open source, we can fork it, we can make it our own. And that's very much what like recently the Linux Mint people started doing with X apps. I think we can touch more of that later. Yeah, I did want to touch on some stuff that you, like, unless you want to,
Starting point is 00:29:20 there's more you want to say on this point. Go ahead. I'm going around at this point. You're talking like 15 minutes straight. Sorry about that. No, no, it's all good. It's all good. I was trying to find a point to get a word in,
Starting point is 00:29:34 but it was not going to happen. So about 10 minutes ago or so, there were two topics that you sort of blended together that I think do need to be split apart clearly because they are very clearly different things. That is application theming and icon theming, because these are two very distinct things. And icon theming does have a very specific, like, XDG specification where this actually does exist. There is a definition for what icon theming is. this actually does exist.
Starting point is 00:30:04 There is a definition for what icon theming is. The whole GTK CSS stuff, that's, you know, that's a different thing. Which direction do you want to go down first? I think we can go down the icon theming thing, although I will warn you that I know about the controversy
Starting point is 00:30:20 around it. I have a 25 minute video coming out soon about it. It's insane what was going on in those threads i know it's quite bad and i've experienced it firsthand i know that if you have gnome icon themes and kd icon things to get like if you want to use qt and gtk apps together you're gonna go into some issues unless you do some steps to prevent that. Yeah, GNOME is in the process of basically doing away with icon themes.
Starting point is 00:30:56 Not entirely, but there is a lot of developers in the project who don't like icon themes specifically because of QA and... Yeah, it's basic QA actually. That's the main thing. You cannot assume that the user is going to have the correct icons available. And you cannot assume that the icons they are going to have available are going to fit your UX design you're going for. So, GNOME apps are designed around Adwaiter. If you do not have Adwaiter, that's not our problem. And I know with GTK5, there is some discussions about completely doing away with the architecture entirely and just not even allowing the ability,
Starting point is 00:31:42 at least with Libidwaiter stuff, not even allowing the ability, at least with Liberty Wader stuff, not even allowing the ability to change the Archon thing. There's still some discussion about whether there should be some fallback there or some different solution there for the more generic use cases, but specifically the Gnome usage, there is discussion about completely ditching that ability. I mean, it's basically the same argument, the same thing that we've been talking about up to this point, I think.
Starting point is 00:32:13 Mostly, yeah, QA is a thing. You have to make sure that your stuff doesn't break when you use a different configuration at some point that becomes too much of a burden to deal with. And I think that it does make sense. And to some extent we've already seen it happen in the GDK development sphere where you basically have applications such as Icon,
Starting point is 00:32:39 what's this called? Icon library. That's basically like a developer aid application where you have a bunch of icons, like symbolic icons that you can include in your application. And some of them are like system icons. And those are like the theme icons. And the vast majority of them are actually bespoke icons or like I would say GNOME icons possibly that you can include in your application, bundle it with your application and like ship it. And I have been doing that. nice thing to have like a pretty nice tool because particularly when you need some specific icon that no one has needed before you you have nothing so we will need to include an icon and like having
Starting point is 00:33:33 a straightforward process to to do that is kind of kind of interesting um i think that this is a good move um it's less of a good move considering um the other quote-unquote legacy applications or even if you don't want to think about like older GTK stuff, you can think about Qt stuff, you can think about other toolkits that are... The issue that happened in that thread is Adwaita is not... It's by definition not a correct icon theme anymore. It's by definition not a correct icon theme anymore. They specifically do not include certain icons and only include a symbolic version. Whereas at this point, the spec does not currently support symbolic icons. That's the discussion they are having.
Starting point is 00:34:17 And everyone's in favor of adding them. KDE likes symbolic icons. Gnome likes them, so they might as well be in the spec. But they weren't in the spec already, and that meant that there's some applications that are requesting the non-symbolic version, and if Adwaita is set as the default theme, so I think the example they used was Kate. If Adwaita is set as the default theme,
Starting point is 00:34:39 which it would be on Fedora, for example, that application is just missing a ton of icons because it cannot find them in Adwaita because the theme just doesn't have those icons anymore. And this... I'm totally fine with what Gnome is doing internally in their ecosystem, but when those issues start leaking out
Starting point is 00:35:03 into other applications that a user might want to install on their system like installing kate's a weird one but you might want to install i don't know like there's gonna be some application out there kdenlive i don't know if kdenlive supports kdenlive i think it i think they moved to like for seeing their own icon thing. That makes sense. I think that that's like most Qt apps are like if you use GNOME, most Qt apps in my experience are broken. Or at least I have never been able to make
Starting point is 00:35:33 Qt apps. Do you want to know why they're broken? It's because they don't it's finally become a discussion because of this. They are making Breeze a hard dependency. Why it wasn't this entire time i could not tell you but they're finally doing it i know i know the only problem is that i haven't been able to set set breeze as the is the preferred qt theme or anything but but plasma and that's
Starting point is 00:36:01 mildly annoying particularly when you cannot stand Fusion, the Fusion theme. Anyway, yeah, I think that the icon problem is very, very impacting on the community and the general usage of the Linux desktop, whatever it is for you. And, but at the same time, I think that, um, it's, it's not very nice to say, but I think that at some point it becomes an argument of you can't make an omelet without breaking a few eggs. Sure. Um, I think that some particular topics move too slowly to be effective unless you start breaking stuff.
Starting point is 00:36:47 The moment you start breaking stuff, I think things go into sort of an emergency mode and things start moving back again. Like it's a it's like an unholy grease for the wheels of random maintainers. That's... I wish these certain topics would move faster or in a more agile sort of fashion. But unfortunately, again, it's very much the case of
Starting point is 00:37:19 most of these people have other priorities if they are actively working on that particular project or if they're random contributors or even frequent contributors, but it's not their primary day job, it's hard. It's hard to keep up with all this stuff. Right. Well, it's especially hard when you're dealing with these meta-level repos like Wayland, for example, or XDG specs where it's not one desktop score. When you're dealing with something in GNOME, right, like, there's, I've said this for someone else
Starting point is 00:37:50 before, but when you're dealing with a GNOME problem, you can all agree on some fundamental truths. Like, we're gonna use GTK, we don't particularly like application theming, we use Adwaita for everything. Like, those things, no one's going to argue that in the GNOME project. At least, they probably won't, unless they have some time they want to waste. But when you're dealing with something like XDG, you're dealing with Wayland, you're dealing with any of these meta-level repos, it's not just, this is what GNOME wants. It's, here's what KDE wants. Here's what WLRoots want, here's what Cosmic wants, and maybe there is some things you agree with, and oftentimes, you know, KDE and Cosmic might have similar intentions, but WLRoots, they're trying to make a generic library,
Starting point is 00:38:35 they're not even shipping half the, uh, the XGG portals, for example, because it just doesn't fit with what they're doing, they expect the downstreams that are implementing something with w roots to do it themselves and whenever you're dealing with something like this it's going to lead to these sort of rough edges in the discussions and things that just they just frankly don't move very quickly like that that's the simplest way to put it there are we've all seen the Weyland discussions where it's like, five years this protocol has been in discussion. And it's not like five years it's been
Starting point is 00:39:11 stalled. It's been five years active on and off discussion. And I have noticed that with Red Hat being like, yo, so we're gonna stop doing the whole XORG after row seven there's now a deadline to when red hat does not care about x11 anymore and that i have noticed has sort of
Starting point is 00:39:34 as soon as that happened a lot of those protocol discussions which i thought would have taken multiple years have taken multiple months or in some cases, like, multiple weeks. Some developers at NVIDIA at some point, I think, got, like, a random ear bleed when Red Hat announced that. Just, like, out of the blue, someone at NVIDIA had a stroke because they suddenly had to support. Oh, yeah, there's a whole NVIDIA stuff as well.
Starting point is 00:39:59 Yeah, yeah. Out of nowhere, like, oh, yeah, okay. We're good. Let's go. It just works now. Apparently, I've not tested it myself, but 555 On desktops that have the explicit sync patch Apparently it's perfect Like, there's no issues Apparently
Starting point is 00:40:14 I haven't used NVIDIA for a while I mean, from what I know You still have a bunch of random problems With NVIDIA, but you do have random problems With AMD as well. So there's hate to go for every big manufacturer out there. But the whole, your screen is flickering, that issue has sort of gone away.
Starting point is 00:40:33 And that's a big one, if you ask me. Particularly if you're photosensitive, I wouldn't imagine how fun that would be. It's like an ER roulette. Every time you open Steam, you don't know if you're gonna go to the er if you're gonna end up playing video games yeah we love race conditions where they completely random it's gonna happen no good luck enjoy have fun so yeah was there anything more you want to say on the icon stuff or can we i honestly i don't have much to say i think that like a rework on the
Starting point is 00:41:06 spec is um probably a good idea but i also think that applications shipping applications shipping their own icons is also probably a better idea uh it's it's kind of annoying because now you also as a developer you also have to bundling icons where previously you didn't necessarily have to. But I think it's one of those necessary annoyances where your application overall is going to function better. And again, we already have examples of applications that without being forced to do that, do that. Because either they don't have the icon available or they just want to make sure that it works well on every system. Yeah, the icon theme thing is weird because you are definitely right um whether it's they have their own custom specific theme or they
Starting point is 00:41:52 depend on something like i don't know breeze icon theme or add weight or whatever they choose fits with their application design i think you are right there that it makes sense to do that and a lot of applications simply just don't have any icon-theming infrastructure. Like, I think Electron, if you wanted to do, if you wanted to interact with the desktop icon theme, you would have to build your own infrastructure for it. That's just not a thing in Electron. And then a lot of applications that are built in GTK and Qt
Starting point is 00:42:21 don't actually interact with it anyway. Like, GIMP is a good example, but, you know, GIMP is... GIMP is not a GTK and Qt don't actually interact with it anyway like GIMP is a good example but you know GIMP is GIMP is not a GTK application anymore it's like GTK weird whatever they've done to GTK2 to keep it functioning all these years well it's GTK as in the old GIMP toolkit not the GNOME toolkit
Starting point is 00:42:40 as GTK now is basically but there's a lot of other applications which just don't interact with this infrastructure. But then we have desktops like XFCE, we have desktops like KDE, we have desktops like Mint, where they still do heavily rely on the icon theming for their internal applications.
Starting point is 00:43:04 And I get what you're saying that they should like we should have it's it's better to have a default a default icon theme ship with the application but i don't think these desktops are going to move away from this or at least move away from it being customizable to the user or being a global thing right yeah okay so about these desktops these outlier desktops let's just call them that um xfc um mint or cinnamon and lx cute is the other one that comes to mind they are desktops that are built on technologies that exist beyond their projects right xfc is built on gta support beyond their projects, right? XFC is built on GTK. Even KDE supports icon theming.
Starting point is 00:43:47 So I'd... Well, for now. Sure. For now, we do. Right. And I'm pretty sure that at some point, you're going to have a fallback system where, yeah, GNOME doesn't support system icons.
Starting point is 00:44:01 But I'm pretty sure that something will be implemented where, OK, you still have a legacy icon theme that your applications can use. Because like being real, some applications are not going to be updated to include icons, to bundle icons, and you're just going to have to make you roll with what you have. And anyway, I was saying those desktops, I think they exist. They do not exist in a vacuum. They are not making their own toolkit. And the toolkit is basically developed by third parties.
Starting point is 00:44:33 What for them are third parties, right? Possibly some XQT developer is also a Plasma or Qt developer or the other way for XFC, right? But it stands like the... Sorry. What I mean to say is they either need to adapt to the changes as if they were any other application developer or they will fork and go their own way. And that's very much what Xapps, as far as I understand, is trying to do forking off of GTK3 for their own applications. And I think that that's like an interesting thing,
Starting point is 00:45:14 but at the same time, it also kind of makes me kind of sad because they're losing on so much stuff that's been going on in GTK4. Just for, I'm sure it's not just about theming. It's probably also about other stuff that I am not aware of. But what I think would be the better option here would be the following. So GTK, in and of itself, GTK4 is not married to Libidueta.
Starting point is 00:45:46 Libidueta is its own project. You can very well use GTK4 without Libidueta, and that's fine. What you can do is build something that basically competes with Libidueta on top of GTK4. Basically a widget and style library. And if you want, you can also have that support themes. Who's stopping you at that point, right? I think that that would be a better option. Definitely the one that would require more developer effort.
Starting point is 00:46:14 But if they are, I don't want to say if they're serious about it. I'm pretty sure that they are serious about their decision right now. I just want to say i think it would be a better option to to start from gdk4 and work together with upstream instead of forking upstream in this particular scenario because gdk4 is not going anywhere uh again not married to livid data um plus like gdk4 has a bunch of stuff that many other toolkits don't have like for example, being GPU accelerated. For better or for worse, that's a huge deal compared to, like, more traditional toolkits like GDK3. And, like, most, like, I don't think the most Electron apps are GPU accelerated.
Starting point is 00:46:56 Maybe some are. Probably depends on, like, the version of Chrome you it's based on. Anyway, yeah. So I think that they will go ahead with their thing. I hope it has better success than Xapps have had up to this point. But if any Mint or XFC, if any developer that's involved with Xapps is listening, think about maybe working on your own LibreData-like library that respects your desktop vision, that respects what you're trying to do.
Starting point is 00:47:35 Because GTK4 is very, I think it is, has the right tooling around it to do that. And you can clone LibreData, like remove all this stuff and add your own i think if you if you want to be very like skunkworks about it um and i think that the users will also benefit from that uh also because like it's not just being about being gpu accelerated it's about like actual stuff that in the that's different in the API from 3 to 4. And if you're still based on upstream GDK 4,
Starting point is 00:48:10 you're not going to need to update your APIs and make changes to the code yourself. Because GDK 3, as far as I know, maybe it has some maintenance patches, but as far as I know, it's not. It's in development. It's done. We moved on to GTK4. We're already looking ahead to GTK5.
Starting point is 00:48:28 So I think that the GTK3 ship has sailed a very long time at this point. And as a developer that has used GTK3, I'd say good riddance. It was a good toolkit for the time. GTK4, I think, is better uh for the developer and also for the user in a number of ways it's not perfect nothing's perfect uh but i think it's uh very very good for what it is so regarding the whole gtk3 gtk4 thing um i i've not seen him clarify this i need to have a proper conversation with Clem. He says that somebody has forked GTK3.
Starting point is 00:49:10 I know there are a bunch of forks out there. Like, on the April update thread where they were talking about the accept thing, I read through the comments. He mentioned there was a fork. I don't know if that's a fork they're using. Again, he's not properly clarified it, so I can't comment on that. Now, the whole moving to GTK4 thing, this is something Clem would have to properly specify himself.
Starting point is 00:49:35 This is just me going from what I can see him saying. His reason for not wanting to move up is... It's a very Mint reason, and it's a very... You expect this sort of answer from Mint, that GTK3 took a long time to get to the point where they were ready to move to it, and they're just happy now, and they want to enjoy GTK3 for a bit before moving up to GTK4, which is not, you know, an answer that, you know, most users are going to, like, really care about, but it's a very like, Mint likes to move very, very slowly with their changes, and that's, that's Mint doing their
Starting point is 00:50:10 thing, but as for the whole moving to GTK4 thing, my understanding for why Clem doesn't want to do that is he's unsure about the future, I guess the future direction of gtk not the whole specifically limited waiter but the toolkit itself and i we did briefly touch on the whole idea of gtk being agnostic toolkit before but there's issues that clem specifically brought up like the this was opened up three years ago it it's got a GTK5 label now, there's still some discussion about maybe doing it, uh, removing the GTK theme name setting from the toolkit entirely, there's the issue where they are considering maybe dropping the X11 backend, that is, like, neither of these are confirmed at this point. You have issues with
Starting point is 00:51:05 GTK isn't, I believe they still haven't changed this. Let me just double check. Cursor shape, Wayland, GTK. I believe that they are not interested in supporting the cursor shape protocol, which is going to allow you to do compositor side cursor themes because they don't want to support it in GNOME so there's issues like that where like
Starting point is 00:51:36 do you have something to say there? I'm just wondering compositor side cursor thing? Yeah yeah it's a relatively is there a chat on here? Can I... Yes, there is. How do I send it? Um... So, instead of doing... Um, I might have badly explained it, but... It's basically a different way of doing...
Starting point is 00:52:05 Doing cursor themes. The exact details don't exactly matter. At least for right now. And... They're not opposed to getting into Mudder. But there's no interest from... It would be like... If somebody wants to get into Mududdah from outside of the project,
Starting point is 00:52:26 they would maybe possibly consider it. But I think you are... Like, you do make a good point about moving up to GTK4 and then going from there. I think their concern is just where the toolkit's going to go in the future and whether or not that future is aligning with what they're going to do at a core toolkit level not the whole adding things onto i think right now it probably makes more sense to move to gtk4 and make their own version of limited weight i think you are right there but i that's not the direction that they seem to want to be interested in? I think that these are perfectly valid concerns.
Starting point is 00:53:12 At the same time, I would say they are a big portion of the developers that use these kind of toolkits, right? They could, I don't know if they have tried or not, but what i would do is try to get into the conversation and try to want like understand together with gtk developers what's like the current state of things what's like this even like the suggested way of going forward because i suggested like mint flavored libaduueta. But that's my idea. Maybe there's a better way to do this.
Starting point is 00:53:48 With the Xapps thing, they want to make these generic X applications, so maybe it wouldn't be mint-flavored. I think if they were to do something, adding their own theming system into it would make the most sense there. Yeah, mint-flavored sounded better than X flavored also because X is kind of ambiguous these days. We have three-way ambiguous because we have X apps, we have X11 and we have whatever Twitter has become.
Starting point is 00:54:13 So, yeah, mint flavored. Anyways, I think that it would be beneficial to get into the conversation about what we're trying to do, what we're trying to do, what we're trying to accomplish, why we think using GTK4 might be a good idea or might not be a good idea, and asking for a confrontation about these topics with people that are actually involved in decisions for GTK moving forward. The thing about having or not having this or that
Starting point is 00:54:46 feature is definitely a concern that I haven't considered. That's why I'm reconsidering this as well. But at the same time, I'm thinking about the end user, right? It's not great to have
Starting point is 00:55:01 GTK3 apps have some missing functionality that is just too bad to lose, right? Just for the sake of having a different desktop. Because at the end of the day, like, this imaginary new Linux user, if they exist, that are just going to go to the Linux shop and buy the Linux computer, they're going to have, like, if they happen to land on something that runs Mint, they're going to have a different experience from someone that runs Fedora, for example, right? And if that experience might be just different or it might be actively worse like for example um if you are running uh like if you're rendering your your gui with with a graphics card it stands
Starting point is 00:55:52 true i'm not i don't have numbers about this but it stands to reason that it's more efficient just because the gpu is designed to draw pixels around i think that's not controversial at all. GPU draws graphics. Yes. Yes. I would think that like you might get, okay, you will probably get better performance if they implement the changes, right? You might also get better battery life. You might get like smoother animations. You might get a better experience with high frame rate monitors, stuff like that. While on the other hand, if you're using still GDK tree,
Starting point is 00:56:26 you're going to waste a lot of system resources just to draw a window because the CPU has to do it, right? And we're not even touching about stuff that even to this day, GDK still kind of struggles about, like big lists, right? That's the thing that is problematic. I have made at least three applications that rely on big lists that grow and never stop. They are virtually infinite. And big lists are definitely a big problem in GTK still to this day. It was much worse in GTK 3.
Starting point is 00:57:01 It's somewhat better in GTK 4, but still very much not to solve problem um they like users are gonna miss out um if you have a gtk3 app with too many rows in a list box or uh too many icons in a folder view it's gonna crash uh who knows if it's gonna bring the system down with it um so this is the kind of stuff i'm thinking about and like oh you lose him the technology's sake right sorry we're cut out for a moment there oh what did you oh hello can you hear me i can hear you okay we good okay we're good. Okay, we're back. I think. Are we? It looked... Your video and voice is desynced, but it looks like it's fine. So, just try. Okay, test one, two, three. Can you hear me?
Starting point is 00:57:53 Okay, we're good. I don't know what happened. It works. Cool. We're good. Okay, great. Magic. That's the explanation. Okay, what was I saying? Okay, so thinking about the users is a thing. There's a part of me that also thinks about the technology because me being a big nerd, I like to always be on the latest and greatest because I think it's just reasonable. That might not necessarily be the case. Particularly like I'm thinking, oh, we took a long time to move to
Starting point is 00:58:26 gdk3 we want to enjoy it before moving on that's totally reasonable and like i understand that that's the same uh idea of banks just moving off of windows xp finally to windows 7. uh the new hotness right now no but like jokes aside again it's a matter of how much time you're going to invest in one thing or another. Because you might want to chase the latest version of GTK or you might want to chase the actual feature set that you want to implement. And time is not infinite. And at some point, you just have to decide on what to invest on. So it's reasonable. But at the same time, if you really don't have that much time to move on to GDK4, do you have time to keep maintaining GDK3 on your own?
Starting point is 00:59:12 That's part of what I'm thinking. I don't think it's a matter of not having time to move on. It's just not wanting to move users on too quickly. wanting to move users on too quickly it's wanting to it's wanting to move these changes out but move them out very gradually and like this is this sort of goes into their whole like not having wayland support yet like them even attempting to implement wayland is only a very very recent addition this is not just on on cinnamon but on mate budgie is just very recently getting their their whaling stuff done but joshua is a crazy person and is getting it working in a year i don't believe him i've not i've not i don't believe he's gonna get it done but he thinks he's
Starting point is 00:59:59 gonna get it done um but whaling support is a massive undertaking yeah definitely it's definitely something a little bit more involved than just migrating from one version to another sure sure but like the point i was getting at there was like mint especially mint moves very slowly with their changes like they they want to be something where you know it still looks like window 7 right like it if you used mint 10 years ago and you use mint today there will be some changes sure but it's not going to be like using gnome 10 years ago and gnome today like you will very much notice the difference instantly definitely uh definitely and there's value behind that uh don't get me wrong but i would decouple like ux design from the actual
Starting point is 01:00:58 like underneath the stuff that's under the hood uh because Because you can still very much make something that looks and feels like Windows 95 on, I don't know, GDK4, for example, if you really wanted to. Anyways, yeah, that's basically my two cents on the old situation. Like, in general, having more quote-unquote competition on these core apps is valuable because it's going to give users more choice and besides it's going to create an environment where these desktops that do very well very much still have their niche like xfc lexqt and mate and cinnamon um they this could give them like a way to effectively have a core set of application applications that they have a say on where they're going like development wise what i what the reason why i am very much in favor of what mint is doing here is because and i i totally get what you're saying but the reason
Starting point is 01:02:04 i'm in favor of them doing this is the same reason why I'm in favor of what Cosmic is doing, where the people on Mint and the people on Cosmic, they, whether they're right or wrong, they've very much had a dislike of the direction that they see GNOME and GTK going, especially, you know, Cosmic where they, Cosmic
Starting point is 01:02:27 specifically wants their stuff to look the way they want it to look and if you're going to be building basically what Cosmic was before was GNOME with plugins, like it's going to look like GNOME and that makes sense because it is GNOME but they've had these issues with the
Starting point is 01:02:44 direction things are going and instead of just saying okay we're gonna sit here and just like complain about it we're gonna sit here and just like say how bad gnome is how bad gtk is they've decided that they're gonna sit down and actually do something about it that it's not going and getting involved in the upstream, like involved in GTK, involved in GNOME, like maybe you would like them to do, but they've decided something they want to do. And in Mint's case, they're doing a fork. In Cosmic's case, they're making a whole new desktop, which is kind of like, from what I can see,
Starting point is 01:03:24 this sort of middle ground between gnome and gtk where it frankly looks fairly gtk and gnome and kde i'm misspeaking really badly today um where it looks very much gnome inspired but it has a lot more customization and they're they're not starting where we were in 1998. They're building off of what a modern desktop is today, and taking the best parts of GNOME, the best parts of KDE, and building what they feel like is the best desktop for their users. And even if what you see Mint doing, or what you see System76 doing with Cosmic,
Starting point is 01:04:03 is not what you would like them to be doing at least it's I think we can appreciate the fact that they are doing something to solve their issues with what they see Gnome and GTK doing I think that the situation for Cosmic and System76 is a bit different
Starting point is 01:04:19 similar in many ways now that you mention it but it's also very different because they did try to get involved with upstream at some point, that didn't go well for a variety of reasons I do not want to touch on but regardless, they
Starting point is 01:04:35 decided what they were going to do next and they did and what they are doing is different in my opinion because they're not like staying locked in old stuff that they are going to need to maintain. They're moving on to completely different stuff. Yeah, if you want to talk about newest of the new,
Starting point is 01:04:59 they're doing Rust GUI development. Like that's, if you want to talk about new, that is a very very immature ecosystem They are the reason right now There is like rust GUI stuff happening really like the toolkits were there already, but before system 76 came in It was not in a great state like you look at the toolkit They're using and now all of the top contributors are people from system 76 like they have been heavily heavily investing both time money and also code
Starting point is 01:05:33 into actually getting this up to a state where you legitimately can build a desktop with a rust gui yeah and i think that's great like uh i like for the latest project that i've been working on envision it initially started on iced which i believe it is the same one that the cosmic people are using uh i didn't like it as one single bit um as a developer and also i didn't like the styling but that's a different thing um What can I say? I mean, GTK has been there for a long time, and I also have been developing on it for a while. So I might be, I am very well biased. But at the same time, I am really happy to see something new coming out because like prior Because prior to these new next-gen, let's call them that, Rust-based toolkits, we only had good old Qt and GTK and maybe WX widgets.
Starting point is 01:06:34 No, Electron. Let's build all our apps in Electron. Electron-based desktop environment. You give me shivers. There are web-based ones, so it's totally possible. Yeah, like the thing that Synology has in their NAS. No, yeah, don't. Well, there are fair uses for it. Like, if you want to use it on a browser, it kind of makes sense.
Starting point is 01:06:58 But, like, you're going to use a desktop. You're going to use a desktop. You don't want to have a browser. They're just, like, sucking resources infinitely into crashes. Discard kernel OS. Anyway, I like the idea behind the ICE. I'm happy to see it move forward. And I'm happy to see something that's not based on, like that's not written in C or C++.
Starting point is 01:07:22 Because that's also going to bring a lot more developers working on the actual toolkit. And I am fairly young, so I am not so well-versed in C development or C++ development. But what I can tell you is that for all the flack that um, for all the flag that Rust gets for being hard, it's way, way easier than C. I can tell you that for sure.
Starting point is 01:07:53 Um, and I think that that's gonna be an ad positive in general, because even if Cosmic is not gonna go anywhere, I'm pretty sure the ICE project will go somewhere or if not it directly, some for-quivet and we'll have new tools to build stuff around. And I think that that's great because at the end of the day, the more choice you have, well, I'm second guessing myself,
Starting point is 01:08:19 but having choice to a certain extent, having choice is good. And right now, if you want to build a native GUI, you have only basically two choices. Then that's not great. Oh, you know, if you want to build it with the native X11 stuff, there's also that.
Starting point is 01:08:40 You shouldn't. Is the next X11 dead? Is that a meme? Oh, there's X-W a meme or is it ever gonna die ex-weyland's not going anywhere I am afraid so actually this is completely like off topic but I kind of wonder what your take on this is
Starting point is 01:08:56 ex-weyland has sort of acted like a crutch for weyland it's for so long we've had exWayland here and things just haven't had to be dealt with because a lot of issues just simply don't exist if you run the application in xWayland. It doesn't solve everything, but a lot of the protocols we're only very recently seeing, like a good example being the, um, the icon protocol that's
Starting point is 01:09:25 just getting resolved a couple of days ago, uh, where, like, uh, child windows can set a different icon from the parent window. This just didn't have to be, uh, this just didn't have to be thought of because you just run the application in X-Waylon and it just does it. But I've heard some people say that if X-Wiland just didn't exist and we were forced to actually deal with these problems natively in Weiland, you know, years and years ago, maybe we would be a lot further along. I don't know what your thought on that is.
Starting point is 01:10:00 Okay, I'll tell you I'll consult my crystal ball and tell you what this alternate universe would look like. No, but seriously, this is an argument that exists not only for Wayland and X-Wayland, but for a lot of other things. It's the same argument for Proton, right? Exactly the same. Because you're building something with a compatibility layer that's basically like you're relying on this compatibility layer to the point that you don't really have to deal with the problem. So you can use the different thing, but also kind of not use it.
Starting point is 01:10:32 And like there are still things that are very much an issue. That's true. I don't think that, like personally, this is just a guess because I have no way of knowing, but I don't think that we'd be much further off with Wayland if we didn't have ex-Wayland. For a very long time, even the biggest projects that have been proponents to Wayland have relied on ex-Wayland.
Starting point is 01:11:00 Like GTK3 is a good example. I don't know if GTK3 has a good example um i don't think i don't know if gtk3 has a a native wayland backend it does it was when it's towards the end of gtk3 they added it it's obviously nowhere near as developed as the gtk4 version but it definitely does exist there would make sense and like in general like i think that you have too much have too much legacy stuff to not have this kind of compatibility layer. And that's, at the end of the day, X-Wayland has been developed by the same
Starting point is 01:11:32 people that have been developing Wayland. So it made sense to them, it makes sense to me. That's basically the thing. It's true that it slows things down because you have the excuse to not deal with the problem. But at the same time, I wouldn't deal with the opposite, to be honest.
Starting point is 01:11:52 No, that's fair. I just wanted to get you taken out. I like asking people that question. It's always a fun one to see what they have to say about it. I'm pretty much in a similar boat with it. Think of things like browsers right like browsers only very recently are starting to get well i think firefox only recently enabled their wailing backend by default maybe i'm thinking of chromium but they've had it for a
Starting point is 01:12:18 while yeah yeah they enabled it by default very recently but they have they've had it for a while yeah maybe things would have been dealt with quicker and maybe there would have been more of a push to get some of these problems resolved but i don't know it's really hard to say what would have happened i think what you would have seen is there would have been a lot slower of an adoption because you would lose out on so much of like what already exists anything prior to to GTA 3 just wouldn't work anymore. I don't know when QT added their Wayland backend. But probably anything 4 or below would just be...
Starting point is 01:12:54 I don't like the current implementation of the Wayland backend in QT. I can tell you that much. It's still... I wouldn't say it's very broken. But it's still kind of rough around the edges. We'd lose the entire ability to use wine because wine... There's like a giant list of patch sets to get it working, and it's getting there, but we still don't have native Weyland wine,
Starting point is 01:13:18 so there's that problem as well. I don't know. It's a tough question to really answer what would have happened, you know, because you don't have that crystal ball. But I don't know it's it's it's a tough it's a tough question to really answer what would have happened you know because you don't have that crystal ball but i don't know it is what it is we're here now so can't go back i think i think it's better this way we've had a excruciatingly slow adoption for wayland and i think like having it any slower would have stopped the development basically completely. So, yeah. So, I guess I do want to jump back to one other thing
Starting point is 01:13:52 regarding theming. Whilst CSS isn't a formal theming API, it's not, okay, here is the set of things you can change. It's, you can change anything. It's not really theming API. It's not, okay, here is like the set of things you can change. It's, you can change anything. It's not really theming. It's just, you know, it's basically breaking the application to make it look a certain way. I think the issue that we see and the reason why a lot of people are so, are sort of, I guess, so opposed to the changes that were made is we have treated it like theming for so long. It's the same thing with like, um, like Hadea Global Themes for example is another good example where they've just sort of been, we just sort of accepted
Starting point is 01:14:37 that you install this thing and it just does everything. No one has really properly, like, the developers obviously knew, like, it, from the start, what GTK had was not theming, but to the users, it looked like theming, and it acted enough like theming, where, I guess, now that there's this, like, shift away from that and obviously gtk4 by itself still has that there but gnome itself they're moving away from that and i guess have moved away from that there is i guess it it just doesn't make any sense to someone who again doesn't have that like internal knowledge of what's going on in the project, even though the developers were clear, like, they thought they were clear amongst themselves,
Starting point is 01:15:29 it's just that message never properly got out to, like, the rest of the user base, I guess. I think that, to a certain extent, it's just difficult to explain a problem to someone that doesn't have it. Like, if I'm telling you, just like as a completely random example, like something that many people don't understand,
Starting point is 01:15:53 for example, like socially, oh, I have trouble, I don't know, relating with people, speaking with people, right? People that might have some kind of social anxiety or something like that. That's difficult to relate with. That's difficult to understand because most people don't have that. And it's as inappropriate as an example that might be. I think that it speaks to the point, like you don't have this issue. You don't understand it. It's reasonable to assume that,
Starting point is 01:16:22 right? And let me just make you an example here. So I make my application and I design a particular piece of this application to look like a boombox, okay? With CSS, I write my own classes or I even combine widgets that are not meant to do what I'm letting them do to make it look like a boombox, okay? Random guy comes around, makes a theme what I'm letting them do to make it look like a boombox. OK.
Starting point is 01:16:45 Random guy comes around, makes a theme, and doesn't even know the existence of my application. All of a sudden, the boombox-looking thing doesn't work anymore. Well, I don't know how themes even work with something like a shortwave that has a mini-player-looking thing that's really cool, but very much not the G, I don't know what, like the developer here,
Starting point is 01:17:08 like did something pretty, pretty cool, but very custom. How do you theme around that? Do you make exceptions that you make special rules for every application out there? It just becomes like, you cannot as a themer deal with it. Like as a user, you cannot expect the theme developer to deal with that. And just as well, you cannot expect the application developer to like expect random themes to do whatever with their application. And I think that there is a middle ground there somewhere that you can reach.
Starting point is 01:17:47 And that's like a theming API. There is something sort of kind of looking like a theming API in GDK4 and Libadwaita. And you might have seen it with something like the new GNOME text editor or some I think the black box terminal is a good example, where you basically change the syntax highlighting color and it basically changes the entire user interface colors along with it. I think that that looks amazing. That can lead to some usability issues, but that's not really too big of an issue. And as far as I know, there has been work, And as far as I know, there has been work.
Starting point is 01:18:35 There is probably still work going on to, like, finish up this API and, like, offer it publicly as a recoloring API that, like, users can access, right? I think that that's, like, a reasonable middle ground. And, like, depending on what you actually want to do with your theme, it might or might not be enough. And if it's not enough, then I'd say if you really want to see this, like, contribute to the discussion again, work with upstream. Try to make the recoloring or the theming API a thing to the extent that it makes sense and to the extent that application developers can rely on the toolkit to not break their applications randomly with random stuff. Right? I do think recoloring is probably a better way to take it because the issue we see with the CSS stuff especially is coloring is one thing. It's when you start messing with like spacing,
Starting point is 01:19:27 like padding, margins, that's when applications really start to break. And the problem with the CSS is there isn't a guard there to stop you doing that. Like you can make a theme where it is just messing with the colors and it's mostly fine. I don't want to with the colors and it's mostly fine i want to say perfectly fine it's mostly fine because there obviously are issues you run into with like um contrast for
Starting point is 01:19:52 example where yeah it might these this color elements being colored in a certain way might fit on the applications you test but as mentioned, there are applications that might be using those components in weird and maybe unintended ways, but when they're using Adwaita, it doesn't matter because they look the way Adwaita looks. And it's a hack and it shouldn't do that,
Starting point is 01:20:20 but it looks like the developer intends. But the second you start messing with colors, it just all falls apart. do that, but it looks like it, like the developer intends, but the second you start messing with colors, it just all falls apart. Yeah. And like, you don't even have, like I made a completely outrageous example, but you don't even have to look at like, uh, imaginary stuff, um, to, to find good examples. Like I'm thinking about complex applications, right?
Starting point is 01:20:43 Something like KDE in live, uhdoor, or Zed Rhythm. Zed Rhythm in particular being written with GTK. Also Darktable is a good example. Both Darktable and Zed Rhythm, for example, are written in GTK and they effectively have their own theme. And they will not work without their own theme. So what is the like angry themer going to do about that? I don't know.
Starting point is 01:21:17 The application just needs that CSS that overrides the entirety of the, even the GTK and LibidOeta style sheet with something custom to function properly for whatever reason. It's the developer's choice and like for again particularly for these kind of complex applications i think they really make sense because you're trying to cram so many things onto like a screen that might be as small as seven inches if not even smaller if you like think about mobile at some point you just need to like put in some ground rules like putting some like um pillars that are your your truth and that's some they are movable and that you can rely on
Starting point is 01:21:55 no i think that i think that's definitely definitely. Like, Darktale, I think, is a really good example. I didn't realize that was a GTK application. It is. Like, well, Kdenlive, yeah. Kdenlive is also another really good example. Like, you can, as soon as you swap away from any of the themes, like, any of, like, the basic themes, like, Breeze Light, Breeze Dark, things just, like, it just doesn't work.
Starting point is 01:22:27 And GIMP, obviously. G obviously gimp they ship their own themes and they have like when they move to gtk3 they are building their own like theming system specifically for gimp um i think something we can look to that's already done a recolor api maybe it's more than gnome would want but cosmic um cosmic they are gonna have theming but it's not gonna be full css it's more you can change specific accent colors and you can't even change every color it's going to infer certain colors based on what you choose specifically with the goal of i don't know the maths but like there's some algorithm nonsense you can do to specify that the color that is generated has a certain level of contrast. I'm sure somebody knows how that all works, but... That's exactly the same in the partially implemented, already practically used GDK LibidWay
Starting point is 01:23:22 Typing Colleging API, where you define we're calling API. We define the primary background color. And the darker one is going to be calculated from that. It's just like a rule that says, okay, you take this color and you darken it, following a certain algorithm. Or you make it lighter to do something else. So that's exactly, I think, what GTK is also trying to do. And I think that that's a sensible choice because you're giving customization options and you're also offering developers a good API to rely on. And plus, let's remember that these customization options don't only apply to end users or distributions
Starting point is 01:23:59 that necessarily want their own branding on stuff, but it also applies to what the developers can actually do. Many GTK4 debug-weight applications can take advantage of this recoloring stuff already. And I think they look pretty. They definitely look
Starting point is 01:24:17 the part. I thought there was something more you were going to say to that. Sorry, go again? I thought there was something more you were going to say to that I thought there was something more you were going to say after that I didn't know you were just going to stop there I do think that Libidwaiter apps it's weird right I think
Starting point is 01:24:37 Libidwaiter apps, they look good it's not the style I particularly would go for on my system but on like a, I guess it's hard to say objectively good looking theme, but like, it's clearly a well-crafted theme, and if you look at, I think this is a good way to put it, if you look at a Libidwaiter application, you can very clearly tell where it's from, right? Like, there is no guessing, oh, is this maybe from this desktop or that desktop? It's very clearly, this was designed with Libidwaiter, this was designed specifically with the GNOME desktop
Starting point is 01:25:17 in mind. And I guess that's a similar appeal that, like, Mac OS has, for example, where, you know, it's, i know some people don't like the comparison between gnome and mac os but i think in this in this sense it does work where mac os has sort of very clear design principles they go for obviously certain things like games fall completely out of that but when you see an application that is designed with the good uh with um with mac os's principles in mind you can very clearly tell where it's from and maybe i guess maybe it acts as like a form of i don't know it feels it feels cohesive right like you look at you look at and that's the big lie okay the cohesiveness of the desktop desktops don't have to be necessarily cohesive i mean yeah it might it might be
Starting point is 01:26:12 satisfying to have like 10 apps open and they all look the same but then you start to think about it they all look the same do you know how hard it is when you have applications that are all functionally like the shape is all identical to tell them apart like when you have many apps open and you have like the window overview yeah they're difficult to tell apart and i think that like having more and more heterogeneous um desktop experience does have a value. Like it or not, it makes sense. And besides, again, it's really, no, I don't think it's really a task
Starting point is 01:26:56 to necessarily be user's choice. I mean, the user can do, again, whatever they want with the system to the extent that the particular application supports it. Or even if it has hacks that you can apply on top of it to make it do the thing that you want it to do, right? You can still, as the user, you can still do it. You're on your own, for sure.
Starting point is 01:27:13 But the application developer has put thought into it. And there is no good way to have, like, have the users or whoever else wants to redistribute your thing completely, like, have a totally uniform-looking desktop. That's just not going to happen. Again, Steam is a good example. I don't think, like, even in macOS, in Windows. I use a MacBook for work. Horrible experience. Wouldn't recommend it.
Starting point is 01:27:51 I do use a virtual machine inside of it, but I do need to use macOS from time to time, and that's just when I start swearing in my life, it gets more miserable. Anyway, macOS is not a great experience and applications are not consistent. Sure, if you use Finder, if you want to put yourself through that, yeah, it's consistent with, I don't know, Preview. What else?
Starting point is 01:28:20 What other Apple application do you might want to use on a daily basis safari do people use safari yeah you have three apps that look consistent third biggest web browser that's to be fair chrome is the biggest bife no no i think it's three web browsers i want to say it's bigger than firefox someone's gonna correct me on the numbers but i think it might be bigger than firefox maybe but you know chrome is so much further above that it doesn't actually matter if firefox or safari is bigger i don't think it makes a difference to be the third biggest when your competition like the the number or the the second biggest if the competition is three, right? Sure, you're there somewhere. It's like BSD users, God bless their soul,
Starting point is 01:29:10 but they are there. Sure, there are not a big number of operating systems out there. So they show up maybe in graphs. Anyway, in BackOS... Yeah. Okay, directly or angry, BSD powered emails at Brody Robertson. Anyway, BackOS, Windows,
Starting point is 01:29:40 they're not consistent experiences. They are all over the place. Particularly if you use something like a corporate thing, a corporate-issued laptop. You have the VPN app that looks like it was designed by blind monkeys.
Starting point is 01:29:56 I don't know. No, blind monkeys probably have a better aesthetical taste. You have Teams. You have Zoom. You have whatever else like yeah like vs code do we want to talk about vs code uh all these things they are not consistent with anything like the best thing you can do is like probably in vs code you can have like a a color scheme that kind of looks like something apple would design, but that goes only a certain
Starting point is 01:30:27 way. It's just the reality of things. Developers do their thing, and if you like the application, you're going to use it. I don't think that anyone complains or, well, people do complain. But, like, if you don't like the way Steam looks, I don't particularly enjoy the Steam UI. I don't really care too much for it. Because at the end of the day, it's a good service. I enjoy using it. I would make some changes, maybe. But at the end of the day, it doesn't really matter.
Starting point is 01:31:01 It makes me play my games. I'm happy with it. That's all I need to care about. Hmm. I guess what you're getting at is that this idea of having... Even if we do have... Let's just assume that Lividway never existed and Gnome was still built pure GTK4.
Starting point is 01:31:28 way it never existed and gnome was still built pure gtk4 even then this idea of having a perfectly consistently themed desktop you would argue is just it's possible in a very minimal sense but as soon as you start adding in weird applications that are built in Electron or their Steam or your browser and things like this, things start to, I guess completely lose any possibility of being like, being consistently themed Yeah, I mean
Starting point is 01:31:59 I'm sure anyone listening has probably experienced it, like I remember at some point was it, what, 10 years ago or something? There were these, I don't know what we were doing, but there were some people trying to have, oh, a purely GTK-based desktop or a purely Qt-based desktop. And they were going out of their way to only use,
Starting point is 01:32:25 these are the toolkit apps. And I think it was before Electron. Yeah. That was an interesting time. It's an exercise in style at that point. I agree that it might be interesting to like as a challenge, oh, can I use,
Starting point is 01:32:43 like insert YouTuber face with a mouth open can i leave 10 days with only using gtk apps something like that right yeah it's it's it's an interesting conversation starter but i don't think that's more than that it doesn't bring in any value no i think that's i think that's a that's a fair point. I don't know, right? I've never really been... Whilst I care about people having that ability there if they care about it, like, my
Starting point is 01:33:15 system has always been, like, a very minimal hack together theme. Like, my theme is dark with a blue accent so if I can do that that's I don't really care about like the specific color of dark
Starting point is 01:33:32 gray like as long as I can get dark with a blue accent or a red accent depending on how I feel that day that's as far as it goes for me and that's pretty easy to like match even between toolkits with completely different theming systems like if your goal is something that's minimal like you want a
Starting point is 01:33:51 dark theme like that's that's pretty mostly easy enough to achieve most applications will suit that today there are still some exceptions that you can't do that but you know that'll be the exceptions but especially you'll see places like uh unix porn you know, that'll be the exceptions. But, especially, you'll see places like Unix Pond, for example, where there'll be people that are like, they're like the PyWall users, where they have the colors
Starting point is 01:34:15 of all of their applications based off of, like, their wallpaper, and they've probably spent 30 hours just getting all of these different applications maybe they built their own custom steam theme as well to fit that as well maybe they even forked livered waiter to i don't know it's an interesting exercising style yeah and it teaches you some stuff uh in the process but it's it's like playing like rising itself i it's fun i understand it's like rising itself.
Starting point is 01:34:47 It's fun. I understand it's fun. I have done it for a while. Not like rising Windows. I haven't really got into that. But that's because I'm me. But it's something fun we can do with computers. Like what Windows or Mac OS user can say that, right? And I think that's precious in a way. I don't want that to necessarily... I'm not saying that I want to see that going away.
Starting point is 01:35:14 That's a fun thing. Because computers for most people are just like the scary gray box that you have to open from time to time because you have to edit a Word document. Right. And we Linux users, I think we know better than that. We know that computers can be fun, can be interesting,
Starting point is 01:35:32 can be like a tool that you actually enjoy using. Right. And I think that part of that definitely is also like rising it as like ugly as you want your rice to be. I think, I think I still think that that's cool. icing it. As ugly as you want your rice to be, I still think that that's cool. I think that also many developers start
Starting point is 01:35:52 from stuff like that, icing your desktop. That's fine. But then again, if you're thinking about practical stuff, if you're going out of your way to argue with developers and harass people just because you can't change the color of your thing i think i think it's like a little bit too much um i think if you're going to the point where you're it's one thing to have
Starting point is 01:36:18 a discussion with developers but if you're like name calling if you're like like if you're going to the repo rehashing the same topics over and over again after you've already gotten an answer like at that point like I do you guys yeah what are you doing like I guess you can do it but maybe do something more productive with your time and I don't know maybe they should ban you from the repo if you become enough of a problem, but. Maybe start, maybe instead of complaining, like, uh, collect a number of people and start contributing to a theming API for the particular thing that you, you care about.
Starting point is 01:36:53 Even if you like, if it's like a patch set on top of the thing, that's never going to be upstreamed. It's still like something for one, you can tell you've made it like if you're building a CV, that's kind of a pressing thing an impressive thing um or like you i don't know might be even a source of revenue who knows maybe you can get donations for it people care enough about this stuff today i think that they will pay for it uh but like again complaining like empty complaints i don't think that they necessarily go anywhere um complaints, I don't think that they necessarily go anywhere.
Starting point is 01:37:28 For some things, like, of course, there's the limit, right? Where, like, a limit where the thing you're asking is reasonable or, like, even if it's unreasonable, if you ask it like a normal person, it's fine. Like, no one's going to go at anyone for, like, asking a question or bringing any issue that will not get fixed. But, like like it's this behavior like rehashing and keep keeping on rehashing uh like uh uh old stuff that i think i think it it's detrimental to the the entire experience well on the topic of rehashing old stuff uh let's talk about client-side and server-side decorations all right i'm on to it
Starting point is 01:38:07 about client-side and server-side decorations all right i want it um for me it's really like i think that like for my end it's really simple like a simple idea um my applications have client-side rendering uh sorry client-side uh decoration i think it's prettier than server-side that's my idea i think that uh that's the desktops or like compositors should implement than server-side. That's my idea. I think that desktops or compositors should implement a server-side protocol because there are some applications that don't have to implement a decoration
Starting point is 01:38:36 like games, for example. You were talking about Factorio a while ago? Yes, I've got the dev coming on later this week as well. Nice. I'll be looking forward to that episode. It'll be out in a month and a half. Yes, I've got the dev coming on later this week as well. All right, nice. I'll be looking forward to that episode. It'll be out. Some month and a half from now
Starting point is 01:38:50 because I've got a giant backlog. Anyways, yeah, I mean, it doesn't make sense for games to implement decoration. That's like the easiest example you can make. You can easily extend that example however far you want if an application doesn't want to draw a border they're in the rights to not draw a border if your desktop wants a border around it then it just like draws it server side as easy as that again personally i think client side looks better but
Starting point is 01:39:26 this is hardly about like opinions this is about functionality that applications are expecting to have okay i i thought there'd be more of like a a uh difference of opinion here no i think i pretty much agree with the exactly what you said there i think like when done well, Spotify is one example where it is not done well. When done well, client-side decorations do look better. The issue with Spotify is their client-side decorations are kind of broken, where if client-side is the only option, they will render correctly. But if you're on a desktop with server side it doesn't move like they've re-implemented they draw both yeah yeah so they they aren't using
Starting point is 01:40:12 electrons server side uh client-side decoration system they've got their own custom system so if you're on a desktop that like um like kde which is going to do server-side decorations, it will just not draw the client-side decorations. So you lose out on all of the functionality in the client-side decorations. But if client-side is the only option there, then they get rendered correctly. So on GNOME, I believe they will draw it properly and the application functions like it should. Now, that's a problem specifically withify designing your app in a stupid way and there's no reason to do it like that maybe there's i don't know i don't know where they're in terms no i don't think there is i
Starting point is 01:40:53 think that just the developer didn't know any better and just like needed to close the ticket basically but yeah i i think when like i i know you brought up mac os before but i think when you look at apps like slack on mac os they do client-side decorations and i i think it works there right like and i think like doesn't do client-side decoration on on linux as far as i know uh that sounds right yeah yeah i'm pretty sure that's correct. And like Steam. Steam is another example where Steam does client-side decorations. It works, right? Like it works really well.
Starting point is 01:41:36 But yeah, you are right. There are these cases where either devs don't want to add server-side decorations or you know, there's just like most games are going to be run in full screen, right? Like obviously you need to be able to support windowed because maybe
Starting point is 01:41:51 the game will run in the window, I don't know. But I don't like that we're in this state where and I know, Gnome can choose to do what they want to do, but I really don't like that we're in this state where everybody else is in agreement that server-side decorations as a
Starting point is 01:42:12 fallback is just a good thing to have and No matter how much time passes and no matter how long we've had the XDG decoration protocol long we've had the XDG decoration protocol it's still just not of interest for GNOME to implement even like no matter how many application developers come to them and I think they've had
Starting point is 01:42:34 open patch sets to implement it as well it's just not of interest to get that problem resolved that's just GNOME for you I can make a bunch more examples about that um in fact i currently am not using gnome i'm using plasma and to my um yeah i mean i don't like plasma i've never liked plasma it's not for me uh i i i understand I understand the idea behind it. I respect the different choices for the desktop.
Starting point is 01:43:10 It's just that I prefer GNOME. I cannot use GNOME right now for a variety of reasons. Most importantly, the biggest reason being that GNOME Mail-In still doesn't support DRM leasing. being that GNOME Mail-In still doesn't support DRM leasing. If you go to the infamous DRM leasing issue, you will see my name as the author of the issue. And it's been open for how many years now? Five years, something like that?
Starting point is 01:43:42 And yeah, at some point, for the longest time, I've played VR on Linux, on X, GNOME on XOR, just because this was what I was using. Then Plasma 6 came out with a bunch of new cool stuff. And I just said, yeah, I know I'm not going to like it. I know it's going to be a bad experience for me personally, because that's just not my preference but I think that I will have a better experience because also VRMX has
Starting point is 01:44:10 a lot of issues that it doesn't have on Wayland. So I just jumped ship and I'm here now. I don't know. Honestly, I'm not able to tell you what's going on inside the GNOME
Starting point is 01:44:26 for these issues being in the state that they are. What I can guess is that, first of all, it's a very old code base. It had a number of big changes over the years. Matter, in particular, is still very, very reliant on old code. And that's kind of problematic. To some extent, that can explain it, right? But to another extent, we have patch sets
Starting point is 01:44:58 that enable GNOME Wayland to support DRM leasing. I don't know if they're complete, but if not, like they're 90% there. But that's not the issue. The issue is that people are still debating. I'm not sure about what the current state is now. At some point, I think a developer came in and said,
Starting point is 01:45:16 we never said that DRM leasing is not an unacceptable solution. If we want to stay on that for the meantime, before we find a better solution, we can do that. And possibly the conversation toned down a little bit from there. But there are still conversations going on. If, oh, we want to do a portal, we don't want to do a portal, a portal doesn't make sense, we want to make it part of Login.D, there's like a...
Starting point is 01:45:42 We want to make it part of LoginD. There's like a... There is a recent... Where do I... Do I have the link somewhere? Give me a second. There is a recent merge request that has been opened. I think I put it here. Did I put it here?
Starting point is 01:46:04 I forgot to write the link down., did I put it here? I forgot to write the link down, why did I do that? Now I'm never going to be able to find it. Um... Oh, no, wait. Yes, okay. So, there is... This... Recent merge request.
Starting point is 01:46:23 So... this recent merge request. So, how do we, how do we explain the state of DRM leasing? So, it started as Gnome acted, and we're like, hey, we're good with this. Then, they wanted to do the portal, and then're like, hey, we're good with this. Then they wanted to do the portal. And then I think Sebastian wanted to go and do a debus service. And he went and worked on that. Jonas worked on the DRM leasing implementation from like three or so years ago.
Starting point is 01:47:01 And this new merge request is based on the work from both Jonas and Sebastian. And it seems like so far it needs work, right? Patch sets always need work when they're doing, like when they first started, but so far it
Starting point is 01:47:20 seems like there's no one trying to block it. The developer is going to go and make some changes based on what's been said and come back and go from there. But at least right now, it seems like we might actually get DRM leasing resolved. As long as you don't clip this and put it on the channel as a clip,
Starting point is 01:47:42 people are not going to see this because we're very far into the show and no one's going to care about it. It's going to get merged. So just be stealthy about it. Look, I hope it gets merged, right? Because, like, I've seen this discussion go on for so long.
Starting point is 01:48:01 I've seen game developers get just... And people from Valve... Valve's documentation for VR specifically says as a fix for... One of the fixes for GNOME is just install KDE. That shouldn't be the requirement for what's supposed to be like the pinnacle desktop of Linux the default desktop in many ways like when people come to Linux they see Ubuntu they see Fedora GNOME is basically the default for better or worse and that default you just can't do VR and applications sometimes just don't have window borders because you can't do it on GNOME and it's annoying, it's sad and I'm glad that they've moved past the idea of blocking this entirely and they're at least willing to accept patches now.
Starting point is 01:49:06 Because it's one thing if they don't want to do it, right? Like, that's fine. But when it was blocking patches and they just didn't want to accept that work, like, that's... That's... Also, it's also reasonable, right? Like, someone needs to maintain those patches in the future. But it is kind of annoying. Well, honestly, like, like just looking at it it doesn't look like a big patch set
Starting point is 01:49:29 yeah there's worse code in matter i think this surely but hey hopefully hopefully at some point we can stop saying that GNOME just doesn't support VR. That would be nice. Hopefully. We have a great application written in GTK4 and LibreDuator with the latest pizzazz ready for it. So when they're ready, I'm ready. But a little thing that I wanted to mention, like we give so much crap to GNOME for not having this and not having that. The moment I switched to Plasma, I realized that the grass does always look greener on the other,
Starting point is 01:50:23 like on the other side, right? But it's not actually greener. There are things that are broken in Plasma. And I don't see anyone talking about it. And I don't want to hate on the Plasma developers. They're doing a great job. So don't take this the wrong way. But I think that the problem is that like as you said gnome is default effectively the default there's so many people using gnome that they are all complaining about
Starting point is 01:50:52 the issues that it has apparently i don't want to say that no one is using plasma but so very few people using plasma that basically its issues are very much less relevant in the in the discussion right when i did my early plasma videos people got confused by some of the problems i brought up like the um oh no on edit mode if you so if you end if you right click on the panel go enter edit mode so right click on the desktop click enter edit mode you don't have have the settings for the panel, right? But if you right click on the panel and then click exit edit mode, it brings up the settings for the panel.
Starting point is 01:51:35 Someone used a not state somewhere. But I also brought up just the fact that the whole edit mode, the way it works, is kind of confusing. People are like, it works fine. Because I was confused about how to open up the settings for the panel anyway. Apparently, there's like a little button in the corner. I didn't realize the button was there. And in 6.1, like, the KDE devs agree with me. Like, they're completely redesigning the way edit mode works. And it's way better now. It still like you know early days there's still a lot of
Starting point is 01:52:05 work that could be done to make it a lot better but like i i feel like whether at now is just it's much much cleaner and it looks like it looks like they've they've clearly i guess taken some listen to feedback yeah yeah listen to feedback here yeah yeah for sure I think that that's something we really need to give the KDE devs good credit for because they do list
Starting point is 01:52:31 they are very very responsive to feedback and they go out of their way to make their desktop the best it can be and like they
Starting point is 01:52:39 like this isn't the first time they've redesigned edit mode like this is like their second or third iteration but I think I think where they're at with 6.1 actually right like a problem that and this is just a natural problem that you're going to have with open source right there is a lot of developers and there is not a lot of designers so what you often see is
Starting point is 01:53:00 design being done by developers and there are some developers who have an eye for design. There's also most developers, though. And most developers, they can design something that works, but it has that developer touch to it, right? Like, you know that the person designing this doesn't have a design background, right? Like, you know that the person designing this doesn't have, like, a design background, and it's
Starting point is 01:53:25 kind of just, like, it's estimating good design, but it's not getting very close. To be fair, designers don't always hit the spot necessarily. Sure, sure. I think it's always
Starting point is 01:53:41 good to have different, even with design work, right? Like, it's good to have that back and forth discussion. It's good to have like different drafts of that work and have people from like who have a developer background come in and give their feedback on it. And you know, the first draft is always going to be bad. There are designers that are actually willing to listen to the developers. Hopefully. That's new. But that's new to me. No, I'm just kidding.
Starting point is 01:54:09 I know some very, very nice and very collaborative designers. Yeah. So is the main reason why you're on KDE at this point because of the whole deer and leasing stuff? Yeah, that and like, not like i don't want to deal with some issues that the gnome has uh like i have an entire application that i made that's hydra
Starting point is 01:54:33 paper for setting a different wallpaper to each writer i don't want to maintain that anymore for a variety of reasons um many of my projects right now are kind of on a hiatus. Um, and that's for one that's because I'm not using them. And for the other reason is that I, okay. Most of my development, like open source development career, if you want to say that has been on Python and I recently, as of some years, this point fell out of love with Python for a variety of reasons. And I don't want to touch those code bases anymore. So at some point, some of these applications I will bring back,
Starting point is 01:55:14 but I will bring them back powered by crabs instead of snakes next time. So as soon as I have the time and energy to do that I think this is very much something that I want to do it's just when you have so many other things going on in your life it's sometimes it's like I would like to have
Starting point is 01:55:37 48 hour days just to be able to do this kind of stuff right but that's just the reality we live in. Anyway, there are some things with GNOME that I just cannot stand, right? The wallpaper thing is one thing. Missing functionality is another thing.
Starting point is 01:55:55 Like having the server-side decoration thing is one good example. Another example is, I don't know how GNOME supports HDR right now. Does it support it? I know KDE's got this. Plasma does support it because I use it. Yeah.
Starting point is 01:56:29 Merge request. Anyway, the last time i checked it i don't think it does yet there is an open merge request from two years ago is that is this stalled it's there's conversations as of about three months ago. So. The usual. Yeah. Yeah. It's going the way we were expecting it to go. Also, another big thing is adaptive sync. And so is it adaptive sync? It's like a pre-sync basically.
Starting point is 01:56:56 Okay. Variable refresh rate. Yeah. Yeah. Yeah. VRR. All right. That's right.
Starting point is 01:57:01 VRR is definitely something that I want. And at least like, you know, supports it now, I think, to some extent. I have heard it's kind of buggy sometimes. I've not tested it because I moved to Plasma before I could actually test it. I mean, it's great to see that, like, some of my, the features that I want are being implemented. But, like, at some point, it at some point, I just gave up. I just said, I want a functional desktop. I am willing to sacrifice some usability
Starting point is 01:57:33 for having these features here. It looks like as of a few months ago, it got merged. So, yeah, I don't know if it's buggy or not. The HDR thing? No, no, no, HDR. No, definitely not HDR. Oh, the VRR. VRR, yes, yes, yes. months ago got merged so yeah i don't know hdr thing i know no no hdr no definitely vrr vrr yes yes yes yeah yeah i know vrr is actually you can enable it as a i think it's an experimental setting somewhere you can enable uh yeah but looks like you need to like yeah you never run a big g settings thing to enable it yeah it's a great feature yeah yeah but but I don't know
Starting point is 01:58:06 like at the end of the day it's a shame yeah like it is a shame right but I think
Starting point is 01:58:14 I do think Gnome Gnome from a again I don't like the look of Livered Waiter but I think
Starting point is 01:58:23 what Gnome has going on assuming it had the features that were missing, I think it would just assumes that you are an advanced user. And there is a lot of, as we said before, there's the six different settings for window focus, right? Like, I don't know what they mean. I just select the one that I know it does the thing that it works the way I want it to. works the way I want it to, and I think GNOME is just a, it's an easier onboarding process, but it's just, there are these issues where it's just hard to, if you, if you care about gaming, for example, it's hard to recommend it right now in its current state, and there's a couple, like, a couple other use cases, like, accessibility is is another big one where I believe Orca currently doesn't work on the Weyland version of GNOME. Which is kind of big.
Starting point is 01:59:32 And even they admit this is a big problem. There's a reason why they don't want to disable X11 just yet. Yeah, that's a very major issue. That's something. The Orca. Yeah, I remember hearing about the Orca thing, that's also tricky to implement, considering, like, the security boundaries that you have on Wayland. Yeah. Yeah.
Starting point is 01:59:56 But it's a tricky one, but it's one of those things where if you want an accessible desktop, like, you don't really have a choice about it you need to come up with something it's okay if you don't want your desk to be accessible right but like if your goal is to make it so some sort of solution needs to go in place definitely definitely i think that like probably the best bet is something like the accessibility APIs in the various proprietary, semi-proprietary operating systems like macOS or even Android, right? They have accessibility APIs that you as a user have to specifically enable.
Starting point is 02:00:37 That could be a way. Let's see where that goes. Yeah. I don't know. This is a tricky topic because it's important. But I guess it's something that we'll keep X around for a while still. Yeah. It's, you know,
Starting point is 02:00:52 I thought there'd be a lot more disagreements in this episode, right? Like I didn't think we'd end up agreeing on as much as we did, but I do think there was a lot, definitely a lot said here, especially in the first like hour when you just wouldn't stop talking and i couldn't get a word in um no no no it's good i i like it when i don't have to talk as much it means that it means that the guest is actually you know easy to communicate with right like i've had some people where it's i will ask a question and i get like a sentence or two that's those are rough episodes but when i can just when i can just prompt you and you go for like 20 minutes on
Starting point is 02:01:33 something like that that you know it's it's nice and i think i think you laid out a lot of the a lot of the reasons why like gtK is doing what it's doing, why Liberty Wader is a good idea from that perspective. And hopefully, even if people disagree with what your perspective is, they at least have a more, I guess, nuanced opinion on the way this all goes down.
Starting point is 02:02:03 Yeah, I mean, it's not am i hold the absolute truth or anything but like i i have a certain point of view and one that i have seen yeah yeah yeah and like i i don't have i haven't seen like this particular point of view expressed as much as I would have liked in media coverage in general. I just think putting my two cents out there would have made sense. Great.
Starting point is 02:02:35 We're just past the two-hour mark now. I guess direct people wherever you want to direct them to. Do you want to check out a website or whatever? So you can find me on the interwebs at
Starting point is 02:02:51 gapmus.org. That's my website where you will always find my latest links and shenanigans whatever I'm up to. I don't post there often. You will also find me on Mastodon or the Fediverse, as you prefer to call it.
Starting point is 02:03:08 Right now, I am at gabmus at fastodon.org. But in case that changes, you will find the updated link in my website. So that's always going to be up. Awesome. Yeah. All right. Nothing else you wanted to mention?
Starting point is 02:03:27 You can find my stuff on GitLab, gitlab.com slash gabos, I guess. Again, you can find all of that on my website. Yeah, all the links are like little icons right at the top of the website. So that's kind of handy. I don't have to remember mentioning these are that thing well okay as for me the main channel is brody robertson i do
Starting point is 02:03:53 linux videos there six ish days a week um i don't know what'll be out but check it out there'll be probably something wayland protocols related maybe, maybe. I don't know. This will be out in like a month. So check it out then. The gaming channel is Brodeon Games. I stream there twice a week, probably still playing Sekiro. I might be doing a co-op stream with Ren.
Starting point is 02:04:17 So check it out. I don't know what we'll be playing. Maybe it takes two. Just check it out. We still need to start on the game. And if you're listening to the audio version of this, you can find the video version on youtube at tech over t if you want to find the audio version there is a rss feed uh search tech of t on your favorite podcast
Starting point is 02:04:34 platform and you will find the episodes so give me the final word how do you want to end this uh thanks again for having me and go ahead and like uh harass developers for not having theme support i guess or not is that how you want to end it they're going to do it anyways so i might just as well tell them yeah that's please don't actually that was a joke yeah that was a i know that i know shimmer is hard for some people that was a joke don't do that um yeah oh so again angry comments angry uh bst users uh you know brody's email yeah um yeah i'd just yeah i'll probably oh leave it in the comments uh drives engagement definitely um see you guys later

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