Project Zebra: Next he'll be wanting his own Thundertank ►
◄ More on LEGO space marine dreadnoughts, this time with LDD
This entry is part of my Project Zebra series covering migration to Linux for personal computing use.
Title reference: the rather wonderful 2017 DuckTales reboot.
I'll mention the server move here since it's all Linux-related... I'd lost track of how long I've been with PlugSocket, then UnitedHosting, now Hosting UK (who like whatever's left of UH are part of Iomart having being acquired in 2015 and 2012 respectively). About fifteen years according to Netcraft.
UnitedHosting were friendly, helpful and prompt with replies, etc but it's fair to say that proactive updates were never particularly on their radar, and that extended to running PHP 5.6 past EOL. In addition to making it easy for customers to switch between PHP versions, Hosting UK have moved with the times in offering Let's Encrypt support – rightly assessing that the situation is like Tesco and other supermarkets feeling that they had to make sure that DVD players they stocked could be made region free, and I'm sure it'll avoid friction.
https://hostinguk.net/blog/ssl-certificates-lets-encrypt/ (2016) https://hostinguk.net/blog/chrome-marking-my-http-page-as-not-secure/
The reason I opted for a migration ahead of schedule wasn't primarily for adding a certificate, though, but because following servers being moved from the old UH data centre there were some DDOS attacks that resulted in widget.xssl.net being unavailable for SMTP traffic. Options for dealing with this were apparently limited by the legacy UH environment. Migrating mostly went okay, although there was an acknowledged error made with the email config and on the off-chance you tried to contact me between 11pm on the 6th of July and the following morning please resend. So confidence was a little dented by that, and as there've been one or two two major outages of their own services in the last eighteen months (chiefly being let down by suppliers) and grumbles by others (hard to gauge without knowing individual circumstances) I'd be lying if said I hadn't looked at alternatives. Having said that, the current server setup resolving to Glasgow and Maidenhead is reassuring.
It appears (the site still exists and will take you through to checkout with Hosting UK) UnitedHosting packages are still being sold, despite specifications being dated. Similarly, for existing customers, checking back on emails it doesn't it appear anything has been said about moving to Hosting UK packages since accounts transitioned in September 2018 – although they may have fallen foul of GDPR in this respect. As it happens I renewed an old package this May – managing to pay twice until refunded since I'd had a recurring subscription set up under the previous billing system and then was invoiced separately – and whilst I have no real complaints about the UH-era technical specs since I use the hosting for email and little else, and I can't see much reason to not continue to use AWS for large storage needs, etc, I'd hope there'll be some parity offered before future billing cycles and that being a mite critical here isn't going to cause me to need to break out day job skills.
Anyway, onto technical bits and pieces. PHP 7 is likely to break any old code that's more complicated than include statements, so if you're using third party forums or similar you can't rewrite easily you'd better hope there's an upgrade path. I gave the simple homebrew stuff here a pass with PHPCompatibility – which if you're coming to it fresh is just a matter of installing php, getting the phar files for PHP_CodeSniffer and following the check-out method for PHPCompatibility
Like other sites I've dealt with the handful of points it picked up were a few ereg regex functions and mysql_ being retired for mysqli. This seemed like a good point to remove the comments code here, and with it any dependency on a database. Although the hand-rolled CAPTCHA approach I was using kept spam away, I see this place as a scrapbook or pinboard rather than a form of social media and prefer people to message if they want to have a conversation. I've tidied a few graphics and style sheets whilst I was at it.
I was doing this in an Xubuntu virtual machine, so brief notes on that, which received a little bit of config to set light theme elements and use "Greybird accessibility" (my preferred window theme if not 4deb and spending time making everything look retro)...
Mounting shared folders in the Vbox machine:
sudo mount -t vboxsf [name] /path/to/mount/as/
Getting auto-resize to work in a Vbox Xubuntu guest:
sudo apt-get install virtualbox-guest-dkms virtualbox-guest-utils virtualbox-guest-x11
Quickly setting up Xfce, getting rid of most Adwaita rounded corners:
Add * { border-radius: 0; } to ~/.config/gtk-3.0/gtk.css
Speaking of which, Xfce 4.14 is due for release 11th August and we should see it in Xubuntu in October.
https://simon.shimmerproject.org/2019/05/19/xfce-4-14pre1-released/
https://simon.shimmerproject.org/2019/07/01/xfce-4-14pre2-released/
https://simon.shimmerproject.org/2019/07/31/xfce-4-14pre3-released/
https://www.omgubuntu.co.uk/2019/08/xfce-4-14-desktop
The push of the release has been implementing GTK3 on all main components, as a prerequisite for supporting other tech and general future-proofing, whilst everything else receives polish. Xfce's raison d'etre as a desktop environment is being stable, configurable, light on resources and not changing things for the sake of it or ideological reasons... it's kind of the opposite of Gnome.
In other bits and pieces, I've added the --primary switch to xrandr config and tweaked my volume indicator Generic Monitor script;
#!/bin/bash
VOL_PC=$( pactl list sinks | perl -000ne 'if(/#1/){/(Volume:.*)/; print "$1\n"}' | grep -o '[0-9]\+%' | head -1 )
MUTED=$( pactl list sinks | perl -000ne 'if(/#1/){/(Mute:.*)/; print "$1\n"}' | sed -r 's/.{6}//' )
SINK=$( pactl list sinks | perl -000ne 'if(/#1/){/(Description:.*)/; print "$1\n"}' | sed -r 's/.{13}//' )
VOL_NUM=${VOL_PC/\%/}; NUM_BARS=$((VOL_NUM/10)); BARS=$( printf '%*s' "$NUM_BARS" | tr ' ' "l" )
NUM_DOTS=$((10-$NUM_BARS)); DOTS=$( printf '%*s' "$NUM_DOTS" | tr ' ' "l" )
BARS_COL="blue"; GEN_MON=$VOL_PC; if [ $MUTED == "yes" ]; then BARS_COL="gray"; GEN_MON="$VOL_PC muted"; fi
echo "<txt> <span color=\"$BARS_COL\">$BARS</span><span color=\"silver\">$DOTS</span> </txt>"
echo "<tool>Sink #1: $SINK ($GEN_MON)</tool>"
echo "<txtclick>pavucontrol</txtclick>"
It looks like I might be dumping Chromium as Canonical will no longer build and include it in repositories, unless another packager steps up to prominence.
https://www.linuxuprising.com/2019/06/ubuntu-devs-testing-chromium-browser.html
A tip for dealing with NTFS permissions on removable drives;
https://srvfail.com/reset-ntfs-permissions-drives-folders/
icacls * /T /Q /C
I started to look into unicode character input, which with Windows I've gotten used to as multi-key decimal input and with Linux is generally done with hex values...
https://en.wikipedia.org/wiki/Unicode_input#In_X11_(Linux_and_Unix_variants)
LibreOffice does support the Ctrl-Shift+u [sequence] release method (eg, a and 9 gets you a copyright symbol) – presumably as it's built with a modified GTK. Fortunately it's easy enough to remember that an m-dash is 2014 rather than 8212.
I've wound down subs to Linux Magazine and Linux Format, things having become repetitive. My main sources of news at time of writing tend to be El Reg, Alterslash, opensource.com and OMG! Ubuntu.
I got Krita again, as an appimage as it'll be the only thing I have a load of KDE libraries for. Notably the moving of selections has been fixed/implemented to be more in line with other image editors:
https://www.omgubuntu.co.uk/2019/05/krita-4-2-released-download
[Desktop Entry]
Version=1.0
Type=Application
Name=Krita
Comment=
Exec=env QT_FONT_DPI=84 /home/admech/.myapps/krita-4.2.1-x86_64.appimage
Icon=/home/admech/.mygraphics/Calligra_Krita_icon.svg
Path=
Terminal=false
StartupNotify=false
Categories=Graphics
The font DPI setting works around it not respecting system font size config. From previous experience of Krita I also have an irrational hatred of the circular right-click popup palette, which can be disabled under Canvas Input Settings, but those points aside it's closer to the Corel PhotoPaint environment ideal than GIMP (I know Corel are still around, but that probably shows my age like nothing else).
Also on the theme of archeotech, I've used the old Winamp Vlevel plugin with Foobar for audio for the longest time, but an interesting possible alternative is PulseEffects, which can apply compression, equalisation, and a lot of other transformations to pulseaudio output for any application: https://www.linuxuprising.com/2018/05/pulseeffects-nice-system-wide.html
I've been trying DeaDBeeF since it hit its 1.8 milestone after several years in the wilderness, and with one essential plugin (file browser) it's a nice Mousepad to Foobar's Notepad++ or Geany. Its preamp plus clipping prevention doesn't seem to be an effective compressor – presumably it reads one peak for the track rather than seeking ahead – and the plugin does a live disk search that doesn't seem to employ caching, which is cumbersome and means that fuller library management is outside its scope, but that's okay if you're organised.
https://github.com/radiocicletta/vlevel seems to have picked up Vlevel a bit – "This repository is a fork of the original vlevel code since the last release of the original source is from 2004. Although this, the code is robust and it works pretty much unmodified nowadays. We imported from the old CVS repository and added a new module in order to use it as a JACK client. "
Since I use a fixed setting in Vlevel and wouldn't necessarily have to fuss with implementing an interface for configuration, I'm wondering about writing a DeaDBeeF DSP plugin if I can work out how (i.e. find an existing skeleton to splice and rewrite the core code into).
For a particular site I found myself updating the certificates on a Kindle 3, which I've made notes about (mainly in case I need to restore it). I should stress I can't provide support for this and if you have a reason to update certs you follow any pointers here at your own risk; I understand what it's doing, but it's fairly technical and bear in mind that the Kindle Keyboard was launched in 2010 and has had a reasonable innings for a device that (if you selected the 3G model) came with free, albeit limited, internet.
Install usbNetwork: https://www.mobileread.com/forums/showthread.php?t=88004
Connect via USB and turn wireless off so that the networking service telnet is connecting to won't require authentication
Copy your \etc\ssl\certs\ca-certificates.crt onto the Kindle's accessible storage
Kindle homescreen: [del] ;debugOn [return] [del] ~usbNetwork [return] (note: restart to go back to USB storage)
dmesg to hunt for the adapter
sudo ifconfig enp0s20u3c2 192.168.2.1 (or similar)
telnet 192.168.2.2
If the session hangs, repeat the ifconfig command and it should become responsive again
The certs file is also at \etc\ssl\certs\ca-certificates.crt on the Kindle so back it up and then copy the new one over from \mnt\us\documents or wherever you put it
Be aware that in order to install further firmware you may need to restore the original to pass checksum verification.
The wider issue is that as of firmware 3.4.2 (which I can't foresee being updated) the "experimental" web browser supports TLS 1.0 and 1.1 but not 1.2 – and Google and a number of other key industry players are aiming to kill off 1.1 as early as March 2020. It's a shame as weaknesses in 1.1 are largely theoretical and it's another step towards sending devices early to landfill.
In tangents, the Windows start menu reminds more and more of KDE as time goes on... https://www.theverge.com/2019/7/24/20708355/microsoft-windows-10-accidental-release-windows-insiders-start-menu
And not IT or Linux but https://xkcd.com/2184/ – "Name a movie that 1) you genuinely like (not "so bad it's good") 2) came out in your adult life post-2000, and 3) is rated below 50% on Rotten Tomatoes."
The first thing I thought of was LXG (League of Extraordinary Gentlemen) from 2003 and sure enough it has 17% critics and 44% audience ratings. It reminds me in production, if not authenticity, of the original Hellboy film from the following year... with LXG Connery may be phoning it in, but he's supposed to be playing a disillusioned Quartermain in a boys-own type adventure rather than Moore's deeper, darker take on the character (and others). It's fun and its own thing.
https://www.rottentomatoes.com/m/league_of_extraordinary_gentlemen
https://www.cbr.com/countdown-to-lxg-don-murphy-talks-about-assembling-the-league/
https://www.cbr.com/countdown-to-lxg-don-murphy-part-2-the-league-and-beyond/