We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Regaining control of your smartphone with postmarketOS and Maemo Leste

00:00

Formal Metadata

Title
Regaining control of your smartphone with postmarketOS and Maemo Leste
Subtitle
Status of Linux on the smartphone
Title of Series
Number of Parts
490
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Linux mobile software and GNU/Linux distributions are currently not widely available for smartphones. This talk covers why it is desirable to have GNU/Linux (not: Android or Android-based) on your smartphone, what the current state of various software attempts at Linux on smartphones is, what progress has been made, and will also dive into the available old and new hardware (including the PinePhone and Librem 5) to run the software & distributions on. Smartphones running regular (F)OSS Linux distributions are not common. We intend to provide an overview of the current Linux FOSS mobile stacks, distributions that package/provide the mobile stacks and to discuss the hardware that one can use to run this software. We will provide additional details for the postmarketOS distribution and for Maemo Leste (Debian based FOSS mobile software). We also hope to go into some detail about the upcoming PinePhone (https://www.pine64.org/pinephone/) postmarketOS is a distribution based on alpine, with a focus on minimalism, security and mobile software. postmarketOS supports many old and new smartphones with varying degrees of support, and also packages/ships with various mobile software suites like Plasma Mobile, Maemo/Hildon, Phosh and more. Maemo Leste is based on Maemo Fremantle (from the Nokia N900 days), but completely open source. It's a repository on top of Debian/Devuan that pulls in the entire Maemo/Hildon user interface and suite of applications. Building on top of a proven set of interfaces, Maemo Leste also aims to be mostly compatible with Maemo the way many people might remember it, with a modern twist. Pine64 (known for ARM laptops and SBC (Single Board Computers) has decided to get into the mobile business with the PineTab and the PinePhone device. Aiming to deliver developer devices in 2020Q1 and enthusiastic end-user devices in 2020Q2, they've energized software developers who arewriting mobile interfaces for Linux and have been producing a mobile phone at remarkable pace. We will show the Pine64 device and discuss the current state of Linux support on the device. We plan to give live demos during the presentation, but will have pre-recorded videos as fallback.
33
35
Thumbnail
23:38
52
Thumbnail
30:38
53
Thumbnail
16:18
65
71
Thumbnail
14:24
72
Thumbnail
18:02
75
Thumbnail
19:35
101
Thumbnail
12:59
106
123
Thumbnail
25:58
146
Thumbnail
47:36
157
Thumbnail
51:32
166
172
Thumbnail
22:49
182
Thumbnail
25:44
186
Thumbnail
40:18
190
195
225
Thumbnail
23:41
273
281
284
Thumbnail
09:08
285
289
Thumbnail
26:03
290
297
Thumbnail
19:29
328
Thumbnail
24:11
379
Thumbnail
20:10
385
Thumbnail
28:37
393
Thumbnail
09:10
430
438
SmartphoneControl flowMultiplication signGame controllerMereologySmartphoneContent (media)SoftwareForcing (mathematics)Goodness of fitRight angleErlang distributionMoving averageComputer animation
SmartphoneVector potentialComputer hardwareSoftware developerInternetworkingHacker (term)SpacetimeLaptopServer (computing)SpywareControl flowAxiom of choiceUsabilityFirmwareDevice driverArmNetwork topologyBootingStructural loadKernel (computing)Standard deviationDevice driverFile archiverFlash memoryUser interfaceBootingKernel (computing)Point (geometry)Right angleInformation securityDrop (liquid)CodeFreewareOpen setInternetworkingComputing platformFerry CorstenLaptopDifferent (Kate Ryan album)TelecommunicationWhiteboardInheritance (object-oriented programming)Mobile appUsabilityWeb pageTrailSpacetimeComputer hardwareWindowSoftwareoutputGame controllerCovering spaceAndroid (robot)Multiplication signMathematicsWebsiteComputer scienceProjective planeKey (cryptography)BitInsertion lossArmKeyboard shortcutVector potentialOpen sourceSmartphoneRevision controlVirtual machineTotal S.A.IntelArithmetic meanIntelligent NetworkArithmetic progressionLengthGoogolWater vaporStructural loadRow (database)BuildingServer (computing)Endliche ModelltheorieCycle (graph theory)BlogComputer animation
Computer hardwareArmNetwork topologyBootingDevice driverStructural loadStandard deviationKernel (computing)Vector potentialPhysical systemBuildingAndroid (robot)AbstractionGraphics processing unitOpen sourceModemDistribution (mathematics)Axiom of choiceBefehlsprozessorCore dumpQuadrilateralProduct (business)Cellular automatonArmTablet computerBitFocus (optics)Analytic continuationDifferent (Kate Ryan album)LaptopAndroid (robot)Information privacyStapeldatei1 (number)Library (computing)BuildingHypermediaLine (geometry)CuboidRevision controlProjective planeSingle-board computerKernel (computing)Digital rights managementDevice driverGoodness of fitSystem on a chipArithmetic progressionBus (computing)BootingBefehlsprozessorCovering spaceWhiteboardTouchscreenPower (physics)Multi-core processorAlpha (investment)Point (geometry)State of matterMoment (mathematics)Patch (Unix)Graphics processing unitComputerComputer configurationPlug-in (computing)AbstractionDistribution (mathematics)Computer hardwareOpen sourceModemServer (computing)SpacetimeMatching (graph theory)AdditionPlanningStreaming mediaService (economics)Physical systemDivisorMetropolitan area networkAssociative propertyKnotLimit (category theory)PRINCE240 (number)ApproximationCategory of beingAsynchronous Transfer ModeTrailComputer animationLecture/Conference
Physical systemAndroid (robot)Regular graphDistribution (mathematics)Stack (abstract data type)Moment (mathematics)Software developerComponent-based software engineeringRevision controlDevice driverRow (database)Personal digital assistantElement (mathematics)Computer animation
Touch typingRevision controlPhysical systemBitMoment (mathematics)Cartesian coordinate systemBeat (acoustics)Line (geometry)Data recoveryAsynchronous Transfer ModeInstallation artMobile appOpen sourceUser interfaceSoftwareDevice driverTouch typingDistribution (mathematics)Distribution (mathematics)Computer animation
WikiWeb 2.0Analytic continuationUser interfaceComponent-based software engineeringCartesian coordinate systemOpen sourceSoftwareRepository (publishing)Row (database)EvoluteComputer animation
Analytic continuationWeb 2.0Device driverOpen sourceComputer hardwarePersonal digital assistantComponent-based software engineeringPoint (geometry)Different (Kate Ryan album)SmartphoneMoment (mathematics)Bus (computing)Line (geometry)Proper mapComputer animation
PlastikkarteBitSmartphoneRegular graphMoment (mathematics)Direction (geometry)Office suiteFocus (optics)Computer animation
Kernel (computing)Focus (optics)Moment (mathematics)Product (business)LaptopCartesian coordinate systemTheoryLine (geometry)Computer animation
FingerprintKernel (computing)Computer-generated imageryDegree (graph theory)Matrix (mathematics)FreewareAlpha (investment)Device driverSharewareArmSoftware developerWeightMultiplication signMoment (mathematics)BitRevision controlProjective planeTheoryKernel (computing)Installation artRouting2 (number)Point (geometry)MathematicsPatch (Unix)1 (number)Tablet computerPhysical systemAxiom of choiceUser interfaceDistribution (mathematics)Arithmetic meanSystem callBlogInternetworkingBootingRepository (publishing)SmartphoneOnline chatMatrix (mathematics)Server (computing)Personal digital assistantAlpha (investment)State of matterCellular automatonModemDigital rights managementOnline helpOrder (biology)Student's t-testBuildingCartesian coordinate systemVideo gameTouchscreenBasis <Mathematik>WordSurfaceGame theoryException handlingMilitary baseGroup actionTunisMachine visionRow (database)Fiber (mathematics)Computational complexity theoryAgreeablenessLevel (video gaming)Bit rateQuicksortComputer animation
Open sourceFocus (optics)SoftwareDigital rights managementCore dumpPhysical systemCompass (drafting)Open sourceDigital rights managementState of matterPoint (geometry)BitCommutatorMultiplication signWordPosition operatorMereologyOffice suiteRight angleCalculationPhysical systemMappingHacker (term)Level (video gaming)Ocean currentAsynchronous Transfer ModeFocus (optics)Video gamePower (physics)Thomas BayesDirection (geometry)Content (media)File formatSoftware developerCodeTransmitterCompass (drafting)Repository (publishing)Core dumpSoftwarePoint cloud1 (number)DistanceDefault (computer science)Software testingLatent heatoutputGUI widgetPatch (Unix)Cartesian coordinate systemTouchscreenSoftware maintenanceAndroid (robot)Cloud computing
Core dumpPhysical systemOpen sourceDigital rights managementFocus (optics)Hacker (term)Software frameworkCodeRepository (publishing)WordUser interfaceOrder (biology)Repository (publishing)Open sourceComputer programLine (geometry)Traffic reportingCodeMeta elementDemonComputer animation
Alpha (investment)Virtual realityComponent-based software engineeringCore dumpBuildingSoftware developerBoiling pointMetropolitan area networkMeasurementInternet service providerSystem callBoundary value problemMobile appCartesian coordinate systemKeyboard shortcutDigital rights managementFlagPatch (Unix)CuboidRight angleDevice driverState of matterPower (physics)WebsiteSpacetimeLink (knot theory)InformationCore dumpComponent-based software engineeringSharewareSoftware developerUser interfaceGoodness of fitBinary codeSlide rulePlanningBitMatrix (mathematics)Distribution (mathematics)Event horizonOpen sourceAxiom of choicePhysicalismLine (geometry)Online help1 (number)Point (geometry)Distribution (mathematics)Integrated development environmentVirtual machineModemInternet forumAlpha (investment)Closed setWordVotingService (economics)NumberSpherePhysical systemComputer animation
Computer hardwareBinary codeSoftwareAbstractionPoint (geometry)Limit (category theory)Android (robot)SmartphonePersonal digital assistantWindowPrime idealModemOpen sourceArmHybrid computerMathematicsArithmetic meanFirmwareStandard deviationPhysical systemAxiom of choiceBitForm factor (electronics)Data storage deviceRight angleBootingMultiplication signDevice driverDuality (mathematics)Power (physics)WhiteboardVarianceMetropolitan area networkData miningGroup actionSheaf (mathematics)DataflowQuicksortBoundary value problemBlogAverageMereologyShape (magazine)Data structureDivisorComputer animation
CubeOpen sourcePoint cloudFacebookComputer animationLecture/Conference
Transcript: English(auto-generated)
So, it's 1500, it's time for the next talk by Merlin and Bart and I'm really looking forward to this talk because it's not, as I perceive the project, not only about regaining
control over your smartphones, which is of course very good, but it's also to be able to keep your phones longer, even if there's no further support from vendors anymore. That's what I also like. But let's get more first-hand facts from Merlin and Bart.
Enjoy. Does it work? Yeah, it works. Good. Okay. So, I'm Merlin. I'm Erlang. This is Bart. I'm gonna briefly tell you what we're gonna be talking about, then we'll introduce ourselves
and we'll roll right into the contents. So this is better. So, our talk is titled Status of Linux on the Smartphone, how to liberate your device by running actual Linux and software you control. So we're gonna briefly introduce ourselves first, then I will talk about why we need
the Linux on the smartphone, like why do we need it. I think the answer is obvious, but maybe it isn't, so we're gonna discuss that for a while. Then I'll talk about some hard and hardware problems and potential solutions to that. Then Bart will give you an overview of all the existing software out there, like all the different efforts that people are undertaking.
He'll talk about PostMarkerOS and I'll talk about MIMO. And by that time we should get to questions. So my name is Merlin, or Merlin in Dutch. I studied at the University of Amsterdam, I did computer science. I do work for the Intel Archive. Archive work, they did the Wayback Machine, the archive webpages and books and CDs and
other cool stuff. And in my spare time, at night, I work on MIMO-less. I am also a board member of the Amsterdam Hackerspace, have been for a while, and I run Tor exits and work on other free software projects. So my name is Bart Rivest, I mostly know the security out on the internet.
I work in PostMarkerOS and also, because of PostMarkerOS, I also work on Alpha Linux. I'm still studying, I live in the Netherlands, and my school certainly is a bit dominated by the proprietary Windows cloud, so I'm the only one that's trying to liberate the school.
May I have this, please, that's it. Okay, so why should you run Linux on your smartphone? There's a couple of reasons for it. First of all, so how many of you are running iOS or Android?
Just raise your hands. iOS or Android? How many of you are running Android? Most of you are running Android, right? So Android runs Linux of some kind, but it's not really GNU Linux. How many of you are running LinuxOS?
It's like five percent of the people that just raised their hands. So most of you use Android that was installed by your vendor, which could be Motorola or Google or some other hardware vendor. And if you look at what we do on our laptops, how many people of you are running Linux on your laptop?
Right? Did you install it yourself? Yeah. Okay, but we do this on our servers, we do this on our desktops, we do this on our laptops, but we don't do it on our phones. And there are many reasons for that, and we'll get to some of those reasons, but first, why would you want that? So obviously, if you run your software on your phone, on your laptop, you have full control.
You are the admin, you decide what runs, you decide what distro you want, you decide if you want GNOME or KDE or Wayland or Xorg or Sway or whatever you want to run. And I think that's very important. I think that's what draws a lot of different crowds and, you know, binds us together in the fact that we can work on all these different things.
And we have the freedom to modify whatever we want, so we can change the software, we can fix stuff, we can work as a community to make all of this better. And with the smartphones, we really can. With Apple, they work on something and that's it. Maybe you can report a bug and you'll hear something in a couple months.
Google does some of the code as open source, but they work in a closed way, so every now and then they just drop code and that's kind of it. So there's no way that we as a community here can work together, currently. There's some efforts to do that, but they're not super well known. And of course, if you have an Android phone right now,
you're dependent on your manufacturer. If Motorola supports Android until 6.0, then if Android 7.0 is released or there are security fixes, you have to wait for them to fix it, or flash Linux OS if it supports your device. And there's no support and they usually make you get a new device every couple years, which is not ideal.
Because, you know, I'm still using my Nokia 100 and have been for the last 10 years and it still works fine. And very often, Android has basically, iOS as well, they have spyware built in to some point, at the point that, you know, if you have your phone, you know it's tracking you in some way.
And you have to figure out all these different ways it tracks you, you have to deny permissions for everything, it gets very tricky and I think the right way to do it is to start with a device that doesn't track you at all, in any way, and then start reasoning about how you can make it not track you. Very often there's a lot of bloatware, super large apps and lock-ins with different communication platforms and I think that's not a good thing for the community as well.
Okay, so what does it mean? If we want to be in control, and we don't want to be dependent on manufacturer, what do we need? So, I think the essential pieces of a Gluenex smartphone is that it has mainline Linux support.
And for those of you who don't know, mainline Linux means that you can go to kernel.org, the website of Linux, you download the latest release and you can build it for your device and it works, more or less. There might be some driver issues, but it just works. And for most of your Android devices, you can't do that. It won't be supported in Linux because the vendor just made some changes and maybe if you're lucky you can get the changes
as the last talk covered. And that's kind of it. So if you all want to work together on Linux we need this to be there. And we don't we want most of the drivers to be open source so that we can improve the drivers, make them better and we need a bootloader without restrictions.
So if you run various Android bootloaders or something else, as long as they allow you to boot Linux, your own version of Linux, so it's not signed by some cryptographic key and you can just do it yourself, that's probably good enough. It will be ideal if the bootloader is completely open source from the start but that might not be
completely realistic. And of course, if you have Linux in the bootloader you need something other than the kernel to actually do stuff with your phone. So we need usable user space that's free and open source. And ideally there will be many distros and many UIs like we have right now on our laptops.
But there's quite some problems, so if you boot your laptop with Intel, you just kind of insert whatever your distro is, maybe you want to a CD or USB stick and it boots to a bootloader and it just boots to a desktop or a UI and you can do things. On the phone this doesn't work that way. Hardware support
on ARM is different. There's no BIOS that sets everything up and downloads the bootloader and then the bootloader will go to Linux and Linux looks at whatever the BIOS provides it on, whatever's on the PCI bus to load the drivers. This is not there on ARM. There's no currently very good infrastructure to do that. There's some progress has been made but for a lot of devices that doesn't work.
So that's harder, you have to often compile your own kernel with the right options. So you can't just plug in something and hope it works. And of course most of the devices that I said have vendor-only kernels so they take Linux from a certain point they add some things and that's kind of it. They never contribute it back.
The bootloader is sometimes even locked down and specifically bootloaders here you have to configure them manually, often compile them as well because they have the same problem, they don't know what hardware is in your device and they can't detect what they should support so you can render something on your screen. And there's so many devices there's so many different Android phones and there's so many different
Chinese ones and different large United States manufacturers and another problem is power management. Power management on the desktop and laptop is pretty good with Linux nowadays if you're lucky you can get 8 or 9 hours in your laptop. If your phone lasts only 8 or 9 hours in your pocket and gets warm it's not very good we need something better.
And with 64 bit ARM some of what I said before got a little better so there's some way to detect what drivers you have. If you have a EFI bootloader then you can kind of do it but it's still somewhat problematic. So these are a lot of problems there's some solutions that we as a community can
or some things we can do as a community to hopefully make this a little less painful we can focus only on a couple of devices so take a couple of Android phones or whatever phones people made that are not that hard to support or are GPL friendly have GPL friendly manufacturers that kind of stuff will be good or if people are manufacturing
new devices they should pick a system on chip that is well supported by Linux already so system on chip is basically the computer and graphics card and most of the things integrated in a simple small thing that is on your phone and there's actually a company doing that or several companies doing that we'll cover them in a bit
and I think the way to actually get Linux support proper is not to rely on Android and Android kernel by vendor to provide some drivers and then rely on it so there's some good projects abstraction layers around Android and Android driver so you can run your own Linux stuff on there but it doesn't get us any closer to actual
mainline Linux on our phones so there are two companies working on new devices right now the first one is Pine64 they have a stand in the AW building today I think they might have a stand until 5 so after the talk finishes you can still go there
and they are showing off their phone and tablet with various OSes that currently are in alpha state or kind of working right now so if you're excited you should go there and specifically they are working on something called the PinePhone maybe not surprising it features an all winner A64 SoC
system on chip and it has very good mainline support and this is not necessarily because of the company all winner but because for the last couple of years people who visit FOSDAM have been working very actively to support the devices because you can find them in a lot of single board computers so if you know Raspberry Pi there's a lot of other boards like that like there's Olimax boards and Pine64 they make boards with
all winnerships in there and you can use them as a small server at home or as a media box so mainline support in Linux is really good the driver support is getting pretty decent there's 2GB of RAM EMC and a quad core CPU and there's an open source 3D driver for many years specifically 3D in the
whole ARM space has been a big problem and I think 4 or 5 years ago someone here Lib V started working on the Lima driver for the Mali-400 GPU he did a lot of work, he did a big talk here on the K building a couple of years ago and then stopped working on it and then others picked it up and now today we actually have a
driver that works on Wayland and Xorg so that's awesome and another cool thing that the Pinephone features are kill switches so if you want to only turn off your microphone you just flip a physical switch and then the line of your microphone no longer runs to your phone so there's no way that whatever you say will be recorded by the modem
you can do the same for Wi-Fi you can turn off your cameras you can do the same for Bluetooth so that's kind of neat if you want some extra privacy features it features a worldwide 4G slash LTE modem so wherever you go it should just work and they will likely when the phone is finished allow you to pick a distribution that kind of works on the phone
and then they'll pre-install it for you so that's kind of cool I'll let Bart continue and it costs 150 euros approximately the other the other company is Purism is making the Librem 5 it might be more known to the community
the device is actually based on a different stock than the Pinephone is it's a bit more powerful as well the kill switches are actually on the outside while on the Pinephone they're on the inside of the phone so it's a bit hard a bit easier actually to flip the switch
the mainline support is also pretty good it still runs on some out of three patches but they're actively being worked on and being upstreamed from Purism they're working on the distribution PureOS which is the main focus for the Librem 5 it's probably going to run that out of the box
and at the moment they have the Chestnut edition shipped, that just means it's one of the first batches that are shipped they work in several batches meaning the first batch has it's basically an early version and there might be some little issues with it and the next batch has those issues fixed and then some issues
might occur there and the next batch has those issues fixed Chestnut edition is basically for the Braveheart, the people that don't really mind having some issues and don't mind working around them I think right now the price is 800 dollars but it's changing a bit so it might not be accurate
and depending on the region you're at, it uses a different modem, I think especially USA versus Europe and India but it's basically just as promising as a pinephone and hopefully we'll see a lot of people next year using it instead of their Android phones
so to give an overview of the currently various efforts to put Linux on mobile, there are a lot of distros out there at the moment just to start somewhere we have KDE Neon, it's made by the KDE project, it's already used on desktop a lot, it's just basically based on GNOME, sorry
Ubuntu, with the newest KDE stack on it in case of mobile they put the newest versions of all the mobile components of KDE on it to make it work on current phones, just not the pinephone and the Librem 5 but on regular Android phones, they use
libhybris which is a technique to make Android drivers and stuff work on regular Linux systems and it's basically the main development distribution for KDE on mobile the next one will be Ubuntu Touch this is probably the most completed distribution at the moment
out there it works a bit differently than most distributions the base system is read only and they install packages with what they call the click system and if they update the system it just reboots into the graphy modus installs the new version, then reboots into it, instead of running
say, apt-get update it comes with Unity 8, on most devices at the moment it uses libhybris to work, to make the drivers work, but they are quite far advanced as well with the pinephone and Librem 5 to make it work with mainline drivers and without libhybris
and if you want to run a Linux on mobile system like this here and you want some apps to run, Ubuntu Touch is probably your best bet then we have Nemo Mobile based on the, originally on Mir, nowadays that's basically Salesforce OS, it basically takes Salesforce OS but replaces the
proprietary components of it with free and open source software that basically comes down to the user interface and the applications that come with it it basically runs on every device that Salesforce OS runs on it, just replace the, put the repository of them on top of it, install the different packages and it will run
then we have LunaOS, it's based on the older WebOS which was made by LG, they originally discontinued their efforts to make WebOS and then the community decided to fork it make LunaOS, nowadays LG has picked up WebOS again so LunaOS is nowadays working with LG to bring all the components
back together make sure that it stays open source and it's based on modern techniques and hardware again it uses libhybris to work instead of mainline drivers but they are working on a pine phone as well, in which case again they'll use the mainline drivers properly then we have asteroid OS
it's a bit different, it's not really a smartphone OS but more a smartwatch OS it again uses libhybris, it's made for the smartwatches which basically at the moment are an Android watch it's a regular Linux system, I think it's based on Yocto or open embedded I'm not entirely sure the UI
and stuff is again based on Mer which is updated in a different direction then AOS-C it's made for more of the Eastern Asian market it's main focus is on Plasma Mobile, runs on mainline only, it doesn't run on any other devices that do not have mainline so it's basically at the moment mainly the pine phone
and the Librem 5 then we have PureOS, this is made by Purism, the company that makes the Librem 5, it's mainly focused on running on the Librem 5, although also on the other Librem products so the laptops this PureOS will ship with Fosh, I'm not sure how
to pronounce it properly, but it's based on the GNOME stack, they use GNOME technologies and they run GNOME applications but adapted so they are made responsive and will resize them to various phone sizes, this PureOS is made to only run on mainline kernels, because only made to run on Librem 5 really
but in theory it can run on any phone that has mainline and it's a fork of Debian then we have Manjaro, they popped up recently showing they have interest in making a mobile version as well it's Manjaro ARM project they focus at the moment on Plasma Mobile
but they're based on Arch, so in theory they can run anything that Arch can run and also it's made to run only on mainline kernels and at the moment they're working on mainly the PinePhone, and then we have NixOS, last year they got funding by NLNet to work on it so they're now a full-time developer
it's a stand-alone OS works a bit differently, the package manager is quite interesting, I can recommend you look into it it runs on the PinePhone as well, but they're also trying to get it to run on existing Android devices in which case, again, they use LibHibris the desk or the interface it will come with is not set in
stone yet, they're working on multiple interfaces so you can probably eventually run Plasma Mobile on it, and Forge, and Unity and hopefully lots of others so PostMarketOS that's what I work on in my opinion, the best one, but probably what others disagree
this was announced on the 26th of May 2017 by Oliver Smith he had worked on it in private for a year by then he made some basic tooling to work on it and at that point he thought it was ready to show it to the world when he made the original blog post that announced the project, it only supported two devices, or at least booted on two devices
but basically now we boot up to 173 devices it sounds like a lot, but it's probably not even half of all the Android phones out there it's quite a lot do note, we say support but it doesn't mean you can pick up the phone install PostMarketOS on it, and expect to make a call and have fun with it
it's more, most devices are more in like a Raspberry Pi state, you have a working Wi-Fi you have a working screen, and you can run some interesting applications but don't expect that you can make calls or send SMS with it we do have a few devices that you can make calls with or at least close to make calls with but most of them will not be the case
PostMarketOS is based on Alpine Linux it's probably mostly popular distro for Docker containers and on server installations but it will also work fine on laptops desktops, and in our host phones we chose Alpine Linux mainly because it's really tiny
the base installation without the kernel that is, is only 6 megabytes big so that's basically a booting system once you add the kernel and because we work we chose this because of the size because we work with a lot of change routes we, every time we do something we make a change route, do some stuff in it we remove the change route and that happens a lot
and if you do that like six times a day you don't really want to wait every time the whole distribution is installed because our system is only the base is anyway, it's only 6 megabytes big this is an issue the change routes are made and removed again in theory within seconds and the development is quick because of it
we're basically a repository on top of Alpine Linux, so we use all the packages from Alpine Linux, and although we have our own custom stuff sometimes we do try to upstream as much as possible to Alpine Linux and where possible also custom patches to the various projects that are out there
we are like NextOS basically, we are interface agnostic meaning we're currently focusing on Plasma Mobile but we also ship Phosh we had Unity in the past, Unity 8 and we'll hopefully ship it again in the future, but we also ship with Haldan from Maimoleste and hopefully in the future also
Glazer UI and any other UI that might pop up, so we try to give the choice to the user you can use our system, but it doesn't mean you have to be forced to one interface or another like I said before don't expect most devices to install it on the system and then expect it to call
we're basically in alpha state you can boot the system you can mess around with have fun, and except for a few devices, you probably won't use it as a phone, in our case but the Raspberry Pi is also cool basically, so you can use it like that we are we have our chat channels
on Matrix and IC, please join when you feel free we need both end users and developers, we can use all the help hope to see you there back to Mr. Meline thank you does it work? yeah, I think so ok, definitely
works, right? ok so I'm going to tell you a bit about what I've been working on which is Maimoleste I hope I pronounced it correctly, I'm not from Finland and I've heard people pronounce it differently, Mimo Maimo, I say Maimo hope it doesn't offend anyone it was developed by Nokia a long
time ago, Nokia was in the smartphone business an internet tablet business maybe even before Apple made their first iPhone maybe it was around the same time and they had been working on Maimo for a while they had various internet tablets they had the N770 the N800, the N810 those were all internet tablets, you can use them for navigation
but they had no cellular modem in there, and then they made the N100 that I still use today and they had a lot of people working on that OS, and it was based on Debian, and by that I don't mean that they literally used the Debian repository, but they used APT, the package manager
the DAB package format, and a lot of the base system was the same they actually sold a lot of devices, they sold I think, well, at least I think it's a lot, they sold a couple hundred thousand Nokia N900s at least so a lot of people who don't typically visit Folsom actually use that device probably for a couple years
and it's still being maintained by the community there were actually a lot of people using it it was kind of dubbed the hacker phone, because Nokia N100 had a radio transmitter and receiver in there, so you could put it in your car and it will transmit radio on your car radio, and you can just listen to that a lot of cool features
and the community maintained it for a long time, but now there's not a lot of maintenance anymore, but the cool thing is that they still have a lot of packages on Maimo.org with maps, calculators useful stuff and I've been using it ever since as I said, and the big problem is that not everything in Maimo 5, which is the Maimo they made for the Nokia N900 is open source
if it was I think it would have kept on living for a long time ever since they made it and not be in a hiatus state for a while and big parts are not open source that's a problem, so I've covered some of it
why are we doing this? I love the OS and I still want to be able to use it that's a personal reason for me and this phone, the N100 is becoming very old, so I need a new device on which I can run the same or similar software, which actually gives me the newest Linux on my phone and I just want it to be fully open source because this one is not
and it's been used by a lot of ordinary users, the UI might look a little arcane at this point, I'll also use the screenshot later, I think it's actually very usable still, but it doesn't look anything like iOS and Android now look like and Maimo Lesta is entirely community developed, so over
the years, a lot of community members have worked and they've come and gone and there's currently three or four people actively working on Maimo Lesta, and we started about two years ago and there's a lot more people joining and testing and fixing minor things, but there's like three or four core developers so it's not that many and I really like the fact that we're community developed because there's no corporate
backing and there's no special interest nobody wants to run their specific cloud in our device and we're not pre-installing any specific cloud software or whatever and there's no specific direction that will take it just because the company wants to do things that make sense financially and it's compatible with existing software, so as opposed to, I think, every single mobile
distro you named they all run Wayland, right? and we're the only ones that still use X11, you can hate it or like it the code works in X11, it was open source, there was no reason for us to make that work on Wayland right now and it uses GTK2 3 and QT
and there are some patches to GTK but it's mostly theming and some widgets but it also means that if you want to run let's say something crazy, LibreOffice you can just install it and it will actually just start in the device it probably won't be very usable because there's all these buttons and menus but it will look stylishly, the dialogues will be styled and they kind of integrate in the system if you take more simple applications, they will probably just run
and I think that's a big feat, because if you base your work on top of Debian and dev1 as I'll talk about in a bit then there's 20,000 packages in the repository that you can all just install and use and some of them might be a bit clunky but they might also be very good
and everything that we do is open source everything that we write now is GPL and if there's some open source license that was not GPL before then we just run with it if Nokia wrote something that was not GPL another thing that I really like is that the APIs for MIMO are developed with
mobile in mind so they thought about power management they think about things like there's proximity sensors, if you put something to your ear, the screen needs to go off and the touch screen shouldn't work anymore, right? because otherwise you're pressing buttons or if you're in a darker room then the brightness should adjust itself to the ambient level
there's a compass in there if you flip the phone, it needs to go to portrait or landscape mode that kind of stuff and all the APIs are there so if we're working on making all this work we have a fixed point we just follow what the APIs we re-implement them and it all kind of just works it uses only on the M100 it actually uses like 80 megabytes
150 megabytes is the default I think on 64 bit devices and there's a lot of applications out there that were community developed and if we keep the same APIs mostly then it's just a matter of recompiling them when they work so I think that's really cool and it allows us to keep focus so what do we do? we ported code and we updated APIs
we looked at some code programs that were not open source and we tried to figure out how they worked and re-implemented them if they were a demon we just looked at the interfaces and we tried to just make that work and we build everything in Jenkins so we have Git repositories currently on GitHub and
Jenkins just builds whatever we committed builds it for us and adds it back to the Debian repository and installing Memo is a simple if you want to do it you can just install Debian or dev1 because we don't use systemd but someone is working on systemd support if you really want to but you just add a single line and you install our meta packets and that's it it just works on top of Debian
I think that's really cool and our aim is to make it work for people here at Fosse for hackers, for open source enthusiasts and not necessarily for the end user we'll maybe get there, but we're not there now and a really cool thing is that I think somewhere mid last year we submitted for funding for NowNet which is a non-profit in the Netherlands
and we actually got 40,000 euros in funding so we get to get paid for some of the work we do this is what it looks like on the N900 you can see that I was testing some Python bindings so the binary clock shows up there the actual clock is not a binary clock I was just testing a replacement clock applet
it's connected to the KPN network provider in Netherlands on 3G, the battery is full it's on WiFi the 4 says the WiFi signal is pretty strong it's currently muted for sound and it tells me that the application manager thinks there's an update available ok
so what do we have now? it's alpha quality at best if you got super excited I'm sorry once it works and I can make phone calls I'm going to start using it as my main device I'm going to keep on dogfooding it and I hope others will do the same right now it runs on the Nokia N900 the Motorola Droid 4 and the PinePhone I haven't mentioned the Motorola Droid 4 before
it's made by Motorola and it's one of the last physical keyboard phones they made so the Nokia N900 has a physical keyboard and that one does too and it has a pretty good chip power management wise and someone I think two people have been working super actively on main line support for years and now it actually works really well
so the WiFi works, the modem works, power management works you can get a couple of days of power on that thing, so I think that's really cool and we use virtual machines for development so you can run QEMU, VMware, VirtualBox and you can just have the desktop environment in your virtual machine log in over SSH and do your development
we still need to get some core components in place, the main thing lacking I think right now is a phone UI, because we are actually able to make some phone calls using the command line but that's not how you want to answer a phone or make a phone call, right? I think it will probably be a couple of months until we get to that point
but I'm still pretty excited and as I said before there are demo devices and the PINE64 is at an AW and I think they'll be there until 5 maybe you've already seen them and I'm really hoping that the power management will be really good, because the Nokia N900 lasts for maybe a week, a week and a half if I don't use it that much
I've never seen that on an Android phone So these are the devices we support and there's a link up there with more devices that are not that well supported but they kind of work, like I said we really focus on a couple and last but not least if you're really interested in PowerVR which is the 3D driver on the Nokia N900
and the Motorola Android 4 the state was terrible and we've been working on it with other people for a year and a half and now you can patch mainline Linux a little bit and it will start the user space is still closed source but Texas Instruments is actually building new binaries for us so it's actually looking pretty good I'll leave it to Bart
As a conclusion well as we showed there are various UIs various distributions available basically everybody's choice is available and possible but all of them do need work we need a lot of help nowadays we do have devices to run them on, so please get a device
get into the various chat channels ask what you can do we don't just need developers, we also need end users we need people to write documentation and with somewhere everybody can do that hopefully this year probably first half of the year, maybe second half of the year expect phones to actually show up the Pine phone will work
the Libra 5 will by then work and hopefully next year most people here will be able to run such a device and be able to come up with it, have fun with it just make sure don't be afraid to ask questions we're all great people we always appreciate every help we can get all the help we can get and we hope to see you
in the various channels and forums and all the places we are hope to welcome you into our community lastly, resources quick links Maimo Lesta is available on Freenote on RFC with the hashtag Maimo-Lesta postmark is available
also on Freenote with hashtag postmark to us, we're also on Matrix the Jynosso bridge, so it doesn't matter which you choose please join, have a look at our website for more information and hope to see you next year
and if you're interested in more technical details for Maimo specifically, I did a talk a couple of months ago in Bulgaria on Openfest, which is another great open source event like this and it's about an hour long the link is here, I'll make sure that the slides are
on the FOSLIM website somehow and it's more technical and in-depth than this talk it's up there any questions?
with so many distributions being available is there some plan to have to have something like flag packs can everyone please leave quietly or shuffle quietly because I can't hear please repeat with so many distributions available is it possible that you can run say, I don't know, flag pack or snap on it
to develop a package for one of the distributions for all of them or do you have to basically build an APK for Alpine for Debian based ones so I guess the question is with so many distributions available, do you want to package the app for all the different distributions or can you use snap or flag pack I guess
it depends a bit on the distribution most distributions of data mentioned do support something like flag pack or snap you can package them in flag hub and you can install them on your device not all distribution might necessarily support out of the box but often it's just app get, install flag pack and it'll work
hi, so I didn't hear anything about Halium are you working together with the Halium guys to get the okay, are you working somehow together with the Halium guys to get do you know I could not hear what you were saying, please repeat
you didn't hear anything okay so yeah, are you working together with the Halium guys to get the stack or Android mobile phones yes, no
are you working together with the Halium guys Halium guys, okay so the question is are we working together with Halium I think Halium is using Android as a base and it's like an abstraction around Android to make things work better on Android devices I think a lot of distros are, but Maimo is not because we really want to focus on mainline only
and I don't want Android modem abstractions or graphics driver abstractions or anything else like that maybe, people in the community have done it they've used it to make Maimo work on Android phones we might support that in the future, but right now we don't do that in case of post-market to us we have
I think three or four devices actually using Halium slash deep hybrids most of them don't, but we definitely appreciate the effort if somebody ports Halium and our system to it, so yeah, we should port it do we have more questions?
thank you is it true that for the choice of the hardware for not pine for the other one for prism you only can choose the battery from
the prime prism window so you're logged in with that the battery changing the battery if you want to change the battery the battery gets damaged
and you want to change it you're logged in with the prism you can't buy a third window so that depends a bit on the device you said about changing batteries, right? you talk about changing batteries
yeah, so that depends on the device on the Android you can change batteries without problem the pine phone uses a standard Samsung battery so you can just buy those stock batteries and replace the battery in your pine phone I'm not sure if you can replace it while the device is on you can do that with some devices too, if you power them over USB swap out the battery, that kind of stuff that can work, I can't hear you
on the prism smartphone you can't buy from another window you're logged in with that with the hardware
yeah, the main problem with batteries is I guess the voltage and the size of the battery most phones, even though manufacturers say you should not replace the battery you can just get any other and it won't work fine if we take the pine phone they basically already said from the store they do support replacing battery you can get, I think, a Galaxy J7
battery and it will work fine on the pine phone in the case of the Librem 5, I think they use a custom form factor so it'll be a bit hard, but the device itself is not the reason there's no hardware limitations on the battery it's just the form factor and if the voltage is good it should be fine
what's the policy for binary blobs in postmarket OS what's the policy for binary blobs in postmarket OS do you really care about them or just whatever the question is if we care about binary blobs
in postmarket OS we prefer not to of course, but in some cases some binary blobs or at least firmware is needed to get the device running we do ship at least proprietary firmware when possible, there are some efforts to replace proprietary firmware
and proprietary blobs with open source variants we try to use it wherever possible for example the Mali GPU in the pine phone it has binary blobs but we try to use Mesa instead that doesn't mean if it's actually needed to get the device running sadly we have to, but we do package it now thanks any more questions
I have a question
about my molesta does it support the old boot with original N900 firmware does it support what dual boot with original software from N900 currently we haven't
made it work with the other software that's on the old N900 like if you for example take their binaries and you just want to run it on my molesta right it doesn't work I've tried it a couple of times some simple binaries work, but other things start to go very wrong it uses a different API it uses
ARM EL not ARM hard-float so the floating point stuff is different but can still sometimes work I think if you try hard enough you might be able to make it work but we haven't tried that hard do we have any more questions
thank you very much