 Welcome. This year's edition of the Lightning Talks, we have a small but perfectly formed audience. We have a small but perfectly formed lineup. Five lovely Lightning Talks, and we're starting with Stephen Paul Webber talking about view extibility in frame users from Learned Help Business. It appears to be on, yeah. Okay, so when I first started thinking about this topic, I used to think that this topic was about non-technical users, which is usually what we think, right? I'm good, we're all good, we do everything great, and then we have to fix the problems for the non-technical users. But actually everyone has this problem. So the problem is that when you use your computer, you get used to it, and then things change and you hate that. That's basically the problem. And it turns out that everyone hates this, right? If you remove a switch from a common terminal command, you will see it on the mailing list, right? If you completely change the name of that code. How many people still type apt get? Because their fingers can't remember not to type get. Right? We all do this. It's just that because we're building the software and we care about our own workflows more, we make these changes less often to ourselves. And so if somebody who learned how to use Unix a long time ago can get a box today and be mostly like, oh yeah, I can still list files, I can still go around everything. There's been changes, but nothing too major. On the graphical front, we don't do this, right? Because we're like, oh, I had a new idea for what is better. Right? This is a new, better user experience, new better design, new better whatever. And so we change things. But in our community, we do a little bit better because usually someone doesn't like it and they fork the old one, right? So when you get num3, then you get monty, right? And everybody's happy again a little bit. So we do a little bit better in our community, but over on the other side, where most of the non-technical users still are because that's where I started when I was thinking about this topic, they don't get that freedom, right? And so they're using their computer today and then it becomes slow. And so they go to Best Buy and they say to the guy in the store, why is my computer slow? And he says, because you didn't pay me $1,000 for a new one, obviously. So they got a new one and they take it home and nothing works the way that it did before. And so this leads to what is often called learned helplessness, where instead of wanting to understand how the system works because then they will be able to use it better, they decide the system doesn't work. And so there's no point in learning. And so you see there's a big trend that people not wanting to invest in understanding, how to build workflows for themselves with their systems because they know that in three years they will go get a new one and nothing will work. And so there's no point. They're gonna have to learn again anyway. And so I think that this is a big opportunity for our community to serve the needs not only of ourselves by keeping our terminal commands still mostly working the same, but also everyone else not by just making GUIs that are maybe pretty, but by making them be familiar and remain familiar over time. So usually when I talk about stability, especially in a devian context, people think of a backcourting. But backcourting has all kinds of problems because if you wanna backcourt all the new functionality, well, functionality, you don't necessarily like bug fixes, security things for a really, really long time to keep this familiarity. You can imagine this would get very hard after 10 years, 15 years, 20 years. But there are other technical options that you could use. For example, you could port forward only the things that are necessary to change user experience because it's not really porting in the way that we think of security, right? Usually we think of like take the new code, bring it back. But with user experience, the user doesn't care what the code is, right? This is maybe a little bit more of an upstream problem, but upstream doesn't care because they have a new idea for the new design. So somebody has to do this. I don't know who has to do it. Maybe it's us, maybe it's somebody else. But when you port forward user experience, it's not like I copy this code and put it here. It's like I see it and now I make it the same. I don't know. Something like this. How much time do I have? Am I done? Two minutes? Okay. Tell me why I'm wrong. Shout out things at me. Come on, go. Nobody? Does anybody think this is the worst idea we've ever heard? A practical example. So in Firefox, because this is one of the ones that's going to change most often, for example, if you install Firefox today, you get this button with the three lines on it and you don't have a menu bar. That's fine if you're used to things changing, but not fine if you don't want things to change. How hard is it to make that not in the case anymore? It's not even that hard. I think it's a config change because they still have the menu there in the code. They haven't even removed that yet. So if we wanted to ship a browser that still looked and felt more like, and it's all incremental, making it exactly the same as like a lofty goal, but more like, imagine that you ship configuration such that Firefox still uses the menu bar, actually the distro that I run on my wife's laptop because that's very helpful for her. And so that's a practical example, I think of this kind of thing where anytime I see in a change lock, visual refresh, right? This is a sign that bad times are ahead for all the people that I support because even a visual refresh just means we drew lots of nice new icons, but the buttons are all in the same place. Well, they're used to this icon and now they have to come and say where is everything. And so this is a problem we have, this is a problem everyone has and we solve it for ourselves because we build the software and I think that we should solve it for everyone. This is, just a moment, please. Is he here? No, no, it's not you. No, he's not here, he'll tell us about the status of Prometheus and Debian some other time. Next, Chris is telling us about native de-packaged user as all the packages. Justin, go. Hello, my name is Prison and I'd like to introduce a Debian native approach to user-resolvable packages. When as a user we want to use, for example, the CID version of OpenSCAD on a system we are not root on, there's a stable system we do, something like this, right? Well, not quite. We can't, by default, we can't use apt and de-packaged to install packages somewhere outside where the user is readable. Through the last week, I have assembled some, basically, workarounds that make this work. So, for example, to use OpenSCAD as a user, you can use a workaround script that mostly makes the directory and installs a source list file, then run apt update, apt install, and you end up with, even with an icon in the desktop, in the applications menu and things work fine. This is just built on Debian dependencies so there are no additional guarantees with some of the image-based or more container-ish solutions, so it's just, as a user, you install that, you rely on what's on the system, so if that goes away, as with anything else you're doing as a user, things might break, and if you want to do the minimal approach, that is, for example, if you're installing some game that has three or four dependency trees, at most of them, on your system, you can, with that, minimally install that, so you just have the game itself on maybe the three or four dependencies that are not installed yet, but that requires being in a compatible versioning scheme, so in Debian, and not, for example, playing this game between Debian and Ubuntu where there might be an epoch, there's no sandboxing involved because I see that as an orthogonal issue, and basically, I think it should be trivial. So, why is this more than setting paths so far? It's usually because applications either don't respect the path, like most do by now, or, for example, because they hard-code the path-like user share, but there's actually a specification of how an application could inspect its environment or read environment variables to discover where its assets are, and it turns out that GDK does that, QT does that, and all applications that use one of those libraries to discover the assets just magically work without any of their grants. The path I spend most time working around is maintain a script because, going back a bit, if we're doing something like that, and that invokes the package with a dedicated root directory, barely any maintain a script, knows that there is a variable called dPackageRoot, because that's not why the advertise yet because it's a relatively new feature of dPackage, but I think that, right now, it's being implemented in dPackage's tools itself, so it's just coming up and getting started, but I think that if we just follow a few basic guidelines of maybe not touching slash var slash something in post instance scripts, but maybe touching dPackageRoot slash var, then we can make something like this work out of the box without too much effort. So this is an approach that works very well for games. This is actually what I started for. It works well for typical kind of leaf applications. Unless the application needs one of the workarounds for, as I mentioned, xdzRoot, it works without any changeRoot, LDP reload, or other prickery, and it's usable right away now, but just not package for quite a few packages. So if you think that this is a good idea, a bad idea, or have any other comments, please contact me, and please try it out as soon as I publish it, in which case I will sign a link to that conflict, to announce that. Thank you. Next up is Marga talking about Google's internal minutes. Just a moment. All right, so I work for the internal Linux distribution that it's used at Google for desktops and laptops and a few servers. And if you, okay, I have, we have a nice demo, which is a penguin that we like very much. If you had asked us last year which team I work for, I would have told you that I work for Gubuntu team because we were based on Ubuntu, so we have this like super original name of being called Gubuntu. But if you asked me this year which team I work for, I now work for Gilynux team. So why is that? It's because we are no longer being based on Ubuntu. We are moving to be based on Devian. Particularly we're going to be based on Devian testing, which some people might think it's a bit crazy. Yeah, so I had a talk a few days ago someone that already thought we were moving to Devian and asked me like, are you interested in coming to the LTS talk? I was like, no, that's not what we are doing. So we are going to be based on Devian. How are we doing this? We are going to take each package that comes from Devian testing, rebuild it, test it, and whether it pass the test goes into the release and if it doesn't pass the test, we will file about internally, not externally. Not into the BTS. I was just at the auto-package test and they were like, no, no, no automatic backfiring. Well, we have automatic backfiring, but it's internal. Yeah, and the tests include our own tests plus the auto-package tests. Well, we are not yet doing the auto-package test, but they will include it very soon now. Right, and this is how we expect that we will be able to handle being based on testing by doing a lot of testing. So when is this happening? We are currently in Alta State. We have a few hundred users and we are launching Beta next week on August 16th, which happens to be Devian Thursday. It was not originally planned to be that date. We plan to release Beta much earlier, but things happen. It's such a nice date. And yeah, it's such a nice date that let's say it was intentional. And after that, so we will be moving to Beta and after that we'll see, depending on how our Beta goes. Like we do take the Devian philosophy of we release when it's ready. So eventually it will be released. Do I have another one? No. So one thing that I didn't put in the slides, but I told a couple of people and they all went crazy. We were running Ubuntu trustee up to now. And we have a tool that upgrades in place from trustee to stretch blockbuster to whatever is faster now. And it works. It's incredible. It's like there's smashing involved. Like if you have trustee, then there's smashing and then you have faster. Yeah, anyway, that's it. Thank you very much. Thank you. Talking about making his own plan to start. So yeah, this is somehow, it's more about open software like the Devian and what I did with open software, so open source. So yeah, I moved to a new place. And yeah, I realized that I had issues. I had issues with the heating system and the windows issue is not related to Microsoft the one which you open if you want fresh air in and it was just too cold and I would need to replace them, et cetera, et cetera. However, I'm more like a geek guy. So I'm not really good at replacing the windows, especially in the winter. However, I realized that I might be able to optimize a little bit like how the heating goes and when it turns on, when it switches off, et cetera. So for example, if I like about to go home, I can just check like what the temperature is and I can tune in. So that was the main idea here. Yes, this is what I said, multiple rooms. There was just one thermostat, not in the room which I was interested to be like properly heated. So this is what I did. Yeah, I can, I have a remote switch and with that I can switch on and off the heating. I have data collected. So I have graphs which I can look at and there are like, yeah, I can measure the temperature in different parts of the house and yeah, I have no cloud. I have no like black box products which do some matching which I have no idea about. The internet is optional. So if I'm like locally there, I can just switch on and off without going out to the internet. And this is how I did it. This is not that interesting. Yeah, there is also air pressure collected because one of the devices is also does air pressure. And I also downloaded some kind of like Android app which talks amputee and this can, I can just tap on these locations and I can just switch on like different devices and like I can just switch on the heating or I can switch it off. Yeah. So I have this kind of thermostat. I need it to upgrade it to a different one but the point is if I connect the relay to it I can just inhibit the heating or turn it on. Let it go according to the, like the setup on the thermostat. This is what I have. If I connect the two wires here then the heating is off. If I open the connection, the heating is off. That's the main idea. And I put there an ESP, okay, thanks. I put there a device like this. Yeah, sorry, just a bit of short on time. So this is an ESP microcontroller. I can, I put some like low interpreter it. It's a free software. So I like like little pieces of code like I don't know like 20 lines of code and I can switch on the relay on and off. It connects to my Wi-Fi, it speaks MQTT. So it's like a public subscribe kind of protocol. And yeah, I can switch it on and off. This is one module which measures the temperature for me and also can measure the air pressure. Yeah, just a few pictures which I have. Yeah, it works like this. I connect to some, the MQTT is a binary protocol. I connect to it with some special client. It's all open source. It's called, for example, there is a broker called Mosquito. And this is similar with like long-lived HTTP connections, but it's a binary protocol. Okay, okay. Do, do, do, do, do, do. Yeah, I have a few links at the end. That's all I have. Sorry, a bit short on time. I'm excited for the last minute. Has anybody seen Teen Show? Nope. Well, I will give a quick talk on what's new in the Debian kernel, maybe. In short, I have no idea. As you may have noticed, Ben Hutchings is at that conference this year. So there's no kernel talk. I offered to give it a instead, you know, do a bit of a PowerPoint career. I guess, you know, giving, you know, like five minutes with the slides. I can do like, you know, he's like, talks don't work that way. So I can just encourage you to follow Ben Hutchings UK on Twitter because he posts when there's a new kernel release and, you know, update and link update often. That's it. And there are no more lightning talk sessions, but there is a live demo session tomorrow in Rex at 11. Thank you very much. You've been a lovely audience.