<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>It's Pi all the way down... - vnc</title><link href="https://waldorf.waveform.org.uk/" rel="alternate"></link><link href="https://waldorf.waveform.org.uk/feeds/vnc.atom.xml" rel="self"></link><id>https://waldorf.waveform.org.uk/</id><updated>2023-08-01T17:02:11+01:00</updated><entry><title>Ubuntu Desktops on the Pi</title><link href="https://waldorf.waveform.org.uk/2020/ubuntu-desktops-on-the-pi.html" rel="alternate"></link><published>2020-04-17T00:00:00+01:00</published><updated>2023-08-01T17:02:11+01:00</updated><author><name>Dave Jones</name></author><id>tag:waldorf.waveform.org.uk,2020-04-17:/2020/ubuntu-desktops-on-the-pi.html</id><summary type="html">&lt;p class="first last"&gt;A quick review of the Ubuntu desktop flavours on the Raspberry&amp;nbsp;Pi&lt;/p&gt;
</summary><content type="html">&lt;p&gt;&lt;strong&gt;See Also&lt;/strong&gt;: A look at the &lt;a class="reference external" href="https://waldorf.waveform.org.uk/2021/6-months-with-the-pi-desktop.html"&gt;Hirsute desktop image&lt;/a&gt;, &lt;a class="reference external" href="https://waldorf.waveform.org.uk/2022/making-jammy-less-dodgy.html"&gt;Jammy desktop image&lt;/a&gt;, and &lt;a class="reference external" href="https://waldorf.waveform.org.uk/2023/desktop-on-a-stick.html"&gt;Making desktops with cloud-init&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;One of the things I&amp;#8217;ve been looking at recently is the relative performance of
our desktop packages on the Pi (a lot of people seem to be trying to use the Pi
4 as a desktop work-horse - and it is &lt;em&gt;reasonably&lt;/em&gt; capable of this with the
right&amp;nbsp;selections).&lt;/p&gt;
&lt;p&gt;Anyway, here&amp;#8217;s some quick notes from my experiments. Firstly, the various
desktop packages and some comments (just in the order I tried&amp;nbsp;them):&lt;/p&gt;
&lt;dl class="docutils"&gt;
&lt;dt&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;ubuntu-desktop&lt;/span&gt;&lt;/tt&gt;&lt;/dt&gt;
&lt;dd&gt;A bit sticky here and there (particularly during login and application
selection - basically anywhere Gnome tries to do any animation), but&amp;nbsp;tolerable.&lt;/dd&gt;
&lt;dt&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;xubuntu-desktop&lt;/span&gt;&lt;/tt&gt;&lt;/dt&gt;
&lt;dd&gt;A bit slicker than the default on the Pi; could actually be a reasonable
choice for a default&amp;nbsp;desktop.&lt;/dd&gt;
&lt;dt&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;lubuntu-desktop&lt;/span&gt;&lt;/tt&gt;&lt;/dt&gt;
&lt;dd&gt;It&amp;#8217;s not pretty, but damn this flies! No real surprise there given it&amp;#8217;s
LXQt which is the basis of Raspbian too. With a bit of layout tweaking this
would definitely be my go to choice of desktop under Ubuntu on the&amp;nbsp;Pi.&lt;/dd&gt;
&lt;dt&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;kubuntu-desktop&lt;/span&gt;&lt;/tt&gt;&lt;/dt&gt;
&lt;dd&gt;Ouch, this is painful. Don&amp;#8217;t misunderstand me - I love Kubuntu generally
(I&amp;#8217;m one of those old stick-in-the-muds that bemoans all the options
that&amp;#8217;ve disappeared from Gnome over the years and loves that they&amp;#8217;re all
still there on &lt;span class="caps"&gt;KDE&lt;/span&gt;). However, it&amp;#8217;s undeniably heavier and on the Pi, even
on a 4Gb Pi 4, it&amp;#8217;s just&amp;nbsp;unusable.&lt;/dd&gt;
&lt;dt&gt;&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;ubuntu-budgie-desktop&lt;/span&gt;&lt;/tt&gt;&lt;/dt&gt;
&lt;dd&gt;Oooh, pretty! Sadly, not that functional. The start menu is better than the
default but (shock! horror!) the terminal won&amp;#8217;t start, so that&amp;#8217;s this
experiment prematurely ended (yes, I could switch tty and fiddle around but
the Mac-like prettiness hasn&amp;#8217;t tempted me that much&amp;nbsp;:).&lt;/dd&gt;
&lt;/dl&gt;
&lt;div class="section" id="compatibility-notes"&gt;
&lt;h2&gt;Compatibility&amp;nbsp;notes&lt;/h2&gt;
&lt;p&gt;I was only testing the arm64 images; I&amp;#8217;d expect similar results under armhf
though. Several things are worth adding to improve compatibility or enable
hardware (these apply to pretty much all the desktops&amp;nbsp;above):&lt;/p&gt;
&lt;div class="section" id="graphics"&gt;
&lt;h3&gt;Graphics&lt;/h3&gt;
&lt;p&gt;Add &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;dtoverlay=vc4-fkms-v3d&lt;/span&gt;&lt;/tt&gt; to &lt;tt class="docutils literal"&gt;/boot/firmware/syscfg.txt&lt;/tt&gt; to enable the
&amp;#8220;fake&amp;#8221; &lt;span class="caps"&gt;KMS&lt;/span&gt; frame-buffer. Lots of &lt;span class="caps"&gt;GUI&lt;/span&gt; instability without this. For all those
that want this to be the default: so do I, but there&amp;#8217;s issues with doing this
that need solving first (breaks u-boot&amp;#8217;s video console, and breaks boot on the&amp;nbsp;3A+).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="audio"&gt;
&lt;h3&gt;Audio&lt;/h3&gt;
&lt;p&gt;From Focal (20.04) onwards, &lt;tt class="docutils literal"&gt;dtparam=audio=on&lt;/tt&gt; should be the default in the
boot configuration so audio should at least be present. However, if you&amp;#8217;re
installing a desktop environment you also want to tweak a pulse-audio parameter
to improve its scheduling and avoid choppy audio. Edit
&lt;tt class="docutils literal"&gt;/etc/pulse/default.pa&lt;/tt&gt; and find the&amp;nbsp;line:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
load-module module-udev-detect
&lt;/pre&gt;
&lt;p&gt;And append &lt;tt class="docutils literal"&gt;tsched=0&lt;/tt&gt; so that the line&amp;nbsp;reads:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
load-module module-udev-detect tsched=0
&lt;/pre&gt;
&lt;p&gt;(thanks to BranLoux896 on the &lt;a class="reference external" href="https://raspberrypi.org/forums/"&gt;Raspberry Pi forums&lt;/a&gt; for mentioning&amp;nbsp;this!)&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="login-managers"&gt;
&lt;h3&gt;Login&amp;nbsp;managers&lt;/h3&gt;
&lt;p&gt;Most of the desktop packages provide a selection of display managers (gdm3,
lightdm, ssdm, etc.) on installation. I attempted most selections and found
that lightdm doesn&amp;#8217;t work for some reason I haven&amp;#8217;t tried to figure out yet,
but gdm3 and ssdm work&amp;nbsp;fine.&lt;/p&gt;
&lt;p&gt;However, one issue with gdm3: it always defaults to the &amp;#8220;ubuntu&amp;#8221; desktop even
if you&amp;#8217;ve installed, say, &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;lubuntu-desktop&lt;/span&gt;&lt;/tt&gt;. After selecting the user to
login as, click the gears at the bottom right and select the &lt;em&gt;actual&lt;/em&gt; desktop
you installed before completing the login&amp;nbsp;:)&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="wireless-bluetooth"&gt;
&lt;h3&gt;Wireless &lt;span class="amp"&gt;&amp;amp;&lt;/span&gt;&amp;nbsp;Bluetooth&lt;/h3&gt;
&lt;p&gt;Install the &amp;#8220;iw&amp;#8221; package (which&amp;#8217;ll pull in &amp;#8220;crda&amp;#8221;) and then run &lt;tt class="docutils literal"&gt;sudo iw reg
set &lt;span class="caps"&gt;GB&lt;/span&gt;&lt;/tt&gt; (if you&amp;#8217;re in the &lt;span class="caps"&gt;UK&lt;/span&gt; like me; substitute &lt;span class="caps"&gt;GB&lt;/span&gt; for your region code
otherwise) to set the WiFi region correctly (usually enables a few channels
that aren&amp;#8217;t enabled in the default &amp;#8220;world region&amp;#8221;). I&amp;#8217;ll endeavour to get this
in the image by default in Focal, but you&amp;#8217;ll still need to set the region code
for&amp;nbsp;now.&lt;/p&gt;
&lt;p&gt;Install the &amp;#8220;pi-bluetooth&amp;#8221; package to enable Bluetooth. This &amp;#8220;just works&amp;#8221; once
the package is&amp;nbsp;installed.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="remote-desktops"&gt;
&lt;h3&gt;Remote&amp;nbsp;desktops&lt;/h3&gt;
&lt;p&gt;I ran a quick experiment in Terminal Services-style remote desktops with xrdp
under lubuntu-desktop (the only one I figured would be light enough to be
worthwhile for such endeavours). To try&amp;nbsp;this:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;install the &lt;tt class="docutils literal"&gt;xrdp&lt;/tt&gt; package&lt;/li&gt;
&lt;li&gt;add the &lt;tt class="docutils literal"&gt;xrdp&lt;/tt&gt; user to the &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;ssl-cert&lt;/span&gt;&lt;/tt&gt; group&lt;/li&gt;
&lt;li&gt;reboot&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Then you should be able to connect remotely using an &lt;span class="caps"&gt;RDP&lt;/span&gt; client (like
&lt;tt class="docutils literal"&gt;remmina&lt;/tt&gt;) providing you specify the username and password in the connection&amp;nbsp;settings.&lt;/p&gt;
&lt;p&gt;Another quick experiment in screen-scraping style remote desktop was
semi-successful with the &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;tigervnc-scraping-server&lt;/span&gt;&lt;/tt&gt; package but a further
experiment to do &lt;span class="caps"&gt;TS&lt;/span&gt;-style remote desktop with &lt;span class="caps"&gt;VNC&lt;/span&gt; wouldn&amp;#8217;t work (some issue
with &lt;span class="caps"&gt;GDM&lt;/span&gt; I didn&amp;#8217;t have time to dig&amp;nbsp;into).&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="power-saving"&gt;
&lt;h3&gt;Power&amp;nbsp;saving&lt;/h3&gt;
&lt;p&gt;Power saving is &amp;#8230; rather pointless. I forget which desktop I saw this on, but
one of them decided to put the Pi to sleep on idle timeout and &amp;#8230; that just
effectively switched the Pi off! So, turn off all those suspend timers&amp;nbsp;:)&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
</content><category term="misc"></category><category term="ubuntu"></category><category term="lubuntu"></category><category term="xubuntu"></category><category term="kubuntu"></category><category term="budgie"></category><category term="hirsute"></category><category term="pi"></category><category term="desktop"></category><category term="bluetooth"></category><category term="wifi"></category><category term="vnc"></category><category term="rdp"></category></entry></feed>