<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Maemo Leste</title><link href="https://maemo-leste.github.io/" rel="alternate"></link><link href="https://maemo-leste.github.io/feeds/all.atom.xml" rel="self"></link><id>https://maemo-leste.github.io/</id><updated>2025-11-08T23:00:00+01:00</updated><entry><title>Maemo Leste - 2025 Daedalus release</title><link href="https://maemo-leste.github.io/maemo-leste-2025-daedalus-release.html" rel="alternate"></link><published>2025-11-08T23:00:00+01:00</published><updated>2025-11-08T23:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2025-11-08:/maemo-leste-2025-daedalus-release.html</id><summary type="html">&lt;p&gt;It's been way too long since our last update, but many things have changed in
the meantime. We've:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;released Maemo Leste for Devuan Daedalus (Debian Bookworm);&lt;/li&gt;
&lt;li&gt;received funding from NLnet (through the &lt;tt class="docutils literal"&gt;NGI0 Commons Fund&lt;/tt&gt;)&lt;/li&gt;
&lt;li&gt;added support for Qt6;&lt;/li&gt;
&lt;li&gt;added more extras packages;&lt;/li&gt;
&lt;li&gt;improved the chat and browser application significantly …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;It's been way too long since our last update, but many things have changed in
the meantime. We've:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;released Maemo Leste for Devuan Daedalus (Debian Bookworm);&lt;/li&gt;
&lt;li&gt;received funding from NLnet (through the &lt;tt class="docutils literal"&gt;NGI0 Commons Fund&lt;/tt&gt;)&lt;/li&gt;
&lt;li&gt;added support for Qt6;&lt;/li&gt;
&lt;li&gt;added more extras packages;&lt;/li&gt;
&lt;li&gt;improved the chat and browser application significantly;&lt;/li&gt;
&lt;li&gt;added a CI/CD to our Forgejo instance;&lt;/li&gt;
&lt;li&gt;improved the Nokia N900 support;&lt;/li&gt;
&lt;li&gt;improved ofono (modem) support for the mapphones (Motorola Droids) and Nokia N900&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;and much more...&lt;/p&gt;
&lt;div class="section" id="funding"&gt;
&lt;h2&gt;Funding&lt;/h2&gt;
&lt;p&gt;Maemo Leste &lt;a class="reference external" href="https://nlnet.nl/project/MaemoLeste-AppArmour/"&gt;has received funding from NLNet&lt;/a&gt; as part of the &lt;tt class="docutils literal"&gt;NGI0 Commons
Fund&lt;/tt&gt; to continue improving our system!&lt;/p&gt;
&lt;p&gt;In particular, the following tasks have received funding:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/milestone/41?state=all"&gt;Conversations improvements&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/issues/751"&gt;Porting extras packages to Daedalus&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/milestone/42?state=all"&gt;Support Qt6 next to Qt5&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/milestone/43?state=all"&gt;Forgejo CI/CD with extras integration in particular&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/milestone/37?state=all"&gt;Porting Maemo Leste to Excalibur/Trixie&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/milestone/39?state=all"&gt;AppArmor support in Maemo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/milestone/38?state=all"&gt;Integrate and switch to Geoclue in Maemo Leste&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/milestone/40?state=all"&gt;Port Maemo Leste to additional devices&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="daedalus"&gt;
&lt;h2&gt;Daedalus&lt;/h2&gt;
&lt;p&gt;We ported Maemo Leste to Devuan Daedalus (Debian bookworm) some time ago (see &lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/issues/751"&gt;issue
#571&lt;/a&gt;) and silently
switched our images over to this release. At the time we were caught up
on Debian stable, but as of writing of this post, Debian bookworm is now old
stable again. One of our priorities is to switch to Devuan Excalibur (Debian
Trixie) soon, so that we are on Debian stable.&lt;/p&gt;
&lt;p&gt;It has taken us while but we are slowly catching up to the Debian release
cycles - these things take time because we have to port our packages to newer
libraries and code, and when we started Maemo Leste we were targetting a
distribution that was then already olstable.&lt;/p&gt;
&lt;p&gt;As part of the upgrade to Daedalus, we:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;ported our media application framework &lt;a class="reference external" href="https://git.maemo.org/leste/mafw-tracker-source/commit/c0e38e4eb46e2aa2492bfedb983956bb50c4b79d"&gt;to use Tracker 3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;rebased our Xorg patches on the debian xorg&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/dependency-resolver"&gt;wrote a piece of software&lt;/a&gt;
to figure out in what order to build our packages in
Jenkins, as this historically has been somewhat of a challenge&lt;/li&gt;
&lt;li&gt;Decreased the number of upstream software that we had to fork, as our patches
made it upstream in some cases&lt;/li&gt;
&lt;li&gt;migrate away from python2 in &lt;a class="reference external" href="https://git.maemo.org/leste/maemo-system-services/commit/4fc8f17d9dfb55eacc573be856054f18e3e08961"&gt;icd2 module management&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Switched to a newer upstream upower version which contains &lt;a class="reference external" href="https://git.maemo.org/leste-upstream-forks/upower/commit/1df483b7608fcdd8e69b9968fe85b42a112cab18"&gt;most of our patches&lt;/a&gt;;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The actual set of changes is much larger and can be seen in &lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/issues/751"&gt;issue #571&lt;/a&gt;.&lt;/p&gt;
&lt;div class="section" id="jenkins-and-versioning"&gt;
&lt;h3&gt;Jenkins and Versioning&lt;/h3&gt;
&lt;p&gt;When we first made the &lt;tt class="docutils literal"&gt;chimaera&lt;/tt&gt; release, we made a mistake in how we version
the packages, normally our packages end in something like: &lt;tt class="docutils literal"&gt;+4m7&lt;/tt&gt; - which means
&amp;quot;distribution release 4,  Maemo 7&amp;quot;. In the &lt;tt class="docutils literal"&gt;chimaera&lt;/tt&gt; case, the &lt;tt class="docutils literal"&gt;4&lt;/tt&gt; felloff.
Unfortunately in Debian packaging versioning this means that the &lt;tt class="docutils literal"&gt;chimaera&lt;/tt&gt;
versions without this one-digit prefix always take precendence over the packages
with this additional prefix. In an attempt to make dist-upgrading possible, we &lt;a class="reference external" href="https://git.maemo.org/leste/leste-config/commit/4c4de8c405f3ce5a10e35d1d16b5f76de9f7215e"&gt;added a file
to apt.preferences.d&lt;/a&gt; that gives the packages &lt;tt class="docutils literal"&gt;daedalus&lt;/tt&gt; release repository a
higher priority than the &lt;tt class="docutils literal"&gt;chimaera&lt;/tt&gt; ones. We &lt;a class="reference external" href="https://git.maemo.org/leste/jenkins-integration/commit/8e6c21127e46c9975ab985dab699f50b3dc50027"&gt;also fixed the problem in Jenkins&lt;/a&gt;
although this doesn't really matter at this point, as the chimaera versions are
already problematic.&lt;/p&gt;
&lt;p&gt;This &lt;a class="reference external" href="https://git.maemo.org/leste/jenkins-integration/commit/9802ed8e969ac209f2358d1f04683556423fb5eb"&gt;commit to jenkins-integration&lt;/a&gt;
adds the proper versioning for Daedalus and we also fixed some IRC integration
script for packages that are only built for one architecture in &lt;a class="reference external" href="https://git.maemo.org/leste/jenkins-integration/commit/b00ad4d9070861413fcc5f915272ebd58157dd4f"&gt;commit b00ad4d9&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="dist-upgrading"&gt;
&lt;h3&gt;dist-upgrading&lt;/h3&gt;
&lt;p&gt;As always, installing a &lt;tt class="docutils literal"&gt;daedalus&lt;/tt&gt; image is the easiest way to get up to date,
but it is possible to dist-upgrade from &lt;tt class="docutils literal"&gt;chimaera&lt;/tt&gt; to &lt;tt class="docutils literal"&gt;daedalus&lt;/tt&gt;, but one has to
ensure that the repositories in &lt;tt class="docutils literal"&gt;/etc/apt/sources.list&lt;/tt&gt; and
&lt;tt class="docutils literal"&gt;/etc/apt/sources.list.d/*&lt;/tt&gt; have their &lt;tt class="docutils literal"&gt;chimaera&lt;/tt&gt; references removed. Make sure
you're fully up to date on &lt;tt class="docutils literal"&gt;chimaera&lt;/tt&gt; first.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="core"&gt;
&lt;h2&gt;Core&lt;/h2&gt;
&lt;p&gt;Various core applications and daemons have seen improvements and fixes.&lt;/p&gt;
&lt;div class="section" id="browser-jib"&gt;
&lt;h3&gt;Browser (jib)&lt;/h3&gt;
&lt;p&gt;Jib now has full-support for the virtual keyboard, so that this browser is also usable
from devices with no hardware keyboard. In addition, we've improved the built-in
adblocker, so it does not block benign resources.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="calendar"&gt;
&lt;h3&gt;Calendar&lt;/h3&gt;
&lt;p&gt;We've fixed the vertical alignment in the month display for the calendar, see
&lt;a class="reference external" href="https://git.maemo.org/leste/qalendar/pulls/1"&gt;qalendar/pulls/1&lt;/a&gt;.&lt;/p&gt;
&lt;img alt="" src="/images/qalendar-vertical-alignment.png" style="width: 531px; height: 407px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="ntp"&gt;
&lt;h3&gt;ntp&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;sicelo&lt;/tt&gt; made it such that we when we fetch the time over NTP, we also
synchronise it to our hardware clock, see &lt;a class="reference external" href="https://git.maemo.org/leste/leste-config/pulls/61"&gt;leste-config/pulls/61&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="conversations"&gt;
&lt;h3&gt;Conversations&lt;/h3&gt;
&lt;p&gt;Conversations has received a lot of attention - bringing you new, and exciting
features for our Daedalus release.&lt;/p&gt;
&lt;div class="section" id="maemo-fi-cation"&gt;
&lt;h4&gt;Maemo-fi-cation&lt;/h4&gt;
&lt;p&gt;Conversations now uses more UI components (and paradigms) from Fremantle.&lt;/p&gt;
&lt;p&gt;The settings and about page were moved to a popup.&lt;/p&gt;
&lt;img alt="" src="/images/conv_settings.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;We are now also using a dialog for the contact picker (Compose new message).&lt;/p&gt;
&lt;p&gt;The maemo-fi-cation of our UI is still on-going, and will be expanded with more
Maemo components in the future.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="improved-tableview"&gt;
&lt;h4&gt;Improved tableview&lt;/h4&gt;
&lt;p&gt;We have various places where messages are listed: the overview (the first screen), search window, and the groupchat
memberlist window. Code-wise, we are now using the same table everywhere.&lt;/p&gt;
&lt;p&gt;In addition, we improved this table's sorting, avatar/presence visualization, , and made table updates more performant.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="ux-improvements"&gt;
&lt;h4&gt;UX improvements&lt;/h4&gt;
&lt;p&gt;When writing a long message, the input box now dynamically grows according to input.&lt;/p&gt;
&lt;img alt="" src="/images/conv_expand.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;The QML interface has been reworked to be more responsive. This was already
the case, but there was still the occasional clipping bug.&lt;/p&gt;
&lt;p&gt;In portrait, everything now properly scales, and adjusts:&lt;/p&gt;
&lt;img alt="" src="/images/conv_responsive.png" style="width: 324px; height: 576px;" /&gt;
&lt;p&gt;Some other improvements related to the chat window are:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Improved 'bottom pinning' on incoming messages&lt;/li&gt;
&lt;li&gt;Support key combination shift+enter to introduce a newline whilst 'auto-send on ENTER' is enabled&lt;/li&gt;
&lt;li&gt;Set focus directly after sending a message&lt;/li&gt;
&lt;li&gt;Optional shader for chat bubble backgrounds, similar to a well-known chat application&lt;/li&gt;
&lt;li&gt;Optional shader for the background: matrix falling rain&lt;/li&gt;
&lt;/ul&gt;
&lt;img alt="" src="/images/conv_matrix.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="slim-mode"&gt;
&lt;h4&gt;Slim mode&lt;/h4&gt;
&lt;p&gt;Conversations is designed to run on low-powered devices, with possibly old(er) hardware. As such,
conversations is written in C++, and leverages various tricks to keep memory usage low, and performance fast.&lt;/p&gt;
&lt;p&gt;While the regular QML interface is already minimal in terms of resource usage, we have introduced 'slim'
mode for a minimalistic, alternative QtWidgets based interface. This can be enabled in the settings.&lt;/p&gt;
&lt;p&gt;Since Conversation's core logic was already separate from presentation, supporting this alternative interface
required minimal changes.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="attachments"&gt;
&lt;h4&gt;Attachments&lt;/h4&gt;
&lt;p&gt;We now parse incoming and outgoing links, and render these links depending on their
content type. In the case of XMPP, when someone sends a picture - this is generally just a
link to a &lt;tt class="docutils literal"&gt;.jpg&lt;/tt&gt;. Conversations now renders them inline.&lt;/p&gt;
&lt;p&gt;Additionally there is also an image viewer that supports gestures like panning,
and zooming to further inspect incoming media.&lt;/p&gt;
&lt;p&gt;By default, this feature is off for privacy reasons (as to prevent auto-visiting
weblinks sent by a counterparty), but can
be turned on in the settings.&lt;/p&gt;
&lt;img alt="" src="/images/conv_attachment2.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="address-book-integration"&gt;
&lt;h4&gt;Address book integration&lt;/h4&gt;
&lt;p&gt;Our initial address book integration introduced features like avatars and
display names. We've now expanded this to also support 'master contacts'.&lt;/p&gt;
&lt;p&gt;Master contacts unify contacts from multiple sources such as XMPP, Matrix, and
SMS into a single contact.&lt;/p&gt;
&lt;p&gt;By keeping contact management (osso-abook) and messaging (Conversations)
separate, Maemo ensures that the address book integrates across the entire
system. This allows applications to share a consistent, unified view of contacts
while keeping the messaging layer focused on communication.&lt;/p&gt;
&lt;p&gt;Additionally, the code responsible for interacting with the address book has
seen major improvements, resulting in better performance.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="channel-member-list"&gt;
&lt;h4&gt;Channel member list&lt;/h4&gt;
&lt;p&gt;Groupchats now expose a memberlist, from which you can start a private
conversation with a contact.&lt;/p&gt;
&lt;img alt="" src="/images/conv_memberlist.png" style="width: 324px; height: 576px;" /&gt;
&lt;p&gt;Since the memberlist could be quite long, it has the ability to filter for
specific names.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="qt5"&gt;
&lt;h3&gt;Qt5&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Sander&lt;/tt&gt; has made it so that the Hildon Input Method (HIM) now works well in
Qt, which means that devices without keyboard have access to a usable virtual
keyboard. This work can be found in &lt;a class="reference external" href="https://git.maemo.org/leste/qt-input-maemo"&gt;leste/qt-input-maemo&lt;/a&gt; and is very exciting.&lt;/p&gt;
&lt;p&gt;Additionally, the qt menu is now always shown properly (see &lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/issues/563"&gt;issue #563&lt;/a&gt;).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="qt6-platform-plugins"&gt;
&lt;h3&gt;Qt6 platform plugins&lt;/h3&gt;
&lt;p&gt;Leste has various Qt plugins to make Qt applications integrate with the
operating system. These change the look, and behavior of Qt applications, and
make them more suitable for e.g. touchscreen devices.&lt;/p&gt;
&lt;p&gt;Qt6 is the new Qt version, so the various plugins needed a migration to this new
version.&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Each had their qmake converted to CMake, in order for better integration with existing IDEs&lt;/li&gt;
&lt;li&gt;Each are now separate repositories to make development more focussed, and accessible&lt;/li&gt;
&lt;li&gt;Each now have a Qt GUI example application - handy for testing any changes made to the plugin in question&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We are happy to report Qt6 applications now also integrate into Maemo, just like
our Qt5 applications do.&lt;/p&gt;
&lt;div class="section" id="qt6-input-maemo"&gt;
&lt;h4&gt;qt6-input-maemo&lt;/h4&gt;
&lt;p&gt;This the keyboard integration, including the virtual keyboard. Since our Qt5
version was already using modern Qt (having been ported from Qt4 only recently),
minimal changes where needed to get this working on Qt6, see &lt;a class="reference external" href="https://git.maemo.org/leste/qt6-input-maemo"&gt;qt6-input-maemo&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="qt6-qpa-maemo"&gt;
&lt;h4&gt;qt6-qpa-maemo&lt;/h4&gt;
&lt;p&gt;This plugin is responsible for integrating with xcb/x11, and offers glx (opengl)
and egl (opengles) backends for hardware acceleration. It also deals with things
like drag &amp;amp; drop, and clipboard. Porting this was somewhat challenging due to Qt
plugin infrastructure changes, as well as debugging hardware acceleration on the
various devices we support, see &lt;a class="reference external" href="https://git.maemo.org/leste/qt6-qpa-maemo/"&gt;qt6-qpa-maemo&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="qt6-maemo-widgets"&gt;
&lt;h4&gt;qt6-maemo-widgets&lt;/h4&gt;
&lt;p&gt;This plugin provides additional Maemo components (widgets) for Qt, like
&lt;cite&gt;QMaemo5InformationBox&lt;/cite&gt;, &lt;cite&gt;QMaemo5DatePickSelector&lt;/cite&gt;, see &lt;a class="reference external" href="https://git.maemo.org/leste/qt6-maemo-widgets"&gt;qt6-maemo-widgets&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Previously part of the plugin, this is now a shared library that produces a
pkgconfig, and CMake config for other Qt apps to consume.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="qt6-style-maemo"&gt;
&lt;h4&gt;qt6-style-maemo&lt;/h4&gt;
&lt;p&gt;This plugin deals with how Qt applications look. For example, when this plugin
is active, a &lt;cite&gt;QButton&lt;/cite&gt; is replaced by a GTK button at runtime. It does so by
painting GTK widgets off screen and use that to figure out what the Qt widgets
should look like.
This plugin also handles spacing, size hints, and color palettes. Due to Qt
plugin infrastructure changes, this was somewhat time consuming to migrate, see
&lt;a class="reference external" href="https://git.maemo.org/leste/qt6-style-maemo/"&gt;qt6-style-maemo&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="sphone"&gt;
&lt;h3&gt;sphone&lt;/h3&gt;
&lt;p&gt;Our dialer software has also seen some improvements:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;The default ringtones are now ogg files (&lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/issues/767"&gt;issue #767&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;There is a more clear indication when a call has ended (&lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/issues/727"&gt;issue #727&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="osso-xterm"&gt;
&lt;h3&gt;osso-xterm&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;thp&lt;/tt&gt; contributed a bunch of changes to the terminal application:&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/osso-xterm/pulls/5"&gt;osso-xterm/pulls/5&lt;/a&gt; tidies up
the preference UI. As mentioned in the pull request:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Preview prominently visible at the top&lt;/li&gt;
&lt;li&gt;Font selection hidden behind a button/dialog&lt;/li&gt;
&lt;li&gt;Color scheme presets (Black-on-white, White-on-black, ...)&lt;/li&gt;
&lt;li&gt;Custom color scheme with working preview buttons&lt;/li&gt;
&lt;li&gt;Use color picker from Hildon Extras&lt;/li&gt;
&lt;li&gt;Remove &amp;quot;Reverse&amp;quot; option (it just swaps fg/bg color)&lt;/li&gt;
&lt;li&gt;Make scrollback a picker instead of a text field&lt;/li&gt;
&lt;li&gt;Make it clearer what the hardware keys option does&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/osso-xterm/pulls/6"&gt;osso-xterm/pulls/6&lt;/a&gt; removes some obsolete code and &lt;a class="reference external" href="https://git.maemo.org/leste/osso-xterm/pulls/7shlibdepsusage"&gt;osso-xterm/pulls/7&lt;/a&gt; fixes a typo in the debian control file.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/osso-xterm/pulls/8"&gt;osso-xterm/pulls/8&lt;/a&gt;
re-organises the toolbar buttons and moves the fullscreen button all the way to
the right, which is more consistent with other Maemo applications.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://git.maemo.org/leste/osso-xterm/pulls/9"&gt;osso-xterm/pulls/9&lt;/a&gt; fixes
behaviour where menu buttons would sometimes move around, by placing the &amp;quot;Copy&amp;quot;
and &amp;quot;Paste&amp;quot; buttons after the &amp;quot;Reset&amp;quot; and &amp;quot;Reset and Clear&amp;quot; buttons.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="connui-cellular"&gt;
&lt;h3&gt;connui-cellular&lt;/h3&gt;
&lt;p&gt;We have made it such that the icons for 2.5G and 3.5G now show up correctly, see &lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/issues/745"&gt;issue 745&lt;/a&gt; and &lt;a class="reference external" href="https://git.maemo.org/leste/connui-cellular/pulls/3"&gt;connui-cellular/pulls/3&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="hildon-input-method"&gt;
&lt;h3&gt;hildon input method&lt;/h3&gt;
&lt;p&gt;User &lt;tt class="docutils literal"&gt;thp&lt;/tt&gt; has improving the settings for the hildon input method in
&lt;a class="reference external" href="https://git.maemo.org/leste/hildon-input-method-plugins/pulls/5"&gt;hildon-input-method-plugins/pulls/5&lt;/a&gt; by making it
possible to configure the hardware key long press action: so that one can either
have keys repeat or change the key to the special symbol of said key.&lt;/p&gt;
&lt;div class="section" id="theming-for-programs-started-over-ssh"&gt;
&lt;h4&gt;Theming for programs started over ssh&lt;/h4&gt;
&lt;p&gt;In &lt;a class="reference external" href="https://git.maemo.org/leste/osso-af-startup/issues/3"&gt;osso-af-startup/issues/3&lt;/a&gt; user &lt;tt class="docutils literal"&gt;thp&lt;/tt&gt; documented
why the theming did not work well when starting programs over &lt;tt class="docutils literal"&gt;ssh&lt;/tt&gt;, and this
has now been fixed.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="hardware-drivers"&gt;
&lt;h2&gt;Hardware &amp;amp; Drivers&lt;/h2&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;p&gt;The Nokia N900 has seen a fair number of changes:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;the proximity sensor is now exposed over IIO, see &lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/issues/134"&gt;issue #134&lt;/a&gt; and
&lt;a class="reference external" href="https://git.maemo.org/leste/hildon-meta-core/pulls/1"&gt;hildon-meta-core/pulls/1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The headset microphone has been added in the HiFi profile, see
&lt;a class="reference external" href="https://git.maemo.org/leste/leste-config/pulls/51"&gt;leste-config/pulls/51&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The module blacklist has been updated, see &lt;a class="reference external" href="https://git.maemo.org/leste/leste-config/pulls/58"&gt;leste-config/pulls/58&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The wifi mac address is now properly read from libcal, see
&lt;a class="reference external" href="https://git.maemo.org/leste/leste-config/pulls/56"&gt;leste-config/pulls/56&lt;/a&gt;
and &lt;a class="reference external" href="https://git.maemo.org/leste/wl1251-cal/pulls/1"&gt;wl1251-cal/pulls/1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="motorola-droid-4"&gt;
&lt;h3&gt;Motorola Droid 4&lt;/h3&gt;
&lt;p&gt;The mapphones (Motorola Droid 4, Motorola Bionic, Motorola Droid RAZR, Motorola
Droid 3, Motorola Atrix 2, various xoom/xyboard tablets), received significant
improvements. In particular, the cellular stack (in the form of ofono) has seen
various improvements, improving the stability of the cellular stack and reducing
the amount of custom code by &lt;a class="reference external" href="https://git.maemo.org/leste-upstream-forks/ofono/commit/058db24b7201ce7f087d5c4ea38937d28d52c999"&gt;migrating to QMI from custom AT commands&lt;/a&gt;
and moving to ofono 2.12.&lt;/p&gt;
&lt;p&gt;In &lt;a class="reference external" href="https://git.maemo.org/leste-upstream-forks/droid4-linux/pulls/12"&gt;droid4-linux/pulls/12&lt;/a&gt; and
&lt;a class="reference external" href="https://git.maemo.org/leste-upstream-forks/droid4-linux/pulls/13"&gt;droid4-linux/pulls/13&lt;/a&gt; &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt;
and &lt;tt class="docutils literal"&gt;sicelo&lt;/tt&gt; improved the bq2415x charger event reporting from the kernel to
userspace.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone"&gt;
&lt;h3&gt;Pinephone&lt;/h3&gt;
&lt;p&gt;Display brightness now correctly adjusts according to the user
setting. Previously, devices with large ranges of brightness values (like the
Pinephone) did not quite work well with our existing brightness adjusting logic.&lt;/p&gt;
&lt;p&gt;We're also working on updating our pinephone kernel to a more recent version
with better support, performance and power management user &lt;tt class="docutils literal"&gt;norayr&lt;/tt&gt; has been
working on this.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="mz617-tablet"&gt;
&lt;h3&gt;MZ617 tablet&lt;/h3&gt;
&lt;p&gt;The Motorola MZ617 tablet also saw improvements to its audio in &lt;a class="reference external" href="https://git.maemo.org/leste/leste-config/pulls/54"&gt;leste-config/pulls/54&lt;/a&gt; and &lt;a class="reference external" href="https://git.maemo.org/leste/leste-config/pulls/55"&gt;leste-config/pulls/55&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="extras"&gt;
&lt;h2&gt;Extras&lt;/h2&gt;
&lt;div class="section" id="hamsterfiler"&gt;
&lt;h3&gt;hamsterfiler&lt;/h3&gt;
&lt;p&gt;Hamsterfiler, a file browser, now adjusts to varying resolutions, making the
interface more responsive.&lt;/p&gt;
&lt;img alt="" src="/images/hamsterfiler.png" style="width: 324px; height: 576px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="crazyparking"&gt;
&lt;h3&gt;crazyparking&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;thp&lt;/tt&gt; helped us bring crazyparking to Leste - a top-down puzzle game that challenges
players to navigate interesting parking scenarios.&lt;/p&gt;
&lt;img alt="" src="/images/parking.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="forgejo"&gt;
&lt;h2&gt;Forgejo&lt;/h2&gt;
&lt;p&gt;We &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-forgejo-migration.html"&gt;migrated away from Github to Forgejo&lt;/a&gt; and now run our own Git forge on
&lt;tt class="docutils literal"&gt;git.maemo.org&lt;/tt&gt;. This in turn has made it easier for us customise our Git
forge.&lt;/p&gt;
&lt;div class="section" id="code-search"&gt;
&lt;h3&gt;Code search&lt;/h3&gt;
&lt;p&gt;Full text code search is enabled on &lt;tt class="docutils literal"&gt;git.maemo.org&lt;/tt&gt;, which makes it very easy to
quickly search our entire codebase.&lt;/p&gt;
&lt;p&gt;We have been working with the Forgejo developers to add the option to enable and
disable the code indexer per repository, as we want to avoid indexing our
various Linux repositories, you can track this work on &lt;a class="reference external" href="https://codeberg.org/forgejo/forgejo/pulls/8106"&gt;forgejo/pulls/8106&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="translations-with-weblate"&gt;
&lt;h3&gt;Translations with weblate&lt;/h3&gt;
&lt;p&gt;Pushing updates from weblate to our &lt;tt class="docutils literal"&gt;l10n&lt;/tt&gt; repositories was broken after the
migration from Forgejo to Github - this has now been resolved with translations
being pushed directly to our &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;git.maemo.org/leste-translations&lt;/span&gt;&lt;/tt&gt; repositories.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="continous-integration"&gt;
&lt;h3&gt;Continous integration&lt;/h3&gt;
&lt;p&gt;Historically Maemo Leste has used Jenkins for all its package building, which
has been a bit complex to manage permissions on and add packages to. So we have
been working on adding a CI system using Forgejo which allows us to
automatically.  The Forgejo CI system is similar to 'Github Actions', and we
currently:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;build a package for every commit that gets pushed;&lt;/li&gt;
&lt;li&gt;deploy extras packages to the &lt;a class="reference external" href="https://git.maemo.org/leste-extras/-/packages"&gt;extras-testing&lt;/a&gt; repository on Forgejo. This
repository is present on the devices but disabled by default.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As a result, community members can now push out updates of their own software
more easily - and even automatically to the &lt;a class="reference external" href="https://git.maemo.org/leste-extras/-/packages"&gt;extras-testing&lt;/a&gt; repository. The
&lt;a class="reference external" href="https://git.maemo.org/leste-extras/-/packages"&gt;extras-testing&lt;/a&gt; repository is available in the Hildon Application Manager, but
disabled by default.&lt;/p&gt;
&lt;p&gt;We have set up runners for &lt;tt class="docutils literal"&gt;amd64&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;armhf&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;arm64&lt;/tt&gt;, so these runners
are all available to the CI/CD. Below is an example page of actions ran on the
&lt;tt class="docutils literal"&gt;maemo/daedalus&lt;/tt&gt; branch, which will build packages automatically for the
daedalus testing repository.&lt;/p&gt;
&lt;img alt="" src="/images/actions.png" /&gt;
&lt;p&gt;The screenshot below shows the build status of various packages on the &lt;a class="reference external" href="https://git.maemo.org/org/leste-extras/dashboard"&gt;Forgejo
extras dashboard&lt;/a&gt;.&lt;/p&gt;
&lt;img alt="" src="/images/issue-897-screenshot.png" /&gt;
&lt;div class="section" id="workflows"&gt;
&lt;h4&gt;Workflows&lt;/h4&gt;
&lt;p&gt;The CI mentioned just above is powered by our newly developed
&lt;a class="reference external" href="https://git.maemo.org/leste-cicd/forgejo-workflows"&gt;leste-cicd/forgejo-workflows&lt;/a&gt; repository, which
contains two actions:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste-cicd/forgejo-workflows/src/branch/master/.forgejo/workflows/maemo-entry.yml"&gt;maemo-entry.yml&lt;/a&gt;: a resuable action which builds a package for each
architecture and uploads them if they are in &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;leste-extras&lt;/span&gt;&lt;/tt&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.maemo.org/leste-cicd/forgejo-workflows/src/branch/master/maemo-build/action.yml"&gt;maemo-build/action.yml&lt;/a&gt;: composite action that builds a package&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The uploading of the packages into our Forgejo extras debian registry is done
using our custom &lt;a class="reference external" href="https://git.maemo.org/leste-cicd/include-artifact"&gt;leste-cicd/include-artifact&lt;/a&gt; action.&lt;/p&gt;
&lt;p&gt;Further details on the extras workflow can be found in &lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/issues/798"&gt;issue #798&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="container-base-images"&gt;
&lt;h4&gt;Container base images&lt;/h4&gt;
&lt;p&gt;Forgejo actions typically suggest using a specific runner, which come
preinstalled with Node.js and a bunch of other programs. We opted instead to build
our own base devuan images with our &lt;a class="reference external" href="https://git.maemo.org/leste-cicd/devuan-base-containers"&gt;leste-cicd/devuan-base-containers&lt;/a&gt; repository. We've
built images for &lt;tt class="docutils literal"&gt;chimaera&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;daedalus&lt;/tt&gt; and the freshly released &lt;tt class="docutils literal"&gt;excalibur&lt;/tt&gt;
release.&lt;/p&gt;
&lt;img alt="" src="/images/leste-cicd-container-registry.png" /&gt;
&lt;p&gt;Certain Forgejo actions normally require Node.js, but we decided not to leverage
that and instead using a Forgejo action written in shell, see
&lt;a class="reference external" href="https://git.maemo.org/leste-cicd/checkout-action-nojs"&gt;leste-cicd/checkout-action-nojs&lt;/a&gt; (forked
from &lt;a class="reference external" href="https://github.com/taiki-e/checkout-action"&gt;taiki-e/checkout-action&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We created a custom action that uploads artifacts without requiring Node.js in
this repository: &lt;a class="reference external" href="https://git.maemo.org/leste-cicd/upload-artifact-nojs"&gt;leste-cicd/upload-artifact-nojs&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="future-work"&gt;
&lt;h4&gt;Future work&lt;/h4&gt;
&lt;p&gt;We will continue to develop our CI/CD system to make it easier to contribute to
Maemo Leste. In particular, we're looking to:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;ensure that our CI/CD deals better with packages that are meant only to be
built for a specific architecture&lt;/li&gt;
&lt;li&gt;contribute to Forgejo to make it easier for other projects to set up similar
CI/CD setups&lt;/li&gt;
&lt;li&gt;ensure our CI/CD build-on-commit coverage extends to all our core packages&lt;/li&gt;
&lt;li&gt;we can build device images in our CI/CD as opposed to in Jenkins by leveraging
debos&lt;/li&gt;
&lt;li&gt;Provide better integration with our Weblate translation setup&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="bugtracker-issues"&gt;
&lt;h3&gt;Bugtracker / issues&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Sander&lt;/tt&gt; utilised a &lt;a class="reference external" href="https://git.maemo.org/sanderfoobar/LesteIssueLabels#mass-label-leste-bugtracker-issues"&gt;local LLM&lt;/a&gt;
to tag all of the issues in our bugtracker.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="website-redesign"&gt;
&lt;h2&gt;Website redesign&lt;/h2&gt;
&lt;p&gt;Our website has a fresh new look. The homepage is now clean, concise, and
clearly communicates our mission: provide a FOSS Linux distribution for mobile
devices.&lt;/p&gt;
&lt;p&gt;We've kept it lightweight, no fancy CMS, no cookies, just statically generated
content.&lt;/p&gt;
&lt;p&gt;See &lt;a class="reference external" href="https://git.maemo.org/leste/maemo-leste.github.io/pulls/23"&gt;maemo-leste.github.io/pulls/23&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="image-building"&gt;
&lt;h2&gt;Image building&lt;/h2&gt;
&lt;div class="section" id="debos"&gt;
&lt;h3&gt;Debos&lt;/h3&gt;
&lt;p&gt;We're looking to modernise our image building process to make it easier to port
Maemo Leste to other devices. &lt;tt class="docutils literal"&gt;erebion&lt;/tt&gt; has made a start on utiling the debos
recipies as used to Mobian and adopting them for Maemo. We've been building on
his work and almost have bootable images for the Droid 4, which would be a great
milestone. The current changeset can be found in &lt;a class="reference external" href="https://git.maemo.org/MerlijnWajer/mobian-recipes"&gt;MerlijnWajer/mobian-recipes&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="raspberry-pi-images"&gt;
&lt;h3&gt;Raspberry Pi images&lt;/h3&gt;
&lt;p&gt;We're working in getting the Raspberry Pi images to build again. Currently minor
manual modifications are required to get the latest raspberry images to boot, as
documented in &lt;a class="reference external" href="https://git.maemo.org/leste/bugtracker/issues/758"&gt;issue #758&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="what-s-next"&gt;
&lt;h2&gt;What's next&lt;/h2&gt;
&lt;p&gt;Devuan recently released their version of Debian Trixie coined &lt;a class="reference external" href="https://www.devuan.org/os/announce/excalibur-release-announce-2025-11-02"&gt;Excalibur&lt;/a&gt; and
we are looking to rebase Maemo Leste onto this release soon. Moving to Excalibur
will probably mean we will move to Qt6 and towards Pipewire - away from
Pulseaudio.&lt;/p&gt;
&lt;p&gt;Adding support for more devices is something we're also aiming to do soon - both
in terms of developer single board computers (like the Raspberry Pi and Olimex
OLinuXino devices) as well as actual phones and tablets. The developer single
board computers will make it easier for folks to develop and contribute (phones
do not always make for nice development devices)&lt;/p&gt;
&lt;p&gt;We're also looking to seriously improve our developer documentation - how to
port and/or contribute packages, how to port Maemo Leste to new devices, how to
debug problems and so forth.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you have questions, are interested in specifics or helping out, or wish to
have a specific package ported, please see our bugtracker.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay
up to date, ask questions and/or help out. Another great way to get in touch is
to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join our effort!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="daedalus"></category><category term="forgejo"></category></entry><entry><title>A deep dive into building Maemo Leste packages on Forgejo</title><link href="https://maemo-leste.github.io/a-deep-dive-into-building-maemo-leste-packages-on-forgejo.html" rel="alternate"></link><published>2025-07-29T00:00:00+02:00</published><updated>2025-07-29T00:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2025-07-29:/a-deep-dive-into-building-maemo-leste-packages-on-forgejo.html</id><summary type="html">&lt;p&gt;labels = for arch and default images
jobs.*.container.image = for chimaera/daedalus/excalibur, etc&lt;/p&gt;
&lt;p&gt;misschien is er met strategy en matrix nog iets te doen&lt;/p&gt;
&lt;p&gt;01:35 &amp;lt;Wizzup&amp;gt; ik denk dat we idd wel onze eigen docker registry willen uiteindelijk
01:40 &amp;lt;Wizzup&amp;gt; om een paar redenen:
01:41 &amp;lt;Wizzup …&lt;/p&gt;</summary><content type="html">&lt;p&gt;labels = for arch and default images
jobs.*.container.image = for chimaera/daedalus/excalibur, etc&lt;/p&gt;
&lt;p&gt;misschien is er met strategy en matrix nog iets te doen&lt;/p&gt;
&lt;p&gt;01:35 &amp;lt;Wizzup&amp;gt; ik denk dat we idd wel onze eigen docker registry willen uiteindelijk
01:40 &amp;lt;Wizzup&amp;gt; om een paar redenen:
01:41 &amp;lt;Wizzup&amp;gt; we willen armhf, arm64 en amd64 images die allemaal hetzelfde hebben
01:41 &amp;lt;Wizzup&amp;gt; we willen images die onze repos er ook in hebben
01:41 &amp;lt;Wizzup&amp;gt; we willen images die ook onze verschillende cpu flags en andere flags aan hebben&lt;/p&gt;
&lt;p&gt;git clone &lt;a class="reference external" href="https://code.forgejo.org/forgejo/runner"&gt;https://code.forgejo.org/forgejo/runner&lt;/a&gt;
GOOS=linux GOARCH=arm make&lt;/p&gt;
&lt;dl class="docutils"&gt;
&lt;dt&gt;Idee:&lt;/dt&gt;
&lt;dd&gt;&lt;p class="first"&gt;Forgejo experimental repository, die ook onze stable en devel repository pulled,
en dan kunnen we met een tooltje forgejo pkgs importeren in onze main repo.
Moeten we alleen de versie selection fixen, maar dat kan best redelijk
gedaan worden volgens mij.&lt;/p&gt;
&lt;p class="last"&gt;&lt;a class="reference external" href="https://forgejo.org/docs/v1.20/user/packages/debian/"&gt;https://forgejo.org/docs/v1.20/user/packages/debian/&lt;/a&gt;&lt;/p&gt;
&lt;/dd&gt;
&lt;/dl&gt;
&lt;p&gt;&lt;a class="reference external" href="https://git.maemo.org/leste-cicd/-/packages"&gt;https://git.maemo.org/leste-cicd/-/packages&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Docker base images:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a class="reference external" href="https://git.devuan.org/paddy-hack/container-images"&gt;https://git.devuan.org/paddy-hack/container-images&lt;/a&gt;
&lt;a class="reference external" href="https://docs.docker.com/build/building/base-images/#create-a-full-image-using-tar"&gt;https://docs.docker.com/build/building/base-images/#create-a-full-image-using-tar&lt;/a&gt;
&lt;a class="reference external" href="https://forgejo.org/docs/latest/user/packages/container/"&gt;https://forgejo.org/docs/latest/user/packages/container/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;SEE &lt;a class="reference external" href="https://git.maemo.org/leste-cicd/devuan-base-containers"&gt;https://git.maemo.org/leste-cicd/devuan-base-containers&lt;/a&gt; FOR DEBOOTSTRAP AND DOCKER&lt;/p&gt;
&lt;p&gt;RESULT: &lt;a class="reference external" href="https://git.maemo.org/leste-cicd/-/packages"&gt;https://git.maemo.org/leste-cicd/-/packages&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;En dan hebben we een base-base, die kunnen we dan aanpassen met onze
changes in een Dockerfile:
* dpkg-buildflags
* onze repos
* onze repo key
* etc&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;en die dan gebruiken voor bouwen&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;dl class="docutils"&gt;
&lt;dt&gt;Secrets management:&lt;/dt&gt;
&lt;dd&gt;&lt;a class="reference external" href="https://forgejo.org/docs/v1.21/user/actions/#secrets"&gt;https://forgejo.org/docs/v1.21/user/actions/#secrets&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;p&gt;&lt;a class="reference external" href="https://forgejo.org/docs/latest/user/packages/debian/#configuring-the-package-registry"&gt;https://forgejo.org/docs/latest/user/packages/debian/#configuring-the-package-registry&lt;/a&gt;
&lt;a class="reference external" href="https://forgejo.org/docs/latest/user/packages/debian/#configuring-the-package-registry"&gt;https://forgejo.org/docs/latest/user/packages/debian/#configuring-the-package-registry&lt;/a&gt;&lt;/p&gt;
&lt;dl class="docutils"&gt;
&lt;dt&gt;Forgejo issues:&lt;/dt&gt;
&lt;dd&gt;&lt;a class="reference external" href="https://codeberg.org/forgejo/forgejo/issues/8780"&gt;https://codeberg.org/forgejo/forgejo/issues/8780&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;p&gt;Does not need node (yay)&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/taiki-e/checkout-action"&gt;https://github.com/taiki-e/checkout-action&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://git.maemo.org/MerlijnWajer/upload-artifact/"&gt;https://git.maemo.org/MerlijnWajer/upload-artifact/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a class="reference external" href="https://git.maemo.org/leste-cicd/-/packages/container/daedalus-maemo-amd64/latest"&gt;https://git.maemo.org/leste-cicd/-/packages/container/daedalus-maemo-amd64/latest&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://git.maemo.org/leste-extras/-/packages"&gt;https://git.maemo.org/leste-extras/-/packages&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://wizzup.org/protected-branches.png"&gt;https://wizzup.org/protected-branches.png&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://git.maemo.org/org/leste-extras/teams/extras-team"&gt;https://git.maemo.org/org/leste-extras/teams/extras-team&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Template repos
&lt;a class="reference external" href="https://git.maemo.org/leste-extras/template"&gt;https://git.maemo.org/leste-extras/template&lt;/a&gt;&lt;/p&gt;
&lt;dl class="docutils"&gt;
&lt;dt&gt;TODO:&lt;/dt&gt;
&lt;dd&gt;&lt;p class="first"&gt;lowered polling rates in the runner&lt;/p&gt;
&lt;p class="last"&gt;Maybe re-enable cache when we have versioned our composite actions&lt;/p&gt;
&lt;/dd&gt;
&lt;/dl&gt;
</content><category term="news"></category><category term="forgejo"></category><category term="maemo"></category><category term="leste"></category><category term="build"></category><category term="integration"></category></entry><entry><title>Maemo Leste - Forgejo migration</title><link href="https://maemo-leste.github.io/maemo-leste-forgejo-migration.html" rel="alternate"></link><published>2025-06-22T00:00:00+02:00</published><updated>2025-06-22T00:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2025-06-22:/maemo-leste-forgejo-migration.html</id><summary type="html">&lt;p&gt;With the next release of Maemo Leste imminent, we have some additional
information to share: we have moved all of our repositories from Github to
Forgejo, self hosted on &lt;a class="reference external" href="https://git.maemo.org"&gt;https://git.maemo.org&lt;/a&gt;. Our website
(&lt;a class="reference external" href="https://maemo-leste.github.io"&gt;https://maemo-leste.github.io&lt;/a&gt;) will remain hosted on Github for now.&lt;/p&gt;
&lt;p&gt;This article will discuss …&lt;/p&gt;</summary><content type="html">&lt;p&gt;With the next release of Maemo Leste imminent, we have some additional
information to share: we have moved all of our repositories from Github to
Forgejo, self hosted on &lt;a class="reference external" href="https://git.maemo.org"&gt;https://git.maemo.org&lt;/a&gt;. Our website
(&lt;a class="reference external" href="https://maemo-leste.github.io"&gt;https://maemo-leste.github.io&lt;/a&gt;) will remain hosted on Github for now.&lt;/p&gt;
&lt;p&gt;This article will discuss the changes and the motivations that lead to this
migration.&lt;/p&gt;
&lt;div class="section" id="github-values-and-forgejo"&gt;
&lt;h2&gt;Github, values and Forgejo&lt;/h2&gt;
&lt;p&gt;Maemo Leste as a project initially used Github for our code hosting. We chose
to host our code there because we believed that the 'network effect' of Github
would lower the barriers for contributions from outsiders.&lt;/p&gt;
&lt;p&gt;Since then, years have passed and we're not sure if this 'network effect' really
is that visible and important to us. Github is not open source, not
self-hostable and owned by big corporations - none of these points align with
our values. Additionally, making backups of our project on Github is a bit of a
pain.&lt;/p&gt;
&lt;p&gt;We don't know if we can rely on Github in the long term, so we have always
kept backups of our project, but Github doesn't make this very easy.&lt;/p&gt;
&lt;p&gt;We've also been trying to switch from our &lt;a class="reference external" href="https://phoenix.maemo.org"&gt;Jenkins instance&lt;/a&gt; to something more modern - and Github actions
aren't something we want to trust to build our software, for the same reason
that we don't host most of our content on the cloud.&lt;/p&gt;
&lt;p&gt;So we set out to find an alternative and we ended up choosing Forgejo.&lt;/p&gt;
&lt;div class="section" id="forgejo"&gt;
&lt;h3&gt;Forgejo&lt;/h3&gt;
&lt;p&gt;Forgejo offers just about everything that we want: it is open source and self
hosted with minimal resource requirements. Their values and goals align with
ours more so &lt;a class="reference external" href="https://forgejo.org/compare/"&gt;than the alternatives&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Forgejo also has a great migration path with support for importing repositories
from Github (including issues, milestones, open and closed pull requests) as
well as an API that makes it easy to automate the tasks.&lt;/p&gt;
&lt;p&gt;Furthermore, we are planning to try out &lt;a class="reference external" href="https://forgejo.org/docs/latest/user/actions/"&gt;Forgejo Actions&lt;/a&gt; as an alternative method to
build our packages and additionally offer continous integration services to our
developers.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="status"&gt;
&lt;h3&gt;Status&lt;/h3&gt;
&lt;p&gt;Our instance is live at &lt;a class="reference external" href="https://git.maemo.org"&gt;https://git.maemo.org&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We've currently migrated all our repositories from Github to Forgejo - and our
Forgejo is set up to push an changes to Forgejo back to Github for the
forseeable future.&lt;/p&gt;
&lt;p&gt;All our packages now pull in sources from our Forgejo rather than from Github.&lt;/p&gt;
&lt;p&gt;Account creation and login is facilitated by Oauth2 - allowing previous Github
users to easily migrate. Accounts free from Github can also be requested, but
public registration is disabled to limit the potential for abuse.&lt;/p&gt;
&lt;p&gt;Forgejo is also configured with full text code search and we're actively
&lt;a class="reference external" href="https://codeberg.org/forgejo/forgejo/pulls/8106"&gt;contributing to Forgejo&lt;/a&gt; to further enhance this functionality.&lt;/p&gt;
&lt;p&gt;Weblate integration is still lacking, as we have not figured out how to use the
hosted weblate instance to communicate directly with our Forgejo instance. We
are working on addressing this. In the meantime we will not pull in new
translations.&lt;/p&gt;
&lt;p&gt;Happy hacking!&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="forgejo"></category><category term="github"></category></entry><entry><title>Maemo Leste - 2024 Telepathy update</title><link href="https://maemo-leste.github.io/maemo-leste-2024-telepathy-update.html" rel="alternate"></link><published>2024-08-27T00:00:00+02:00</published><updated>2024-08-27T00:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2024-08-27:/maemo-leste-2024-telepathy-update.html</id><summary type="html">&lt;p&gt;It's been a good while since our last update, but not for the lack of changes -
indeed, we've been busy bees. Some of the highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Big communication (Telepathy) upgrade;&lt;/li&gt;
&lt;li&gt;Graphics rendering artifacts fixed on all mapphones;&lt;/li&gt;
&lt;li&gt;Much improved phone calls on several devices;&lt;/li&gt;
&lt;li&gt;Integration of Gnome Tracker and the Open …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;It's been a good while since our last update, but not for the lack of changes -
indeed, we've been busy bees. Some of the highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Big communication (Telepathy) upgrade;&lt;/li&gt;
&lt;li&gt;Graphics rendering artifacts fixed on all mapphones;&lt;/li&gt;
&lt;li&gt;Much improved phone calls on several devices;&lt;/li&gt;
&lt;li&gt;Integration of Gnome Tracker and the Open Media Player;&lt;/li&gt;
&lt;li&gt;Support for more devices;&lt;/li&gt;
&lt;li&gt;Improvements to our user guide and documentation;&lt;/li&gt;
&lt;li&gt;Significant changes to our browser (Jib);&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;(Also check out our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-five-year-anniversary-and-chimaera-release.html"&gt;previous update&lt;/a&gt; in case you missed it).&lt;/p&gt;
&lt;div class="section" id="hardware-drivers"&gt;
&lt;h2&gt;Hardware &amp;amp; Drivers&lt;/h2&gt;
&lt;p&gt;We have moved to a new Linux LTS release - 6.6.x and after fixing various
regressions (no call audio at all, cpu frequency issues and other instabilities)
are now in an even better spot when it comes to hardware support
through the new features brought by this Linux release - in particular for call
audio.&lt;/p&gt;
&lt;div class="section" id="graphics"&gt;
&lt;h3&gt;Graphics&lt;/h3&gt;
&lt;p&gt;We have had minor rendering bugs on the mapphone phones (Droid 4, Droid Bionic,
Droid Razr, etc) which were mostly prevalent in font rendering. This problem has
been fixed in &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/commit/9acc40b173ba4ede851f83f127e6e5c50306573b"&gt;leste-config version 1.103&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Additionally, we have improved the 16-bit mode of xf86-video-omap so that the xv
video scaling works properly. This is helpful because the Nokia N900 uses 16 bit
Xorg. We've also improved the &lt;a class="reference external" href="https://github.com/maemo-leste/xf86-video-omap/commit/4e5aead5403f4c9e594fc9c1e3b9ac5afae182ad"&gt;compositing&lt;/a&gt; as well as &lt;a class="reference external" href="https://github.com/maemo-leste/xf86-video-omap/commit/92eb692c2d1f8b743b7b56c88616f0f2e41b822d"&gt;two&lt;/a&gt; &lt;a class="reference external" href="https://github.com/maemo-leste/xf86-video-omap/commit/ace9cda2a22a4b032ff82cc6761485945fffd55c"&gt;other&lt;/a&gt; stability fixes.&lt;/p&gt;
&lt;p&gt;hildon-desktop (the Maemo window manager) also has a 30% speed improvement in
the application launcher by &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/commit/51b5a4b0cbe046bfc7cd5d4b028676344ad92bb8"&gt;calculating the saturation in the shader just once&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="connectivity"&gt;
&lt;h3&gt;Connectivity&lt;/h3&gt;
&lt;p&gt;The cellular data code has improved, particularly in the provisioning (&lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-ofono/commit/920429ada67a8ffe7a5384169a8a9ab3c28fa5a8"&gt;commit 920429ad&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-ofono/commit/ffa7b91ce39fd9e35fbf8db715ff"&gt;commit ffa7b91c&lt;/a&gt; which fix &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/555"&gt;issue
#555&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/585"&gt;issue
#585&lt;/a&gt;),
&lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-ofono/pull/1"&gt;handling a missing gateway&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-ipv4/pull/7"&gt;moving the
stack to use iproute2&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;libicd-network-wpasupplicant&lt;/span&gt;&lt;/tt&gt; now properly updates the wireless signal
strength with &lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-wpasupplicant/pull/2"&gt;libicd-network-wpasupplicant pull request #2&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We have also packaged the latest wpa_supplicant version, which would allow using
hostapd for mobile hotspots, but unfortunately this doesn't work currently with
Linux 6.6, only with Linux 6.1.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="audio-and-call-audio"&gt;
&lt;h3&gt;Audio and Call Audio&lt;/h3&gt;
&lt;p&gt;The call audio has improved a bunch both for all the mapphones and the Nokia
N900. We have also made some general audio improvements.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/maemo-audio/commit/ecbae1b12cfdfe10b3e144536a1294e534b266c1"&gt;Pulseaudio was switched to a user daemon&lt;/a&gt;
instead of a system daemon, as recommended by pulseaudio upstream.&lt;/p&gt;
&lt;p&gt;Regular audio would sometimes stop working after a phone call was made using the
device, this has now been resolved by &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/commit/1febfa7d6f7373150afad5785103734f99439ab4"&gt;reducing the shared memory of each
pulseaudio connection&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;On the mapphone devices the call audio has become a lot more stable by removing
some of the hacks we've had in the kernel previously and using the new
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;audio-graph-card2&lt;/span&gt;&lt;/tt&gt; framework in the kernel, which allows defining audio routes in a way
that we couldn't before. (The Droid 4 and other devices rely on cpcap to manage
the audio routes and requires not active ALSA connection, and we could not
express that before.). For more details check the following commits:
&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/efca4073912c3051e495f3afe40225f74a0c2dc0"&gt;commit efca4073&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/21f8cb5ab78ece3abbfeeeb4ffcea028e9dc9dbe"&gt;commit 21f8cb5a&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/80b50f94a11a016d9d33a8280640de4297717602"&gt;commit 80b50f94&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/4246f219e152042d83fb008103904ebd827ec0cb"&gt;commit 4246f219&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/8a0687ee846b311d9aca2f0065d3a34750c0b3e2"&gt;commit 8a0687ee&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;On the Nokia N900 side, voice calls were finally integrated, and call audio has
also been incrementally improved thanks to work by &lt;tt class="docutils literal"&gt;arno11&lt;/tt&gt;, with &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/48"&gt;support for headsets&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/commit/11f11dac690ee752900f144ecff809a8991d14c3"&gt;support for the earpiece&lt;/a&gt;,
which is connected on a completely separate part of the N900's codec, &lt;a class="reference external" href="https://github.com/maemo-leste/libcmtspeechdata/pull/6"&gt;8000Hz audio&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/39"&gt;better resampling&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/41"&gt;setting the proper
group for the cmt_speech node&lt;/a&gt;. In addition, further
N900 call quality audio improvements were made to libcmtspeechdata in
&lt;a class="reference external" href="https://github.com/maemo-leste/libcmtspeechdata/pull/1"&gt;libcmtspeechdata PR #1&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/libcmtspeechdata/pull/2"&gt;libcmtspeechdata PR #2&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/libcmtspeechdata/pull/4"&gt;libcmtspeechdata PR #4&lt;/a&gt;
and &lt;a class="reference external" href="https://github.com/maemo-leste/libcmtspeechdata/pull/5"&gt;libcmtspeechdata PR #5&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="miscellaneous-updates"&gt;
&lt;h3&gt;Miscellaneous updates&lt;/h3&gt;
&lt;p&gt;After moving to Linux 6.6, the cpu frequency options disappeared. We traced it
down to a regression which we have reported upstream and temporarily worked
around by making the &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/20d360a9da5a5450117ca9bcae436352c1e81bd6"&gt;cpufreq device tree platform device built in&lt;/a&gt;
(as opposed to a kernel module).&lt;/p&gt;
&lt;p&gt;Maemo Fremantle supported the feature where you could silence audible
notifications such as incoming calls, or alarms, by turning the device face-down.
This feature is now supported in Maemo Leste as well, through
&lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/61"&gt;https://github.com/maemo-leste/mce/pull/61&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/62"&gt;https://github.com/maemo-leste/mce/pull/62&lt;/a&gt;,
and &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/iio-sensor-proxy/pull/2"&gt;https://github.com/maemo-leste-upstream-forks/iio-sensor-proxy/pull/2&lt;/a&gt;. The
face-down reporting feature has also been submitted to upstream &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;iio-sensor-proxy&lt;/span&gt;&lt;/tt&gt;
and could be used for other Linux mobile distros in future.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="devices"&gt;
&lt;h2&gt;Devices&lt;/h2&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;p&gt;We have been working hard on improving the performance on the Nokia N900 and
&lt;tt class="docutils literal"&gt;sicelo&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;arno11&lt;/tt&gt; in particular have contributed many fixes.&lt;/p&gt;
&lt;p&gt;The N900 now runs in &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/44"&gt;16bit Xorg mode&lt;/a&gt; to improve the
performance of the X server. &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/pull/6"&gt;Turbo mode and overclock frequencies&lt;/a&gt; have been
added as well, allowing for a much more smooth experience. We're still trying to
find the best scheduler, as the default ondemand scheduler doesn't perform
particularly well when it comes to having a responsive device.&lt;/p&gt;
&lt;p&gt;We've also been toying with &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/50"&gt;tweaking the default hildon transitions file&lt;/a&gt; which
controls what the window manager transitions look like, which effects are used
and so on. In particular we're trying to see what the best settings will be for
a responsive device. In the process we've also been further improving the
performance of hildon-desktop.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;sicelo&lt;/tt&gt; has added support for Nokia N900's ofono to fetch &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/ofono/pull/4"&gt;extra details about
the operator&lt;/a&gt;, such as the
name. He has also fixed the issue where the N900 battery icon never hit the
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/167"&gt;fully charged state&lt;/a&gt;, which affects both the
status icon as well as the LED behaviour. This is now fixed in mce and our
kernel in &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/pull/9/commits"&gt;droid4-linux PR #9&lt;/a&gt;, and are already
upstreamed to mainline linux.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;sicelo&lt;/tt&gt; has also fixed a potential crash in &lt;a class="reference external" href="https://github.com/maemo-leste/gps-nokia-n900/pull/1"&gt;gps-nokia-n900 PR #1&lt;/a&gt; and also ensured that
the GPS date is correct since the epoch rollover in 2019 in &lt;a class="reference external" href="https://github.com/maemo-leste/gps-nokia-n900/pull/2"&gt;gps-nokia-n900 PR
#2&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Furthermore, &lt;tt class="docutils literal"&gt;sicelo&lt;/tt&gt; has also added support for the &lt;a class="reference external" href="https://gitlab.freedesktop.org/hadess/iio-sensor-proxy/-/merge_requests/375"&gt;N900 'switch-type'
proximity sensor in iio-sensor-proxy&lt;/a&gt;.
To top it off, he has also corrected the accelerometer orientation to correctly
report face up and face down in &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/pull/11"&gt;droid-linux PR #4&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;arno11&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; have also been working on infra red support,
have been ensuring that the Linux kernel wide is working and reportedly have
the &lt;a class="reference external" href="https://github.com/maemo-leste-extras/pierogi"&gt;pierogi GUI&lt;/a&gt; working on
the N900. The necessary patches will have landed in Linux 6.8, so when we move
to the next Linux LTS kernel we will have working infra red.&lt;/p&gt;
&lt;p&gt;We've also ensured that the microphone works for regular (non-call) audio
in &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/51"&gt;leste-config PR #51&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone"&gt;
&lt;h3&gt;Pinephone&lt;/h3&gt;
&lt;p&gt;We ensured that the earpiece in calls isn't too loud in &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/37"&gt;leste-config PR #37&lt;/a&gt;. Otherwise, there
haven't been that many updates to the Pinephone this time around -- but it works
well for phone calls and SMS, runs pretty stable and is fun to use with the
physical keyboard.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="mapphones"&gt;
&lt;h3&gt;Mapphones&lt;/h3&gt;
&lt;p&gt;Most of the improvements to the mapphones have been in the form of making the
audio calls work better and fixing the graphical glitches as well as by adding
new mapphone devices. One other change however is fixing the 'hidden caller id'
feature being inverted (so when one would request to be hidden it wouldn't be,
and vice versa) - this was solved in &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/ofono/pull/2"&gt;maemo-leste-upstream-forks/ofono PR #12&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="new-devices"&gt;
&lt;h3&gt;New devices&lt;/h3&gt;
&lt;p&gt;We have added images for a lot of new devices, the Motorola &lt;em&gt;RAZR XT910 and XT912&lt;/em&gt;,
the Motorola &lt;em&gt;Atrix 2&lt;/em&gt; and the XYBoard &lt;em&gt;MZ609/MZ617&lt;/em&gt; &lt;strong&gt;tablet&lt;/strong&gt;.&lt;/p&gt;
&lt;div class="section" id="razr-xt910-xt912"&gt;
&lt;h4&gt;RAZR XT910 / XT912&lt;/h4&gt;
&lt;p&gt;We now support the Motorola RAZR XT910 and XT912. Most features should just work
and the battery life is pretty decent. There is still a screen corruption bug that
we have to investigate.&lt;/p&gt;
&lt;p&gt;The relevant &lt;a class="reference external" href="https://github.com/maemo-leste/arm-sdk/commit/ae9f3c25d269a1521c670373a3a6fd88cdb14f11"&gt;arm-sdk change&lt;/a&gt;
can be found here and the &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-meta/commit/00e744a25d8e2da0aafa81087a2d71561184233e"&gt;hildon-meta change&lt;/a&gt;
can be found here. The kernel changes are more complicated and spread out over
several commits, so we would encourage interested users to look directly at our
&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/tree/maemo-6.6.y"&gt;maemo-6.6.y Linux branch&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Download the &lt;a class="reference external" href="https://maedevu.maemo.org/images/xt912/"&gt;XT912 images&lt;/a&gt; and &lt;a class="reference external" href="https://maedevu.maemo.org/images/xt910/"&gt;XT910 images&lt;/a&gt; now and give it a try if you own a
device!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="droid-3"&gt;
&lt;h4&gt;Droid 3&lt;/h4&gt;
&lt;p&gt;&lt;a class="reference external" href="https://maedevu.maemo.org/images/droid3/"&gt;Droid 3 images&lt;/a&gt; are now available.
See the &lt;a class="reference external" href="https://leste.maemo.org/Motorola_Droid_3"&gt;Droid 3 wiki page&lt;/a&gt; for more
information. There seems to be some instability when the GPU is clocked too
high, so we're looking into lowering the GPU clock speed and voltage to see if
that will get rid of the instability problems.&lt;/p&gt;
&lt;p&gt;The &lt;tt class="docutils literal"&gt;solana&lt;/tt&gt; branch of &lt;a class="reference external" href="https://github.com/MerlijnWajer/bionic-clown-boot"&gt;this bionic-clown-boot fork&lt;/a&gt; works for the Droid 3.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="atrix-2"&gt;
&lt;h4&gt;Atrix 2&lt;/h4&gt;
&lt;p&gt;&lt;a class="reference external" href="https://maedevu.maemo.org/images/bionic/"&gt;Atrix 2 images&lt;/a&gt; are now available
in the form of Bionic images - there is a lot of overlap between the two phones
which means that these images should mostly just work.&lt;/p&gt;
&lt;p&gt;The Atrix 2 seems to be the AT&amp;amp;T version of the Bionic (which used the Verizon
network). The modem seems to be on SPI instead of USB, which provides additional
challenges.&lt;/p&gt;
&lt;p&gt;We will provide more specialised images (and a wiki page with instructions) in
the near future. Make sure to downgrade to this &lt;a class="reference external" href="https://maedevu.maemo.org/images/atrix2/"&gt;Android
(InlineFlashing_Edison_67.21.125_CFC_P3_APBP.xml.zip) release&lt;/a&gt; before flashing bionic-clown-boot,
and change the installation script to store the installation not on the
&lt;tt class="docutils literal"&gt;/sdcard&lt;/tt&gt; but on &lt;tt class="docutils literal"&gt;/data/clown&lt;/tt&gt; (and create said directory). If you're
worried you might make a mistake - just wait for the wiki page to surface in the
coming weeks!&lt;/p&gt;
&lt;img alt="" src="/images/atrix2-1.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;img alt="" src="/images/atrix2-2.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="xyboard-tablets"&gt;
&lt;h4&gt;xyboard tablets&lt;/h4&gt;
&lt;p&gt;One of the more exciting device ports is the MZ608/MZ609/MZ615/MZ616/MZ617 (or
just commonly known as xoom2/xyboard tablets) port. Most of these tablets do not
come with a micro SD card slot, which posed some additional challenges to us,
since most of our device installs have always been to (micro) SD cards.&lt;/p&gt;
&lt;p&gt;The xyboard tablets come in different variants with either 16GB of storage of
32GB of storage. However, there is no way to flash Maemo Leste directly to the
data partition, so one has to install the right version of the droid4-kexecboot
and then flash the special &lt;strong&gt;mz617-tiny-bootstrap&lt;/strong&gt; image to a flashable
partition (like &lt;tt class="docutils literal"&gt;cdrom&lt;/tt&gt;) which will then boot to a minimal Maemo. Using this
minimal Maemo, one can then flash (using rsync) the Leste image root partition
to the /data/ partition. The process is rather involved, but a wiki page will
follow this news announcement in the coming weeks with detailed installation
instructions.&lt;/p&gt;
&lt;p&gt;The tiny image was created specifically for the xyboard tablet and this required
quite some changes. We introduced a new meta package called &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-meta/commit/657045b6d5e5a50c7566dd6232663a9ca5c1163e"&gt;hildon-meta-core&lt;/a&gt;
which contained only the bare minimal required for Maemo Leste to function. We
then &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-meta/commit/f49d49bdcbd8b2ac46c341a0039597d799e76a9f"&gt;trimmed it some more&lt;/a&gt;
to further reduce the required disk space.&lt;/p&gt;
&lt;p&gt;Then we added a special flag to the image-builder to &lt;a class="reference external" href="https://github.com/maemo-leste/image-builder/commit/566a74d48b6fb19c9545322f4052072428022f76"&gt;build tiny images&lt;/a&gt;
which will remove manual pages and other unnecessary files that are hard to
prune otherwise and set &lt;a class="reference external" href="https://github.com/maemo-leste/image-builder/commit/34a747a1b55631403b66a3f538601f6b89b5909c"&gt;only one locale&lt;/a&gt;.
The end result is that we end up with an image that is about ~700MB, which fits
in one of the smaller but flashable partitions of Android on the xyboards.&lt;/p&gt;
&lt;p&gt;We, of course, also &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-meta/commit/10123d888eac654e6374f45b04accc383e942a98"&gt;added a meta package&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;It is worth noting that if one &lt;strong&gt;bricks the MZ617&lt;/strong&gt; it will be very hard to
recover, since we have not been able to find the right files that allow us to
flash all partitions - so beware.&lt;/p&gt;
&lt;p&gt;In general, the device port works well - it is really fun to run Maemo on a real
tablet. There are still improvements to be made to the power management as the
device does not idle correctly yet. Once the device idles correctly we believe
we should get multiple-days uptime without problems.&lt;/p&gt;
&lt;img alt="" src="/images/xyboard-1.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;img alt="" src="/images/xyboard-2.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;img alt="" src="/images/xyboard-3.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;img alt="" src="/images/xyboard-4.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="librem5"&gt;
&lt;h4&gt;Librem5&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;sicelo&lt;/tt&gt; has been working on making Maemo Leste run on the Librem5 and has
shared an initial photo with us:&lt;/p&gt;
&lt;img alt="" src="/images/librem-initial.jpg" style="width: 500px; height: 375px;" /&gt;
&lt;p&gt;More to come later!&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="telepathy-communications"&gt;
&lt;h2&gt;Telepathy &amp;amp; Communications&lt;/h2&gt;
&lt;p&gt;The biggest update this time around is to our Telepathy-based communication
stack with the addition of various features and protocols. We currently support
the following protocols to varying degrees: XMPP, Matrix, SIP, IRC, Telegram,
Facebook, Slack and Discord. Most of these protocols also have a corresponding
accounts plugin to configure them.&lt;/p&gt;
&lt;img alt="" src="/images/ham-accounts.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;And the different accounts can be used to group contacts in the Contacts
application:&lt;/p&gt;
&lt;img alt="" src="/images/osso-abook-groups.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;An overview of some of the currently online accounts:&lt;/p&gt;
&lt;img alt="" src="/images/accounts-slack-matrix-telegram.png" style="width: 576px; height: 324px;" /&gt;
&lt;div class="section" id="telepathy-haze-pidgin-libpurple"&gt;
&lt;h3&gt;telepathy-haze (pidgin/libpurple)&lt;/h3&gt;
&lt;p&gt;The telepathy-haze connection manager can load Pidgin/libpurple plugins, which
allows us to use Pidgin plugins from Maemo Leste's contacts and conversations
applications. This thus allows us to use libpurple plugins for which no 'native'
telepathy connection managers exist.&lt;/p&gt;
&lt;p&gt;Until recently telepathy-haze lacked support for channels/rooms, which means
only 1:1 messages worked.  &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; has added support in
&lt;a class="reference external" href="https://gitlab.freedesktop.org/telepathy/telepathy-haze/-/merge_requests/4/"&gt;telepathy-haze MR #4&lt;/a&gt;.
The work has not yet been merged, but we have deployed it to Maemo Leste in
&lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/telepathy-haze"&gt;maemo-leste-upstream-forks/telepathy-haze&lt;/a&gt;, and we
are in contact with the Telepathy maintainers to see if we can get the work
merged.&lt;/p&gt;
&lt;div class="section" id="slack"&gt;
&lt;h4&gt;slack&lt;/h4&gt;
&lt;p&gt;We have basic integration for Slack now. You can log in with your Slack account,
chat through direct message as well as channels, your contacts on Slack will
show up in the Contacts application (including photos), you can start a message
session with them from there as well. History fetching does not work (yet).&lt;/p&gt;
&lt;p&gt;We have created a &lt;a class="reference external" href="https://github.com/maemo-leste-extras/rtcom-accounts-plugin-slack"&gt;UI to set up your Slack account&lt;/a&gt; and we
have packaged the &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/slack-libpurple"&gt;libpurple Slack plugin&lt;/a&gt;. We also added
&lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/slack-libpurple/commit/49e4fc3abd66b97fe889565f204e465cb478a495"&gt;support for buddy icons&lt;/a&gt;.&lt;/p&gt;
&lt;img alt="" src="/images/osso-abook-groups-slack-contacts.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/accounts-slack-rtcom-plugin.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="facebook"&gt;
&lt;h4&gt;facebook&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; has been working on getting a plugin working for facebook, it
uses &lt;a class="reference external" href="https://github.com/maemo-leste-extras/purple-facebook"&gt;purple-facebook&lt;/a&gt;
through &lt;a class="reference internal" href="#telepathy-haze-pidgin-libpurple"&gt;telepathy-haze (pidgin/libpurple)&lt;/a&gt;
and there is a &lt;a class="reference external" href="https://github.com/maemo-leste-extras/rtcom-accounts-plugin-facebook"&gt;UI to configure the FB account&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Getting this to work required some additional work on &lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-accounts-ui/commit/9284bfa96b65b0a74283fc645d9e38969cd3213d"&gt;rtcom-accounts-ui&lt;/a&gt;,
but things otherwise reportedly have been working well.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="telegram"&gt;
&lt;h4&gt;telegram&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Wizzup&lt;/tt&gt; got Telegram working using &lt;a class="reference internal" href="#telepathy-haze-pidgin-libpurple"&gt;telepathy-haze (pidgin/libpurple)&lt;/a&gt;,
although the &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/716"&gt;setup instructions are currently somewhat involved&lt;/a&gt;.
The &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/tdlib-purple"&gt;tdlib-purple&lt;/a&gt;
is being used and there is a UI to manage the account called
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/rtcom-accounts-plugin-telegram"&gt;rtcom-accounts-plugin-telegram&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;However, after the account has been setup, the integration works quite well and
will fetch new messages for the device upon connecting and has working address
book integration.&lt;/p&gt;
&lt;p&gt;List of Telegram contacts with avatars:&lt;/p&gt;
&lt;img alt="" src="/images/osso-abook-groups-telegram-contacts.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Account configuration UI:&lt;/p&gt;
&lt;img alt="" src="/images/accounts-telegram-rtcom-plugin.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="discord"&gt;
&lt;h4&gt;discord&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Wizzup&lt;/tt&gt; also got the &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/purple-discord"&gt;purple-discord&lt;/a&gt; plugin working
for Discord, and there is a UI to configure it called
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/rtcom-accounts-plugin-discord"&gt;rtcom-accounts-plugin-discord&lt;/a&gt;. Basic
chats seem to work, but Discord's additional IP-based protections make using it
still a little difficult: one needs to log into the web version of discord on
the same IP, and then logging in will work.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="telepathy-tank-matrix"&gt;
&lt;h3&gt;telepathy-tank (Matrix)&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Sander&lt;/tt&gt; worked on improving the &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/telepathy-tank"&gt;telepathy-tank&lt;/a&gt; Matrix
connection manager, which uses &lt;a class="reference external" href="https://github.com/quotient-im/libQuotient"&gt;libQuotient&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The following has been added:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Support for creating, joining and leaving Matrix rooms (both 1:1 &lt;em&gt;and&lt;/em&gt; groupchat)&lt;/li&gt;
&lt;li&gt;Detecting the room name and detecting if other devices leave the room&lt;/li&gt;
&lt;li&gt;Support for end to end encrypted chats (previously messages would just not be
received at all)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;While these added features are stable, we are still working on getting the code tidied
up and the changes upstreamed. For example, the Matrix contacts do not show up in the address book
just yet - we're investigating why this would be the case, it might be a problem in our
address book rather than in the Telepathy connection manager implementation.&lt;/p&gt;
&lt;p&gt;The code can be found in the &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/telepathy-tank/tree/groupchat-e2e"&gt;groupchat-e2e&lt;/a&gt;
branch.&lt;/p&gt;
&lt;p&gt;We have also created a &lt;a class="reference external" href="https://github.com/maemo-leste-extras/rtcom-accounts-plugin-matrix/"&gt;UI to configure a Matrix account&lt;/a&gt;, for
which we had to make some changes to rtcom-accounts-ui &lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-accounts-ui/commit/0511c57cbac98d7d19b7dfe27549e834dfeefea3"&gt;to not treat the &amp;#64; sign&lt;/a&gt;
as username/host separation and &lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-accounts-ui/commit/3f1f29fc95b113020c1e33fe3babdb462b753597"&gt;separate out the server name showing&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Below is a screenshot of a 1:1 E2EE chat within Conversations, via a recent version of &lt;a class="reference external" href="https://github.com/quotient-im/libQuotient"&gt;libQuotient&lt;/a&gt;. which uses &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/olm"&gt;libolm&lt;/a&gt;.&lt;/p&gt;
&lt;img alt="" src="/images/tank-conversations.png" style="width: 576px;" /&gt;
&lt;p&gt;And here is a group chat in action:&lt;/p&gt;
&lt;img alt="" src="/images/conversations-matrix-groupchat.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="telepathy-rakia"&gt;
&lt;h3&gt;telepathy-rakia&lt;/h3&gt;
&lt;p&gt;Adding SIP accounts in Maemo is now possible using the provided account setup
dialog &lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-accounts-plugins/commit/c545748d0b8862c6e1fb3a536418a0acced7f85f"&gt;added to the base rtcom-accounts-plugins&lt;/a&gt;. which solves &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/657"&gt;issue #657&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Using such an account it is now possible to send SIP messages when supported and
one can also receive and make SIP phone calls with working audio.&lt;/p&gt;
&lt;img alt="" src="/images/osso-abook-sip-message-call.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="telepathy-ring"&gt;
&lt;h3&gt;telepathy-ring&lt;/h3&gt;
&lt;p&gt;telepathy-ring, the ofono (regular calls) connection manager has been added to
our list of upstream forks to ensure that the right mission-control plugin gets
installed, which in turns makes sure that the telepathy-ring account is online
even when there is no internet (since cellular calls work fine without
internet). This setting is controlled by the 'always_dispatch' bit in Telepathy,
and it took us quite a while to figure out how this was supposed to work.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="conversations"&gt;
&lt;h3&gt;Conversations&lt;/h3&gt;
&lt;p&gt;Conversations has seen significant improvements since our last news update,
amongst other things:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;support for sending and receiving SMSes now that the &lt;a class="reference external" href="https://github.com/maemo-leste/sphone/pull/4"&gt;sphone voicecall manager
module was merged&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;multi window support;&lt;/li&gt;
&lt;li&gt;working (persistent) notifications, including on the lock screen;&lt;/li&gt;
&lt;li&gt;support for 'chat state' which will help connection managers determine when a
message has been seen;&lt;/li&gt;
&lt;li&gt;support for group chats including auto-joining channels;&lt;/li&gt;
&lt;li&gt;drastically lowered memory usage (35 MB idle memory on the overview screen, 45MB with a chat window opened);&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/conversations/issues/8"&gt;fast, full text search in all your messages&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;initial address book integration;&lt;/li&gt;
&lt;li&gt;a large refactor of the telepathy client side code;&lt;/li&gt;
&lt;li&gt;the ability to clear and delete chats;&lt;/li&gt;
&lt;li&gt;the ability to &lt;a class="reference external" href="https://github.com/maemo-leste/conversations/issues/3"&gt;export chats&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;various graphical changes to improve the user-experience;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The main missing feature right now is the ability to start a &lt;strong&gt;new&lt;/strong&gt; chat
directly from conversations: &lt;a class="reference external" href="https://github.com/maemo-leste/conversations/issues/10"&gt;composing a new message&lt;/a&gt;. Currently one has to
go through the address book and start sending a message from there. We are aware
that this is a severe limitation (especially for SMSes) and will address this shortly.&lt;/p&gt;
&lt;p&gt;Notification on the lock screen:&lt;/p&gt;
&lt;img alt="" src="/images/lockscreen-notification.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Notification for a new message when the screen in active:&lt;/p&gt;
&lt;img alt="" src="/images/conversations-notification.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Database-wide search:&lt;/p&gt;
&lt;img alt="" src="/images/conversations-search.png" style="width: 576px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="sphone"&gt;
&lt;h3&gt;sphone&lt;/h3&gt;
&lt;p&gt;The biggest addition to sphone has been the addition of the &lt;a class="reference external" href="https://github.com/maemo-leste/sphone/pull/8"&gt;voicecall-manager
plugin&lt;/a&gt; which makes sphone
support audio calls using the Telepathy framework (orchestrated by &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/voicecall/"&gt;Sailfish
OS voicecall daemon&lt;/a&gt;). The reason that
this addition is huge is because this allows us to switch SMS and calls over the
Telepathy (which means that &lt;a class="reference internal" href="#conversations"&gt;Conversations&lt;/a&gt; can now handle SMses) and also
because it allows us to make SIP and XMPP audio calls using the Telepathy framework.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; has contributed various core sphone changes to support the
voicecall-manager and has most recently worked on enabling DTMF support within
sphone. &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; has made sure that the &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;vcard-field&lt;/span&gt;&lt;/tt&gt; &lt;a class="reference external" href="https://github.com/maemo-leste/sphone/pull/6#event-10594544989"&gt;gets stored in
the events database&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The option to make &lt;a class="reference external" href="https://github.com/maemo-leste/sphone/pull/5"&gt;phone calls in landscape mode&lt;/a&gt; has also been added to accommodate
the Nokia N900, which currently doesn't support portrait mode screen rotation.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="media"&gt;
&lt;h2&gt;Media&lt;/h2&gt;
&lt;p&gt;In our previous post we introduced the Maemo Open Media Player. This updates
brings a lot of improvements to the media player, in particular when it comes to
performance and stability. However, the single biggest change is that open media
player will now actually find and play music stored on your device (instead of
just internet radio streams). This was achieved by a significant porting of
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;mafw-tracker-source&lt;/span&gt;&lt;/tt&gt; to newer frameworks.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/mafw-tracker-source"&gt;mafw-tracker-source&lt;/a&gt; is
the component that then uses gnome-tracker to deliver the files as input to the
open media player and has also received many changes (&lt;a class="reference external" href="https://github.com/maemo-leste/mafw-tracker-source/commits/master/"&gt;too many to list here&lt;/a&gt;), but the
most important improvements are improved tracker ordering and better performance.&lt;/p&gt;
&lt;img alt="" src="/images/omp-start-screen.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/omp-play-music.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;In particular, the gnome-tracker which is used to index your files (and identify
them as songs) received a lot of stability fixes and speed improvements. In some
cases, fixes were never backported. The most common occurrence was that tracker
wouldn't ever actually complete and start up indexing things all over again.&lt;/p&gt;
&lt;p&gt;In particular, &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/tracker-miners/commit/0ac3ba4e88b38d2d006286a34cf6c72da9311409"&gt;these&lt;/a&gt; &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/tracker/commit/db6e3b5fe439cafc288d313e55697d6128212067"&gt;three&lt;/a&gt; &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/tracker/commit/88bb88a2e5a45cdf0cb5346e04f389922b42d022"&gt;commits&lt;/a&gt; were all essential to the stability.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; has fixed the 'car view' screen (this was broken previously) and
has &lt;a class="reference external" href="https://github.com/maemo-leste-extras/openmediaplayer/commit/009194ced182ede5b732c0feecf4230b8c0c99a5"&gt;decreased the power usage&lt;/a&gt;
by ensuring the the UI will not update when the screen is off (previously, the
UI would only stop updating if the screen was locked - but the screen can be off
and not locked).&lt;/p&gt;
&lt;img alt="" src="/images/omp-play-music-car-view.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="contacts"&gt;
&lt;h2&gt;Contacts&lt;/h2&gt;
&lt;p&gt;The Contacts (address book) program has received a lot of bugfixes, including a
fix for the issue where many online contacts would show as &lt;a class="reference external" href="https://github.com/maemo-leste/osso-abook/commit/37f15bdaeabda4bad43eda042df471cc7c45c14a"&gt;&amp;quot;No Name&amp;quot;&lt;/a&gt;.
The &lt;a class="reference external" href="https://github.com/maemo-leste/osso-abook/commit/121f50e2e13096344f8983c1b74622d9fac8fceb"&gt;action time&lt;/a&gt;
of specific actions (like starting a message or a call) has also been fixed and
&lt;a class="reference external" href="https://github.com/maemo-leste/osso-abook/commit/b9f699fbd4ecb446b0a53d8e6b966432ef771938"&gt;protocol-based identification also received a fix&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The address book will now also properly show the ability to perform an audio or
video call to a XMPP contact if they are online and added as a contact - this
required a &lt;a class="reference external" href="https://github.com/maemo-leste/eds-backend-telepathy/commit/78e47143060efe736ea0414ccebe6e73a188aa00"&gt;fix to eds-backend-telepathy&lt;/a&gt;
as well as &lt;a class="reference external" href="https://github.com/maemo-leste/osso-abook/commit/4a3c44606f194ee5e00df45b53ea9a748b34bf9f"&gt;a fix to the address book&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Furthermore, when initiating a call from the address book, the program will now
use the right &lt;a class="reference external" href="https://github.com/maemo-leste/osso-abook/commit/56f3e48b44475c09620703cbd8170c952877d2fa"&gt;Telepathy request&lt;/a&gt;
so that sphone and the voicecall manager program will actually act on the
request to start a phone call.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; also tried to extend the usability of the address book to try to use
hildon-mime to figure out what program to use if there are no telepathy accounts
available - see &lt;a class="reference external" href="https://github.com/maemo-leste/osso-abook/pull/2"&gt;osso-abook PR #2&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/libhildonmime/pull/5"&gt;libhildonmime PR #5&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="documentation"&gt;
&lt;h2&gt;Documentation&lt;/h2&gt;
&lt;p&gt;Cornel-Florentin has continually been working on the Maemo Leste user guide and
has added sections on the settings (which is really big chapter!) and contacts
(contains a lot of Telepathy work) application as well as on email, application
manager and most recently the navigation section.&lt;/p&gt;
&lt;p&gt;We have now also packaged the &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-user-guide"&gt;maemo-user-guide&lt;/a&gt; and if you click the &amp;quot;User
Guide&amp;quot; icon, the user guide will now open on the device in a browser - and no
internet connection is required to read it.&lt;/p&gt;
&lt;p&gt;We are also hosting an &lt;a class="reference external" href="https://maedevu.maemo.org/docs/userguide/html/"&gt;online version of the userguide&lt;/a&gt;, but it might lag
behind a little on the most recent version.&lt;/p&gt;
&lt;img alt="" src="/images/user-guide-jib.png" style="width: 324px; height: 576px;" /&gt;
&lt;img alt="" src="/images/user-guide-jib-status.png" style="width: 324px; height: 576px;" /&gt;
&lt;img alt="" src="/images/user-guide-n900-dillo-language.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="browser"&gt;
&lt;h2&gt;Browser&lt;/h2&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Sander&lt;/tt&gt; has been putting a lot work into making a decent default browser for
Maemo Leste (except for on the Nokia N900, where we default to Dillo). Jib now
also sports:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;support for portrait mode;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/jib/issues/7"&gt;support for ad blocking&lt;/a&gt; (lists based on uBlockOrigin)&lt;/li&gt;
&lt;li&gt;support &lt;cite&gt;file:///&lt;/cite&gt; to access local files;&lt;/li&gt;
&lt;li&gt;various graphical changes to improve the user-experience;&lt;/li&gt;
&lt;li&gt;handle command line arguments to handle XDG or Hildon opening a URL;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The jib browser has been made specifically for devices with limited CPU, and memory capabilities.&lt;/p&gt;
&lt;img alt="" src="/images/jib-metabar.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/jib-settings.png" style="width: 324px; height: 576px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="gtk-qt"&gt;
&lt;h2&gt;Gtk / Qt&lt;/h2&gt;
&lt;p&gt;The Maemo Qt module now &lt;a class="reference external" href="https://github.com/maemo-leste/qt-platform-maemo/commit/c9c5591b60c9ef858aeb6162db87e51818c71592"&gt;supports submenus&lt;/a&gt;
in the top level menu navigation, which means that instead of having all actions
of menus and submenus thrown into a single pile, one can now navigate submenus
of complex applications quite naturally. Menu bars are also automatically hidden
in Maemo which further improves the default experience of non-native Maemo
applications, see for example Qt5 Designer:&lt;/p&gt;
&lt;img alt="" src="/images/qt-menu-nested-designer.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/qt-menu-nested-designer-file.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/qt-menu-nested-designer-help.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;The 'downward arrow' menu indicator is now also &lt;a class="reference external" href="https://github.com/maemo-leste/qt-platform-maemo/pull/2"&gt;properly rendered&lt;/a&gt; in Qt programs,
which solves &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/466"&gt;issue #466&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We have also fixed the stacked window handling in &lt;a class="reference external" href="https://github.com/maemo-leste/qt-platform-maemo/commit/80cd89f24828f8c44935b5c6c4587b978ca4689c"&gt;commit 80cd89f&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/qt-platform-maemo/commit/4ea6b1526909141557b7489fbf935cc3c3572488"&gt;commit 4ea6b1526&lt;/a&gt;.
in our Qt plugin.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; has also fixed some of the visual glitches in our qt theme,
which solves &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/693"&gt;issue #693&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="hildon"&gt;
&lt;h2&gt;Hildon&lt;/h2&gt;
&lt;p&gt;For a while, it was not possible to edit the order of applications in launcher
menu of hildon-desktop - this has been broken ever since the addition of the
Debian submenu. This has now been addressed in &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/pull/23"&gt;hildon-desktop PR #23&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;hildon-desktop now also supports multiple shortcuts for a single action which
solves &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/528"&gt;issue #528&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The hildon-status-menu now allows for multiple icons per status menu plugin,
implemented in &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-status-menu/pull/4"&gt;hildon-status-menu PR #4&lt;/a&gt;. This allows us to
render multiple icons for example for when a device has multiple sim cards or
has multiple batteries.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/libhildonmime/pull/5"&gt;libhildonmime PR #5&lt;/a&gt;
extends libhildonmime to properly fallback to xdg-open.&lt;/p&gt;
&lt;p&gt;The terminal application now also has a setting to disable changing the font
when the volume keys are pressed, see &lt;a class="reference external" href="https://github.com/maemo-leste/osso-xterm/pull/4"&gt;osso-xterm PR #4&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;DSME, the device state management entity has gained support for using &lt;a class="reference external" href="https://github.com/maemo-leste/dsme/commit/c6aa4ef1cb4d9ea8334ed23b6bebb975a523c0bf"&gt;elogind
to restart or shutdown the device&lt;/a&gt;
so that the action is coordinated more effectively to the rest of the system.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="synchronisation"&gt;
&lt;h2&gt;Synchronisation&lt;/h2&gt;
&lt;p&gt;Since the migration to Chimaera, synchronising contacts and address books was
seemingly broken. Embarassingly, it turned out that yours truly forgot to
&lt;a class="reference external" href="https://github.com/maemo-leste/syncevolution/commit/14bf3f262d39748ced70a6460bd1bd25053a40a4"&gt;enable building&lt;/a&gt;
the Maemo backend of syncevolution with the migration, and once the backend was
flipped on and &lt;a class="reference external" href="https://github.com/maemo-leste/syncevolution/commit/149b3db06d02dd3a020b745039df4e4b8b5548b6"&gt;a few compilation errors were fixed&lt;/a&gt;
synchronisation once again started working.&lt;/p&gt;
&lt;p&gt;If you haven't set up synchronisation, check out the &lt;a class="reference external" href="https://leste.maemo.org/Sync"&gt;Sync&lt;/a&gt; page on the wiki.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="translations-and-localisation"&gt;
&lt;h2&gt;Translations and localisation&lt;/h2&gt;
&lt;p&gt;Since Maemo Leste has been on weblate to crowdsource translations of the
operating system, many users had actually contributed translations. However,
manual labour was still involved in getting the new translations built and
deployed, and with the help of some automation this has now been done for the
50+ translation repositories that all saw contributions.&lt;/p&gt;
&lt;p&gt;Some of our own core applications do not yet support localisation (like
&lt;a class="reference internal" href="#conversations"&gt;Conversations&lt;/a&gt;, but we aim to add that soon).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="extra-packages"&gt;
&lt;h2&gt;Extra packages&lt;/h2&gt;
&lt;div class="section" id="maemo-offline-translate"&gt;
&lt;h3&gt;Maemo (Offline) Translate&lt;/h3&gt;
&lt;p&gt;Maemo Translate now supports additional languages with this
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/maemo-translate-data/commit/ff97e527568e4167e28299e9ea501bc74deb729d"&gt;maemo-translate-data commit&lt;/a&gt; - importing the latest models from &lt;a class="reference external" href="https://github.com/mozilla/firefox-translations-models"&gt;firefox-translation-models&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We also created a script to &lt;a class="reference external" href="https://github.com/maemo-leste-extras/maemo-translate-data/commit/399d55d72e6cbc05ab3023eec2354ece214638f8"&gt;automatically make new releases&lt;/a&gt; based on
firefox-translation-models should we want to do a new release.&lt;/p&gt;
&lt;p&gt;This adds offline translation support for the following languages:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Danish&lt;/li&gt;
&lt;li&gt;Greek&lt;/li&gt;
&lt;li&gt;Finnish&lt;/li&gt;
&lt;li&gt;Croatian&lt;/li&gt;
&lt;li&gt;Hungarian&lt;/li&gt;
&lt;li&gt;Indonesian&lt;/li&gt;
&lt;li&gt;Lithuanian&lt;/li&gt;
&lt;li&gt;Latvian&lt;/li&gt;
&lt;li&gt;Romanian&lt;/li&gt;
&lt;li&gt;Slovak&lt;/li&gt;
&lt;li&gt;Slovenian&lt;/li&gt;
&lt;li&gt;Serbian&lt;/li&gt;
&lt;li&gt;Turkish&lt;/li&gt;
&lt;li&gt;Vietnamese&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Each of these languages can be installed separately. One can also use the
meta package to install all of the languages.&lt;/p&gt;
&lt;p&gt;Note that in addition to using the &lt;a class="reference external" href="https://github.com/maemo-leste-extras/maemo-translate"&gt;Maemo Translation GUI&lt;/a&gt;, translations can be done programmatically by
linking against &lt;a class="reference external" href="https://github.com/maemo-leste-extras/kotki/tree/7c9db3bd3bfe1c9e3602811b3734d6d2f215e012?tab=readme-ov-file#c"&gt;libkotki&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="otp"&gt;
&lt;h3&gt;OTP&lt;/h3&gt;
&lt;p&gt;The Maemo &amp;quot;OTP&amp;quot; program (perhaps to be renamed Maemo Authenticator in the
future) now &lt;a class="reference external" href="https://github.com/maemo-leste-extras/maeotp/pull/7"&gt;supports the more common base32 and hex encoded keys&lt;/a&gt;. This allows
one to use the OTP program for 2-factor authentication with most services:
Github, Gitlab, and Pypi for example.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="drnoksnes"&gt;
&lt;h3&gt;DrNokSnes&lt;/h3&gt;
&lt;p&gt;DrNokSnes, the SNES emulator is now working and packaged - thanks to &lt;tt class="docutils literal"&gt;arno11&lt;/tt&gt;.
This has been a very long time coming (over four years) - see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/331"&gt;issue #331&lt;/a&gt; for some history.&lt;/p&gt;
&lt;img alt="" src="/images/droid4-drnoksnes.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/droid4-drnoksnes-play.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="ngi-assure-nlnet-funding"&gt;
&lt;h2&gt;NGI Assure: NLnet Funding&lt;/h2&gt;
&lt;p&gt;The NGI Assure that we applied to is finishing at the end of August, and we have
achieved most of our funding goals (but not all).  The NGI also invited us to a written interview, which can be &lt;a class="reference external" href="https://ngi.eu/ngi-interviews/interview-with-merlijn-wajer-maemo-leste-ngi-assure-beneficiary/"&gt;read here on ngi.eu&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We're very thankful to NGI and NLNet for the opportunity.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="delayed-news-update"&gt;
&lt;h2&gt;Delayed news update&lt;/h2&gt;
&lt;p&gt;For those who don't follow day-to-day activities of the project, it may appear as
if development has halted - at least judging from the frequency of news updates. Rest assured, this
couldn't be further from the truth. Development has progressed to the
point of Leste becoming production-ready, supporting many features one reasonably expects
from a mobile device.&lt;/p&gt;
&lt;p&gt;Writing news updates just takes time, and is unfortunately not a task that is easily
delegated. In our case, it requires understanding of systems engineering which is highly
technical in nature. Thus, we'll sometimes delay news updates in favor of having
something substantial to present, and other times we're simply too busy hacking away
on the next cool feature.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you have questions, are interested in specifics or helping out, or wish to
have a specific package ported, please see our bugtracker.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900, Motorola Droid 3, Droid 4, Bionic and RAZR units
available for interested developers&lt;/strong&gt;, so if you are interested in helping out
but have trouble acquiring a device, let us know.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay
up to date, ask questions and/or help out. Another great way to get in touch is
to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join our effort!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="chimaera"></category><category term="mediaplayer"></category><category term="rtcom"></category><category term="calls"></category><category term="n900"></category><category term="qt5"></category><category term="tablet"></category><category term="mz617"></category><category term="razr"></category><category term="xt912"></category><category term="xt910"></category></entry><entry><title>Maemo Leste - Five year anniversary and Chimaera release</title><link href="https://maemo-leste.github.io/maemo-leste-five-year-anniversary-and-chimaera-release.html" rel="alternate"></link><published>2023-08-13T23:30:00+02:00</published><updated>2023-08-13T23:30:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2023-08-13:/maemo-leste-five-year-anniversary-and-chimaera-release.html</id><summary type="html">&lt;p&gt;We're back with another overdue update, marking our five year anniversary as
well as the official Chimaera release. Apart from the upgrade to Chimeara /
Bullseye (from Beowulf / Buster), here are some other highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Work has started on the user manual / user guide;&lt;/li&gt;
&lt;li&gt;Continued work on supporting more devices;&lt;/li&gt;
&lt;li&gt;Telepathy-based (VoIP …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;We're back with another overdue update, marking our five year anniversary as
well as the official Chimaera release. Apart from the upgrade to Chimeara /
Bullseye (from Beowulf / Buster), here are some other highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Work has started on the user manual / user guide;&lt;/li&gt;
&lt;li&gt;Continued work on supporting more devices;&lt;/li&gt;
&lt;li&gt;Telepathy-based (VoIP and XMPP) voice calls are soon coming to sphone;&lt;/li&gt;
&lt;li&gt;Modem and cellular data enabled by default on various devices;&lt;/li&gt;
&lt;li&gt;Support for elogind login sessions;&lt;/li&gt;
&lt;li&gt;Various quality of life fixes such as Qt theming improvements;&lt;/li&gt;
&lt;li&gt;Better power management on the Nokia N900;&lt;/li&gt;
&lt;li&gt;Camera application for the Pinephone, additional firmware;&lt;/li&gt;
&lt;li&gt;Developers now have Nokia N900 phone calls working, but some integration and
bug fixing still remains;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;(Also check out our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-new-year-update-may-2022-january-2023.html"&gt;previous update&lt;/a&gt; in case you missed it).&lt;/p&gt;
&lt;div class="section" id="devuan-chimaera-debian-bullseye"&gt;
&lt;h2&gt;Devuan Chimaera (Debian Bullseye)&lt;/h2&gt;
&lt;p&gt;The upgrade to Devuan Chimaera (Debian Bullseye) has been a long time coming,
but it is finally here. We had been testing Maemo Leste based on Chimaera for
half a year already, but with this blog post the release (and switchover) is
official. The &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/24"&gt;Chimaera milestone ticket&lt;/a&gt; lists all the
packages that were rebuilt and any of the changes made to them.&lt;/p&gt;
&lt;p&gt;The upgrade brings new Linux kernels to various devices (6.1.x for the
Droid 4, Droid Bionic, Nokia N900 and Pinephone), as well as a switch to elogind
sessions. This was required for staying compatible with modern software, which
now often require some form of login session manager in order to function
properly (or at all).&lt;/p&gt;
&lt;p&gt;Most of the supported devices will now also have their modem activated, as well
as having software to make phone calls and use mobile data present on the device,
providing a much more phone-like experience out of the box.&lt;/p&gt;
&lt;p&gt;In fact, the more recent Chimaera images should allow users to make working
phone calls on the Pinephone, Motorola Droid 4, Motorola Bionic out of the box.
Even on the Nokia N900 calls are now working, but they still require some manual
work after the device has started. The author of this news post has been using
his Droid 4 as a daily driver for over half a year now.&lt;/p&gt;
&lt;p&gt;The image builder can now build Chimaera images, see the following commits
(&lt;a class="reference external" href="https://github.com/maemo-leste/image-builder/commit/ed150008c1981550e9673ebd9bb19cb28770d3c7"&gt;ed150008c&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/image-builder/commit/e7a672f9cb9bf46c427576a077bd365a96a5d403"&gt;e7a672f9&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/image-builder/commit/8f2dee2640e53ffec8c328f343c339ddf153a2c0"&gt;8f2dee26&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/image-builder/commit/c5ed472f5b2e585c5412ceb12c4f1f6e6ebf4ed3"&gt;c5ed472f&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/image-builder/commit/3438cadb2e84269f337749f87a0da21b260663b3"&gt;3438cadb&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/image-builder/commit/083cbfabffcdad4383117a28964775e156f2947b"&gt;083cbfab&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Additionally, the image builder base operating system has also been upgraded to
Chimaera.&lt;/p&gt;
&lt;div class="section" id="upgrading"&gt;
&lt;h3&gt;Upgrading&lt;/h3&gt;
&lt;p&gt;Users can perform a &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;dist-upgrade&lt;/span&gt;&lt;/tt&gt; from their Beowulf install to Chimaera, but
the process isn't well supported at this point, and we instead recommend
users to install a latest image. However, if one prefers to perform a
dist-upgrade, please ensure that your beowulf installation is up to date before
attempting to dist-upgrade to chimaera. This sequence of commands might get you
through the upgrade:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
apt dist-upgrade -o APT::Force-LoopBreak=true
dpkg-reconfigure --force gconf2
dpkg-reconfigure --force libgconf-2-4:armhf
apt --fix-broken install
apt dist-upgrade -o APT::Force-LoopBreak=true
&lt;/pre&gt;
&lt;p&gt;But again, this is not recommended for novice users. However, &lt;strong&gt;this can be done
entirely 'live' on the phone, while keeping the UI enabled&lt;/strong&gt;. Even after the
upgrade is complete, you can still use the phone to an extent - but you really
ought to reboot when it's done.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="elogind-and-xorg"&gt;
&lt;h3&gt;elogind and Xorg&lt;/h3&gt;
&lt;p&gt;Xorg now runs as the &lt;tt class="docutils literal"&gt;user&lt;/tt&gt; user, and no longer as &lt;tt class="docutils literal"&gt;root&lt;/tt&gt;, as part of the
switch to (e)logind.&lt;/p&gt;
&lt;p&gt;Initially the switch caused trouble because it was no longer possible to ensure
that both elogind and Xorg would close all the file descriptors to the input
devices, keeping the input devices awake. However, a new kernel mechanism was
introduced (the &lt;tt class="docutils literal"&gt;inhibited&lt;/tt&gt; property) to suspend input devices regardless of
whether they are kept open (see this &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/58"&gt;mce PR&lt;/a&gt;) or not. Ironically, Maemo had support
for that previously (in the form of a &lt;tt class="docutils literal"&gt;disable&lt;/tt&gt; property in sysfs), but this
was removed by the upstream kernel because it was deemed an unclean mechanism,
only to re-implement it again, years later.&lt;/p&gt;
&lt;p&gt;We also have some policy kit integration now, through the &lt;a class="reference external" href="https://github.com/maemo-leste/policykit-1-hildon"&gt;policykit-1-hildon&lt;/a&gt; package.&lt;/p&gt;
&lt;p&gt;DSME also saw some minor changes to be &lt;a class="reference external" href="https://github.com/maemo-leste/dsme/commit/929cde639a74cecde58d1fdf86316daa51ea1e27"&gt;compatible with a login session&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="pulseaudio"&gt;
&lt;h3&gt;Pulseaudio&lt;/h3&gt;
&lt;p&gt;The new Pulseaudio in Chimaera had significantly reworked their UCM2 support,
and as result our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/685"&gt;audio setup was completely broken&lt;/a&gt;.
We took a deep dive and figured out what the problem was, only to find out that
the headphone plug detection was also broken. These problems have now been fixed
in commit &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/commit/1d08e6cbaa4eb18d07fc7a29423ac0db1e98d536"&gt;1d08e6cb&lt;/a&gt;
and commit &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/commit/4b8851518d8d523065dc1bb12df8d368de9d0af2"&gt;4b885151&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="cpu-flags"&gt;
&lt;h3&gt;CPU flags&lt;/h3&gt;
&lt;p&gt;We now also build packages in the Maemo repositories with NEON and Thumb2.
Most packages in Debian are already using Thumb2, but not all make use of NEON.
See issue &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/691"&gt;#691&lt;/a&gt; and the
jenkins-integration commits &lt;a class="reference external" href="https://github.com/maemo-leste/jenkins-integration/commit/bf2ce8c3423ec12c13f086d1acf64959b073bfaf"&gt;bf2ce8c3&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/jenkins-integration/commit/75a8e3fbff361653c0fd01ff1db136b40ec62b80"&gt;75a8e3fb&lt;/a&gt;
for more details.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="qtwebengine"&gt;
&lt;h3&gt;qtwebengine&lt;/h3&gt;
&lt;p&gt;Unfortunately Qt Webengine has a hardcoded list of Qt platform plugins that it
will attempt to use 3D acceleration on, so we have had to patch qt web engine
to ensure that it also uses 3D acceleration on the Maemo platform plugin.&lt;/p&gt;
&lt;p&gt;See &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/qtwebengine/commit/c1fbfce8d8ea6c89f65fb8c884d506a39f717049"&gt;this patch to qtwebengine&lt;/a&gt;
for more info. As a result many browsers will now run much more smoothly on Maemo Leste.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="syncevolution"&gt;
&lt;h3&gt;syncevolution&lt;/h3&gt;
&lt;p&gt;The one regression we still have to figure out is syncevolution - as of writing the
package doesn't seem to work with its Maemo backends. Syncevolution went through
a major release, so we still have to figure out what exactly is broken.&lt;/p&gt;
&lt;p&gt;We did port the Maemo Telepathy Backend to the new syncevolution version (to
have contacts integration), in commits &lt;a class="reference external" href="https://github.com/maemo-leste/eds-backend-telepathy/commit/b96f28389554f2a1d39d6b8eeef3bd1a66e701fc"&gt;b96f28389&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/eds-backend-telepathy/commit/e77bd8faec35947582d6009f4675e7aafe5b7e30"&gt;e77bd8fae&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/eds-backend-telepathy/commit/334b80cfcd072c5ab7eb7607decfb855b57b7643"&gt;334b80cfc&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/eds-backend-telepathy/commit/5be241157c3c344b80ca39e75b63d4c22a282cbf"&gt;5be241157&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="hardware-drivers"&gt;
&lt;h2&gt;Hardware &amp;amp; Drivers&lt;/h2&gt;
&lt;div class="section" id="pinephone"&gt;
&lt;h3&gt;Pinephone&lt;/h3&gt;
&lt;p&gt;On the Pinephone, the Pinhole/Shutter camera application should now let users
take pictures. See this &lt;a class="reference external" href="https://leste.maemo.org/PinePhone#How_to_take_a_picture"&gt;wiki page&lt;/a&gt; for more
information.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;p&gt;The Nokia N900 has seen a lot of love from the community members. The power
management has improved a bunch (while not yet hitting the actual low power OMAP
modes), and a good battery will give one at least a day of uptime.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/commit/f0de824b14ccf9070efae90d6dcb97b097ecb325"&gt;Blacklisting some modules&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/commit/7dd372bf75b016c02a7acc13ddae928e722d2339"&gt;setting proper parameters on the 1-wire module&lt;/a&gt; has significantly improved the battery life.&lt;/p&gt;
&lt;p&gt;The FM transmitter module has also been enabled in the kernel, as well as some
additional features for the &lt;tt class="docutils literal"&gt;iotop&lt;/tt&gt; program to work properly (see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/706"&gt;issue #706&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/703"&gt;issue #703&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;User &lt;tt class="docutils literal"&gt;sicelo&lt;/tt&gt; has improved the &lt;a class="reference external" href="https://github.com/torvalds/linux/commit/68fdbe090c362e8be23890a7333d156e18c27781"&gt;capacity evaluation of the battery&lt;/a&gt;
in the upstream kernel, which permits &lt;a class="reference external" href="https://github.com/maemo-leste/n900-pm/pull/1"&gt;simplifying&lt;/a&gt; the &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;n900-pm&lt;/span&gt;&lt;/tt&gt; script.&lt;/p&gt;
&lt;p&gt;User &lt;tt class="docutils literal"&gt;arno II&lt;/tt&gt; has contributed a UCM2 file for the Nokia N900, thereby much
improving the audio situation on the Nokia N900. He has reported that it can
also be used for phone calls when a few other pieces are integrated. The
earpiece doesn't work yet, but users should be able to use both the speakers or
headphones for calls.&lt;/p&gt;
&lt;p&gt;The modem still needs to be loaded in a certain way for audio calls to work, and
the necessary changes for the &lt;tt class="docutils literal"&gt;cmtspeech&lt;/tt&gt; package and &lt;tt class="docutils literal"&gt;pulseaudio&lt;/tt&gt;
configuration are still under development.&lt;/p&gt;
&lt;p&gt;For the next update, users can expect that phone calls will work normally and
properly.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="volume-control"&gt;
&lt;h3&gt;Volume control&lt;/h3&gt;
&lt;p&gt;The volume applet has been improved to ensure that it now also &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/615"&gt;works on the
Pinephone&lt;/a&gt;. The right
audio sinks are now detected automatically, rather than being hardcoded per
device, see &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-statusmenu-volume/pull/4"&gt;maemo-statusmenu-volume PR #4&lt;/a&gt; and
&lt;a class="reference external" href="https://github.com/maemo-leste/maemo-statusmenu-volume/issues/3"&gt;maemo-statusmenu-volume issue #3&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;With the &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/0e2611e5c6c952eded5e737189da219a8c2e1f48"&gt;volume keys remapped&lt;/a&gt;,
and having received a UCM2 file, the volume applet now also works on the Nokia
N900:&lt;/p&gt;
&lt;img alt="" src="/images/n900-volume-applet.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="core-software-additions-and-changes"&gt;
&lt;h2&gt;Core Software additions and changes&lt;/h2&gt;
&lt;div class="section" id="mafw-open-media-player"&gt;
&lt;h3&gt;mafw / (Open) Media Player&lt;/h3&gt;
&lt;p&gt;We've been working on making Open Media Player (OMP) and its dependencies work
on Maemo Leste. At this point, the internet radio player works, and work is
underway to also be able to play files from the file system as well. This
involves porting mafw-tracker-source to the newer GNOME APIs and
&lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; has started working on this.&lt;/p&gt;
&lt;p&gt;This is what the media player looks like when started:&lt;/p&gt;
&lt;img alt="" src="/images/omp-start.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Listening to a radio stream:&lt;/p&gt;
&lt;img alt="" src="/images/omp-radio.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Showing the details of a radio stream:&lt;/p&gt;
&lt;img alt="" src="/images/omp-radio-details.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Adding a new radio stream:&lt;/p&gt;
&lt;img alt="" src="/images/omp-add-baroque.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Portrait mode:&lt;/p&gt;
&lt;img alt="" src="/images/omp-portrait.png" style="width: 324px; height: 576px;" /&gt;
&lt;p&gt;Open Media Player is now available for installation from the Hildon Application
Manager.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="qt-5-styling"&gt;
&lt;h3&gt;Qt 5 styling&lt;/h3&gt;
&lt;p&gt;Some of the Qt5 styling problems that were present on Maemo Leste in the past
have now been solved.&lt;/p&gt;
&lt;p&gt;One of the problems was that some applications had (white) backgrounds that didn't
fit with the theme (this was particularly present in the clock application).
Another problem was that text wouldn't always contrast well with the background
- for example black text on a dark gray background.&lt;/p&gt;
&lt;p&gt;Various widgets should now also &lt;a class="reference external" href="https://github.com/maemo-leste/qtstyleplugins/commit/83aca5c8f2f69f5815307ebac0a65a9be5522d19"&gt;support scrolling by default&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="notifications"&gt;
&lt;h3&gt;Notifications&lt;/h3&gt;
&lt;p&gt;Maemo now implements more of the XDG specification for notification patterns
such as the vibration property, but also in general notification ought to be
supported in a (much) better fashion. Previously not all XDG categories were
supported, but now many more are. This changes were added to
&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-plugins-notify-sv"&gt;hildon-plugins-notify-sv&lt;/a&gt; version &lt;tt class="docutils literal"&gt;0.64&lt;/tt&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="telepathy"&gt;
&lt;h3&gt;Telepathy&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/sphone/pull/4"&gt;Work is underway&lt;/a&gt; to add a
Telepathy module to our sphone application. This would then allow making regular
phone calls through Telepathy - as well as XMPP and SIP phone calls. The current
work can already be used to make phone calls, but for outgoing calls the
&amp;quot;privacy&amp;quot; bit is unconditionally being set, which means that the receiving
caller won't be able to see your phone number. XMPP and SIP phone calls start,
but the audio isn't being routed properly yet.&lt;/p&gt;
&lt;p&gt;Having sphone use Telepathy is important, because then we can finally start
sending and receiving SMS messages from the Conversations application.&lt;/p&gt;
&lt;p&gt;This work will be completed by the next news post.&lt;/p&gt;
&lt;p&gt;Meanwhile, enjoy a screenshot showing SIP messages being exchanged between two
Maemo Leste users using Conversations.&lt;/p&gt;
&lt;img alt="" src="/images/sip-messages-conversations.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="documentation-user-manual"&gt;
&lt;h2&gt;Documentation: User Manual&lt;/h2&gt;
&lt;p&gt;As part of the funding, we have been working on improving our documentation and
created a user manual. It is still being worked on and we haven't decided on a
place for it yet, but the &lt;a class="reference external" href="http://maemo-leste-manual.motionlibre.org/"&gt;manual can be found here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The &lt;a class="reference external" href="https://gitlab.com/motionlibre1/maemo-leste-user-handbook"&gt;source code for the manual&lt;/a&gt; is also available.&lt;/p&gt;
&lt;p&gt;Cornel-Florentin, who has worked on the documentation extensively has described
the approach below:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;quot;What we planned to do was first of all to have quite explanatory instructions
about how to navigate through the OS's interface, since most people nowadays are
pretty much used to the navigation concepts of Android and Apple devices. And
since Maemo Leste's interface is different, we thought that this would be the
most important aspect about improving user experience, and expectations.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Another important aspect of user friendliness is customization, to make users
feel more like home, and this was also prioritized.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;To make it very clear to understand all the above mentioned aspects, and not
only, almost every detail was accompanied by many screenshots, which actually is
what took a big part of the time required writing this manual.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Besides, what also helps to to adjusting users' expectations is a section
dedicated to the known bugs, or elements which don't work as expected. Many
items here most likely will be short-lived, as they will be solved during the
following development stages, but mentioning them is very important, for the
reasons given above.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Another important part, before starting  writing, was to think about its
structure, in order to have it work as a reference too, and so to fit both
beginners and more experienced users. This was reworked and rethought a number
of times, as progressing, obviously also requiring a serious amount of time. And
it's not final, since it might still be modified in the future. It's the living
part of the manual, and the under development state of Maemo Leste, which keep
it transforming.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Having a good structure allows linking and crosslinking different parts,
sections and subsections, enabling packing the documentation in a more compact
form, which is easier to follow, grasp, modify and add to in the future. Finding
and jumping to the section you're looking for is also much easier this way.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Another structurally beneficial thing is having a glossary of technical terms,
so that again, advanced users to not have to crawl through text, skipping
trivial information, while at the same time beginners to not feel lost.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;The manual is still work in progress, but by following the provided links you
can check the already completed parts, which are already considered to be done,
but which will still be revised at least one more time before they will go into
a final state. Any suggestions and corrections are welcome, so that we can
integrate them in the revised versions.&amp;quot;&lt;/em&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="community-and-supporting-software-updates"&gt;
&lt;h2&gt;Community and supporting software updates&lt;/h2&gt;
&lt;div class="section" id="dors-cluc-2023"&gt;
&lt;h3&gt;DORS/CLUC 2023&lt;/h3&gt;
&lt;p&gt;Maemo Leste gave a talk at DORS/CLUC. There doesn't seem to be a recording
online yet, but one can look at the &lt;a class="reference external" href="https://wizzup.org/maemo-leste-dors-cluc-2023.pdf"&gt;PDF of the presentation&lt;/a&gt; - there isn't any
particular news in the presentation though - the aim was to raise awareness.&lt;/p&gt;
&lt;p&gt;We also had a stand and showed off Maemo Leste hardware to various folks.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="extra-packages"&gt;
&lt;h3&gt;Extra packages&lt;/h3&gt;
&lt;p&gt;Various new packages were added by the community. Some are described in this at
length, others like &lt;a class="reference external" href="https://leste.maemo.org/Extras/MStarDict"&gt;MStarDict&lt;/a&gt; have
a wiki page that explain how they work. &lt;a class="reference external" href="https://github.com/maemo-leste-extras/harbour-amazfish"&gt;harbour-amazfish&lt;/a&gt; was ported over from
SailfishOS.&lt;/p&gt;
&lt;div class="section" id="maemo-weather"&gt;
&lt;h4&gt;Maemo Weather&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Sander (dsc)&lt;/tt&gt; has built a weather application in Qt called &lt;a class="reference external" href="https://github.com/maemo-leste-extras/NOMWeather"&gt;NOMWeather&lt;/a&gt;. It looks great and is very
usable - you can find some screenshots of the application below.&lt;/p&gt;
&lt;img alt="" src="/images/maemo-weather-korcula.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/maemo-weather-korcula-wind.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="maemo-offline-translate"&gt;
&lt;h4&gt;Maemo (Offline) Translate&lt;/h4&gt;
&lt;p&gt;Mozilla recently created a browser extension called
&lt;a class="reference external" href="https://addons.mozilla.org/en-US/firefox/addon/firefox-translations/"&gt;firefox-translations&lt;/a&gt;
which translates webpages from one language to another &lt;em&gt;without&lt;/em&gt; using a
third-party service. The translation happens locally, in the browser, via
language models created using machine-learning.&lt;/p&gt;
&lt;p&gt;Since this browser extension is open-source, &lt;tt class="docutils literal"&gt;Sander (dsc)&lt;/tt&gt; wondered if he could port
this translation engine to Maemo Leste for use as a standalone GUI application
for quality &lt;strong&gt;offline&lt;/strong&gt; translation. This meant porting and packaging the
underlying machine learning technologies for low-powered ARM devices (like the
Droid 4) which turned out to be a challenging, but not impossible task.&lt;/p&gt;
&lt;!-- ![https://plak.infrapuin.nl/selif/22275ry4.jpg](https://plak.infrapuin.nl/selif/22275ry4.jpg) --&gt;
&lt;p&gt;The end result is a responsive GUI that offers quick translations.&lt;/p&gt;
&lt;img alt="" src="/images/maemo-translate-enbg.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/maemo-translate-deen.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Maemo translate is now available from the repository as &lt;cite&gt;maemo-translate&lt;/cite&gt;. In
addition, check out the individual language packs in the Hildon Application
Manager or via &lt;cite&gt;apt search maemo-translate-data&lt;/cite&gt;&lt;/p&gt;
&lt;img alt="" src="/images/ham-translate-data.png" style="width: 324px; height: 576px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="windows-7-theme"&gt;
&lt;h4&gt;Windows 7 theme&lt;/h4&gt;
&lt;p&gt;We have ported the old &lt;a class="reference external" href="http://maemo.org/packages/view/windows7-theme/"&gt;Maemo Windows 7 theme&lt;/a&gt; - see the &lt;a class="reference external" href="https://github.com/maemo-leste-extras/windows7-theme"&gt;windows7-theme&lt;/a&gt; extras repository for
the source. It can now be installed on your Maemo Leste devices. Find below some
screenshots of what it looks like:&lt;/p&gt;
&lt;img alt="" src="/images/win7-1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/win7-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/win7-3.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you have questions, are interested in specifics or helping out, or wish to
have a specific package ported, please see our bugtracker.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900, Motorola Droid 3, Droid 4, Bionic and RAZR units
available for interested developers&lt;/strong&gt;, so if you are interested in helping out
but have trouble acquiring a device, let us know.&lt;/p&gt;
&lt;!-- .. image:: /images/massdroid.jpg --&gt;
&lt;!-- :height: 375px --&gt;
&lt;!-- :width: 666px --&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay
up to date, ask questions and/or help out. Another great way to get in touch is
to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join our effort!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="chimaera"></category><category term="mediaplayer"></category><category term="rtcom"></category><category term="calls"></category><category term="n900"></category><category term="qt5"></category></entry><entry><title>Maemo Leste - New Year update: May 2022 - January 2023</title><link href="https://maemo-leste.github.io/maemo-leste-new-year-update-may-2022-january-2023.html" rel="alternate"></link><published>2023-01-12T18:00:00+01:00</published><updated>2023-01-12T18:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2023-01-12:/maemo-leste-new-year-update-may-2022-january-2023.html</id><summary type="html">&lt;p&gt;First of all, happy new year to everyone following along.&lt;/p&gt;
&lt;p&gt;This is probably our last blog post before our Beta release. This latest update
focuses heavily on cellular software and drivers as well as other communication
features, but there's also a healthy amount of bugfixes and performance
improvements mixed in …&lt;/p&gt;</summary><content type="html">&lt;p&gt;First of all, happy new year to everyone following along.&lt;/p&gt;
&lt;p&gt;This is probably our last blog post before our Beta release. This latest update
focuses heavily on cellular software and drivers as well as other communication
features, but there's also a healthy amount of bugfixes and performance
improvements mixed in.&lt;/p&gt;
&lt;p&gt;(Also check out our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-sixteenth-update-november-and-december-2021-january-april-2022.html"&gt;previous update&lt;/a&gt; in case you missed it).&lt;/p&gt;
&lt;p&gt;Highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;big performance improvements for the PinePhone, PineTab and other Lima (Mali GPU) devices;&lt;/li&gt;
&lt;li&gt;performance and stability improvements for PowerVR devices like the Droid 4, N900, Bionic and more;&lt;/li&gt;
&lt;li&gt;many modem stability improvements (both ofono and Linux kernel driver) for mapphones (Droid 4, Bionic, Droid 3, etc);&lt;/li&gt;
&lt;li&gt;the cellular stack is maturing and basically ready for day-to-day usage;&lt;/li&gt;
&lt;li&gt;RTCom user interfaces landed, allowing one to configure various instant
messaging accounts;&lt;/li&gt;
&lt;li&gt;Alarms are now working;&lt;/li&gt;
&lt;li&gt;porting to the new Devuan Chimaera (Debian bullseye) is moving along swiftly;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="section" id="images-and-upgrading"&gt;
&lt;h2&gt;Images and upgrading&lt;/h2&gt;
&lt;p&gt;Devuan accidentally &lt;a class="reference external" href="https://dev1galaxy.org/viewtopic.php?id=5213"&gt;let their signing key expire&lt;/a&gt; (something which has happened
to us in the past as well). This meant that any Devuan (and thus, Maemo Leste)
user would no longer get updates from the Devuan repositories unless they
manually took some action. Our packages were unaffected, so we have just
imported the &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;devuan-keyring&lt;/span&gt;&lt;/tt&gt; package into our repository. By simply
updating and upgrading twice, you should be all set again.&lt;/p&gt;
&lt;p&gt;Some of our images &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/630"&gt;failed to build for a while&lt;/a&gt;, but this issue has now
been resolved.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="funding"&gt;
&lt;h2&gt;Funding&lt;/h2&gt;
&lt;p&gt;Back in August 2022 we applied for funding in the &amp;quot;NGI0 Entrust&amp;quot; fund of NLNet,
and they have approved our proposal, which focuses on improving our mobile
effort in a few key areas:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/644"&gt;Moving to the new Debian release&lt;/a&gt;: we're looking to move
to Devuan Chimaera
(Debian bullseye) in the next month, bringing in the latest and greatest
software packages. This involves porting Maemo software to new compilers,
frameworks, and so on.&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/25"&gt;Supporting more devices&lt;/a&gt;: We're looking to bring up Maemo Leste (and thus the
Linux kernel and drivers) on the Motorola Razr phone (XT910, XT912), the
Motorola Xyboard tablets (MZ609, MZ617), the Motorola Atrix 2 phone (MB865) and
the Moto G4 Play.&lt;/li&gt;
&lt;li&gt;Improving and further integrating the Telepathy communication framework: we're
looking at &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/26"&gt;adding OMEMO support to the Telepathy Gabble (XMPP) plugin&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/27"&gt;integrating XMPP and
SIP calls in Maemo&lt;/a&gt;
and are looking into &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/28"&gt;adding/improving Matrix support to Telepathy&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/29"&gt;Creating and improving our documentation&lt;/a&gt;: we're looking to
create a user handbook, a contributors guide as well as a developer portal.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The project page of our proposal can be found on the &lt;a class="reference external" href="https://nlnet.nl/project/MaemoLeste-Telepathy/"&gt;NLnet website&lt;/a&gt;, along with our &lt;a class="reference external" href="https://nlnet.nl/project/MaemoLeste/"&gt;now finished
previous proposal&lt;/a&gt;. (And don't forget,
we've also finished a project with &lt;a class="reference external" href="https://dapsi.ngi.eu/hall-of-fame/maemo-leste/"&gt;DAPSI&lt;/a&gt; in 2022)&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="hardware-drivers"&gt;
&lt;h2&gt;Hardware &amp;amp; Drivers&lt;/h2&gt;
&lt;div class="section" id="pinephone"&gt;
&lt;h3&gt;Pinephone&lt;/h3&gt;
&lt;p&gt;Pinephone support has been greatly improved with the help of &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt;
on the graphics side and &lt;tt class="docutils literal"&gt;rafael2k&lt;/tt&gt; on the kernel and camera side.
&lt;tt class="docutils literal"&gt;rafael2k&lt;/tt&gt; is our pinephone kernel maintainer.&lt;/p&gt;
&lt;p&gt;The pinephone kernel will move to Linux 6.1 for Chimaera.
&lt;a class="reference external" href="https://github.com/maemo-leste/pine64-kernel/pull/4"&gt;pine64-kernel PR #4&lt;/a&gt;
added a newer kernel and initial camera support, &lt;a class="reference external" href="https://github.com/maemo-leste/pine64-kernel/pull/5"&gt;pine64-kernel PR #5&lt;/a&gt; then added v4l support,
&lt;a class="reference external" href="https://github.com/maemo-leste/pine64-kernel/pull/6"&gt;pine64-kernel PR #6&lt;/a&gt;
added some more fixes. &lt;a class="reference external" href="https://github.com/maemo-leste/pine64-kernel/pull/8"&gt;pine64-kernel PR #8&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/pine64-kernel/pull/9"&gt;pine64-kernel PR #9&lt;/a&gt; made the usbnet work
again.&lt;/p&gt;
&lt;div class="section" id="graphics"&gt;
&lt;h4&gt;Graphics&lt;/h4&gt;
&lt;p&gt;In one of our previous updates we had mentioned we fixed the graphics corruption
bug at the expense of some performance. We have since fixed the problem
properly in clutter by &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/clutter-0.8/pull/2"&gt;adding support for the buffer age extension&lt;/a&gt; and now
the performance is once again great. There are still some issues to be tackled:
landscape mode is not as snappy as portrait, hitting some slow path in glamor.&lt;/p&gt;
&lt;p&gt;We believe users may find Maemo Leste in portrait mode one of the snappiest
experiences they might have seen yet on the pinephone.&lt;/p&gt;
&lt;video controls height="480px" width="720px"&gt;
&lt;source src="images/pp-leste.mp4" type="video/mp4"&gt;
&lt;/video&gt;&lt;/div&gt;
&lt;div class="section" id="camera"&gt;
&lt;h4&gt;Camera&lt;/h4&gt;
&lt;p&gt;We have imported &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/libcamera"&gt;libcamera&lt;/a&gt; and the &lt;a class="reference external" href="https://github.com/maemo-leste/firmware-ov5640"&gt;ov5640
firmware&lt;/a&gt; thanks to the work
of &lt;tt class="docutils literal"&gt;rafael2k&lt;/tt&gt;, who is also working on packaging a V4L-based camera application
which is also used on Sailfish, called &lt;a class="reference external" href="https://github.com/piggz/harbour-advanced-camera"&gt;Harbour Advanced Camera&lt;/a&gt; - so we might soon have a
(default) camera application.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="mapphones-droid-4-bionic-etc-and-nokia-n900"&gt;
&lt;h3&gt;Mapphones (Droid 4, Bionic, etc) and Nokia N900&lt;/h3&gt;
&lt;p&gt;Our kernel for the mapphones and Nokia N900 is now at version 6.1, with various
changes to the graphics and modem stack, as well as some other changes.&lt;/p&gt;
&lt;div class="section" id="modem"&gt;
&lt;h4&gt;Modem&lt;/h4&gt;
&lt;p&gt;The modem support has been greatly improved by &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt;, to the point
where all known bugs seem to be fixed. In the past, calls to the modem would
sometimes time out or simply not happen, which would lead to all kinds of
problems. It would also take a long time for the modem to show up, and sometimes
required restarting ofono, which would also occasionally crash. All of these
problems are now resolved. &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/445"&gt;Issue #445&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/530"&gt;issue #530&lt;/a&gt; describing those
problems are thus now resolved. The commits can be found in this &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/ofono/commits/maemo-ofono"&gt;ofono branch&lt;/a&gt;, and
kernel commits &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/64655c0c2e6498658072a4aeac3539a418397f19"&gt;64655c0c&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/977de3af9a11f681c7b0669f60ae33a941c00380"&gt;977de3af&lt;/a&gt;
and &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/1b2a0860cd17c5ea5d3bf16119945f1dcc46ed8f"&gt;1b2a0860&lt;/a&gt;
are also required.&lt;/p&gt;
&lt;p&gt;The latest kernel also contains a commit to work around the kernel suspending
the audio in a call, which combined with the latest sphone, &lt;strong&gt;make calls work
with headphones, earpiece and speakers on the mapphones and Pinephone&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Some intermediate development kernels &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/681#issuecomment-1337958216"&gt;broke the modem on the N900, causing the
device to bootloop&lt;/a&gt;
- this remained broken for quite some time, but has since been fixed -
apologies for the inconvenience caused by this.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="graphics-1"&gt;
&lt;h4&gt;Graphics&lt;/h4&gt;
&lt;p&gt;The X11 (DDX) driver now supports Xv video acceleration, which (as the name
implies) accelerates the playing of videos.&lt;/p&gt;
&lt;p&gt;The driver now also implements a cache for buffer objects, which drastically
improves the scrolling speed in various applications that do not use 3D
rendering, see &lt;a class="reference external" href="https://github.com/maemo-leste/xf86-video-omap/pull/1"&gt;xf86-video-omap PR #1&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There are also some fixes for some crashes and memory leaks that were occuring
before. All of the commits can be found in the &lt;a class="reference external" href="https://github.com/maemo-leste/xf86-video-omap/commits/master"&gt;xf86-video-omap github repo&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Previously it wasn't possible to use GLES1 due to Debian disabling it by
default (?), but we have now fixed this in our mesa package, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/606"&gt;issue #606&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="miscellaneous"&gt;
&lt;h4&gt;Miscellaneous&lt;/h4&gt;
&lt;p&gt;We now use the IIO driver for the accelerometer on the Nokia N900, rather than
the input device based driver (see &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/pull/3"&gt;droid4-linux PR #3&lt;/a&gt; - the IIO (Industrial
I/O) subsystem is a better fit for the accelerometer, and we already support
this.&lt;/p&gt;
&lt;p&gt;Additionally, the N900 could no longer use USB networking and more importantly,
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/681#issuecomment-1341835131"&gt;could no longer charge because it did not detect when connected to a charger&lt;/a&gt;.
This was also fixed in the kernel.&lt;/p&gt;
&lt;p&gt;In the past we had reverted some commits to the Linux kernel that caused
dramatic power consumption, but now this is no longer necessary as the interval
can be changed via sysctl, see &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/32"&gt;leste-config PR #32&lt;/a&gt;.&lt;/p&gt;
&lt;!-- * https://github.com/maemo-leste/droid4-battery-calibration/pull/1 (Correct the script path) --&gt;
&lt;!-- * https://github.com/maemo-leste/leste-config/pull/31 (Mapphones: up hifi volume a bit) --&gt;
&lt;!-- * https://github.com/maemo-leste/bugtracker/issues/348 (flakey usb networking) --&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="bluetooth"&gt;
&lt;h3&gt;Bluetooth&lt;/h3&gt;
&lt;p&gt;Maemo Leste does not currently ship with any bluetooth UI, but &lt;tt class="docutils literal"&gt;blueman&lt;/tt&gt; can be
installed. Once the right kernel modules are also loaded, bluetooth ought to
work. &lt;tt class="docutils literal"&gt;Wizzup&lt;/tt&gt; tried to have his car connect to his Maemo Leste phone recently,
but found various things still had to be fixed. The work described below is not
yet integrated, as we don't have a (proper) Maemo UI for bluetooth yet.&lt;/p&gt;
&lt;p&gt;The &lt;tt class="docutils literal"&gt;Class&lt;/tt&gt; value in &lt;tt class="docutils literal"&gt;/etc/bluetooth/main.conf&lt;/tt&gt; has to be set to &lt;tt class="docutils literal"&gt;0x005a020c&lt;/tt&gt;,
which will make devices recognize your device as an actual phone.  If you don't
do this, some devices (like cars) won't even &amp;quot;see&amp;quot; your device.&lt;/p&gt;
&lt;p&gt;After that, the car would connect to the device. From this point on,
&lt;cite&gt;module-bluetooth-discover&lt;/cite&gt; had to be loaded in pulseaudio if not already:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
pactl load-module module-bluetooth-discover
&lt;/pre&gt;
&lt;p&gt;Then, just running &lt;cite&gt;mpris-proxy&lt;/cite&gt; will cause the car to detect any media player
that supports &lt;cite&gt;mpris&lt;/cite&gt;, for example &lt;cite&gt;mpd&lt;/cite&gt; with &lt;cite&gt;mpdris2&lt;/cite&gt; installed. Furthermore,
&lt;cite&gt;ofono&lt;/cite&gt; and &lt;cite&gt;bluez&lt;/cite&gt; will now also collaborate and handle calls correctly -
making it possible to accept phone calls from your car!&lt;/p&gt;
&lt;p&gt;The video below shows this in action:&lt;/p&gt;
&lt;video controls height="380px" width="676px"&gt;
&lt;source src="images/bluetooth-car.webm" type="video/webm"&gt;
&lt;/video&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="device-porting"&gt;
&lt;h2&gt;Device porting&lt;/h2&gt;
&lt;p&gt;As of this news post, we have Maemo Leste booting on a Razr XT910 device
&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commits/maemo-6.1"&gt;after some Linux kernel changes by uvos and tmlind&lt;/a&gt; - but the
display doesn't fully refresh properly yet. Most other things seem to work,
though, see &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/33"&gt;leste-config PR #33&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/34"&gt;leste-config PR #34&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;tmlind&lt;/tt&gt; added &lt;tt class="docutils literal"&gt;kexecboot&lt;/tt&gt; support for the Razr XT910/XT912, and Xyboard
tablets model MZ609 and MZ617, which will allow us to boot Maemo Leste. The
tablets also require some further work on the display bridge, but we're hoping
that otherwise most things will start to work relatively soon on those too.&lt;/p&gt;
&lt;p&gt;The devices already have kexecboot support, with this commit &lt;a class="reference external" href="https://github.com/tmlind/droid4-kexecboot/commit/2c85eea545e33098a960e439e2b20a788ea06cc8"&gt;adding support for
xt910, mz609 and mz617&lt;/a&gt;
and this commit &lt;a class="reference external" href="https://github.com/tmlind/droid4-kexecboot/commit/cd2ef83e5b55f33a3012761a4bd68bc519922a19"&gt;fixing xt912 support&lt;/a&gt;.&lt;/p&gt;
&lt;!-- TODO: photos of razr, photos of mz609/mz617 --&gt;
&lt;p&gt;While we already have initial support for the Droid 3 (XT862), it is not yet
stable and the device very frequently resets - we hope to address this soon, but
we don't have a clear idea about what exactly causes it yet.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="core-software-additions-and-changes"&gt;
&lt;h2&gt;Core Software additions and changes&lt;/h2&gt;
&lt;div class="section" id="rtcom-real-time-communication-framework"&gt;
&lt;h3&gt;rtcom (real time communication) framework&lt;/h3&gt;
&lt;p&gt;The &lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-presence-ui"&gt;&amp;quot;presence&amp;quot; UI&lt;/a&gt; is now
ready, allowing one to change their presence from status menu.&lt;/p&gt;
&lt;p&gt;Note the green circle in the status area:&lt;/p&gt;
&lt;img alt="" src="/images/presence-ui-3.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;which shows as a status applet here as well:&lt;/p&gt;
&lt;img alt="" src="/images/presence-ui-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;which can be clicked to get to this dialog:&lt;/p&gt;
&lt;img alt="" src="/images/presence-ui.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;We have also added support for wildcard matching queries that search all the
messages in the rtcom databases, allowing for fast message history searching in
the conversations UI, see &lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-eventlogger/pull/1"&gt;rtcom-eventlogger PR #1&lt;/a&gt; and
&lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-eventlogger/pull/2"&gt;rtcom-eventlogger PR #2&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;On top of that, we figured out how to have rudimentary multi-user and group chats work
in Telepathy in conversations, but this is not yet available for testing for the
general public.&lt;/p&gt;
&lt;p&gt;The phone application also has seen various improvements. For example, after a
call is finished, the window doesn't disappear immediately, but rather stays
around for a few seconds so that the user can understand what happened.&lt;/p&gt;
&lt;p&gt;The rtcom framework now allows setting up not just IRC and XMPP accounts, but
also &lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-accounts-plugins/commit/c545748d0b8862c6e1fb3a536418a0acced7f85f"&gt;SIP (internet telephony) accounts&lt;/a&gt;,
and during our testing we were even able to utilise &lt;a class="reference external" href="https://github.com/dylex/slack-libpurple"&gt;slack-libpurple&lt;/a&gt; - but this is not currently
packaged or well tested.&lt;/p&gt;
&lt;div class="section" id="slack"&gt;
&lt;h4&gt;slack&lt;/h4&gt;
&lt;p&gt;Using &lt;a class="reference external" href="https://github.com/dylex/slack-libpurple"&gt;slack-libpurple&lt;/a&gt; in
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;telepathy-haze&lt;/span&gt;&lt;/tt&gt; (a telepathy connection manager that can load
libpurple/pidgin plugins), we got Slack to work, at least in a very basic
fashion, on Maemo Leste. We were able to send direct messages to folks,
including ourselves:&lt;/p&gt;
&lt;img alt="" src="/images/slack-conversations.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Here is the other side of that conversation (in the browser):&lt;/p&gt;
&lt;img alt="" src="/images/laptop-slack.png" /&gt;
&lt;p&gt;And here is an overview of the recent communications (names removed):&lt;/p&gt;
&lt;img alt="" src="/images/slack-overview.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;The &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;telepathy-haze&lt;/span&gt;&lt;/tt&gt; processes use about 8MB of RAM, which is a nice change
from the many gigabytes that Slack typically uses in a browser tab.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="cellulard"&gt;
&lt;h3&gt;cellulard&lt;/h3&gt;
&lt;p&gt;A new daemon was introduced to our mobile operating system, called
&lt;a class="reference external" href="https://github.com/maemo-leste/cellulard"&gt;cellulard&lt;/a&gt;. Its main task is to
deal with the modem on a high level: it will, for example power and online the
modem via ofono on startup, or offline the modem in case flight mode is
selected.&lt;/p&gt;
&lt;p&gt;This was necessary because nothing else configures the modem, but also to ensure
that we would be able to show SIM PIN entry dialogs on start of the device, as
there was previously no program putting the modem in the right state. If
no PIN is required and flight mode is not on, the modem will just be put in the
online mode upon start of the device.&lt;/p&gt;
&lt;p&gt;As a result, flight mode now also works as intended.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="maemo-ringtones"&gt;
&lt;h3&gt;maemo-ringtones&lt;/h3&gt;
&lt;p&gt;The &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;maemo-ringtones&lt;/span&gt;&lt;/tt&gt; package that we used to import from Fremantle contained
some wrong paths and configuration files, which &lt;tt class="docutils literal"&gt;rafael2k&lt;/tt&gt; has fixed in
&lt;a class="reference external" href="https://github.com/maemo-leste-assets/maemo-ringtones/pull/1"&gt;maemo-ringtones PR #1&lt;/a&gt;. This makes it
so that in the near future the new images will actually use a ringtone out of
the box (i.e. without any changes required by the user) when being called.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="alarms"&gt;
&lt;h3&gt;alarms&lt;/h3&gt;
&lt;p&gt;Alarms now work well. Before, alarms could be set, but they wouldn't actually
vibrate the phone and play sounds, but this is all fixed now. To achieve this,
we had to fix problems in our &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-plugins-notify-sv/pull/1"&gt;gst 1.0 port in the notify plugin&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-plugins-notify-sv/pull/2"&gt;fix a
crash&lt;/a&gt;. We
also had to perform the same gstreamer work for the &lt;a class="reference external" href="https://github.com/maemo-leste/clock-ui/pull/1"&gt;Qt gst 1.0 code&lt;/a&gt;.&lt;/p&gt;
&lt;img alt="" src="/images/alarm-clock-portrait.png" style="width: 324px; height: 576px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="calendar"&gt;
&lt;h3&gt;calendar&lt;/h3&gt;
&lt;p&gt;With the addition of the address book as a default application, we have now also
updated our instructions on how to synchronise your contacts, calendar and
notes on the &lt;a class="reference external" href="https://leste.maemo.org/Sync"&gt;Sync wiki page&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="notifications"&gt;
&lt;h3&gt;notifications&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-home/pull/2"&gt;hildon-home PR #2&lt;/a&gt;
provides a more up to date and compatible implementation of notifications as
defined by freedesktop.org's &lt;tt class="docutils literal"&gt;org.freedesktop.Notifications&lt;/tt&gt; DBUS specification.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="input-for-gtk3"&gt;
&lt;h3&gt;input for gtk3&lt;/h3&gt;
&lt;p&gt;Thanks to the work of &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt;, we now support the Hildon virtual
keyboard in Gtk 3 (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/537"&gt;issue #537&lt;/a&gt;) - this is great news
in particular for devices that lack a hardware keyboard, such as the pinephone
and the Droid bionic. In addition, this also allows for switching keyboard
layouts from Gtk 3 applications using hildon-input-method.&lt;/p&gt;
&lt;p&gt;Gtk3 text input is shown below on the Droid 4:&lt;/p&gt;
&lt;img alt="" src="/images/gtk3-dino-im.gif" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;(if you happened to see a mouse cursor, that's just how ffmpeg captures the
touch screen events)&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="mobile-data-improvements"&gt;
&lt;h3&gt;mobile data improvements&lt;/h3&gt;
&lt;p&gt;The &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;libicd-network-ofono&lt;/span&gt;&lt;/tt&gt; package (for mobile data) has seen a lot of
improvements, see &lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-ofono/commits/master"&gt;all the commits from September
18th&lt;/a&gt;
- making it now a quite usable plugin.&lt;/p&gt;
&lt;p&gt;DHCP for mobile data has been fixed now (see &lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-ipv4/pull/4"&gt;libicd-network-ipv4 PR #4&lt;/a&gt;, and one of the
shell scripts is now also more &lt;tt class="docutils literal"&gt;sh&lt;/tt&gt; compliant (see &lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-ipv4/pull/6"&gt;libicd-network-ipv4 PR #6&lt;/a&gt;).&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="additional-software-changes"&gt;
&lt;h2&gt;Additional Software changes&lt;/h2&gt;
&lt;div class="section" id="hildon-application-manager"&gt;
&lt;h3&gt;hildon-application-manager&lt;/h3&gt;
&lt;p&gt;The Hildon application manager no longer shows debug symbol packages, which was
quite pointless for most users and showed every package twice - once for the
actual package, and once for its debug symbols.&lt;/p&gt;
&lt;p&gt;Furthermore, in the process of porting hildon-application-manager to Chimaera
(&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-application-manager/commits/master"&gt;which&lt;/a&gt;
&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-application-manager/commit/c9a3b01f3c39990df33ae5e02928327df50f8615"&gt;was&lt;/a&gt;
&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-application-manager/commit/fb07a532ddb8fa3f96880188e97e242f3e2c35cc"&gt;actually&lt;/a&gt;
&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-application-manager/commit/5ce3388cabe671aff2627818b94616f86a5376de"&gt;quite&lt;/a&gt;
&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-application-manager/commit/a5b0591a768155087ffa908da01c609e53c2012b"&gt;a&lt;/a&gt;
&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-application-manager/commit/7acb76a488701bec05fd97d2eca70c06f8514b25"&gt;sizeable&lt;/a&gt;
&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-application-manager/commit/addecba6527b58da62c1d5cc4e568c4cfbacf63a"&gt;undertaking&lt;/a&gt;),
we have fixed the problem that made the &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-application-manager/commit/ed2def0fe7151acb0728a3906f25debd206874f2"&gt;application crash when the &amp;quot;Details&amp;quot;
button was being pressed&lt;/a&gt;.&lt;/p&gt;
&lt;img alt="" src="/images/ham-details.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;There are also updates to the &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-application-manager/pull/2"&gt;Bulgarian translation&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="qtwebbrowser"&gt;
&lt;h3&gt;qtwebbrowser&lt;/h3&gt;
&lt;p&gt;In Chimaera, we have a custom &lt;tt class="docutils literal"&gt;qtwebengine&lt;/tt&gt; build to ensure that
&lt;tt class="docutils literal"&gt;qtwebbrowser&lt;/tt&gt; can use 3D acceleration (unfortunately &lt;tt class="docutils literal"&gt;qtwebengine&lt;/tt&gt; has a
hardcoded list of Qt platforms that it supports, so we had to add &lt;tt class="docutils literal"&gt;&amp;quot;maemo&amp;quot;&lt;/tt&gt; to
this list). As a result, the browser is now much snappier. Additionally, the
browser now also &lt;a class="reference external" href="https://github.com/maemo-leste-extras/qtwebbrowser/commit/4704f8f793044cdf920a408cae4397fa8b0f2415"&gt;supports portrait mode in Chimaera&lt;/a&gt;.
We'll be working on further integrating the browser in Maemo so that it's easier
to interact with.&lt;/p&gt;
&lt;img alt="" src="/images/qtwebbrowser-portrait-d4.png" style="width: 324px; height: 576px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="osso-xterm"&gt;
&lt;h3&gt;osso-xterm&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;osso-xterm&lt;/span&gt;&lt;/tt&gt; &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/23"&gt;now opens the browser&lt;/a&gt; when a link is touched /
clicked upon.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="chimaera-porting"&gt;
&lt;h2&gt;Chimaera porting&lt;/h2&gt;
&lt;p&gt;As mentioned in other places in the post, we're actively working on porting
Maemo Leste from Devuan Beowulf (Debian buster) to Devuan Chimaera (Debian
bullseye).&lt;/p&gt;
&lt;p&gt;Following Debian stable brings along the benefits of up to date software, timely
security updates and in general new things that the free software ecosystem
brings. In addition, we will also need to maintain less 'forks' of software:
sometimes we have to provide a newer package of some software, which requires us
to fork it to our own repositories and then build it in our CI, which in turns
takes time and also requires us to stay on top of updates and fixes.&lt;/p&gt;
&lt;p&gt;The Chimaera image will &lt;strong&gt;be our first image that provides working phone calls out
of the box&lt;/strong&gt; on several supported devices. Previously various cellular packages
were hidden in the development repositories -- so our beowulf images never even
powered on the modem by default.&lt;/p&gt;
&lt;p&gt;The main remaining challenge for supporting Chimaera fully is supporting elogind
compatible sessions, which we hope to finish in one or two weeks.&lt;/p&gt;
&lt;!-- We also had to increase the default `disk size for images --&gt;
&lt;!-- &lt;https://github.com/maemo-leste/bugtracker/issues/625&gt;`_. --&gt;
&lt;p&gt;Progress can be tracked in &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/644"&gt;issue #644&lt;/a&gt; and &lt;a class="reference external" href="https://maedevu.maemo.org/pkgweb/"&gt;pkgweb&lt;/a&gt; already shows the packages in Chimaera and
the image builder has been updated to support building Chimaera images.&lt;/p&gt;
&lt;p&gt;We do not yet encourage users to switch - we plan to have the full release ready
in February and more details will emerge by then.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="community-and-supporting-software-updates"&gt;
&lt;h2&gt;Community and supporting software updates&lt;/h2&gt;
&lt;div class="section" id="openfest-2022"&gt;
&lt;h3&gt;OpenFest 2022&lt;/h3&gt;
&lt;p&gt;Maemo Leste had a presence at the open and free software conference in Sofia,
Bulgaria, in October of 2022. &lt;tt class="docutils literal"&gt;Wizzup&lt;/tt&gt; &lt;a class="reference external" href="https://www.youtube.com/watch?v=I2qnjBZ-Scg"&gt;gave a talk on Sunday&lt;/a&gt;, and we also had a very well
visited stand during both days of the conference. Here we were showing
off various devices that Maemo Leste runs on (anticlockwise from bottom left):&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Allwinner LIME20 tablet in a metal enclosure with wifi and a LTE modem attached over
USB&lt;/li&gt;
&lt;li&gt;Motorola Bionic&lt;/li&gt;
&lt;li&gt;Motorola Droid 4&lt;/li&gt;
&lt;li&gt;Pinephone&lt;/li&gt;
&lt;li&gt;Raspberry pi with a HDMI/USB touchscreen attached&lt;/li&gt;
&lt;li&gt;Allwinner A33 tablet&lt;/li&gt;
&lt;li&gt;Two more Droid 4&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Nokia N900 was missing from the stand as we forgot to bring one.&lt;/p&gt;
&lt;p&gt;The photos below show off parts of the stand, starting with an overview of the
stand:&lt;/p&gt;
&lt;img alt="" src="/images/openfest-2022-1.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;p&gt;Here is the tablet that &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; has made Leste work on (there are
no dd'able images online at the moment):&lt;/p&gt;
&lt;img alt="" src="/images/openfest-2022-2.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;p&gt;Below is an OLIMEX LIME2 (Allwinner A20) board with a resistive 7&amp;quot; screen
(800x480px) in a &lt;a class="reference external" href="https://www.olimex.com/Products/OLinuXino/LCD/LCD7-METAL-FRAME/"&gt;LCD Metal Frame&lt;/a&gt; box, with
both a USB wifi dongle and an OLIMEX &lt;a class="reference external" href="https://www.olimex.com/Products/IoT/LTE/USB-gLINK-ANT/open-source-hardware"&gt;USB LTE module&lt;/a&gt;.
This device was actually quite cool, since it was able to send SMSes and make
phone calls, just without the audio routing that one would usually expect from a
phone call (the USB LTE module doesn't allow for this). As such, it was
basically a Maemo Leste tablet that can make phone calls. Various attendees used
the device to call themself and noticed that indeed worked.&lt;/p&gt;
&lt;p&gt;In this photo, it is showing a Jabber chat in Conversations.&lt;/p&gt;
&lt;img alt="" src="/images/openfest-2022-3.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;p&gt;We also had some cool propaganda stickers made for the conference, which were
quite popular.&lt;/p&gt;
&lt;img alt="" src="/images/openfest-2022-4.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="documentation"&gt;
&lt;h3&gt;Documentation&lt;/h3&gt;
&lt;p&gt;We're working with a few folks to develop a centralised and organised place for
developer documentation, and also to create a user guide. Hopefully we'll have
something to share in a month or two.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="legal-entity-association"&gt;
&lt;h3&gt;Legal entity: Association&lt;/h3&gt;
&lt;p&gt;Maemo Leste is now a registered non profit association in the public interest
in the country of Bulgaria (&lt;a class="reference external" href="https://portal.registryagency.bg/CR/en/Reports/ActiveConditionTabResult?uic=206961328"&gt;see the registration here&lt;/a&gt;).
This makes it easier to purchase and send hardware to interested developers and
allows us fund developers using the money we have left over from previous
funding rounds (some people who worked on the funding projects decided to donate
the funding they got to the association). The association is legally prohibited from
selling anything and currently consists of 8 founding members.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="jenkins"&gt;
&lt;h3&gt;Jenkins&lt;/h3&gt;
&lt;p&gt;Our Jenkins CI (Continuous Integration) setup, which we use to build all the
packages for Maemo Leste was running into problems where its hard disk was
filled up. We realised that &lt;strong&gt;every single build we ever did was saved to
disk&lt;/strong&gt;, which was causing it to fill up. Going forward, only the last three
successful builds of each package are now saved.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="themes"&gt;
&lt;h3&gt;Themes&lt;/h3&gt;
&lt;p&gt;We've been looking at using AI to upscale some of the background images of our
themes using Real-ESRGAN. Most of themes were developed only for the Nokia N900,
with a screen resolution of 800x480 - this makes many of the theme backgrounds
looks a little ugly on the larger devices that we have. We've made pretty good
progress with this, and hopefully in the next few weeks we'll push out a few
'upscaled' themes that genuinely look better on higher resolution screens.&lt;/p&gt;
&lt;p&gt;The work on the beta theme can be examined &lt;a class="reference external" href="https://wizzup.org/dirlist/maemo-leste/theme-upsample/beta/"&gt;in this directory&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="tor-hidden-service"&gt;
&lt;h3&gt;Tor Hidden Service&lt;/h3&gt;
&lt;p&gt;Maemo Leste now has a Tor hidden service for its package repository. The URL
is: &lt;a class="reference external" href="http://maemopkgove3kc2xxzyuk26j3ict6qzbqi3govge3s6h5aokr2uo6eqd.onion"&gt;http://maemopkgove3kc2xxzyuk26j3ict6qzbqi3govge3s6h5aokr2uo6eqd.onion&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/570"&gt;issue #570&lt;/a&gt; for a
list that also includes the Devuan hidden service URL.
Users will have to install &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;apt-transport-tor&lt;/span&gt;&lt;/tt&gt; for this to work.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="lapdock"&gt;
&lt;h3&gt;Lapdock&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Blago&lt;/tt&gt; received a Motorola Lapdock and he managed to hook the Motorola
Droid 4 up to it. Here is a frontal view:&lt;/p&gt;
&lt;img alt="" src="/images/lapdock-front-view.jpg" style="width: 585px; height: 439px;" /&gt;
&lt;p&gt;A view from the side, with the Motorola Droid 4 being visible in the back:&lt;/p&gt;
&lt;img alt="" src="/images/lapdock-side-view.jpg" style="width: 585px; height: 439px;" /&gt;
&lt;p&gt;Another view, but of the back of the lapdock:&lt;/p&gt;
&lt;img alt="" src="/images/lapdock-back-view.jpg" style="width: 585px; height: 439px;" /&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Blago&lt;/tt&gt; is still working on turning all of this into a package, but we will
eventually have support for lapdocks (and other external displays, since this
just attached to the HDMI port on the phone).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="extra-packages"&gt;
&lt;h3&gt;Extra packages&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;norayr&lt;/tt&gt; has contributed various new packages:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/msid/"&gt;msid&lt;/a&gt; - a sid player for the
Maemo platform;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/live-wallpaper"&gt;live-wallpaper&lt;/a&gt;
support;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/shermans-aquarium-maemo"&gt;shermans-aquarium-maemo&lt;/a&gt;, for a nice
live aquarium background on your phone;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/mstardict"&gt;mstardict&lt;/a&gt; - a frontend
for star dict dictionary files. Also check out the &lt;a class="reference external" href="https://leste.maemo.org/Extras/MStarDict"&gt;wiki page here&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/easylist"&gt;easylist&lt;/a&gt; - an application
to manage lists of notes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="translation-gui"&gt;
&lt;h3&gt;translation gui&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;sanderfoobar&lt;/tt&gt; is working on an &lt;strong&gt;offline&lt;/strong&gt; machine-based (neural network)
translation tool, with both command line and user interface, for Maemo. It is
based on the same models and code that are used by &lt;a class="reference external" href="https://addons.mozilla.org/en-US/firefox/addon/firefox-translations/"&gt;Firefox Translations&lt;/a&gt; - he
hopes to present this work in some shape in the next few weeks. Currently it can
translate a sentence in under a second from and to various European
languages. The project welcomes any projects that provide these cool features
without relying on cloud services.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="what-s-next"&gt;
&lt;h2&gt;What's next&lt;/h2&gt;
&lt;p&gt;The author of this news post has made it a personal goal to switch from his
Nokia N900 Fremantle phone to a Maemo Leste Droid 4 phone on
February 1st, 2023 - exactly five years after the first Maemo Leste post. At
that point, his contacts and messages will be imported onto the Droid 4 and the
SIM will be moved.&lt;/p&gt;
&lt;p&gt;For this to be achieved, a few tasks will still need to be completed:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Finish our Chimaera port;&lt;/li&gt;
&lt;li&gt;Support Telepathy in sphone so that phone calls are managed using
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;telepathy-ring&lt;/span&gt;&lt;/tt&gt; instead of directly with &lt;tt class="docutils literal"&gt;ofono&lt;/tt&gt; - this will also help
bring SIP and XMPP calls closer to working state;&lt;/li&gt;
&lt;li&gt;Support messaging contacts from conversations;&lt;/li&gt;
&lt;li&gt;Support incoming message notifications with conversations;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you have questions, are interested in specifics or helping out, or wish to
have a specific package ported, please see our bugtracker.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900, Motorola Droid 3, Droid 4 and Bionic units
available for interested developers&lt;/strong&gt;, so if you are interested in helping out
but have trouble acquiring a device, let us know...&lt;/p&gt;
&lt;img alt="" src="/images/massdroid.jpg" style="width: 666px; height: 375px;" /&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay
up to date, ask questions and/or help out. Another great way to get in touch is
to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join our effort!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="telepathy"></category><category term="conversations"></category><category term="contacts"></category><category term="rtcom"></category><category term="calls"></category><category term="sphone"></category><category term="pinephone"></category><category term="performance"></category><category term="mesa"></category><category term="bullseye"></category><category term="chimaera"></category><category term="funding"></category><category term="droid4"></category></entry><entry><title>Maemo Leste - Sixteenth Update: November and December 2021, January - April 2022</title><link href="https://maemo-leste.github.io/maemo-leste-sixteenth-update-november-and-december-2021-january-april-2022.html" rel="alternate"></link><published>2022-04-16T09:00:00+02:00</published><updated>2022-04-16T09:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2022-04-16:/maemo-leste-sixteenth-update-november-and-december-2021-january-april-2022.html</id><summary type="html">&lt;p&gt;The long overdue update is finally here, and it's our biggest update yet.
(Also check out our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-fifteenth-update-januari-october-2021.html"&gt;previous update&lt;/a&gt; in case you missed it).&lt;/p&gt;
&lt;p&gt;These past few months have been heavily about stability and bug fixing, but
there are some cool additions and improvements to our userspace as well, in …&lt;/p&gt;</summary><content type="html">&lt;p&gt;The long overdue update is finally here, and it's our biggest update yet.
(Also check out our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-fifteenth-update-januari-october-2021.html"&gt;previous update&lt;/a&gt; in case you missed it).&lt;/p&gt;
&lt;p&gt;These past few months have been heavily about stability and bug fixing, but
there are some cool additions and improvements to our userspace as well, in
particular to the communication and phone aspects of Maemo Leste.&lt;/p&gt;
&lt;p&gt;Here are a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;improved performance and stability for graphics drivers for OMAP / PowerVR based devices such as Nokia
N900 and the Motorola Droid 3, Motorola Droid 4 and Motorola Bionic;&lt;/li&gt;
&lt;li&gt;graphics rendering problems on the Pinephone and Pinetab are all fixed;&lt;/li&gt;
&lt;li&gt;Nokia N900 kernel support is now based on 5.15 instead of 5.1 fixing many
regressions along the way;&lt;/li&gt;
&lt;li&gt;addition of the Maemo contacts application and contacts library&lt;/li&gt;
&lt;li&gt;updates on the conversations application, phone call support and the
telepathy framework and user interfaces;&lt;/li&gt;
&lt;li&gt;2-3 day battery life for the supported Motorola Droid devices&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="section" id="images-and-upgrading"&gt;
&lt;h2&gt;Images and upgrading&lt;/h2&gt;
&lt;p&gt;We are still very actively developing Maemo Leste, so many things remain in
flux. As a result, you might have to occassionally update using &lt;tt class="docutils literal"&gt;apt
&lt;span class="pre"&gt;dist-upgrade&lt;/span&gt;&lt;/tt&gt; as opposed to just &lt;tt class="docutils literal"&gt;apt upgrade&lt;/tt&gt; - this is especially true for
this update. Alternatively you can just install the latest images if things do
break.&lt;/p&gt;
&lt;p&gt;In the past, sometimes Maemo Leste upgrades would cause unexpected reboots,
breaking the system, we've tried to now solve those problems by &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/blob/master/leste-config-common/usr/sbin/policy-rc.d.leste"&gt;preventing
certain packages from restarting&lt;/a&gt;.
Additionally, the presence of the &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/blob/master/leste-config-common/etc/no_lg_reboots.leste"&gt;/etc/no_lg_reboots&lt;/a&gt;
file will prevent the system from rebooting in cases where services do crash
repeatedly.&lt;/p&gt;
&lt;div class="section" id="new-images"&gt;
&lt;h3&gt;New images&lt;/h3&gt;
&lt;p&gt;We spin new images weekly, but for this blog post have checked that all of the
supported devices (&lt;tt class="docutils literal"&gt;n900&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;droid3&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;droid4&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;bionic&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;pinephone&lt;/tt&gt;)
boot fine. &lt;a class="reference external" href="https://maedevu.maemo.org/images/"&gt;You can find the images here&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="hardware-drivers"&gt;
&lt;h2&gt;Hardware &amp;amp; Drivers&lt;/h2&gt;
&lt;div class="section" id="omap-and-powervr-drivers"&gt;
&lt;h3&gt;OMAP and PowerVR drivers&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; has been working really hard together with some other Maemo
Leste developers to move to the latest PowerVR drivers available - both in
kernel and userspace. In addition to that, there is now &lt;strong&gt;2D EXA&lt;/strong&gt; acceleration
in X using the PowerVR drivers as well. This has been a multi-year effort by
many people, and it's finally here, bringing all devices to the latest Linux
kernels.&lt;/p&gt;
&lt;p&gt;This involved integrating and &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/mesa/commits/maemo/beowulf"&gt;improving on the chromium os PowerVR mesa driver&lt;/a&gt;
(which also brought all the devices up to a newer mesa version - &lt;tt class="docutils literal"&gt;21.2.5&lt;/tt&gt;),
fixing up the &lt;a class="reference external" href="https://github.com/maemo-leste/xf86-video-omap/commits/master"&gt;xf86-video-omap&lt;/a&gt; driver to
support EXA and fix up its buffer management, rotation support, as well as many
fixes to the kernel, here are just a few:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/067976f0afd4a65bf32a3f450ee42f508a1b0612"&gt;https://github.com/maemo-leste/droid4-linux/commit/067976f0afd4a65bf32a3f450ee42f508a1b0612&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/7708a2ab996360826fa085374ca794cfd034cc4b"&gt;https://github.com/maemo-leste/droid4-linux/commit/7708a2ab996360826fa085374ca794cfd034cc4b&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/f56836db3ec4210c5cfaf40fa721a6e21cd7730e"&gt;https://github.com/maemo-leste/droid4-linux/commit/f56836db3ec4210c5cfaf40fa721a6e21cd7730e&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In addition to all of that impressive work, we're also hoping to finally enable
the &lt;strong&gt;tear free&lt;/strong&gt; operation of the Droid 4 display.&lt;/p&gt;
&lt;p&gt;The driver also improves stability and fixes various crashes in the previous
drivers. The driver is available immediately for the Nokia N900, Motorola
Droid 3, Motorola Droid 4 and Droid Bionic.&lt;/p&gt;
&lt;p&gt;The Nokia N900 won't support rotation yet, but at least it will &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/578"&gt;no longer
segfault&lt;/a&gt; - we know what
needs to be done to support rotation, and it's in the works.&lt;/p&gt;
&lt;p&gt;Some more background information can be found in &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/524"&gt;issue #524&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone-mesa-and-clutter"&gt;
&lt;h3&gt;Pinephone, Mesa and Clutter&lt;/h3&gt;
&lt;p&gt;Maemo Leste on the Pinephone suffered from various graphical glitches, but these
have now all finally been resolved. There were various problems to resolve, the
first one was in clutter, &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/clutter-0.8/commit/13903d341009266d0bfa19806e74625a16ab552a"&gt;which assumed that the display drivers were not using
double buffering&lt;/a&gt;,
even though they in fact were.&lt;/p&gt;
&lt;p&gt;Once that was fixed, another problem surfaced, regarding the preservation of
EGL buffers in Mesa. Clutter relies on the fact that the buffers are preserved,
&lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/clutter-0.8/commit/6f753308446ff833d8c2713357cdc97d94dcb15b"&gt;but didn't actually request that support&lt;/a&gt;.
However, requesting the support was not enough, because Mesa doesn't (always)
implement the feature, for which we &lt;a class="reference external" href="https://gitlab.freedesktop.org/mesa/mesa/-/issues/5800"&gt;filed this report&lt;/a&gt; at mesa.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;enunes&lt;/tt&gt; was particularly instrumental in helping working around the problem.
providing us with a &lt;a class="reference external" href="https://github.com/maemo-leste-upstream-forks/mesa/commit/dde856128e67b0d3760cd3b8fa95c4c1463168bd"&gt;minimal stop-gap patch&lt;/a&gt;
to add support for this feature to mesa while we improve clutter further to
switch to buffer age extensions, rather than relying on this feature being
available.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;p&gt;The Nokia N900 was stuck on Linux 5.1 for quite a long time in Maemo Leste,
because of the aforementioned graphics driver troubles, which have now finally
been resolved. As such we set forth to move to the latest Linux kernel only to
found that the support was once again quite broken. More precisely:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/fa7c9a0d1cecf00579b7388f64393ea26c9433d5"&gt;Wifi was broken&lt;/a&gt;
(&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/572"&gt;see issue #572&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/4f9a153a44cb4a4d34e265e451da507b64e042cd"&gt;LEDs were broken&lt;/a&gt;
(also &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/af2872bfcd6eb527b227b79fddbf6927952c9f86"&gt;device tree work was required)&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;OFF mode was never being hit again &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/b119ddd34750b1a9e2d66745912a2fe9479b85fe"&gt;due to memory compaction&lt;/a&gt;
and &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/a42cb7d0afcde0d4c1dfdfbb6f5eb33597387481"&gt;thermal driver changes&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;The &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/2c7e4a1ac8ec1f908927793e893566aac3dcb9df"&gt;N900 modem driver would panic and reset the device upon usage&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/083a17e41a4a9b44ac37de26e5ac357289248e6b"&gt;Automatically turning on OFF mode caused race conditions during boot that causes resets&lt;/a&gt;;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After spending a week bisecting to find all the various problems, various
fixes have already made it mainline, but other breakage still needs more
investigate before we can send a fix upstream, but at least our kernel carries
the necessary fixes and reverts.&lt;/p&gt;
&lt;p&gt;We've also unified the Droid 4 and N900 kernel, so all this work can now be
found here (the repository will be renamed to &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;omap-linux&lt;/span&gt;&lt;/tt&gt; in due time):&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commits/wip/n900/maemo-5.15-cleaned-up"&gt;https://github.com/maemo-leste/droid4-linux/commits/wip/n900/maemo-5.15-cleaned-up&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As part of the kernel unification, we also created &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-kernel-config"&gt;maemo-kernel-config&lt;/a&gt; to create kernel images
that are N900 u-boot compatible.&lt;/p&gt;
&lt;p&gt;We're also still working on further Nokia N900 power management improvements, to
this end we have created the &lt;a class="reference external" href="https://github.com/maemo-leste/n900-pm"&gt;n900-pm script&lt;/a&gt;, and have starting improving power
management of various drivers (touchscreen work &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/fbe57fb618ffefaed2526acfc3d53b8a8a6fcc79"&gt;to use runtime pm&lt;/a&gt;
and to &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/commit/1fb2c44148536463875bb1d4bbb35c617d7b72e7"&gt;disable irqs upon suspend&lt;/a&gt;
already help some), but there are more drivers that need to be worked on.&lt;/p&gt;
&lt;p&gt;This &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/545"&gt;long github issue&lt;/a&gt;
details some of the things we went through to get the N900 back in shape.&lt;/p&gt;
&lt;p&gt;As of writing, we now run the N900 on Linux 5.15 (see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/587"&gt;issue #587&lt;/a&gt;), and will soon switch to 5.16
or 5.17 in our development channel(s).&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://twitter.com/maemoleste/status/1469852192848941058"&gt;We also tweeted about this work&lt;/a&gt; in what turned out
to be our most popular tweet so far.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="motorola-droid-3-droid-4-bionic"&gt;
&lt;h3&gt;Motorola Droid 3, Droid 4, Bionic&lt;/h3&gt;
&lt;div class="section" id="headphone-plug-events"&gt;
&lt;h4&gt;Headphone plug events&lt;/h4&gt;
&lt;p&gt;The Droid 4 (and other mapphones) now support detecting the (un)plugging of a
headphone, to ensure that audio is routed properly.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="droid-3-images"&gt;
&lt;h4&gt;Droid 3 images&lt;/h4&gt;
&lt;p&gt;After reporting on the Droid 3 port in the previous update, we are now also
offering images for the Droid 3. It's a neat device, much like the Droid 4,
feels more sturdy, but comes with less RAM. We still have more issues to work on
for the Droid 3 port, though - in particular there is still a common problem
where the Droid 3 freezes and resets.&lt;/p&gt;
&lt;p&gt;The latest Droid 3 image can be found here - keep in mind that a special
clownboot kexec bootloader setup is still required (&lt;a class="reference external" href="https://github.com/MerlijnWajer/bionic-clown-boot/tree/solana"&gt;see the instructions here&lt;/a&gt;).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="power-management"&gt;
&lt;h4&gt;Power management&lt;/h4&gt;
&lt;p&gt;A new mce module called &lt;a class="reference external" href="https://github.com/maemo-leste/mce/commit/f25e8f20562a358d3df37c14e5d7b8639ec869c8"&gt;quirks-mapphone&lt;/a&gt;
has been introduced, introducing additional power saving mechanisms. For
example, it will cause the modem not to report on signal strength if the device
screen is turned off, which prevents waking up ofono, and then D-Bus, and then
programs that listen for ofono on D-Bus. The module also turns off the secondary
CPU to prevent additional wakeups (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/594"&gt;issue #594&lt;/a&gt;), but only if the
screen is turned off.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; improved the responsiveness of the module somewhat, leading to
faster screen lock and unlock (see &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/52/files"&gt;mce PR #52&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Below is a screenshot from a Motorola Droid 4 with a used battery, showing that
it has two days of online time left. Keep in mind that this means the device
would be online all the time - this is not about suspend to ram time (which is not
necessary on OMAP4). Similar time estimates can be expected on the Droid 3 and
the Bionic, and there are still things to improve upon. OMAP4 does not yet
support &lt;tt class="docutils literal"&gt;OFF&lt;/tt&gt; mode, but when it does we suspect we will see further power
savings.  One audio clock also isn't always gated yet, once we figure out why
that is the case, we could save a few more milliwatts.&lt;/p&gt;
&lt;img alt="" src="/images/droid4-2days.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone"&gt;
&lt;h3&gt;Pinephone&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;rafael2k&lt;/tt&gt; has helped getting our PinePhone support into much better shape. We
now ship a 5.15-based kernel fixing up the modem support and audio during phone
calls.&lt;/p&gt;
&lt;p&gt;We now also have a package for &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/327"&gt;PinePhone bluetooth firmware&lt;/a&gt;. Combined with the
graphics updates mentioned in &lt;a class="reference internal" href="#pinephone-mesa-and-clutter"&gt;Pinephone, Mesa and Clutter&lt;/a&gt; and supported for
the &lt;a class="reference external" href="https://github.com/maemo-leste/pine64-kernel/pull/2"&gt;light and proximity sensor&lt;/a&gt;, the Pinephone is in
good shape - better than it has ever been on Maemo Leste.&lt;/p&gt;
&lt;p&gt;Last but definitely not least, our newer PinePhone kernel images also support
the hardware keyboard case for the PinePhone.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="core-software-additions-and-changes"&gt;
&lt;h2&gt;Core Software additions and changes&lt;/h2&gt;
&lt;div class="section" id="osso-abook-addressbook"&gt;
&lt;h3&gt;osso-abook (addressbook)&lt;/h3&gt;
&lt;p&gt;After many months of hard work (maybe even years),
the &lt;a class="reference external" href="https://github.com/maemo-leste/osso-abook/"&gt;Maemo addressbook library&lt;/a&gt; is now
ready and the &lt;a class="reference external" href="https://github.com/maemo-leste/osso-addressbook"&gt;Contacts user interface&lt;/a&gt; based on the library is also
shaping up nicely.&lt;/p&gt;
&lt;p&gt;Importing contacts from a Fremantle Nokia N900 works, and synchronising them
with remote servers using syncevolution has also been reported to work. The
email client (&lt;cite&gt;modest&lt;/cite&gt;) has already integrated support for the address book.&lt;/p&gt;
&lt;img alt="" src="/images/contacts.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;The screenshot above shows the contact overview from the main &amp;quot;Contacts&amp;quot;
application - applications can also embed this view or use it as a dialog. All
the contacts imported from a Nokia N900 that has been in use for over 10 years.&lt;/p&gt;
&lt;img alt="" src="/images/contacts-myinformation.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;This is the screen of the personal information of the user of the device.&lt;/p&gt;
&lt;img alt="" src="/images/contacts-settings.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Some of the contact settings are not fully implemented yet - for example, we
don't support video calling yet, but at least the setting is there.&lt;/p&gt;
&lt;img alt="" src="/images/contacts-options.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;This screenshot shows the context menu of the contacts application in the
overview window.&lt;/p&gt;
&lt;img alt="" src="/images/contacts-newcontact.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Creating new contacts is also possible!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="conversations"&gt;
&lt;h3&gt;conversations&lt;/h3&gt;
&lt;p&gt;We've been working on an open source replacement for the Conversations
application, with many of the core components written by a newcomer - &lt;tt class="docutils literal"&gt;dsc&lt;/tt&gt;.
The &lt;a class="reference external" href="https://github.com/maemo-leste/conversations"&gt;replacement is written in Qt5 and QML&lt;/a&gt;, and can currently read and
show the rtcom communications database, but has only limited addressbook
integration. We have had some luck integrating Telepathy, and both sending and
receiving SMS/IRC/XMPP messages works (including logging the messages to the
RTcom database), but the code is not yet available in the package repositories,
as there are still some bugs to solve when using multiple Telepathy accounts.&lt;/p&gt;
&lt;p&gt;For it to fully work, more work is also required for the Telepathy integration
in other parts of the system, in particular we need to get some of the other
RTCom components in place. &lt;a class="reference external" href="https://leste.maemo.org/User:Wizzup/Telepathy"&gt;This wiki page&lt;/a&gt; contains some notes on the
various components, but it hasn't been kept up to date with the latest
developments yet.&lt;/p&gt;
&lt;p&gt;The following still needs to be fixed up or outright implemented:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Support for starting a new chat with a potentially unknown contact&lt;/li&gt;
&lt;li&gt;Support for multi-person chat rooms&lt;/li&gt;
&lt;li&gt;Support for multiple accounts (this should in theory work, but we have to
debug how we use Telepathy Qt here)&lt;/li&gt;
&lt;li&gt;Various UI improvements to clearly separate the different protocols&lt;/li&gt;
&lt;li&gt;Better support for system themes, some of the assets are currently
semi-hardcoded in the QML files&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Nevertheless - here are some screenshots of the current application.&lt;/p&gt;
&lt;p&gt;The screenshot below shows the recent messages overview, scrolling in this
screen is also very smooth.&lt;/p&gt;
&lt;img alt="" src="/images/conversations-overview.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;The settings in Conversations are currently limited to switching between the
built-in themes and changing the text scaling.&lt;/p&gt;
&lt;img alt="" src="/images/conversations-settings.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;The chat view of a specific conversation typically looks something like this&lt;/p&gt;
&lt;img alt="" src="/images/conversations-dapsi-message-view-landscape.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;and it works in portrait mode, too!&lt;/p&gt;
&lt;img alt="" src="/images/conversations-dapsi-message-view.png" style="width: 324px; height: 576px;" /&gt;
&lt;!-- .. image:: /images/conversations-dapsi-message-view-irssitheme.png --&gt;
&lt;!-- :width: 324px --&gt;
&lt;!-- :height: 576px --&gt;
&lt;p&gt;And of course, we just have to show off the irssi theme...&lt;/p&gt;
&lt;img alt="" src="/images/conversations-dapsi-message-view-irssitheme-landscape.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="rtcom-accounts-ui"&gt;
&lt;h3&gt;rtcom-accounts-ui&lt;/h3&gt;
&lt;p&gt;The user interface to configure communication accounts is &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;rtcom-accounts-ui&lt;/span&gt;&lt;/tt&gt;,
which &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; has also been working on. Currently there is already a
control panel plugin, which allows configuring a XMPP account. We will be
integrating this into conversations Telepathy support, at which point we should
soon have working communications for many protocols. At that point, we'll add
more plugins for &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;rtcom-accounts-ui&lt;/span&gt;&lt;/tt&gt; to support more protocols.&lt;/p&gt;
&lt;p&gt;The last piece of this work will be getting &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;rtcom-presence-ui&lt;/span&gt;&lt;/tt&gt; into shape,
which adds presence and also (we believe) managing the online status of the
Telepathy accounts of the user.&lt;/p&gt;
&lt;p&gt;These screenshots show the control panel applet in action (and no, we didn't forget
to remove the email address or name):&lt;/p&gt;
&lt;img alt="" src="/images/rtcom-accounts-list.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/rtcom-account-edit.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/rtcom-account-advanced.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;The relevant repositories are here:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/libaccounts"&gt;https://github.com/maemo-leste/libaccounts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-accounts-ui"&gt;https://github.com/maemo-leste/rtcom-accounts-ui&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-accounts-plugin-gtalk"&gt;https://github.com/maemo-leste/rtcom-accounts-plugin-gtalk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-accounts-ui-client"&gt;https://github.com/maemo-leste/rtcom-accounts-ui-client&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="sphone"&gt;
&lt;h3&gt;sphone&lt;/h3&gt;
&lt;p&gt;The sphone dialer application has gained basic support for the Maemo address
book, and it can also write text and call events to the RTCom database. This
means that all incoming messages and calls are being logged (that's a good
thing) -- in the future other applications (like conversations) will likely deal
with the logging of incoming messages, though.&lt;/p&gt;
&lt;img alt="" src="/images/sphone-contacts.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="charging-mode"&gt;
&lt;h3&gt;charging-mode&lt;/h3&gt;
&lt;p&gt;Our latest images (and also upgraded devices) now ship with a feature called
&amp;quot;charge mode&amp;quot;, which will boot to a special charging-only mode when the phone
starts with a usb cable providing power. This was created (based on existing
software) by &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt;, and here is a video he made to show off the work:&lt;/p&gt;
&lt;video controls height="480px" width="720px"&gt;
&lt;source src="images/charge-mode.webm" type="video/webm"&gt;
&lt;/video&gt;&lt;/div&gt;
&lt;div class="section" id="virtual-keyboard"&gt;
&lt;h3&gt;Virtual keyboard&lt;/h3&gt;
&lt;p&gt;The virtual keyboard has a mode where it only shows special keys - this had
silently been broken but has since been fixed.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="maemo-launcher"&gt;
&lt;h3&gt;maemo-launcher&lt;/h3&gt;
&lt;p&gt;maemo-launcher has seen some fixes with regards to resolving symlinks that are
multiple levels deep, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/484"&gt;issue #484&lt;/a&gt;.
This helps selecting alternative default terminal applications.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="hildon-desktop"&gt;
&lt;h3&gt;hildon-desktop&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; fixed a particularly interesting bug in hildon-desktop where scrolling
the applications would immediately stop scrolling when the touch event ended
(i.e. the user stopped touching the touch screen), this was ultimately related
to a time overflow, and since &lt;tt class="docutils literal"&gt;Fri May 15 02:09:25 2015 UTC&lt;/tt&gt; the scroll
events were no longer smooth. See &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/pull/17"&gt;PR 17&lt;/a&gt; for more details.&lt;/p&gt;
&lt;p&gt;hildon-desktop also now &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/pull/18"&gt;quotes commands send to the terminal emulator&lt;/a&gt;, ensuring that the
commands get through correctly.&lt;/p&gt;
&lt;p&gt;libhildondesktop will now also (re)load applications and widget applets upon
install, &lt;a class="reference external" href="https://github.com/maemo-leste/libhildondesktop/commit/b672af1a60fadbf0453befb908ebf4fc74312b8d"&gt;fixed in this commit&lt;/a&gt;,
for some more information, one can also check out &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/459"&gt;issue 459&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;GTK 3 and higher applications now render properly in fullscreen mode, see
this &lt;a class="reference external" href="https://github.com/maemo-leste/libmatchbox2/pull/8"&gt;libmatchbox PR #8&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="volume-applet"&gt;
&lt;h3&gt;Volume applet&lt;/h3&gt;
&lt;p&gt;It is now possible to change the volume of the headphones or speakers (depending
on what is active) using the volume buttons. &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-statusmenu-volume/pull/1"&gt;maemo-statusmenu-volume pull
request #1&lt;/a&gt; and
the follow up &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-statusmenu-volume/pull/2"&gt;pull request #2&lt;/a&gt; made this
possible.&lt;/p&gt;
&lt;img alt="" src="/images/volume-applet.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="additional-software-changes"&gt;
&lt;h2&gt;Additional Software changes&lt;/h2&gt;
&lt;div class="section" id="ofono"&gt;
&lt;h3&gt;ofono&lt;/h3&gt;
&lt;p&gt;The ofono version for all our supported devices has been updated to a more recent
release - ofono 1.34. We've additionally also merged in some more patches for
better pinephone support (see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/597"&gt;issue #597&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/598"&gt;issue #598&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Having all devices on the same ofono package also helps with maintainability!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="gtk2"&gt;
&lt;h3&gt;gtk2&lt;/h3&gt;
&lt;p&gt;Our Gtk2 sliders weren't as repsonsive to touch input as they should be, due to
some Maemo patches that were missing. This is now fixed, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/582"&gt;issue #582&lt;/a&gt; for more info.&lt;/p&gt;
&lt;!-- libicd-network-wpasupplicant --&gt;
&lt;!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - --&gt;
&lt;!--  --&gt;
&lt;!-- * libicd-network-wpasupplicant segfault fix when net-&gt;type NULL --&gt;
&lt;/div&gt;
&lt;div class="section" id="themes-on-images"&gt;
&lt;h3&gt;Themes on images&lt;/h3&gt;
&lt;p&gt;At some point, loading themes was broken on our 32bit image builds (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/599"&gt;see issue
#599&lt;/a&gt; for what that
looks like), but this has since been fixed. The problem turned out to be a
problem in QEMU where &lt;cite&gt;readdir()&lt;/cite&gt; would fail for a 32 bit guest on a 64 host. We
worked around this problem by adding an additional image building machine that
is 32 bit.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="pulseaudio-configuration"&gt;
&lt;h3&gt;Pulseaudio configuration&lt;/h3&gt;
&lt;p&gt;We have improved the pulseaudio setup on the devices, in particular:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;We now set the correct default audio sink on the Pinephone&lt;/li&gt;
&lt;li&gt;All devices should now automatically switch upon headphone plug or unplug
events, using the switch on port module&lt;/li&gt;
&lt;li&gt;We have added the ability to add arbitrary other config files in
the &lt;tt class="docutils literal"&gt;/etc/pulse/leste.pa.d&lt;/tt&gt; directory.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="system-log-rsyslog-configuration-changes"&gt;
&lt;h3&gt;System log (rsyslog) configuration changes&lt;/h3&gt;
&lt;p&gt;The latest &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;leste-config&lt;/span&gt;&lt;/tt&gt; separates out the logging so that it is easier to
track down problems by reviewing the logs. Some daemons got their own log files
in &lt;tt class="docutils literal"&gt;/var/log/maemo&lt;/tt&gt;, like &lt;tt class="docutils literal"&gt;icd2&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;mce&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;ofono&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;dsme&lt;/tt&gt;, and so on.
See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/588"&gt;issue #588 for some more details&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="debugfs-entries-in-fstab"&gt;
&lt;h3&gt;Debugfs entries in fstab&lt;/h3&gt;
&lt;p&gt;Upon installation of the &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;leste-config&lt;/span&gt;&lt;/tt&gt; package, the install scripts will
check if &lt;tt class="docutils literal"&gt;debugfs&lt;/tt&gt; is present in &lt;tt class="docutils literal"&gt;/etc/fstab&lt;/tt&gt;, and if not, it will add a
line to mount it. This will not remain the case forever (as it can potentially
lead to more security issues), but various kernel power management tweaks are
only available through &lt;tt class="docutils literal"&gt;debugfs&lt;/tt&gt;, so for now we have to keep it mounted.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="default-dns-server-if-none-is-provided"&gt;
&lt;h3&gt;Default DNS server if none is provided&lt;/h3&gt;
&lt;p&gt;In some rare cases where a network does not provide a DNS server over DHCP,
devices running Maemo Leste would not be able to resolve any addresses over DNS,
as no server was available.&lt;/p&gt;
&lt;p&gt;We have decided to default to &lt;cite&gt;9.9.9.9&lt;/cite&gt; (aka &amp;quot;Quad9&amp;quot;) if nothing else is
available. In the future we might replace this by just running a recursive DNS
resolver on the device itself. See &lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-ipv4/commit/49afd837bf5a7764c0cc59854aad2b01175088a4"&gt;this commit on libicd-network-ipv4&lt;/a&gt;
for some more information. &lt;strong&gt;We also very much welcome feedback&lt;/strong&gt; regarding
alternative or better default DNS servers - we have simply tried to make a
decision based on privacy and availability.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="libsdl1-environment-variables-and-enabling-glesv1-in-mesa"&gt;
&lt;h3&gt;libsdl1 environment variables and enabling GLESv1 in mesa&lt;/h3&gt;
&lt;p&gt;For some reason, Debian no longer enabled OpenGLES 1.0 in the Mesa builds. We
have changed that in our Mesa build, once again enabling GLESv1.&lt;/p&gt;
&lt;p&gt;Additionally, we have added some enviroment variables that make SDL prefer EGL
over GLX, as that is generally better supported on our devices.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="cssu-features-configuration-editor"&gt;
&lt;h3&gt;CSSU Features Configuration Editor&lt;/h3&gt;
&lt;p&gt;We have ported the &lt;a class="reference external" href="http://wiki.maemo.org/CSSU_Features_Configuration_Editor"&gt;CSSU features program&lt;/a&gt; from Maemo
Fremantle's CSSU.  This tools allows customising various parts of hildon-desktop
and animations in the environment in general. The port is still work in
progress, as some of the original user interface design files seemingly were not
included in the source package (and yes there is a small menu key &lt;cite&gt;Main&lt;/cite&gt; in the
top right that shouldn't be there :-)).&lt;/p&gt;
&lt;p&gt;The port is somewhat noteworthy since it's a Python Qt5 package using hildon
specific features.&lt;/p&gt;
&lt;img alt="" src="/images/cssufeatures.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="community-and-supporting-software-updates"&gt;
&lt;h2&gt;Community and supporting software updates&lt;/h2&gt;
&lt;div class="section" id="keyring-and-jenkins-updates"&gt;
&lt;h3&gt;Keyring and Jenkins updates&lt;/h3&gt;
&lt;p&gt;Our key for the &amp;quot;extras&amp;quot; repository silently expired (not the first time), but
now we had an easier way to providing updates, by just updating our keyring
package. We have also upgraded our Jenkins instance to the latest version(s),
and are working on adding a Honeycomb LX2 machine for fast ARM package builds.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="mediawiki-theme"&gt;
&lt;h3&gt;Mediawiki theme&lt;/h3&gt;
&lt;p&gt;IRC user &lt;tt class="docutils literal"&gt;ashley&lt;/tt&gt; contributed a forward-port of the old Maemo mediawiki theme
as a selectable theme on our wiki, &lt;a class="reference external" href="https://leste.maemo.org/index.php?title=Tor&amp;amp;useskin=maemo"&gt;and you can preview it here&lt;/a&gt;. If you like the
theme, you can make it the default from the preferences in mediawiki. See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/590"&gt;issue
#590&lt;/a&gt; for some more
information.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="what-s-next"&gt;
&lt;h2&gt;What's next&lt;/h2&gt;
&lt;p&gt;Getting Telepathy support for conversations fully worked out together with the
RTCom applications will be an amazing thing for our mobile operating system.
Once that is working well, we can start adding support for more protocols (we're
working on a Telepathy signal plugin using signald), and perhaps also fix up
telepathy-hazy, which allows running many Pidgin (libpurple) protocols inside
Telepathy.&lt;/p&gt;
&lt;p&gt;From a stability standpoint, there are some bugs to be investigated still, in
particular for the ofono support of the Droid series that we support. There are
also some things to improve further for 2D/3D support, but it's looking much
better than before.&lt;/p&gt;
&lt;p&gt;This year we also hope to switch to the new Devuan chimaera (Debian bullseye)
release, further modernising our codebase and building on top of the latest and
greatest that the free software community has to offer.&lt;/p&gt;
&lt;p&gt;Finally, we're slowly but surely getting all our of userland in place, while
still heavily working on device support for the devices we support. Once
userland is more or less complete, it will probably get much easier to port
Maemo Leste to other (potentially newer) devices, so look forward to that too.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you have questions, are interested in specifics or helping out, or wish to
have a specific package ported, please see our bugtracker.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900 and Motorola Droid 3, Droid 4 and Bionic units
available for interested developers&lt;/strong&gt;, so if you are interested in helping out
but have trouble acquiring a device, let us know.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay
up to date, ask questions and/or help out. Another great way to get in touch is
to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="telepathy"></category><category term="conversations"></category><category term="contacts"></category><category term="addressbook"></category><category term="powervr"></category><category term="graphics"></category><category term="mesa"></category><category term="pinephone"></category><category term="droid4"></category><category term="droid3"></category><category term="n900"></category><category term="linux"></category></entry><entry><title>Maemo Leste - Fifteenth Update: Januari - October 2021</title><link href="https://maemo-leste.github.io/maemo-leste-fifteenth-update-januari-october-2021.html" rel="alternate"></link><published>2021-10-28T00:00:00+02:00</published><updated>2021-10-28T00:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2021-10-28:/maemo-leste-fifteenth-update-januari-october-2021.html</id><summary type="html">&lt;p&gt;The long overdue update is finally here, it's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-fourteenth-update-july-august-september-october-november-december-2020.html"&gt;last
update&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Here are a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference internal" href="#sphone"&gt;sphone&lt;/a&gt; call interface;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#modest"&gt;modest&lt;/a&gt; (mail client);&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#gps-interfaces"&gt;GPS interfaces&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;support for &lt;a class="reference internal" href="#tor-wireguard-and-openvpn"&gt;Tor, Wireguard and OpenVPN&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;many &lt;a class="reference internal" href="#mce"&gt;mce&lt;/a&gt; improvements;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#funding-update"&gt;Funding update&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#motorola-droid-3-xt862"&gt;Motorola Droid 3 (XT862)&lt;/a&gt; port;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#audio-support"&gt;Audio support&lt;/a&gt; progress;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#address-book"&gt;address book&lt;/a&gt; progress …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;The long overdue update is finally here, it's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-fourteenth-update-july-august-september-october-november-december-2020.html"&gt;last
update&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Here are a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference internal" href="#sphone"&gt;sphone&lt;/a&gt; call interface;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#modest"&gt;modest&lt;/a&gt; (mail client);&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#gps-interfaces"&gt;GPS interfaces&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;support for &lt;a class="reference internal" href="#tor-wireguard-and-openvpn"&gt;Tor, Wireguard and OpenVPN&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;many &lt;a class="reference internal" href="#mce"&gt;mce&lt;/a&gt; improvements;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#funding-update"&gt;Funding update&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#motorola-droid-3-xt862"&gt;Motorola Droid 3 (XT862)&lt;/a&gt; port;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#audio-support"&gt;Audio support&lt;/a&gt; progress;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#address-book"&gt;address book&lt;/a&gt; progress;&lt;/li&gt;
&lt;li&gt;our plan for sms and &lt;a class="reference internal" href="#conversations"&gt;conversations&lt;/a&gt;;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="section" id="funding-update"&gt;
&lt;h2&gt;Funding update&lt;/h2&gt;
&lt;p&gt;Since our &lt;a class="reference external" href="https://maemo-leste.github.io/funding-from-ngi-eu.html"&gt;NGI funding announcement&lt;/a&gt;
we've been working hard on finishing the milestones as proposed. The &lt;a class="reference internal" href="#tor-wireguard-and-openvpn"&gt;Tor,
Wireguard and OpenVPN&lt;/a&gt; integration is finished and available in the extras
repositories.&lt;/p&gt;
&lt;p&gt;Following the successful completion of this milestone, the
&lt;a class="reference external" href="https://dapsi.ngi.eu"&gt;DAPSI&lt;/a&gt; project has let us know that Maemo Leste has
successfully moved into the second phase of the funding!&lt;/p&gt;
&lt;p&gt;This is great news, and means that we will hopefully be able to deliver on the
next milestones of the funding soon, including:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&amp;quot;Conversations&amp;quot; UI, using Telepathy to support various protocols (SMS, IRC,
XMPP, Matrix, GNU Jami aka ring, Signal)&lt;/li&gt;
&lt;li&gt;Implementation of some of the above protocols in Telepathy&lt;/li&gt;
&lt;li&gt;Improve the Maemo sharing libraries&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="core-software-additions-and-changes"&gt;
&lt;h2&gt;Core Software additions and changes&lt;/h2&gt;
&lt;p&gt;There were lots of improvements in the networking stack, as well as to many of
the core daemons, this section aims to give a comprehensive overview of all the
changes.&lt;/p&gt;
&lt;div class="section" id="modest"&gt;
&lt;h3&gt;modest&lt;/h3&gt;
&lt;p&gt;modest, the Maemo mail client &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/207"&gt;has been brought to Maemo Leste&lt;/a&gt;.
It relies on &lt;a class="reference external" href="https://github.com/maemo-leste/tinymail"&gt;tinymail&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/gtkhtml3"&gt;gtkhtml3&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We will later on port modest to a
newer HTML rendering framework.&lt;/p&gt;
&lt;img alt="" src="/images/modest-1.jpg" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/modest-2.jpg" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="gps-interfaces"&gt;
&lt;h3&gt;GPS interfaces&lt;/h3&gt;
&lt;p&gt;We've been continuing our work on the GPS stack and liblocation, packaging
various GPS interfaces and fixings bugs as we find them.&lt;/p&gt;
&lt;p&gt;Currently, there are at least four interfaces in our repositories, they've also
gotten their own pages on the wiki:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://leste.maemo.org/Extras/modrana"&gt;https://leste.maemo.org/Extras/modrana&lt;/a&gt; (more info: &lt;a class="reference external" href="https://wiki.maemo.org/ModRana"&gt;https://wiki.maemo.org/ModRana&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://leste.maemo.org/Extras/maep"&gt;https://leste.maemo.org/Extras/maep&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://leste.maemo.org/Extras/cloudgps"&gt;https://leste.maemo.org/Extras/cloudgps&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://leste.maemo.org/Extras/gpsrecorder"&gt;https://leste.maemo.org/Extras/gpsrecorder&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Exporting the GPS logs from gpsrecorder or maep also works fine, as we have
shared in &lt;a class="reference external" href="https://twitter.com/maemoleste/status/1389277775664721923"&gt;this cycling tweet&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="tor-wireguard-and-openvpn"&gt;
&lt;h3&gt;Tor, Wireguard and OpenVPN&lt;/h3&gt;
&lt;div class="section" id="tor"&gt;
&lt;h4&gt;Tor&lt;/h4&gt;
&lt;p&gt;Tor &lt;a class="reference external" href="https://www.torproject.org/"&gt;The Onion Router&lt;/a&gt; is software that provides
anonymous communication (over the Internet). We've integrated it in Maemo
Leste's connectivity framework and user interface.&lt;/p&gt;
&lt;p&gt;There is a &lt;a class="reference external" href="https://leste.maemo.org/Tor"&gt;Tor wiki page&lt;/a&gt; with more screenshots
and some examples on how to use it. Most of the source code is in the
&lt;a class="reference external" href="https://github.com/maemo-leste/libicd-tor"&gt;libicd-tor&lt;/a&gt; repository.&lt;/p&gt;
&lt;p&gt;Probably the most simple way to use this code is to install it from the package
manager, restart the device and configuring Tor to &amp;quot;Enable Transparent
proxying&amp;quot;, which will cause all the traffic of the device to be transmitted over
Tor. The screenshot below shows a Droid 4 with Tor with transparent proxying
enabled.&lt;/p&gt;
&lt;img alt="" src="/images/tor-check.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="wireguard"&gt;
&lt;h4&gt;Wireguard&lt;/h4&gt;
&lt;p&gt;Wireguard is a relatively new and simple communication protocol that implements
an encrypted Virtual Private Network (VPN). There are many use cases, but a few
examples are adding your phone to a Wireguard network that makes it possible to
access your LAN from wherever you are, give your device a public IPv4 address,
or otherwise tunnel traffic via another machine.&lt;/p&gt;
&lt;p&gt;There is a &lt;a class="reference external" href="https://leste.maemo.org/Wireguard"&gt;Wireguard wiki page&lt;/a&gt; with more screenshots
and some examples on how to use it. Most of the source code is in the
&lt;a class="reference external" href="https://github.com/maemo-leste/libicd-wireguard"&gt;libicd-wireguard&lt;/a&gt; repository.&lt;/p&gt;
&lt;p&gt;The screenshow below shows a Droid 4 with Wireguard enabled over wifi, and some
interface statistics using &lt;tt class="docutils literal"&gt;wg show&lt;/tt&gt;.&lt;/p&gt;
&lt;img alt="" src="/images/wg-show.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="openvpn"&gt;
&lt;h4&gt;OpenVPN&lt;/h4&gt;
&lt;p&gt;The OpenVPN applet and ICD2 plugin is also available, but hasn't seen quite as
much testing as the &lt;a class="reference internal" href="#tor"&gt;Tor&lt;/a&gt; and &lt;a class="reference internal" href="#wireguard"&gt;Wireguard&lt;/a&gt; plugins.&lt;/p&gt;
&lt;p&gt;The source can be found here: &lt;a class="reference external" href="https://github.com/maemo-leste/libicd-openvpn"&gt;https://github.com/maemo-leste/libicd-openvpn&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="connui-providers"&gt;
&lt;h4&gt;connui providers&lt;/h4&gt;
&lt;p&gt;Maemo Fremantle supported a feature that wasn't really used much, which were the
&lt;a class="reference external" href="http://maemo.org/api_refs/5.0/5.0-final/icd2/group__icd__srv__provider.html"&gt;ICD2 service providers&lt;/a&gt;,
which are a way to add connection &amp;quot;plugins&amp;quot; to specific connections. The example
provided was a plugin to disable network logon pages and (automatically) deal
with those. We have extended this ICD2 implementation to support Tor, Wireguard
and OpenVPN.&lt;/p&gt;
&lt;p&gt;Since there wasn't too much documentation how this integrated with the rest of
the system, we developed &lt;a class="reference external" href="https://github.com/maemo-leste/libicd-provider-dummy/"&gt;libicd-provider-dummy&lt;/a&gt; to explore how the
rest of the system interacts with service providers. For example, service
providers can change the icon of the network in the status area, they can add
additional icons in the connection dialogs and network status, and also provide
customisation of the network names.&lt;/p&gt;
&lt;p&gt;The code written to support providers in the connui interfaces can
be found here in this &lt;a class="reference external" href="https://github.com/maemo-leste/connui-internet/pull/2/"&gt;connui-internet pull request&lt;/a&gt; and this
&lt;a class="reference external" href="https://github.com/maemo-leste/connui-common/pull/1"&gt;connui-common pull request&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Below is an example of an IAP being configured to use Wireguard service
provider - this means it will always connect to Wireguard when connecting to the
IAP, and if connecting to Wireguard fails, the network connection will be
severed.&lt;/p&gt;
&lt;img alt="" src="/images/wireguard-provider.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/wireguard-provider-cfg.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="resolvconf"&gt;
&lt;h4&gt;resolvconf&lt;/h4&gt;
&lt;p&gt;Due to the way &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;wg-quick&lt;/span&gt;&lt;/tt&gt; from the Wireguard tools worked, we also had to
overhaul our DNS scripts. We initially imported them from Maemo Leste, but
recently upgraded them to use &lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-ipv4/pull/3"&gt;resolvconf&lt;/a&gt; (issue &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/583"&gt;#583&lt;/a&gt;), making our setup more
robust.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="connui"&gt;
&lt;h3&gt;connui&lt;/h3&gt;
&lt;p&gt;Previously, the connection dialogs on Maemo Leste would malfunction if they
invoked programmatically (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/539"&gt;#539&lt;/a&gt;), this problem has been
solved now.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="mce"&gt;
&lt;h3&gt;mce&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;uvos&lt;/strong&gt; has been consistently working on improving &lt;tt class="docutils literal"&gt;mce&lt;/tt&gt; and a lot has changed:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;mce uses less memory (about 400kB) by using link time optimisations (LTO),
&lt;cite&gt;--dynamic-list&lt;/cite&gt; and a build system rewrite (&lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/50"&gt;from plain Makefile to cmake&lt;/a&gt;).
LTO is not in use on Leste yet, as it still causes some problems with upower
and tklock.&lt;/li&gt;
&lt;li&gt;Proximity sensor module based on the &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/17"&gt;iio system&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Legacy display module is &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/48"&gt;dropped&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The &lt;cite&gt;alarm&lt;/cite&gt; module is now loaded (&lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/46"&gt;PR #46&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/49"&gt;rtconf&lt;/a&gt; support has been added,
allowing for using different backends, to make it easier to drop gconf
support. Alternative backend types are &lt;cite&gt;ini&lt;/cite&gt; files and &lt;cite&gt;gsettings&lt;/cite&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/43"&gt;battery-guard&lt;/a&gt; module was added&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/47"&gt;power-generic&lt;/a&gt; module that
allows mce to operate in absence of dsme. In combination with the new
&lt;cite&gt;lock-generic&lt;/cite&gt; module, one can use xdg-screensaver instead of the
hildon-specific lock screen.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Additionally, mce now supports some more dbus interfaces for changing various
settings, which were previously changed through gconf directly, which made for
some awkward architecture:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/profiled/pull/2"&gt;https://github.com/maemo-leste/profiled/pull/2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/osso-applet-display/pull/1"&gt;https://github.com/maemo-leste/osso-applet-display/pull/1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/simple-brightness-applet/pull/2"&gt;https://github.com/maemo-leste-extras/simple-brightness-applet/pull/2&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- Profiles control panel applet --&gt;
&lt;!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --&gt;
&lt;!--  --&gt;
&lt;!-- TODO --&gt;
&lt;!--  --&gt;
&lt;!-- Some fixes, renamed --&gt;
&lt;!-- https://github.com/maemo-leste/bugtracker/issues/569 --&gt;
&lt;/div&gt;
&lt;div class="section" id="wireless"&gt;
&lt;h3&gt;Wireless&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/489"&gt;Hidden access points are now supported&lt;/a&gt; in what turned out to be long and painful process of debugging problems in &lt;a class="reference external" href="https://github.com/maemo-leste/connui-internet/commit/181b42acf295ca32812ad6330e36c556d90cb3cb"&gt;connui-internet&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/489#issuecomment-881039662"&gt;wpasupplicant&lt;/a&gt; itself and the &lt;a class="reference external" href="https://github.com/maemo-leste/n9xx-linux/commit/a242bd68f75cf9d68935aaa6f32fa05f3e4d62e9"&gt;N900 linux kernel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The network scanning dialog would sometimes render scanning results with a
(long) delay, this is now fixed (issue &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/342"&gt;#342&lt;/a&gt;).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="hildon-input-method"&gt;
&lt;h3&gt;hildon-input-method&lt;/h3&gt;
&lt;p&gt;hildon-input-method recently got some improvements where it can insert
characters into windows that do not explicitly support hildon input method (like
gtk2). The virtual keyboard can be summoned using dbus and can insert (currently
only) english characters into plain X11 windows. See the video below showing how
it works in Firefox (the touch screen button is used to summon the virtual
keyboard).&lt;/p&gt;
&lt;video controls height="480px" width="640px"&gt;
&lt;source src="images/him-dbus.webm" type="video/webm"&gt;
&lt;/video&gt;&lt;p&gt;In the future, we plan to use the &lt;a class="reference external" href="https://www.freedesktop.org/wiki/Accessibility/AT-SPI2/"&gt;at-spi&lt;/a&gt; accessibility
interface to make the hildon-input-method integration more complete and
universal.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="hildon-desktop"&gt;
&lt;h3&gt;hildon-desktop&lt;/h3&gt;
&lt;p&gt;Since our last update, hildon-desktop has supported rotating the devices screen
(and adjust the touch input accordingly to match the screen orientation). With
this update, we've improved how that is implemented exactly to make it more
robust. For example, upon certain updates the touch input would reset to the
native orientation, which could be quite confusing. All of this is solved now by
making this work directly in hildon-desktop, rather than other scripts that act
on dbus signals.&lt;/p&gt;
&lt;p&gt;Maemo also sets more &lt;tt class="docutils literal"&gt;XDG_*&lt;/tt&gt; environment variables now to ensure that Hildon
applications behave properly, and show the right directories, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/426"&gt;issue #426&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In some rare cases, hildon-desktop would not boot if the battery is very low,
this is fixed now, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/435"&gt;issue #435&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="osso-xterm"&gt;
&lt;h3&gt;osso-xterm&lt;/h3&gt;
&lt;p&gt;osso-xterm now opens links in the default browser, and the volume keys should
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/385"&gt;change the font size on the Droid 4 and similar devices&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="audio-support"&gt;
&lt;h3&gt;Audio support&lt;/h3&gt;
&lt;p&gt;Maemo Leste has supported basic audio output since the very first release, but
one of the many tricky parts of a mobile operating system is the audio routing.
For example, when one receives an incoming phone call, any music that is playing
should stop, and the ringtone sound should be heard. When a headphone is plugged
in during a call, one would expect the audio to switch from earpiece to
headphone, but, when a mediaplayer is playing music, unplugging the headphones
should perhaps not necessarily lead to music being played on the speakers, as
one might disturb others - so different outputs need their own volume control,
which needs to be saved somewhere, and so forth.&lt;/p&gt;
&lt;p&gt;Many of these problems were solved in Maemo Fremantle, and much of that work
made it into Sailfish OS (Mer Project), so we've gone full circle and have
started packaging their work for Maemo. Here is a non-exhaustive list of
packages that we have ported and packaged:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/ohm"&gt;https://github.com/maemo-leste/ohm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/libdres-ohm"&gt;https://github.com/maemo-leste/libdres-ohm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/libtrace-ohm"&gt;https://github.com/maemo-leste/libtrace-ohm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/ohm-plugins-misc"&gt;https://github.com/maemo-leste/ohm-plugins-misc&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/pulse-core"&gt;https://github.com/maemo-leste/pulse-core&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/pulseaudio-policy-enforcement"&gt;https://github.com/maemo-leste/pulseaudio-policy-enforcement&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/pulseaudio-modules-nemo"&gt;https://github.com/maemo-leste/pulseaudio-modules-nemo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/pulseaudio-module-cmtspeech-n9xx"&gt;https://github.com/maemo-leste/pulseaudio-module-cmtspeech-n9xx&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These modules should help us with the audio policy routing, but also contain
device-specific support modules, for example in the case of the N900, where the
packages should help routing audio to and from the modem during phone calls.&lt;/p&gt;
&lt;p&gt;More work remains to be done to integrate this on our devices, since audio
policies are somewhat complex and many of the components aren't well known to
us.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="sphone"&gt;
&lt;h3&gt;sphone&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/sphone"&gt;sphone is a ofono GUI&lt;/a&gt; based on gtk,
which &lt;cite&gt;uvos&lt;/cite&gt; has been modernising and improving a bunch, aiming to make it
modular with optional hildon/maemo support. In other words: it's a program that
allows you to make phone calls on Maemo Leste, at least theoretically.&lt;/p&gt;
&lt;p&gt;The integration in Maemo Leste is still very much a work in progress, as is
sphone, but it's already working to some degree, as can be seen in this video:&lt;/p&gt;
&lt;video controls height="360px" width="640px"&gt;
&lt;source src="/images/maemo-leste-sphone.webm" type="video/webm"&gt;
&lt;/video&gt;&lt;p&gt;Integration with the Maemo address book (and other address books) is also being
worked on. Here's a screenshot of the interface is portrait mode:&lt;/p&gt;
&lt;img alt="" src="/images/sphone-dialer.png" style="width: 324px; height: 576px;" /&gt;
&lt;p&gt;The application is only available in the &lt;strong&gt;-devel&lt;/strong&gt; repositories.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="address-book"&gt;
&lt;h3&gt;address book&lt;/h3&gt;
&lt;p&gt;We're still working on fully implementing the Maemo Fremantle address book and
contacts framework (osso-abook), but we've made a lot of progress - it should be
ready pretty soon.&lt;/p&gt;
&lt;img alt="" src="images/osso-abook-newcontact.png" style="width: 484px; height: 281px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="conversations"&gt;
&lt;h3&gt;conversations&lt;/h3&gt;
&lt;p&gt;There is not a lot to report on this subject yet, besides what was mentioned in
the &lt;a class="reference internal" href="#funding-update"&gt;Funding update&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We aim to have the Conversations UI be a frontend for many Telepathy protocols
(SMS just being one of them), using the existing (Maemo Fremantle) rtcom (Real
Time Communication) framework. The widget set that we will use will likely be
Qt, and we will likely using an existing Maemo application and strip out
everything we don't need, and then add the parts we want.&lt;/p&gt;
&lt;p&gt;In concrete steps:&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;Strip &lt;a class="reference external" href="https://github.com/agamez/yappari"&gt;yappari&lt;/a&gt; of all Whatsapp code, and
re-use the GUI as conversations UI frontend - a lot will change, but the
general UI is pretty usable;&lt;/li&gt;
&lt;li&gt;Add support for &lt;a class="reference external" href="https://wiki.maemo.org/Documentation/Maemo_5_Developer_Guide/Architecture/RTCOM"&gt;RTCOM&lt;/a&gt;
using &lt;a class="reference external" href="http://maemo.org/api_refs/5.0/5.0-final/eventlogger/"&gt;rtcom-eventlogger&lt;/a&gt; and other plugins
that might be required;&lt;/li&gt;
&lt;li&gt;Add a simple telepathy plugin (telepathy-ring for sms most likely);&lt;/li&gt;
&lt;li&gt;Modify the UI to support multiple protocols the way we want to;&lt;/li&gt;
&lt;li&gt;Look into user interfaces to modify telepathy protocol parameters;&lt;/li&gt;
&lt;li&gt;Add more telepathy protocols;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Below is a low-resolution screenshot of what Yappari looks like on Maemo
Fremantle - &lt;strong&gt;it is not a screenshot of our current conversations application&lt;/strong&gt;.&lt;/p&gt;
&lt;img alt="" src="images/yappari.jpg" /&gt;
&lt;/div&gt;
&lt;div class="section" id="recovery-boot-option"&gt;
&lt;h3&gt;recovery boot option&lt;/h3&gt;
&lt;p&gt;We now feature a recovery boot option for various devices, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/505"&gt;issue #505&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/image-builder/pull/8"&gt;image-builder pull
request 8&lt;/a&gt;. This is not
yet available for the Pinephone and N900, but it is for the Droid 3, Droid 4
and Droid Bionic.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="fbkeyboard"&gt;
&lt;h3&gt;fbkeyboard&lt;/h3&gt;
&lt;p&gt;The Maemo Leste emergency rescue boot mode now features a framebuffer
keyboard, our modified version of it &lt;a class="reference external" href="https://github.com/maemo-leste/fbkeyboard"&gt;can be found in the fbkeyboard repository&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;fbkeyboard is not available when the device has a hardware keyboard.&lt;/p&gt;
&lt;img alt="" src="images/bionicfbkeyboard.jpg" style="width: 489px; height: 652px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="osso-systemui-devlock"&gt;
&lt;h3&gt;osso-systemui-devlock&lt;/h3&gt;
&lt;p&gt;If your Nokia N900 had a lock code set, Maemo Leste would get stuck somewhere
during booting with a black screen. This has now been solved, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/495"&gt;issue #495&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/343"&gt;issue #343&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="additional-software-changes"&gt;
&lt;h2&gt;Additional Software changes&lt;/h2&gt;
&lt;div class="section" id="libsdl-input"&gt;
&lt;h3&gt;libsdl input&lt;/h3&gt;
&lt;p&gt;The libsdl video and input problems we were seeing before have finally been fixed, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/413"&gt;issue #413&lt;/a&gt;.
This is great since it also makes many other applications more usable, for
example &lt;cite&gt;cloudgps&lt;/cite&gt; . So the (full screen) window placement should now work fine,
and both keyboard and mouse input should just work.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="python-bindings"&gt;
&lt;h3&gt;Python bindings&lt;/h3&gt;
&lt;p&gt;We have added python bindings for &lt;cite&gt;libconic&lt;/cite&gt;, the hildon connection management
library, see &lt;a class="reference external" href="https://github.com/maemo-leste/python-conic"&gt;python-conic&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="scummvm"&gt;
&lt;h3&gt;ScummVM&lt;/h3&gt;
&lt;p&gt;ScummVM was broken since our migration to Devuan Beowulf, but rebasing on a
newer released fixed the problem, and now &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/353"&gt;ScummVM works again&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There is also a ScummVM wiki entry now, with various tips and tricks:
&lt;a class="reference external" href="https://leste.maemo.org/Extras/ScummVM"&gt;https://leste.maemo.org/Extras/ScummVM&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="community-updates"&gt;
&lt;h2&gt;Community updates&lt;/h2&gt;
&lt;div class="section" id="wiki-updates"&gt;
&lt;h3&gt;Wiki updates&lt;/h3&gt;
&lt;p&gt;We have added wiki pages for various &lt;tt class="docutils literal"&gt;Extras&lt;/tt&gt; packages, you can find them
under the &lt;a class="reference external" href="https://leste.maemo.org/Category:Extras"&gt;Category:Extras&lt;/a&gt; page.&lt;/p&gt;
&lt;p&gt;There is now also a package &lt;cite&gt;Infobox&lt;/cite&gt; template to make it easy to add a page for
a package - if you're a maintainer of a package, please consider making a wiki
page entry for it!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="languages-and-translations"&gt;
&lt;h3&gt;Languages and Translations&lt;/h3&gt;
&lt;p&gt;We have imported additional community translations:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Arabic&lt;/li&gt;
&lt;li&gt;Turkish&lt;/li&gt;
&lt;li&gt;Slovak&lt;/li&gt;
&lt;li&gt;Hungarian&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;And we have drastically changed how we get translations to the Maemo Leste
devices - we now use the awesome &lt;cite&gt;weblate.org&lt;/cite&gt; translation interface, making it
easy to change or submit translations, automatically creating Github pull
requests in the process.&lt;/p&gt;
&lt;p&gt;Check out &lt;a class="reference external" href="https://hosted.weblate.org/projects/maemo-leste/#information"&gt;Maemo Leste on Weblate.org&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="leste-on-android-via-chroot"&gt;
&lt;h3&gt;Leste on Android via chroot&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;diejuse&lt;/tt&gt; has been experimenting with running Maemo Leste in a chroot on
Android, and &lt;a class="reference external" href="https://github.com/diejuse/chroot_Maemo-leste_on_Android"&gt;he has documented the process here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Here are two videos of it in action:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/OqFHivcPIRM"
 ;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/kipuT0VXzC4"
 ;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="hardware-drivers"&gt;
&lt;h2&gt;Hardware &amp;amp; Drivers&lt;/h2&gt;
&lt;div class="section" id="motorola-droid-3-xt862"&gt;
&lt;h3&gt;Motorola Droid 3 (XT862)&lt;/h3&gt;
&lt;p&gt;This is a new device port (codename &lt;tt class="docutils literal"&gt;solana&lt;/tt&gt;) - it's still in the early
stages, but a lot of things already just work, enough for us to boast about it:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Support for kexecboot using &lt;a class="reference internal" href="#clown-boot"&gt;clown-boot&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;X11 and 3D&lt;/li&gt;
&lt;li&gt;Audio&lt;/li&gt;
&lt;li&gt;Wireless&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The following still needs work:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Brightness control does not work - the screen always has maximum brightness&lt;/li&gt;
&lt;li&gt;Keyboard backlight doesn't seem to work yet&lt;/li&gt;
&lt;li&gt;The modem doesn't work yet - it shows up on USB, but the interrupts aren't configured properly.&lt;/li&gt;
&lt;li&gt;3D shows some frame lag / misdrawing, perhaps the powervr clock needs adjusting&lt;/li&gt;
&lt;li&gt;Touchscreen buttons do not work yet (the ones on the side)&lt;/li&gt;
&lt;li&gt;Persistent kernel log store (pstore) does not work yet&lt;/li&gt;
&lt;li&gt;We might be able to free up 3MB more - we need to see if we can use 512MB ram instead of 509MB&lt;/li&gt;
&lt;li&gt;The keyboard layout in Leste is not faithful to the icons on the keyboard, but rather mostly mimic droid 4&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;More information on the &lt;a class="reference external" href="https://leste.maemo.org/Motorola_Droid_3"&gt;Droid 3 wiki page&lt;/a&gt;.&lt;/p&gt;
&lt;img alt="" src="images/droid3-photo.jpg" style="width: 500px; height: 500px;" /&gt;
&lt;div class="section" id="clown-boot"&gt;
&lt;h4&gt;clown-boot&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;clown-boot&lt;/span&gt;&lt;/tt&gt; is the name for a method devised by &lt;strong&gt;uvos&lt;/strong&gt; that uses a
double-kexec approach to load the kexecboot bootloader, and then the Maemo Leste
linux kernel. It was initially created for the Bionic device, but we've re-used
the approach for the Motorola Droid 3. We've decided to clean up the code a bit
and distributed it over three different repositories for reproducibility:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Kernel modules for the Android stock kernel: &lt;a class="reference external" href="https://github.com/maemo-leste/clown-boot-kexec"&gt;https://github.com/maemo-leste/clown-boot-kexec&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Mainline-based kernel that is loaded from Android and loads kexecboot: &lt;a class="reference external" href="https://github.com/maemo-leste/clown-boot-kernel"&gt;https://github.com/maemo-leste/clown-boot-kernel&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Code used to kexec to kexecboot on Android: &lt;a class="reference external" href="https://github.com/maemo-leste/clown-boot"&gt;https://github.com/maemo-leste/clown-boot&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The older code for clown-boot on the Droid 3 &lt;a class="reference external" href="https://github.com/MerlijnWajer/bionic-clown-boot/tree/solana"&gt;can be found here&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="motorola-droid-4-and-droid-bionic"&gt;
&lt;h3&gt;Motorola Droid 4 and Droid Bionic&lt;/h3&gt;
&lt;p&gt;The Motorola Droid 4 should have significantly better power management, due to a
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;quircks-mapphone&lt;/span&gt;&lt;/tt&gt; module introduced in MCE, which will deal with silencing
the modem signal strength updates when the display is off and also deal with a
(current) power management problem in the modem usb interface that keeps the
modem awake even when there is no data to read. See &lt;a class="reference external" href="https://github.com/maemo-leste/mce/commit/f25e8f20562a358d3df37c14e5d7b8639ec869c8"&gt;this commit&lt;/a&gt;
for the code, and &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/25/commits/b01dccd4ffb5e34dda058e231dcf64ee0712b7bb"&gt;this leste-config pull request&lt;/a&gt;
for the addition of the module.&lt;/p&gt;
&lt;p&gt;The touch screen buttons now provide specific features:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;The &lt;strong&gt;search&lt;/strong&gt; button raises the virtual keyboard, regardless of the
application (see &lt;a class="reference internal" href="#hildon-input-method"&gt;hildon-input-method&lt;/a&gt; improvements)&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;back&lt;/strong&gt; button will either close a window or go back a stacked window&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;home&lt;/strong&gt; window will switch to either the window expose view, or the
application launcher view&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;hamburger&lt;/strong&gt; button (three lines) will activate the hildon-specific
context menu of applications if they support it&lt;/li&gt;
&lt;/ul&gt;
&lt;video controls height="480px" width="640px"&gt;
&lt;source src="images/ts-buttons-demonstration.webm" type="video/webm"&gt;
&lt;/video&gt;&lt;p&gt;Some of these features are also added to the pinephone hardware buttons.&lt;/p&gt;
&lt;p&gt;Finally, &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; has been working on headphone plugin detection, which will
make it into our development kernel soon.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;p&gt;As mentioned in &lt;a class="reference internal" href="#osso-systemui-devlock"&gt;osso-systemui-devlock&lt;/a&gt;, unlocking devices at boot should now
work. We are now also using the &lt;cite&gt;nl80211&lt;/cite&gt; interface, as opposed to the &lt;cite&gt;wext&lt;/cite&gt;
interface.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone"&gt;
&lt;h3&gt;Pinephone&lt;/h3&gt;
&lt;p&gt;Launching the virtual keyboard is now supported in any X11 window, as mentioned
in the &lt;a class="reference internal" href="#hildon-input-method"&gt;hildon-input-method&lt;/a&gt; section, the key to activate it is the volume up
key. Once we have the 3D situation on the N900 and Droid devices under control,
we will start looking at fixing the 3D rendering problems that seems to occur on
the pinephone occasionally.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you have questions, are interested in specifics, or helping out, or wish to
have a specific package ported, please see our bugtracker.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900 and Motorola Droid 4 and Bionic units available to
interested developers&lt;/strong&gt;, so if you are interested in helping out but have
trouble acquiring a device, let us know.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay
up to date, ask questions and/or help out. Another great way to get in touch is
to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="sphone"></category><category term="modest"></category><category term="mail"></category><category term="calls"></category><category term="dapsi"></category><category term="gps"></category><category term="tor"></category><category term="wireguard"></category><category term="openvpn"></category><category term="icd"></category><category term="mce"></category><category term="solana"></category></entry><entry><title>Maemo Leste - IRC channel migration</title><link href="https://maemo-leste.github.io/maemo-leste-irc-channel-migration.html" rel="alternate"></link><published>2021-05-22T10:41:00+02:00</published><updated>2021-05-22T10:41:00+02:00</updated><author><name>Ivan Jelincic</name></author><id>tag:maemo-leste.github.io,2021-05-22:/maemo-leste-irc-channel-migration.html</id><summary type="html">&lt;p&gt;Due to the recent events that have happened with FOSS communities and
the Freenode IRC network, we've decided to move our channel to the new,
community-maintained &lt;a class="reference external" href="https://libera.chat"&gt;Libera.chat IRC network&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We have hopefully updated all our previous writings, and wiki entries,
but if you find any remains of Freenode, let …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Due to the recent events that have happened with FOSS communities and
the Freenode IRC network, we've decided to move our channel to the new,
community-maintained &lt;a class="reference external" href="https://libera.chat"&gt;Libera.chat IRC network&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We have hopefully updated all our previous writings, and wiki entries,
but if you find any remains of Freenode, let us know so we can change
it.&lt;/p&gt;
&lt;p&gt;See you on Libera IRC! :)&lt;/p&gt;
</content><category term="news"></category><category term="community"></category><category term="irc"></category></entry><entry><title>Funding from NGI EU</title><link href="https://maemo-leste.github.io/funding-from-ngi-eu.html" rel="alternate"></link><published>2021-04-24T12:00:00+02:00</published><updated>2021-04-24T12:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2021-04-24:/funding-from-ngi-eu.html</id><summary type="html">&lt;p&gt;A couple of months ago we were made aware of the &lt;a class="reference external" href="https://dapsi.ngi.eu"&gt;DAPSI&lt;/a&gt; project by our dear Michiel of &lt;a class="reference external" href="https://nlnet.nl"&gt;NLnet&lt;/a&gt;. DAPSI is one of the projects in the scope of the
European Union's &lt;a class="reference external" href="https://www.ngi.eu"&gt;Next Generation Internet&lt;/a&gt;
initiative and it offers funding for projects that research data
portability and privacy solutions to …&lt;/p&gt;</summary><content type="html">&lt;p&gt;A couple of months ago we were made aware of the &lt;a class="reference external" href="https://dapsi.ngi.eu"&gt;DAPSI&lt;/a&gt; project by our dear Michiel of &lt;a class="reference external" href="https://nlnet.nl"&gt;NLnet&lt;/a&gt;. DAPSI is one of the projects in the scope of the
European Union's &lt;a class="reference external" href="https://www.ngi.eu"&gt;Next Generation Internet&lt;/a&gt;
initiative and it offers funding for projects that research data
portability and privacy solutions to give people better control over
their personal data.&lt;/p&gt;
&lt;p&gt;Seeing this, we realised that Maemo Leste could be a good fit. We managed to
write an application and apply to the open call just before the deadline.&lt;/p&gt;
&lt;p&gt;A month or so later, we were contacted by the DAPSI team to tell us that our
application passed and that we are going to receive funding for the milestones
we chose to apply with! Obviously, this is fantastic news for us and it helps
us make Maemo Leste sustainable and future proof.&lt;/p&gt;
&lt;p&gt;The research we are planning to do in the scope of this grant is
very interesting and will bring some much needed features to the Maemo
Leste ecosystem. We plan to develop various applets that will seamlessly
integrate Tor, Wireguard, and OpenVPN into the system and enable a new
layer of security and privacy for our community and users.&lt;/p&gt;
&lt;p&gt;Also part of the grant is work on communication integration in via the Telepathy
framework. More concretely, in the scope of DAPSI, we will work on supporting
various interfaces in the Telepathy framework: XMPP, GNU Jami, Matrix, and
Signal messenger.&lt;/p&gt;
&lt;p&gt;These should all be able to work with Telepathy as the core, and give us a way
to test and develop a generic graphical user interface to all these protocols in
Maemo.&lt;/p&gt;
&lt;p&gt;Finally, we will develop a system library for interoperable sharing of
files which will allow us to transfer and share files through various
protocols that the system supports, e.g. the above-mentioned.&lt;/p&gt;
&lt;p&gt;We have to say we're very happy about this research we're going to
do and hope that it will speed up some much-needed development that
needs to happen.&lt;/p&gt;
&lt;p&gt;Also, we've gathered enough news to write another update/status post
of the current state of Maemo Leste, so you can expect that one soon
as well!&lt;/p&gt;
&lt;p&gt;As always, you can find us on our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt;
and our &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
</content><category term="news"></category><category term="ngi"></category><category term="maemo"></category><category term="europe"></category><category term="funding"></category></entry><entry><title>Maemo Leste - Fourteenth Update (July, August, September, October, November, December) 2020</title><link href="https://maemo-leste.github.io/maemo-leste-fourteenth-update-july-august-september-october-november-december-2020.html" rel="alternate"></link><published>2020-12-27T18:00:00+01:00</published><updated>2020-12-27T18:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2020-12-27:/maemo-leste-fourteenth-update-july-august-september-october-november-december-2020.html</id><summary type="html">&lt;p&gt;It's been several months since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-thirteenth-update-april-may-june-2020.html"&gt;last update&lt;/a&gt;. We've been working
hard, and it's been quite a year. Things are shaping up amazingly well, and
we're looking forward to entering yet another year of our development efforts!&lt;/p&gt;
&lt;p&gt;Here are a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;The Maemo Qt5 port is usable now, unlocking …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;It's been several months since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-thirteenth-update-april-may-june-2020.html"&gt;last update&lt;/a&gt;. We've been working
hard, and it's been quite a year. Things are shaping up amazingly well, and
we're looking forward to entering yet another year of our development efforts!&lt;/p&gt;
&lt;p&gt;Here are a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;The Maemo Qt5 port is usable now, unlocking many applications, like the
&lt;a class="reference internal" href="#dorian"&gt;Dorian&lt;/a&gt; e-book reader &lt;a class="reference external" href="https://github.com/maemo-leste/qalendar"&gt;Qalendar&lt;/a&gt; Calendar, &lt;a class="reference external" href="https://github.com/maemo-leste/clock-ui"&gt;clock-ui&lt;/a&gt; clock and alarm, and
&lt;a class="reference external" href="https://github.com/maemo-leste/osso-calculator"&gt;osso-calculator&lt;/a&gt; applications;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#rotation-support"&gt;Rotation support&lt;/a&gt; is now working for several devices, based on accelerometer
and application policies;&lt;/li&gt;
&lt;li&gt;Major MCE changes, including ambient light sensor support based on the IIO
subsystem, accelerometer IIO subsystem, led-control for other devices, user
configuration customization, loads of clean ups and more;&lt;/li&gt;
&lt;li&gt;maemo-input-sounds package finished, adding vibration and sounds;&lt;/li&gt;
&lt;li&gt;Stable power management for the Droid 4 - lasting days without suspending;&lt;/li&gt;
&lt;li&gt;Application launcher &amp;quot;Debian&amp;quot; submenu to launch any Debian application;&lt;/li&gt;
&lt;li&gt;Calendar support is working, including home applet and synchronization using
syncevolution;&lt;/li&gt;
&lt;li&gt;Settings applet including timezone chooser is working;&lt;/li&gt;
&lt;li&gt;Hildon address book is nearing completion;&lt;/li&gt;
&lt;li&gt;Motorola Bionic is a new supported device;&lt;/li&gt;
&lt;li&gt;The GPS stack is working in userspace, and is almost finished;&lt;/li&gt;
&lt;li&gt;Better PowerVR support upcoming, with higher clock rates and the latest driver
version, allowing the N900 to move to the latest kernel again, and gain proper
power management.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="section" id="software-changes"&gt;
&lt;h2&gt;Software changes&lt;/h2&gt;
&lt;div class="section" id="packages-interface"&gt;
&lt;h3&gt;Packages Interface&lt;/h3&gt;
&lt;p&gt;We now have a web interface to our packages: &lt;a class="reference external" href="https://maedevu.maemo.org/pkgweb/"&gt;https://maedevu.maemo.org/pkgweb/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;It is regenerated every time a package is built in our Jenkins CI instance, and
the source code can be found here: &lt;a class="reference external" href="https://github.com/maemo-leste/mpi"&gt;https://github.com/maemo-leste/mpi&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="maemo-input-sounds"&gt;
&lt;h3&gt;maemo-input-sounds&lt;/h3&gt;
&lt;p&gt;We've (re)implemented &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-input-sounds/"&gt;Maemo Input Sounds (MIS)&lt;/a&gt;, which was a closed
Fremantle package. When users interact with Maemo Leste devices, input events
are generated for buttons, touchscreen or any other input device. MIS is a
daemon that then listens to these events and acts accordingly by providing sound
and/or vibration feedback.&lt;/p&gt;
&lt;p&gt;We also surfaced problems in the Xorg server regarding their XRecord extension,
&lt;a class="reference external" href="https://lists.x.org/archives/xorg-devel/2020-July/058582.html"&gt;mailed the development list&lt;/a&gt;, and later on &lt;a class="reference external" href="https://gitlab.freedesktop.org/xorg/xserver/-/issues/1046"&gt;filed a bug report with patch on
freedesktop.org&lt;/a&gt;, but it looks like no maintainer is home, so we have shipped the patch with our Xorg server.&lt;/p&gt;
&lt;p&gt;More information in &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/389"&gt;bug #389&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="dbus-scripts"&gt;
&lt;h3&gt;dbus-scripts&lt;/h3&gt;
&lt;p&gt;dbus-scripts is a daemon that can execute a command when various events occur on
D-Bus. Since most of Maemo Leste relies on D-Bus in some way, this is a
powerful tool. A non-exhaustive list of some things one can watch for: keyboard
slide changing; screen turning on/off; connecting or disconnecting from a
network; incoming sms or phone call; device rotation.&lt;/p&gt;
&lt;p&gt;This program was a user package in Maemo Fremantle, but we have promoted it to
be a core package, since we use it for &lt;a class="reference internal" href="#rotation-support"&gt;Rotation support&lt;/a&gt; and to work around
some power management quirks.&lt;/p&gt;
&lt;p&gt;We also believe that customizability is an important part of
our platform, and this should help making Maemo Leste more extensible.&lt;/p&gt;
&lt;p&gt;See the &lt;a class="reference external" href="https://wiki.maemo.org/DbusScripts"&gt;maemo.org wiki page on dbus-scripts&lt;/a&gt; for more information, and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/405"&gt;bug #405&lt;/a&gt; for some background.&lt;/p&gt;
&lt;p&gt;Here is an example dbus-scripts rule:&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop-rotation-support/blob/maemo/beowulf-devel/scripts/etc/dbus-scripts.d/rotate-ts"&gt;https://github.com/maemo-leste/hildon-desktop-rotation-support/blob/maemo/beowulf-devel/scripts/etc/dbus-scripts.d/rotate-ts&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;And the command that the example script invokes:&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop-rotation-support/blob/maemo/beowulf-devel/scripts/usr/bin/hildon-desktop-rotate-touchscreen.sh"&gt;https://github.com/maemo-leste/hildon-desktop-rotation-support/blob/maemo/beowulf-devel/scripts/usr/bin/hildon-desktop-rotate-touchscreen.sh&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="qt5"&gt;
&lt;h3&gt;Qt5&lt;/h3&gt;
&lt;p&gt;The Qt5 port is in a usable enough state that it is currently available in the
main repositories; some of the users might even already have it on their devices!&lt;/p&gt;
&lt;p&gt;The main features:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;(Mostly) compatible theme/style with Fremantle;&lt;/li&gt;
&lt;li&gt;Most Maemo widgets are available;&lt;/li&gt;
&lt;li&gt;Maemo-style title-bar spinners to indicate progress;&lt;/li&gt;
&lt;li&gt;Maemo-style menus work;&lt;/li&gt;
&lt;li&gt;Maemo-style stacked windows work;&lt;/li&gt;
&lt;li&gt;Maemo-style orientation changes work&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Missing features:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Virtual keyboard integration;&lt;/li&gt;
&lt;li&gt;Some widgets;&lt;/li&gt;
&lt;li&gt;Better APIs/examples for kinetic scrolling for widgets;&lt;/li&gt;
&lt;li&gt;maemo-launcher caching&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Python package &lt;tt class="docutils literal"&gt;PyQt5&lt;/tt&gt; should also work.&lt;/p&gt;
&lt;p&gt;Porting packages from Qt4 to Qt5 is straightforward, and looking at the
commit history of these repositories might help those who would like to attempt
ports:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/dorian/commits/master"&gt;https://github.com/maemo-leste-extras/dorian/commits/master&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/clock-ui/commits/master"&gt;https://github.com/maemo-leste/clock-ui/commits/master&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/qalendar/commits/master"&gt;https://github.com/maemo-leste/qalendar/commits/master&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/osso-calculator/commits/master"&gt;https://github.com/maemo-leste/osso-calculator/commits/master&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="qalendar"&gt;
&lt;h3&gt;Qalendar&lt;/h3&gt;
&lt;p&gt;We are now also providing &lt;a class="reference external" href="https://github.com/maemo-leste/qalendar"&gt;Qalendar&lt;/a&gt;
as a default Calendar application. It is a FOSS calendar interface written in Qt
for Fremantle as an effort to replace the closed source stock calendar. For
Maemo Leste, we've ported it to Qt5 and have it working well:&lt;/p&gt;
&lt;img alt="" src="/images/qalendar-1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/qalendar-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/qalendar-3.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/qalendar-4.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/qalendar-5.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Some elements might not be finger-scrollable yet, but otherwise there are no
known bugs.&lt;/p&gt;
&lt;div class="section" id="synchronisation"&gt;
&lt;h4&gt;Synchronisation&lt;/h4&gt;
&lt;p&gt;The calendar application can be synchronized to various calendar backends using
&lt;cite&gt;syncevolution&lt;/cite&gt;, see also &lt;a class="reference external" href="https://wiki.maemo.org/Sync"&gt;https://wiki.maemo.org/Sync&lt;/a&gt;.
Building the latest syncevolution for Maemo Leste &lt;a class="reference external" href="https://github.com/maemo-leste/calendar-backend/commit/c6e9ef0db493118d44a2958f71180ac70609b071"&gt;revealed bugs
in calendar-backend which code only ever worked on 32-bit architecture&lt;/a&gt;.
Further details can be found &lt;a class="reference external" href="https://lists.syncevolution.org/hyperkitty/list/syncevolution&amp;#64;syncevolution.org/thread/ELDL7L37GJHD67OTJWVENURITZ4FV6DL/"&gt;on this syncevolution email thread&lt;/a&gt;.
With that solved, synchronization now works, and you can read about it
on &lt;a class="reference external" href="https://leste.maemo.org/Calendar"&gt;our Calendar wiki page&lt;/a&gt;.
There is also a custom GUI written for Maemo to schedule sychronization at set times called &lt;a class="reference external" href="https://github.com/maemo-leste-extras/syncevolution-frontend"&gt;syncevolution-frontend&lt;/a&gt;.
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/cal-home-widget"&gt;The home widget has also been ported&lt;/a&gt;, showing the upcoming
events and current tasks:&lt;/p&gt;
&lt;img alt="" src="/images/leste-calendar-widget.png" style="width: 572px; height: 343px;" /&gt;
&lt;p&gt;&lt;strong&gt;We could use someone's help to write a Dockerfile for syncevolution to
automatically test the Maemo backend&lt;/strong&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/492"&gt;see bug #492&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="applet-datetime"&gt;
&lt;h3&gt;applet-datetime&lt;/h3&gt;
&lt;p&gt;An applet for datetime was implemented, and parts reverse-engineered.
&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-time-zone-chooser"&gt;hildon-time-zone-chooser&lt;/a&gt;
features a pannable map of the world, along with a button in its EditToolbar to
allow you to input the name of a city directly. This is used for timezone
selection in the settings menu, but can also be used separately by any other
application that needs it.&lt;/p&gt;
&lt;p&gt;The datetime applet itself allows the user to set the time, date, and timezone, and
changing the clock to be a 24 hour clock. This also lays the groundwork for
alarms and similar things.&lt;/p&gt;
&lt;img alt="" src="/images/applet-amsterdam.png" style="width: 572px; height: 343px;" /&gt;
&lt;p&gt;Relevant repositories:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/applet-datetime/"&gt;https://github.com/maemo-leste/applet-datetime/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-time-zone-chooser/"&gt;https://github.com/maemo-leste/hildon-time-zone-chooser/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/clock/"&gt;https://github.com/maemo-leste/clock/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="clock-ui"&gt;
&lt;h3&gt;clock-ui&lt;/h3&gt;
&lt;p&gt;An initial Qt5 port of &lt;a class="reference external" href="https://github.com/maemo-leste/clock-ui"&gt;clock-ui&lt;/a&gt; has
been finished: this allows changing the time, timezones and manage alarms.&lt;/p&gt;
&lt;p&gt;For this compoment, the qt gconf library &lt;a class="reference external" href="https://github.com/maemo-leste/libgq-gconf"&gt;libgq-gconf&lt;/a&gt; has also been ported.&lt;/p&gt;
&lt;p&gt;The software is a core component and is now packaged, but some bugs remain.
We'll pick those up in the coming days and weeks.&lt;/p&gt;
&lt;img alt="" src="/images/clock-ui-1.png" style="width: 600px; height: 360px;" /&gt;
&lt;img alt="" src="/images/clock-ui-2.png" style="width: 600px; height: 360px;" /&gt;
&lt;img alt="" src="/images/clock-ui-3.png" style="width: 600px; height: 360px;" /&gt;
&lt;img alt="" src="/images/clock-ui-4.png" style="width: 600px; height: 360px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="alarmd"&gt;
&lt;h3&gt;alarmd&lt;/h3&gt;
&lt;p&gt;Alarmd, the alarm daemon received a &lt;a class="reference external" href="https://github.com/maemo-leste/alarmd/pull/1"&gt;runtime fix&lt;/a&gt;
and an &lt;a class="reference external" href="https://github.com/maemo-leste/alarmd/commit/e7b77f2e912bb71cd879ba17a4bf0d24c13ba06f"&gt;initscript dependency fix&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/468"&gt;python-alarm&lt;/a&gt;
package is now also packaged, so this kind of code should work:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
&amp;gt;&amp;gt;&amp;gt; alarm.query_event(1501725750.729786, time.time(), 0, 0, '')
[15, 17, 18, 19, 20]
&amp;gt;&amp;gt;&amp;gt; alarm.get_event(15).appid
'worldclock_alarmd_id'
&lt;/pre&gt;
&lt;p&gt;The alarmd and clockd initscripts were ported to OpenRC, so there
are no more insserv/OpenRC runlevel warnings when running apt upgrade/install.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="integration-of-debian-packages"&gt;
&lt;h3&gt;Integration of Debian packages&lt;/h3&gt;
&lt;p&gt;The Hildon menu, where we can see all installed applications that have
.desktop entries was expanded with a &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/commit/604d1167860d5750fffe097de121bd7a3e2885f7"&gt;submenu&lt;/a&gt;
that now also shows all &amp;quot;non-hildonized&amp;quot; packages which come from upstream. These
can be found in the &amp;quot;Debian&amp;quot; submenu by touching the Debian icon.&lt;/p&gt;
&lt;img alt="" src="/images/debian-menu-1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/debian-menu-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="osso-calculator"&gt;
&lt;h3&gt;osso-calculator&lt;/h3&gt;
&lt;p&gt;The Qt calculator &lt;a class="reference external" href="https://github.com/maemo-leste/osso-calculator"&gt;osso-calculator&lt;/a&gt; has been packaged and ported
to Qt5, along with its backend, &lt;a class="reference external" href="https://github.com/maemo-leste/osso-calculator-engine"&gt;osso-calculator-engine&lt;/a&gt;.&lt;/p&gt;
&lt;img alt="" src="/images/osso-calculator.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="dorian"&gt;
&lt;h3&gt;dorian&lt;/h3&gt;
&lt;p&gt;Dorian, an epub reader from Maemo Fremantle has also been ported, and works
quite well, including portrait mode. Scrolling is quite smooth, especially in
fullscreen mode.&lt;/p&gt;
&lt;img alt="" src="/images/dorian-1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/dorian-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/dorian-3.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Relevant repositories, issues and feature requests:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/dorian"&gt;https://github.com/maemo-leste-extras/dorian&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/440"&gt;https://github.com/maemo-leste/bugtracker/issues/440&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;User &lt;tt class="docutils literal"&gt;pere&lt;/tt&gt; has also been very helpful, submitting many pull requests:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/dorian/pull/4"&gt;https://github.com/maemo-leste-extras/dorian/pull/4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/dorian/pull/5"&gt;https://github.com/maemo-leste-extras/dorian/pull/5&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/dorian/pull/6"&gt;https://github.com/maemo-leste-extras/dorian/pull/6&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/dorian/pull/13"&gt;https://github.com/maemo-leste-extras/dorian/pull/13&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/dorian/pull/14"&gt;https://github.com/maemo-leste-extras/dorian/pull/14&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/dorian/pull/15"&gt;https://github.com/maemo-leste-extras/dorian/pull/15&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/dorian/pull/16"&gt;https://github.com/maemo-leste-extras/dorian/pull/16&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="profilesx"&gt;
&lt;h3&gt;profilesx&lt;/h3&gt;
&lt;p&gt;For managing sound profiles, like ringing/vibrating on notifications and phone
calls, we have ported and packaged the open source &lt;a class="reference external" href="https://github.com/maemo-leste-extras/profilesx"&gt;profilesx&lt;/a&gt; application that was also
available on Fremantle. profilesx supports managing multiple (sound) profiles,
along with enabling features like autoanswer and loudspeaker.&lt;/p&gt;
&lt;img alt="" src="/images/profilesx-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/profilesx-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/profilesx-3.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="hildon-desktop"&gt;
&lt;h3&gt;hildon-desktop&lt;/h3&gt;
&lt;div class="section" id="support-for-terminal-applications"&gt;
&lt;h4&gt;Support for terminal applications&lt;/h4&gt;
&lt;p&gt;We &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/pull/9"&gt;implemented&lt;/a&gt; proper
support (and fallbacks) in hildon-desktop that allow us to start .desktop
entries that have &lt;tt class="docutils literal"&gt;Terminal=true&lt;/tt&gt; set and are supposed to open a terminal and
run the specific command. Now programs like &lt;tt class="docutils literal"&gt;htop&lt;/tt&gt; can be run by touching the
icon in the menu, or you could even write your own scripts and run them like
this! For example, &lt;tt class="docutils literal"&gt;Evil_Bob&lt;/tt&gt; has his sfeed_curses running from desktop:&lt;/p&gt;
&lt;video controls height="324px" width="576px"&gt;
&lt;source src="/images/droid4-sfeed_curses.webm" type="video/webm"&gt;
&lt;/video&gt;&lt;/div&gt;
&lt;div class="section" id="snap-to-desktop"&gt;
&lt;h4&gt;Snap to desktop&lt;/h4&gt;
&lt;p&gt;We have decreased the accuracy of 'snap to desktop' to make it easier to align
icons on the home screen; previously it would be quite tedious to get them
aligned. The time is takes to show a loading preview screen for an application
was also decreased. See &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/pull/6"&gt;hildon-desktop PR #6&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="orientation-lock-applet"&gt;
&lt;h3&gt;Orientation-lock applet&lt;/h3&gt;
&lt;p&gt;The orientation lock applet previously installed into the wrong path, causing it to not
show up. This has been fixed, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/419"&gt;issue #419&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="liblocation-and-location-control"&gt;
&lt;h3&gt;liblocation and location-control&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/liblocation/"&gt;liblocation&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/location-control/"&gt;location-control&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/location-daemon/"&gt;location-daemon&lt;/a&gt;, and a few
other pieces of software comprise the GPS/Location stack on Maemo. We have
successfully reverse-engineered these binaries from Fremantle and work is well
underway on integrating them in the Maemo Leste userspace. Using liblocation, we
can talk to our location-daemon and retrieve the current location info and
provide it to applications like &lt;a class="reference external" href="https://github.com/maemo-leste-extras/maep"&gt;maep&lt;/a&gt;
that use liblocation as their backend. location-daemon serves as a central point
of gps information on Maemo Leste, and it serves its info over the D-Bus Message
API. Internally, location-daemon talks to gpsd using its internal libgps
library. With this, programs using liblocation can simply gather info from dbus
so you can integrate this gps information into your application.&lt;/p&gt;
&lt;img alt="" src="/images/location-control.png" style="width: 479px; height: 296px;" /&gt;
&lt;img alt="" src="/images/maep-1.jpg" style="width: 527px; height: 266px;" /&gt;
&lt;img alt="" src="/images/maep-2.jpg" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/maep-leste-ams.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Other relevant repositories:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/liblocation"&gt;https://github.com/maemo-leste/liblocation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/location-ui"&gt;https://github.com/maemo-leste/location-ui&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/location-status"&gt;https://github.com/maemo-leste/location-status&lt;/a&gt; (unfinished)&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/location-daemon"&gt;https://github.com/maemo-leste/location-daemon&lt;/a&gt; (work in progress)&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="section" id="python-location"&gt;
&lt;h4&gt;python-location&lt;/h4&gt;
&lt;p&gt;Work on the status applet and an improved D-Bus interface is still under way.
&lt;a class="reference external" href="https://github.com/maemo-leste/python-location"&gt;liblocation Python bindings&lt;/a&gt;
are now also available, here is an example:&lt;/p&gt;
&lt;pre class="code python literal-block"&gt;
&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;location&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;gobject&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;on_error&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;control&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;    &lt;span class="nb"&gt;print&lt;/span&gt; &lt;span class="s2"&gt;&amp;quot;location error: &lt;/span&gt;&lt;span class="si"&gt;%d&lt;/span&gt;&lt;span class="s2"&gt;... quitting&amp;quot;&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="n"&gt;error&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;    &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;quit&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;on_changed&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;device&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="ow"&gt;not&lt;/span&gt; &lt;span class="n"&gt;device&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;        &lt;span class="k"&gt;return&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;device&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;fix&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;        &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;device&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;fix&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="n"&gt;location&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;GPS_DEVICE_LATLONG_SET&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;            &lt;span class="nb"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;lat = &lt;/span&gt;&lt;span class="si"&gt;%f&lt;/span&gt;&lt;span class="s2"&gt;, long = &lt;/span&gt;&lt;span class="si"&gt;%f&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="n"&gt;device&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;fix&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;on_stop&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;control&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;    &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;quit&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;start_location&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;    &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;start&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="kc"&gt;False&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;loop&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;gobject&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;MainLoop&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;control&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;location&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;GPSDControl&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;get_default&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;device&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;location&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;GPSDevice&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;control&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;set_properties&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;preferred_method&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;location&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;METHOD_USER_SELECTED&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;                       &lt;span class="n"&gt;preferred_interval&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;location&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;INTERVAL_DEFAULT&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;control&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;connect&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;error-verbose&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;on_error&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;loop&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;device&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;connect&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;changed&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;on_changed&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;control&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;control&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;connect&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;gpsd-stopped&amp;quot;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;on_stop&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;loop&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;gobject&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;idle_add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;start_location&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;control&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;loop&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;run&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/pre&gt;
&lt;p&gt;Documentation on the Python APIs can be found here:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="http://wiki.maemo.org/PyMaemo/Using_Location_API"&gt;http://wiki.maemo.org/PyMaemo/Using_Location_API&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="http://pymaemo.garage.maemo.org/python_location_manual/location.html"&gt;http://pymaemo.garage.maemo.org/python_location_manual/location.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="major-mce-improvements"&gt;
&lt;h3&gt;Major MCE improvements&lt;/h3&gt;
&lt;p&gt;There have been a lot of MCE changes, &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; has done tremendous work and we
will try our best to list all the changes here.&lt;/p&gt;
&lt;p&gt;New modules:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;iio-als&lt;/span&gt;&lt;/tt&gt;: This module allows for dynamically adjusting the screen
brightness and keyboard led brightness based on the ambient light (and the
brightness profile); see &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/14"&gt;MCE PR #14.&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/15"&gt;MCE PR #15&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;led-sw&lt;/span&gt;&lt;/tt&gt; + &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;led-dbus&lt;/span&gt;&lt;/tt&gt;: This module supports simple LED patterns for devices that do not (yet) have support for programming LEDs through a dedicated chip. This way we can show notification patterns even if a dedicated chip is not available. Currently in use on the Droid 4 and PinePhone. See &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/22"&gt;MCE PR #22&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;x11-ctrl&lt;/span&gt;&lt;/tt&gt;: Some of the X11 specific code moved to its own module. See &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/21"&gt;MCE
PR #21&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Refactoring and fixes:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;tt class="docutils literal"&gt;mce.ini.d&lt;/tt&gt; support. This splits up the MCE configuration into a core
configuration, device specific configuration, and user (customisable)
configuration. See &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/18"&gt;MCE PR #18&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/42"&gt;MCE PR #42&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/5"&gt;leste-config PR
#5&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/6"&gt;leste-config PR
#6&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Display inactivity refactoring, see &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/16"&gt;MCE PR #16&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Some evdev vibration fixes, see &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/19"&gt;MCE PR #19&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Removal of &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;mce-hal&lt;/span&gt;&lt;/tt&gt;, see &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/20"&gt;PR #20&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Additionally, &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/429"&gt;iio-sensor-proxy is now packaged&lt;/a&gt; since MCE relies on it.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="openmediaplayer"&gt;
&lt;h3&gt;openmediaplayer&lt;/h3&gt;
&lt;p&gt;Open Media Player is a clone of the Maemo Fremantle media player, and with the
Qt 5 port we've been making progress on bringing it to Maemo Leste &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/25"&gt;in issue #25&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Currently the application builds with Qt5 and shows the main window and
settings, but playlists do not yet render.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;If anyone feels like helping out, it would be much appreciated!&lt;/strong&gt;&lt;/p&gt;
&lt;img alt="" src="/images/omp-initial-1.png" style="width: 716px; height: 385px;" /&gt;
&lt;img alt="" src="/images/omp-initial-2.png" style="width: 716px; height: 385px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="address-book-contacts-and-account-libraries"&gt;
&lt;h3&gt;Address book, contacts and account libraries&lt;/h3&gt;
&lt;p&gt;Particularly exciting is the fact that &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; has been working on
bringing the Hildon address book framework (libraries and user interfaces) to
Maemo Leste. This will allow telepathy and evolution to see and modify the
contact lists.&lt;/p&gt;
&lt;p&gt;The work is still not finished, but it's quite close.
The current work is packaged, but not yet in the repositories.&lt;/p&gt;
&lt;img alt="" src="/images/VirtualBox_leste-beowulf_17_09_2020_15_06_07.png" style="width: 645px; height: 358px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="rotation-support"&gt;
&lt;h3&gt;Rotation support&lt;/h3&gt;
&lt;p&gt;Orientation and rotation support is now supported natively. Using the hardware
accelerometers, mce, and iio-sensors we are able to physically rotate our
devices and have the orientation change depending on the 3D position. Obviously,
this means portrait and landscape orientation can be switched simply by
positioning the device in its respective position. As we're using native kernel
interfaces and according userspace, this is supported on all our phones which
have working accelerometers.&lt;/p&gt;
&lt;p&gt;The package &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop-rotation-support"&gt;hildon-desktop-rotation-support&lt;/a&gt; implements
this feature using &lt;a class="reference internal" href="#dbus-scripts"&gt;dbus-scripts&lt;/a&gt; and the &lt;tt class="docutils literal"&gt;xrandr&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;xinput&lt;/tt&gt; utilities.&lt;/p&gt;
&lt;p&gt;On the Nokia N900 this is not yet enabled, due to the rotation crashing the
display server still. This will likely be resolved in an upcoming update to the
latest PowerVR driver.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="upower-history"&gt;
&lt;h3&gt;UPower history&lt;/h3&gt;
&lt;p&gt;Our devices now keep UPower history for more than 7 days, which was a hardcoded
limit in UPower. We have changed this to 30 days now, to allow for power usage
analytics going back further in time. See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/421"&gt;issue #421&lt;/a&gt;&lt;/p&gt;
&lt;!-- * https://wizzup.org/droid4-powerapplet.png + https://wizzup.org/droid4-upower-graph.png --&gt;
&lt;!-- + -avg --&gt;
&lt;/div&gt;
&lt;div class="section" id="pulseaudio"&gt;
&lt;h3&gt;Pulseaudio&lt;/h3&gt;
&lt;p&gt;The audio stack uses &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/402"&gt;Pulseaudio&lt;/a&gt;, as this will be
necessary for further work on phone calls due to UCM and profiles. Pulseaudio
seamlessly integrates and is configured for all our targets. The base
configurations reside in our &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-audio"&gt;maemo-audio&lt;/a&gt; package and they're pulled in by
our main metapackages, so a simple upgrade will configure everything as
necessary.&lt;/p&gt;
&lt;p&gt;For &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/pull/13/"&gt;Droid4, Bionic&lt;/a&gt;,
and &lt;a class="reference external" href="https://github.com/maemo-leste/leste-config/commit/9693ab7dfff0b7068e2bbaa187a7f9af0ec229f6"&gt;Pinephone&lt;/a&gt;,
we already have UCM2 files in place and we will be utilizing these with our
further efforts related to audio and phone calls.&lt;/p&gt;
&lt;p&gt;With the UCM files in place, &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;pavucontrol-qt&lt;/span&gt;&lt;/tt&gt; will show the proper controls and
outputs - for multimedia (Hi Fi) and phone.&lt;/p&gt;
&lt;img alt="" src="/images/pavucontrol-qt.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/pavucontrol-qt2.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Huge thanks for &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; for creating the UCM2 files for the Droid 4!&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="hardware-drivers"&gt;
&lt;h2&gt;Hardware &amp;amp; Drivers&lt;/h2&gt;
&lt;div class="section" id="motorola-droid-bionic"&gt;
&lt;h3&gt;Motorola Droid Bionic&lt;/h3&gt;
&lt;p&gt;Maemo Leste now supports another device - the &lt;a class="reference external" href="https://leste.maemo.org/Motorola_Droid_Bionic"&gt;Motorola Droid Bionic&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; contributed this post and also created &lt;a class="reference external" href="https://github.com/IMbackK/bionic-clown-boot"&gt;bionic-clown-boot&lt;/a&gt; to allow booting non-Android
kernels. Kernel patches are already being upstreamed.&lt;/p&gt;
&lt;p&gt;The Bionic was one of the &lt;a class="reference external" href="https://en.wikipedia.org/wiki/List_of_best-selling_mobile_phones#2011"&gt;best selling smartphones in 2011&lt;/a&gt;,
selling 13 million units that year. That is great news, because that means they
should be relatively easy to source.&lt;/p&gt;
&lt;p&gt;The Bionic is pretty similar to the Droid 4 in hardware but does not have a
physical keyboard.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="motorola-droid-4"&gt;
&lt;h3&gt;Motorola Droid 4&lt;/h3&gt;
&lt;div class="section" id="on-mainline"&gt;
&lt;h4&gt;On mainline&lt;/h4&gt;
&lt;p&gt;We have been following upstream kernels very closely with the Droid 4 (and now
also Bionic), usually jumping to the newest kernel on the day of its release, at
least in our &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;beowulf-devel&lt;/span&gt;&lt;/tt&gt; repository. This is great, because we find bugs
early, but it also means we deal with bugs every few weeks. Linux 5.9 had been
particularly painful with random resets, which we ultimately seem to have fixed
(big thanks to &lt;tt class="docutils literal"&gt;tmlind&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt;), but then 5.10 introduced similar
problems, which as of yesterday also seem to be fixed. But it serves as a
reminder that having mainline support for a device is not something you do once:
it requires active maintenance.&lt;/p&gt;
&lt;p&gt;Additionally, the &lt;a class="reference external" href="https://lkml.org/lkml/2020/6/29/1404"&gt;Droid 4 RTC has seen some fixes&lt;/a&gt; and more work is pending to be
mainlined. Some of that work can be seen here:
&lt;a class="reference external" href="https://github.com/tmlind/linux/commits/droid4-pending-v5.10"&gt;https://github.com/tmlind/linux/commits/droid4-pending-v5.10&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="modem-power-management"&gt;
&lt;h4&gt;Modem power management&lt;/h4&gt;
&lt;p&gt;This week we will also merge a power management improvement for the Droid 4 with
the modem on, to disable signal strength notifications when the screen is off.
These notifications cause a lot of wake ups, so we don't want to receive them
when we don't need them. We can fix this with &lt;a class="reference internal" href="#dbus-scripts"&gt;dbus-scripts&lt;/a&gt;:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
# cat /etc/dbus-scripts.d/idle-modem
/root/test.sh * * com.nokia.mce.signal display_status_ind
# cat /root/test.sh
#!/bin/sh

if [ &amp;quot;$5&amp;quot; = &amp;quot;on&amp;quot; ]
then
    printf 'U1234AT+SCRN=1\r' &amp;gt; /dev/gsmtty1
else
    printf 'U1234AT+SCRN=0\r' &amp;gt; /dev/gsmtty1
fi
&lt;/pre&gt;
&lt;/div&gt;
&lt;div class="section" id="sd-card-speed"&gt;
&lt;h4&gt;SD card speed&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; tried to use a much higher clocking frequency (100Mhz) than standard
with a UHS-3 sd card and managed to get a &lt;cite&gt;41.4MB/s&lt;/cite&gt; sd card write speed. We'll
have to investigate if this work is something we can use in our kernels.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;div class="section" id="u-boot-and-serial"&gt;
&lt;h4&gt;u-boot and serial&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Pali&lt;/tt&gt; has been doing a lot of work on mainline u-boot on the Nokia N900 again,
and it has paid off. Now u-boot boots again (yes, it wasn't booting anymore!)
and usbtty (serial communication over usb) now works. This might allow
for scripted booting of the Nokia N900.&lt;/p&gt;
&lt;p&gt;The new u-boot binary can be found here:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://maedevu.maemo.org/images/n900/tools/"&gt;https://maedevu.maemo.org/images/n900/tools/&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;with filename &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;u-boot-2020.12-pali.bin&lt;/span&gt;&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;If you flash this to your device with 0xFFFF and boot with the keyboard open and
USB cable connected, you should see something similar to this in &lt;tt class="docutils literal"&gt;dmesg&lt;/tt&gt;:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
usb 3-1.1.3: new full-speed USB device number 95 using xhci_hcd
usb 3-1.1.3: New USB device found, idVendor=0421, idProduct=01c8, bcdDevice= 0.00
usb 3-1.1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 3-1.1.3: Product: N900 (U-Boot)
usb 3-1.1.3: Manufacturer: Nokia
usb 3-1.1.3: SerialNumber: 0000000
cdc_acm 3-1.1.3:1.0: ttyACM0: USB ACM device
&lt;/pre&gt;
&lt;p&gt;And to top it off, here is a video of the physical serial on the right, and the
usb serial on the left. You can see they are in sync:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/tGGXvguyXWk"
;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="powervr-ddk-1-17-xorg-glamor-and-clock-fixes"&gt;
&lt;h3&gt;PowerVR: DDK 1.17, Xorg Glamor and clock fixes&lt;/h3&gt;
&lt;p&gt;One of the more exciting things is that &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt;, &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; and
&lt;tt class="docutils literal"&gt;tmlind&lt;/tt&gt; have been able to get the latest PowerVR DDK 1.17 to run on both
the Nokia N900 and the Motorola Droid 4. The work entails not just the kernel
side and kernel display driver side, but also the Xorg side: having to bang
X11 &lt;tt class="docutils literal"&gt;Glamor&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;xf86-video-modesetting&lt;/span&gt;&lt;/tt&gt; into shape to conform more closely
to the OpenGL(ES) specifications, and fix various bugs. &lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; is
also working on a shim library to expose graphics drivers that support GBM
platform display to X11, even if the drivers lack the specific X11 windowing
system, which could potentially benefit other drivers that are no longer
providing drivers for X11. The shim requires the DRI3 and PRESENT support from
X11.&lt;/p&gt;
&lt;p&gt;One of the problems here is that it looks like X11 is left without maintainers:
there are many pending pull requests that contain fixes, and they're mostly just
being ignored. Unfortunately, that includes some pull requests we have sent in, so
we have had no choice but to fork X11 for now and package our own versions.&lt;/p&gt;
&lt;p&gt;That said, this driver work would also bring the Nokia N900 back to Linux 5.10
or 5.11, which is great news, as that would likely also benefit the long-awaited
&lt;tt class="docutils literal"&gt;OFF&lt;/tt&gt; mode for the phone (debugging issues on older kernels is no fun),
bringing much better power management.&lt;/p&gt;
&lt;div class="section" id="corruption"&gt;
&lt;h4&gt;Corruption&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; also found that the PowerVR SGX driver on the Motorola Droid 4 ran at a
much lower clock frequency than it should, which sometimes causes the result
to be rendered too late to the display, resulting in the artifacts that we have
gotten used to. With the GPU at the right frequency, the rendering artifacts are
gone, and the 3D is smoother than ever before.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone-and-pinetab"&gt;
&lt;h3&gt;Pinephone and Pinetab&lt;/h3&gt;
&lt;p&gt;The Pinephone and Pinetab devices are moving forward as well. Along with the
already mentioned working things, most things you'd expect work on the Pine64
devices. We have also implemented the &lt;a class="reference external" href="https://github.com/crust-firmware/crust"&gt;crust firmware&lt;/a&gt; in our images so power usage is
minimal when the devices are suspended!&lt;/p&gt;
&lt;p&gt;As Maemo Leste is envisioned as an operating system to mainly be used on devices
with a hardware keyboard, you can imagine our excitement when Pine64 announced
they are looking into a hardware keyboard &lt;a class="reference external" href="https://www.pine64.org/2020/07/29/invitation-to-play-along/"&gt;addon&lt;/a&gt; for the
Pinephone. We'll be following this development, and hope for it to continue
successfully :)&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="continuous-integration-for-device-images"&gt;
&lt;h3&gt;Continuous Integration for device images&lt;/h3&gt;
&lt;p&gt;On our Jenkins infrastructure, we have been successfully running &lt;a class="reference external" href="https://phoenix.maemo.org/view/Images/"&gt;weekly builds&lt;/a&gt; for all our device targets. This is a
great advantage as we don't have to manually build images whenever we find the
free time to do it, but rather have fresh images be built every week so everyone
can always download latest images with the most up to date packages installed.&lt;/p&gt;
&lt;p&gt;This has also encouraged us to improve our image building &lt;a class="reference external" href="https://github.com/parazyd/libdevuansdk"&gt;software&lt;/a&gt;, clean it up, and make it more
efficient and generally just better.&lt;/p&gt;
&lt;p&gt;At some point in the future, we also plan to look into automated testing of
these images, because a successful build doesn't necessarily mean a perfectly
working image. More later ;)&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="closing-words"&gt;
&lt;h2&gt;Closing words&lt;/h2&gt;
&lt;p&gt;It's been a pretty good year for our project. A lot more core pieces are falling
into place, we are attracting more contributors and things are becoming more
stable and featureful. The project has received some funding which we have been
using to ship devices to folks who want to help out.&lt;/p&gt;
&lt;p&gt;It's been almost three years since the announcement of our project, and well over three
years since we started working on Maemo Leste. And we have come far, and we will
keep pushing until we have the secure, open, extendable and customizable mobile
operating system that we envision. Built by the community, for the community.&lt;/p&gt;
&lt;div class="section" id="ecosystem-community"&gt;
&lt;h3&gt;Ecosystem &amp;amp; Community&lt;/h3&gt;
&lt;p&gt;Our community keeps growing, our ecosystem expanding, but there is a lot to wish
for too: more regular updates, a better structure for our wiki and an easier way
for users to contribute.&lt;/p&gt;
&lt;p&gt;Readers not familiar with this &lt;a class="reference external" href="https://talk.maemo.org/showthread.php?t=101089&amp;amp;page=5"&gt;Maemo Leste Playground thread&lt;/a&gt; might like to take a
peek at some of the work our community has been doing to make various programs
and games run on Maemo Leste.&lt;/p&gt;
&lt;p&gt;The &lt;a class="reference external" href="http://maemo.org/downloads/product/Maemo5/maemo-org/"&gt;Fremantle Maemo.org theme&lt;/a&gt; is now &lt;a class="reference external" href="https://github.com/maemo-leste-extras/hildon-theme-maemo-org"&gt;also available
in Maemo Leste&lt;/a&gt;,
and we might switch to using that (community developed) theme by default.&lt;/p&gt;
&lt;!-- We would have thought that our settings applications would contain so many --&gt;
&lt;!-- applets? --&gt;
&lt;!--  --&gt;
&lt;!-- .. image:: /images/control-panel-filling-up.png --&gt;
&lt;!-- :height: 576px --&gt;
&lt;!-- :width: 324px --&gt;
&lt;!--  --&gt;
&lt;!-- Or that multi tasking on the Droid 4 would work so well? --&gt;
&lt;!--  --&gt;
&lt;!-- .. image:: /images/leste-multi-tasking.png --&gt;
&lt;!-- :height: 576px --&gt;
&lt;!-- :width: 324px --&gt;
&lt;/div&gt;
&lt;div class="section" id="phone-aspect"&gt;
&lt;h3&gt;Phone aspect&lt;/h3&gt;
&lt;p&gt;The OS might look barebones now, but there is a lot to look forward to
when we land some of the final missing pieces: contacts, text communications
and phone calls.&lt;/p&gt;
&lt;p&gt;Lacking phone calls might seem ridiculous to some, &lt;strong&gt;but there are many aspects
that matter about a mobile operating system&lt;/strong&gt;, and working phone calls without
any sense of power management or audio policy modules to automatically switch
from/to headset and speakers also make a device hardly usable. We are now at the
point where the Motorola Droid 4 lasts for several days on a battery while it
is connected to the mobile network, performs quite well, almost all the hardware
components work the way they should, and we have a strong (and expanding, to
other devices) base to build our phone OS upon.&lt;/p&gt;
&lt;p&gt;Contacts, phone calls and text-conversations will be the main focus for us going
into 2021. We will aim to mimic Fremantle where it makes sense: providing a
unified conversations experience, regardless of the instant messaging protocol
(leveraging telepathy and libpurple), combined with a featureful phone
application.&lt;/p&gt;
&lt;!-- SORTME --&gt;
&lt;!-- ====== --&gt;
&lt;!-- * https://wizzup.org/update-notification-1.png --&gt;
&lt;!-- https://wizzup.org/update-notification-2.png --&gt;
&lt;!-- https://wizzup.org/update-notification-3.png --&gt;
&lt;!-- https://wizzup.org/update-notification-4.png --&gt;
&lt;!-- https://wizzup.org/update-notification-5.png --&gt;
&lt;!-- https://wizzup.org/update-notification-6.png --&gt;
&lt;!-- https://wizzup.org/update-notification-7.png --&gt;
&lt;!-- * https://github.com/maemo-leste/bugtracker/issues/41 - screen calib applet --&gt;
&lt;!-- * mpd with GMPC works nice (make some screenshots), also fullscreen mode is cool --&gt;
&lt;!-- * https://github.com/maemo-leste/bugtracker/issues/390#issuecomment-657268449 - --&gt;
&lt;!-- progress on call ui libs --&gt;
&lt;!-- * "Re: [maemo-leste] WIFI tethering" --&gt;
&lt;!-- * https://github.com/maemo-leste/osso-systemui-tklock/pull/2 --&gt;
&lt;!-- * 17:44 &lt;parazyd&gt; https://github.com/maemo-leste/bugtracker/issues/447 -&gt; "no more apt warnings about runlevels" --&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you have questions, are interested in specifics, or helping out, or wish to
have a specific package ported, please see our bugtracker.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900 and Motorola Droid 4 and Bionic units available to
interested developers&lt;/strong&gt;, so if you are interested in helping out but have
trouble acquiring a device, let us know.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay
up to date, ask questions and/or help out. Another great way to get in touch is
to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="droid4"></category><category term="bionic"></category><category term="n900"></category><category term="pinephone"></category><category term="pinetab"></category><category term="cellular"></category><category term="mce"></category><category term="accelerometer"></category><category term="qt"></category><category term="qt5"></category><category term="contacts"></category><category term="calculator"></category><category term="dorian"></category><category term="calendar"></category><category term="qalendar"></category><category term="clock"></category><category term="alarms"></category><category term="extras"></category><category term="light sensor"></category><category term="power management"></category><category term="ofono"></category><category term="openrc"></category><category term="keyboard layout"></category><category term="vibration"></category><category term="cellular data"></category><category term="gps"></category><category term="location"></category></entry><entry><title>Maemo Leste - Thirteenth Update (April) 2020</title><link href="https://maemo-leste.github.io/maemo-leste-thirteenth-update-april-2020.html" rel="alternate"></link><published>2020-06-24T18:00:00+02:00</published><updated>2020-06-24T18:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2020-06-24:/maemo-leste-thirteenth-update-april-2020.html</id><summary type="html">&lt;p&gt;It's been several weeks since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-twelfth-update-february-and-march-2020.html"&gt;last update&lt;/a&gt;, so let's start
with a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;We have improved power management on the Droid 4, and currently, under ideal
conditions, the power draw is about &lt;tt class="docutils literal"&gt;60mW&lt;/tt&gt; with the modem turned on. That
should last a few days on a decent battery …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;It's been several weeks since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-twelfth-update-february-and-march-2020.html"&gt;last update&lt;/a&gt;, so let's start
with a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;We have improved power management on the Droid 4, and currently, under ideal
conditions, the power draw is about &lt;tt class="docutils literal"&gt;60mW&lt;/tt&gt; with the modem turned on. That
should last a few days on a decent battery&lt;/li&gt;
&lt;li&gt;Various sensors and other hardware of the Motorola Droid 4 are now usable with
Maemo Leste&lt;/li&gt;
&lt;li&gt;A lot of kernel bugs/regressions have been chased and fixed&lt;/li&gt;
&lt;li&gt;Cellular support is improving; cellular data should now work&lt;/li&gt;
&lt;li&gt;Maemo Leste Extras should contain quite a few more packages now&lt;/li&gt;
&lt;li&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;leste-config-*&lt;/span&gt;&lt;/tt&gt; packages now exist to provide seamless configuration updates
and changes, so there should be less of a need to &amp;quot;reinstall&amp;quot; on every new
image release&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="section" id="software-changes"&gt;
&lt;h2&gt;Software changes&lt;/h2&gt;
&lt;div class="section" id="mce"&gt;
&lt;h3&gt;mce&lt;/h3&gt;
&lt;p&gt;The Mode Control Entity has seen significant changes.&lt;/p&gt;
&lt;p&gt;MCE will now properly blank the screen, allowing the SoC to idle, which
in turn allows for significant power saving (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/338"&gt;see issue #338&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/5"&gt;MCE PR 5&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;With the newer versions, the touchscreen will also be properly disabled when the
device is locked. This will prevent 'accidental' input events being sent to
applications while the device is locked. MCE will also close the file
descriptors of any touchscreen devices and tell X11 to disable the touchscreens
to let the touchscreen driver idle properly. For more details, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/340"&gt;issue #340&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/6"&gt;MCE PR 6&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/7"&gt;MCE PR 7&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Furthermore, we've made a change to the default &lt;tt class="docutils literal"&gt;/etc/mce/mce.ini&lt;/tt&gt; configuration
file to prevent accidental shutdowns on the Droid 4. We've &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/392"&gt;increased the time
one has to press the power key to shutdown the device (issue #392)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;ALS (Ambient Light Sensor) support has been extended, and it now also works on the
&lt;a class="reference internal" href="#motorola-droid-4"&gt;Motorola Droid 4&lt;/a&gt;. See &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/8/"&gt;MCE PR 8&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A module contributed by &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; to support vibration in MCE is also expected to
land in the next few days. See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/132"&gt;issue #132&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/9"&gt;MCE PR 9&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Something else to look forward to is the execution of mode-change shell scripts,
to allow certain programs or scripts to be executed when a device is locked,
unlocked, or enters other mce (sub)modes.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="input-and-focus-fixes"&gt;
&lt;h3&gt;Input and Focus fixes&lt;/h3&gt;
&lt;p&gt;libmatchbox2 and hildon-desktop (the Maemo window manager) have had &lt;a class="reference external" href="https://bugs.maemo.org/show_bug.cgi?id=5987"&gt;long standing
bugs with regards to input focus&lt;/a&gt;, which also made it
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/346"&gt;impossible to send keyboard events to vanilla Qt 5 applications&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; have been trying to get to the bottom of the problem.
The result of that effort is that all known problematic input and focus issues
are now fixed. Now xev happily receives events, es2gears responds to keyboard input
events, and Qt 5 applications take input the way they are supposed to.&lt;/p&gt;
&lt;p&gt;Relevant pull requests:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/libmatchbox2/pull/3"&gt;libmatchbox PR 3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/libmatchbox2/pull/4"&gt;libmatchbox PR 4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/pull/4"&gt;hildon-desktop PR 4&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="qt-5-progress-is-being-made"&gt;
&lt;h3&gt;Qt 5: Progress is being made&lt;/h3&gt;
&lt;p&gt;The Maemo Qt 5 port is not finished yet, but has seen various improvements.
Merlijn has been doing work porting the &amp;quot;Hildon Input Method&amp;quot; virtual keyboard
patches to Qt 5. Due to the more clear architecture of Qt 5, our
unwillingness to fork Qt 5 as a whole, and the fact that we're also porting from
old &lt;tt class="docutils literal"&gt;Xlib&lt;/tt&gt; code to &lt;tt class="docutils literal"&gt;xcb&lt;/tt&gt;, the work is taking a little bit more
time. On the upside, all the Maemo Qt 5 bits will hopefully available via a
&lt;a class="reference external" href="https://doc.qt.io/qt-5/qpa.html"&gt;Qt 5 loadable platform module&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Apart from the virtual keyboard, there are at least two important pieces
missing:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;QMenu support, to allow hildon-style menu items to show when the application
title is touched/pressed&lt;/li&gt;
&lt;li&gt;Hildon-style stacked windows&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We've also ported over a sample application, &lt;a class="reference external" href="https://github.com/maemo-leste-extras/countdowntimer"&gt;countdowntimer&lt;/a&gt;:&lt;/p&gt;
&lt;img alt="" src="/images/countdowntimer.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;To make it usable, we had to have the application respect desktop sizes other
than the &lt;cite&gt;800x480&lt;/cite&gt; that the Nokia N900 screen supports, to prevent it from
looking like this:&lt;/p&gt;
&lt;img alt="" src="/images/leste-qt5-countdowntimer-0.1.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Countdowntimer itself also makes use of the specialised QMenu and Hildon
stackable windows, but is already quite usable even without those modifications.&lt;/p&gt;
&lt;p&gt;Development can be done directly on the VM, using X11 forwarding:&lt;/p&gt;
&lt;img alt="" src="/images/leste-qt5-designer-x11-forward.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;You can also use Qt Designer with the native Maemo theme, but, well...:&lt;/p&gt;
&lt;img alt="" src="/images/leste-designer-lol.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;If you plan to use Qt designer on your device, you might want to look at &lt;a class="reference internal" href="#xephyr-nested-xorg-server-on-maemo"&gt;Xephyr
(Nested Xorg server) on Maemo&lt;/a&gt; instead.&lt;/p&gt;
&lt;p&gt;In the next month, we hope to mostly finish the Qt 5 port. Keep in mind that many
Qt 5 applications are already usable on Maemo Leste as is. This is also documented in
&lt;a class="reference internal" href="#community-showcase"&gt;Community showcase&lt;/a&gt;!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="xephyr-nested-xorg-server-on-maemo"&gt;
&lt;h3&gt;Xephyr (Nested Xorg server) on Maemo&lt;/h3&gt;
&lt;p&gt;Xephyr is a nested X server, which can run in a window on Maemo Leste, allowing you
to run any ordinary desktop application on Maemo Leste, in a window.&lt;/p&gt;
&lt;p&gt;It's especially useful for devices with physical keyboards.&lt;/p&gt;
&lt;p&gt;Installing it is as simple as:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
sudo apt install xephyr
&lt;/pre&gt;
&lt;p&gt;And then start it as follows:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
Xephyr :1 &amp;amp;
&lt;/pre&gt;
&lt;p&gt;And launch applications inside that server like so:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
DISPLAY=:1 dwm &amp;amp;
DISPLAY=:1 xterm
&lt;/pre&gt;
&lt;img alt="" src="/images/xephyr-droid4.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="cellular-data-and-ofono-support"&gt;
&lt;h3&gt;Cellular data and ofono support&lt;/h3&gt;
&lt;p&gt;The &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;beowulf-devel&lt;/span&gt;&lt;/tt&gt; repository of Maemo Leste now has the
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;libicd-network-ofono&lt;/span&gt;&lt;/tt&gt; plugin for &lt;tt class="docutils literal"&gt;icd2&lt;/tt&gt; to allow for making GPRS/UMTS/LTE data
connections:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-libicd-network-ofono.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/droid4-libicd-network-ofono-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;This should work on all of the supported devices, as long as their ofono version
(and SIM) supports data connections.&lt;/p&gt;
&lt;p&gt;Additionally, there were some problems on Beowulf where user &lt;tt class="docutils literal"&gt;user&lt;/tt&gt; (the default
user in Maemo) had no access to the ofono dbus interface, but this has been fixed in
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/372"&gt;issue #372&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Finally, once this work has seen a bit more testing, we will create a meta
package to automatically install all the cellular packages, and all devices
will automatically get the cellular support when they &lt;tt class="docutils literal"&gt;apt update &amp;amp;&amp;amp; apt
upgrade&lt;/tt&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="wireless"&gt;
&lt;h3&gt;Wireless&lt;/h3&gt;
&lt;p&gt;Wireless is mostly just working, although the UI still has some rough edges. In
particular, sometimes connecting to a network fails if entering the password
takes too long.&lt;/p&gt;
&lt;p&gt;One other bug was fixed: a problem where the networks would appear in the
network dialog, but would not be selectable until the next scan returned, which
was really annoying. See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/253"&gt;issue #253&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/connui-internet/pull/1"&gt;connui-internet PR&lt;/a&gt;.&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/374"&gt;https://github.com/maemo-leste/bugtracker/issues/374&lt;/a&gt; - two packages, also
mention integration&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="themes"&gt;
&lt;h3&gt;Themes&lt;/h3&gt;
&lt;p&gt;The retro &lt;a class="reference external" href="https://github.com/maemo-leste-extras/hildon-theme-okuda"&gt;Okuda theme&lt;/a&gt; is now available:&lt;/p&gt;
&lt;img alt="" src="/images/leste-okuda-desktop.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-okuda-vkb.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-okuda-xterm.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/miku-theme"&gt;Miku theme&lt;/a&gt;:&lt;/p&gt;
&lt;img alt="" src="/images/leste-miku-settings.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-miku-desktop.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/hildon-theme-matrix"&gt;Matrix theme&lt;/a&gt;:&lt;/p&gt;
&lt;img alt="" src="/images/leste-matrix-desktop.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-matrix-lock.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="openrc-integration-in-debian-fixes"&gt;
&lt;h3&gt;OpenRC integration in Debian fixes&lt;/h3&gt;
&lt;p&gt;We've successfully submitted a patch to SysVinit upstream, which brings in better
support for OpenRC and its internals to both Debian and Devuan. It has not yet
propagated to Devuan, but it is expected to happen, of course. In Maemo Leste we
already provide the patched version and maintain it ourselves until it is
available in Devuan. The patch itself brings in proper OpenRC support in the
insserv tool, which means that LSB headers aren't necessary for OpenRC
initscripts and they now get installed in the default runlevel without the need
for manual interference.&lt;/p&gt;
&lt;p&gt;The patch was merged in &lt;tt class="docutils literal"&gt;6a65f4412a2d24d78741f49e64e1128993341e65&lt;/tt&gt;, and can be
seen here:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="http://git.savannah.nongnu.org/cgit/sysvinit/insserv.git/commit/?h=1.22.0&amp;amp;id=6a65f4412a2d24d78741f49e64e1128993341e65"&gt;http://git.savannah.nongnu.org/cgit/sysvinit/insserv.git/commit/?h=1.22.0&amp;amp;id=6a65f4412a2d24d78741f49e64e1128993341e65&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you found that some init scripts ended up in &lt;tt class="docutils literal"&gt;/etc/runlevels&lt;/tt&gt; instead of
&lt;tt class="docutils literal"&gt;/etc/runlevels/default&lt;/tt&gt;, try reinstalling the affected packages; they should
install fine now.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="more-languages-added-to-virtual-keyboard-layouts"&gt;
&lt;h3&gt;More languages added to virtual keyboard layouts&lt;/h3&gt;
&lt;p&gt;Many more virtual keyboard layouts have been added. If you were ever in need of
a Belarusian or Bulgarian keyboard layout, now is your time to &lt;tt class="docutils literal"&gt;apt update &amp;amp;&amp;amp;
apt upgrade&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;See &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-input-method-plugins/pull/2"&gt;hildon-input-method-plugins PR 2&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="steps-towards-calls-and-texts"&gt;
&lt;h3&gt;Steps towards calls and texts&lt;/h3&gt;
&lt;p&gt;With &lt;a class="reference internal" href="#cellular-data-and-ofono-support"&gt;Cellular data and ofono support&lt;/a&gt; improving and other projects getting
close to finished, it will soon be time to turn our attention to usable calls and
texts on Maemo. We will use many of the same components that Maemo Fremantle
uses, just in their updated forms, like the Mer project does.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/390"&gt;Issue #390&lt;/a&gt; documents
some of the steps we will be taking. It will look something like:&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;Perform further analysis on how this works in Fremantle&lt;/li&gt;
&lt;li&gt;Import all the FOSS components (there are quite a number of them)&lt;/li&gt;
&lt;li&gt;Figure out audio (routing and) policies&lt;/li&gt;
&lt;li&gt;Reimplement the non-FOSS ones: call and sms UI are the big ones&lt;/li&gt;
&lt;li&gt;Use &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;osso-abook&lt;/span&gt;&lt;/tt&gt; in the alternative call and sms UIs&lt;/li&gt;
&lt;/ol&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;towards proper telepathy integration &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/390"&gt;https://github.com/maemo-leste/bugtracker/issues/390&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-eventlogger-plugins"&gt;https://github.com/maemo-leste/rtcom-eventlogger-plugins&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/rtcom-eventlogger-ui"&gt;https://github.com/maemo-leste/rtcom-eventlogger-ui&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The addressbook interface is also underway and is being RE'd from the Fremantle
binaries: &lt;a class="reference external" href="https://github.com/maemo-leste/osso-abook/"&gt;https://github.com/maemo-leste/osso-abook/&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="maemo-input-sounds"&gt;
&lt;h3&gt;maemo-input-sounds&lt;/h3&gt;
&lt;p&gt;To test the MCE vibration driver, work has been started on &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-input-sounds/tree/wip"&gt;maemo-input-sounds&lt;/a&gt;, which uses the
&lt;cite&gt;X11 Record&lt;/cite&gt; extension to monitor for touchscreen and key presses, and in
reaction to those, either vibrate the device, play a sound, or even both.&lt;/p&gt;
&lt;p&gt;The status can be tracked in &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/389"&gt;issue #389&lt;/a&gt;. A fully functioning
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;maemo-input-sounds&lt;/span&gt;&lt;/tt&gt; probably depends on getting the audio set up completely
(see &lt;a class="reference internal" href="#next-up-audio-routing-pulseaudio-contacts-calls-sms-qt-5"&gt;Next up: Audio routing/Pulseaudio, Contacts, Calls/SMS, Qt 5&lt;/a&gt;).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="calendar-backend-and-frontend"&gt;
&lt;h3&gt;Calendar backend and frontend&lt;/h3&gt;
&lt;p&gt;Some more work is being done by &lt;tt class="docutils literal"&gt;buZz&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;sicelo&lt;/tt&gt; to get the calendar
software up and running.  The backend, &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;calendar-backend&lt;/span&gt;&lt;/tt&gt; is already building
fine, but the frontend (&lt;tt class="docutils literal"&gt;qalendar&lt;/tt&gt;) is still blocking on the Qt 5 port:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/buzztiaan/calendar-backend"&gt;https://github.com/buzztiaan/calendar-backend&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/buzztiaan/libgq"&gt;https://github.com/buzztiaan/libgq&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/buzztiaan/qalendar"&gt;https://github.com/buzztiaan/qalendar&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We expect this to fold in rather quickly once &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;osso-abook&lt;/span&gt;&lt;/tt&gt; is mostly ready.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="hildon-home-fixes"&gt;
&lt;h3&gt;hildon-home fixes&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;hildon-home&lt;/span&gt;&lt;/tt&gt; would frequently try to monitor non existing directories for
changes, but because the directories did not exist, kept retrying the monitor
calls. This resulted in significantly higher power usage. This has been fixed
now, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/264"&gt;issue #264&lt;/a&gt;
for more details.&lt;/p&gt;
&lt;p&gt;Additionally, since our move to Beowulf, two plugins for &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;hildon-home&lt;/span&gt;&lt;/tt&gt; would
no longer load (due to &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;hildon-home&lt;/span&gt;&lt;/tt&gt; loading them from a non-existing path),
but this too has now been fixed:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-home/commit/13a8a03196a33e51396ceb61ce307d9655a4ea41"&gt;https://github.com/maemo-leste/hildon-home/commit/13a8a03196a33e51396ceb61ce307d9655a4ea41&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-home/commit/a505d58a6ae87cb032ec20a606d54d69f3582fba"&gt;https://github.com/maemo-leste/hildon-home/commit/a505d58a6ae87cb032ec20a606d54d69f3582fba&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="device-support"&gt;
&lt;h2&gt;Device support&lt;/h2&gt;
&lt;div class="section" id="motorola-droid-4"&gt;
&lt;h3&gt;Motorola Droid 4&lt;/h3&gt;
&lt;p&gt;The Motorola Droid 4 has seen a big set of improvements:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;The &lt;a class="reference internal" href="#ambient-light-sensor"&gt;Ambient Light Sensor&lt;/a&gt; is now used;&lt;/li&gt;
&lt;li&gt;The &lt;a class="reference internal" href="#vibration-motor"&gt;Vibration Motor&lt;/a&gt; is now used;&lt;/li&gt;
&lt;li&gt;A driver for the &lt;a class="reference internal" href="#accelerometer"&gt;Accelerometer&lt;/a&gt; is available;&lt;/li&gt;
&lt;li&gt;Advanced &lt;a class="reference internal" href="#keyboard-layout"&gt;keyboard layout&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Basic &lt;a class="reference internal" href="#modem-integration"&gt;modem integration&lt;/a&gt; in &lt;cite&gt;beowulf-devel&lt;/cite&gt; branches;&lt;/li&gt;
&lt;li&gt;Much improved battery life through better &lt;a class="reference internal" href="#power-management"&gt;Power Management&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;Latest Linux kernel&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="section" id="ambient-light-sensor"&gt;
&lt;h4&gt;Ambient Light Sensor&lt;/h4&gt;
&lt;p&gt;Just like the Nokia N900, the Droid has an ambient light sensor, used to measure
exactly that: ambient light levels. This can be used to adjust the screen
brightness to the ambient light levels, based on the brightness profile
selected. For observant users, this already worked on the Nokia N900, but now
this also works on the Droid 4.&lt;/p&gt;
&lt;p&gt;This should make your device more pleasant to use in darker rooms, but also
outside - in direct sunlight.&lt;/p&gt;
&lt;p&gt;Additionally, if the light level is low, the device is unlocked, and the
keyboard is exposed, the keyboard backlight LEDs will be turned on, to allow for
optimal typing in the dark. :-)&lt;/p&gt;
&lt;p&gt;See &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/8/"&gt;MCE PR 8&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="vibration-motor"&gt;
&lt;h4&gt;Vibration Motor&lt;/h4&gt;
&lt;p&gt;Once &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/9"&gt;MCE PR 9&lt;/a&gt; is merged, the vibration motor on the Motorola Droid 4 (and actually also the Nokia
N900 and other devices that support the Linux &lt;a class="reference external" href="https://www.kernel.org/doc/html/latest/input/ff.html"&gt;FF&lt;/a&gt; interface) will work.
This allows for vibration of the device to provide touchscreen haptic feedback to the user,
but also when (in the near future) an SMS is received, or
the device receives a phone call.&lt;/p&gt;
&lt;p&gt;See also these notes on Maemo.org &lt;a class="reference external" href="https://wiki.maemo.org/Phone_control#Start_Vibrating_Incoming_Call"&gt;on how to start and stop vibrations&lt;/a&gt;. Since we
are compatible at least on the DBUS level, the original Maemo instructions just
apply. It is also possible to add more patterns by editing &lt;tt class="docutils literal"&gt;/etc/mce/mce.ini&lt;/tt&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="accelerometer"&gt;
&lt;h4&gt;Accelerometer&lt;/h4&gt;
&lt;p&gt;The accelerometer driver is now enabled, meaning that things like the
&lt;a class="reference external" href="https://github.com/buzztiaan/droidsaber"&gt;droidsaber&lt;/a&gt; are now possible:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/DeCtO8WwaTc"
 ;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;p&gt;This will also be useful for automatically changing the screen orientation, based
on the device orientation. The powervr driver might need a bit more work before
that will work smoothly and well though.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="power-management"&gt;
&lt;h4&gt;Power Management&lt;/h4&gt;
&lt;p&gt;The power management on the Droid 4 should be in much better shape now. Under
ideal circumstances, with the modem online, the device should idle at about
&lt;tt class="docutils literal"&gt;60mW&lt;/tt&gt;. This is made possible by the incredible Linux kernel support, &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-pm"&gt;droid4-pm&lt;/a&gt;, our various &lt;a class="reference internal" href="#mce"&gt;mce&lt;/a&gt; improvements,
and in general OMAP being well designed when it comes to power management. This
should last most batteries for several days. Things might improve a little more
if OMAP &lt;tt class="docutils literal"&gt;OFF&lt;/tt&gt; mode ever starts to work on OMAP 4.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Merlijn&lt;/tt&gt; recently acquired a few lab power supplies, and (&lt;a class="reference external" href="https://sourceforge.net/p/sigrok/mailman/message/37014835/"&gt;after actually making it
work with sigrok, working around insanely stupid firmware bugs&lt;/a&gt;) was able to
generate the following graph of power usage from a clean power-up, showing the
~3 minutes it takes to fully boot and enter the promised &lt;tt class="docutils literal"&gt;60mW&lt;/tt&gt; idle power
usage:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-boot.png" style="width: 700px; height: 350px;" /&gt;
&lt;p&gt;Here's what using the vibration motor does to the power draw:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-rumble.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;And the same for receiving an SMS (exposing a problem where the modem doesn't
properly idle after sms receive - it stays around &lt;tt class="docutils literal"&gt;180mW&lt;/tt&gt; as opposed to the
&lt;tt class="docutils literal"&gt;60mW&lt;/tt&gt; - this is still being investigated, but it looks like the USB doesn't
idle afterwards, requiring to be manually kicked into idle mode):&lt;/p&gt;
&lt;img alt="" src="/images/droid4-modem-power-recv-sms.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="ntpd-and-power-management"&gt;
&lt;h4&gt;NTPD and power management&lt;/h4&gt;
&lt;p&gt;The &lt;tt class="docutils literal"&gt;ntp&lt;/tt&gt; daemon currently causes a lot of wake ups, and negatively impacts
battery life. The current stop-gap is to stop it manually after booting, by
issuing the following as root:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
/etc/init.d/ntp stop
&lt;/pre&gt;
&lt;/div&gt;
&lt;div class="section" id="cellular-and-power-management"&gt;
&lt;h4&gt;Cellular and power management&lt;/h4&gt;
&lt;p&gt;While the modem itself should idle pretty well, the modem reports on the signal
strength very frequently, waking up the device even when the signal strength
should not be shown. The signal strength can be temporarily disabled like so:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
printf 'U1234AT+SCRN=0\r' &amp;gt; /dev/gsmtty1
&lt;/pre&gt;
&lt;/div&gt;
&lt;div class="section" id="graphing-power-logs-from-the-device"&gt;
&lt;h4&gt;Graphing power logs from the device&lt;/h4&gt;
&lt;p&gt;The GNOME Power Manager can plot upower data, and it runs on Leste:&lt;/p&gt;
&lt;img alt="" src="/images/leste-droid4-gnome-power-manager.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;But the upower data is located in &lt;tt class="docutils literal"&gt;/var/lib/upower&lt;/tt&gt; and not at all hard to plot
yourself, which might actually be more insightful (although this graph is very
basic):&lt;/p&gt;
&lt;img alt="" src="/images/capacity_over_time_from_upower.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;We're still figuring out how to properly plot all this data, but more
information (including the source to generate the above graph) can be found in
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/396"&gt;issue #396&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Maybe we can take &lt;a class="reference external" href="http://maemo.org/downloads/search/application.html?org_openpsa_products_search%5B1%5D%5Bproperty%5D=title&amp;amp;org_openpsa_products_search%5B1%5D%5Bconstraint%5D=LIKE&amp;amp;org_openpsa_products_search%5B1%5D%5Bvalue%5D=battery&amp;amp;org_openpsa_products_search%5B2%5D%5Bproperty%5D=os&amp;amp;org_openpsa_products_search%5B2%5D%5Bconstraint%5D=LIKE&amp;amp;org_openpsa_products_search%5B2%5D%5Bvalue%5D=Maemo5&amp;amp;fetch=Search"&gt;one of these maemo.org applications&lt;/a&gt; and port them.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="battery-calibration"&gt;
&lt;h4&gt;Battery calibration&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; has written an init script and tool to store the battery capacity when
known, and restore it, using &lt;tt class="docutils literal"&gt;spinal84&lt;/tt&gt;'s experimental kernel patches, see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/374"&gt;issue #374&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;It will be added to the Droid 4 meta package imminently, and then eventually
everyone should have a calibrated battery, hopefully.&lt;/p&gt;
&lt;p&gt;Also see &lt;a class="reference external" href="https://github.com/maemo-leste/upower/pull/4"&gt;upower PR 4&lt;/a&gt; for the
UPower fix that was required for this to work properly.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="keyboard-layout"&gt;
&lt;h4&gt;Keyboard layout&lt;/h4&gt;
&lt;p&gt;For a long time, it was not possible to &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/347"&gt;summon the special keys virtual keyboard
on the Droid 4&lt;/a&gt;, which
was particularly annoying since some &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/122"&gt;important keys were not available&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;By digging through the N900 keyboard files and learning a bunch about xkb, both
of these issues have now been resolved by &lt;tt class="docutils literal"&gt;Merlijn&lt;/tt&gt;. &lt;tt class="docutils literal"&gt;buZz&lt;/tt&gt; provided a nice
&lt;a class="reference external" href="https://github.com/maemo-leste/xkb-data/commit/99343d77464299cdf1d56e461018bd7f974cee42"&gt;geometry file&lt;/a&gt;, which allows us to visualise the keys on various keyboard levels:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-keyboard.png" style="width: 576px; height: 224px;" /&gt;
&lt;p&gt;(Yes, the shift button on the Droid 4 is mapped to control, and the caps lock
key is mapped to shift)&lt;/p&gt;
&lt;p&gt;Additional extra keys are also available when using the &lt;tt class="docutils literal"&gt;ISO_Level3_Shift&lt;/tt&gt;
key, &lt;a class="reference external" href="https://github.com/maemo-leste/xkb-data/commit/ccebc5ea6cc9c14c7822b53317640c8f2f6372b2#diff-5b7bd0a2cb0498ff38e4e466546d5fdcR36"&gt;see the actual xkb file for more details&lt;/a&gt; and this image for a quick reference:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-keyboard-2.png" style="width: 576px; height: 224px;" /&gt;
&lt;p&gt;Compare that to the N900 layout:&lt;/p&gt;
&lt;img alt="" src="/images/n900-keyboard.png" style="width: 576px; height: 224px;" /&gt;
&lt;p&gt;Bringing up the special keys virtual keyboard is done by pressing the &amp;quot;OK&amp;quot;
(&lt;tt class="docutils literal"&gt;ISO_Level3_Shift&lt;/tt&gt;) key and the Control (&lt;tt class="docutils literal"&gt;Shift&lt;/tt&gt;) key.&lt;/p&gt;
&lt;p&gt;And finally, the virtual keyboard didn't look quite good on the Droid 4, since
it has a larger resolution, but as of &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-input-method-plugins/pull/3"&gt;hildon-input-method-plugins PR 3&lt;/a&gt;, the
keyboard will render properly regardless of the screen dimensions:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-special-vkb.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="modem-integration"&gt;
&lt;h4&gt;Modem integration&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;tmlind&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;Pavel Machek&lt;/tt&gt; have been doing a lot of work on improving ofono
on the Droid 4. The result of most of that work is currently packaged in the
&lt;tt class="docutils literal"&gt;droid4&lt;/tt&gt; component, so any droid 4 will automatically get the latest/best
ofono version. Additionally, the technology is now also reported properly:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-tech.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/droid4-tech-2g.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;More work remains, including upstreaming ofono and dealing with some power
management regressions, but it's starting to look quite good indeed.&lt;/p&gt;
&lt;p&gt;Current work can be found here:
&lt;a class="reference external" href="https://github.com/maemo-leste/ofono-d4/tree/motmdm-serdev-ngsm"&gt;https://github.com/maemo-leste/ofono-d4/tree/motmdm-serdev-ngsm&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="increasing-font-size-in-osso-xterm"&gt;
&lt;h4&gt;increasing font size in osso-xterm&lt;/h4&gt;
&lt;p&gt;On the Nokia N900, the font size in osso-xterm can be changed using the volume
buttons, but this does not work yet on the Droid 4. The reason is that
osso-xterm expects specific (hardcoded) keys to be used to change the font, and
the Droid 4 has different keys mapped to its volume buttons, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/385"&gt;issue #385&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="latest-linux-kernel"&gt;
&lt;h4&gt;Latest Linux kernel&lt;/h4&gt;
&lt;p&gt;A month or so ago we switched to Linux 5.7:
&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/tree/droid4-pending-v5.7"&gt;https://github.com/maemo-leste/droid4-linux/tree/droid4-pending-v5.7&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;After that, there were various regressions to figure out, the most painful ones
being random resets, which took quite a while to pin down. &lt;tt class="docutils literal"&gt;tmlind&lt;/tt&gt; has been
incredibly helpful in getting these problems resolved. Onto the next Linux
version and set of regressions - and bugfixes, and features...&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;div class="section" id="powermanagement-update"&gt;
&lt;h4&gt;Powermanagement update&lt;/h4&gt;
&lt;p&gt;A while ago we tweeted out a photo of a Nokia N900 using very little power,
while in &lt;tt class="docutils literal"&gt;OMAP OFF&lt;/tt&gt; mode. We haven't yet brought this to our latest images,
but it's still planned (it might be relatively simple, but also might be a lot
of work). In addition, we will likely provide an &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;n900-pm&lt;/span&gt;&lt;/tt&gt; script, similar to
the &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;droid4-pm&lt;/span&gt;&lt;/tt&gt; script.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone"&gt;
&lt;h3&gt;Pinephone&lt;/h3&gt;
&lt;p&gt;Thanks to the packaging work from people in postmarketOS, we now also support
the modem in the Pinephone. While we've mostly been working with cellular things
on the Droid4, lots of that work can simply be reused on the Pinephone, and we
plan to do so in the near future. A package called &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;pinephone-modem-config&lt;/span&gt;&lt;/tt&gt;
can be installed, and along with updating the kernel (latest available version
is 5.6), it will bring in modem support. This is already automatically enabled
in the latest images. A note to keep in mind: While the modem is off, combined
with the latest kernels, the system outputs KEY_WAKEUP events which cause some
trouble with the virtual keyboard. The current solution to this is to just have
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;pinephone-modem-config&lt;/span&gt;&lt;/tt&gt; installed and after a reboot, things should be ok.
We will see if it's possible to patch this in some proper way in the future.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="weekly-builds"&gt;
&lt;h2&gt;Weekly builds&lt;/h2&gt;
&lt;p&gt;From July, we will also implement and enable weekly image builds on our CI
infrastructure. This means we won't be building images on demand anymore.
Instead they shall be built each week, containing all the latest packages and
goodies. Obviously, this will require more storage space, so we will be
removing device images older than five weeks.&lt;/p&gt;
&lt;p&gt;Hopefully this will also help us polish up our build frameworks and alert us
about possible bugs that arise during development. It is also a very important
step towards reproducible builds - which is one of our milestones we wish to
fulfill.&lt;/p&gt;
&lt;p&gt;However, for this occasion, we built new images and they can be downloaded as
usual. This time we've also built 64bit images for the Raspberry Pi 3 and 4.&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;64bit VM: &lt;a class="reference external" href="https://maedevu.maemo.org/images/virtual-machines/20200622/"&gt;https://maedevu.maemo.org/images/virtual-machines/20200622/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;N900: &lt;a class="reference external" href="https://maedevu.maemo.org/images/n900/20200623/"&gt;https://maedevu.maemo.org/images/n900/20200623/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Droid4: &lt;a class="reference external" href="https://maedevu.maemo.org/images/droid4/20200624/"&gt;https://maedevu.maemo.org/images/droid4/20200624/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Pinephone: &lt;a class="reference external" href="https://maedevu.maemo.org/images/pinephone/20200624/"&gt;https://maedevu.maemo.org/images/pinephone/20200624/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Pinetab: &lt;a class="reference external" href="https://maedevu.maemo.org/images/pinetab/20200624/"&gt;https://maedevu.maemo.org/images/pinetab/20200624/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Pi3: &lt;a class="reference external" href="https://maedevu.maemo.org/images/raspi3-64bit/20200623/"&gt;https://maedevu.maemo.org/images/raspi3-64bit/20200623/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Pi4: &lt;a class="reference external" href="https://maedevu.maemo.org/images/raspi4-64bit/20200623/"&gt;https://maedevu.maemo.org/images/raspi4-64bit/20200623/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="community-showcase"&gt;
&lt;h2&gt;Community showcase&lt;/h2&gt;
&lt;div class="section" id="ps-1-emulator"&gt;
&lt;h3&gt;PS 1 emulator&lt;/h3&gt;
&lt;p&gt;PCSX-ReARMed runs quite nicely on the Droid 4:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/BmIAQby4ccM"
 ;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;p&gt;Unfortunately, the community hasn't yet packaged the program for Maemo Leste
Extras, but we're confident someone will, at some point.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="photo-light-meter"&gt;
&lt;h3&gt;Photo Light meter&lt;/h3&gt;
&lt;p&gt;Written in Free Pascal, photolightmeter can be used calculate aperture and
shutter values.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="telegram"&gt;
&lt;h3&gt;Telegram&lt;/h3&gt;
&lt;p&gt;If you're a fan of Telegram, the desktop client just works on Maemo Leste:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://twitter.com/rfc1087/status/1271796014903635969"&gt;https://twitter.com/rfc1087/status/1271796014903635969&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="proxmark3"&gt;
&lt;h3&gt;Proxmark3&lt;/h3&gt;
&lt;p&gt;If you like toying with RFID cards, then you can (for example) use the bluetooth
module on the Droid 4 to connect a capable reader and run proxmark3 on the Droid
itself:&lt;/p&gt;
&lt;img alt="" src="/images/proxmark3-1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/proxmark3-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;You can find specific installation notes here: &lt;a class="reference external" href="http://web.archive.org/web/20200623220049/https://paste.debian.net/plainh/34a66276"&gt;http://web.archive.org/web/20200623220049/https://paste.debian.net/plainh/34a66276&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="quicknote"&gt;
&lt;h3&gt;Quicknote&lt;/h3&gt;
&lt;p&gt;A simple notes application written in Python is also available:
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/quicknote"&gt;https://github.com/maemo-leste-extras/quicknote&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="mihphoto"&gt;
&lt;h3&gt;mihphoto&lt;/h3&gt;
&lt;p&gt;A Qt 5 photo viewer is available, and optionally supports multitouch when
supplied as a startup argument:
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/mihphoto"&gt;https://github.com/maemo-leste-extras/mihphoto&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="personal-ip-address"&gt;
&lt;h3&gt;personal-ip-address&lt;/h3&gt;
&lt;p&gt;The good old personal-ip-address has returned, this time to Leste:
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/personal-ip-address"&gt;https://github.com/maemo-leste-extras/personal-ip-address&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="maemo-leste-extras"&gt;
&lt;h2&gt;Maemo Leste Extras&lt;/h2&gt;
&lt;p&gt;More community packages are being maintained in the &lt;tt class="docutils literal"&gt;extras&lt;/tt&gt; repository and
we're very glad and excited about it. If you're interested in maintaing your own
community package for Maemo Leste, there are instructions for you to do so on
the &lt;a class="reference external" href="https://github.com/maemo-leste-extras/bugtracker"&gt;bugtracker&lt;/a&gt; .&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="next-up-audio-routing-pulseaudio-contacts-calls-sms-qt-5"&gt;
&lt;h2&gt;Next up: Audio routing/Pulseaudio, Contacts, Calls/SMS, Qt 5&lt;/h2&gt;
&lt;p&gt;So what can you expect from future updates?&lt;/p&gt;
&lt;p&gt;The big things on our radar are still:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;Audio: Currently most devices do not even ship with &lt;tt class="docutils literal"&gt;pulseaudio&lt;/tt&gt;, but we'll probably want to start using it, and create ALSA UCM files for our soundcards, provide proper pulseaudio sink names for call routing, and so on. This is also a prerequisite for the &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-statusmenu-volume"&gt;volume applet&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Contacts (&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;osso-abook&lt;/span&gt;&lt;/tt&gt;), this will provide all of the Hildon contacts APIs
with the evolution database as a abackend, definitely required for proper SMS and
Call UI&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Qt 5 updates: hopefully we will soon have the virtual keyboard integration
ready, with the hildon menus and stacked windows following right after. That
should be enough to make most applications work, and from there on we'll
probably port things on an as-needed basis: like APIs for home and status
widgets&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Nokia's &lt;tt class="docutils literal"&gt;rtcom&lt;/tt&gt; packages and telepathy. &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/390"&gt;https://github.com/maemo-leste/bugtracker/issues/390&lt;/a&gt;
Some of this is covered in &lt;a class="reference internal" href="#steps-towards-calls-and-texts"&gt;Steps towards calls and texts&lt;/a&gt;, but to reiterate:
the plan is to use &lt;cite&gt;telepathy-ring&lt;/cite&gt; as an interface to &lt;cite&gt;ofono&lt;/cite&gt;, and use
&lt;cite&gt;rtcom-eventlogger&lt;/cite&gt; and other libraries to read from and log to the same
database format as used on Fremantle.
This approach is particularly exciting because it allows loading many other
telepathy plugins. There also exists a &lt;a class="reference external" href="https://github.com/dylex/slack-libpurple/commits/master"&gt;telepathy-haze&lt;/a&gt; plugin to load
(any) Pidgin (&lt;tt class="docutils literal"&gt;libpurple&lt;/tt&gt;) plugin, allowing for potentially loading (for
example) the &lt;a class="reference external" href="https://github.com/dylex/slack-libpurple"&gt;slack-libpurple&lt;/a&gt;
slack plugin into telepathy, and being able to directly
interface with Slack using the native hildon UI, potentially even with
contacts, too. And of course, there are also SIP plugins for telepathy,
allowing for VOIP calls from the same (native) UI&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Speaking of UIs, once the backend (rtcom) is mostly there, the last thing
we'll have to do is to bring up the call and text UIs. The Fremantle SMS UI
relied on an html rendering engine, &lt;a class="reference external" href="https://wiki.maemo.org/Conversation_Mods"&gt;allowing for cool customisations&lt;/a&gt; like these:&lt;/p&gt;
&lt;img alt="" src="/images/fun-conversations-mod.png" style="width: 432px; height: 256px;" /&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="web-interface-for-packages"&gt;
&lt;h2&gt;Web interface for packages&lt;/h2&gt;
&lt;p&gt;We're considering creating a web interface to browse the core maemo packages,
the development packages and also the extras packages. See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/395"&gt;issue #395&lt;/a&gt; for more details. If you have suggestions, want to see specific features, or want to help out, please do let us know on the issue.&lt;/p&gt;
&lt;p&gt;Sneak peak of an alpha version of the interface:&lt;/p&gt;
&lt;img alt="" src="/images/pkg.png" /&gt;
&lt;/div&gt;
&lt;div class="section" id="more-frequent-updates"&gt;
&lt;h2&gt;More frequent updates?&lt;/h2&gt;
&lt;p&gt;We often get the question if we can provide update posts more frequently. Often,
we delay update posts because we want to &lt;strong&gt;complete just one more package...&lt;/strong&gt; -
and then another, and another... So if you'd like to get more frequent update
posts, please volunteer to write them for us. If you hang out in the IRC
channel, maybe follow the frequent updates and write about them, and we'll be
able to post it here, on our website.&lt;/p&gt;
&lt;p&gt;That said, we're considering doing detailed write-ups of various core components
of Maemo Leste every few weeks or so, so if that's your thing, you might be able
to peek at those too, soon.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you have questions, are interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste-extras/bugtracker"&gt;bugtracker&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900 and Motorola Droid 4 units available to interested
developers&lt;/strong&gt;, so if you are interested in helping out but have trouble acquiring
a device, let us know.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay
up to date, ask questions and/or help out. Another great way to get in touch is
to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="droid4"></category><category term="n900"></category><category term="pinephone"></category><category term="cellular"></category><category term="extras"></category><category term="light sensor"></category><category term="power&#10;management"></category><category term="ofono"></category><category term="openrc"></category><category term="keyboard layout"></category><category term="vibration"></category><category term="cellular data"></category></entry><entry><title>Maemo Leste - Thirteenth Update (April, May, June) 2020</title><link href="https://maemo-leste.github.io/maemo-leste-thirteenth-update-april-may-june-2020.html" rel="alternate"></link><published>2020-06-24T18:00:00+02:00</published><updated>2020-06-24T18:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2020-06-24:/maemo-leste-thirteenth-update-april-may-june-2020.html</id><summary type="html">&lt;p&gt;It's been several weeks since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-twelfth-update-february-and-march-2020.html"&gt;last update&lt;/a&gt;, so let's start
with a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;We have improved power management on the Droid 4, and currently, under ideal
conditions, the power draw is about &lt;tt class="docutils literal"&gt;60mW&lt;/tt&gt; with the modem turned on. That
should last a few days on a decent battery …&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;It's been several weeks since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-twelfth-update-february-and-march-2020.html"&gt;last update&lt;/a&gt;, so let's start
with a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;We have improved power management on the Droid 4, and currently, under ideal
conditions, the power draw is about &lt;tt class="docutils literal"&gt;60mW&lt;/tt&gt; with the modem turned on. That
should last a few days on a decent battery&lt;/li&gt;
&lt;li&gt;Various sensors and other hardware of the Motorola Droid 4 are now usable with
Maemo Leste&lt;/li&gt;
&lt;li&gt;A lot of kernel bugs/regressions have been chased and fixed&lt;/li&gt;
&lt;li&gt;Cellular support is improving; cellular data should now work&lt;/li&gt;
&lt;li&gt;Maemo Leste Extras should contain quite a few more packages now&lt;/li&gt;
&lt;li&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;leste-config-*&lt;/span&gt;&lt;/tt&gt; packages now exist to provide seamless configuration updates
and changes, so there should be less of a need to &amp;quot;reinstall&amp;quot; on every new
image release&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="section" id="software-changes"&gt;
&lt;h2&gt;Software changes&lt;/h2&gt;
&lt;div class="section" id="mce"&gt;
&lt;h3&gt;mce&lt;/h3&gt;
&lt;p&gt;The Mode Control Entity has seen significant changes.&lt;/p&gt;
&lt;p&gt;MCE will now properly blank the screen, allowing the SoC to idle, which
in turn allows for significant power saving (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/338"&gt;see issue #338&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/5"&gt;MCE PR 5&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;With the newer versions, the touchscreen will also be properly disabled when the
device is locked. This will prevent 'accidental' input events being sent to
applications while the device is locked. MCE will also close the file
descriptors of any touchscreen devices and tell X11 to disable the touchscreens
to let the touchscreen driver idle properly. For more details, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/340"&gt;issue #340&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/6"&gt;MCE PR 6&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/7"&gt;MCE PR 7&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Furthermore, we've made a change to the default &lt;tt class="docutils literal"&gt;/etc/mce/mce.ini&lt;/tt&gt; configuration
file to prevent accidental shutdowns on the Droid 4. We've &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/392"&gt;increased the time
one has to press the power key to shutdown the device (issue #392)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;ALS (Ambient Light Sensor) support has been extended, and it now also works on the
&lt;a class="reference internal" href="#motorola-droid-4"&gt;Motorola Droid 4&lt;/a&gt;. See &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/8/"&gt;MCE PR 8&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A module contributed by &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; to support vibration in MCE is also expected to
land in the next few days. See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/132"&gt;issue #132&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/9"&gt;MCE PR 9&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Something else to look forward to is the execution of mode-change shell scripts,
to allow certain programs or scripts to be executed when a device is locked,
unlocked, or enters other mce (sub)modes.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="input-and-focus-fixes"&gt;
&lt;h3&gt;Input and Focus fixes&lt;/h3&gt;
&lt;p&gt;libmatchbox2 and hildon-desktop (the Maemo window manager) have had &lt;a class="reference external" href="https://bugs.maemo.org/show_bug.cgi?id=5987"&gt;long standing
bugs with regards to input focus&lt;/a&gt;, which also made it
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/346"&gt;impossible to send keyboard events to vanilla Qt 5 applications&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;freemangordon&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; have been trying to get to the bottom of the problem.
The result of that effort is that all known problematic input and focus issues
are now fixed. Now xev happily receives events, es2gears responds to keyboard input
events, and Qt 5 applications take input the way they are supposed to.&lt;/p&gt;
&lt;p&gt;Relevant pull requests:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/libmatchbox2/pull/3"&gt;libmatchbox PR 3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/libmatchbox2/pull/4"&gt;libmatchbox PR 4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/pull/4"&gt;hildon-desktop PR 4&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="qt-5-progress-is-being-made"&gt;
&lt;h3&gt;Qt 5: Progress is being made&lt;/h3&gt;
&lt;p&gt;The Maemo Qt 5 port is not finished yet, but has seen various improvements.
Merlijn has been doing work porting the &amp;quot;Hildon Input Method&amp;quot; virtual keyboard
patches to Qt 5. Due to the more clear architecture of Qt 5, our
unwillingness to fork Qt 5 as a whole, and the fact that we're also porting from
old &lt;tt class="docutils literal"&gt;Xlib&lt;/tt&gt; code to &lt;tt class="docutils literal"&gt;xcb&lt;/tt&gt;, the work is taking a little bit more
time. On the upside, all the Maemo Qt 5 bits will hopefully available via a
&lt;a class="reference external" href="https://doc.qt.io/qt-5/qpa.html"&gt;Qt 5 loadable platform module&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Apart from the virtual keyboard, there are at least two important pieces
missing:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;QMenu support, to allow hildon-style menu items to show when the application
title is touched/pressed&lt;/li&gt;
&lt;li&gt;Hildon-style stacked windows&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We've also ported over a sample application, &lt;a class="reference external" href="https://github.com/maemo-leste-extras/countdowntimer"&gt;countdowntimer&lt;/a&gt;:&lt;/p&gt;
&lt;img alt="" src="/images/countdowntimer.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;To make it usable, we had to have the application respect desktop sizes other
than the &lt;cite&gt;800x480&lt;/cite&gt; that the Nokia N900 screen supports, to prevent it from
looking like this:&lt;/p&gt;
&lt;img alt="" src="/images/leste-qt5-countdowntimer-0.1.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Countdowntimer itself also makes use of the specialised QMenu and Hildon
stackable windows, but is already quite usable even without those modifications.&lt;/p&gt;
&lt;p&gt;Development can be done directly on the VM, using X11 forwarding:&lt;/p&gt;
&lt;img alt="" src="/images/leste-qt5-designer-x11-forward.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;You can also use Qt Designer with the native Maemo theme, but, well...:&lt;/p&gt;
&lt;img alt="" src="/images/leste-designer-lol.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;If you plan to use Qt designer on your device, you might want to look at &lt;a class="reference internal" href="#xephyr-nested-xorg-server-on-maemo"&gt;Xephyr
(Nested Xorg server) on Maemo&lt;/a&gt; instead.&lt;/p&gt;
&lt;p&gt;In the next month, we hope to mostly finish the Qt 5 port. Keep in mind that many
Qt 5 applications are already usable on Maemo Leste as is. This is also documented in
&lt;a class="reference internal" href="#community-showcase"&gt;Community showcase&lt;/a&gt;!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="xephyr-nested-xorg-server-on-maemo"&gt;
&lt;h3&gt;Xephyr (Nested Xorg server) on Maemo&lt;/h3&gt;
&lt;p&gt;Xephyr is a nested X server, which can run in a window on Maemo Leste, allowing you
to run any ordinary desktop application on Maemo Leste, in a window.&lt;/p&gt;
&lt;p&gt;It's especially useful for devices with physical keyboards.&lt;/p&gt;
&lt;p&gt;Installing it is as simple as:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
sudo apt install xephyr
&lt;/pre&gt;
&lt;p&gt;And then start it as follows:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
Xephyr :1 &amp;amp;
&lt;/pre&gt;
&lt;p&gt;And launch applications inside that server like so:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
DISPLAY=:1 dwm &amp;amp;
DISPLAY=:1 xterm
&lt;/pre&gt;
&lt;img alt="" src="/images/xephyr-droid4.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="cellular-data-and-ofono-support"&gt;
&lt;h3&gt;Cellular data and ofono support&lt;/h3&gt;
&lt;p&gt;The &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;beowulf-devel&lt;/span&gt;&lt;/tt&gt; repository of Maemo Leste now has the
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;libicd-network-ofono&lt;/span&gt;&lt;/tt&gt; plugin for &lt;tt class="docutils literal"&gt;icd2&lt;/tt&gt; to allow for making GPRS/UMTS/LTE data
connections:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-libicd-network-ofono.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/droid4-libicd-network-ofono-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;This should work on all of the supported devices, as long as their ofono version
(and SIM) supports data connections.&lt;/p&gt;
&lt;p&gt;Additionally, there were some problems on Beowulf where user &lt;tt class="docutils literal"&gt;user&lt;/tt&gt; (the default
user in Maemo) had no access to the ofono dbus interface, but this has been fixed in
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/372"&gt;issue #372&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Finally, once this work has seen a bit more testing, we will create a meta
package to automatically install all the cellular packages, and all devices
will automatically get the cellular support when they &lt;tt class="docutils literal"&gt;apt update &amp;amp;&amp;amp; apt
upgrade&lt;/tt&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="wireless"&gt;
&lt;h3&gt;Wireless&lt;/h3&gt;
&lt;p&gt;Wireless is mostly just working, although the UI still has some rough edges. In
particular, sometimes connecting to a network fails if entering the password
takes too long.&lt;/p&gt;
&lt;p&gt;One other bug was fixed: a problem where the networks would appear in the
network dialog, but would not be selectable until the next scan returned, which
was really annoying. See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/253"&gt;issue #253&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/connui-internet/pull/1"&gt;connui-internet PR&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="themes"&gt;
&lt;h3&gt;Themes&lt;/h3&gt;
&lt;p&gt;The retro &lt;a class="reference external" href="https://github.com/maemo-leste-extras/hildon-theme-okuda"&gt;Okuda theme&lt;/a&gt; is now available:&lt;/p&gt;
&lt;img alt="" src="/images/leste-okuda-desktop.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-okuda-vkb.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-okuda-xterm.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/miku-theme"&gt;Miku theme&lt;/a&gt;:&lt;/p&gt;
&lt;img alt="" src="/images/leste-miku-settings.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-miku-desktop.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras/hildon-theme-matrix"&gt;Matrix theme&lt;/a&gt;:&lt;/p&gt;
&lt;img alt="" src="/images/leste-matrix-desktop.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-matrix-lock.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="openrc-integration-in-debian-fixes"&gt;
&lt;h3&gt;OpenRC integration in Debian fixes&lt;/h3&gt;
&lt;p&gt;We've successfully submitted a patch to SysVinit upstream, which brings in better
support for OpenRC and its internals to both Debian and Devuan. It has not yet
propagated to Devuan, but it is expected to happen, of course. In Maemo Leste we
already provide the patched version and maintain it ourselves until it is
available in Devuan. The patch itself brings in proper OpenRC support in the
insserv tool, which means that LSB headers aren't necessary for OpenRC
initscripts and they now get installed in the default runlevel without the need
for manual interference.&lt;/p&gt;
&lt;p&gt;The patch was merged in &lt;tt class="docutils literal"&gt;6a65f4412a2d24d78741f49e64e1128993341e65&lt;/tt&gt;, and can be
seen here:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="http://git.savannah.nongnu.org/cgit/sysvinit/insserv.git/commit/?h=1.22.0&amp;amp;id=6a65f4412a2d24d78741f49e64e1128993341e65"&gt;http://git.savannah.nongnu.org/cgit/sysvinit/insserv.git/commit/?h=1.22.0&amp;amp;id=6a65f4412a2d24d78741f49e64e1128993341e65&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you found that some init scripts ended up in &lt;tt class="docutils literal"&gt;/etc/runlevels&lt;/tt&gt; instead of
&lt;tt class="docutils literal"&gt;/etc/runlevels/default&lt;/tt&gt;, try reinstalling the affected packages; they should
install fine now.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="more-languages-added-to-virtual-keyboard-layouts"&gt;
&lt;h3&gt;More languages added to virtual keyboard layouts&lt;/h3&gt;
&lt;p&gt;Many more virtual keyboard layouts have been added. If you were ever in need of
a Belarusian or Bulgarian keyboard layout, now is your time to &lt;tt class="docutils literal"&gt;apt update &amp;amp;&amp;amp;
apt upgrade&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;See &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-input-method-plugins/pull/2"&gt;hildon-input-method-plugins PR 2&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="steps-towards-calls-and-texts"&gt;
&lt;h3&gt;Steps towards calls and texts&lt;/h3&gt;
&lt;p&gt;With &lt;a class="reference internal" href="#cellular-data-and-ofono-support"&gt;Cellular data and ofono support&lt;/a&gt; improving and other projects getting
close to finished, it will soon be time to turn our attention to usable calls and
texts on Maemo. We will use many of the same components that Maemo Fremantle
uses, just in their updated forms, like the Mer project does.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/390"&gt;Issue #390&lt;/a&gt; documents
some of the steps we will be taking. It will look something like:&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;Perform further analysis on how this works in Fremantle&lt;/li&gt;
&lt;li&gt;Import all the FOSS components (there are quite a number of them)&lt;/li&gt;
&lt;li&gt;Figure out audio (routing and) policies&lt;/li&gt;
&lt;li&gt;Reimplement the non-FOSS ones: call and sms UI are the big ones&lt;/li&gt;
&lt;li&gt;Use &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;osso-abook&lt;/span&gt;&lt;/tt&gt; in the alternative call and sms UIs&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The addressbook interface is also underway and is being RE'd from the Fremantle
binaries: &lt;a class="reference external" href="https://github.com/maemo-leste/osso-abook/"&gt;https://github.com/maemo-leste/osso-abook/&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="maemo-input-sounds"&gt;
&lt;h3&gt;maemo-input-sounds&lt;/h3&gt;
&lt;p&gt;To test the MCE vibration driver, work has been started on &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-input-sounds/tree/wip"&gt;maemo-input-sounds&lt;/a&gt;, which uses the
&lt;cite&gt;X11 Record&lt;/cite&gt; extension to monitor for touchscreen and key presses, and in
reaction to those, either vibrate the device, play a sound, or even both.&lt;/p&gt;
&lt;p&gt;The status can be tracked in &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/389"&gt;issue #389&lt;/a&gt;. A fully functioning
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;maemo-input-sounds&lt;/span&gt;&lt;/tt&gt; probably depends on getting the audio set up completely
(see &lt;a class="reference internal" href="#next-up-audio-routing-pulseaudio-contacts-calls-sms-qt-5"&gt;Next up: Audio routing/Pulseaudio, Contacts, Calls/SMS, Qt 5&lt;/a&gt;).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="calendar-backend-and-frontend"&gt;
&lt;h3&gt;Calendar backend and frontend&lt;/h3&gt;
&lt;p&gt;Some more work is being done by &lt;tt class="docutils literal"&gt;buZz&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;sicelo&lt;/tt&gt; to get the calendar
software up and running.  The backend, &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;calendar-backend&lt;/span&gt;&lt;/tt&gt; is already building
fine, but the frontend (&lt;tt class="docutils literal"&gt;qalendar&lt;/tt&gt;) is still blocking on the Qt 5 port:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/buzztiaan/calendar-backend"&gt;https://github.com/buzztiaan/calendar-backend&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/buzztiaan/libgq"&gt;https://github.com/buzztiaan/libgq&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/buzztiaan/qalendar"&gt;https://github.com/buzztiaan/qalendar&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We expect this to fold in rather quickly once &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;osso-abook&lt;/span&gt;&lt;/tt&gt; is mostly ready.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="hildon-home-fixes"&gt;
&lt;h3&gt;hildon-home fixes&lt;/h3&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;hildon-home&lt;/span&gt;&lt;/tt&gt; would frequently try to monitor non existing directories for
changes, but because the directories did not exist, kept retrying the monitor
calls. This resulted in significantly higher power usage. This has been fixed
now, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/264"&gt;issue #264&lt;/a&gt;
for more details.&lt;/p&gt;
&lt;p&gt;Additionally, since our move to Beowulf, two plugins for &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;hildon-home&lt;/span&gt;&lt;/tt&gt; would
no longer load (due to &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;hildon-home&lt;/span&gt;&lt;/tt&gt; loading them from a non-existing path),
but this too has now been fixed:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-home/commit/13a8a03196a33e51396ceb61ce307d9655a4ea41"&gt;https://github.com/maemo-leste/hildon-home/commit/13a8a03196a33e51396ceb61ce307d9655a4ea41&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-home/commit/a505d58a6ae87cb032ec20a606d54d69f3582fba"&gt;https://github.com/maemo-leste/hildon-home/commit/a505d58a6ae87cb032ec20a606d54d69f3582fba&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="device-support"&gt;
&lt;h2&gt;Device support&lt;/h2&gt;
&lt;div class="section" id="motorola-droid-4"&gt;
&lt;h3&gt;Motorola Droid 4&lt;/h3&gt;
&lt;p&gt;The Motorola Droid 4 has seen a big set of improvements:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;The &lt;a class="reference internal" href="#ambient-light-sensor"&gt;Ambient Light Sensor&lt;/a&gt; is now used;&lt;/li&gt;
&lt;li&gt;The &lt;a class="reference internal" href="#vibration-motor"&gt;Vibration Motor&lt;/a&gt; is now used;&lt;/li&gt;
&lt;li&gt;A driver for the &lt;a class="reference internal" href="#accelerometer"&gt;Accelerometer&lt;/a&gt; is available;&lt;/li&gt;
&lt;li&gt;Advanced &lt;a class="reference internal" href="#keyboard-layout"&gt;keyboard layout&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Basic &lt;a class="reference internal" href="#modem-integration"&gt;modem integration&lt;/a&gt; in &lt;cite&gt;beowulf-devel&lt;/cite&gt; branches;&lt;/li&gt;
&lt;li&gt;Much improved battery life through better &lt;a class="reference internal" href="#power-management"&gt;Power Management&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;Latest Linux kernel&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="section" id="ambient-light-sensor"&gt;
&lt;h4&gt;Ambient Light Sensor&lt;/h4&gt;
&lt;p&gt;Just like the Nokia N900, the Droid has an ambient light sensor, used to measure
exactly that: ambient light levels. This can be used to adjust the screen
brightness to the ambient light levels, based on the brightness profile
selected. For observant users, this already worked on the Nokia N900, but now
this also works on the Droid 4.&lt;/p&gt;
&lt;p&gt;This should make your device more pleasant to use in darker rooms, but also
outside - in direct sunlight.&lt;/p&gt;
&lt;p&gt;Additionally, if the light level is low, the device is unlocked, and the
keyboard is exposed, the keyboard backlight LEDs will be turned on, to allow for
optimal typing in the dark. :-)&lt;/p&gt;
&lt;p&gt;See &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/8/"&gt;MCE PR 8&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="vibration-motor"&gt;
&lt;h4&gt;Vibration Motor&lt;/h4&gt;
&lt;p&gt;Once &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/9"&gt;MCE PR 9&lt;/a&gt; is merged, the vibration motor on the Motorola Droid 4 (and actually also the Nokia
N900 and other devices that support the Linux &lt;a class="reference external" href="https://www.kernel.org/doc/html/latest/input/ff.html"&gt;FF&lt;/a&gt; interface) will work.
This allows for vibration of the device to provide touchscreen haptic feedback to the user,
but also when (in the near future) an SMS is received, or
the device receives a phone call.&lt;/p&gt;
&lt;p&gt;See also these notes on Maemo.org &lt;a class="reference external" href="https://wiki.maemo.org/Phone_control#Start_Vibrating_Incoming_Call"&gt;on how to start and stop vibrations&lt;/a&gt;. Since we
are compatible at least on the DBUS level, the original Maemo instructions just
apply. It is also possible to add more patterns by editing &lt;tt class="docutils literal"&gt;/etc/mce/mce.ini&lt;/tt&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="accelerometer"&gt;
&lt;h4&gt;Accelerometer&lt;/h4&gt;
&lt;p&gt;The accelerometer driver is now enabled, meaning that things like the
&lt;a class="reference external" href="https://github.com/buzztiaan/droidsaber"&gt;droidsaber&lt;/a&gt; are now possible:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/DeCtO8WwaTc"
 ;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;p&gt;This will also be useful for automatically changing the screen orientation, based
on the device orientation. The powervr driver might need a bit more work before
that will work smoothly and well though.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="power-management"&gt;
&lt;h4&gt;Power Management&lt;/h4&gt;
&lt;p&gt;The power management on the Droid 4 should be in much better shape now. Under
ideal circumstances, with the modem online, the device should idle at about
&lt;tt class="docutils literal"&gt;60mW&lt;/tt&gt;. This is made possible by the incredible Linux kernel support, &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-pm"&gt;droid4-pm&lt;/a&gt;, our various &lt;a class="reference internal" href="#mce"&gt;mce&lt;/a&gt; improvements,
and in general OMAP being well designed when it comes to power management. This
should last most batteries for several days. Things might improve a little more
if OMAP &lt;tt class="docutils literal"&gt;OFF&lt;/tt&gt; mode ever starts to work on OMAP 4.&lt;/p&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;Merlijn&lt;/tt&gt; recently acquired a few lab power supplies, and (&lt;a class="reference external" href="https://sourceforge.net/p/sigrok/mailman/message/37014835/"&gt;after actually making it
work with sigrok, working around insanely stupid firmware bugs&lt;/a&gt;) was able to
generate the following graph of power usage from a clean power-up, showing the
~3 minutes it takes to fully boot and enter the promised &lt;tt class="docutils literal"&gt;60mW&lt;/tt&gt; idle power
usage:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-boot.png" style="width: 700px; height: 350px;" /&gt;
&lt;p&gt;Here's what using the vibration motor does to the power draw:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-rumble.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;And the same for receiving an SMS (exposing a problem where the modem doesn't
properly idle after sms receive - it stays around &lt;tt class="docutils literal"&gt;180mW&lt;/tt&gt; as opposed to the
&lt;tt class="docutils literal"&gt;60mW&lt;/tt&gt; - this is still being investigated, but it looks like the USB doesn't
idle afterwards, requiring to be manually kicked into idle mode):&lt;/p&gt;
&lt;img alt="" src="/images/droid4-modem-power-recv-sms.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="ntpd-and-power-management"&gt;
&lt;h4&gt;NTPD and power management&lt;/h4&gt;
&lt;p&gt;The &lt;tt class="docutils literal"&gt;ntp&lt;/tt&gt; daemon currently causes a lot of wake ups, and negatively impacts
battery life. The current stop-gap is to stop it manually after booting, by
issuing the following as root:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
/etc/init.d/ntp stop
&lt;/pre&gt;
&lt;/div&gt;
&lt;div class="section" id="cellular-and-power-management"&gt;
&lt;h4&gt;Cellular and power management&lt;/h4&gt;
&lt;p&gt;While the modem itself should idle pretty well, the modem reports on the signal
strength very frequently, waking up the device even when the signal strength
should not be shown. The signal strength can be temporarily disabled like so:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
printf 'U1234AT+SCRN=0\r' &amp;gt; /dev/gsmtty1
&lt;/pre&gt;
&lt;/div&gt;
&lt;div class="section" id="graphing-power-logs-from-the-device"&gt;
&lt;h4&gt;Graphing power logs from the device&lt;/h4&gt;
&lt;p&gt;The GNOME Power Manager can plot upower data, and it runs on Leste:&lt;/p&gt;
&lt;img alt="" src="/images/leste-droid4-gnome-power-manager.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;But the upower data is located in &lt;tt class="docutils literal"&gt;/var/lib/upower&lt;/tt&gt; and not at all hard to plot
yourself, which might actually be more insightful (although this graph is very
basic):&lt;/p&gt;
&lt;img alt="" src="/images/capacity_over_time_from_upower.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;We're still figuring out how to properly plot all this data, but more
information (including the source to generate the above graph) can be found in
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/396"&gt;issue #396&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Maybe we can take &lt;a class="reference external" href="http://maemo.org/downloads/search/application.html?org_openpsa_products_search%5B1%5D%5Bproperty%5D=title&amp;amp;org_openpsa_products_search%5B1%5D%5Bconstraint%5D=LIKE&amp;amp;org_openpsa_products_search%5B1%5D%5Bvalue%5D=battery&amp;amp;org_openpsa_products_search%5B2%5D%5Bproperty%5D=os&amp;amp;org_openpsa_products_search%5B2%5D%5Bconstraint%5D=LIKE&amp;amp;org_openpsa_products_search%5B2%5D%5Bvalue%5D=Maemo5&amp;amp;fetch=Search"&gt;one of these maemo.org applications&lt;/a&gt; and port them.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="battery-calibration"&gt;
&lt;h4&gt;Battery calibration&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;uvos&lt;/tt&gt; has written an init script and tool to store the battery capacity when
known, and restore it, using &lt;tt class="docutils literal"&gt;spinal84&lt;/tt&gt;'s experimental kernel patches, see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/374"&gt;issue #374&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;It will be added to the Droid 4 meta package imminently, and then eventually
everyone should have a calibrated battery, hopefully.&lt;/p&gt;
&lt;p&gt;Also see &lt;a class="reference external" href="https://github.com/maemo-leste/upower/pull/4"&gt;upower PR 4&lt;/a&gt; for the
UPower fix that was required for this to work properly.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="keyboard-layout"&gt;
&lt;h4&gt;Keyboard layout&lt;/h4&gt;
&lt;p&gt;For a long time, it was not possible to &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/347"&gt;summon the special keys virtual keyboard
on the Droid 4&lt;/a&gt;, which
was particularly annoying since some &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/122"&gt;important keys were not available&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;By digging through the N900 keyboard files and learning a bunch about xkb, both
of these issues have now been resolved by &lt;tt class="docutils literal"&gt;Merlijn&lt;/tt&gt;. &lt;tt class="docutils literal"&gt;buZz&lt;/tt&gt; provided a nice
&lt;a class="reference external" href="https://github.com/maemo-leste/xkb-data/commit/99343d77464299cdf1d56e461018bd7f974cee42"&gt;geometry file&lt;/a&gt;, which allows us to visualise the keys on various keyboard levels:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-keyboard.png" style="width: 576px; height: 224px;" /&gt;
&lt;p&gt;(Yes, the shift button on the Droid 4 is mapped to control, and the caps lock
key is mapped to shift)&lt;/p&gt;
&lt;p&gt;Additional extra keys are also available when using the &lt;tt class="docutils literal"&gt;ISO_Level3_Shift&lt;/tt&gt;
key, &lt;a class="reference external" href="https://github.com/maemo-leste/xkb-data/commit/ccebc5ea6cc9c14c7822b53317640c8f2f6372b2#diff-5b7bd0a2cb0498ff38e4e466546d5fdcR36"&gt;see the actual xkb file for more details&lt;/a&gt; and this image for a quick reference:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-keyboard-2.png" style="width: 576px; height: 224px;" /&gt;
&lt;p&gt;Compare that to the N900 layout:&lt;/p&gt;
&lt;img alt="" src="/images/n900-keyboard.png" style="width: 576px; height: 224px;" /&gt;
&lt;p&gt;Bringing up the special keys virtual keyboard is done by pressing the &amp;quot;OK&amp;quot;
(&lt;tt class="docutils literal"&gt;ISO_Level3_Shift&lt;/tt&gt;) key and the Control (&lt;tt class="docutils literal"&gt;Shift&lt;/tt&gt;) key.&lt;/p&gt;
&lt;p&gt;And finally, the virtual keyboard didn't look quite good on the Droid 4, since
it has a larger resolution, but as of &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-input-method-plugins/pull/3"&gt;hildon-input-method-plugins PR 3&lt;/a&gt;, the
keyboard will render properly regardless of the screen dimensions:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-special-vkb.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="modem-integration"&gt;
&lt;h4&gt;Modem integration&lt;/h4&gt;
&lt;p&gt;&lt;tt class="docutils literal"&gt;tmlind&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;Pavel Machek&lt;/tt&gt; have been doing a lot of work on improving ofono
on the Droid 4. The result of most of that work is currently packaged in the
&lt;tt class="docutils literal"&gt;droid4&lt;/tt&gt; component, so any droid 4 will automatically get the latest/best
ofono version. Additionally, the technology is now also reported properly:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-tech.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/droid4-tech-2g.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;More work remains, including upstreaming ofono and dealing with some power
management regressions, but it's starting to look quite good indeed.&lt;/p&gt;
&lt;p&gt;Current work can be found here:
&lt;a class="reference external" href="https://github.com/maemo-leste/ofono-d4/tree/motmdm-serdev-ngsm"&gt;https://github.com/maemo-leste/ofono-d4/tree/motmdm-serdev-ngsm&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="increasing-font-size-in-osso-xterm"&gt;
&lt;h4&gt;increasing font size in osso-xterm&lt;/h4&gt;
&lt;p&gt;On the Nokia N900, the font size in osso-xterm can be changed using the volume
buttons, but this does not work yet on the Droid 4. The reason is that
osso-xterm expects specific (hardcoded) keys to be used to change the font, and
the Droid 4 has different keys mapped to its volume buttons, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/385"&gt;issue #385&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="latest-linux-kernel"&gt;
&lt;h4&gt;Latest Linux kernel&lt;/h4&gt;
&lt;p&gt;A month or so ago we switched to Linux 5.7:
&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux/tree/droid4-pending-v5.7"&gt;https://github.com/maemo-leste/droid4-linux/tree/droid4-pending-v5.7&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;After that, there were various regressions to figure out, the most painful ones
being random resets, which took quite a while to pin down. &lt;tt class="docutils literal"&gt;tmlind&lt;/tt&gt; has been
incredibly helpful in getting these problems resolved. Onto the next Linux
version and set of regressions - and bugfixes, and features...&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;div class="section" id="powermanagement-update"&gt;
&lt;h4&gt;Powermanagement update&lt;/h4&gt;
&lt;p&gt;A while ago we tweeted out a photo of a Nokia N900 using very little power,
while in &lt;tt class="docutils literal"&gt;OMAP OFF&lt;/tt&gt; mode. We haven't yet brought this to our latest images,
but it's still planned (it might be relatively simple, but also might be a lot
of work). In addition, we will likely provide an &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;n900-pm&lt;/span&gt;&lt;/tt&gt; script, similar to
the &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;droid4-pm&lt;/span&gt;&lt;/tt&gt; script.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone"&gt;
&lt;h3&gt;Pinephone&lt;/h3&gt;
&lt;p&gt;Thanks to the packaging work from people in postmarketOS, we now also support
the modem in the Pinephone. While we've mostly been working with cellular things
on the Droid4, lots of that work can simply be reused on the Pinephone, and we
plan to do so in the near future. A package called &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;pinephone-modem-config&lt;/span&gt;&lt;/tt&gt;
can be installed, and along with updating the kernel (latest available version
is 5.6), it will bring in modem support. This is already automatically enabled
in the latest images. A note to keep in mind: While the modem is off, combined
with the latest kernels, the system outputs KEY_WAKEUP events which cause some
trouble with the virtual keyboard. The current solution to this is to just have
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;pinephone-modem-config&lt;/span&gt;&lt;/tt&gt; installed and after a reboot, things should be ok.
We will see if it's possible to patch this in some proper way in the future.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="weekly-builds"&gt;
&lt;h2&gt;Weekly builds&lt;/h2&gt;
&lt;p&gt;From July, we will also implement and enable weekly image builds on our CI
infrastructure. This means we won't be building images on demand anymore.
Instead they shall be built each week, containing all the latest packages and
goodies. Obviously, this will require more storage space, so we will be
removing device images older than five weeks.&lt;/p&gt;
&lt;p&gt;Hopefully this will also help us polish up our build frameworks and alert us
about possible bugs that arise during development. It is also a very important
step towards reproducible builds - which is one of our milestones we wish to
fulfill.&lt;/p&gt;
&lt;p&gt;However, for this occasion, we built new images and they can be downloaded as
usual. This time we've also built 64bit images for the Raspberry Pi 3 and 4.&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;64bit VM: &lt;a class="reference external" href="https://maedevu.maemo.org/images/virtual-machines/20200622/"&gt;https://maedevu.maemo.org/images/virtual-machines/20200622/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;N900: &lt;a class="reference external" href="https://maedevu.maemo.org/images/n900/20200623/"&gt;https://maedevu.maemo.org/images/n900/20200623/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Droid4: &lt;a class="reference external" href="https://maedevu.maemo.org/images/droid4/20200624/"&gt;https://maedevu.maemo.org/images/droid4/20200624/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Pinephone: &lt;a class="reference external" href="https://maedevu.maemo.org/images/pinephone/20200624/"&gt;https://maedevu.maemo.org/images/pinephone/20200624/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Pinetab: &lt;a class="reference external" href="https://maedevu.maemo.org/images/pinetab/20200624/"&gt;https://maedevu.maemo.org/images/pinetab/20200624/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Pi3: &lt;a class="reference external" href="https://maedevu.maemo.org/images/raspi3-64bit/20200623/"&gt;https://maedevu.maemo.org/images/raspi3-64bit/20200623/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Pi4: &lt;a class="reference external" href="https://maedevu.maemo.org/images/raspi4-64bit/20200623/"&gt;https://maedevu.maemo.org/images/raspi4-64bit/20200623/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="community-showcase"&gt;
&lt;h2&gt;Community showcase&lt;/h2&gt;
&lt;div class="section" id="ps-1-emulator"&gt;
&lt;h3&gt;PS 1 emulator&lt;/h3&gt;
&lt;p&gt;PCSX-ReARMed runs quite nicely on the Droid 4:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/BmIAQby4ccM"
 ;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;p&gt;Unfortunately, the community hasn't yet packaged the program for Maemo Leste
Extras, but we're confident someone will, at some point.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="photo-light-meter"&gt;
&lt;h3&gt;Photo Light meter&lt;/h3&gt;
&lt;p&gt;Written in Free Pascal, photolightmeter can be used calculate aperture and
shutter values.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="telegram"&gt;
&lt;h3&gt;Telegram&lt;/h3&gt;
&lt;p&gt;If you're a fan of Telegram, the desktop client just works on Maemo Leste:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://twitter.com/rfc1087/status/1271796014903635969"&gt;https://twitter.com/rfc1087/status/1271796014903635969&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="proxmark3"&gt;
&lt;h3&gt;Proxmark3&lt;/h3&gt;
&lt;p&gt;If you like toying with RFID cards, then you can (for example) use the bluetooth
module on the Droid 4 to connect a capable reader and run proxmark3 on the Droid
itself:&lt;/p&gt;
&lt;img alt="" src="/images/proxmark3-1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/proxmark3-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;You can find specific installation notes here: &lt;a class="reference external" href="http://web.archive.org/web/20200623220049/https://paste.debian.net/plainh/34a66276"&gt;http://web.archive.org/web/20200623220049/https://paste.debian.net/plainh/34a66276&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="quicknote"&gt;
&lt;h3&gt;Quicknote&lt;/h3&gt;
&lt;p&gt;A simple notes application written in Python is also available:
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/quicknote"&gt;https://github.com/maemo-leste-extras/quicknote&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="mihphoto"&gt;
&lt;h3&gt;mihphoto&lt;/h3&gt;
&lt;p&gt;A Qt 5 photo viewer is available, and optionally supports multitouch when
supplied as a startup argument:
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/mihphoto"&gt;https://github.com/maemo-leste-extras/mihphoto&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="personal-ip-address"&gt;
&lt;h3&gt;personal-ip-address&lt;/h3&gt;
&lt;p&gt;The good old personal-ip-address has returned, this time to Leste:
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/personal-ip-address"&gt;https://github.com/maemo-leste-extras/personal-ip-address&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="maemo-leste-extras"&gt;
&lt;h2&gt;Maemo Leste Extras&lt;/h2&gt;
&lt;p&gt;More community packages are being maintained in the &lt;tt class="docutils literal"&gt;extras&lt;/tt&gt; repository and
we're very glad and excited about it. If you're interested in maintaing your own
community package for Maemo Leste, there are instructions for you to do so on
the &lt;a class="reference external" href="https://github.com/maemo-leste-extras/bugtracker"&gt;bugtracker&lt;/a&gt; .&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="next-up-audio-routing-pulseaudio-contacts-calls-sms-qt-5"&gt;
&lt;h2&gt;Next up: Audio routing/Pulseaudio, Contacts, Calls/SMS, Qt 5&lt;/h2&gt;
&lt;p&gt;So what can you expect from future updates?&lt;/p&gt;
&lt;p&gt;The big things on our radar are still:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;Audio: Currently most devices do not even ship with &lt;tt class="docutils literal"&gt;pulseaudio&lt;/tt&gt;, but we'll probably want to start using it, and create ALSA UCM files for our soundcards, provide proper pulseaudio sink names for call routing, and so on. This is also a prerequisite for the &lt;a class="reference external" href="https://github.com/maemo-leste/maemo-statusmenu-volume"&gt;volume applet&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Contacts (&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;osso-abook&lt;/span&gt;&lt;/tt&gt;), this will provide all of the Hildon contacts APIs
with the evolution database as a abackend, definitely required for proper SMS and
Call UI&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Qt 5 updates: hopefully we will soon have the virtual keyboard integration
ready, with the hildon menus and stacked windows following right after. That
should be enough to make most applications work, and from there on we'll
probably port things on an as-needed basis: like APIs for home and status
widgets&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Nokia's &lt;tt class="docutils literal"&gt;rtcom&lt;/tt&gt; packages and telepathy. &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/390"&gt;https://github.com/maemo-leste/bugtracker/issues/390&lt;/a&gt;
Some of this is covered in &lt;a class="reference internal" href="#steps-towards-calls-and-texts"&gt;Steps towards calls and texts&lt;/a&gt;, but to reiterate:
the plan is to use &lt;cite&gt;telepathy-ring&lt;/cite&gt; as an interface to &lt;cite&gt;ofono&lt;/cite&gt;, and use
&lt;cite&gt;rtcom-eventlogger&lt;/cite&gt; and other libraries to read from and log to the same
database format as used on Fremantle.
This approach is particularly exciting because it allows loading many other
telepathy plugins. There also exists a &lt;a class="reference external" href="https://github.com/dylex/slack-libpurple/commits/master"&gt;telepathy-haze&lt;/a&gt; plugin to load
(any) Pidgin (&lt;tt class="docutils literal"&gt;libpurple&lt;/tt&gt;) plugin, allowing for potentially loading (for
example) the &lt;a class="reference external" href="https://github.com/dylex/slack-libpurple"&gt;slack-libpurple&lt;/a&gt;
slack plugin into telepathy, and being able to directly
interface with Slack using the native hildon UI, potentially even with
contacts, too. And of course, there are also SIP plugins for telepathy,
allowing for VOIP calls from the same (native) UI&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Speaking of UIs, once the backend (rtcom) is mostly there, the last thing
we'll have to do is to bring up the call and text UIs. The Fremantle SMS UI
relied on an html rendering engine, &lt;a class="reference external" href="https://wiki.maemo.org/Conversation_Mods"&gt;allowing for cool customisations&lt;/a&gt; like these:&lt;/p&gt;
&lt;img alt="" src="/images/fun-conversations-mod.png" style="width: 432px; height: 256px;" /&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="web-interface-for-packages"&gt;
&lt;h2&gt;Web interface for packages&lt;/h2&gt;
&lt;p&gt;We're considering creating a web interface to browse the core maemo packages,
the development packages and also the extras packages. See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/395"&gt;issue #395&lt;/a&gt; for more details. If you have suggestions, want to see specific features, or want to help out, please do let us know on the issue.&lt;/p&gt;
&lt;p&gt;Sneak peak of an alpha version of the interface:&lt;/p&gt;
&lt;img alt="" src="/images/pkg.png" /&gt;
&lt;/div&gt;
&lt;div class="section" id="more-frequent-updates"&gt;
&lt;h2&gt;More frequent updates?&lt;/h2&gt;
&lt;p&gt;We often get the question if we can provide update posts more frequently. Often,
we delay update posts because we want to &lt;strong&gt;complete just one more package...&lt;/strong&gt; -
and then another, and another... So if you'd like to get more frequent update
posts, please volunteer to write them for us. If you hang out in the IRC
channel, maybe follow the frequent updates and write about them, and we'll be
able to post it here, on our website.&lt;/p&gt;
&lt;p&gt;That said, we're considering doing detailed write-ups of various core components
of Maemo Leste every few weeks or so, so if that's your thing, you might be able
to peek at those too, soon.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you have questions, are interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste-extras/bugtracker"&gt;bugtracker&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900 and Motorola Droid 4 units available to interested
developers&lt;/strong&gt;, so if you are interested in helping out but have trouble acquiring
a device, let us know.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay
up to date, ask questions and/or help out. Another great way to get in touch is
to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="droid4"></category><category term="n900"></category><category term="pinephone"></category><category term="cellular"></category><category term="extras"></category><category term="light sensor"></category><category term="power&#10;management"></category><category term="ofono"></category><category term="openrc"></category><category term="keyboard layout"></category><category term="vibration"></category><category term="cellular data"></category></entry><entry><title>Maemo Leste - Twelfth Update (February and March) 2020</title><link href="https://maemo-leste.github.io/maemo-leste-twelfth-update-february-and-march-2020.html" rel="alternate"></link><published>2020-03-25T19:00:00+01:00</published><updated>2020-03-25T19:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2020-03-25:/maemo-leste-twelfth-update-february-and-march-2020.html</id><summary type="html">&lt;p&gt;It's been several weeks since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-eleventh-update-january-2020.html"&gt;pre-FOSDEM 2020 update&lt;/a&gt;, and let's start with a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;We've been around for two years now!&lt;/li&gt;
&lt;li&gt;We switched from Devuan &lt;strong&gt;ascii&lt;/strong&gt; (Debian stretch) to Devuan &lt;strong&gt;beowulf&lt;/strong&gt; (Debian buster)&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#motorola-droid-4"&gt;Motorola Droid 4&lt;/a&gt; images are available, with &lt;strong&gt;3D acceleration and decent to
good power management …&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;It's been several weeks since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-eleventh-update-january-2020.html"&gt;pre-FOSDEM 2020 update&lt;/a&gt;, and let's start with a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;We've been around for two years now!&lt;/li&gt;
&lt;li&gt;We switched from Devuan &lt;strong&gt;ascii&lt;/strong&gt; (Debian stretch) to Devuan &lt;strong&gt;beowulf&lt;/strong&gt; (Debian buster)&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#motorola-droid-4"&gt;Motorola Droid 4&lt;/a&gt; images are available, with &lt;strong&gt;3D acceleration and decent to
good power management&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#pinephone-pinetab-images"&gt;Pinephone/Pinetab images&lt;/a&gt; are now available.&lt;/li&gt;
&lt;li&gt;We gave a &lt;strong&gt;main track talk at FOSDEM&lt;/strong&gt;:
&lt;a class="reference external" href="https://fosdem.org/2020/schedule/event/smartphones/"&gt;https://fosdem.org/2020/schedule/event/smartphones/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;N900 hardware support improvements such as TV-out, beginnings of camera
support&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Localisation support and theming&lt;/strong&gt; is now available from the control panel, with
many languages already supported.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;And if you're in a rush&lt;/strong&gt;, at least read the &lt;a class="reference internal" href="#summarising"&gt;summarising&lt;/a&gt; section.&lt;/p&gt;
&lt;div class="section" id="fosdem-2020"&gt;
&lt;h2&gt;FOSDEM 2020&lt;/h2&gt;
&lt;p&gt;We gave a main-track talk at FOSDEM 2020, you can read the summary on the FOSDEM
website, or through the Maemo Leste FOSDEM application:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-sojourner-fosdem.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;&lt;a class="reference external" href="https://fosdem.org/2020/schedule/event/smartphones/"&gt;The video is available here&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="reminder-that-our-repositories-changed"&gt;
&lt;h2&gt;Reminder that our repositories changed&lt;/h2&gt;
&lt;p&gt;&lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-repositories-and-community-packages.html"&gt;Please see the previous announcement&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="base-os-upgraded-to-devuan-beowulf-debian-buster"&gt;
&lt;h2&gt;Base OS upgraded to Devuan Beowulf (Debian Buster)&lt;/h2&gt;
&lt;p&gt;All of our core packages (way more than 100) are now ported to work on the latest
Debian &amp;amp; Devuan stable. The &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/299"&gt;entire list is documented in issue #299&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This was a multi-month effort involving everyone in the core
team, and it marks a big step forward!&lt;/p&gt;
&lt;p&gt;A few packages remain to be ported from ascii (oldstable) to beowulf, but those
were not in use yet on ascii either.&lt;/p&gt;
&lt;p&gt;The recommended way to upgrade is to download the latest image for your device,
and install the new image. Otherwise, if you're feeling adventurous, you can try
to use change &lt;cite&gt;/etc/apt/sources.list&lt;/cite&gt;, change &lt;cite&gt;ascii&lt;/cite&gt; to &lt;cite&gt;beowulf&lt;/cite&gt;, and run &lt;cite&gt;apt
update &amp;amp;&amp;amp; apt dist-upgrade&lt;/cite&gt;.&lt;/p&gt;
&lt;div class="section" id="maemo-leste-extras"&gt;
&lt;h3&gt;Maemo Leste Extras&lt;/h3&gt;
&lt;p&gt;Not all extras packages have been ported yet (this is not an exhaustive list): &lt;a class="reference external" href="https://github.com/maemo-leste-extras/bugtracker/issues/4"&gt;https://github.com/maemo-leste-extras/bugtracker/issues/4&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you're interested in helping out in porting existing packages, or even
maintaining your own packages for Maemo Leste, be sure to check out the
README in the &lt;a class="reference external" href="https://github.com/maemo-leste-extras/bugtracker"&gt;ticket tracking repository for Maemo Leste Extras!&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="device-support"&gt;
&lt;h2&gt;Device support&lt;/h2&gt;
&lt;div class="section" id="motorola-droid-4"&gt;
&lt;h3&gt;Motorola Droid 4&lt;/h3&gt;
&lt;p&gt;Wiki page: &lt;a class="reference external" href="https://leste.maemo.org/Motorola_Droid_4"&gt;https://leste.maemo.org/Motorola_Droid_4&lt;/a&gt;&lt;/p&gt;
&lt;div class="section" id="powervr-3d"&gt;
&lt;h4&gt;PowerVR 3D&lt;/h4&gt;
&lt;p&gt;Maemo Leste now runs on the Motorola Droid 4 with 3D acceleration. And not just
3D acceleration, a lot more hardware support has improved. The end result, quite
frankly, is stunning: Maemo Leste runs fast and buttersmooth. The Motorola
Droid 4 truly feels like an upgrade to the Nokia N900 now. This has been a
multi-year multi-man effort, and it's great to see it pay off.&lt;/p&gt;
&lt;p&gt;Here's a video that was made a week ago or so, some of the rendering artifacts
are no longer present:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/XCnErJnkWQM"
 ;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div class="section" id="wireless"&gt;
&lt;h4&gt;Wireless&lt;/h4&gt;
&lt;p&gt;Additionally, we've mostly fixed the wireless stability issues (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/296"&gt;see #296&lt;/a&gt;). Apparently, the
wireless firmware and bluetooth firmware need to be loaded in a specific order,
and there currently is no way to do this properly in mainline Linux, so we've
resorted to blacklisting the bluetooth module for now.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="power-management"&gt;
&lt;h4&gt;Power management&lt;/h4&gt;
&lt;p&gt;Power management is looking very promising (&lt;cite&gt;0.01A&lt;/cite&gt; or less at &lt;cite&gt;4.4V&lt;/cite&gt; when
idle). The package &lt;cite&gt;droid4-powermanagement&lt;/cite&gt;
(&lt;a class="reference external" href="https://github.com/maemo-leste/droid4-pm"&gt;https://github.com/maemo-leste/droid4-pm&lt;/a&gt;) is now available on the latest image,
and it should significantly improve battery life. Some work on MCE is pending,
but once that is merged, users will be able to enjoy better power
management (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/338"&gt;#338&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/340"&gt;#340&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;I would not be surprised if we can manage several days of battery time
in the next month or two.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="battery-calibration"&gt;
&lt;h4&gt;Battery calibration&lt;/h4&gt;
&lt;p&gt;Battery calibration is still being worked on, and a percentage will only be
shown once the battery has (almost fully) discharged and charged, and does not
persist across reboots. This is being worked on.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="audio"&gt;
&lt;h4&gt;Audio&lt;/h4&gt;
&lt;p&gt;Audio should work out of the box. You will find that the speaker and headphones
are muted, but the wiki will contain instructions on setting up the audio
mixers.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="modem-and-calls"&gt;
&lt;h4&gt;Modem and calls&lt;/h4&gt;
&lt;p&gt;The Motorola Droid 4 image is capable of performing calls, but they do not work
via ofono yet. Pavel has been working on an ofono port for the Droid 4, and
hopefully others will help him out soon and complete the initial port. Having
ofono support in place will make the Droid 4 the ultimate developer device.&lt;/p&gt;
&lt;p&gt;Shortly from now, we hope to have instructions on how to perform a test phone
call on the wiki.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="custom-bootup-logo"&gt;
&lt;h4&gt;Custom bootup logo&lt;/h4&gt;
&lt;p&gt;You can replace the Motorola logo on boot with a sweet Maemo Leste logo:&lt;/p&gt;
&lt;img alt="" src="/images/Droid4_leste_logo.jpg" style="width: 525px; height: 390px;" /&gt;
&lt;p&gt;Instructions can be found here: &lt;a class="reference external" href="https://github.com/xsetiadi/droid4-kexecboot/blob/master/LOGO"&gt;https://github.com/xsetiadi/droid4-kexecboot/blob/master/LOGO&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;p&gt;Wiki page: &lt;a class="reference external" href="https://leste.maemo.org/Nokia_N900"&gt;https://leste.maemo.org/Nokia_N900&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The Nokia N900 has also seen some power management love, and we've been able to
reach deep idle states, which we also shared on twitter
&lt;a class="reference external" href="https://twitter.com/maemoleste/status/1226265997981646849"&gt;https://twitter.com/maemoleste/status/1226265997981646849&lt;/a&gt; -- however, this work
is not yet usable in the latest image.&lt;/p&gt;
&lt;div class="section" id="tv-out"&gt;
&lt;h4&gt;TV out&lt;/h4&gt;
&lt;p&gt;What is usable, is using the Nokia's composite out functionality, which is kinda
neat:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/RNEJYYQyftI"
 ;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;p&gt;Enabling it can be done like this:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
02:57 &amp;lt; Wizzup&amp;gt; Had to change Jack Function in alsamixer to TV OUT, and use xrandr:
xrandr --output TV --mode 800x480 --same-as LCD
xrandr --output TV --set SignalProperties PAL
xrandr --output TV --set TVScale 100
&lt;/pre&gt;
&lt;/div&gt;
&lt;div class="section" id="camera-support"&gt;
&lt;h4&gt;Camera support&lt;/h4&gt;
&lt;p&gt;You read that right -- Pavel posted instructions on how to use the N900 camera
and take photos with it. Some work remains before we'll have a stock application
where taking photos just works, but it's great news. If you wanted to start
hacking on it, the instructions were shared on the mailing list, and you can see
the archive here:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://lists.dyne.org/lurker/message/20200306.084252.32b5515a.en.html"&gt;https://lists.dyne.org/lurker/message/20200306.084252.32b5515a.en.html&lt;/a&gt;&lt;/blockquote&gt;
&lt;/div&gt;
&lt;div class="section" id="sw-machine-cover"&gt;
&lt;h4&gt;SW_MACHINE_COVER&lt;/h4&gt;
&lt;p&gt;The Nokia N900 has a sensor for the backcover, and when it's removed, current
mainline Linux will refuse to recognize the MicroSD card, as it uses this sensor
to detect the card. Hopefully this will be changed in the future, and the
backcover will be exposed as an input device, with the key &lt;cite&gt;SW_MACHINE_COVER&lt;/cite&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://marc.info/?l=linux-omap&amp;amp;m=158168528609413&amp;amp;w=2"&gt;https://marc.info/?l=linux-omap&amp;amp;m=158168528609413&amp;amp;w=2&lt;/a&gt;&lt;/blockquote&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone-pinetab-let"&gt;
&lt;h3&gt;Pinephone &amp;amp; Pinetab(let)&lt;/h3&gt;
&lt;p&gt;Wiki page: &lt;a class="reference external" href="https://leste.maemo.org/PinePhone"&gt;https://leste.maemo.org/PinePhone&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We've also uploaded a Pinephone image! We uploaded one before, which we didn't
quite intend to share with the public yet, but Pine64 already shared our ascii
Pinephone image on Twitter a while back:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://twitter.com/thepine64/status/1231702499305893891"&gt;https://twitter.com/thepine64/status/1231702499305893891&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;Well, the beowulf image is here, and it's even better.&lt;/p&gt;
&lt;div class="section" id="for-developers"&gt;
&lt;h4&gt;For developers&lt;/h4&gt;
&lt;p&gt;Still, keep in mind that these are images for developers. Some things definitely
do not work yet, and the lack of a hardware keyboard makes using some parts of
UI a bit of a challenge, at least the places where the virtual keyboard is not
yet available.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="keyboard-monitoring"&gt;
&lt;h4&gt;Keyboard monitoring&lt;/h4&gt;
&lt;p&gt;The upcoming &lt;a class="reference external" href="https://www.pine64.org/pinetab/"&gt;Pine64 tablet&lt;/a&gt; has a removable
keyboard, and the Maemo virtual keyboard should only show up when the keyboard
is not attached to the tablet. Previously, removing the keyboard from the tablet
caused MCE to crash, &lt;a class="reference external" href="https://github.com/maemo-leste/mce/commit/0bec2e390e42f49bdbf01976a3b17609ddfd1483"&gt;but this has now been fixed&lt;/a&gt;, and together with the &lt;a class="reference external" href="https://github.com/maemo-leste/ke-recv-extra/pull/3"&gt;keyboard attached monitoring&lt;/a&gt;, the Pinetab is in a much better shape.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="software-additions"&gt;
&lt;h2&gt;Software additions&lt;/h2&gt;
&lt;div class="section" id="hildon-desktop-improvements"&gt;
&lt;h3&gt;hildon-desktop improvements&lt;/h3&gt;
&lt;p&gt;We have now switched hildon-desktop on all our devices to clutter 0.8, as
opposed to clutter 1.2. The reason is poor performance, in particular on PowerVR
devices (but likely also on other devices), and the unwillingness of the clutter
1.2 maintainer to fix it. We package clutter 0.8, but downstream distributions
will likely have to go through a bit of pain to get our latest and fastest bits
packaged (sorry!).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="theme-switching-control-panel-applet"&gt;
&lt;h3&gt;Theme switching control panel applet&lt;/h3&gt;
&lt;p&gt;For a long time, changing the default theme was not well documented, because
Maemo Fremantle had a control panel applet for it, and &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-control-panel-personalisation"&gt;now we do too&lt;/a&gt;, which
fixes &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/306"&gt;issue #306&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Try it out for yourself!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="themes-available-in-the-extras-repository"&gt;
&lt;h3&gt;Themes available in the extras repository&lt;/h3&gt;
&lt;p&gt;We've imported our first community made theme from Maemo.org,
&lt;a class="reference external" href="https://github.com/maemo-leste-extras/hildon-theme-marina/"&gt;hildon-theme-marina&lt;/a&gt;. To achieve this,
we also had to import &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-theme-layout"&gt;hildon-theme-layout&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-theme-tools/"&gt;hildon-theme-tools&lt;/a&gt; (and fix it up in
the process).&lt;/p&gt;
&lt;p&gt;Relevant bug report: &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/336"&gt;#336&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="language-and-region-switching-control-panel-applet"&gt;
&lt;h3&gt;Language and region switching control panel applet&lt;/h3&gt;
&lt;p&gt;Maemo Fremantle supported many languages, and since we implement the same base,
the translations can be reused. There is now an application to switch between
languages (source: &lt;a class="reference external" href="https://github.com/maemo-leste/osso-applet-languageregional"&gt;https://github.com/maemo-leste/osso-applet-languageregional&lt;/a&gt;), this was covered in &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/304"&gt;issue #304&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This is what the language applet looks like:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-language-applet-english.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Here, the language is set to English and still makes sense:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-cp-english.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;After changing the language to Dutch, and confirming that the device will indeed
reboot, this is what the control panel looks like now:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-cp-dutch.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Confusing, right?&lt;/p&gt;
&lt;img alt="" src="/images/droid4-status-dutch.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Additionally, language names now resolve in the hildon input method control
panel.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="attached-keyboard-slider-monitoring"&gt;
&lt;h3&gt;Attached keyboard slider monitoring&lt;/h3&gt;
&lt;p&gt;Maemo Leste now keeps track of the slide state of a keyboard, and the virtual
keyboard will act accordingly. If the keyboard slide is opened, the virtual
keyboard will not show up by default, but if the keyboard slide is closed, and
the virtual keyboard is enabled, it will work as expected.&lt;/p&gt;
&lt;p&gt;Relevant pull requests:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/ke-recv/pull/2"&gt;https://github.com/maemo-leste/ke-recv/pull/2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/ke-recv-extra/pull/3"&gt;https://github.com/maemo-leste/ke-recv-extra/pull/3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="modem-cellular-updates"&gt;
&lt;h3&gt;Modem/cellular updates&lt;/h3&gt;
&lt;p&gt;The &amp;quot;connui&amp;quot; userspace to interface with the modem is still being worked on, but
more progress was made recently. The PIN entry dialog now works, on start, like
one would expect it to:&lt;/p&gt;
&lt;img alt="" src="/images/pinentry-n900.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/pinentry-n900-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Once the PIN is filled in (or skipped), the homescreen shows the operator name
and the RAT (radio access technology) that is currently in use:&lt;/p&gt;
&lt;img alt="" src="/images/homescreen-cellular-n900.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;This work is only available in the development repositories, as it's not stable
enough to be used on a day to be day basis without being aware of all the bugs.
Yours truly is working hard to get this piece finished.&lt;/p&gt;
&lt;p&gt;The package &lt;cite&gt;libicd-network-ofono&lt;/cite&gt; is also still being worked, in particular, IP
assignment for the data connections is not yet implemented. Once this works,
it'll likely be possible to have data connections working on devices that
have ofono support for their modem.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="desktop-widgets-calendar-support"&gt;
&lt;h3&gt;Desktop widgets &amp;amp; calendar support&lt;/h3&gt;
&lt;p&gt;Previously, desktop widgets would crash hildon-home (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/326"&gt;#326&lt;/a&gt;), this has now been fixed. Sicelo has made some progress getting the calendar backend and widgets to run, but more work remains to be done, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/203"&gt;#203&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="devices-hardware"&gt;
&lt;h2&gt;Devices / Hardware&lt;/h2&gt;
&lt;div class="section" id="virtual-machine-images"&gt;
&lt;h3&gt;Virtual Machine images&lt;/h3&gt;
&lt;p&gt;New Virtual Machine images are available for download:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://maedevu.maemo.org/images/virtual-machines/20200324/"&gt;https://maedevu.maemo.org/images/virtual-machines/20200324/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We build qcow2 images usually used with QEMU, VirtualBox VDI images, and Vagrant
images.&lt;/p&gt;
&lt;p&gt;Currently, the mouse cursor might not be visible, we're working on resolving
this problem.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://leste.maemo.org/Virtual_Machine"&gt;https://leste.maemo.org/Virtual_Machine&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900-images"&gt;
&lt;h3&gt;Nokia N900 images&lt;/h3&gt;
&lt;p&gt;New images are available for download:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://maedevu.maemo.org/images/n900/20200323/"&gt;https://maedevu.maemo.org/images/n900/20200323/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="motorola-droid-4-images"&gt;
&lt;h3&gt;Motorola Droid 4 images&lt;/h3&gt;
&lt;p&gt;New images are available for download:
&lt;a class="reference external" href="https://maedevu.maemo.org/images/droid4/20200323/"&gt;https://maedevu.maemo.org/images/droid4/20200323/&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone-pinetab-images"&gt;
&lt;h3&gt;Pinephone/Pinetab images&lt;/h3&gt;
&lt;p&gt;New images are available for download:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://maedevu.maemo.org/images/pinephone/20200323/"&gt;https://maedevu.maemo.org/images/pinephone/20200323/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://maedevu.maemo.org/images/pinetab/20200324/"&gt;https://maedevu.maemo.org/images/pinetab/20200324/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These images are very usable, and have 3D acceleration with the open source Lima
drivers. There is still some jittery performance, but hopefully it will be fixed
with time as we go forward and the mesa driver gets improved.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="summarising"&gt;
&lt;h2&gt;Summarising&lt;/h2&gt;
&lt;p&gt;&lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-standing-on-the-shoulders-of-giants.html"&gt;It has been two years since our very first news post&lt;/a&gt;, and we've come a long way.&lt;/p&gt;
&lt;p&gt;With 3D support now looking quite decent on the Droid 4, we now have a device
that is easily obtainable, has great mainline support, very decent power
management, and is able to make calls right now. By focussing on supporting the
Nokia N900, Droid 4 and the Pinephone, and developing software with these
devices in mind, we can expect to be able to perform phone calls in the next few
months, if not weeks. It will take time for our userspace software to mature,
but things are looking really bright for Maemo Leste.&lt;/p&gt;
&lt;p&gt;I think we're putting together a great versatile mobile Linux distribution, with
its own userspace, based on top of Debian, the universal operation system. It
really is just Devuan/Debian at the core, and everything happens through the
Debian package manager. There are no read-only images, specific partitions that
you must have to install a new over the air update -- updates just work with
&lt;cite&gt;apt upgrade&lt;/cite&gt;.&lt;/p&gt;
&lt;p&gt;You will see that you can update from &lt;cite&gt;ascii&lt;/cite&gt; to &lt;cite&gt;beowulf&lt;/cite&gt; with
&lt;cite&gt;dist-upgrade&lt;/cite&gt;, and at the end of the upgrade, you will &lt;strong&gt;still&lt;/strong&gt; have a
functional &lt;cite&gt;ascii&lt;/cite&gt; system. And when you reboot - you will have the new &lt;cite&gt;beowulf&lt;/cite&gt;
(buster) version. We think that's powerful.&lt;/p&gt;
&lt;p&gt;Additionally, some (old and new) members from the community have started
contributed their packages to our &lt;a class="reference external" href="https://github.com/maemo-leste-extras"&gt;&amp;quot;Extras&amp;quot; repository&lt;/a&gt;. Make sure to check that out too, or
even better: port and contribute packages that you would love to see!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900 and Motorola Droid 4 units available to interested
developers&lt;/strong&gt;, so if you are interested in helping out but have trouble acquiring
a device, let us know.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay up to date, ask questions and/or
help out. Another great way to get in touch is to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="powervr"></category><category term="droid"></category><category term="n900"></category><category term="pinephone"></category><category term="theme"></category><category term="language"></category><category term="localisation"></category><category term="tv"></category><category term="extras"></category></entry><entry><title>Maemo Leste - Repositories and community packages</title><link href="https://maemo-leste.github.io/maemo-leste-repositories-and-community-packages.html" rel="alternate"></link><published>2020-02-25T19:20:00+01:00</published><updated>2020-02-25T19:20:00+01:00</updated><author><name>Ivan Jelincic</name></author><id>tag:maemo-leste.github.io,2020-02-25:/maemo-leste-repositories-and-community-packages.html</id><summary type="html">&lt;p&gt;In-between our technical updates, we have another short update on our repository
organization.&lt;/p&gt;
&lt;p&gt;After the proposition and discussion we've had on our IRC channel and our
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/320"&gt;bugtracker&lt;/a&gt;, we've
reorganized our repositories into a nicer and cleaner structure.&lt;/p&gt;
&lt;p&gt;In short, we now have a single pool containing all the packages and …&lt;/p&gt;</summary><content type="html">&lt;p&gt;In-between our technical updates, we have another short update on our repository
organization.&lt;/p&gt;
&lt;p&gt;After the proposition and discussion we've had on our IRC channel and our
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/320"&gt;bugtracker&lt;/a&gt;, we've
reorganized our repositories into a nicer and cleaner structure.&lt;/p&gt;
&lt;p&gt;In short, we now have a single pool containing all the packages and their
different versions, for all the different dists that we support. This is mainly
a nice way to keep a simpler repository structure, but also helpful when
building &lt;tt class="docutils literal"&gt;devel&lt;/tt&gt; packages, so their versions can be automatically incremented
in a correct manner. Last, but not least, it allows us to easily support more
than one &lt;tt class="docutils literal"&gt;dist&lt;/tt&gt;, so we will eventually be able to support both Devuan and
Debian at the same time.&lt;/p&gt;
&lt;p&gt;Due to this, the repository entries in &lt;tt class="docutils literal"&gt;/etc/apt/sources.list&lt;/tt&gt; require a small
change - instead of the &lt;tt class="docutils literal"&gt;deb&lt;/tt&gt; entries we've had:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
deb http://maedevu.maemo.org/leste leste main
deb http://maedevu.maemo.org/leste-extras leste-extras main
&lt;/pre&gt;
&lt;p&gt;We now have&lt;/p&gt;
&lt;pre class="literal-block"&gt;
deb http://maedevu.maemo.org/leste ascii main
deb http://maedevu.maemo.org/extras ascii main
&lt;/pre&gt;
&lt;p&gt;With this, there is less ambiguity and it is easier for both users and
developers to figure out which Devuan version Leste is currently based on, and
will also allow easier upgrading when Maemo Leste rebases to a newer Devuan
version.&lt;/p&gt;
&lt;p&gt;So, to switch your existing Maemo Leste installations, just use the latter two
links in &lt;tt class="docutils literal"&gt;/etc/apt/sources.list&lt;/tt&gt;. Simple!&lt;/p&gt;
&lt;p&gt;As for the images containing these changes, we are working on finalizing them
and they'll be ready for our next blog update.&lt;/p&gt;
&lt;div class="section" id="community-packages"&gt;
&lt;h2&gt;Community packages&lt;/h2&gt;
&lt;p&gt;We're close to finalizing our community infrastructure, and we'd love to invite
you to maintain community packages for Maemo Leste. Like Fremantle, we call them
Extras, and they reside in a separate &lt;a class="reference external" href="https://github.com/maemo-leste-extras/"&gt;organization&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you would like to maintain a community package, have a look at the bugtracker
in Maemo Leste Extras and follow the &lt;a class="reference external" href="https://github.com/maemo-leste-extras/bugtracker"&gt;README&lt;/a&gt;.  We invite everyone to try
out the procedure and provide feedback!&lt;/p&gt;
&lt;p&gt;See you there :)&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="extras"></category><category term="community"></category><category term="apt"></category><category term="repositories"></category></entry><entry><title>Maemo Leste - Eleventh Update (January) 2020</title><link href="https://maemo-leste.github.io/maemo-leste-eleventh-update-january-2020.html" rel="alternate"></link><published>2020-01-13T01:00:00+01:00</published><updated>2020-01-13T01:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2020-01-13:/maemo-leste-eleventh-update-january-2020.html</id><summary type="html">&lt;p&gt;It's been a few weeks since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-tenth-update-december-2019.html"&gt;end of 2019 update&lt;/a&gt;, and let's start with a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;We have a main track talk in the FOSDEM 2020 &lt;a class="reference external" href="https://fosdem.org/2020/schedule/event/smartphones/"&gt;Freedom Track&lt;/a&gt; - make sure to meet us
there if you're attending FOSDEM.&lt;/li&gt;
&lt;li&gt;New &lt;a class="reference internal" href="#virtual-machine"&gt;Virtual Machine&lt;/a&gt; images are available: &lt;a class="reference external" href="https://maedevu.maemo.org/images/virtual-machines/20200103/"&gt;https://maedevu.maemo.org …&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;It's been a few weeks since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-tenth-update-december-2019.html"&gt;end of 2019 update&lt;/a&gt;, and let's start with a few highlights:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;We have a main track talk in the FOSDEM 2020 &lt;a class="reference external" href="https://fosdem.org/2020/schedule/event/smartphones/"&gt;Freedom Track&lt;/a&gt; - make sure to meet us
there if you're attending FOSDEM.&lt;/li&gt;
&lt;li&gt;New &lt;a class="reference internal" href="#virtual-machine"&gt;Virtual Machine&lt;/a&gt; images are available: &lt;a class="reference external" href="https://maedevu.maemo.org/images/virtual-machines/20200103/"&gt;https://maedevu.maemo.org/images/virtual-machines/20200103/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;New &lt;a class="reference internal" href="#nokia-n900"&gt;Nokia N900&lt;/a&gt; images are available: &lt;a class="reference external" href="https://maedevu.maemo.org/images/n900/20200112/"&gt;https://maedevu.maemo.org/images/n900/20200112/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;New &lt;a class="reference internal" href="#motorola-droid-4"&gt;Motorola Droid 4&lt;/a&gt; images are available: &lt;a class="reference external" href="https://maedevu.maemo.org/images/droid4/20200112/"&gt;https://maedevu.maemo.org/images/droid4/20200112/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Leste &lt;strong&gt;Extras&lt;/strong&gt; repository is now set up and usable.&lt;/li&gt;
&lt;li&gt;An overview of various (important) development tasks is tracked on the wiki: &lt;a class="reference external" href="https://leste.maemo.org/Development/Tasks"&gt;https://leste.maemo.org/Development/Tasks&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;There will be a separate post for the Pinephone in the next few days, along with
images for the Pinephone.&lt;/em&gt;&lt;/p&gt;
&lt;div class="section" id="software-additions"&gt;
&lt;h2&gt;Software additions&lt;/h2&gt;
&lt;p&gt;There have been many additions, bugfixes and improvements, perhaps best
illustrated by this screenshot of a developer's Nokia N900 running Maemo
Leste:&lt;/p&gt;
&lt;img alt="" src="/images/leste-swstate.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;The above screenshot shows the availability of python bindings (binary clock),
importing Fremantle themes, the progress of connui-cellular (status bar with 3G
logo, signal bar, operator name 'KPN' on the home screen), and homescreen shortcuts of
applications that have been ported, including a package manager and PDF reader.&lt;/p&gt;
&lt;div class="section" id="leste-extras-software-repository"&gt;
&lt;h3&gt;Leste &amp;quot;Extras&amp;quot; software repository&lt;/h3&gt;
&lt;p&gt;We now have a separate repository called &lt;cite&gt;leste-extras&lt;/cite&gt; for non-core packages,
similar to the &amp;quot;Maemo Extras&amp;quot; repository -
&lt;a class="reference external" href="http://maemo.org/downloads/updated/Maemo5/"&gt;http://maemo.org/downloads/updated/Maemo5/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Currently &lt;cite&gt;leste-extras&lt;/cite&gt; contains a few games, emulators and status widgets.
Eventually, it will be home to status widgets, home widgets, different browsers,
map applications, games, and more.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste-extras"&gt;https://github.com/maemo-leste-extras&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Keep in mind that in addition to the packages available in this repository,
every package available in Debian can be installed using &lt;cite&gt;apt-get install&lt;/cite&gt; -
usability will vary.&lt;/p&gt;
&lt;div class="section" id="wishlist"&gt;
&lt;h4&gt;Wishlist&lt;/h4&gt;
&lt;p&gt;If there is a specific application you would like to see (ported), the wiki now
contains an &lt;a class="reference external" href="https://leste.maemo.org/Wishlist"&gt;Application Wishlist&lt;/a&gt;. Feel
free to add suggestions to the table.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="porting"&gt;
&lt;h4&gt;Porting&lt;/h4&gt;
&lt;p&gt;Porting applications from Maemo Fremantle (&amp;quot;Maemo 5&amp;quot;) is usually not very hard,
and sometimes particularly simple, as outlined in this &lt;a class="reference external" href="https://talk.maemo.org/showpost.php?p=1563848&amp;amp;postcount=18"&gt;talk.maemo.org forum
post&lt;/a&gt;.
In general, if an application depends on libraries that are mostly available in
Debian, and uses gtk2, it should be not very hard to port. If it relies on Qt, it
is not yet possible to properly port it, as we do not have a usable Qt5 Hildon
port yet. A &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/261"&gt;gtk3 port is in the works&lt;/a&gt; -but help is needed.&lt;/p&gt;
&lt;p&gt;One application that was ported recently is the &lt;a class="reference internal" href="#pdf-reader"&gt;PDF Reader&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="python-support"&gt;
&lt;h3&gt;Python support&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="http://wiki.maemo.org/PyMaemo"&gt;Maemo had pretty decent Python bindings and documentation for them&lt;/a&gt; -- and they were only available for Python
2.5, which is beyond ancient. &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/260"&gt;Issue #260&lt;/a&gt; was created to
modernise and port some of the python bindings to Maemo Leste, allowing us to
run port and build (new) python applications.&lt;/p&gt;
&lt;p&gt;As of a few weeks, &lt;a class="reference external" href="https://github.com/maemo-leste/pygtk"&gt;pygtk&lt;/a&gt; is available
with hildon widget support, &lt;a class="reference external" href="https://github.com/maemo-leste/python-hildon"&gt;python-hildon&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/python-hildondesktop"&gt;python-hildondesktop&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/python-osso"&gt;python-osso&lt;/a&gt; are all available as well.
These are the main bindings to the Maemo mobile environment.  They have all been
ported to Python 2.7. Python 2.7 is now end of life, so we'll have to migrate to
3.x eventually, but 2.7 seemed like a good and useful intermediate goal.&lt;/p&gt;
&lt;p&gt;And, surely enough, python applications like the binary clock applet now run:&lt;/p&gt;
&lt;img alt="" src="/images/python-maemo-binaryclock.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Here one can see a home widget example:&lt;/p&gt;
&lt;img alt="" src="/images/python-hildon-homewidget.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;And a status bar example:&lt;/p&gt;
&lt;img alt="" src="/images/python-hildon-statuswidget.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Hildon-type stacked windows in Python:&lt;/p&gt;
&lt;img alt="" src="/images/python-hildon-stack.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/python-hildon-stack-sub.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Hildon-type wizards:&lt;/p&gt;
&lt;img alt="" src="/images/python-hildon-wizard1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/python-hildon-wizard2.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/python-hildon-wizard3.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Hildon menus:&lt;/p&gt;
&lt;img alt="" src="/images/python-hildon-menu1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/python-hildon-menu2.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="pdf-reader"&gt;
&lt;h3&gt;PDF reader&lt;/h3&gt;
&lt;p&gt;Maemo 5 features a PDF reader, and it has now been ported to Maemo Leste, &lt;a class="reference external" href="https://github.com/maemo-leste/osso-pdf-viewer/commits/master"&gt;the
osso-pdf-viewer source can be found here&lt;/a&gt;.
Porting was slightly more involved than we hoped, but all in all it was maybe
half a day of work. Porting did reveal that there is a bug in the underlying
maemo file manager libraries, making it impossible for users to select a file to
open if the enviroment variable &lt;cite&gt;MYDOCSDIR&lt;/cite&gt; is set, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/280"&gt;#280&lt;/a&gt;.
This bug also effects the SNES emulator drnoksnes, so we'll hopefully get it
resolved soon.&lt;/p&gt;
&lt;p&gt;Even though it's currently hard to open PDFs, the application is available in
the core Maemo Leste repository now, and part of the new images.&lt;/p&gt;
&lt;img alt="" src="/images/leste-pdf-n900-1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-pdf-n900-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-pdf-n900-3.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-pdf-n900-4.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="hildon-application-manager"&gt;
&lt;h3&gt;Hildon Application Manager&lt;/h3&gt;
&lt;p&gt;Another core component of Maemo is &amp;quot;HAM&amp;quot;, also known as the &amp;quot;Hildon Application
Manager&amp;quot;. It's an user interface to the Debian package manager, &lt;cite&gt;apt&lt;/cite&gt;, which allows
users to discover, install and uninstall packages, and it also notifies the user
when updates are available, and if the user agrees, updates the system. You can
adjust the frequency of update checks.&lt;/p&gt;
&lt;p&gt;This was a relatively quick port, and there are likely bugs, so there is more
work to be done. Nevertheless, it works.&lt;/p&gt;
&lt;p&gt;This screenshot shows the device informing the user there are (important)
updates to be installed (&lt;strong&gt;Yellow &amp;quot;!&amp;quot; icon&lt;/strong&gt;).&lt;/p&gt;
&lt;img alt="" src="/images/leste-update-notification-via-alarmd-and-status-applet.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Clicking on the updates button in the status menu will show the following
sequence of dialogs:&lt;/p&gt;
&lt;img alt="" src="/images/leste-n900-ham-updates.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-n900-ham-updates-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-n900-ham-updates-3.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-n900-ham-updates-4.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-n900-ham-updates-5.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-n900-ham-updates-6.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-n900-ham-updates-7.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/leste-n900-ham-updates-8.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;As of today, the Hildon Application Manager will also automatically add and
enable our &lt;a class="reference internal" href="#leste-extras-software-repository"&gt;Leste &amp;quot;Extras&amp;quot; software repository&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="portrait-mode"&gt;
&lt;h3&gt;Portrait mode&lt;/h3&gt;
&lt;p&gt;For a long time, our hildon-desktop environment completely did not work in so
called &amp;quot;Portrait&amp;quot; mode -- where the screen is higher than it is wide. This is
very common now in smart phones. As a result, many devices have &amp;quot;Portrait&amp;quot; as the
native orientation of the display. The Droid 4 and Pinephone are no exception.&lt;/p&gt;
&lt;p&gt;Maemo Leste still doesn't work very well yet in Portrait mode (although the
original Maemo Fremantle does mostly work really well in Portrait mode).
There were some real show stopping bugs, in particular &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/214"&gt;#214&lt;/a&gt;, which resulted in the
entire desktop been drawn offscreen. Some bugs still remain, like &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/283"&gt;#283&lt;/a&gt; and these affect the
Pinephone in a negative way.&lt;/p&gt;
&lt;p&gt;Nevertheless, here's a photo of a Motorola Droid 4 in Portrait mode:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-rot3.jpg" style="width: 324px; height: 575px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="games"&gt;
&lt;h3&gt;Games&lt;/h3&gt;
&lt;p&gt;Various games have been ported from Fremantle, and they work really well on the
Nokia N900. Most games still require some fixes to work on devices with other screen
sizes and orientations.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;brainparty:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/IlweegA2ORQ"
;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Latest ScummVM from git works on the N900:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/DHGaUI8wA7Q"
;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;UAE4ALL is also in the &lt;cite&gt;leste-extras&lt;/cite&gt; repository, but could see some more
testing.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The marbles port is in the works, &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/275"&gt;the mahjong port mostly works (#275)&lt;/a&gt;, and the chess port
compiles, &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/277"&gt;but is not yet functional (#277)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Related issues:&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/259"&gt;#259&lt;/a&gt;, &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/273"&gt;#273&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;User Angel Vega also has UAE4ALL and milkytracker running on Maemo Leste:&lt;/p&gt;
&lt;blockquote&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/UGcQ4NV3jO8"
;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/blockquote&gt;
&lt;/div&gt;
&lt;div class="section" id="upstream"&gt;
&lt;h3&gt;Upstream&lt;/h3&gt;
&lt;p&gt;Maemo and Mer (base system for Sailfish OS and Nemo Mobile) share a lot of core
packages, even though those have diverged over time. &lt;cite&gt;spiiroin&lt;/cite&gt; has Maemo Leste
running with various core packages replaced with their (newer!) Mer
equivalents:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.sailfishos.org/spiiroin/mce/tree/maemo-leste-hacking"&gt;https://git.sailfishos.org/spiiroin/mce/tree/maemo-leste-hacking&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.sailfishos.org/spiiroin/dsme/tree/maemo-leste-hacking"&gt;https://git.sailfishos.org/spiiroin/dsme/tree/maemo-leste-hacking&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We hope to make use of this work in the (near) future and use the same base
software as Mer does. The evolved versions of MCE and DSME that are used in Mer
also have some features that we will need, like being able to deal with the new
(well, not so new anymore) kernel vibration interface.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="connui-cellular"&gt;
&lt;h3&gt;connui-cellular&lt;/h3&gt;
&lt;p&gt;connui-cellular is the piece of software that contains a lot of widgets and
libraries used in cellular activities. The home widget that displays the
operator name, the program that asks you for your PIN to unlock your SIM card,
the status applet that shows the strength of your cellular signal, what
technology is being used to connect to the network, the Phone settings applet.
And more. This piece is being ported to ofono, but it's not ready for general
use yet. You might see various screenshots in this blogpost already featuring
various pieces of &lt;cite&gt;connui-cellular&lt;/cite&gt; - it is available in the &lt;cite&gt;leste-devel&lt;/cite&gt;
repository, which contains unstable or testing versions of our software.&lt;/p&gt;
&lt;p&gt;Hopefully in the next one or two weeks a first version will make it to the
production &lt;cite&gt;leste&lt;/cite&gt; repository.&lt;/p&gt;
&lt;p&gt;This video shows that unlocking your SIM using the pin-entry dialog now works:&lt;/p&gt;
&lt;blockquote&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/BpJPTc8Q_4c"
;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/blockquote&gt;
&lt;/div&gt;
&lt;div class="section" id="osso-abook"&gt;
&lt;h3&gt;osso-abook&lt;/h3&gt;
&lt;p&gt;Maemo had a pretty good address book and presence (for Instant Messaging and SIP
calling) system. Developer freemangordon is working on getting that in Maemo
Leste as well. It's a rather big task, so it might take a while, but we will
rely on this piece of software to integrate our various contact applications.
Examples of this would be the &lt;cite&gt;modest&lt;/cite&gt; email client, and a not-yet-existing
dialer and SMS application.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="themes"&gt;
&lt;h3&gt;Themes&lt;/h3&gt;
&lt;p&gt;One of the cool things about being compatible with Maemo 5 &amp;quot;Fremantle&amp;quot; on
various levels is that it's often really easy to cherry pick things we like.&lt;/p&gt;
&lt;p&gt;In this case, one can literally just download a theme from the maemo.org
website and install it on Maemo Leste. For example, the &lt;a class="reference external" href="http://maemo.org/downloads/product/Maemo5/hildon-theme-marina/"&gt;Marina Theme&lt;/a&gt; can be
installed with &lt;cite&gt;dpkg -i &amp;lt;debhere&amp;gt;&lt;/cite&gt;. Currently, the &lt;cite&gt;/usr/share/themes/default&lt;/cite&gt;
symlink also needs to be updated, but after that, the themes from Maemo 5
&amp;quot;Fremantle&amp;quot; are fully usable on Maemo Leste.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="http://maemo.org/downloads/search/application.html?org_openpsa_products_search%5B1%5D%5Bproperty%5D=title&amp;amp;org_openpsa_products_search%5B1%5D%5Bconstraint%5D=LIKE&amp;amp;org_openpsa_products_search%5B1%5D%5Bvalue%5D=theme&amp;amp;org_openpsa_products_search%5B2%5D%5Bproperty%5D=os&amp;amp;org_openpsa_products_search%5B2%5D%5Bconstraint%5D=LIKE&amp;amp;org_openpsa_products_search%5B2%5D%5Bvalue%5D=Maemo5&amp;amp;fetch=Search"&gt;There are a lot of themes available too&lt;/a&gt;,
we are hoping to eventually have a default theme with a Maemo Leste logo, there
was &lt;a class="reference external" href="https://talk.maemo.org/showthread.php?t=100905"&gt;some discussion about a default Maemo Leste theme on talk.maemo.org&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="devices-hardware"&gt;
&lt;h2&gt;Devices / Hardware&lt;/h2&gt;
&lt;div class="section" id="virtual-machine"&gt;
&lt;h3&gt;Virtual Machine&lt;/h3&gt;
&lt;p&gt;New Virtual Machine images are available:
&lt;a class="reference external" href="https://maedevu.maemo.org/images/virtual-machines/20200103/"&gt;https://maedevu.maemo.org/images/virtual-machines/20200103/&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="https://maedevu.maemo.org/images/n900/20200112/"&gt;New N900 images are available here&lt;/a&gt;, main changes include:&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;There are now udev rules in place to allow using the modem with ofono. (Just
&lt;cite&gt;apt install ofono mdbus; mdbus2 -s org.ofono&lt;/cite&gt; and you should see the modem)&lt;/li&gt;
&lt;li&gt;&lt;cite&gt;hildon-application-manager&lt;/cite&gt; is now installed by default, as is the
&lt;cite&gt;osso-pdf-reader&lt;/cite&gt; application. Users can install packages from Leste &amp;quot;Extras&amp;quot;
directly from the &lt;cite&gt;hildon-application-manager&lt;/cite&gt;.&lt;/li&gt;
&lt;li&gt;Specific rules in &lt;cite&gt;/etc/network/interfaces&lt;/cite&gt; for &lt;cite&gt;usb0&lt;/cite&gt; are removed because
they confliced with &lt;cite&gt;ke-recv&lt;/cite&gt;, net result is that usb networking should be
more smooth now.&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;div class="section" id="motorola-droid-4"&gt;
&lt;h3&gt;Motorola Droid 4&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="https://maedevu.maemo.org/images/droid4/20200112/"&gt;New Motorola Droid 4 images are available here&lt;/a&gt;, main changes include:&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;udev rules for the modem.&lt;/li&gt;
&lt;li&gt;Much newer kernel (5.4.0 based) with a ton of fixes and improvements,
including modem and audio support.&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/286"&gt;An ofono fork with rudimentary support for the Motorola Droid 4 modem (#286)&lt;/a&gt;. It is
not installed by default, but &lt;cite&gt;apt install ofono&lt;/cite&gt; will get you set up with
the right version. It does not yet support the &lt;cite&gt;SimManager&lt;/cite&gt; interface, which
&lt;cite&gt;connui-cellular&lt;/cite&gt; will need. If someone wants to implement this, that would
be great.&lt;/li&gt;
&lt;li&gt;Support for PowerVR testing and development. The current image will allow
developers to build a PowerVR kernel module and test it, without having to
recompile or patch the Linux kernel.&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="section" id="audio"&gt;
&lt;h4&gt;Audio&lt;/h4&gt;
&lt;p&gt;Sound works, but requires three manual steps every boot. Basically, you need to
insert the modules. Inserting them at boot time will not work:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
modprobe snd-soc-cpcap
modprobe snd-soc-motmdm
modprobe snd-soc-audio-graph-card
&lt;/pre&gt;
&lt;/div&gt;
&lt;div class="section" id="bluetooth"&gt;
&lt;h4&gt;Bluetooth&lt;/h4&gt;
&lt;p&gt;If you like bluetooth, installing &lt;a class="reference external" href="https://github.com/TI-ECS/bt-firmware/blob/master/TIInit_10.6.15.bts"&gt;this firmware file&lt;/a&gt;
to &lt;cite&gt;/lib/firmware/ti-connectivity/TIInit_10.6.15.bts&lt;/cite&gt; will make it work after a
reboot:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
# hcitool scan
Scanning ...
    C0:38:F9:A6:29:BA       Nokia N900
&lt;/pre&gt;
&lt;/div&gt;
&lt;div class="section" id="powervr-3d-acceleration"&gt;
&lt;h4&gt;PowerVR / 3D acceleration&lt;/h4&gt;
&lt;p&gt;Detailed instructions on how to play with PowerVR using this image will follow, but you
will need at least:&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/tmlind/pvr-omap4-dkms/blob/testing-v5.4/README_DROID4"&gt;https://github.com/tmlind/pvr-omap4-dkms/blob/testing-v5.4/README_DROID4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;This package: &lt;a class="reference external" href="https://launchpad.net/ubuntu/artful/armhf/libdri2-1/1.0.0~git20120510+26fee2e-0ubuntu2"&gt;https://launchpad.net/ubuntu/artful/armhf/libdri2-1/1.0.0~git20120510+26fee2e-0ubuntu2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;cite&gt;apt install xserver-xorg-video-omap&lt;/cite&gt;&lt;/li&gt;
&lt;li&gt;Rename &lt;cite&gt;/etc/X11/xorg.conf.d.pvr&lt;/cite&gt; to &lt;cite&gt;/etc/X11/xorg.conf.d&lt;/cite&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;DOING SO WILL BREAK HILDON-DESKTOP AND MIGHT MAKE YOUR SYSTEM BOOT LOOP, SO
CONTINUE AT YOUR OWN RISK&lt;/strong&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h3&gt;Interested?&lt;/h3&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900 and Motorola Droid 4 units available to interested
developers&lt;/strong&gt;, so if you are interested in helping out but have trouble acquiring
a device, let us know.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay up to date, ask questions and/or
help out. Another great way to get in touch is to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="n900"></category><category term="droid4"></category><category term="python"></category><category term="games"></category><category term="scummvm"></category><category term="brainparty"></category><category term="portait"></category><category term="pdf"></category><category term="pinephone"></category></entry><entry><title>Maemo Leste - Tenth Update (December) 2019</title><link href="https://maemo-leste.github.io/maemo-leste-tenth-update-december-2019.html" rel="alternate"></link><published>2019-12-31T17:45:00+01:00</published><updated>2019-12-31T17:45:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2019-12-31:/maemo-leste-tenth-update-december-2019.html</id><summary type="html">&lt;p&gt;It's been a few months since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-ninth-update-march-till-august-2019.html"&gt;ninth update&lt;/a&gt;, and a lot has happened on a
technical front. That will all be covered in an early January update. This
update will mostly be about the non-technical part of Maemo Leste.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;First of all - happy new year to everyone reading this …&lt;/strong&gt;&lt;/p&gt;</summary><content type="html">&lt;p&gt;It's been a few months since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-ninth-update-march-till-august-2019.html"&gt;ninth update&lt;/a&gt;, and a lot has happened on a
technical front. That will all be covered in an early January update. This
update will mostly be about the non-technical part of Maemo Leste.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;First of all - happy new year to everyone reading this. I believe 2020 will be
a very interesting and hopefully prosperous year for the project.&lt;/strong&gt;&lt;/p&gt;
&lt;div class="section" id="openfest"&gt;
&lt;h2&gt;OpenFest&lt;/h2&gt;
&lt;p&gt;In early November, we gave a talk at OpenFest 2019. Several of the core Maemo
Leste developers also met up at the event, and we also had interesting talks
with the folks from &lt;a class="reference external" href="https://tehnoetic.com/"&gt;Techno Ethical&lt;/a&gt; - they left with
a Droid 4 to run Maemo Leste on.&lt;/p&gt;
&lt;p&gt;The official recording of the OpenFest 2019 is not yet uploaded to youtube, but
you can find a video which bundyo made, here:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/UjzEd504_jY"
;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div class="section" id="nlnet-funding"&gt;
&lt;h2&gt;NLNet - funding!&lt;/h2&gt;
&lt;p&gt;You read that right, we applied for funding and we received it.
You can read the writeup here &lt;a class="reference external" href="https://nlnet.nl/project/MaemoLeste/"&gt;on the NLNet website&lt;/a&gt;. We will share details in the coming
weeks.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="fosdem-2020"&gt;
&lt;h2&gt;FOSDEM 2020&lt;/h2&gt;
&lt;p&gt;Maemo Leste will be present at FOSDEM in 2020 - with a talk. This time it will not be a
lightning talk, but will be a talk on Sunday, for the &lt;a class="reference external" href="https://fosdem.org/2020/schedule/track/freedom/"&gt;Freedom track&lt;/a&gt;, in the Janson room,
together with someone from postmarketOS!&lt;/p&gt;
&lt;p&gt;Once we finalise our talk abstract and description, the talk will show up on the
FOSDEM website.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="talk-maemo-org-subforum"&gt;
&lt;h2&gt;talk.maemo.org subforum&lt;/h2&gt;
&lt;p&gt;&lt;a class="reference external" href="https://talk.maemo.org/forumdisplay.php?f=66"&gt;We now have a talk.maemo.org subforum&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="some-videos-with-a-few-technical-updates"&gt;
&lt;h2&gt;Some videos with a few technical updates&lt;/h2&gt;
&lt;p&gt;Although the start of the update said there wouldn't be a lot of technical
updates, here's a short summary of what to expect in the technical update next
week:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;hildon-desktop rotation bug is fixed!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Maemo Leste runs on the PinePhone and PineTab&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;hildon-application-manager is kind of working&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/t-DiJJkyYrk"
;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;brainparty running on an N900 running Maemo Leste:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/IlweegA2ORQ"
;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;PowerVR  acceleration starts to work on the Motorola Droid 4&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/6byvcCjEazE"
;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Cellular work continues steadily&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/BpJPTc8Q_4c"
;rameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://talk.maemo.org/showpost.php?p=1563667&amp;amp;postcount=330"&gt;Python gtk and hildon support is now in place&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="section" id="interested"&gt;
&lt;h3&gt;Interested?&lt;/h3&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay up to date, ask questions and/or
help out. Another great way to get in touch is to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="nlnet"></category><category term="openfest"></category><category term="pine64"></category><category term="pinephone"></category><category term="pinetab"></category><category term="droid4"></category><category term="powervr"></category><category term="fosdem"></category><category term="brainparty"></category><category term="python"></category></entry><entry><title>Maemo Leste - Ninth Update (March till August) 2019</title><link href="https://maemo-leste.github.io/maemo-leste-ninth-update-march-till-august-2019.html" rel="alternate"></link><published>2019-08-24T15:00:00+02:00</published><updated>2019-08-24T15:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2019-08-24:/maemo-leste-ninth-update-march-till-august-2019.html</id><summary type="html">&lt;p&gt;It's been way too long since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-eight-update-january-february-2019.html"&gt;eight update&lt;/a&gt;. A lot of things happened
and we're still making steady progress.&lt;/p&gt;
&lt;div class="section" id="general-direction-alpha-status"&gt;
&lt;h2&gt;General direction &amp;amp; Alpha status&lt;/h2&gt;
&lt;p&gt;The last couple of months has been dominated by work on cellular support and the
upcoming PinePhone and PineTablet devices. The Pine64 project plans to start …&lt;/p&gt;&lt;/div&gt;</summary><content type="html">&lt;p&gt;It's been way too long since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-eight-update-january-february-2019.html"&gt;eight update&lt;/a&gt;. A lot of things happened
and we're still making steady progress.&lt;/p&gt;
&lt;div class="section" id="general-direction-alpha-status"&gt;
&lt;h2&gt;General direction &amp;amp; Alpha status&lt;/h2&gt;
&lt;p&gt;The last couple of months has been dominated by work on cellular support and the
upcoming PinePhone and PineTablet devices. The Pine64 project plans to start
shipping the PinePhone a couple months from now, and we hope to have a
usable-enough image so that the PinePhone can ship with the option of having
Maemo Leste installed. This might also explain the focus on the modem/cellular
work, which this article will discuss in greater detail later on.&lt;/p&gt;
&lt;p&gt;The &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/4"&gt;N900 Alpha milestone&lt;/a&gt; status is looking
quite good, with a couple of (relatively minor) changes remaining, the most
prominent being &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/17"&gt;completion of the virtual keyboard package&lt;/a&gt;, we need to add
monitoring of the keyboard slide status. This should be a day of work at most.
The other meaningful (non bug fix) addition will be welcome application, &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/229"&gt;as
pioneered by Pavel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We've seen more and more people join the IRC channel, get a device to develop
on, and slowly help porting / adding new applications, so that's exciting!&lt;/p&gt;
&lt;!-- cellular --&gt;
&lt;!-- 'basic os' --&gt;
&lt;!-- qt support libs --&gt;
&lt;!-- support multiple devices --&gt;
&lt;!-- pinephone aims --&gt;
&lt;!-- -&gt; then (or: already!) port new stuff --&gt;
&lt;/div&gt;
&lt;div class="section" id="software-additions-connectivity"&gt;
&lt;h2&gt;Software additions &amp;amp; Connectivity&lt;/h2&gt;
&lt;p&gt;In the connectivity domain there's been a couple of things going on,
connui-cellular was ready to be ported to ofono, the daemon that interfaces with
the modem. Freemangordon started working on &lt;cite&gt;libicd-network-ofono&lt;/cite&gt;, the &lt;cite&gt;icd2&lt;/cite&gt;
plugin that will allow for setting up GPRS/UMTS/LTE data connections, and
Freemangordon and Wizzup have been working on porting &lt;cite&gt;connui-common&lt;/cite&gt; and
&lt;cite&gt;connui-cellular&lt;/cite&gt; to ofono. While porting, effort is been made to support
multiple modems and dual sim setups. Maemo supported neither, so it will require
some architectural changes down the line.&lt;/p&gt;
&lt;p&gt;The tracking issue for 3G data support can be found seen here: &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/76"&gt;https://github.com/maemo-leste/bugtracker/issues/76&lt;/a&gt;&lt;/p&gt;
&lt;div class="section" id="connui-cellular"&gt;
&lt;h3&gt;connui-cellular&lt;/h3&gt;
&lt;p&gt;connui-cellular is a big package that contains a lot:&lt;/p&gt;
&lt;ol class="arabic simple" start="0"&gt;
&lt;li&gt;Shared code (library) to interface with the various cellular daemons&lt;/li&gt;
&lt;li&gt;&lt;dl class="first docutils"&gt;
&lt;dt&gt;Control panel (Settings) applet to:&lt;/dt&gt;
&lt;dd&gt;&lt;ul class="first last"&gt;
&lt;li&gt;Set up call forwarding&lt;/li&gt;
&lt;li&gt;Set up / change what radio technologies should be used (2G, 3G, etc)&lt;/li&gt;
&lt;li&gt;Set up roaming options&lt;/li&gt;
&lt;li&gt;Change, set or reset pin code for the sim card&lt;/li&gt;
&lt;/ul&gt;
&lt;/dd&gt;
&lt;/dl&gt;
&lt;/li&gt;
&lt;li&gt;Hildon-home applet to show the operator name on the desktop&lt;/li&gt;
&lt;li&gt;Hildon status bar applet to show the signal strength, radio access
technology, sim card status and more.&lt;/li&gt;
&lt;li&gt;Dialogs to enter pin codes for a sim card&lt;/li&gt;
&lt;li&gt;Roaming related dialogs.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;So this is a very important package to have (fully) working. Porting it to ofono
requires replacing a ton of functions, mostly in the shared code. An effort is
being made on the &lt;a class="reference external" href="https://github.com/maemo-leste/connui-cellular/compare/ofono-port"&gt;ofono-port branch&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There are two tickets open to track this progress in (they should probably be
merged):&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/195"&gt;https://github.com/maemo-leste/bugtracker/issues/195&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/256"&gt;https://github.com/maemo-leste/bugtracker/issues/256&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;While it's still work in progress, the operator name widget and the status bar
applet is already mostly functional, as can be seen on this Nokia N900, being
connected to the Dutch operator &lt;cite&gt;KPN&lt;/cite&gt;, over 3G.&lt;/p&gt;
&lt;img alt="" src="/images/leste-n900-cellular-v0.1.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Maemo did not support 4G/LTE at all, so we also added that, as can be seen in
this virtual machine using a modem via usb-passthrough:&lt;/p&gt;
&lt;img alt="" src="/images/leste-cellular-operator-name-home.png" style="width: 608px; height: 300px;" /&gt;
&lt;p&gt;(Thanks to &lt;cite&gt;sicelo&lt;/cite&gt; for creating the logo - and before you ask, yes, we're going
to switch from &lt;cite&gt;4G&lt;/cite&gt; to &lt;cite&gt;LTE&lt;/cite&gt; as a logo text)&lt;/p&gt;
&lt;p&gt;The following pages on the wiki contain some more information (although some of
it may surely be outdated):&lt;/p&gt;
&lt;ol class="arabic simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://leste.maemo.org/Status/Mobile_Data"&gt;https://leste.maemo.org/Status/Mobile_Data&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://leste.maemo.org/Status/Mobile_Data/Dev"&gt;https://leste.maemo.org/Status/Mobile_Data/Dev&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;div class="section" id="libicd-network-ofono"&gt;
&lt;h3&gt;libicd-network-ofono&lt;/h3&gt;
&lt;p&gt;As mentioned, work has started on libicd-network-ofono, the &lt;cite&gt;icd2&lt;/cite&gt; plugin that
will allow setting up a data connection. Currently the plugin will find modems,
and provision them. The connection will then show up in the usual connection
dialog:&lt;/p&gt;
&lt;img alt="" src="/images/leste-libicd-network-ofono-0.1.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;And if you select it, it will power up the modem, but not yet connect you to a
data network:&lt;/p&gt;
&lt;img alt="" src="/images/leste-libicd-network-ofono-0.1-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;There's more work to be done in this area - and help is appreciated:&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-ofono"&gt;https://github.com/maemo-leste/libicd-network-ofono&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="connui-common"&gt;
&lt;h3&gt;connui-common&lt;/h3&gt;
&lt;p&gt;connui-common contains (as the name suggests) common code shared within the
connui stack. It has also seen porting to libgofono.&lt;/p&gt;
&lt;p&gt;Recently in an effort to migrate all our packages to the upcoming
Devuan release, we upgraded the build system, but as a result, dialogs were
being installed into an architecture specific path, which is the way it's
supposed to be, but this resulted in certain dialog plugins not being loaded at
all. Ultimately, it meant that you could no longer get any wireless connection
dialog when you updated your system. The bug had apparently existed for a while,
but it has now been fixed, for more details see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/251"&gt;bug #251&lt;/a&gt;.&lt;/p&gt;
&lt;!-- hildon application manager --&gt;
&lt;!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~ --&gt;
&lt;!--  --&gt;
&lt;!-- Being worked on by minicom TODO links --&gt;
&lt;/div&gt;
&lt;div class="section" id="mode-control-entity"&gt;
&lt;h3&gt;mode control entity&lt;/h3&gt;
&lt;p&gt;For a few months, changing the brightness no longer worked from the settings
applet, this was due to the fact that &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/232"&gt;there were several user dbus-daemon
instances&lt;/a&gt; running, and
applications were not able to chat with each other. This has now been fixed.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="welcome-application"&gt;
&lt;h3&gt;welcome application&lt;/h3&gt;
&lt;p&gt;We'll soon have a welcome application of some sorts, &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/229"&gt;as documented in issue
#229&lt;/a&gt;, to allow resizing
of the rootfs, changing default passwords, and so on. And ... unlike most of the
core Maemo software, this is written in Python, using pygtk.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="alarmd"&gt;
&lt;h3&gt;alarmd&lt;/h3&gt;
&lt;p&gt;Maemo has a package called &lt;cite&gt;alarmd&lt;/cite&gt;, which is used to set and manage alarms. The
phone can wake itself even when it's completely powered off to alarm the user.
&lt;cite&gt;alarmd&lt;/cite&gt; and &lt;cite&gt;alarmclient&lt;/cite&gt; are already built and can be installed to Maemo
Leste, and a sample alarm run will look like this:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
alarmclient      -b label=Snooze,flags=TYPE_SNOOZE+WHEN_RESPONDED    \
-b label=Stop,flags=WHEN_RESPONDED,    \
-n title='Two Button Alarm',message='Hello there',     alarm_time=5
&lt;/pre&gt;
&lt;img alt="" src="/images/leste-alarm-client.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="audio"&gt;
&lt;h3&gt;Audio&lt;/h3&gt;
&lt;p&gt;Currently, audio mostly just works on the devices that we support (Nokia N900,
Motorola Droid 4, Pinephone devkit, Allwinner tablets...). However, for a phone
to be particular usable we'll need to deal with audio policies sooner or later.
That is: if you plug in a headphone, you expect the output of programs to go to
the headphone jack. And if you don't have a headphone jack plugged in, you
expect audio to go over the speakers. Unless you're being called, in which case
you probably initially want the audio to go over the earpiece.
Maemo's audio policies and routing were relatively complex and involved multiple
pieces of software, some which are not open source.&lt;/p&gt;
&lt;p&gt;That said, we do currently have opened up one of these packages, thanks to the
hard work done by &lt;cite&gt;spinal84&lt;/cite&gt;: &lt;a class="reference external" href="https://github.com/spinal84/alsa-policy-enforcement"&gt;https://github.com/spinal84/alsa-policy-enforcement&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="games"&gt;
&lt;h3&gt;Games&lt;/h3&gt;
&lt;p&gt;Maemo Fremantle has lots of fun games packaged, lots of emulators too.
Now that graphics acceleration on the Nokia N900 works quite well, and
acceleration on most Mali devices will work quite well, we're starting to
package some of the Maemo game frameworks and games.&lt;/p&gt;
&lt;p&gt;Keep in mind that a lot of games are already available from the Debian
repositories, and many of them will just work.&lt;/p&gt;
&lt;p&gt;If there's a specific game/app you'd like to see ported, feel free to add it to
this list on the wiki: &lt;a class="reference external" href="https://leste.maemo.org/Status/Games"&gt;https://leste.maemo.org/Status/Games&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The relevant issues are
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/18"&gt;#18&lt;/a&gt; and
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/238"&gt;#238&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Here are some screenshots showing off the work done so far for Mahjong and
Marbles:&lt;/p&gt;
&lt;img alt="" src="/images/mahjong-start-screen.png" style="width: 400px; height: 300px;" /&gt;
&lt;img alt="" src="/images/mahjong-score-screen.png" style="width: 400px; height: 300px;" /&gt;
&lt;img alt="" src="/images/mahjong-game-over-screen.png" style="width: 400px; height: 300px;" /&gt;
&lt;img alt="" src="/images/marbles-start-screen.png" style="width: 400px; height: 300px;" /&gt;
&lt;!-- Games &amp; Emulation --&gt;
&lt;!-- ^^^^^^^^^^^^^^^^^ --&gt;
&lt;!--  --&gt;
&lt;!-- - pvr showoff --&gt;
&lt;!-- -&gt; prboom / freedoom1 --&gt;
&lt;!-- -&gt; pokemon blue --&gt;
&lt;/div&gt;
&lt;div class="section" id="sms-calls"&gt;
&lt;h3&gt;SMS &amp;amp; Calls&lt;/h3&gt;
&lt;p&gt;As part of the &lt;cite&gt;connui&lt;/cite&gt; work, we also tried to make &lt;a class="reference external" href="https://developer.gnome.org/platform-overview/unstable/tech-telepathy.html.en"&gt;telepathy&lt;/a&gt;
(the GNOME messaging backend/daemon) work with ofono. After installing
&lt;cite&gt;telepathy-ring&lt;/cite&gt;, which was already packaged in Debian (!) and adding a &lt;cite&gt;tel&lt;/cite&gt;
account through Empathy &lt;a class="reference external" href="https://blogs.gnome.org/wjjt/2010/07/15/sending-smses-with-empathy-and-telepathy-ring/"&gt;per these instructions&lt;/a&gt;
, we were able to send and receive SMS texts. It was
surprisingly easy. This should work on the Nokia N900, Motorola Droid 4 and
Pinephone too. The UI is not particularly usable yet (it won't show you a new
window if you get a text from a new/unknown number, and it uses gtk3, we need to
add our gtk3 port), but it's a great start!&lt;/p&gt;
&lt;p&gt;One caveat is that the Debian version also trails upstream quite a bit:
&lt;a class="reference external" href="https://git.merproject.org/mer-core/telepathy-ring"&gt;https://git.merproject.org/mer-core/telepathy-ring&lt;/a&gt; - so we'll probably have to
package our own version eventually.&lt;/p&gt;
&lt;p&gt;This should theoretically also work for calls, but the SIM card that was used in
this test doesn't allow for calls.&lt;/p&gt;
&lt;p&gt;Here's a screenshot of the UI in action, sending a SMS to a Maemo Fremantle
device from Maemo Leste, and the receiving a response from the Maemo Fremantle
device:&lt;/p&gt;
&lt;img alt="" src="/images/leste-sms-telepathy-ring-1.png" style="width: 596px; height: 276px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="python-support"&gt;
&lt;h3&gt;Python support&lt;/h3&gt;
&lt;p&gt;Maemo had &lt;a class="reference external" href="http://wiki.maemo.org/PyMaemo"&gt;pretty decent python support&lt;/a&gt; and
we're also planning to bring some of that over pretty soon too, so that we can
port and import more packages from Maemo Fremantle. Maemo Fremantle uses Python
2.5, so there's likely some porting work involved. Most of the Fremantle PyMaemo
work is stored in this repository: &lt;a class="reference external" href="https://vcs.maemo.org/svn/pymaemo/"&gt;https://vcs.maemo.org/svn/pymaemo/&lt;/a&gt; (of which
we also at least locally have a git-svn version).&lt;/p&gt;
&lt;p&gt;We're looking for someone to help us with this, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/260"&gt;issue #260 for more details&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="device-support-kernel-work"&gt;
&lt;h2&gt;Device support &amp;amp; Kernel work&lt;/h2&gt;
&lt;p&gt;There's been exciting progress on the PowerVR (GPU for Nokia N900, Motorola
Droid 4 and other devices) and Mali-400 (GPU for the PinePhone, PineTab, etc)
drivers. Lima (the Mali-400 driver) has been merged to mainline Linux (so it's
included in the kernel by default) and mesa (the open source 3d library) also
merged the lima backend.&lt;/p&gt;
&lt;div class="section" id="powervr"&gt;
&lt;h3&gt;PowerVR&lt;/h3&gt;
&lt;p&gt;Nikolaus was able to get a binary/reference implementation to run on  Linux
5.3-rc4, with some patches and glue code, and basic demos work:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://marc.info/?l=linux-kernel&amp;amp;m=156577301216115&amp;amp;w=2"&gt;https://marc.info/?l=linux-kernel&amp;amp;m=156577301216115&amp;amp;w=2&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;After that, others picked up some of the work and as a result it should now be
easier to test/load PowerVR glue code.&lt;/p&gt;
&lt;p&gt;Given that basic demos seem to work, we should attempt to load the powervr
module with a matching binary/reference implementation for the Droid 4, and hope
that it loads. Getting acceleration in X11 should then be possible (as
documented previously) using &lt;a class="reference external" href="https://github.com/TexasInstruments/dri3wsegl"&gt;dri3wsegl&lt;/a&gt;. And perhaps we can move the
Nokia N900 to using DRM instead too, at some point.&lt;/p&gt;
&lt;p&gt;Next steps are documented in the repository, here:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://github.com/openpvrsgx-devgroup/linux_openpvrsgx/blob/letux/latest-pvr/drivers/staging/pvr/TODO"&gt;https://github.com/openpvrsgx-devgroup/linux_openpvrsgx/blob/letux/latest-pvr/drivers/staging/pvr/TODO&lt;/a&gt;&lt;/blockquote&gt;
&lt;/div&gt;
&lt;div class="section" id="lima"&gt;
&lt;h3&gt;Lima&lt;/h3&gt;
&lt;p&gt;There has been quite some activity with Lima, and after being able to run
&lt;a class="reference external" href="https://www.youtube.com/watch?v=ihCVsaEMNzY"&gt;hildon-desktop with lima back in 2018&lt;/a&gt;, we expect the performance and
stability to be a lot better now. Once we &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/214"&gt;fix a bug in hildon-desktop&lt;/a&gt;, we will record demos
of Maemo Leste on the PinePhone and PineTab using the Lima driver.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;p&gt;Recently, the radio transmitter on the Nokia N900 started to work, and &lt;a class="reference external" href="https://leste.maemo.org/Nokia_N900#Status"&gt;that is
now reflected in the Nokia N900 status page&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We also enabled various features in a newer kernel:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Vibration driver is now enabled, and can be tested using &lt;cite&gt;fftest&lt;/cite&gt;.&lt;/li&gt;
&lt;li&gt;iptables/nftables options have been enabled to allow for nat to share phone
connections with PCs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The stable release channels also got all the latest PowerVR work, so a simple
&lt;cite&gt;apt update &amp;amp;&amp;amp; apt upgrade&lt;/cite&gt; should land users with the fastest PowerVR bits.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="motorola-droid-4"&gt;
&lt;h3&gt;Motorola Droid 4&lt;/h3&gt;
&lt;p&gt;The Motorola Droid 4 modem has been working in mainline for a while, but
recently some more fixes made the modem work decently with a work-in-progress
ofono driver. It's now possible to make calls, send SMS, receive SMS and use
internet connections. We aim to package a newer kernel with these fixes and an
ofono with enabled backend when we find some time (or when someone steps up to
do this...)&lt;/p&gt;
&lt;p&gt;Additionally, most of the patches on top of mainline for the Motorola Droid 4
have been merged, reducing potential maintenance burdens, and making it easier
for others to build their own kernel (previously finding the right patches and
the right versions of patches was a little tricky)&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone-pinetab"&gt;
&lt;h3&gt;PinePhone &amp;amp; PineTab&lt;/h3&gt;
&lt;p&gt;As previously discussed, Pine64 is creating a &lt;a class="reference external" href="https://www.pine64.org/pinephone/"&gt;Phone&lt;/a&gt; meant to run FOSS mobile platforms, for
the community, by the community. They are also &lt;a class="reference external" href="https://www.pine64.org/pinetab/"&gt;making a Tablet&lt;/a&gt; (which they have also kindly given to us).&lt;/p&gt;
&lt;p&gt;They aim to produce the actual phone early 2020 and have generated some press
for Maemo Leste:
&lt;a class="reference external" href="https://liliputing.com/2019/06/pinephone-149-linux-smartphone-could-support-ubuntu-sailfish-maemo-luneos-and-more.html"&gt;https://liliputing.com/2019/06/pinephone-149-linux-smartphone-could-support-ubuntu-sailfish-maemo-luneos-and-more.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Through collaboration and the already amazing &lt;a class="reference external" href="https://linux-sunxi.org"&gt;linux-sunxi&lt;/a&gt; project we have device trees and kernels that work
quite well on the &amp;quot;Don't be evil&amp;quot; devkit:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://gitlab.com/pine64-org/linux/wikis/Don't-be-evil-devkit"&gt;https://gitlab.com/pine64-org/linux/wikis/Don't-be-evil-devkit&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;Back in April we made a video showing (64 bit arm) Maemo Leste running on the
devkit, without hardware acceleration (apologies for the poor video quality,
we'll do a better one soon):&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/JRjhuAC6jo4"
frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;p&gt;There are also &lt;a class="reference external" href="https://maedevu.maemo.org/images/pinephone-dontbeevil/"&gt;images available for download&lt;/a&gt; (probably won't do
you much good unless you have a devkit - and they didn't make that many). We
also have a &lt;a class="reference external" href="https://leste.maemo.org/Pine64_Anakin_Devkit"&gt;PinePhone device page&lt;/a&gt; documenting the current kernel
support status.&lt;/p&gt;
&lt;p&gt;In early September we hope to pick up a PinePhone prototype. Hopefully we'll
soon also be able to get some images for the PineTab, as we believe Maemo Leste
should work quite well on tablets too.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="infrastructure-distribution"&gt;
&lt;h2&gt;Infrastructure &amp;amp; Distribution&lt;/h2&gt;
&lt;p&gt;We have migrated our Mediawiki instance (&lt;a class="reference external" href="https://leste.maemo.org"&gt;https://leste.maemo.org&lt;/a&gt;) and our
Jenkins (&lt;a class="reference external" href="https://phoenix.maemo.org"&gt;https://phoenix.maemo.org&lt;/a&gt;) to a new machine with faster storage and
more RAM.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/235"&gt;armel builds have been disabled&lt;/a&gt; , as we currently have
no devices that need armel. We might enable armel builds again when we need
them.&lt;/p&gt;
&lt;p&gt;We've also been working on migrating the Devuan Beowulf (Debian Buster), most
of the work is just porting packages to a newer &lt;cite&gt;debhelper&lt;/cite&gt; version, and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/234"&gt;help
here would be much appreciated&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="community-documentation"&gt;
&lt;h2&gt;Community &amp;amp; Documentation&lt;/h2&gt;
&lt;p&gt;We've been continually but slowly been documenting &lt;a class="reference external" href="https://leste.maemo.org/Category:Device"&gt;device support status&lt;/a&gt; and the &lt;a class="reference external" href="https://leste.maemo.org/Status"&gt;status of the various core
components&lt;/a&gt;. There
is still a lot to be done to improve the wiki, though.&lt;/p&gt;
&lt;p&gt;Next on the list will be a tutorial on how to start developing with Maemo Leste,
which has been requested several times.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="closing-notes-direction"&gt;
&lt;h2&gt;Closing notes / Direction&lt;/h2&gt;
&lt;p&gt;While we could soon make the N900 Alpha release, we've shifted gears a little
more to get the cellular code and UI in place. One reason for this is that we
hope to have a usable phone, SMS and contact application ready before the
Pinephone goes on sale. We'd love for Maemo Leste to be developer (and maybe
FOSS-enthousiast) ready when the PinePhone is ready.&lt;/p&gt;
&lt;p&gt;What that means is that we will need the following in place:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;2G/3G/LTE data connections working&lt;/li&gt;
&lt;li&gt;Usable (ish) interface for SMS and calls.&lt;/li&gt;
&lt;li&gt;Usable (ish) contacts interface&lt;/li&gt;
&lt;li&gt;(Somewhat sane) audio routing - switching between headphone, earpiece and
speakers.&lt;/li&gt;
&lt;li&gt;Some contacts UI&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;It would be great if we could also have:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Qt5 and Gtk3 port ready&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900 and Motorola Droid 4 units available to interested
developers&lt;/strong&gt;, so if you are interested in helping out but have trouble acquiring
a device, let us know.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay up to date, ask questions and/or
help out. Another great way to get in touch is to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="pinephone"></category><category term="pinetab"></category><category term="n900"></category><category term="droid4"></category><category term="powervr"></category><category term="lima"></category><category term="cellular"></category><category term="calls"></category><category term="sms"></category><category term="games"></category></entry><entry><title>Maemo Leste - Eight Update (January + February) 2019</title><link href="https://maemo-leste.github.io/maemo-leste-eight-update-january-february-2019.html" rel="alternate"></link><published>2019-03-11T20:00:00+01:00</published><updated>2019-03-11T20:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2019-03-11:/maemo-leste-eight-update-january-february-2019.html</id><summary type="html">&lt;p&gt;It's been two months since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-seventh-update-december-2018.html"&gt;seventh update&lt;/a&gt;
and there's a lot to talk about!&lt;/p&gt;
&lt;p&gt;Let's start off with a gentle reminder - don't forget that we have a mailing list -
&lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt;. Be sure
to subscribe for updates, questions and development. The mailing list archives
are now also functional:
&lt;a class="reference external" href="https://lists.dyne.org/lurker/mindex/maemo-leste&amp;#64;19700101.000000.00000000.en.html"&gt;https …&lt;/a&gt;&lt;/p&gt;</summary><content type="html">&lt;p&gt;It's been two months since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-seventh-update-december-2018.html"&gt;seventh update&lt;/a&gt;
and there's a lot to talk about!&lt;/p&gt;
&lt;p&gt;Let's start off with a gentle reminder - don't forget that we have a mailing list -
&lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt;. Be sure
to subscribe for updates, questions and development. The mailing list archives
are now also functional:
&lt;a class="reference external" href="https://lists.dyne.org/lurker/mindex/maemo-leste&amp;#64;19700101.000000.00000000.en.html"&gt;https://lists.dyne.org/lurker/mindex/maemo-leste&amp;#64;19700101.000000.00000000.en.html&lt;/a&gt;&lt;/p&gt;
&lt;div class="section" id="software-additions"&gt;
&lt;h2&gt;Software additions&lt;/h2&gt;
&lt;p&gt;There have been various additions to our userspace, although most of the work in
the last two months has been focused on fixing bugs and driver/kernel support.&lt;/p&gt;
&lt;div class="section" id="connui-cellular"&gt;
&lt;h3&gt;connui-cellular&lt;/h3&gt;
&lt;p&gt;freemangordon is still steadily working on connui, which is one of the core
components of our modem support:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/connui-common"&gt;https://github.com/maemo-leste/connui-common&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/connui-cellular"&gt;https://github.com/maemo-leste/connui-cellular&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Once a few other things are sorted (integration with &lt;a class="reference external" href="https://telepathy.freedesktop.org/"&gt;Telepathy&lt;/a&gt;) we will begin work on the &lt;cite&gt;icd2&lt;/cite&gt; oFono
plugin, which will provide the actual connectivity part.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/196"&gt;https://github.com/maemo-leste/bugtracker/issues/196&lt;/a&gt;
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/195"&gt;https://github.com/maemo-leste/bugtracker/issues/195&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="powervr"&gt;
&lt;h3&gt;PowerVR&lt;/h3&gt;
&lt;p&gt;There has been a lot of movement on the PowerVR side (the 3D acceleration unit/
GPU that a number of our supported devices - such as N900 and the Droid 4 - use).&lt;/p&gt;
&lt;p&gt;Developers from various platforms and devices are now trying to work on a single
PowerVR patchset for mainline to make it easier to support new devices, and
eventually attempt to mainline various kernel components. Since a couple of
weeks, there is now a Github repository that contains recent kernel sources with
some form of PowerVR support: &lt;a class="reference external" href="https://github.com/openpvrsgx-devgroup"&gt;https://github.com/openpvrsgx-devgroup&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;A mailing list for this effort is still being worked out, but the initial
message (over a year ago) can be viewed here:
&lt;a class="reference external" href="https://www.pyra-handheld.com/pipermail/kernel/2018-January/002315.html"&gt;https://www.pyra-handheld.com/pipermail/kernel/2018-January/002315.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;And the recent continuation can be read here:
&lt;a class="reference external" href="https://www.pyra-handheld.com/pipermail/kernel/2019-February/003094.html"&gt;https://www.pyra-handheld.com/pipermail/kernel/2019-February/003094.html&lt;/a&gt; (And in
thread form
&lt;a class="reference external" href="https://www.pyra-handheld.com/pipermail/kernel/2019-February/thread.html#3094"&gt;https://www.pyra-handheld.com/pipermail/kernel/2019-February/thread.html#3094&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Hopefully there will soon be a base to support PowerVR on &lt;cite&gt;omap&lt;/cite&gt;, &lt;cite&gt;sunxi&lt;/cite&gt; and
&lt;cite&gt;exynos&lt;/cite&gt; platforms.&lt;/p&gt;
&lt;p&gt;Additionally, &lt;cite&gt;spinal84&lt;/cite&gt; has, through truly admirable perseverance, figured out
how to work around the PowerVR hangs and general slowness of Maemo Leste on the
Nokia N900 and we've been working on &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/218"&gt;ensuring those fixes end up in the alpha
(#218)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can see a video of PowerVR on Maemo Leste with better performance here:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/M28Ojvg9i9Q"
frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div class="section" id="generic-64-bit-arm-rootfs"&gt;
&lt;h3&gt;Generic 64 bit ARM rootfs&lt;/h3&gt;
&lt;p&gt;There is now a generic root filesystem image for 64 bit ARM devices available,
see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/205"&gt;#205&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://maedevu.maemo.org/images/arm64-generic/"&gt;https://maedevu.maemo.org/images/arm64-generic/&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;This is useful for adding support for a new arm64 device. Previously we had to
take the Raspberry Pi 3 image and remove device specific packages/drivers.
The PineTablet and PinePhone will probably make some use of this generic rootfs.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="device-support"&gt;
&lt;h2&gt;Device support&lt;/h2&gt;
&lt;p&gt;The last two months have been particularly exciting for device support. Both the
Nokia N900 and the Motorola Droid 4 now ship with Linux 5.0 with some additional
patches.&lt;/p&gt;
&lt;div class="section" id="nokia-n900"&gt;
&lt;h3&gt;Nokia N900&lt;/h3&gt;
&lt;div class="section" id="easier-installation"&gt;
&lt;h4&gt;Easier installation&lt;/h4&gt;
&lt;p&gt;For the Nokia N900, a new (and easier) way to install Maemo Leste is available
and &lt;a class="reference external" href="https://leste.maemo.org/Nokia_N900#If_you_don.27t_want_to_use.2Finstall_Fremantle.2C_or_want_to_install_quickly"&gt;documented on our wiki&lt;/a&gt; -
it is aimed only for users who have no intention of running the old Maemo
(Fremantle). Suggested improvements are welcome, please add them to this ticket:
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/211"&gt;Provide a way to flash leste (or u-boot) directly&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Newer images for the Nokia N900 are also available:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://maedevu.maemo.org/images/n900/"&gt;https://maedevu.maemo.org/images/n900/&lt;/a&gt;&lt;/blockquote&gt;
&lt;/div&gt;
&lt;div class="section" id="funroll-all-loops"&gt;
&lt;h4&gt;-funroll-all-loops&lt;/h4&gt;
&lt;p&gt;And a performance optimised clutter and hildon-desktop are (temporarily)
available here, kindly provided by &lt;cite&gt;spinal84&lt;/cite&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://maedevu.maemo.org/images/n900/hd-temporary/"&gt;https://maedevu.maemo.org/images/n900/hd-temporary/&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Before you install this optimised clutter and hildon-desktop, ensure that your
installation is up to date, either by installing the latest image and upgrading
or just running apt update &amp;amp;&amp;amp; apt upgrade!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;You can install these packages by downloading both, and then running:&lt;/p&gt;
&lt;blockquote&gt;
dpkg -i hildon-desktop_2.2.160_armhf.deb libclutter-0.8-0_0.8.2-0maemo68_armhf.deb&lt;/blockquote&gt;
&lt;p&gt;Subsequent updates might replace your optimised hildon-desktop again, but you
can reinstall it with the same command.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="linux-5-0"&gt;
&lt;h4&gt;Linux 5.0&lt;/h4&gt;
&lt;p&gt;Newer kernel images for the Nokia N900 are also available, but you will have to
make sure that your &lt;cite&gt;/boot&lt;/cite&gt; partition is an &lt;cite&gt;ext2&lt;/cite&gt; filesystem, older Maemo Leste
images shipped with &lt;cite&gt;/boot&lt;/cite&gt; as a &lt;cite&gt;vfat&lt;/cite&gt; partition. You can copy all the files
in &lt;cite&gt;/boot&lt;/cite&gt; to a temporary location, and then call &lt;cite&gt;mkfs.ext2&lt;/cite&gt; on the boot
partition and finally copy the files back. Here is a screenshot of Maemo Leste
on the Nokia N900 using Linux 5.0:&lt;/p&gt;
&lt;img alt="" src="/images/leste-n900-linux-5.0.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="faster-charging"&gt;
&lt;h4&gt;Faster charging&lt;/h4&gt;
&lt;p&gt;The N900 will now charge using up to 950mAh, instead of the previous 650mAh, see
&lt;a class="reference external" href="https://github.com/maemo-leste/n9xx-linux/pull/4"&gt;this pull request for n9xx-linux&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="rebooting-who-does-that-anyway"&gt;
&lt;h4&gt;rebooting, who does that anyway?&lt;/h4&gt;
&lt;p&gt;All known problems regarding device shutdown and reboot have been fixed:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/125"&gt;N900: Device Does Not Boot After Shutdown From System Menu Until Battery Removed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/85"&gt;Not possible to shutdown the system (N900)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="lookenpeepers-1"&gt;
&lt;h4&gt;&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Blinkenlights"&gt;lookenpeepers&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;The LED patterns on the Nokia N900 should now also work just like Fremantle, see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/186"&gt;#186&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="motorola-droid-4"&gt;
&lt;h3&gt;Motorola Droid 4&lt;/h3&gt;
&lt;p&gt;The Motorola Droid has seen some love - the most significant changes are way
better kernel and driver support. The device is still not particularly useful
for day-to-day usage due to the lack of PowerVR acceleration (but we'll get
there). Experimental modem support is now in place, as well as audio and GPS
support. This is the result of years of hard work from various people in the
FOSS community, and it's amazing how well supported the device has become.&lt;/p&gt;
&lt;p&gt;The Droid 4 is now also on Linux 5.0:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-linux-5.0.png" style="width: 613px; height: 360px;" /&gt;
&lt;div class="section" id="giving-android-the-kexecboot"&gt;
&lt;h4&gt;Giving Android the kexecboot&lt;/h4&gt;
&lt;p&gt;It should now be a lot easier to install Maemo Leste, thanks to all the work
done by Tony Lindgren on &lt;a class="reference external" href="https://github.com/tmlind/droid4-kexecboot"&gt;kexecboot&lt;/a&gt;. The installation process is
documented on our wiki:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://leste.maemo.org/Motorola_Droid_4#Installation_using_kexecboot"&gt;https://leste.maemo.org/Motorola_Droid_4#Installation_using_kexecboot&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;Make sure that you use the latest images, since they have been modified to work
well with kexecboot:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://maedevu.maemo.org/images/droid4/"&gt;https://maedevu.maemo.org/images/droid4/&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;The latest images also contain a Debian kernel package for the kernel (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/220"&gt;see #220&lt;/a&gt;:
&lt;cite&gt;linux-image-droid4&lt;/cite&gt; (currently at version &lt;cite&gt;5.0.0+1m7.1_armhf.deb&lt;/cite&gt;), and the source
can be found here: &lt;a class="reference external" href="https://github.com/maemo-leste/droid4-linux"&gt;https://github.com/maemo-leste/droid4-linux&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/206"&gt;https://github.com/maemo-leste/bugtracker/issues/206&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="audio"&gt;
&lt;h4&gt;Audio&lt;/h4&gt;
&lt;p&gt;Audio works now too, including various switches to control the modem and echo
cancellation:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-alsamixer.png" style="width: 613px; height: 360px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="ofono-support"&gt;
&lt;h4&gt;oFono support&lt;/h4&gt;
&lt;p&gt;Pavel Machek has been working on &lt;a class="reference external" href="https://github.com/pavelmachek/ofono/tree/d4"&gt;oFono support for the Droid 4&lt;/a&gt;, and we will attempt to package
that work for the Droid 4 soon. Then we should hopefully have a working UI test
voice calls.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="random-screenshot"&gt;
&lt;h4&gt;Random screenshot&lt;/h4&gt;
&lt;p&gt;The Droid4 is generally more responsive than the Nokia N900 when it comes to CPU
and IO bound operations, but this is not yet visible due to everything being
rendered through a 3D pipeline on the cpu. Regardless, here's a screenshot with
various applications running on the Droid 4:&lt;/p&gt;
&lt;img alt="" src="/images/droid4-various-apps.png" style="width: 613px; height: 360px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="pinephone-anakin-devkit"&gt;
&lt;h3&gt;PinePhone &amp;quot;Anakin&amp;quot; Devkit&lt;/h3&gt;
&lt;p&gt;Pine64 PinePhone first development kit was sent to us some time before FOSDEM,
and it took quite some time to test out various patch sets and fixes to these
patch sets, but now the display works well, and the lima driver also works. The
lima driver is still experimental, and hildon-desktop tends to crash under lima,
but we'll get to solving those issues eventually.&lt;/p&gt;
&lt;p&gt;At FOSDEM, the UBPorts people figured out how to make the touchscreen work as
well, so we will probably release an image some time soon for the devkit, as it
should quite closely match the upcoming PineTab.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="community"&gt;
&lt;h2&gt;Community&lt;/h2&gt;
&lt;div class="section" id="devuan-conference"&gt;
&lt;h3&gt;Devuan Conference&lt;/h3&gt;
&lt;p&gt;There is a Devuan (the distribution that Maemo Leste is based on) conference in
Amsterdam in April, so if you're around, it might be fun checking it out:
&lt;a class="reference external" href="https://devuan.org/os/debian-fork/d1conf-announce-20190119"&gt;https://devuan.org/os/debian-fork/d1conf-announce-20190119&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="fosdem"&gt;
&lt;h3&gt;FOSDEM&lt;/h3&gt;
&lt;p&gt;FOSDEM 2019 was a lot of fun, and &lt;a class="reference external" href="https://fosdem.org/2019/schedule/event/maemo_leste_mobile/"&gt;we gave a lightning talk:&lt;/a&gt;&lt;/p&gt;
&lt;div class="section" id="this-video-is-optimised-for-800-480-on-firefox-3-5"&gt;
&lt;h4&gt;This video is optimised for 800*480 on Firefox 3.5&lt;/h4&gt;
&lt;video width="750" height="441" controls&gt;
  &lt;source src="https://video.fosdem.org/2019/H.2215/maemo_leste_mobile.webm" type="video/webm"&gt;
  &lt;p&gt;Your browser doesn't support HTML5 video. Here is a &lt;a
  href="https://video.fosdem.org/2019/H.2215/maemo_leste_mobile.webm"&gt;link
  to the video&lt;/a&gt; instead.&lt;/p&gt;
&lt;/video&gt;&lt;p&gt;The slides can be found here:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://maedevu.maemo.org/media/fosdem-2019-maemo-leste.pdf"&gt;https://maedevu.maemo.org/media/fosdem-2019-maemo-leste.pdf&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;After the talk, we chatted for over an hour in the hall next to the Lightning
Talks room. Several postmarketOS developers showed up, as did old Nokia
employees who actually worked on Maemo Fremantle! The people from Necunos also
showed up and demonstrated their prototype NC_1 board.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="mobile-humans-and-martians"&gt;
&lt;h4&gt;Mobile humans and martians&lt;/h4&gt;
&lt;p&gt;Also present at FOSDEM were people from PostmarketOS, UBPorts and KDE Plasma,
and we got together for a picture:&lt;/p&gt;
&lt;img alt="" src="/images/fosdem-meetup.jpg" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Additionally, various community hardware vendors were also present. The Pine64
community had a stand, where they presented their first phase &lt;a class="reference external" href="http://wiki.pine64.org/index.php/Project_Anakin"&gt;Anakin devkit&lt;/a&gt; and the &lt;a class="reference external" href="http://wiki.pine64.org/index.php/Project_Don%27t_be_evil"&gt;&amp;quot;Don't be evil&amp;quot;&lt;/a&gt; second phase
devkit. Maemo Leste will receive several &amp;quot;Don't be evil&amp;quot; devkits somewhere this
months, when they start shipping. In fact, there is already a placeholder for
Maemo Leste OS releases:
&lt;a class="reference external" href="http://wiki.pine64.org/index.php/Project_Don%27t_be_evil#Maemo_OS_build"&gt;http://wiki.pine64.org/index.php/Project_Don%27t_be_evil#Maemo_OS_build&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Some of us also met with the Necunos team and discussed some more details of
their upcoming device, of which Maemo Leste will also receive a devkit.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="artwork"&gt;
&lt;h3&gt;Artwork&lt;/h3&gt;
&lt;p&gt;A member of &lt;a class="reference external" href="http://talk.maemo.org"&gt;talk.maemo.org&lt;/a&gt; created this &lt;a class="reference external" href="https://talk.maemo.org/showthread.php?t=100648&amp;amp;highlight=maemo+legend"&gt;Crest of
Maemo&lt;/a&gt;
and offered to send it our way!&lt;/p&gt;
&lt;img alt="" src="/images/crestofmaemo.jpg" style="width: 688px; height: 866px;" /&gt;
&lt;p&gt;A loving fan has created this large reproduction of the Nokia N900,
including &lt;cite&gt;hildon-desktop&lt;/cite&gt;, the &lt;cite&gt;osso-xterm&lt;/cite&gt; application, the status applets and
even real backlight! The metal theme looks quite good, too.&lt;/p&gt;
&lt;img alt="" src="/images/n900-giant-reproduction.jpg" style="width: 600px; height: 400px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="some-screenshots"&gt;
&lt;h3&gt;Some screenshots&lt;/h3&gt;
&lt;p&gt;The next couple of updates will probably be accompanied with screenshots showing
off some software straight from Debian repositories running on Maemo Leste, to
show off how many applications are already available.&lt;/p&gt;
&lt;div class="section" id="cute-theme"&gt;
&lt;h4&gt;Cute theme?&lt;/h4&gt;
&lt;p&gt;Qt5 applications can be started with different themes, this is Wireshark with
the default theme:&lt;/p&gt;
&lt;img alt="" src="/images/wireshark-leste.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;And this is wireshark with our (work in progress) Qt5 theme:&lt;/p&gt;
&lt;img alt="" src="/images/wireshark-leste-style-wip.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Wireshark is not particularly usable on such a small resolution regardless, but
at least the theme fits - usability aside.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="gtk"&gt;
&lt;h4&gt;GTK&lt;/h4&gt;
&lt;p&gt;Other applications from Debian are also quite usable, without any recompilation
whatsoever. This is GMPC, the Gnome frontend of MPD, the music player daemon.
(These applications are not &amp;quot;hildonised&amp;quot;, that is, they are not optimised for
Maemo Leste per se, but it does goes to show that this might not always be
necessary either):&lt;/p&gt;
&lt;img alt="" src="/images/gmpc.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;And here are it's initial assistant dialogs:&lt;/p&gt;
&lt;img alt="" src="/images/gmpc-assistant.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/gmpc-assistant-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;In this case, the virtual keyboard is also integrated in standard Debian gtk
applications, such as netsurf, a very lightweight browser:&lt;/p&gt;
&lt;img alt="" src="/images/netsurf-vkb.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;And the resulting web page render:&lt;/p&gt;
&lt;img alt="" src="/images/netsurf-maemo-leste.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="what-is-next"&gt;
&lt;h2&gt;What is next?&lt;/h2&gt;
&lt;p&gt;The last missing item before we release an Alpha is to add support for
keyboard slide monitoring to either &lt;cite&gt;mce&lt;/cite&gt; or &lt;cite&gt;ke-recv-extra&lt;/cite&gt;, so that the slide
value for the keyboard is set properly in gconf. This is required to have the
virtual keyboard behave on phones with physical keyboards: if the keyboard is
opened, then we only want to present special symbols not present on the
keyboard, if the keyboard is closed, then we may want to present the full
virtual keyboard instead.&lt;/p&gt;
&lt;p&gt;Other than that, it seems like we've reached almost all of our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/4"&gt;Alpha goals&lt;/a&gt;,
to the point that we might actually issue the first Alpha release soon!&lt;/p&gt;
&lt;p&gt;We may end up switching to Devuan Beowulf (Debian Buster) before or after the
Alpha, it depends on how time it takes to port to the newer release, as well as
the amount of bugs introduced by doing so.&lt;/p&gt;
&lt;p&gt;We will likely also have one or two days of downtime on our Jenkins build
service while we migrate it to a more powerful server to speed up build times
and ensure that we will not run out of storage any time soon.&lt;/p&gt;
&lt;p&gt;Personally, I hope that we will be able to get decent support for modems in
place soon: with &lt;cite&gt;connui-cellular&lt;/cite&gt; well on underway it may soon be time to start
working on the &lt;cite&gt;oFono&lt;/cite&gt; plugin for &lt;cite&gt;icd2&lt;/cite&gt;. At least the Nokia N900 and Droid 4
now also have a working modem and (mostly) working oFono support, so that should
be promising.&lt;/p&gt;
&lt;p&gt;Hopefully we'll also get PowerVR support for the Droid 4 hammered out soon, that
will make the device a lot more usable.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We have several Nokia N900 and Motorola Droid 4 units available to interested
developers&lt;/strong&gt;, so if you are interested in helping out but have trouble acquiring
a device, let us know.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay up to date, ask questions and/or
help out. Another great way to get in touch is to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="droid4"></category><category term="n900"></category><category term="linux"></category><category term="modem"></category><category term="powervr"></category><category term="lima"></category><category term="allwinner"></category><category term="fosdem"></category></entry><entry><title>Maemo Leste - Seventh Update (December) 2018</title><link href="https://maemo-leste.github.io/maemo-leste-seventh-update-december-2018.html" rel="alternate"></link><published>2019-01-17T20:00:00+01:00</published><updated>2019-01-17T20:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2019-01-17:/maemo-leste-seventh-update-december-2018.html</id><summary type="html">&lt;p&gt;It's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-sixth-update-november-2018.html"&gt;sixth update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;p&gt;First of all, sorry for the delay in the update, it's overdue by almost two
weeks. Second of all, if you missed our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-lima-works.html"&gt;lima update&lt;/a&gt;, make sure to check that out!&lt;/p&gt;
&lt;div class="section" id="fosdem"&gt;
&lt;h2&gt;FOSDEM&lt;/h2&gt;
&lt;p&gt;There will …&lt;/p&gt;&lt;/div&gt;</summary><content type="html">&lt;p&gt;It's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-sixth-update-november-2018.html"&gt;sixth update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;p&gt;First of all, sorry for the delay in the update, it's overdue by almost two
weeks. Second of all, if you missed our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-lima-works.html"&gt;lima update&lt;/a&gt;, make sure to check that out!&lt;/p&gt;
&lt;div class="section" id="fosdem"&gt;
&lt;h2&gt;FOSDEM&lt;/h2&gt;
&lt;p&gt;There will be a lightning talk about &lt;a class="reference external" href="https://fosdem.org/2019/schedule/event/maemo_leste_mobile/"&gt;Maemo Leste at FOSDEM 2019&lt;/a&gt; - we will try our
best to bring a couple of demo devices and show off Maemo Leste after the
lightning talk!&lt;/p&gt;
&lt;div class="section" id="pine64"&gt;
&lt;h3&gt;Pine64&lt;/h3&gt;
&lt;p&gt;The Pine64 community will have a stand at FOSDEM, where they will
show their prototypes of the PineTablet and PinePhone - they might even be able
to show off Maemo Leste running on their prototypes.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="necunos-nc-1"&gt;
&lt;h3&gt;Necunos NC_1&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="https://necunos.com/news/necunos-nc_1-and_ne_1-press-release/"&gt;Necunos NC_1 and NE_1&lt;/a&gt; has launched,
and &lt;a class="reference external" href="https://necunos.com/shop/#!/Necunos-NC_1/p/127507133/category=0"&gt;can be ordered with Maemo Leste preinstalled&lt;/a&gt; - at least,
if we manage to have a usable image by the time they plan to ship the devices -
we don't have Maemo Leste running on their device yet.&lt;/p&gt;
&lt;p&gt;Necunos has told us that we will probably get a Necunos development kit at FOSDEM.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="aarch64-images"&gt;
&lt;h2&gt;Aarch64 images!&lt;/h2&gt;
&lt;p&gt;The first aarch64 images are now available, for the raspberry pi 3. They still
lack hardware acceleration, but almost all of the (essential) packages for Maemo
Leste are now also working/built for 64 bit arm:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://maedevu.maemo.org/images/raspi3-64bit/20181219/"&gt;https://maedevu.maemo.org/images/raspi3-64bit/20181219/&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;And the aarch64 packages are confirmed to also work on other devices - like the
Pine64 Anakin Devkit!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="motorola-droid-4-improvements"&gt;
&lt;h2&gt;Motorola Droid 4 improvements&lt;/h2&gt;
&lt;p&gt;The Linux kernel developers (little elves) have been working hard on improving
&lt;a class="reference external" href="https://lkml.org/lkml/2018/12/16/231"&gt;modem support for the Motorola Droid 4&lt;/a&gt;, which should make ofono and/or
modemmanager integration way easier, which is good news!
We're tracking &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/150"&gt;ofono support for the Droid 4&lt;/a&gt; in this issue.&lt;/p&gt;
&lt;p&gt;And they also report that during &lt;a class="reference external" href="https://lkml.org/lkml/2018/12/28/429"&gt;idle the phone battery life might be almost 5
days&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We have contributed a patch that should make the charger events on the Droid 4
fast. Before, the events were not being sent by the kernel, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/206"&gt;Issue #206&lt;/a&gt;. (&lt;a class="reference external" href="https://patchwork.kernel.org/patch/10744035/"&gt;Patch here&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;PowerVR support for the Droid 4 should make the device quite usable, so that
should perhaps soon become a priority. We have a couple of spare Droid 4 devices
now, so if you're a capable developer and want to help out with kernel or
userspace development, but don't have a device, we can perhaps arrange to get you
one.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900-improvements"&gt;
&lt;h2&gt;Nokia N900 improvements&lt;/h2&gt;
&lt;p&gt;&lt;cite&gt;spinal84&lt;/cite&gt; and &lt;cite&gt;freemangordon&lt;/cite&gt; have made some great progress towards making Maemo
Leste on the N900 feel more like Maemo Fremantle - in a good way. Graphics are
more smooth, charging detection responds almost instantaneously now, and the RGB
led works like you're used to in Fremantle.&lt;/p&gt;
&lt;p&gt;There are newer images, even though those are likely already a bit outdated:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://maedevu.maemo.org/images/n900/20181222/"&gt;https://maedevu.maemo.org/images/n900/20181222/&lt;/a&gt;&lt;/blockquote&gt;
&lt;div class="section" id="battery-improvements"&gt;
&lt;h3&gt;Battery improvements&lt;/h3&gt;
&lt;p&gt;spinal84 has been working on fixing up the battery/power parts of the N900, and
he has succeeded. With this &lt;a class="reference external" href="https://github.com/maemo-leste/status-area-applet-battery/pull/4"&gt;status-area-applet-battery pull request&lt;/a&gt; and this
&lt;a class="reference external" href="https://github.com/maemo-leste/upower/pull/3"&gt;upower pull request&lt;/a&gt;, state
changes in charging are now picked up instantly. (Fixes &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/67"&gt;#67&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/70"&gt;#70&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/167"&gt;#167&lt;/a&gt;)&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="rgb-led-support"&gt;
&lt;h3&gt;RGB LED support&lt;/h3&gt;
&lt;p&gt;This &lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/2"&gt;mce pull request&lt;/a&gt; makes the
RGB led on the N900 usable, and when the right patterns are enabled from
the Settings, the LED patterns should start to work. Soon we'll be able to close
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/186"&gt;issue #186&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="rebooting-shutdown-watchdog"&gt;
&lt;h3&gt;Rebooting, Shutdown, Watchdog&lt;/h3&gt;
&lt;p&gt;We've been working hard on fixing two of the last few remaining alpha tickets:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/125"&gt;N900: Device Does Not Boot After Shutdown From System Menu Until Battery Removed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/85"&gt;Not possible to shutdown the system (N900)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Various fixes to dsme made a difference, and in some cases, now allow for clean
shutdown and reboot. However, more work seems to be required to make it always
work reliably. The PowerVR module for the current kernel also has some bugs that
prevent clean shutdown.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/dsme/commit/8831309eebb232fbd7d6e678f7803e3177cdd458"&gt;https://github.com/maemo-leste/dsme/commit/8831309eebb232fbd7d6e678f7803e3177cdd458&lt;/a&gt;
&lt;a class="reference external" href="https://github.com/maemo-leste/dsme/commit/2d4db8f5e14bc0f131ee5402915188b01968f8e0"&gt;https://github.com/maemo-leste/dsme/commit/2d4db8f5e14bc0f131ee5402915188b01968f8e0&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On the subject of PowerVR...&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="powervr-gpu"&gt;
&lt;h3&gt;PowerVR/GPU&lt;/h3&gt;
&lt;p&gt;A lot of time has been spent trying to figure out why PowerVR hangs for minutes
on startup. In this process, &lt;cite&gt;freemangordon&lt;/cite&gt; wrote a patch to bring the PowerVR up
to its proper clock speed, which greatly improves the performance of PowerVR in
general, but this unfortunately does not fix the slowness/hang on startup.&lt;/p&gt;
&lt;p&gt;More investigation will be required to fix the temporary hang on start.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="sms-and-voice-calls"&gt;
&lt;h3&gt;SMS and Voice calls&lt;/h3&gt;
&lt;p&gt;unicsy_demo, a tool to test and use various modem functionality (amongst other
things) &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/174"&gt;has now been packaged (#174)&lt;/a&gt;, and success looks like
this:&lt;/p&gt;
&lt;img alt="" src="/images/n900-ofone-initial.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Incoming SMS works (sending SMS works as well):&lt;/p&gt;
&lt;img alt="" src="/images/n900-ofone-incoming-sms.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Working voice calls is still work in progress, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/77"&gt;Issue #77&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="g-3g-and-4g-data"&gt;
&lt;h3&gt;2G, 3G and 4G data&lt;/h3&gt;
&lt;p&gt;&lt;cite&gt;freemangordon&lt;/cite&gt; has been doing more work on connui, to make it feasible to
implement the ofono/data plugin for icd2. Apart from a plugin icd2, there's more
work required, as we'll have to implement or replace various dbus interfaces
that Fremantle offers.&lt;/p&gt;
&lt;p&gt;The current work can be found here:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/connui-cellular"&gt;https://github.com/maemo-leste/connui-cellular&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/connui-common/commits/master"&gt;https://github.com/maemo-leste/connui-common/commits/master&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The next step will be to make an overview of all the work that needs to be done,
and then start picking up the tasks one by one.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="flasher-u-boot-work"&gt;
&lt;h3&gt;Flasher/u-boot work&lt;/h3&gt;
&lt;p&gt;We're working on a way to make testing and installing Maemo Leste easier than
the current procedure - which involves installing and updating Maemo Fremantle
before running Maemo Leste. &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/211"&gt;Issue 211&lt;/a&gt; covers this in more
detail, but our hope is that we can make it so that users can flash u-boot to
the device, and then be able to directly boot Fremantle or Leste, or another OS,
like postmarketOS.&lt;/p&gt;
&lt;p&gt;There is also some upstream churn going on regarding u-boot support for the
Nokia N900, see:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://lists.denx.de/pipermail/u-boot/2018-December/353007.html"&gt;https://lists.denx.de/pipermail/u-boot/2018-December/353007.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://lists.denx.de/pipermail/u-boot/2018-December/353008.html"&gt;https://lists.denx.de/pipermail/u-boot/2018-December/353008.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="lima"&gt;
&lt;h2&gt;Lima&lt;/h2&gt;
&lt;p&gt;As mentioned in our last &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-lima-works.html"&gt;lima update&lt;/a&gt;, the driver can now render
&lt;cite&gt;hildon-desktop&lt;/cite&gt;. Not everything renders correctly. Some borders are missing, as
can be seen here, but otherwise - it's working quite fast and smooth:&lt;/p&gt;
&lt;img alt="" src="/images/lima-twister-wifi.png" style="width: 512px; height: 300px;" /&gt;
&lt;p&gt;The lima mesa package in our repository is still on Mesa 18.2, while upstream
lima has moved to Mesa 18.3. We need to rebuild the latest 18.3 version and
check if it still works.&lt;/p&gt;
&lt;p&gt;We also tried to compile lima for aarch64, but ran into internal errors in &lt;cite&gt;ld&lt;/cite&gt;
when linking the final drivers:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://web.archive.org/web/20190117070625/https://phoenix.maemo.org/job/mesa-binaries/architecture=arm64,label=arm64/1/console"&gt;https://web.archive.org/web/20190117070625/https://phoenix.maemo.org/job/mesa-binaries/architecture=arm64,label=arm64/1/console&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;This is slightly problematic, because we need the aarch64 version for the Pine64
Anakin Devkit. But perhaps the issue will be gone with mesa 18.3.&lt;/p&gt;
&lt;p&gt;If you want to follow lima activity, you can do so here:
&lt;a class="reference external" href="https://gitlab.freedesktop.org/lima/mesa/activity"&gt;https://gitlab.freedesktop.org/lima/mesa/activity&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="maemo-leste-and-mer"&gt;
&lt;h2&gt;Maemo Leste and Mer&lt;/h2&gt;
&lt;p&gt;&lt;cite&gt;spiirion&lt;/cite&gt; has been working on making mer versions of some core software (like
&lt;cite&gt;dsme&lt;/cite&gt; and &lt;cite&gt;mce&lt;/cite&gt;) work on Maemo Leste. At this point, he has some of it working
here:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.merproject.org/spiiroin/mce-dev/tree/maemo-leste-hacking"&gt;https://git.merproject.org/spiiroin/mce-dev/tree/maemo-leste-hacking&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.merproject.org/spiiroin/libdsme/tree/maemo-leste-hacking"&gt;https://git.merproject.org/spiiroin/libdsme/tree/maemo-leste-hacking&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.merproject.org/spiiroin/libiphb/tree/maemo-leste-hacking"&gt;https://git.merproject.org/spiiroin/libiphb/tree/maemo-leste-hacking&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.merproject.org/spiiroin/dsme/tree/maemo-leste-hacking"&gt;https://git.merproject.org/spiiroin/dsme/tree/maemo-leste-hacking&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://git.merproject.org/spiiroin/mce/tree/maemo-leste-hacking"&gt;https://git.merproject.org/spiiroin/mce/tree/maemo-leste-hacking&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/spiiroin/mce-plugin-libhybris/tree/maemo-leste-hacking"&gt;https://github.com/spiiroin/mce-plugin-libhybris/tree/maemo-leste-hacking&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="samsung-s5pv210-support"&gt;
&lt;h2&gt;Samsung S5PV210 support?&lt;/h2&gt;
&lt;p&gt;Someone from the community named &lt;cite&gt;PabloPL&lt;/cite&gt; has made impressive progress with
making an Exynos based phone work with mainline, &lt;a class="reference external" href="https://github.com/PabloPL/linux/wiki"&gt;see the current status of
mainline plus patches here&lt;/a&gt;. The
Samsung Galaxy S (i9000) also has a PowerVR GPU, just like the Droid4, so
hopefully we can collaborate on making PowerVR better supported on mainline
Linux (although the userspace will probably remain closed forever).&lt;/p&gt;
&lt;p&gt;&lt;cite&gt;PabloPL&lt;/cite&gt; also has an open issue for supporting PowerVR:
&lt;a class="reference external" href="https://github.com/PabloPL/linux/issues/18"&gt;https://github.com/PabloPL/linux/issues/18&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="community"&gt;
&lt;h2&gt;Community&lt;/h2&gt;
&lt;/div&gt;
&lt;div class="section" id="what-is-next"&gt;
&lt;h2&gt;What is next?&lt;/h2&gt;
&lt;p&gt;A lot has happened in the past month and a half, and it's been hard to focus on
one specific issue, but nevertheless we've made a lot of progress.&lt;/p&gt;
&lt;p&gt;Our current software/driver goals are:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Fix reboot/poweroff issues&lt;/li&gt;
&lt;li&gt;Make text and voice calls work on N900 and Droid4&lt;/li&gt;
&lt;li&gt;Fix PowerVR issues on N900, make PowerVR work on the Droid4&lt;/li&gt;
&lt;li&gt;Work on 2g/3g/4g data plugin for icd2&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As for new hardware enablement/drivers, we plan to:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Build the lima driver for mesa 18.3 for aarch64 and armhf&lt;/li&gt;
&lt;li&gt;Make Leste work properly on the Anakin kit, hopefully -before- FOSDEM&lt;/li&gt;
&lt;li&gt;Make Leste work on Necunos NC_1 development kit when we get one.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;At that point, we're almost ready for the first alpha release. We might move the
(large) &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/53"&gt;Qt task&lt;/a&gt; to a
next alpha or beta release.  If you're experienced with Qt, we would definitely
use the help!&lt;/p&gt;
&lt;p&gt;Finally, if you have a spare device that we already support, there may be
developers who would be very happy to recieve it by post and make Maemo Leste work
(even) better! We now have a couple of spare Motorola Droid 4 devices that we
can give to developers who want to work on phone calls and/or PowerVR support.&lt;/p&gt;
&lt;p&gt;If you have a spare Nexus 5 or Nokia N900, those might turn out to be quite
helpful as well.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay up to date, ask questions and/or
help out. Another great way to get in touch is to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="lima"></category><category term="powervr"></category><category term="exynos"></category><category term="pine64"></category><category term="necunos"></category><category term="fosdem"></category><category term="aarch64"></category><category term="droid4"></category><category term="n900"></category><category term="u-boot"></category><category term="voice calls"></category></entry><entry><title>Maemo Leste - Lima works!</title><link href="https://maemo-leste.github.io/maemo-leste-lima-works.html" rel="alternate"></link><published>2018-12-07T23:50:00+01:00</published><updated>2018-12-07T23:50:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2018-12-07:/maemo-leste-lima-works.html</id><summary type="html">&lt;p&gt;This update is relatively small - but it does contain something huge: Lima now
renders hildon-desktop!&lt;/p&gt;
&lt;div class="section" id="mali-gpus-and-the-lima-driver"&gt;
&lt;h2&gt;Mali GPUs and the Lima Driver&lt;/h2&gt;
&lt;p&gt;As we documented in our November 2018 update
&lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-sixth-update-november-2018.html"&gt;November 2018 update&lt;/a&gt;, we were
making progress trying to get the Lima driver to run on some Allwinner devices.&lt;/p&gt;
&lt;p&gt;This is …&lt;/p&gt;&lt;/div&gt;</summary><content type="html">&lt;p&gt;This update is relatively small - but it does contain something huge: Lima now
renders hildon-desktop!&lt;/p&gt;
&lt;div class="section" id="mali-gpus-and-the-lima-driver"&gt;
&lt;h2&gt;Mali GPUs and the Lima Driver&lt;/h2&gt;
&lt;p&gt;As we documented in our November 2018 update
&lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-sixth-update-november-2018.html"&gt;November 2018 update&lt;/a&gt;, we were
making progress trying to get the Lima driver to run on some Allwinner devices.&lt;/p&gt;
&lt;p&gt;This is important, as a lot of ARM devices have a Mali GPU. Not all of them have
a Mali-400 or Mali-450, but a big chunk of them does - especially the Allwinner
single board computers and tablets. However, ARM does not provide a free (as in
freedom) driver for their GPUs. Back in 2014, &lt;a class="reference external" href="https://www.youtube.com/watch?v=7z6xjIRXcp4"&gt;Luc Verhaegen presented his (and
others) work on freeing the Mali&lt;/a&gt;
- a talk that I also personally attended and got me excited about the
possibility of using a free driver on my Allwinner devices. Some time later,
he &lt;a class="reference external" href="https://libv.livejournal.com/27461.html"&gt;documented why he had stopped working on the driver&lt;/a&gt; - but eventually others (in
particular Qiang Yu) have picked up the work, &lt;a class="reference external" href="https://gitlab.freedesktop.org/lima"&gt;and the current code can be found
here&lt;/a&gt; - the kernel side of this work has
also been &lt;a class="reference external" href="https://lists.freedesktop.org/archives/dri-devel/2018-May/177314.html"&gt;submitted for review&lt;/a&gt; to the
Linux kernel.&lt;/p&gt;
&lt;p&gt;Excited (once again) at the prospect of having a FOSS Mali driver, we set up
&lt;a class="reference external" href="https://phoenix.maemo.org/job/mesa-binaries/"&gt;(semi) automatic builds&lt;/a&gt; and
added it to the &lt;a class="reference external" href="https://maedevu.maemo.org/leste/pool/lima/m/mesa/"&gt;lima component of our Maemo Leste Devuan/Debian repository&lt;/a&gt; of
lima-mesa, the mesa code that supports lima. In our latest update, we stated
that, unfortunately, &lt;a class="reference external" href="https://gitlab.freedesktop.org/lima/mesa/issues/70"&gt;lima cannot render hildon-desktop yet&lt;/a&gt; (and that &lt;a class="reference external" href="https://github.com/apitrace/apitrace/issues/599"&gt;we ran into
(and fixed) an apitrace issue&lt;/a&gt;), but this is no longer
true, with the last few commits to &lt;cite&gt;lima/mesa&lt;/cite&gt;, it is possible to run
hildon-desktop (albeit some render artifacts remain), and we have made a video
showing it in action on our &lt;a class="reference external" href="https://leste.maemo.org/A33-TurboX-Twister"&gt;A33 &amp;quot;TurboX Twister&amp;quot; tablet&lt;/a&gt;:&lt;/p&gt;
&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/ihCVsaEMNzY"
frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope;
picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;p&gt;(&lt;a class="reference external" href="https://github.com/maemo-leste/lime2-linux/tree/lime2-and-twister-4.19-rc4-20181207"&gt;Kernel tree can be found here.&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;This is also great news for the Pine64 project, who are developing a &lt;a class="reference external" href="http://wiki.pine64.org/index.php/Project_Anakin"&gt;Pine64
phone and Pine64 tablet&lt;/a&gt;
(and have been so kind to send us a &amp;quot;Project Anakit&amp;quot; development kit as well) -
because now their phone will have a free software driver!&lt;/p&gt;
&lt;p&gt;To be clear, the experience is not entirely smooth, and we've had the driver
crash on us a few times - but it's FOSS, so anyone can attempt to fix it (as
people are doing already). Onwards!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay up to date, ask questions and/or
help out. Another great way to get in touch is to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="arm64"></category><category term="aarch64"></category><category term="pine64"></category><category term="allwinner"></category><category term="mali"></category><category term="lima"></category><category term="mesa"></category></entry><entry><title>Maemo Leste - sixth update (November) 2018</title><link href="https://maemo-leste.github.io/maemo-leste-sixth-update-november-2018.html" rel="alternate"></link><published>2018-12-05T09:00:00+01:00</published><updated>2018-12-05T09:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2018-12-05:/maemo-leste-sixth-update-november-2018.html</id><summary type="html">&lt;p&gt;It's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-fifth-update-september-october-2018.html"&gt;fifth update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;div class="section" id="media"&gt;
&lt;h2&gt;Media&lt;/h2&gt;
&lt;p&gt;Our talk introducing Maemo Leste at &lt;a class="reference external" href="https://www.youtube.com/watch?v=WT1hwtEPt7o"&gt;OpenFest 2018&lt;/a&gt; is now online (The &lt;a class="reference external" href="https://maedevu.maemo.org/media/openfest-2018-maemo-leste.pdf"&gt;slides are
also available&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;We have also switched to a more clear Pelican theme for our (this) website and
added a …&lt;/p&gt;&lt;/div&gt;</summary><content type="html">&lt;p&gt;It's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-fifth-update-september-october-2018.html"&gt;fifth update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;div class="section" id="media"&gt;
&lt;h2&gt;Media&lt;/h2&gt;
&lt;p&gt;Our talk introducing Maemo Leste at &lt;a class="reference external" href="https://www.youtube.com/watch?v=WT1hwtEPt7o"&gt;OpenFest 2018&lt;/a&gt; is now online (The &lt;a class="reference external" href="https://maedevu.maemo.org/media/openfest-2018-maemo-leste.pdf"&gt;slides are
also available&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;We have also switched to a more clear Pelican theme for our (this) website and
added a &lt;a class="reference external" href="https://maemo-leste.github.io/pages/screenshots.html"&gt;Screenshots&lt;/a&gt; page!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="software"&gt;
&lt;h2&gt;Software&lt;/h2&gt;
&lt;div class="section" id="aarch64"&gt;
&lt;h3&gt;aarch64&lt;/h3&gt;
&lt;p&gt;Our &lt;a class="reference external" href="https://phoenix.maemo.org/"&gt;Jenkins&lt;/a&gt; instance now has &lt;strong&gt;aarch64&lt;/strong&gt;
(&lt;strong&gt;arm64&lt;/strong&gt;) builds for almost all our packages and we have a working Raspberry
Pi 3 with &lt;strong&gt;aarch64&lt;/strong&gt; Maemo userland. Images for the Raspberry 3 (and other
devices) will follow in December.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="qt5"&gt;
&lt;h3&gt;Qt5&lt;/h3&gt;
&lt;p&gt;Work on porting the Maemo style and Maemo widgets to Qt5 is still progressing.
There are still some issues to sort out - some widgets end up being too large or
fullscreen when they should not be. Regardless, here is an example widget:&lt;/p&gt;
&lt;img alt="" src="/images/n900-qt5.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Once the Qt5 port is in better shape, we'll work on supporting GStreamer 1.0 as
well, so that we can build &lt;a class="reference external" href="https://wiki.maemo.org/Open_Media_Player"&gt;Open Media Player&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="lima-driver-for-mali-gpus-apitrace"&gt;
&lt;h3&gt;lima driver for Mali GPUs, apitrace&lt;/h3&gt;
&lt;p&gt;The open source &lt;a class="reference external" href="https://gitlab.freedesktop.org/lima/"&gt;lima&lt;/a&gt; driver is a
driver for Mali GPUs (see the &lt;a class="reference external" href="https://www.youtube.com/watch?v=7z6xjIRXcp4"&gt;FOSDEM talk&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;The lima driver is still under heavy development, and it is not yet merged into
mesa yet. We &lt;a class="reference external" href="https://phoenix.maemo.org/job/mesa-binaries/"&gt;use Jenkins to build a Lima enabled mesa for us&lt;/a&gt;, which can be found in the
&lt;cite&gt;lima&lt;/cite&gt; component in our repositories: &lt;a class="reference external" href="https://maedevu.maemo.org/leste/pool/lima/"&gt;https://maedevu.maemo.org/leste/pool/lima/&lt;/a&gt;
The lima driver also has a kernel component, which is already included in our
latest Allwinner images.&lt;/p&gt;
&lt;p&gt;However, &lt;a class="reference external" href="https://gitlab.freedesktop.org/lima/mesa/issues/70"&gt;lima cannot render hildon-desktop yet&lt;/a&gt;; and while trying to
submit a debug trace using apitrace &lt;a class="reference external" href="https://github.com/apitrace/apitrace/issues/599"&gt;we ran into (and fixed) an apitrace issue&lt;/a&gt;, and now a proper debug
trace is also submitted to the Lima driver developers.&lt;/p&gt;
&lt;p&gt;Finally, we have a &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/181"&gt;tracking ticket for Lima support&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="icd2-and-clockd-code-improvements-documentation"&gt;
&lt;h3&gt;icd2 and clockd code improvements, documentation&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;spinal84&lt;/em&gt; has been continuing his great work on cleaning up the &lt;em&gt;icd2&lt;/em&gt; and
&lt;em&gt;clockd&lt;/em&gt; code, as well as documenting it (this list is not exhaustive):&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/icd2/pull/9"&gt;https://github.com/maemo-leste/icd2/pull/9&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/clockd/pull/4"&gt;https://github.com/maemo-leste/clockd/pull/4&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="hildon-application-manager-ham"&gt;
&lt;h3&gt;Hildon Application Manager (HAM)&lt;/h3&gt;
&lt;p&gt;What is a mobile distribution without a GUI package manager?
We took the source straight from Maemo Fremantle, fixed a few compilation
errors, and behold, the package manager starts (and that's probably about it,
nothing else was tested yet):&lt;/p&gt;
&lt;img alt="" src="/images/raspi-ham.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="shutdown-woes"&gt;
&lt;h3&gt;Shutdown woes&lt;/h3&gt;
&lt;p&gt;One of the remaining alpha blocker bugs is that shutting down the device using
the UI doesn't work the way it's supposed to work. We've now &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/125#issuecomment-443454882"&gt;figured out the
problem&lt;/a&gt;
and will be able to move forward with both a temporary and more permanent
solution. The reason is that the shutdown feature actually tries to bring the
device into the so called &lt;strong&gt;act dead&lt;/strong&gt; mode, in which mode the device acts like
it's not powered on. Sounds scary? Perhaps, but this feature is for example
essential for the phone to turn itself on on an alarm (and more, but we have to
figure that out, the entire Maemo Fremantle boot process is documented here:
&lt;a class="reference external" href="http://wiki.maemo.org/Maemo_5_boot_process"&gt;http://wiki.maemo.org/Maemo_5_boot_process&lt;/a&gt;).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="calendar-support"&gt;
&lt;h3&gt;Calendar support&lt;/h3&gt;
&lt;p&gt;While no code has been written yet, we have a plan on how to move forward with
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/203"&gt;calendar support&lt;/a&gt;.
The various components (backend and GUI) are open source or have open source
clones/implementations. Unfortunately, the GUI will (also) depend on Qt5 port
being brought to a usable state.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="devices"&gt;
&lt;h2&gt;Devices&lt;/h2&gt;
&lt;div class="section" id="pinetablet-pinephone-anakin-devkit"&gt;
&lt;h3&gt;PineTablet/PinePhone &amp;quot;Anakin&amp;quot; devkit&lt;/h3&gt;
&lt;p&gt;The Pine64 folks are making a PineTablet and a PinePhone, and they were so kind
as to provide us with &lt;em&gt;three&lt;/em&gt; developer kits, more information on the developer
kit can be found here:&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="http://wiki.pine64.org/index.php/Project_Anakin"&gt;http://wiki.pine64.org/index.php/Project_Anakin&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This developer kit is one of the main reasons that our packages are now
available on &lt;strong&gt;aarch64&lt;/strong&gt;. We'll share updates once more starts to work on the
developer kit.&lt;/p&gt;
&lt;img alt="" src="/images/Anakin_kit_1.jpg" style="width: 300px; height: 400px;" /&gt;
&lt;img alt="" src="/images/Anakin_kit_2.jpg" style="width: 300px; height: 400px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="distribution"&gt;
&lt;h2&gt;Distribution&lt;/h2&gt;
&lt;p&gt;Maemo Leste is based on Devuan, currently targetting &lt;strong&gt;Devuan Ascii&lt;/strong&gt;, which
closely tracks &lt;strong&gt;Debian Stretch&lt;/strong&gt; (current stable version of Debian).&lt;/p&gt;
&lt;div class="section" id="devuan-beowulf-debian-buster"&gt;
&lt;h3&gt;Devuan Beowulf (Debian Buster)&lt;/h3&gt;
&lt;p&gt;We've making some progress towards porting and building the Maemo Leste packages
on the next version of Devuan: Beowulf (which in turn is based on upcoming
version of Debian: Buster). Jenkins now supports building our packages for this
upcoming release. It will be a while before Beowulf is released, but when it is,
we will be ready!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="leste-devel-repository"&gt;
&lt;h3&gt;leste-devel repository&lt;/h3&gt;
&lt;p&gt;We have introduced a &lt;cite&gt;leste-devel&lt;/cite&gt; repository, which developers and users can
use to test experimental code changes; see &lt;a class="reference external" href="https://github.com/maemo-leste/icd2/pull/9#issuecomment-443375660"&gt;this icd2 pull request&lt;/a&gt;
on how we currently use this repository.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="documentation"&gt;
&lt;h2&gt;Documentation&lt;/h2&gt;
&lt;p&gt;We've put some more effort into our
&lt;a class="reference external" href="https://leste.maemo.org/Status"&gt;Software Status&lt;/a&gt; page - it now covers more
software components and also (might) have some information on the status of each
component.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="open-issues"&gt;
&lt;h2&gt;Open issues&lt;/h2&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues"&gt;https://github.com/maemo-leste/bugtracker/issues&lt;/a&gt;&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;For virtual keyboard to work, you have to reboot once after booting the
fresh/new image. Then the virtual keyboard can be enabled from the settings
&lt;cite&gt;Text Input&lt;/cite&gt; applet.&lt;/li&gt;
&lt;li&gt;Several devices still lack 3D acceleration support, making the user experience
particularly painful.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="community"&gt;
&lt;h2&gt;Community&lt;/h2&gt;
&lt;div class="section" id="no-fosdem-stand"&gt;
&lt;h3&gt;No FOSDEM stand&lt;/h3&gt;
&lt;p&gt;Together with postmarketOS we applied for a stand at FOSDEM 2019, which
unfortunately was not accepted. However, both the postmarketOS and Maemo Leste
people will attend FOSDEM regardlessly.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="what-is-next"&gt;
&lt;h2&gt;What is next?&lt;/h2&gt;
&lt;p&gt;Most of our attention has been focussed on reaching the &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/4"&gt;Alpha release&lt;/a&gt; and we're down to 4
issues before we reach the alpha milestone.&lt;/p&gt;
&lt;p&gt;Two issues pertain to reboot/poweroff not functioning as it should, one is for
Qt5 and one for the final pieces of the virtual keyboard - monitoring the slide
state of the keyboard (open or closed).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay up to date, ask questions and/or
help out. Another great way to get in touch is to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="arm64"></category><category term="aarch64"></category><category term="pine64"></category><category term="openfest"></category><category term="qt"></category><category term="lima"></category></entry><entry><title>Maemo Leste - fifth update (September + October) 2018</title><link href="https://maemo-leste.github.io/maemo-leste-fifth-update-september-october-2018.html" rel="alternate"></link><published>2018-11-06T23:00:00+01:00</published><updated>2018-11-06T23:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2018-11-06:/maemo-leste-fifth-update-september-october-2018.html</id><summary type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;It's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-fourth-update-july-august-2018.html"&gt;fourth update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;p&gt;Don't forget that we have a mailing list - &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt;. Be sure
to subscribe for updates, questions and development. The mailing list archives
are now also functional: &lt;a class="reference external" href="https://lists.dyne.org/lurker/mindex/maemo-leste&amp;#64;19700101.000000.00000000.en.html"&gt;https://lists.dyne.org/lurker/mindex/maemo-leste …&lt;/a&gt;&lt;/p&gt;</summary><content type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;It's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-fourth-update-july-august-2018.html"&gt;fourth update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;p&gt;Don't forget that we have a mailing list - &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt;. Be sure
to subscribe for updates, questions and development. The mailing list archives
are now also functional: &lt;a class="reference external" href="https://lists.dyne.org/lurker/mindex/maemo-leste&amp;#64;19700101.000000.00000000.en.html"&gt;https://lists.dyne.org/lurker/mindex/maemo-leste&amp;#64;19700101.000000.00000000.en.html&lt;/a&gt;&lt;/p&gt;
&lt;div class="section" id="software-additions"&gt;
&lt;h2&gt;Software additions&lt;/h2&gt;
&lt;p&gt;There have been lots of changes all over the place, below follows an attempt to
highlight some of those changes.&lt;/p&gt;
&lt;div class="section" id="boot-issues-resolved"&gt;
&lt;h3&gt;Boot issues resolved&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/83"&gt;issue #83&lt;/a&gt; is now fixed and
the lock screen now works properly on boot, without requiring parallel boot to
be enabled (in fact, parallel boot is still buggy, so don't enable it).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="scrolling-in-osso-xterm"&gt;
&lt;h3&gt;Scrolling in osso-xterm&lt;/h3&gt;
&lt;p&gt;Spinal84 &lt;a class="reference external" href="https://github.com/maemo-leste/osso-xterm/pull/1"&gt;fixed scrolling in osso-xterm&lt;/a&gt;,
which is a really welcome addition.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="usb-gadget-host-otg-mode"&gt;
&lt;h3&gt;USB Gadget/Host/OTG mode&lt;/h3&gt;
&lt;p&gt;Maemo Leste uses the Linux &lt;a class="reference external" href="https://www.kernel.org/doc/Documentation/usb/gadget_configfs.txt"&gt;gadget configfs&lt;/a&gt;
to configure USB gadgets. The userspace library used to interface
with the kernel configfs is &lt;a class="reference external" href="https://github.com/maemo-leste/libusbgx"&gt;libusbgx&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The new &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-usb-gadgets"&gt;hildon-usb-gadgets&lt;/a&gt;
package uses libusbgx to implement two simple gadgets: a network gadget and a
mass storage gadget. The mass storage gadget needs significantly more work, so
it's mostly a stub right now.&lt;/p&gt;
&lt;p&gt;This is complemented by the initial udev-enabled (previous versions relied on
the now deprecated hal) version of &lt;a class="reference external" href="https://github.com/maemo-leste/ke-recv"&gt;ke-recv&lt;/a&gt;,
which received kernel events regarding usb cable plugging and managed the gadget
mode of the phone. The branch &amp;quot;nextgen-usbhack&amp;quot; contains the udev work and
hildon-usb-gadgets integration.&lt;/p&gt;
&lt;p&gt;The same udev code was used to bring up &lt;a class="reference external" href="https://github.com/maemo-leste/hildon-status-bar-usb"&gt;hildon-status-bar-usb&lt;/a&gt;, the lengthy path to
getting this to work is documented in
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/39"&gt;issue #39&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The result of this work can be seen here:&lt;/p&gt;
&lt;img alt="" src="/images/n900-usb-pcsuite-3.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-usb-pcsuite-1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-usb-pcsuite-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;By default, ke-recv will always enter &amp;quot;PC Suite&amp;quot; mode for now, which really
just means that any device that is capable of usb peripherals will have usb
networking set up to ease debugging. The device will assign itself the static IP
&lt;cite&gt;192.168.42.2&lt;/cite&gt;, so something like this on the host device should bring up
communication: &lt;cite&gt;ifconfig usb0 up 192.168.42.1&lt;/cite&gt;.&lt;/p&gt;
&lt;p&gt;More information on usb networking can be found on this page:
&lt;a class="reference external" href="https://leste.maemo.org/Status/USB_Peripheral"&gt;https://leste.maemo.org/Status/USB_Peripheral&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This currently works on the Nokia N900, Motorola Droid 4, and Allwinner devices
(like the LIME2 and A33 Twister Tablet).&lt;/p&gt;
&lt;p&gt;To be able to detect whether a device is connected to a PC or just a &amp;quot;wall
charger&amp;quot;, we have to rely on musb (and other similar drivers). Unfortunately,
musb will only expose this state if a gadget is loaded. As a result, a usb
gadget is always loaded, even when it's not in use.&lt;/p&gt;
&lt;p&gt;The &lt;cite&gt;ke-recv&lt;/cite&gt; and &lt;cite&gt;hildon-status-bar-usb&lt;/cite&gt; code still requires some significant
refactoring - they both share the same udev code, but right now this code is
just duplicated amongst the two projects. The &lt;cite&gt;hildon-usb-gadgets&lt;/cite&gt; repository
could also see some more love - both in terms of the descriptors of the gadgets
and the actual code. So if you know some C - this might be a fun project to
pick up!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="nokia-n900-led-control"&gt;
&lt;h3&gt;Nokia N900 LED control&lt;/h3&gt;
&lt;p&gt;It turns out that some control over the &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/186"&gt;RGB led on the N900&lt;/a&gt; already works
using mce.&lt;/p&gt;
&lt;p&gt;Simply running the following command:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
echo 0 &amp;gt; /sys/class/power_supply/bq24150a-0/stat_pin_enable
&lt;/pre&gt;
&lt;p&gt;Will disable the LED override when the N900 is being charged, and then this dbus
command will show the communication LED pattern:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
dbus-send --system --type=method_call --dest=com.nokia.mce /com/nokia/mce/request com.nokia.mce.request.req_led_pattern_activate string:&amp;quot;PatternCommunicationIM&amp;quot;
&lt;/pre&gt;
&lt;p&gt;This command will disable the pattern:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
dbus-send --system --type=method_call --dest=com.nokia.mce /com/nokia/mce/request com.nokia.mce.request.req_led_pattern_deactivate string:&amp;quot;PatternCommunicationIM&amp;quot;
&lt;/pre&gt;
&lt;p&gt;In fact, other Maemo.org examples also work on Leste already, &lt;a class="reference external" href="https://wiki.maemo.org/Phone_control#Make_an_.22Email_Style.22_notification_dialog"&gt;like this message dialog created using dbus and Python&lt;/a&gt;:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
import dbus
bus = dbus.SessionBus()
proxy = bus.get_object('org.freedesktop.Notifications', '/org/freedesktop/Notifications')
interface = dbus.Interface(proxy,dbus_interface='org.freedesktop.Notifications')
interface.Notify('Notification', 0, 'control_bluetooth_paired', 'Testing 123', 'Hello World', [], {}, 0)
&lt;/pre&gt;
&lt;p&gt;Results in:&lt;/p&gt;
&lt;img alt="" src="/images/leste-message.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="new-kernel-and-image-for-the-a33-twister-tablet-and-the-lime2"&gt;
&lt;h3&gt;New kernel and image for the A33 Twister tablet and the LIME2&lt;/h3&gt;
&lt;p&gt;There is now a first image available for the &lt;a class="reference external" href="https://leste.maemo.org/A33-TurboX-Twister"&gt;A33 Twister tablet&lt;/a&gt;. The image features working
usb gadget/otg,  battery, charging, touchscreen and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/192"&gt;(unstable) wireless&lt;/a&gt;.
Currently, &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/191"&gt;backlight is not working&lt;/a&gt;, so the screen is not
very bright, and there is no 3D acceleration yet, and also no accelerated video
decoding yet.&lt;/p&gt;
&lt;p&gt;On the 3D front, we have managed to run the open source 3D driver on the LIME2
(which will also work for other devices with Mali GPUs), the mesa gears demo
program works:&lt;/p&gt;
&lt;img alt="" src="/images/lima-lime2.jpg" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;However, the driver is not yet able to run the Hildon desktop UI - the kernel
hangs.&lt;/p&gt;
&lt;p&gt;The source code for this driver can be found here:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://gitlab.freedesktop.org/lima/mesa"&gt;https://gitlab.freedesktop.org/lima/mesa&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://gitlab.freedesktop.org/lima/linux"&gt;https://gitlab.freedesktop.org/lima/linux&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The lima driver is currently enabled in our LIME2 and A33 Twister tablet kernel
(4.18 based):&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/lime2-linux/tree/lime2-and-twister"&gt;https://github.com/maemo-leste/lime2-linux/tree/lime2-and-twister&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;However, the userland required to actually run any 3D demos is lacking, since it
requires a newer mesa (and other supporting packages), which are not currently
available in Devuan ascii.&lt;/p&gt;
&lt;p&gt;The LIME2 images expect a 4.3 inch touchscreen to be connected, but should also
work over HDMI. &lt;em&gt;hildon-home&lt;/em&gt; doesn't look so bad at 480x272px, does it?&lt;/p&gt;
&lt;img alt="" src="/images/lime2-home.png" /&gt;
&lt;/div&gt;
&lt;div class="section" id="porting-maemo-extras-packages"&gt;
&lt;h3&gt;Porting Maemo Extras packages&lt;/h3&gt;
&lt;p&gt;One of the advantages of being really close to Maemo Fremantle is that a lot of
the existing Maemo applications require minimal work to run on Maemo Leste. Out
of curiousity, we imported the wifi signal applet (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/185"&gt;issue #185&lt;/a&gt;). The maemo.org extras page for the package is here: &lt;a class="reference external" href="http://maemo.org/packages/view/wifi-signal-applet/"&gt;http://maemo.org/packages/view/wifi-signal-applet/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;With minimal changes (&lt;a class="reference external" href="https://github.com/maemo-leste/wifi-signal-applet"&gt;https://github.com/maemo-leste/wifi-signal-applet&lt;/a&gt;) compiled and just works:&lt;/p&gt;
&lt;img alt="" src="/images/n900-wifi-applet.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;This package is now available in our main repository, as &lt;em&gt;wifi-signal-applet&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Going forward, we should probably have a separate repository (or repository
component) for non-essential packages like the wifi-signal-applet. We'll have to
set up in a such a way that it easy for others to also submit and build
packages. &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/194"&gt;Feedback is welcome in ticket #194&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="qt5-and-gstreamer"&gt;
&lt;h3&gt;Qt5 and gstreamer!&lt;/h3&gt;
&lt;p&gt;&lt;em&gt;freemangordon&lt;/em&gt; has started the immense task of porting the Maemo style and
widgets to Qt5, which is one of the last remaining big items for our N900 alpha
image:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/qtstyleplugins"&gt;https://github.com/maemo-leste/qtstyleplugins&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/qtmaemo5"&gt;https://github.com/maemo-leste/qtmaemo5&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This screenshot shows Qt5 in action on Maemo Leste:&lt;/p&gt;
&lt;img alt="" src="/images/leste-qt5-widget-1.png" style="width: 400px; height: 340px;" /&gt;
&lt;p&gt;In the process, he also ported several mafw components to gstreamer 1.0 and
packaged them for Leste:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/?utf8=%E2%9C%93&amp;amp;q=mafw&amp;amp;type=&amp;amp;language="&gt;https://github.com/maemo-leste/?utf8=%E2%9C%93&amp;amp;q=mafw&amp;amp;type=&amp;amp;language=&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Once these components are in place, we could even look at porting &lt;a class="reference external" href="https://wiki.maemo.org/Open_Media_Player"&gt;Open Media
Player&lt;/a&gt; from Fremantle!&lt;/p&gt;
&lt;p&gt;Packages from Maemo Fremantle that rely on Qt 4.x will likely need to be ported
to Qt 5 before they will run on Maemo Leste.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="documentation"&gt;
&lt;h2&gt;Documentation&lt;/h2&gt;
&lt;p&gt;&lt;em&gt;spinal84&lt;/em&gt; has been working on adding documentation to various repositories and
he has also been working on generating the required doxygen documentation for
various projects:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/mce/pull/1"&gt;https://github.com/maemo-leste/mce/pull/1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/ke-recv/pull/1"&gt;https://github.com/maemo-leste/ke-recv/pull/1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/ke-recv-extra/pull/1"&gt;https://github.com/maemo-leste/ke-recv-extra/pull/1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/status-area-applet-battery/pull/1"&gt;https://github.com/maemo-leste/status-area-applet-battery/pull/1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/icd2/pull/3"&gt;https://github.com/maemo-leste/icd2/pull/3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/clockd/pull/3"&gt;https://github.com/maemo-leste/clockd/pull/3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/icd2/pull/8"&gt;https://github.com/maemo-leste/icd2/pull/8&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="images"&gt;
&lt;h2&gt;Images&lt;/h2&gt;
&lt;p&gt;&lt;em&gt;parazyd&lt;/em&gt; has built new images for all the currently supported devices:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Virtual machine: &lt;a class="reference external" href="https://maedevu.maemo.org/images/virtual-machines/20181102/"&gt;https://maedevu.maemo.org/images/virtual-machines/20181102/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Nokia N900: &lt;a class="reference external" href="https://maedevu.maemo.org/images/n900/20181103/"&gt;https://maedevu.maemo.org/images/n900/20181103/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Motorola Droid 4: &lt;a class="reference external" href="https://maedevu.maemo.org/images/droid4/20181103/"&gt;https://maedevu.maemo.org/images/droid4/20181103/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;A33 Twister tablet: &lt;a class="reference external" href="https://maedevu.maemo.org/images/turbox-twister/20181103/"&gt;https://maedevu.maemo.org/images/turbox-twister/20181103/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Raspi 2/3: &lt;a class="reference external" href="https://maedevu.maemo.org/images/raspi2/20181103/"&gt;https://maedevu.maemo.org/images/raspi2/20181103/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;N9: &lt;a class="reference external" href="https://maedevu.maemo.org/images/n9/20181103/"&gt;https://maedevu.maemo.org/images/n9/20181103/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;N950: &lt;a class="reference external" href="https://maedevu.maemo.org/images/n950/20181103/"&gt;https://maedevu.maemo.org/images/n950/20181103/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We have not been able to test all of them, so please do, and let us know if
something is broken!&lt;/p&gt;
&lt;div class="section" id="open-issues"&gt;
&lt;h3&gt;Open issues&lt;/h3&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;For virtual keyboard to work, you have to reboot once after booting the
fresh/new image. Then the virtual keyboard can be enabled from the settings
&lt;cite&gt;Text Input&lt;/cite&gt; applet.&lt;/li&gt;
&lt;li&gt;Several devices still lack 3D acceleration support, making the user experience
particularly painful.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="community"&gt;
&lt;h2&gt;Community&lt;/h2&gt;
&lt;p&gt;We're slowly but steadily moving forward and we seem to be attracting more
developers - which is fantastic news. Hopefully once we reach an Alpha state for
the Nokia N900, we will be able to reach out to more developers and get even
more people on board.&lt;/p&gt;
&lt;div class="section" id="openfest-2018"&gt;
&lt;h3&gt;OpenFest 2018&lt;/h3&gt;
&lt;p&gt;Three of us got together at OpenFest 2018 in Sofia, Bulgaria.
We also held a presentation at OpenFest, the official videos will be made
available later, but the slides for the presentation can be downloaded here:
&lt;a class="reference external" href="https://maedevu.maemo.org/media/openfest-2018-maemo-leste.pdf"&gt;https://maedevu.maemo.org/media/openfest-2018-maemo-leste.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Someone from the community has additionally also recorded the talk (thanks for
that), and you can find the recording here:
&lt;a class="reference external" href="http://talk.maemo.org/showpost.php?p=1550095&amp;amp;postcount=152"&gt;http://talk.maemo.org/showpost.php?p=1550095&amp;amp;postcount=152&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="fosdem-2019"&gt;
&lt;h3&gt;FOSDEM 2019&lt;/h3&gt;
&lt;p&gt;We've submitted a proposal for a talk about Maemo Leste at FOSDEM; we hope that
it will be accepted. Additionally, we've submitted a request for a stand at
FOSDEM, together with the people from &lt;a class="reference external" href="https://postmarketos.org"&gt;postmarketOS&lt;/a&gt;!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="pinetab-pinephone"&gt;
&lt;h3&gt;PineTab, PinePhone?&lt;/h3&gt;
&lt;p&gt;&lt;a class="reference external" href="https://www.pine64.org/"&gt;Pine64&lt;/a&gt; has announced that they are going to
produce an Allwinner tablet and an Allwinner phone. They are planning to
provide details before or at &lt;a class="reference internal" href="#fosdem-2019"&gt;FOSDEM 2019&lt;/a&gt; &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[1]&lt;/a&gt; &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[2]&lt;/a&gt;. An Allwinner phone will
hopefully be quite well supported by mainline, since most of the components have
drivers in mainline now - perhaps even the Lima driver will be usable on time.&lt;/p&gt;
&lt;p&gt;We have reached out to Pine64, and they have kindly agreed to send development kits our way!&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="reference external" href="https://itsfoss.com/pinebook-kde-smartphone/"&gt;https://itsfoss.com/pinebook-kde-smartphone/&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[2]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="reference external" href="https://www.notebookcheck.net/Pine64-maker-of-cheap-Linux-laptops-may-be-making-a-cheap-Linux-phone.346011.0.html"&gt;https://www.notebookcheck.net/Pine64-maker-of-cheap-Linux-laptops-may-be-making-a-cheap-Linux-phone.346011.0.html&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="what-is-next"&gt;
&lt;h2&gt;What is next?&lt;/h2&gt;
&lt;p&gt;Most of our attention has been focussed on reaching the &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/4"&gt;Alpha release&lt;/a&gt; and we're down to 4
issues before we reach the alpha milestone.&lt;/p&gt;
&lt;p&gt;Two issues pertain to reboot/poweroff not functioning as it should, one is for
Qt5 and one for the final pieces of the virtual keyboard - monitoring the slide
state of the keyboard (open or closed).&lt;/p&gt;
&lt;div class="section" id="nexus-5"&gt;
&lt;h3&gt;Nexus 5?&lt;/h3&gt;
&lt;p&gt;Some time was also spent on working on the (upcoming!) &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/189"&gt;Nexus 5 port&lt;/a&gt;, which isn't quite
functional, as you can see:&lt;/p&gt;
&lt;img alt="" src="/images/leste-n5-initial.jpg" style="width: 526px; height: 400px;" /&gt;
&lt;p&gt;There is a work in progress status page on our wiki: &lt;a class="reference external" href="https://leste.maemo.org/Nexus_5"&gt;https://leste.maemo.org/Nexus_5&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay up to date, ask questions and/or
help out. Another great way to get in touch is to join the &lt;a class="reference external" href="https://leste.maemo.org/IRC_channel"&gt;IRC channel&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see it continue, join us!&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="n900"></category><category term="xterm"></category><category term="nexus 5"></category><category term="alpha"></category><category term="qt"></category><category term="usb"></category><category term="openfest"></category><category term="fosdem"></category><category term="pine64"></category><category term="pinephone"></category><category term="lima"></category></entry><entry><title>Maemo Leste - fourth update (July + August) 2018</title><link href="https://maemo-leste.github.io/maemo-leste-fourth-update-july-august-2018.html" rel="alternate"></link><published>2018-08-31T23:39:00+02:00</published><updated>2018-08-31T23:39:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2018-08-31:/maemo-leste-fourth-update-july-august-2018.html</id><summary type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;It's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-third-update-may-june-2018.html"&gt;third update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;p&gt;First of all, we now also have a &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt;. Be sure
to subscribe for updates, questions and development. We hope to add a bit more
structure to our development by not just relying …&lt;/p&gt;</summary><content type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;It's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-third-update-may-june-2018.html"&gt;third update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;p&gt;First of all, we now also have a &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt;. Be sure
to subscribe for updates, questions and development. We hope to add a bit more
structure to our development by not just relying on IRC, but also mailing lists,
acknowledging that this is likely a more widely accepted method for coordinating
development. We'll see how that pans out!&lt;/p&gt;
&lt;div class="section" id="software-additions"&gt;
&lt;h2&gt;Software additions&lt;/h2&gt;
&lt;p&gt;The last two months were focussed mostly on wrapping on some projects and
integration, we hope to close the &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/4"&gt;N900 Alpha release milestone&lt;/a&gt; soon.&lt;/p&gt;
&lt;div class="section" id="virtual-keyboard"&gt;
&lt;h3&gt;Virtual keyboard&lt;/h3&gt;
&lt;p&gt;The &lt;strong&gt;virtual keyboard implementation is now usable&lt;/strong&gt;, and works
(almost!) out of the box on the latest Nokia N900 images. We've added the
&lt;cite&gt;hildon-input-meta&lt;/cite&gt; package, which, together with some files from Fremantle,
makes the virtual keyboard work:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/image-builder/commit/e5f273a647098352c1ee8491cb42908ac686796f"&gt;https://github.com/maemo-leste/image-builder/commit/e5f273a647098352c1ee8491cb42908ac686796f&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you want a virtual keyboard on the Nokia N900, take the latest image, boot
it, then reboot it once it has fully booted. After that, go to &lt;cite&gt;Settings&lt;/cite&gt;, &lt;cite&gt;Text
Input&lt;/cite&gt; and check the &lt;cite&gt;Use virtual keyboard&lt;/cite&gt; option. In future releases, this
likely will not be required, and we should able to close &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/17"&gt;issue #17&lt;/a&gt; soon.&lt;/p&gt;
&lt;p&gt;The special keys virtual keyboard (the one that complements a hardware keyboard,
if present) does not yet show up when the keyboard slide is open, unless this
gconf key is set:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
gconftool-2 -s /system/osso/af/slide-open -t bool true
&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;osso-xterm&lt;/strong&gt; now also supports the virtual keyboard, before this didn't work.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="networking"&gt;
&lt;h3&gt;Networking&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Wifi integration in the images is now also completed&lt;/strong&gt;, when using the latest
Nokia N900 image (or any device, really), wireless should work out of the box.
See our previous update on what is supported or not, and also check out the
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues?q=is%3Aopen+is%3Aissue+milestone%3A%22Wifi+Connectivity+(improvements)%22"&gt;Wifi connectivity improvements&lt;/a&gt;
milestone!&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/136"&gt;EAP PAP for TTLS is now shown by default&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="location"&gt;
&lt;h3&gt;Location&lt;/h3&gt;
&lt;p&gt;Some work has been done exploring our options for GPS, in &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/57"&gt;issue #57&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="audio"&gt;
&lt;h3&gt;Audio&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Speakers are no longer muted by default&lt;/strong&gt; on the Nokia N900, see  &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/58"&gt;issue #58&lt;/a&gt;. Additionally, and
largely because of fixing this issue, status-area-applet-battery will no longer
warn about low battery levels if the battery is not (yet) calibrated (and thus
no longer make sad &amp;quot;low battery&amp;quot; sounds every minute or so).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="touch-input"&gt;
&lt;h3&gt;Touch input&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Support for capacitive touch devices&lt;/strong&gt; has been improved a lot, previously some
buttons and menus simply did not respond to touch events on capacitive screens,
notably the hildon application menu and the controls of hildon-home.&lt;/p&gt;
&lt;p&gt;This has now been fixed, with changes to libmatchbox2 and hildon-desktop to
support touch events:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/libmatchbox2/commit/5c18fb8583f14feab404b45853149adb502f2fcc"&gt;https://github.com/maemo-leste/libmatchbox2/commit/5c18fb8583f14feab404b45853149adb502f2fcc&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/commit/bab369db0be57bca9366fe9e1a7cde0c40fffbb5"&gt;https://github.com/maemo-leste/hildon-desktop/commit/bab369db0be57bca9366fe9e1a7cde0c40fffbb5&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/hildon-desktop/commit/180c5069e1a3ccc0e3a31c86a997ac1bdbc82d22"&gt;https://github.com/maemo-leste/hildon-desktop/commit/180c5069e1a3ccc0e3a31c86a997ac1bdbc82d22&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="power-usage"&gt;
&lt;h3&gt;Power usage&lt;/h3&gt;
&lt;p&gt;Some initial research is being done on power usage/saving, &lt;strong&gt;it is reported
that Maemo Leste currently uses about 90mA, versus the 10mA that Fremantle
uses&lt;/strong&gt;.  We hope to bring down the power usage a lot while more hardware
components get supported. See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/170"&gt;issue #170&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="images"&gt;
&lt;h2&gt;Images&lt;/h2&gt;
&lt;p&gt;There are now new (pre-alpha) images available for the Nokia
N900:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
https://maedevu.maemo.org/images/n900/20180831/
&lt;/pre&gt;
&lt;div class="section" id="open-issues"&gt;
&lt;h3&gt;Open issues&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;Lock screen and related functionality does not work yet. The issue here is a
race condition in our startup script and X session scripts. The issue is
documented in &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/83"&gt;issue #83&lt;/a&gt;, and a temporary
workaround is to issue these two commands after booting:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
dbus-send --system --type=signal /com/nokia/startup/signal com.nokia.startup.signal.init_done
dbus-send --system --type=signal /com/whatever com.nokia.HildonDesktop.ready
&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;For virtual keyboard to work, you have to reboot once after booting the
fresh/new image. Then the virtual keyboard can be enabled from the settings
&lt;cite&gt;Text Input&lt;/cite&gt; applet.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="documentation-community"&gt;
&lt;h2&gt;Documentation/Community&lt;/h2&gt;
&lt;p&gt;The amount of people actively contributing code is still only two. We need more
testers and developers.&lt;/p&gt;
&lt;p&gt;If you're interested, please join the &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt;, check out this thread on
maemo.org:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://talk.maemo.org/showthread.php?t=100192&amp;amp;page=1"&gt;https://talk.maemo.org/showthread.php?t=100192&amp;amp;page=1&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;Additionally, more work has been done on our &lt;a class="reference external" href="https://leste.maemo.org/"&gt;Wiki&lt;/a&gt;,
with device status tables per device, as well as some additional instructions.&lt;/p&gt;
&lt;p&gt;Here is an example of the current Nokia N900 page: &lt;a class="reference external" href="https://leste.maemo.org/Nokia_N900"&gt;https://leste.maemo.org/Nokia_N900&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="what-is-next"&gt;
&lt;h2&gt;What is next?&lt;/h2&gt;
&lt;p&gt;The one big remaining item before we will reach the &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/4"&gt;N900 Alpha release
milestone&lt;/a&gt; is Qt. Previously, we anticiated we would port over Qt4, but for
various reasons (gstreamer 0.10 vs 1.0 support being one of them) we will
instead attempt to port the Maemo Qt4 work to Qt5. This means that in the future
any software using Qt4 will have to be ported to Qt5.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/83"&gt;issue #83&lt;/a&gt; causing the lockscreen not to work on boot will also need to be
addressed, possibly by drastically changing our X session startup scripts.&lt;/p&gt;
&lt;p&gt;Once the Alpha release milestone has been reached, we will focus our attention
towards the &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/3"&gt;Beta release for the N900&lt;/a&gt;, which should bring:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;2G/3G/4G(?) data support in &lt;cite&gt;icd2&lt;/cite&gt;&lt;/li&gt;
&lt;li&gt;(Very) basic/rudimentary voice calls&lt;/li&gt;
&lt;li&gt;A media player&lt;/li&gt;
&lt;li&gt;Support for usb gadgets and general usb integration: porting &lt;cite&gt;hildon-status-bar-usb&lt;/cite&gt; and &lt;cite&gt;ke-recv&lt;/cite&gt;&lt;/li&gt;
&lt;li&gt;Vibration, proximity sensor and accelerometer support&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Maybe, if we need a distraction, we will look at &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/130"&gt;Wireguard integration&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Please also join our &lt;a class="reference external" href="https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/maemo-leste"&gt;mailing list&lt;/a&gt; to stay up to date, ask questions and/or
help out.&lt;/p&gt;
&lt;p&gt;If you like our work and want to see happen and continue, join us!&lt;/p&gt;
&lt;p&gt;We're currently on irc.libera.chat in #maemo-leste, but also hang out in
#maemo. We also monitor the mailing list and github issues closely.&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="n900"></category><category term="keyboard"></category><category term="wifi"></category><category term="alpha"></category><category term="icd"></category><category term="networking"></category><category term="connectivity"></category></entry><entry><title>Maemo Leste - Third update (May + June) 2018</title><link href="https://maemo-leste.github.io/maemo-leste-third-update-may-june-2018.html" rel="alternate"></link><published>2018-05-15T00:00:00+02:00</published><updated>2018-05-15T00:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2018-05-15:/maemo-leste-third-update-may-june-2018.html</id><summary type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;It's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-second-update-april-2018.html"&gt;second update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;div class="section" id="on-the-software-side"&gt;
&lt;h2&gt;On the software side&lt;/h2&gt;
&lt;div class="section" id="networking"&gt;
&lt;h3&gt;Networking&lt;/h3&gt;
&lt;p&gt;This month was focussed on connectivity. A lot of progress has been made in
this area. Internet Connectivity Daemon (&lt;cite&gt;icd&lt;/cite&gt;) is now quite functional and
works together nicely with …&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;</summary><content type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;It's been a while since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-second-update-april-2018.html"&gt;second update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;div class="section" id="on-the-software-side"&gt;
&lt;h2&gt;On the software side&lt;/h2&gt;
&lt;div class="section" id="networking"&gt;
&lt;h3&gt;Networking&lt;/h3&gt;
&lt;p&gt;This month was focussed on connectivity. A lot of progress has been made in
this area. Internet Connectivity Daemon (&lt;cite&gt;icd&lt;/cite&gt;) is now quite functional and
works together nicely with the new &lt;cite&gt;libicd-network-wpasupplicant&lt;/cite&gt; plugin which
adds wireless connectivity using &lt;cite&gt;wpa_supplicant&lt;/cite&gt; as a backend. The &lt;cite&gt;connui&lt;/cite&gt;
(which provide network settings and network UI) packages are also mostly ready,
which means that we have a network daemon with wireless plugin, and working UI.&lt;/p&gt;
&lt;p&gt;At this point, open wireless networks, WEP networks, WPA and RSN (WPA2) PSK and
EAP networks should work. Not all EAP protocols are implemented yet, but it's
enough to be able to connect to well known networks like &lt;cite&gt;eduroam&lt;/cite&gt; or
&lt;cite&gt;spacenet&lt;/cite&gt;:&lt;/p&gt;
&lt;img alt="" src="/images/n900-libicd-wpasupplicant-spacenet.png" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Further required improvements are listed here, in this milestone:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/7"&gt;https://github.com/maemo-leste/bugtracker/milestone/7&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;Some of these points are quite important, such as &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/137"&gt;verifying server side
certificates&lt;/a&gt;, others
are more for completeness sake, like &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/145"&gt;supporting all EAP authentication
mechanisms&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;See section &lt;a class="reference internal" href="#wireless-connectivity-screenshots-on-the-nokia-n900"&gt;Wireless Connectivity Screenshots on the Nokia N900&lt;/a&gt;
at the end of this update for 13 screenshots showing off some of the current
wireless functionality on the Nokia N900.&lt;/p&gt;
&lt;p&gt;As of today, it is also possible to connect to a network directly from the
normal network scanning dialog, instead of having to use the settings UI to
first add a network.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;IPv6&lt;/strong&gt; is not yet implemented by us in &lt;cite&gt;icd2&lt;/cite&gt;, but there is a milestone that
details what should be done: &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/8"&gt;https://github.com/maemo-leste/bugtracker/milestone/8&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In the previous April update, we have mentioned packaging &lt;cite&gt;wl1251-cal&lt;/cite&gt; which
should make wireless on the N900 more bearable - it does, but it somehow makes
it impossible (currently) to bring up the network interface upon startup, we're
still trying to figure out why this is happening.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="accessibility"&gt;
&lt;h3&gt;Accessibility&lt;/h3&gt;
&lt;p&gt;There is quite a bit of progress on accessibility! Currently Maemo Leste is
really only usable if the device has a keyboard, or a working USB OTG port to
attach a USB keyboard; but this will change, since we hope to have an integrated
virtual keyboard soon. Localisation of the virtual keyboard layout should also
work for the initial release.&lt;/p&gt;
&lt;img alt="" src="/images/virtual-keyboard-vmware.png" style="width: 670px; height: 500px;" /&gt;
&lt;/div&gt;
&lt;div class="section" id="devices"&gt;
&lt;h3&gt;Devices&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;There are no new images to go along with this update, but we hope to release
new ones in a few weeks from now, with the connectivity and virtual keyboard
working.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;On the &lt;strong&gt;Nokia N900&lt;/strong&gt; side, not a lot of extra hardware enablement has been
committed, but in an attempt to save some power, the kernel now supports
disabling the touchscreen entirely, instead of always keeping it powered, see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/118"&gt;#118&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;On the &lt;strong&gt;Motorola Droid 4&lt;/strong&gt; side:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;The Motorola Droid 4 now properly locks/unlocks using the power key, this was
fixed in mce in &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/71"&gt;#71&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;The Motorola Droid 4 battery applet no longer complains about an empty battery
constantly: &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/90"&gt;#90&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Motorola Droid 4 does not yet have any GPU acceleration, but we're hoping to
change that in the coming months, by adding support similar to the
Nokia N900 acceleration. We're hoping to leverage previous drivers for the
Pandaboard (same gpu, same OMAP soc) in combination with this DRI3 driver:
&lt;a class="reference external" href="https://github.com/TexasInstruments/dri3wsegl"&gt;https://github.com/TexasInstruments/dri3wsegl&lt;/a&gt; There is some documentation on the
wiki: &lt;a class="reference external" href="https://leste.maemo.org/Motorola_Droid_4/PowerVR"&gt;https://leste.maemo.org/Motorola_Droid_4/PowerVR&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The Motorola Droid 4 will also likely be used to do our first phone call (and
other modem) tests, since support for phone calls on the droid seems to be
furthest along.&lt;/p&gt;
&lt;p&gt;Finally, a user tried our Droid 4 image on a very similar device: the Droid
Bionic (thinking he had actually gotten a Droid 4), and it actually seemed to
work:&lt;/p&gt;
&lt;blockquote&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="https://talk.maemo.org/showpost.php?p=1544793&amp;amp;postcount=102"&gt;https://talk.maemo.org/showpost.php?p=1544793&amp;amp;postcount=102&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://talk.maemo.org/showpost.php?p=1544823&amp;amp;postcount=105"&gt;https://talk.maemo.org/showpost.php?p=1544823&amp;amp;postcount=105&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Support for a tablet&lt;/strong&gt;: our device list has long mentioned an Allwinner A33
tablet, but nothing else was published/known, that changes now with this device
page on our wiki: &lt;a class="reference external" href="https://leste.maemo.org/A33-TurboX-Twister"&gt;https://leste.maemo.org/A33-TurboX-Twister&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;There are no tablet images available yet, and for the different Allwinner tablets we
might need to make different images (or more complicated images that support
multiple devices), but it's nice to see the software work on a tablet as well!&lt;/p&gt;
&lt;img alt="" src="/images/a33-twister-prealpha.jpg" style="width: 430px; height: 243px;" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="documentation-community"&gt;
&lt;h2&gt;Documentation/Community&lt;/h2&gt;
&lt;p&gt;The amount of people actively working on the project has increased slightly, but
the amount of people writing code has been steady since the start. We hope that
more people will get involved. There is a semi lengthy thread at talk.maemo.org:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://talk.maemo.org/showthread.php?t=100192&amp;amp;page=1"&gt;https://talk.maemo.org/showthread.php?t=100192&amp;amp;page=1&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;And we now are actively working on wiki:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://leste.maemo.org"&gt;https://leste.maemo.org&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;The device pages from maemo-leste.github.io are now migrated to the wiki:&lt;/p&gt;
&lt;blockquote&gt;
&lt;a class="reference external" href="https://leste.maemo.org/Category:Device"&gt;https://leste.maemo.org/Category:Device&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;Next we'll been trying to document the current state of Maemo Leste in a more
clear manner, and we'll try to clearly document what could (easily) be picked up
by new developers. Any help here is also required - so if anything is unclear,
please join us in IRC or on the talk.maemo.org thread and ask away!&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="what-is-next"&gt;
&lt;h2&gt;What is next?&lt;/h2&gt;
&lt;p&gt;We are making steady progress towards the &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/4"&gt;Nokia N900 alpha release&lt;/a&gt;. Most of the work done
for this milestone also directly benefits other devices, but we are trying to
get at least one device properly supported quickly.&lt;/p&gt;
&lt;p&gt;In the coming weeks, we are going to try to:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Document more about the current state of the project and how people can help
out;&lt;/li&gt;
&lt;li&gt;Stabilise the wireless plugin;&lt;/li&gt;
&lt;li&gt;Finish the virtual keyboard;&lt;/li&gt;
&lt;li&gt;Get new pre-alpha images for developers ready&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After that, one of the developers will briefly look at supporting the Nexus 5,
because it is a device that is pretty decently supported by mainline, has 3D
acceleration and there is some progress on calls using the modem as well.&lt;/p&gt;
&lt;p&gt;After this is done, there are several things that would make sense to focus on:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;2G/3G/4G ofono plugin for icd2, creating a UI for 2G, 3G and 4G connectivity for
devices with a supported modem;&lt;/li&gt;
&lt;li&gt;Provide a port of Qt4 so that many other applications can be built;&lt;/li&gt;
&lt;li&gt;Look into phone calls with (one of) the Nokia N900, Droid 4 and Nexus 5;&lt;/li&gt;
&lt;li&gt;Finishing the USB slave/OTG support widgets and daemons &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/107"&gt;#107&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;Look at solving some of the parallel boot issues &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/83"&gt;#83&lt;/a&gt;; when enabling OpenRC
parallel boot, these issues actually go away, but for some reason the Nokia
N900 specifically doesn't work with parallel boot yet.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All in all, we're marching ahead and hopefully will be able to reach the &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/4"&gt;Nokia
N900 alpha release milestone&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Join us! We really need more people helping out. At this point, we specifically
need developers who can work on porting packages, help out with reverse
engineering, and debug driver issues.&lt;/p&gt;
&lt;p&gt;We're currently on irc.libera.chat in #maemo-leste, but also hang out in
#maemo. We also monitor the github issues closely.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="wireless-connectivity-screenshots-on-the-nokia-n900"&gt;
&lt;h2&gt;Wireless Connectivity Screenshots on the Nokia N900&lt;/h2&gt;
&lt;img alt="" src="/images/n900-net-1.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-2.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-3.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-4.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-5.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-6.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-7.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-8.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-9.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-10.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-11.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-12.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-net-13.png" style="width: 576px; height: 324px;" /&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="kernel"></category><category term="networking"></category><category term="connectivity"></category><category term="raspberry pi"></category><category term="icd"></category><category term="n900"></category><category term="droid4"></category><category term="nexus5"></category></entry><entry><title>Maemo Leste - Second update (April 2018)</title><link href="https://maemo-leste.github.io/maemo-leste-second-update-april-2018.html" rel="alternate"></link><published>2018-04-25T00:00:00+02:00</published><updated>2018-04-25T00:00:00+02:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2018-04-25:/maemo-leste-second-update-april-2018.html</id><summary type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;It's been over a month since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-first-update-march-2018.html"&gt;first update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;div class="section" id="on-the-software-side"&gt;
&lt;h2&gt;On the software side&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;We now also have a &lt;a class="reference external" href="https://leste.maemo.org"&gt;Wiki&lt;/a&gt; - which is not
particularly impressive yet, but the device pages will be moved over shortly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;We have added images for a new device …&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;</summary><content type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;It's been over a month since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-first-update-march-2018.html"&gt;first update&lt;/a&gt;
and there's quite some stuff to talk about!&lt;/p&gt;
&lt;div class="section" id="on-the-software-side"&gt;
&lt;h2&gt;On the software side&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;We now also have a &lt;a class="reference external" href="https://leste.maemo.org"&gt;Wiki&lt;/a&gt; - which is not
particularly impressive yet, but the device pages will be moved over shortly.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;We have added images for a new device with decent mainline support - the
&lt;a class="reference external" href="https://maemo-leste.github.io/pages/raspberry-pi-2-3-status.html"&gt;Raspberry Pi 3&lt;/a&gt; (Original and Raspi2 might
work, but is not yet tested). On the Raspberry Pi 3 the 3D acceleration works
nicely and hildon-desktop can run on a full HD screen. This makes for a nice
native development platform.
The image is armhf, not yet &lt;cite&gt;aarch64&lt;/cite&gt; (or, &lt;cite&gt;arm64&lt;/cite&gt;, if you wish). But since
the Raspberry Pi 3 supports &lt;cite&gt;aarch64&lt;/cite&gt;, it will make for a nice testing ground
when we decide to work on &lt;cite&gt;aarch64&lt;/cite&gt; support.&lt;/p&gt;
&lt;p&gt;&lt;a class="reference external" href="http://maedevu.maemo.org/images/raspi2/"&gt;http://maedevu.maemo.org/images/raspi2/&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;The N950 port that &lt;cite&gt;wicket64&lt;/cite&gt; is working now has an initial image out. There
is also an image for the N9, but this image is as of yet untested, see also
issue &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/121"&gt;#121&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The images can be found here: &lt;a class="reference external" href="http://maedevu.maemo.org/images/n950/"&gt;http://maedevu.maemo.org/images/n950/&lt;/a&gt;
The initial announcement of the ports is on &lt;a class="reference external" href="https://talk.maemo.org/showpost.php?p=1543077&amp;amp;postcount=67"&gt;this talk.maemo.org thread&lt;/a&gt;&lt;/p&gt;
&lt;img alt="" src="/images/n950-initial-port.jpg" /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;The N900 wireless should be improved with the latest packages, as we have
packaged &lt;cite&gt;wl1251-cal&lt;/cite&gt;. This will divert the &lt;cite&gt;ti-connectivity&lt;/cite&gt; firmware and
instead use the firmware in &lt;cite&gt;cal&lt;/cite&gt; on the N900. It also makes it possible to
use the mac address saved in cal. Left to implement would be using ofono to
get the right regulatory settings for the region.
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/102"&gt;https://github.com/maemo-leste/bugtracker/issues/102&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;cite&gt;maemo-security-certman&lt;/cite&gt; (required for connectivity) has been ported to
OpenSSL 1.1.0, and &lt;cite&gt;maemo-security-certman-applet&lt;/cite&gt; seems to work now.
Currently the certificate store used by &lt;cite&gt;maemo-security-certman&lt;/cite&gt; is not the
(devuan) system one, but this will follow in due time, see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/116"&gt;#116&lt;/a&gt; and
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/117"&gt;#117&lt;/a&gt;&lt;/p&gt;
&lt;img alt="" src="/images/certman-applet.png" style="width: 576px; height: 324px;" /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Our dd-able images shipped with new &lt;cite&gt;ext4&lt;/cite&gt; features that were not backwards
compatible, causing issues mounting these filesystems from Maemo Fremantle,
Safestrap and just plain Linux desktops. We have now reverted these
incompatible features, so new images should be compatible with relatively old
kernels/systems.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;The musb problems mentioned in our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-first-update-march-2018.html"&gt;first update&lt;/a&gt; have both been merged to
Linux, in Linux 4.16. We are not yet shipping Linux 4.16 for all devices
as we will have to rebase some of our other patches.
The fixes have additionally been backported to the Linux 4.9 and Linux 4.14
stable trees.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;cite&gt;hildon-usb-status-bar&lt;/cite&gt; has not been finished up yet, the status is the same
as in the March update, we hope to wrap this up in the next update.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;There are experimental SDL patches that have applied remaining maemo patches
on top of the libsdl in devuan: &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/18"&gt;https://github.com/maemo-leste/bugtracker/issues/18&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;There is a wish to have usbnet enabled on otg-capable devices by default. We
haven't finished this yet, it might in part depend on &lt;cite&gt;hildon-usb-status-bar&lt;/cite&gt;
work, but we hope to have finished this next month.
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/107"&gt;https://github.com/maemo-leste/bugtracker/issues/107&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Audio patches for the &lt;a class="reference external" href="https://maemo-leste.github.io/pages/droid-4-status.html"&gt;Motorola Droid 4&lt;/a&gt; were
posted to the &lt;cite&gt;linux-omap&lt;/cite&gt; mailing list and several people have been trying
them out, including for basic phone calls!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;On the OMAP mailing list there are also several people making good progress on
making phone calls with the modem in the &lt;a class="reference external" href="https://maemo-leste.github.io/pages/droid-4-status.html"&gt;Motorola Droid 4&lt;/a&gt;, which is super
exciting!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Mouse cursor should now be visible if a non-touch input is used; this is
useful on devices that do not (typically) have a touch screen such as the
LIME2 or the Raspberry Pi 3, see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/50"&gt;#50&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;The reverse engineering process for ICd2 and connui is nearing completion,
with most of the important bits now fully functional. Most importantly,
&lt;cite&gt;icd2&lt;/cite&gt;, &lt;cite&gt;connui-common&lt;/cite&gt; and &lt;cite&gt;connui-internet&lt;/cite&gt; are all packaged now.&lt;/p&gt;
&lt;p&gt;There's ongoing work to finish the
&lt;a class="reference external" href="https://github.com/maemo-leste/libicd-network-wpasupplicant"&gt;libicd-network-wpasupplicant module&lt;/a&gt; for icd2,
which is taking slightly longer than expected, but when finished the wifi
connectivity will work properly through the hildon UI.&lt;/p&gt;
&lt;p&gt;Additionally, the &lt;cite&gt;libicd-network-dummy&lt;/cite&gt; and &lt;cite&gt;libicd-network-usb&lt;/cite&gt; modules are
also available now.&lt;/p&gt;
&lt;p&gt;Meanwhile, enjoy a screenshot of an empty network dialog on the Raspberry pi:&lt;/p&gt;
&lt;img alt="" src="/images/raspi-conndlg.png" style="width: 576px; height: 324px;" /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Our Jenkins instance is now world-viewable - &lt;a class="reference external" href="https://phoenix.maemo.org/"&gt;https://phoenix.maemo.org/&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;NotKit has done some work on making maemo-leste run on de Gemini PDA with
Android kernel and libhybris, and he got it to work! The result can be seen
here:&lt;/p&gt;
&lt;img alt="" src="/images/gemini-pda.jpg" style="width: 426px; height: 320px;" /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;This &lt;a class="reference external" href="https://github.com/TexasInstruments/dri3wsegl"&gt;DRI3WSEGL&lt;/a&gt; repository
recently surfaced, which might make it possible to have OpenGLES accelerated
2D and 3D on &lt;cite&gt;omapdrmfb&lt;/cite&gt; using the &lt;cite&gt;modesetting&lt;/cite&gt; driver - this would be a
great step forward, although at least on the N900, we would still require the
binary PowerVR userspace driver. Nevertheless, this might also make possible
PowerVR acceleration on the Droid 4 easier.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="what-is-next"&gt;
&lt;h2&gt;What is next?&lt;/h2&gt;
&lt;p&gt;Connectivity is not wrapped up, so that still remains a big goal. Once that is
done, the reverse engineering efforts will likely focus on a virtual keyboard,
which is another big missing piece.&lt;/p&gt;
&lt;p&gt;There's a good chance we'll soon patch together a newer Droid 4 kernel to test
all the recent development, including phone calls.
Phone calls are a big deal, and it would be great if we can soon start playing
with that on the Droid 4, and later on also the N900.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Join us! We really need more people helping out. At this point, we specifically
need developers who can work on porting packages, help out with reverse
engineering, and debug driver issues.&lt;/p&gt;
&lt;p&gt;We're currently on irc.libera.chat in #maemo-leste, but also hang out in
#maemo. We also monitor the github issues closely.&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="kernel"></category><category term="networking"></category><category term="connectivity"></category><category term="n950"></category><category term="n9"></category><category term="raspberry pi"></category><category term="icd"></category><category term="n900"></category><category term="droid4"></category></entry><entry><title>Maemo Leste - First update (March 2018)</title><link href="https://maemo-leste.github.io/maemo-leste-first-update-march-2018.html" rel="alternate"></link><published>2018-03-02T12:00:00+01:00</published><updated>2018-03-02T12:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2018-03-02:/maemo-leste-first-update-march-2018.html</id><summary type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;It's been a month since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-standing-on-the-shoulders-of-giants.html"&gt;first post&lt;/a&gt; and there's a
lot of stuff to talk about!&lt;/p&gt;
&lt;p&gt;First of all, someone added us to &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Maemo#Maemo-Leste"&gt;Wikipedia&lt;/a&gt;, cool!&lt;/p&gt;
&lt;p&gt;Devuan, the distribution that Maemo Leste is based on, has released a beta
version of &amp;quot;Devuan ASCII&amp;quot; (Devuan 2.0): &lt;a class="reference external" href="https://files.devuan.org/devuan_ascii_beta/README.txt"&gt;https://files.devuan.org …&lt;/a&gt;&lt;/p&gt;</summary><content type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;It's been a month since our &lt;a class="reference external" href="https://maemo-leste.github.io/maemo-leste-standing-on-the-shoulders-of-giants.html"&gt;first post&lt;/a&gt; and there's a
lot of stuff to talk about!&lt;/p&gt;
&lt;p&gt;First of all, someone added us to &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Maemo#Maemo-Leste"&gt;Wikipedia&lt;/a&gt;, cool!&lt;/p&gt;
&lt;p&gt;Devuan, the distribution that Maemo Leste is based on, has released a beta
version of &amp;quot;Devuan ASCII&amp;quot; (Devuan 2.0): &lt;a class="reference external" href="https://files.devuan.org/devuan_ascii_beta/README.txt"&gt;https://files.devuan.org/devuan_ascii_beta/README.txt&lt;/a&gt;
Maemo Leste uses Devuan Ascii, so we're happy to see ASCII being close to
a release.&lt;/p&gt;
&lt;div class="section" id="on-the-software-side"&gt;
&lt;h2&gt;On the software side&lt;/h2&gt;
&lt;p&gt;We have imported various new packages, added new device images, and have been
working on fixing and enhancing existing packages.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;We have ported the community-ssu battery applet from &lt;cite&gt;hal&lt;/cite&gt; to &lt;cite&gt;UPower&lt;/cite&gt;, and it
is now available as an update (via apt) and installed by default in the new
images.  (See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/36"&gt;#36&lt;/a&gt;)
There are still some open issues (
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/90"&gt;#90&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/67"&gt;#67&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/68"&gt;#68&lt;/a&gt;,
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/70"&gt;#70&lt;/a&gt;)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;The battery applet work also uncovered some kernel bugs. The first one related
to the status of the battery not being correct. This bug was fixed shortly
after the bug was reported, with patches in this thread: &lt;a class="reference external" href="https://marc.info/?l=linux-pm&amp;amp;m=151933105213158&amp;amp;w=2"&gt;N900 battery status
fixes&lt;/a&gt;.
Another issue was uncovered when the battery applet seemed to get charging
events with a very long delay (60s+). The patch is currently on the mailing
list, but will hopefully make its way into the kernel after it has gotten some
review: &lt;a class="reference external" href="https://marc.info/?l=linux-kernel&amp;amp;m=151994358415447&amp;amp;w=2"&gt;[RFC PATCH] power: supply: bq27xxx: Call power_supply_changed on
status change&lt;/a&gt;.&lt;/p&gt;
&lt;img alt="" src="/images/n900-charging-battery-applet.png" style="width: 576px; height: 324px;" /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;The usb status bar has received some initial porting work from &lt;cite&gt;hal&lt;/cite&gt; to
&lt;cite&gt;udev&lt;/cite&gt;, and now the UI will pop up when the N900 (only supported device right
now) is connected to a PC.  Actually changing the USB gadgets does not yet
work, since we intend to switch to &lt;cite&gt;configfs&lt;/cite&gt; and &lt;cite&gt;libusbgx&lt;/cite&gt; instead of the
deprecated gadget modes, so that we can also provide more complex gadgets in
the near future, see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/39"&gt;#39&lt;/a&gt;.
While porting the applet, a few kernel bugs were uncovered. The first problem
was that reading the &lt;cite&gt;vbus&lt;/cite&gt; status from sysfs caused kernel OOPSes. This
should be fixed with this patch: &lt;a class="reference external" href="https://marc.info/?l=linux-omap&amp;amp;m=151977053826963&amp;amp;w=2"&gt;[PATCH v2 1/1] usb: musb: call
pm_runtime_{get,put}_sync before reading vbus registers&lt;/a&gt;.
The second issue is that sometimes the &lt;cite&gt;mode&lt;/cite&gt; file in the &lt;cite&gt;musb-hdrc&lt;/cite&gt;
controller will return &lt;cite&gt;(null)&lt;/cite&gt; rather than a sensible mode (e.g. &lt;cite&gt;b_idle&lt;/cite&gt;,
&lt;cite&gt;b_peripheral&lt;/cite&gt;, etc). This has been reported here: &lt;a class="reference external" href="https://marc.info/?l=linux-kernel&amp;amp;m=151994805016878&amp;amp;w=2"&gt;usb: musb: &amp;quot;(null)&amp;quot; in
sysfs mode file after disabling a gadget (and at other times, system hangs)&lt;/a&gt;. As the title
suggests, at other times the device would simply reboot when switching to
another gadget. So there's more work to be done in this area.&lt;/p&gt;
&lt;img alt="" src="/images/leste-initial-usb-applet.png" style="width: 576px; height: 324px;" /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;The system menu and lock screen mostly works, but doesn't work directly from
startup on the N900. This is likely a boot (race) condition triggered in part
by the fact that &lt;cite&gt;hildon-desktop&lt;/cite&gt; currently starts slowly.  See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/83"&gt;#83&lt;/a&gt;, and meanwhile, enjoy
screenshots of working UI:&lt;/p&gt;
&lt;img alt="" src="/images/n900-lock-slider.png" style="width: 576px; height: 324px;" /&gt;
&lt;img alt="" src="/images/n900-system-menu.png" style="width: 576px; height: 324px;" /&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;To be able to quickly get some of these kernel fixes to Maemo Leste, we have
git repositories with some device specific kernel patches. Now, at least for
the N900, we also have a package: &lt;cite&gt;linux-image-n900 - Linux kernel package for
Nokia N900 (4.15)&lt;/cite&gt;. It currently already carries all of the fixes mentioned
above.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;The orientation lock applet is also ported, but has yet to see any reasonable
testing, see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/37"&gt;#37&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;The &lt;cite&gt;Mode Control Entity&lt;/cite&gt; (mce) can now control the backlight on the Droid4,
and likely on almost every other device with Linux mainline support out there,
see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/65"&gt;#65&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;cite&gt;mce&lt;/cite&gt; can now read the battery status using &lt;cite&gt;UPower&lt;/cite&gt;, profiting from earlier
work done on the battery applet, see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/87"&gt;#87&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;cite&gt;ofono&lt;/cite&gt; no longer crashes, as reported in
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/61"&gt;#61&lt;/a&gt;. We have also
imported the latest ofono release, since the required version was not yet
present in Debian sid (nor in Devuan).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;With some work, &lt;cite&gt;ofono&lt;/cite&gt; can be used to set up a &lt;cite&gt;2g/3g&lt;/cite&gt; data connection, as
described in &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/61"&gt;#61&lt;/a&gt;. It is also possible to send a text and start a phone
call, using dbus. The phone call is without audio. At present, there is no
integration or UI available in Maemo Leste for any of this.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="http://maedevu.maemo.org/images/droid4/"&gt;Motorola Droid4 images are now available&lt;/a&gt;, but be mindful that you need
to have already rooted the device and to have installed safestrap.
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/26"&gt;#26&lt;/a&gt;
We hope that someone will volunteer to extend our current device pages with
installation instructions, or at least pointers to said instructions (see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/75"&gt;#75&lt;/a&gt;).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;There are also &lt;a class="reference external" href="http://maedevu.maemo.org/images/olimex-lime2/"&gt;LIME2 images available&lt;/a&gt;. Like the Droid4 image, they
do not yet contain any hardware acceleration. At present, the LIME2 images
also require that a HDMI monitor is hooked up at boot time. (If someone tries
out the images, please document your experience and consider adding to our
devices pages). There is an open issue that contains the current state of the
images: &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/43"&gt;#43&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;There are now also &lt;cite&gt;armel&lt;/cite&gt; images available for the N900, but &lt;strong&gt;they do not
yet work&lt;/strong&gt;, so please stick to &lt;cite&gt;armhf&lt;/cite&gt; images for now.
See &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/92"&gt;#92&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Our repositories were missing source packages for many packages, so &lt;cite&gt;apt-get
build-dep&lt;/cite&gt; and &lt;cite&gt;apt-get source&lt;/cite&gt; often did not work. This is now resolved, see
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/84"&gt;#84&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Several people have inquired about a &amp;quot;Scratchbox&amp;quot; like tool. Currently,
development is done on the devices themselves, or virtual machines. You can
simply use the standard Debian development tools for all development and
packaging, so at this point there does not seem to be a reason to develop a
Scratchbox-like environment.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;A &lt;strong&gt;lot&lt;/strong&gt; of work has gone into readying &lt;cite&gt;connui&lt;/cite&gt; and &lt;cite&gt;icd2&lt;/cite&gt; (the connectivity
UI, API, daemon and plugins) for Maemo Leste. Unfortunately, it is not in a
completed state yet, but it's getting quite close. More on that later on in
this post.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;More work has been done behind the scenes, so if you're excited, please do
follow our github issue tracker and/or the IRC channel. We also have logs of the
channel history now: &lt;a class="reference external" href="http://maedevu.maemo.org/irc.txt"&gt;http://maedevu.maemo.org/irc.txt&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="what-is-next"&gt;
&lt;h2&gt;What is next?&lt;/h2&gt;
&lt;p&gt;We have started to use the Github 'Milestones' feature to sort tickets by order
of importance and feasibility, and you can see the ticket that we deem necessary
for an Alpha releases here: &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/milestone/4"&gt;Alpha release milestone&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A lot of major things are still missing. A few obvious ones are phone calls, UI
and daemons for conversations, integration for wifi connectivity, integration
for 3g data, 3d acceleration for various supported platforms, support for Qt
applications and some sort of Android application support. We will try to cover
what we're going to work on for the next month, to give you an indication on
where we are, where we are going, and where you can help.&lt;/p&gt;
&lt;div class="section" id="connectivity"&gt;
&lt;h3&gt;Connectivity&lt;/h3&gt;
&lt;p&gt;The first big thing that we want to attempt to get into a working state is
&lt;cite&gt;connui&lt;/cite&gt;, &lt;cite&gt;icd2&lt;/cite&gt; and &lt;cite&gt;wpa_supplicant&lt;/cite&gt; integration for &lt;cite&gt;icd2&lt;/cite&gt;. In layman terms:
we want wifi to work with the Maemo Fremantle UIs. To do this, we need to finish reverse
engineering the last bits of &lt;cite&gt;connui&lt;/cite&gt;, and then we need to write a plugin for
&lt;cite&gt;icd2&lt;/cite&gt; that communicates with &lt;cite&gt;wpa_supplicant&lt;/cite&gt;, the de-facto wifi daemon. (See
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/73"&gt;#73&lt;/a&gt; and &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/42"&gt;#42&lt;/a&gt;)
We will need someone to finish the &lt;cite&gt;icd2&lt;/cite&gt; documentation in doxygen format: &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/28"&gt;#28&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Similarly, we would also need someone to take a look at what the best way would
be to integrate ofono into our networking stack. One method to do that would be
to integrate it into icd2, but perhaps there are also alternatives, by using
&lt;cite&gt;NetworkManager&lt;/cite&gt; or &lt;cite&gt;connui&lt;/cite&gt;, and somehow hooking those up to &lt;cite&gt;icd2&lt;/cite&gt;.&lt;/p&gt;
&lt;p&gt;Having working phone calls with audio (even with perhaps not too great audio
quality) would be a huge win and might not be too far out, we're hoping someone
will pick this up, see &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/27"&gt;#27&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="android-in-a-box"&gt;
&lt;h3&gt;Android in a box&lt;/h3&gt;
&lt;p&gt;The best way to run Android applications on GNU/Linux seems to be &lt;a class="reference external" href="https://anbox.io/"&gt;Anbox&lt;/a&gt;, which is in the process in being packaged for Debian (and
Devuan): &lt;a class="reference external" href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884797"&gt;https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=884797&lt;/a&gt;
We have a ticket for anbox support, &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/9"&gt;#9&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We do not yet know how much RAM anbox would use and if it is feasible for all
our supported devices, but devices such as the LIME2 and the Motorola Droid 4
might have enough RAM to spare to run Android applications using Anbox.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="drivers-and-packaging"&gt;
&lt;h3&gt;Drivers and packaging&lt;/h3&gt;
&lt;p&gt;Having 3D acceleration work on the LIME2 devices would be quite nice, since they
can output to high resolution screens, in which case 3D acceleration is really a
must-have &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/43"&gt;#43&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The Droid 4 also currently has no 3D acceleration. We hope that a more
lightweight version of &lt;cite&gt;hildon-desktop&lt;/cite&gt; can provide some solace here &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/51"&gt;#51&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Finishing the USB gadget code is definitely a short term goal, but that depends
on how fast we can get the kernel bugs resolved.&lt;/p&gt;
&lt;p&gt;Another thing we want to wrap up soon is importing the Maemo Qt patches (
&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/53"&gt;#53&lt;/a&gt;), since that will
allow us (and hopefully, others) to import many more packages from Maemo
Fremantle. Examples of such packages are clockui (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/55"&gt;#55&lt;/a&gt;), osso-calculator (&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/54"&gt;#54&lt;/a&gt;) and open media player
(&lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/25"&gt;#25&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Packaging &lt;cite&gt;pulseaudio&lt;/cite&gt; is also somewhere on the road map, which might be
required for better call quality on the N900 and also to protect the N900
speakers from being irrepairably damaged &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker/issues/62"&gt;#62&lt;/a&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="platform-support"&gt;
&lt;h3&gt;Platform support&lt;/h3&gt;
&lt;p&gt;We might look at supporting &lt;cite&gt;arm64&lt;/cite&gt; in the near future, if we have a (virtual)
device that we can test our builds on.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;If you're interested in specifics, or helping out, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Join us! We really need more people helping out. At this point, we specifically
need developers who can work on porting packages, help out with reverse
engineering, and debug driver issues.&lt;/p&gt;
&lt;p&gt;We're currently on irc.libera.chat in #maemo-leste, but also hang out in
#maemo. We also monitor the github issues closely.&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="kernel"></category><category term="networking"></category><category term="battery"></category><category term="ofono"></category><category term="n900"></category><category term="droid4"></category></entry><entry><title>Maemo Leste - Standing on the shoulders of giants</title><link href="https://maemo-leste.github.io/maemo-leste-standing-on-the-shoulders-of-giants.html" rel="alternate"></link><published>2018-02-01T12:00:00+01:00</published><updated>2018-02-01T12:00:00+01:00</updated><author><name>Merlijn Wajer</name></author><id>tag:maemo-leste.github.io,2018-02-01:/maemo-leste-standing-on-the-shoulders-of-giants.html</id><summary type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;We are happy to announce the immediate availability of Maemo &lt;cite&gt;Leste&lt;/cite&gt;
(pre-alpha), a GNU+Linux distribution in spirit of &lt;a class="reference external" href="http://maemo.org"&gt;Maemo Fremantle&lt;/a&gt;, originally developed by &lt;cite&gt;Nokia&lt;/cite&gt; for their internet tablets
and phones, like the famous &lt;cite&gt;Nokia N900&lt;/cite&gt;.&lt;/p&gt;
&lt;p&gt;Maemo &lt;cite&gt;Leste&lt;/cite&gt; aims to provide a similar experience to Maemo &lt;cite&gt;Fremantle&lt;/cite&gt;, but
based on …&lt;/p&gt;</summary><content type="html">&lt;img alt="" src="/images/logo.png" style="width: 250px; height: 353px;" /&gt;
&lt;p&gt;We are happy to announce the immediate availability of Maemo &lt;cite&gt;Leste&lt;/cite&gt;
(pre-alpha), a GNU+Linux distribution in spirit of &lt;a class="reference external" href="http://maemo.org"&gt;Maemo Fremantle&lt;/a&gt;, originally developed by &lt;cite&gt;Nokia&lt;/cite&gt; for their internet tablets
and phones, like the famous &lt;cite&gt;Nokia N900&lt;/cite&gt;.&lt;/p&gt;
&lt;p&gt;Maemo &lt;cite&gt;Leste&lt;/cite&gt; aims to provide a similar experience to Maemo &lt;cite&gt;Fremantle&lt;/cite&gt;, but
based on a modern and free software stack. The initially targetted device is the
&lt;a class="reference external" href="https://maemo-leste.github.io/pages/n900-status.html"&gt;Nokia N900&lt;/a&gt;, but other (currently unsupported)
targets exist
(&lt;a class="reference external" href="https://maemo-leste.github.io/pages/droid-4-status.html"&gt;Motorola Droid 4&lt;/a&gt;,
&lt;a class="reference external" href="https://maemo-leste.github.io/pages/generic-amd64-status.html"&gt;Generic AMD64&lt;/a&gt;,
&lt;a class="reference external" href="https://maemo-leste.github.io/pages/allwinner-a20-lime2-status.html"&gt;Allwinner A20 LIME2&lt;/a&gt;,
&lt;a class="reference external" href="https://maemo-leste.github.io/pages/allwinner-a33-tablet-status.html"&gt;Allwinner A33 Tablet&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;In short, we aim to provide a free and open GNU+Linux based distribution for
tablets and phones, based on proven and existing code.&lt;/p&gt;
&lt;div class="section" id="history"&gt;
&lt;h2&gt;History&lt;/h2&gt;
&lt;p&gt;The &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Maemo"&gt;Maemo&lt;/a&gt; operating system was
originally developed by Nokia for it's line of internet tablets, such as the
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Nokia_770_Internet_Tablet"&gt;Nokia N770&lt;/a&gt;,
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Nokia_800"&gt;Nokia N800&lt;/a&gt;,
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Nokia_810"&gt;Nokia N810&lt;/a&gt;
and the &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Nokia_N900"&gt;Nokia N900 phone&lt;/a&gt;.
The &lt;cite&gt;Maemo&lt;/cite&gt; version for the Nokia N900 was &lt;cite&gt;Fremantle&lt;/cite&gt;.&lt;/p&gt;
&lt;p&gt;After Nokia stopped working on &lt;cite&gt;Maemo&lt;/cite&gt; getting ready to transition to &lt;cite&gt;Meego&lt;/cite&gt;,
the community picked up maintainership of &lt;cite&gt;Maemo&lt;/cite&gt;, resulting in the &lt;a class="reference external" href="http://wiki.maemo.org/Community_SSU"&gt;Community
SSU&lt;/a&gt; effort that, to this day, provides
updates for the Nokia N900.&lt;/p&gt;
&lt;p&gt;Additionally, the community has been working on upstreaming most of the kernel
drivers for the Nokia, the current status can be seen on &lt;a class="reference external" href="https://elinux.org/N900"&gt;elinux.org/N900&lt;/a&gt;, resulting in the N900 probably being the best
supported phone by Linux mainline.&lt;/p&gt;
&lt;p&gt;Maemo &lt;cite&gt;Leste&lt;/cite&gt; uses a modern base (in the form of Devuan/Debian) and aims to make
most of the software from Maemo &lt;cite&gt;Fremantle&lt;/cite&gt; available as a repository.  Maemo
&lt;cite&gt;Fremantle&lt;/cite&gt; was also based on Debian and uses the same package manager, making
the transition a natural one.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="what-have-we-done-so-far"&gt;
&lt;h2&gt;What have we done so far?&lt;/h2&gt;
&lt;p&gt;We have set up a Jenkins instance &lt;a class="footnote-reference" href="#footnote-1" id="footnote-reference-1"&gt;[*]&lt;/a&gt; that is used to build any packages that we
have created, ported or imported from Fremantle and the Community SSU.
Currently, this Jenkins instance still builds for both jessie and stretch, but
we plan to turn off the jessie builds soon. All of the imported packages are
hosted on our Github project space: &lt;a class="reference external" href="https://github.com/maemo-leste/"&gt;https://github.com/maemo-leste/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We have working &lt;a class="footnote-reference" href="#footnote-2" id="footnote-reference-2"&gt;[†]&lt;/a&gt; 3D acceleration on the N900 on the latest &lt;a class="reference external" href="https://github.com/maemo-leste/n9xx-linux/tree/pvr-wip"&gt;Linux kernel&lt;/a&gt; (with minimal
patches) and a &lt;a class="reference external" href="https://github.com/maemo-leste/n9xx-xf86-video-fbdev-sgx"&gt;forward-ported X driver&lt;/a&gt;, this does still
require userspace blobs, which are packaged in the &lt;cite&gt;n900&lt;/cite&gt; component of our
repository.&lt;/p&gt;
&lt;p&gt;There is a meta package available called &lt;cite&gt;hildon-meta&lt;/cite&gt; which installs most of
the packages we have ported. For the &lt;cite&gt;Nokia N900&lt;/cite&gt; and the &lt;a class="reference external" href="https://maemo-leste.github.io/pages/allwinner-a20-lime2-status.html"&gt;Allwinner A20 LIME2&lt;/a&gt;, we have images available that can
be copied to a SD card. These images should boot directly to Maemo
&lt;cite&gt;hildon-desktop&lt;/cite&gt;.&lt;/p&gt;
&lt;p&gt;If you have neither of these devices, you can also install Maemo &lt;cite&gt;Leste&lt;/cite&gt; in
a &lt;a class="reference external" href="https://maemo-leste.github.io/pages/generic-amd64-status.html"&gt;64 bit Intel/AMD virtual machine&lt;/a&gt;,
or try to port Maemo &lt;cite&gt;Leste&lt;/cite&gt; to another
device. In general, any Linux supported device that has some GPU acceleration
(or software rendering with llvmpipe) should be a viable target.&lt;/p&gt;
&lt;p&gt;We are also gradually phasing out old and unmaintained software (some of this
has already been done by the Community SSU folks). Maemo &lt;cite&gt;Fremantle&lt;/cite&gt; uses the
now unmaintained &lt;cite&gt;upstart&lt;/cite&gt;, which has been replaced with the actively maintained
&lt;cite&gt;OpenRC&lt;/cite&gt;. We have also replaced &lt;cite&gt;hald&lt;/cite&gt; with &lt;cite&gt;eudev&lt;/cite&gt; (udev) (and related packages
such as &lt;cite&gt;upower&lt;/cite&gt;), and adjusted the Maemo software to deal with these.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="footnote-1" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-1"&gt;[*]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Our package build infrastructure glue scripts can be found at
&lt;a class="reference external" href="https://github.com/maemo-leste/jenkins-integration"&gt;https://github.com/maemo-leste/jenkins-integration&lt;/a&gt;. Packages are (re)built on
demand, depending on whether new code is pushed. Package builds have a specific
workflow and versioning explained more in-depth here: &amp;lt;url to jenkins page&amp;gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;table class="docutils footnote" frame="void" id="footnote-2" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label" /&gt;&lt;col /&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="#footnote-reference-2"&gt;[†]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Albeit currently somewhat slower than we'd like, but it is usable&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;div class="section" id="what-is-in-the-current-pre-alpha-release"&gt;
&lt;h2&gt;What is in the current pre-alpha release?&lt;/h2&gt;
&lt;p&gt;The current pre-alpha release should boot to hildon-desktop (the &amp;quot;main&amp;quot;
component of the desktop environment) on the N900. It may take a few minutes due
to an open issue in powervr that causes the startup in particular to be very
slow. Wireless should work, once &lt;cite&gt;wpa_supplicant.conf&lt;/cite&gt; entries are set; the
keyboard should have sensible key mappings and the lock switch and other buttons
should work. The Fremantle xterm application also works, as should the status
area (with a single status applet - the 'profile' applet)&lt;/p&gt;
&lt;p&gt;It is possible to install all the packages in devuan/debian, but do not expect
them to work smoothly; Firefox can be installed, but it is not optimised for
mobile usage, and scrolling using the touchscreen will not work either.&lt;/p&gt;
&lt;img alt="Initial bringup of hildon-desktop on the Nokia N900" src="/images/maemo-leste-ascii-h-d-n900-3.jpg" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;The Motorola Droid 4 and LIME2 images not yet ready, but here are some
screenshots showing initial bringup of the environment anyway.&lt;/p&gt;
&lt;img alt="Initial bringup of hildon-desktop on the Motorola Droid 4" src="/images/droid4-h-d-2.jpg" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;Droid 4 running &lt;cite&gt;hildon-desktop&lt;/cite&gt;.&lt;/p&gt;
&lt;img alt="Lime2 outputting a FullHD hildon-desktop to a monitor" src="/images/lime2-h-d-2.jpg" style="width: 576px; height: 324px;" /&gt;
&lt;p&gt;LIME2 outputting &lt;cite&gt;hildon-desktop&lt;/cite&gt; to a 1920x1080 screen.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="what-are-the-next-steps"&gt;
&lt;h2&gt;What are the next steps?&lt;/h2&gt;
&lt;p&gt;We are working on porting more Maemo (Fremantle) userland towards our Leste
base, in order to provide a better and more familiar interface and experience
for users and developers. More status applets, connectivity (wifi, 2g/3g) UI are
on their way. Most packages need some sort of porting, and others are not even
open yet, and will need to be replaced or opened up. The wiki pages &lt;a class="reference external" href="https://wiki.maemo.org/Free_Maemo"&gt;Free Maemo&lt;/a&gt; and &lt;a class="reference external" href="https://wiki.maemo.org/Fremantle_closed_packages"&gt;Fremantle closed packages&lt;/a&gt; lists these various
packages.&lt;/p&gt;
&lt;p&gt;We will also try to prepare working images for the Droid 4 and
the LIME2, hopefully with some 3D acceleration.&lt;/p&gt;
&lt;p&gt;If you're interested in specifics, or helping our, or wish to have a specific
package ported, please see our &lt;a class="reference external" href="https://github.com/maemo-leste/bugtracker"&gt;bugtracker&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Once more bits are in place, we will start looking at 2g/3g connectivity and
phone calls. Power saving options might then also be something to look at.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="interested"&gt;
&lt;h2&gt;Interested?&lt;/h2&gt;
&lt;p&gt;Join us! We really need more people helping out. At this point, we specifically
need developers who can work on porting packages, help out with reverse
engineering, and debug driver issues.&lt;/p&gt;
&lt;p&gt;We're currently on irc.libera.chat in #maemo-leste, but also hang out in
#maemo. We monitor the github issues closely, but also aim to find an
appropriate (or set up a) mailing list.&lt;/p&gt;
&lt;/div&gt;
</content><category term="news"></category><category term="n900"></category><category term="droid4"></category><category term="mainline"></category><category term="release"></category></entry></feed>