Jump to content

Hildon: Difference between revisions

From postmarketOS Wiki
Montvid (talk | contribs)
No edit summary
Knuxify (talk | contribs)
m gitlab.com -> gitlab.postmarketos.org (bot edit)
 
(31 intermediate revisions by 13 users not shown)
Line 4: Line 4:
| imagecaption = Hildon running in QEMU
| imagecaption = Hildon running in QEMU
| graphics = X11
| graphics = X11
| toolkit = GTK+2, [https://talk.maemo.org/showthread.php?t=96800 WIP: GTK+3]
| toolkit = GTK+2
| unavailable = yes
}}
}}
[[File:Asus flo hildon.jpg|thumb|Hildon on the [[Google Nexus 7 2013 (asus-flo)|Nexus 7 2013]] with postmarketOS]]


This is the desktop from Maemo, which is a Debian-based distribution, that originally ran on the N900.<br />
This is the UI from [[Maemo]] Fremantle, which is a Debian-based distribution that originally ran on the Nokia N900. postmarketOS had an incomplete and not well maintained Hildon port based on the Maemo Leste sources, until April of 2020. It was removed as several features were missing, broken, and we could not upgrade it without investing much time to resolve packaging conflicts.
We do not have a <code>postmarketos-ui-hildon</code> yet (but that should be easy to make, look at <code>postmarketos-ui-weston</code> for reference if you're interested, dear reader).


=== Installation instructions ===
The Maemo Leste project runs Hildon on top of a recent Devuan (Debian fork) with OpenRC (same init system as Alpine), and all the devices they are targeting run the mainline kernel (Droid 4, N900, N9, ...). So for anybody who wants to run Hildon, check out '''[https://maemo-leste.github.io/ Maemo Leste].'''


Add following packages as extra in pmbootstrap init:
If somebody is willing to invest a lot of time for a new postmarketOS port of Hildon/Maemo Leste, let us know in the issues!
<pre>mesa,mesa-dri-swrast,hildon-desktop,hildon-theme-alpha,dbus-x11,xrandr,xinput,xorg-server,xf86-input-libinput,libinput</pre>


Notice that due to swrast being used (probably) this is way too slow to be usable on N900. Even typing in xfce4-terminal results in one second lag.
== See also ==
 
* {{issue|373|pmaports}} Dropping Hildon unless a maintainer steps up
 
* [https://gitlab.postmarketos.org/postmarketOS/pmaports/-/tree/106245fbc81c54db8b9715d27d594e74a00a661d/maemo maemo in pmaports tree before it was removed]
To make hildon-desktop find its theme (install hildom-theme-alpha first):
* {{MR|461}} (initial PR by NotKit with a screenshot running in QEMU)
 
* https://github.com/fremantle-gtk3 (interesting WIP GTK+3 port)
<pre class="shell">sudo ln -s /usr/share/themes/alpha /usr/share/themes/default</pre>
For default wallpapers:
 
<pre>mkdir ~/.backgrounds
cp /usr/share/themes/alpha/backgrounds/wallpaper1.png ~/.backgrounds/background-1.png
cp /usr/share/themes/alpha/backgrounds/wallpaper2.png ~/.backgrounds/background-2.png
cp /usr/share/themes/alpha/backgrounds/wallpaper3.png ~/.backgrounds/background-3.png
cp /usr/share/themes/alpha/backgrounds/wallpaper4.png ~/.backgrounds/background-4.png</pre>
 
You can then verify correct operation by ssh-ing in, as root:
 
<pre>
sudo mv /etc/profile.d/start_weston.sh /etc
sudo killall weston
sudo rc-update add dbus default
sudo rc-service dbus start
Xorg &
export DISPLAY=:0
hildon-desktop
</pre>
 
=== Running ===
 
To run hildon-desktop, create a <code>~/.xinitrc</code> with the following contents:
 
<pre>
if which dbus-launch >/dev/null && test -z "$DBUS_SESSION_BUS_ADDRESS"; then
    eval `dbus-launch --sh-syntax --exit-with-session`
fi
export LC_MESSAGES=en_GB.UTF-8
exec hildon-desktop
</pre>
 
hildon-desktop can then be started by running <code>startx</code>.
 
=== WIP: Possible fix for performance problems ===
Hildon renders everything on the GPU, which is terribly slow when we have to resort to software rendering. At least on the N900 it looks like a slideshow. The GTK+3 version won't improve this, as it also uses Clutter for rendering. However, we should be able to improve the situation by replacing the OpenGL stuff, that mesa currently handles, with a faster software implementation from [https://github.com/lunixbochs/tinygles TinyGLES] and related libraries.
 
<pre>
Current stack:
(hardware) - mesa - cogl - clutter - hildon
 
New stack:
(hardware) - tinygles - glshim - cogl - clutter - hildon
</pre>
 
It makes sense to run cogl demos with tinygles before trying anything hildon or clutter related, as Clutter depends on cogl.
 
More information:
* [https://github.com/lunixbochs/glshim glshim]
* [https://github.com/lunixbochs/tinygles/issues/9 Asking upstream if this is possible]
* [https://github.com/lunixbochs/tinygles/issues/10 Unable to run hildon-desktop: Failed to create texture 2d due to size/format constraints]
* [https://pyra-handheld.com/boards/threads/glshim.69736/ Pandora thread about glshim] (contains debug environment variables etc!)
 
=== See also ===
 
* https://github.com/postmarketOS/pmbootstrap/pull/461 (initial PR by NotKit with a screenshot running in Qemu)
* https://github.com/fremantle-gtk3 (GTK+3 port, which we could package in the future)

Latest revision as of 13:32, 4 November 2024

Hildon
Hildon running in QEMU
Hildon running in QEMU
Name Hildon
Graphics stack X11
Toolkit GTK+2
In postmarketOS
Package N/A
Status Unavailable
Hildon on the Nexus 7 2013 with postmarketOS

This is the UI from Maemo Fremantle, which is a Debian-based distribution that originally ran on the Nokia N900. postmarketOS had an incomplete and not well maintained Hildon port based on the Maemo Leste sources, until April of 2020. It was removed as several features were missing, broken, and we could not upgrade it without investing much time to resolve packaging conflicts.

The Maemo Leste project runs Hildon on top of a recent Devuan (Debian fork) with OpenRC (same init system as Alpine), and all the devices they are targeting run the mainline kernel (Droid 4, N900, N9, ...). So for anybody who wants to run Hildon, check out Maemo Leste.

If somebody is willing to invest a lot of time for a new postmarketOS port of Hildon/Maemo Leste, let us know in the issues!

See also