WEBVTT

00:00.000 --> 00:29.640
I'm here to present already, just as a small outline, since I'm not the main

00:29.640 --> 00:36.560
developer, but just a contributor, I'm just going to detail why I chose already as a daily

00:36.560 --> 00:41.480
driver, and I'll present already, and I'll have with builds upon new gigs, and talk a

00:41.480 --> 00:52.400
bit about early speech. As probably many of you have also done, I switched from Windows

00:52.400 --> 00:58.720
to a new boot based distribution, some 10 years ago, I learned some valuable lessons that

00:58.720 --> 01:05.560
fastes great, minimism, and efficiency is great, removing proprietary OS is possible.

01:05.560 --> 01:13.400
And so when I started a few years ago to do some series, so to our development, I also learned

01:13.400 --> 01:21.600
some other valuable lessons about the unique philosophy, how it works, how basically programs

01:21.600 --> 01:28.240
interact with each other. Also, I learned that quite crafting your systems and optimizing

01:28.240 --> 01:36.880
them is quite a fun task. Also, I learned that it can be take use, so I had some struggles,

01:36.880 --> 01:43.360
I had to change computers like three times in two years, and I just learned that each time

01:43.440 --> 01:52.400
we change, you have to do things over and over again. So at some point, I, so the flows

01:52.400 --> 01:58.880
of these lessons, the unique philosophy is great, but it also forgets a lot about transaction

01:58.880 --> 02:06.520
costs, which you have between the different apps you use, and you have like, when you

02:06.600 --> 02:12.440
have to optimize everything, you do a lot of work, just making apps talking properly to each

02:12.440 --> 02:21.640
other. As I said, life and loss happens, and it is tedious, but it doesn't have to be,

02:21.640 --> 02:28.280
like I had some examples in the Emacs ecosystem that showed me that configuring your system

02:28.360 --> 02:36.680
doesn't have to be that hard. And so that's why I choose new weeks and then I already

02:36.680 --> 02:46.760
need to as a daily driver as a system, because new guy helps for translation costs. Basically,

02:46.760 --> 02:52.840
you have one language to extend everything, and then you become more and more familiar with the

02:52.920 --> 03:01.400
language and better and better. So life and loss happens, my answer was, I need reproducibility,

03:01.400 --> 03:10.440
that's why I chose skis, and for the complexities of managing your configuration, that's where I

03:10.440 --> 03:20.280
chose already as a framework, as a distribution. Just about RDE itself, maybe I just have to point

03:20.280 --> 03:26.920
some things about geeks before to be able to present properly already, so it's already itself,

03:26.920 --> 03:34.440
it's a developer and power user friendly geeks, sorry, the next distribution, using a building

03:34.440 --> 03:41.400
upon geeks and it's tools. So the guy, the guy, the demon, a geeks system, and geeks home.

03:42.360 --> 03:50.920
Maybe just to know how I have to present this, how much of you do know geeks has a package manager,

03:52.600 --> 04:02.120
geeks has system, geeks system, and geeks home. Okay, so just geeks system itself,

04:02.200 --> 04:11.080
it's basically what allows you to configure your system with reproducibility and declaratively

04:11.080 --> 04:19.240
in a configuration file. And so it's basically all configuration you would have done as a route

04:20.440 --> 04:27.880
non-functional Linux distribution, and geeks home is the same thing, but for the users, for the

04:27.880 --> 04:33.480
management of the dot files and basically all services you would use as the user.

04:36.360 --> 04:46.760
RDE itself can be compared to what space maps are to inax, but to do Linux, space

04:46.760 --> 04:55.480
maps use these layers and do me max use models to basically have a handy way to configure

04:55.480 --> 05:01.720
a system. RDE uses features for that, so features are blocks of configuration that provide

05:01.720 --> 05:09.880
certain functionality for your user, such as setting up your image, TPGT, etc. And the tooling we rely on

05:09.960 --> 05:16.600
are doing from geeks, just like space maps use this new package and do me max, sorry,

05:16.600 --> 05:27.480
uses straight dot EL. The distribution itself has a few principles that can be

05:29.320 --> 05:35.880
summarized as many many stands same. One of them is it has to be ergonomics, so we have

05:35.880 --> 05:41.800
safety, you can buy new things, use contrast, readable fonts, buy default, it has to be

05:41.800 --> 05:50.440
lightweight, so battery efficiency, we use first in native waiting apps, it has to work offline to

05:51.960 --> 05:58.200
enable most workflows to work without a network, it has to be attention friendly, so we have

05:58.200 --> 06:06.840
really more news of notifications and it has also to be to comply with standards, so we have

06:07.800 --> 06:15.320
a policy to aggressively comply with the XDG based their specification when it's possible for

06:15.320 --> 06:26.200
the applications we provide as features, that gives us a based on this principle a few

06:26.280 --> 06:33.480
tools, I will not go over each one of them, but basically as a package manager and service manager,

06:33.480 --> 06:40.920
it will build tools of geeks, so it new shape early in the new geeks, for the window manager, it's

06:40.920 --> 06:48.920
way the terminal, it's either a liquidity of food, both are well supported by RDE and most of the

06:48.920 --> 06:57.160
films you would do in daily life as a daily driver are from imacts, how does it looks, it's

06:57.160 --> 07:03.560
quite minimalistic, as you can see, it's not a film you would put on a unique sport and have

07:03.560 --> 07:12.200
like a lot of sugar and very pretty things, but it's actually quite useful, so it has good contrast

07:12.200 --> 07:23.640
and everything, so as a daily driver I can confirm that it works well, another very important principle

07:23.640 --> 07:30.360
is that we have to be reproducible and as the place as possible, so we are building a new geeks or

07:30.360 --> 07:39.560
any setup or configuration can be easily replicated because we use the rollback tools that

07:39.560 --> 07:46.360
do geeks provides, and so if you break any configuration you can roll back to the back in time

07:46.360 --> 07:51.560
if you want and that's a huge guarantee for further system crafting if you want to be more

07:51.560 --> 08:01.320
minimal, if you want to explore the limits of your system, for the reproducibility and the rollback

08:01.400 --> 08:11.480
is perfect, we have tools to make state, so directly explicit and single ball or temporary,

08:11.480 --> 08:15.320
we're still working on it, but there are already useful tools for that,

08:16.840 --> 08:25.560
basically the logic is to help yourself avoid losing your data, if you choose that has this goal

08:25.720 --> 08:34.440
that has this goal, or he itself tries to be very likable, we use new guys and these APIs,

08:35.000 --> 08:41.400
we do not have any information on extensibility, so it's easy to throw out, modify or extend

08:41.400 --> 08:50.120
an impart of a setup you want, it is opinionated but as base maxis and as doony maxis you can't

08:51.080 --> 08:58.280
like provide the reason for a very simple way for use to configure your system and not be

08:58.280 --> 09:05.560
opinionated, but it is composable and flexible enough to allow various language development,

09:05.560 --> 09:13.240
science, it's a me and developed, so basically most of what you can think about and feel

09:14.120 --> 09:22.040
as long as you stay in the first steps where LVE is able to have a compressed feature around that,

09:24.280 --> 09:28.840
now just to enter a bit in order to just explain a bit how it works,

09:30.600 --> 09:40.920
the user provides a list of features, or features that have options, so it's a very simple list

09:41.880 --> 09:46.360
maybe I can try to show you if they're quickly

10:01.640 --> 10:10.200
well I will when you when you question the right, and on the, so basically the user provides a list of

10:10.200 --> 10:16.920
features, and the goal of the configuration, the goal of RE is to be able to provide a proper

10:16.920 --> 10:23.560
profile for each system and for each own, and then to have a lifting of the reproducibility,

10:23.560 --> 10:32.840
the profiles and everything is done by each system and by each own, the RE, so the configuration itself

10:33.800 --> 10:43.000
does a few things, the features will calculate values, will provide values that are able to

10:43.000 --> 10:50.760
use by other features, and that's why we can do a very easy cross configuration between the

10:50.760 --> 10:58.520
features, because one feature can say to other features page, I'm here, you can conditionally

10:58.600 --> 11:09.400
depend on me for some blocks of configuration, and that's very convenient, based on that, you just

11:09.400 --> 11:18.520
see that a feature itself is actually quite easy to understand what we will put in it, so basically

11:18.520 --> 11:25.160
we have to take the features and their options, we do some type checking on the options,

11:26.120 --> 11:33.960
in the end we return values, values themselves are used in a geek system, a services system

11:33.960 --> 11:43.160
gather, and in a home system gather, and then based on that RE, they both provide both to

11:43.240 --> 11:53.000
profiles and everything works well, and based on this, once you understand this, it's actually

11:53.000 --> 12:00.840
quite easy to write your own features, this is an non-exceptive list of features, I do not have the

12:00.840 --> 12:10.600
time to go through them directly, but we have very neat email features, also when those management

12:10.600 --> 12:19.160
features programming features and everything about the next two, just as said, a cross configuration

12:19.160 --> 12:29.160
is very, is a value added to me, above weeks that already provide, so it basically enables when

12:29.160 --> 12:35.320
they're turned to answer to this question, very simply, what if I want a piece of conflict

12:35.320 --> 12:40.840
in software error, if and only if software be is present, to me, but maybe that's not true,

12:41.720 --> 12:47.560
it's very difficult to do this kind of thing in new bits, and it's very simple to do that in RDE,

12:49.000 --> 12:56.840
another value added is to have serializers to define services more easily,

12:56.840 --> 13:07.400
so we have some serializers to basically define your config in a new guide, then the serializers

13:07.400 --> 13:19.400
pass it to CSS or JSON or list depending on what the configuration of the app expect, and based on

13:19.400 --> 13:28.120
that we can define this or own system services in a more flexible way than what is done in

13:28.120 --> 13:36.200
weeks today, just a word about all these future, it's quite major and it has been usable for

13:36.200 --> 13:44.440
years, there are a lot of working progress not to go around all that, but it has a good dynamic

13:44.440 --> 13:52.040
along with the whole guide ecosystem actually, friendly community and like in Geeks every user

13:52.040 --> 14:01.640
benefit from contributions from other contributors, if you want to support the project there is

14:01.640 --> 14:09.560
an open collective page, as I said, it's a small but very welcoming community, we will be happy

14:09.560 --> 14:16.760
with Andrew to also help you get along with the system if you're interested, so don't hesitate to

14:16.760 --> 14:23.560
get in touch, and I'm done, I'm happy to take questions.

14:28.600 --> 14:35.720
Thank you, it's a geeks world, right? Yeah, and the project leader is amazing and we're

14:35.720 --> 14:41.800
dropping the project, yes, please have questions today if you can set up if you want, and then

14:41.800 --> 14:46.760
also it's going to be a messy because we're back to back, but please try to squeeze in, right? All right,

14:46.760 --> 15:00.520
go ahead, who wants how easy is it to set up a party in like in a family environment, like a

15:00.520 --> 15:11.400
VM or like a family or shell or something, just try it out? There is a make script in the main repo

15:11.400 --> 15:20.360
that she has a VM, a VM or VM something object, and based on that you can actually just

15:20.360 --> 15:28.520
pwn the VM and try it yourself, it does it with a minimal configuration but it is enough to just try it.

15:31.960 --> 15:33.480
Sorry?

15:46.520 --> 15:48.440
Any more questions? Any more questions? Yeah, you'll see it on your

15:50.680 --> 15:54.680
How often do changes in the geeks break, are you going to get your questions?

15:56.680 --> 16:03.960
Um, maybe. So the question was how often does changes in geeks break already?

16:05.240 --> 16:11.400
Not that often, I would say something like one, once every two months, something like that,

16:11.400 --> 16:20.200
but it's usually quickly fixed because I add a geeks often and all year often and once it's

16:20.280 --> 16:23.560
once it breaks, I fix this basically.

16:26.760 --> 16:33.320
Other questions? Yeah, well, maybe both about a screening, RDD to geeks or a factor of RDD,

16:35.320 --> 16:45.800
yeah, and so RDD was actually was actually originally the home of geeks home of the geeks home

16:46.760 --> 16:56.280
and as I presented, the difficulty was upstream in RDD to geeks is that it is updated and it

16:58.520 --> 17:03.960
it makes choices that I think would be hard to merge in geeks upstream.

17:05.960 --> 17:15.640
As I said, we have friendly relation, we probably contribute to geeks or Andrew like me.

17:16.760 --> 17:25.640
But I'm not sure it's doable. I think the part where we upstream the most most of what was

17:25.640 --> 17:31.320
doable was when geeks were merged in geeks. Thank you, Niklas.

