#+TODO: TODO(t) IN-PROGRESS DONE #+STARTUP: indent #+OPTIONS: ':nil *:t -:t ::t <:t H:2 \n:nil ^:t arch:headline #+OPTIONS: author:t broken-links:nil c:nil creator:nil #+OPTIONS: d:(not "LOGBOOK") date:t e:t email:nil f:t inline:t num:t #+OPTIONS: p:nil pri:nil prop:nil stat:t tags:t tasks:t tex:t #+OPTIONS: timestamp:t title:t toc:t todo:t |:t #+TITLE: The Librem-5 Phone - a status update #+SUBTITLE: FSFE Group Bonn Meeting, October 2018 #+DATE: 2018-10-08 #+AUTHOR: Guido Günther #+EMAIL: agx@sigxcpu.org #+LANGUAGE: en #+SELECT_TAGS: export #+EXCLUDE_TAGS: noexport #+CREATOR: Emacs 25.2.2 (Org mode 9.0.9) #+latex_header: \mode{\usetheme{Copenhagen}} #+latex_header: \setbeamertemplate{headline}{} #+latex_header: \AtBeginSection[]{\begin{frame}\frametitle{Topic}\tableofcontents[currentsection]\end{frame}} #+latex_header: \hypersetup{ linkcolor=blue, pdfborder={0 0 0 0}} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %4BEAMER_col(Col) %10BEAMER_extra(Extra) * Who am I :PROPERTIES: :UNNUMBERED: t :END: ** About me - Debian Developer (libvirt et al., gbp, LTS, ...) - GNOME Foundation Member - FSFE Supporter - Freelancing Free Software Developer - Working on the Librem-5 ** Intro :PROPERTIES: :BEAMER_env: note :END: - Short overview * The Librem-5 ** A security and privacy focused phone [[./img/l5-id.jpg]] ** "Classic" Phone Features - Phone calls - SMS - GPS - Wifi - Camera - … ** Not so "Classic" - Designed and built by [[https://puri.sm][Purism]] SPC - Hardware kill switches (wifi/BT, camera, modem) - CPU separate from baseband modem - Runs by default a regular Linux distribution (PureOS) - Not Android based - End to end encrypted messaging (and calls) - User has full control over the device - By default GNOME based * Status Update (Software) ** Adaptive GNOME apps #+attr_latex: :width 200px [[./img/libhandy.jpg]] - [[https://code.puri.sm/Librem5/libhandy][libhandy]] for adaptive widgets - Lots of new widgets ([[http://honk.sigxcpu.org/projects/libhandy/doc/][doc]]) - 4 [[https://source.puri.sm/Librem5/libhandy/tags][releases]] so far, uploaded to Debian - [[https://source.puri.sm/guido.gunther/libhandy/tree/hdy-users][Multiple GNOME apps already using it]] - Used by Librem5 [[https://source.puri.sm/Librem5/calls][apps]]/[[https://source.puri.sm/Librem5/phosh][shell]] ** Adaptive GNOME apps (II) - Patches for - [[https://gitlab.gnome.org/GNOME/gnome-bluetooth/merge_requests/5][gnome-bluetooth]] - [[https://gitlab.gnome.org/GNOME/gnome-contacts/merge_requests/15][gnome-contacts]] - epiphany - gnome-control-center ** Calls #+attr_latex: :width 80px [[./img/calls.jpg]] - Does phone calls via [[https://www.freedesktop.org/wiki/Software/ModemManager/][ModemManager]] - [[https://source.puri.sm/Librem5/haegtesse][Daemon]] to test calls with Simcom 7100 - TODO Contacts integration / shell integration ([[https://source.puri.sm/Librem5/calls/issues][bugs]]) ** Chatty (XMPP, SMS) #+attr_latex: :width 80px [[./img/chatty.jpg]] - Most recent addition - SMS und XMPP (OMEMO) - TODO Add back SMS / more XMPP XEPs ([[https://source.puri.sm/Librem5/chatty/issues][bugs]]) ** Fractal (Matrix) #+attr_latex: :width 200px [[./img/fractal.jpg]] - Upstream work continues on MUC split - Work on end to end encryption ** Phosh (Graphical Shell) #+attr_latex: :width 200px [[./img/phosh.jpg]] - Runnig it since several months - Initialrelease: nightshift, gcr-prompter, lockscreen, ... - TODO Appliction browser, Wifi status, Vol. ctrl ([[https://source.puri.sm/Librem5/phosh/issues][bugs]]) ** Wayland compositor - Awesome support from wlroots upstream - text-input / input-method Wayland protocol enhancements - TODO - Don't use [[https://github.com/swaywm/wlroots][rootston]] (but wlroots!) - Animations, dmabuf enhancements, text-input / input-method, ... ** Virtboard (On Screen Keyboard) #+attr_latex: :width 200px [[./img/osk.jpg]] - TODO: GTK+, different layouts, text prediction ** CI / Builds - Based on gitlab / gitlab CI / Jenkins - Build with different compilers, smoketest, valgrind, ... ** Plasma mobile - Package builds for arm64 integrated - PlaMo developers are currently looking into build issues * Status Update (Hardware) ** Kernel - Based on basic NXP imx8m arm64 Linux support from [[https://www.pengutronix.de/de/][pengutronix]] - Building/using [[https://source.puri.sm/Librem5/linux-emcraft][4.18 mainline based kernel]] on arm64 - Got [[https://source.puri.sm/guido.gunther/mesa][basic mesa]] to work by - Forward porting things from NXPs/Emcrafts vendor kernel - Cherry-picking together different mesa bits - https://twitter.com/GuidoGuenther/status/1032898450180980736 ** Kernel (II) - Overall : 262 files changed, 71398 insertions(+), 5074 deletions(-) - Graphics subsystem : 86 files changed, 26809 insertions(+), 114 deletions(-) ** QEMU development images - [[https://arm01.puri.sm/job/Images/job/Image%2520Build/][available]] from our CI system - uses correct display geometry, shell, osk, ... - rough around the edges ** Devkits about to ship #+attr_latex: :width 150px [[./img/devkit.jpg]] - [[https://puri.sm/wp-content/uploads/2018/06/2018-07-26-dev-kit-blueprint.jpg][blueprints]] done - [[https://puri.sm/wp-content/uploads/2018/06/2018-07-26-devkit-parts-table.jpg][parts shipped]] for assembly - first boards assembled (should arrive every day now) ** Phone shipment delayed 'til April 2019 - Power management issues - Chinese new year * Appendix :B_appendix: :PROPERTIES: :BEAMER_env: appendix :END: ** Join the fun - follow the links in the slides for details - developer documentation: https://developer.puri.sm/ - Translations done via Zanata: http://zanata.org - Puri.sm is hiring: https://puri.sm/job/librem-5-developer-roles/ - Sources: https://source.puri.sm/Librem5 - librem-5@lists.puri.sm / https://lists.puri.sm/ - Blog: https://puri.sm/posts/tag/phones/ - Questions? ** Thanks - Send mail to ** Hardware and Software *** Based on NXP iMX.8 CPU - The user space software is only *one* part of the project. - not a common phone CPU - Vivante gc7000 Graphics (etnaviv kernel driver/mesa) - Reaching for RYF - Mainline kernel (or close to it) - No software updateable firmware *** PureOS - Debian based - FSF endorsement - Runs currently on Purism's laptops - Rolling distribution # Thinks I tend to forget # https://orgmode.org/manual/Handling-links.html # # Local Variables: # org-src-preserve-indentation: t # End: