WEBVTT

00:00.000 --> 00:14.080
Hello, so yeah, I'm going to talk about fossil little bit, primarily the things that

00:14.080 --> 00:26.080
have been going on during the last year, and yeah, I have been daily driving, like in

00:26.080 --> 00:35.960
its first phones with Foch, since basically shortly after Foch's them in 2020, I'm a

00:35.960 --> 00:43.760
member of the Mobion team, Debbie and Maintainer, I developed a software and contribute

00:43.760 --> 00:53.920
to the Foch and Norm Ecosystem, and I maintain Norm Calls and Chatti.

00:53.920 --> 01:04.320
Okay, so I assume most people already know what Foch is about, but maybe by a show of hands

01:04.400 --> 01:14.080
who hasn't heard Foch yet, okay, I will definitely, it's very small minority, but of

01:14.080 --> 01:24.240
course I will explain shortly what it is. So it is a graphical shell, target small by devices,

01:24.240 --> 01:32.560
so that means specifically smartphones, but also like tablets, so it definitely needs to

01:32.560 --> 01:39.280
be touch friendly, since that is like what you'd expect when you're also coming from other

01:39.280 --> 01:44.880
devices, and I mean you have a touch screen, so that's the only real way you can interact with it.

01:46.160 --> 01:56.320
It is a pure whale and shell, and it's written in GTK. Also, it relies a lot on

01:56.320 --> 02:07.040
like existing genonteknologies, which we'll see in a bit. Apart from the actual shell, there's

02:07.040 --> 02:14.240
the compositor, which is called Foch, so basically the Foch stands for Foch shell, Foch is the

02:14.240 --> 02:26.960
phone compositor, and Foch is based on WL routes, on the WL routes library, and apart from like

02:27.680 --> 02:36.720
Foch being, it's not only just like this one project, but we kind of consider it to be a bit

02:36.800 --> 02:47.280
broader in scope, and originally it was written for Foch, but it quickly got adopted to

02:47.280 --> 02:57.600
other phones as well, and not only their distribution, but many more, and the idea behind what we

02:57.680 --> 03:07.920
consider, like the Foch project is to make Linux mobile ecosystem in general work better,

03:07.920 --> 03:17.920
so that means whenever we find some pieces that are missing, say in mode manager or in other parts

03:18.000 --> 03:30.320
across the stack, we'll try to improve them. So yeah, this is roughly what it looks like these days.

03:32.160 --> 03:41.600
One of the things you may already notice is that we got rid of not got rid of, but we don't

03:41.680 --> 03:50.720
only have the black backgrounds, but we actually support the desktop backgrounds that you've set

03:50.720 --> 04:00.320
up in the control center. In the middle you'll see like the how it looks like when you have some

04:00.320 --> 04:07.760
applications open, and on the very right how your lock screen may what it may look like.

04:08.720 --> 04:16.720
You notice on the lock screen that there we don't have the desktop thing enabled yet,

04:16.720 --> 04:25.360
there is some work still to be done on that end, but you can expect that to change like within

04:26.240 --> 04:32.240
I don't know, some time frame, not too unreasonable time frame.

04:33.440 --> 04:41.040
Okay, and so what does the stack look like? As I said earlier, we have like a lot of

04:41.760 --> 04:50.560
known components, so like gnomesession, gnomesetting steamer, then we have things like network manager

04:50.560 --> 04:58.640
for configuring your Wi-Fi, more the manager for your modem. There's IOS sensor proxies for your sensors,

04:58.640 --> 05:05.600
and yeah, like lots of other things you'd usually also find on your desktop or laptop.

05:06.960 --> 05:13.840
And of course, we are building on, usually on top of the Linux kernel.

05:13.840 --> 05:26.480
So, I've talked about fashion, very, very briefly, but there's also a lot of other components,

05:26.480 --> 05:33.200
and it can be a bit hard to like draw the line, and I don't think anyone really has

05:34.480 --> 05:42.400
froritively drawn a line somewhere, but like I would say the main components you expect on

05:42.480 --> 05:51.360
it for system are apart from the shell and the compositor, some keyboard that may be squeak

05:51.360 --> 05:58.320
bought, which was like the originally written keyboard, it might be for Fash OS case stop.

05:59.760 --> 06:03.680
Then you have feedback D, which is like the demon that deals with

06:04.640 --> 06:14.160
haptic feedback, LED blinking, but also plays like some sounds, and usually you also have like

06:14.800 --> 06:21.840
first mobile settings as one of the more core components, which allows you to set up

06:22.640 --> 06:29.520
lots of different bells and whistles that you can adjust for Fash, and which are

06:30.480 --> 06:37.120
either very, very specific to Fash itself, so that it wouldn't make sense to have them in

06:37.120 --> 06:46.160
a GNOME control center, or it might be things that, well, it was just like easier putting it in there,

06:46.160 --> 06:54.720
and which might end up getting sent up to GNOME control center.

06:55.680 --> 07:01.520
Some of the lesser known things, and this is just like to give you some idea of what

07:03.040 --> 07:08.000
some people, like how broad some people might come to understand the term Fash,

07:08.960 --> 07:14.880
we have of course the Fash tool, which is just like an application that is supposed to give you

07:15.440 --> 07:26.560
introduction in how it is supposed to be used, then Fock and Frock does, who here knows what Fock is,

07:27.920 --> 07:39.280
okay, so that's not so many people, this is based on on greed, like a login manager,

07:40.160 --> 07:50.800
and it was basically how it came about is, we had problems like with unlocking the

07:50.800 --> 08:01.200
key ring, like the login key ring, because at the very beginning you have Fash B started directly

08:01.200 --> 08:09.040
as a system D unit, for example, and it came, like the idea was okay, we want

08:09.360 --> 08:19.040
something else to act as a login manager, and it started off as kind of like ripping some

08:19.040 --> 08:26.640
code out of Fash, like from the lock screen, and then making it a stand-alone thing that would

08:26.640 --> 08:35.040
work on top of free the Frock with the R, is the newest contender in that line, and it's basically

08:35.680 --> 08:43.600
trying to do the same thing, but, and this is where the R comes in, it's like written in rust,

08:44.800 --> 08:55.440
I'll get to that, and it's like that, and it's like using, it's sharing more code with the actual

08:55.440 --> 09:02.400
Fash code base, and then there's some other things, like the lip Fash thing that this is the

09:02.480 --> 09:12.080
like a library that came out of wanting to share more code between the the the breeder,

09:13.920 --> 09:24.640
and the actual Fash shell code base, then there's some other things, like XG desktop portal,

09:24.960 --> 09:33.440
there's a specific portal, we have our own adaptive file chooseer, and then there's like

09:33.440 --> 09:42.800
other applications as well, not wanting to bore you too much, but Fash has been around for

09:42.800 --> 09:51.120
very long time now, like the very first tech release was in September of 2018, and since then we've

09:51.120 --> 10:04.080
had a total of 78 releases, and in the last year we got a total of 13 stable, or since January

10:04.720 --> 10:15.760
24, 2024, yeah we got 13 stable releases, and we have lots of translations available.

10:16.720 --> 10:25.840
One of the things that changed during the last year was that the release cadence changed from monthly

10:25.840 --> 10:37.840
to every six weeks roughly, that is both to give us a little bit more time, and like to finish

10:37.920 --> 10:48.880
up things, polish up things, but also we feel that like the basis solid enough that we don't need

10:48.880 --> 10:57.680
to like move so fast, okay, and yeah there's like lots of other things that have been going on,

10:58.240 --> 11:08.080
so here's a couple of different new quick settings that you can access from the top bar,

11:08.800 --> 11:18.160
on the very left, this has been asked for very often, like keeping your phone from going into

11:18.160 --> 11:32.560
suspend, this caffeine plug-in in the left, like the whole selecting, connecting to Wi-Fi,

11:33.120 --> 11:44.880
has been like overhauled, this works like with arbitrary many things, and has been like very nice

11:44.880 --> 11:53.280
quality of life improvement, and also there's like this hotspot total that you can set up.

11:53.840 --> 11:59.440
All of these things, whether you want to have them or not, you can configure it inside of

11:59.520 --> 12:11.120
flush mobile settings, so basically we have lots of new plugins, all of these plugins they also

12:12.400 --> 12:19.120
are built against this lip flush library that I've talked earlier about, and you can

12:20.880 --> 12:25.840
enable this able them, one of the things that I particularly like is like the dark mode,

12:25.840 --> 12:31.440
toggle, and nightlight, which is kind of nice, and you can also like if you notice on the very

12:31.440 --> 12:38.480
left there's these little anchor things, you can drag and drop those to like change the order

12:38.480 --> 12:46.640
in which they appear in the quick settings, then some of the like blocks, like I have talked about

12:46.640 --> 12:53.520
quick, like the quick settings, now we have also like plugins for for the lock screen,

12:54.240 --> 13:00.960
one of the things that's kind of old already, and you may already notice, but the one of the

13:00.960 --> 13:07.760
left is like called the ticket box plugin, which allows you to specify a folder, and if you put

13:07.760 --> 13:14.160
some PDFs in there, you can open them up without having to unlock your phone so that it's very

13:14.160 --> 13:21.440
convenient like when you're traveling, and on the right you got some upcoming events,

13:22.160 --> 13:33.760
another newer addition to the whole plugins on the on the lock screen is the so-called launcher

13:33.760 --> 13:42.400
box, which shows you, or which makes use of the launcher entry debas protocol where you can like

13:42.720 --> 13:53.680
gets information, like some progress in this particular case, how far your electric vehicle

13:53.680 --> 13:58.800
is charged along, and this application that you see right here that's called for easy.

14:02.000 --> 14:11.840
Okay, then there has been like polishing up all over the place, I'd say, one of the things that

14:13.360 --> 14:21.600
I've put up the example of this, the whole notifications are much nicer than they were last year,

14:22.400 --> 14:31.200
for one we have flowed this fancy, like fade in and fade out animations, or not fade,

14:31.200 --> 14:39.920
sliding in sliding out, but also like the way multiple, if you have multiple notifications,

14:40.000 --> 14:44.880
how they are like they're more clearly separated, and some of these things.

14:47.280 --> 14:56.160
One of the nicer things that has happened a couple of months, or like one and a half months,

14:56.160 --> 15:07.040
or so ago, is that we have now some cell broadcast support, the more than manager bits have

15:07.200 --> 15:12.240
been merged into the main branch, but there has not yet been made a release, so

15:14.160 --> 15:19.760
so flush will build without those bits for now, unless you happen to have a recent enough

15:19.760 --> 15:34.080
more than manager, flush itself will give you like a, oops, okay, will give you these dialogues to

15:34.080 --> 15:42.560
inform you of, like the particular, I don't know, presidential alert, or what have you that

15:42.560 --> 15:51.920
has been broadcast, there still needs to be somewhere, or there's still some work done to be

15:51.920 --> 15:59.520
done on, I don't know, chatty, and to get like the historical data,

15:59.680 --> 16:14.480
and thanks to an Lnet on this part for funding that particular work, okay, I'm going to, oh,

16:14.480 --> 16:20.800
sorry, I'm going to go there, but we can now, because some of the nice things were, we have now

16:20.800 --> 16:31.040
excellent color support, desktop forgetting it, this is the file chooseer that I've talked about,

16:31.040 --> 16:40.160
which is like a part of the XDG test, flush portal, desktop portal, flush, when you connect to

16:40.160 --> 16:49.520
Wi-Fi, flush will now detect the presence of captive portals, and will open your browser for you,

16:51.440 --> 16:59.280
on the squeak part size, there was, I think a lot more stuff, but we have a lot better, like,

16:59.280 --> 17:07.760
handling of different sizes that was always a bit of a pain, electron apps kind of work, a lot

17:07.840 --> 17:21.440
better now for the, sorry, need to go back, and this is a bit fiddly with doing it,

17:21.440 --> 17:31.200
doing the presentation from the phone, well, okay, as you can see, we have a lot better,

17:32.160 --> 17:37.840
nicer, like, number layout, and word completion is also something that has landed on the

17:37.840 --> 17:51.520
flush OSK stop side, fidd back D now supports, sorry, fidd back D now supports,

17:53.360 --> 18:00.080
like arbitrary RGB colors for your like LED blinking instead of only the

18:01.200 --> 18:09.440
named colors, we have support for hardware patterns on poor complex forms, so you have less loads,

18:09.440 --> 18:14.960
or, I don't, first of all, less load on the CPU, but it would also like continue blinking during

18:16.240 --> 18:24.960
during suspend, and skip that one, okay, in terms of mobile settings, there's also like

18:25.280 --> 18:35.360
the favorites, which you can now direct and drop, I think we can safely skip this,

18:36.640 --> 18:44.080
there has been a lot of work on like not, top notch notch support, it's, I think it's a bit

18:44.080 --> 18:50.880
hard to see, but you can see these little perpally things in the top, which are basically,

18:51.840 --> 18:59.200
yeah, representation of where the notches are, and so flush will avoid putting you eye elements

18:59.200 --> 19:06.240
there, so for example, you can see that the clock moves to the right hand side,

19:09.440 --> 19:15.120
okay, and if you want to get involved, there's multiple ways you can go about that,

19:15.200 --> 19:25.040
code contributions, of course, always welcome issues are mostly welcome, and you can of course,

19:26.400 --> 19:37.840
like test the latest codes, there, we can skip all this as well, the one of the,

19:38.800 --> 19:50.720
maybe this is something to show, under the, I enjoy, okay, so what I wanted to show, but it kind

19:50.720 --> 19:59.280
of, you're kind of messed it up, is you can run flush nested within your,

19:59.280 --> 20:10.480
or whatever session within your running system, and it will basically check that page over there,

20:10.480 --> 20:16.560
and this is one of the things that makes it very, very nice to like work on, on flush itself,

20:16.560 --> 20:25.600
because you don't need to leave, you like your system, this definitely needs to be set,

20:25.600 --> 20:31.360
if you want to test the latest and greatest, there is another blog post which I highly recommend,

20:32.080 --> 20:39.520
we basically have these nightly repositories, which you can set up for your,

20:40.880 --> 20:46.480
if you're running a deviant-based setup, you can put them in your sources, what it is is basically,

20:48.400 --> 20:53.760
you take the latest main branch for like flush-fuck and all of these other components,

20:53.760 --> 21:01.200
and merge requests which are as good as done, before they get merged, they get put into like

21:01.200 --> 21:11.840
this next branch, and from there, these nightly packages are getting built, there's lots of work to

21:11.840 --> 21:20.560
be done in the future, and yeah, I, I don't know if we have time for questions, I don't know where,

21:24.720 --> 21:53.280
okay, yeah, one person, okay, I'm gonna, okay,

21:53.600 --> 22:04.800
the question was whether they have been any recent performance improvements and not that I can think of,

22:04.800 --> 22:11.680
like, but I kind of have to say, if you look at how flush performs on the original pine phone,

22:11.680 --> 22:17.360
and that is very weak hardware, I think it performs very, very nicely, if you just look at the shell,

22:18.000 --> 22:20.000
sorry, what was the second part of the question?

22:28.880 --> 22:33.840
okay, at the, the second part of the question was whether there were

22:35.440 --> 22:42.480
areas that could improve performance, one thing that comes to mind would be GTK for default,

22:43.360 --> 22:47.520
at least, I mean, I don't know too much about all the nitty-gritty details,

22:47.520 --> 22:57.760
but yeah, that is something that comes to mind, okay, sorry, okay, and with that, thank you.

