LXF - 254 - September 2019
LXF - 254 - September 2019
LXF - 254 - September 2019
M
4 EIA
FR D & Q
Write and sync your Automate games for more
AG
.7G 7
EE V 4O
open source notes fun building and surviving
B
PLUS!
.1
D S
3 Pi PROJECTS
LED CONTROL
OLED DISPLAYS
RASPBIAN BUSTER
pages of
65 tutorials
& features
Suckless – the Linux tools
designed to run faster
DataStax’s
WHO WE ARE
This issue we’re wondering where people
could migrate to from Ubuntu when 32-bit Escape Ubuntu?
library support gets frozen. Where would Is Ubuntu about to stop being my daily
you suggest people go? desktop driver? Probably not today,
probably not tomorrow – but next year,
Jonni Bidwell the year after that, perhaps? Since 2004
Debian hasn’t said anything about dropping Ubuntu has been making Linux users’
i386 yet – and if Debian supports it, then so lives easier offering access to all the
will at least some of it’s progeny like Sparky, software their heart’s desire, but what
AntiX and Slax. Old hardware already happens when access to that software
struggles with the modern web, so in a stops? My bet is people go elsewhere.
couple of years all it’ll
i be good for is terminal apps. I don’t play games much, but I do
game and I want access to my 15-year
old Steam (for better or for worse) and
Les Pounder GoG accounts. Canonical has clearly
I’ve been using Ubuntu since Dapper said 32-bit library support is basically on life support, so it feels like the time
Drake (6.06) and it has served me well. But to up sticks and find a new home is approaching. That’s not to say Ubuntu is
just recently I have tried out the latest bad – it is without doubt superb for what it’s designed for, and that’s now for
Manjaro release on an old Thinkpad – and server, cloud and enterprise users.
wow! Admittedly it takes a little getting As always with open source there’s a host of Linux-based distros out
used
d tto, b
butt it iis slick
li and easy to use. there that offer welcoming homes with a desktop-first approach. You just
need to pick one. Why not try Mageia on the DVD as a first step? It’s pretty
accomplished. It’s going to be interesting to see where desktop users
Mayank Sharma migrate to beyond the release of Ubuntu 20.04 LTS and that freezing of
Ubuntu dropping 32-bit support will have a 32-bit library support, with the knock on effects for Mint (it has stated 32-bit
knock-on effect and other distros will soon lib support will follow Ubuntu’s lead) and other popular Ubuntu-based
follow. I have quite a few 32-bit machines distros will likely follow. Make sure you let us know what you think. Manjaro,
doing one thing or the other. I’ll seriously Pop!_OS and more are tempting… (Jonni uses Arch, by the way.)
consider moving them to another open Putting the distro drama to one side, this issue we’re looking at how you
source OS,
OS probably
b Haiku; Shashank tells me it’s the best. can protect and fight off ransomware attacks. It’s the usual combination of
sensible precautions, good password discipline and backing up – you can’t
hold my data hostage if I have a backup copy. On a more mundane level
Shashank Sharma we’re taking the time to Roundup the best text editors. It’s an essential
While I will always recommend users to try activity and it’ll be fun to look at the alternatives out there, along with notes
their hands at Arch, it too ended official apps, improving Android and loads more tutorials, so enjoy!
32-bit support, although a community driven
edition is available. But if you must have
32-bit, Mint is a viable alternate, and it’s not Neil Mohr Editor
too d
different
ff ffrom U
Ubuntu. [email protected]
Alexandar Tolstoy
I still enjoy our domestic Mandriva-based
distribution known as Rosa. It still offers fully-
fledged i586 ISO images with the latest OSS Subscribe
software and also things like 32-bit UEFI
support. Have no fear of KGB and give it a try!
& save!
On digital and print
– see p26
SUBSCRIBE NOW!
Page 26
REVIEWS
Panda Latte 20
Is it a full PC, a Raspberry Pi competitor, an
Arduino board or some freakish mishmash
of all thee? Mike Bedford put this unusual
product through its paces.
Whonix 15 22
If routing all traffic through Tor doesn’t
satisfy your need for privacy, Mayank
Sharma tests a resource-intensive
solution with a novel approach.
Jonni Bidwell knows how not to do a lot
Sparky Linux 2019.08 23 of things, including how not to pay
Sparks often fly when Jonni Bidwell puts
his review hat on and uses something that ransoms and how not to be fooled by
isn’t (gulp) Arch – but he’s deigned to do us social engineering scams… page 34
the honour here.
Dirt 4 25
Management is petrified, hiding in their
executive panic room from the mud
ROUNDUP INTERVIEW
monster entering the building, but it’s just
Andy Kelly after a season of rallying.
ON YOUR
RASPBERRY Pi USER FREE DVD
Mageia 7.1
Raspberry Pi news 50 Q4OS 3.5
Buoys strut their stuff, there’s fancy new Pi Page 96
wallpaper, the Tektronix 4010 is revived –
and a message from Les Pounder.
Raspberry Buster 51
Les Pounder hasn’t seen the latest Toy
Story movie yet, but he’s already met
Buster in the form of the latest Raspbian
release all ready for the Pi 4.
POPULAR SOFTWARE
GaminG oPinion
CENSORSHIP
nternet users in Kazakhstan have information from users on the internet, and
Keith Edmunds
is Tiger Computing Ltd’s MD,
I noticed that their web browsers have
begun asking them to install a security
according to CPJ Advocacy Director Courtney
Radsch, “this so-called security measure looks
which provides support for certificate issued by government authorities, much more like an attempt to increase the
businesses using Linux. raising fears that their internet security and government’s censorship and surveillance
freedom could be at risk. According to capabilities.” What’s particularly worrying is the
Kazakhstan mobile service provider Kcell, and as Kazakhstan government’s history of jailing and
Open source is about translated by the CPJ website, this is a measure censoring journalists and citizens.
community: the belief that, to “protect internet users from content that is While the certificate claims it will help ensure
between us, we can make prohibited by the laws of the Republic of the security of internet users – and at the
better software so that more Kazakhstan, as well as from malicious and moment doesn’t appear to be mandatory – the
people can benefit. That potentially dangerous content.” claims should be treated with caution. Many
might seem at odds with a However, by installing a government-issued users are calling on Mozilla and Google to block
commercial company, which certificate, authorities could intercept the certificate on their web browsers.
exists to make a profit and
provide value to its
shareholders, but it doesn’t
have to be.
Open source software
SMARTPHONES HARDWARE
is ideal for charities. The
website is an obvious
example, but Linux plus
LibreOffice, Thunderbird and
Librem 5 specs RIP floppy drive?
Firefox covers most, if not
all, of the functionality
required at the desktop.
announced Linus Torvalds announces end
of support for the legacy drive.
‘Charity’ doesn’t have to The final specs for the Linux- ans of retro games and software, and
be a household name. There
will be lots of local charities
based smartphone are out. F anyone with a nostalgic bone in their
body, are in mourning after Linus
near you that would urism, the team behind the much- Torvalds announced that the legacy driver for
welcome some help, be they
homeless centres, support
P anticipated Librem 5 smartphone which
runs a Linux-based operating system
floppy disk drives would no longer be supported
in Linux (http://bit.ly/LXF254FloppyDrive).
for older or disabled people, focusing on security and privacy, has released The move actually makes sense, as floppy disk
or even your local amateur the final specifications for the handset (http:// drives are increasingly hard to find and aren’t
drama group. bit.ly/LXF254Librem5specs), and they point easily installed on most modern motherboards.
As a reader of LXF, you to a pretty capable high-end smartphone. The Plus, most people who still use floppy disks will
have skills those charities specs include a 5.7-inch IPS screen with 720 x be using USB-connected drives, and these won’t
could use. That might be 1440 resolution, an i.MX8M quad-core be affected by the move. Still, it marks the end of
setting up a website, sorting processor, 3GB RAM, 32GB storage, Bluetooth an era for the iconic storage medium. There is a
out desktops or just being 4, 8-megapixel front camera and 13-megapixel happy ending here, as a maintainer has stepped
available when needed. Mail rear camera. Like most modern up, so perhaps our 34-pin friends will live on.
me on keith@tiger- (non-Apple) smartphones, it
computing.co.uk and tell uses a USB-C port to charge
me how you’re using Linux and transfer data, and it also
to help a charity. has a few features that most
Include your address and smartphones these days sadly
I’ll send a free copy of my lack, including a user-
book, The Linux Solution, to replaceable 3,500mAh battery.
the best mail received by 7
October 2019. The Librem 5 is shaping up to be a
powerful smartphone, but with a
high price as well - $699. Support for floppy drives in Linux might be no more…
Distro watch
OPINION
IN-DISC-
What’s behind the free software sofa? RETIONS
SPARKYLINUX 2019.08
The latest release of SparkyLinux’s semi-rolling branch,
based on Debian Testing, is now available and comes
with an updated kernel (4.19.37), a new Sparky6 theme
and a refreshed desktop look. GCC (Gnu Compiler
Collection) 9 has been added, though GCC 8 remains Jonni Bidwell
the default. You don’t need to reinstall the system to Jonni’s name is an anagram of
update – visit the release notes at https://sparkylinux. ‘Bio-dwell Jinn’ – another hint to
org/sparky-2019-08 for more information. his possibly mechanistic nature.
SparkyLinux 2019.08 is based on the
Debian ‘Bullseye’ testing branch.
Greetings reader.
Thank you for joining me over
LINUX MINT 19.2 here by the forgotten column.
This new version of Linux Mint is based on Ubuntu Here’s a fact: I’ve made nearly
18.04 LTS – which means it’ll get five years of support a dozen LXFDVDs now, and
– and it brings a number of user interface they mostly seem to have
improvements to make the distro look better, as well worked. Or at least no one has
as ensuring it’s easier to use. Each desktop complained. Amazing. There’s
environment edition – Cinnamon, MATE and Xfce – all kinds of subtle
get the update, and you can find out more at: awkwardness involved in
https://blog.linuxmint.com/?p=3786 making distros boot from an
Linux Mint is one of the most popular ISO file, but fortunately,
distros in the world, and its latest release thanks to disc editors past we
add some improvements to the UI. have a record of each flavour
of Linux’s peculiarities.
Big distros like Fedora and
DEEPIN 15.11 Ubuntu support ISO booting
A new stable release of deepin has been released, and out of the box (each in their
features a major change, with a new Cloud Sync own way), but for some
feature in the control panel. Users now have the ability reason their derivatives have
to burn optical media straight from the file manager. a terrible habit of removing
There have also been improvements and fixes for the this support. This issue was
kwin window manager, and general improvements to particularly tricky because
the user experience have been included as well. For Mageia is a little different. It
more: www.deepin.org/en/2019/07/19/deepin15-11/ uses the same tool as Fedora
(Dracut) to make its initrd,
deepin is a Debian-based distro that but seems to have gone out
focuses on the user experience, with the of its way to make ISO
stylish DDE desktop environment. booting hard.
I was able to unpack the
initrd, fiddle with the init script
ORACLE LINUX 8.0 per Mageia 6, but when I
Based on the source code of Red Hat Enterprise Linux packed it all up again… kernel
8, this enterprise-class server distro brings a number panic. I sought advice from
of new features and enhancements, such as the Neil Bothwick oracle, who
Application Streams, which according to the release helpfully informed me that
announcement (https://blogs.oracle.com/linux/ the devil was in the detail,
announcing-the-release-of-oracle-linux-8), allows and one needs to add
“multiple versions of user space components [to] be --check=crc32 to the xz
delivered and updated more frequently than the core Oracle Linux 8.0 is an enterprise- incantation. Magic. What
operating system packages.” orientated distro based on the RHEL would we do without
source code. greybeards? And distro
makers: please do stop
removing ISO-booting
support. Please?
Kernel Watch
opinion
gone
floppy
Jon Masters summarises the latest happenings in
the Linux kernel, so that you don’t have to.
inus Torvalds announced the first Linus around how he would like to see disruptive
L few release candidates for what will
become Linux 5.3 in a few more
patches merged in general from now on.
Steven Rostedt announced the long-awaited
weeks. In his announcement, he noted that release of KernelShark 1.0. This is a tool that
Jon Masters is a kernel hacker 5.3-rc1 was a “pretty big release, judging by uses the output of the versatile trace-cmd utility
who’s been involved with Linux for the commit count. Not the biggest ever that to visualise the behaviour of a running Linux
more than 22 years, and works on honour still goes to 4.9-rc1, which was system, and in particular where it is really
energy-efficient Arm servers. exceptionally big. He also noted that this cycle spending its time. For example, it can allow a
had “started out pretty painfully” due to a few developer or admin to observe the behaviour of
Many of us who began bugs in the first few days but had “mostly the scheduler as it migrates tasks across cores.
using Linux in the smoothed out towards the end of the merge Underneath, trace-cmd relies on the FTrace
early days did so through Linux kernel function-tracing
distributions that shipped on
one or (usually many) floppy “There had been a few patches infrastructure, which includes
various trace points defined in the
disks. My very first Linux
distro came on 200 floppies,
merged through the graphics kernel source. Developers add
these at critical points useful to
each of which I wrote after tree that really annoyed Linus.” later analysis.
downloading a disk image To use KernelShark, you first
over a (‘high speed’) window”. Finally, he reminded us that there execute a ‘trace-cmd record’ (optionally with
100Kbps internet were about 1,600 individual developers in parameters to select filters and plug-ins) in order
connection I had access to Linux 5.3, many more than the maintainers to capture a suitable log file containing a trace of
once per week. It was with shown in the changelog listings. various kernel events. This log is then post-
some nostalgic sadness, During the 5.3 merge window there had processed and visualised with the KernelShark
then, that floppy support been a few patches merged through the ‘drm’ tool, through which events can be filtered by
appeared to reach the end (direct rendering) tree that had really annoyed process (task), CPU and various other criteria.
of the road in Linux 5.3, with Linus. In large part this was because they This is similar to the behaviour of network packet
Jiri Kosina marking it as made “a whole slew of questionable core VM protocol analyser WireShark, hence the name.
‘orphaned’ (see page 8). [Virtual Memory] changes there, and The 1.0 release has been completely rewritten
In case you never had the absolutely none of them look obvious, and using the Qt graphics framework in place of the
pleasure, floppies were a none of them have acks from any of the VM older GTK one. As such, it is “faster, it’s more
low-cost storage medium people”. This lead to a set of thoughts from extensible, and easier to use”.
commonly used until the
turn of the century in which
data was stored on a flexible ongoing DeveLopment
(‘floppy’) plasticated
magnetic disk, housed Palmer Dabbelt (the RISC-V maintainer) that can be handled by the underlying
within a sleeve of soft or posted a patch implementing a new Linux hardware. In sub-page support, Intel
hardened plastic. Different system call, named fchmodat4(). The enables an ability to manage protections
geometries existed, existing manual page for fchmodat says in a much more fine-grained manner. This
including 5.25-inch and 3.5- that it takes a ‘flags’ argument, but the is especially useful for emulating hardware
inch sizes, with capacities existing system call does not, meaning that in which different sets of registers with
typically up to 1.44MB – certain scenarios aren’t covered in the differing sets of access permissions may
while reliability varied existing code. These include cases where be closely placed in memory.
considerably with cost, and a user wants to override the handling of Matthew Garrett posted versions 35 (and
wasn’t particularly great at symbolic links. then 36) of a patch series implementing
the best of times. Yang Weijiang posted “Enable Sub-page “Kernel lockdown functionality”. These
There are still a few floppy Write Protection Support”, patches that patches aim to allow a Linux kernel to be
users left, and new systems enable Virtual Machine Monitors (VMMs) ‘locked down’ suitably so that it might –
featured drives right up until such as KVM or Xen to provide ‘sub-page’ out of the box, without downstream distro-
2006 or later. Fortunately level privileges for regions of memory. specific patches – support such things as
for those who still want Typically, Linux manages memory in pages Secure Boot and more. This has been a
to re-live yesteryear, a that represent the smallest unit of memory long time coming!
new maintainer has
been found.
Q Lost in Orbit
I run Slackware 14.2. My very old
them. As well as checking /usr/share/
X11/xorg.conf.d, X also checks for files in
correctly, while the final option identifies
which of the trackball inputs to use for the
and favourite Logitech trackball died of /etc/X11/xorg.conf.d and settings in the wheel. There are other options you can use
old age, and I’ve replaced it with a latter directory take precedence. These to customise the operation of the trackball,
Kensington Orbit trackball: two buttons files are not affected by your package or any other input device – for example,
(left 1, right 3), a ball to move the cursor manager, so this is the place to put your altering the sensitivity. See the xorg.conf
and a ring as a horizontal scroll wheel. own customisations. This is what I have man page for a full list.
I cannot paste highlighted text as the in my own /etc/X11/xorg.
two buttons simultaneously do not
function as button 2.
conf.d/10-trackball.conf:
# Settings for a Kensington Orbit
Q Access denied
I am trying to access a file located
I’ve checked the buttons using xev trackball at /etc/mpd.conf with Text Editor but
and xinput, and need an appropriate Section “InputClass” am being denied as I don’t have the right
section for /usr/share/X11/xorg. Identifier “evdev pointer catchall” permission. What gives? I am using
conf.d/10-evdev.conf. MatchIsPointer “on” Linux Mint 19.1.
Brody Jones MatchDevicePath “/dev/input/event*” A. K. Stirling
Driver “evdev”
Q Desktop shortcuts
I’m using Arch Linux with KDE
Plasma as my desktop environment and
I wonder if there is any way to create a
shortcut so that when I click on it, it will
run the command I want in a terminal.
Max Roberts
you buy direct from us not available anywhere else super-safe ordering
Mailserver
Write to us at Linux Format, Future Publishing, Quay House,
The Ambury, Bath BA1 1UA or [email protected].
WRITE TO US
Do you have a
burning Linux-
related issue
that you want to
discuss? Write
to us at Linux
Format, Future
Publishing, Quay
House, The
Ambury, Bath,
BA1 1UA or email
lxf.letters@
futurenet.com.
LattePanda
Is it a PC, a Raspberry Pi competitor or an Arduino board? Mike Bedford
put this unusual product through its paces in order to find out.
ince there are several similar products to the There’s a serial display connector for attaching a touch-
SPECS
OS: Ubuntu
S LattePanda, we need to spell out exactly what
we are reviewing here. It’s described as the
screen LCD panel, but not a camera connector –
although you could use a USB camera. It also supports
16.04 LTS or LattePanda 2GB/32GB – that is, 2GB of RAM and 32GB Wi-Fi and Bluetooth 4.0. The GPIO connectors look
Windows 10 of onboard flash storage. When we also point out that markedly different from that of the RPi, though.
CPU: Intel you’ll often also see the phrase “Windows 10 Mini PC” The main difference between the LattePanda and
Cherry Trail tagged to the end of the name, you might think it’s a Raspberry Pi – and also the RPi’s various competitors
Z8350, 1.8GHz, strange product to review in Linux Format, but things for that matter – is in its CPU. While nearly all SBCs are
quad-core, 2MB aren’t that simple. equipped with an Arm device of some sort, the
cache, 64-bit, Certainly, the LattePanda launched as a Windows LattePanda has a 64-bit Intel Cherry Trail Z8350, with
VT-x, AES 10-only product – unusual in the world of SBCs where four cores clocked at 1.8GHz, plus Intel HD graphics. A
GPU: Intel HD Linux dominates – but Linux is now officially supported variant with 4GB is also available, so we’re in the same
Graphics too. At this point we need to clarify things further by region as the RPi 4. Oh, and while the LattePanda does
Mem: 2GB, referring to the fact that even the 2GB/32GB board is have a microSD card slot, we shouldn’t forget its 32GB
1,600MHz available as two variants. Both versions have Windows 10 of onboard storage, so it saves you £5-£10 compared to
DDR3L pre-installed in the boards’ flash storage, but in one you what you’d have to pay with most SBCs.
SSD: 32GB get a Windows activation key and in the other you don’t.
(plus microSD Needless to say, since there’s a price difference of almost Real-world interfacing
slot) £29 and you’re not going to be using Windows – indeed, If you want to use the LattePanda as the heart of a PC, or
Display: HDMI you’ll be overwriting it – you should choose the non- for similar software applications as a Raspberry Pi, then
(max 1080p), activated version which has our quoted price. You what we’ve seen so far is all you’ll need to know. However,
DSI might also like to take a look at the designer’s website, if you’re interested in interfacing via the GPIO for
USB: 2x 2.0, www.lattepanda.com. experimentation or embedded applications, there are
1x 3.0 some caveats. The most unusual aspect of the
Comms: Lattes all round? LattePanda is that it doesn’t have a Raspberry
100Mbps The LattePanda has a similar form factor to the Pi-compatible GPIO but, instead, its interface to the
Ethernet, Wi-Fi Raspberry Pi, measuring the same lengthways and being outside world is Arduino-compatible (see box, opposite
802.11n 2.4GHz, just 12mm wider than the RPi 4. It has two full-sized USB page). LattePanda is very unusual in offering Arduino
Bluetooth 4.0 2.0 and one USB 3.0 ports, a full-sized HDMI socket, an compatibility on a board that runs Linux with an HDMI
Arduino: Ethernet socket and a micro-USB socket for power. output. It does this by having an onboard ATmega32U4
ATmega32U4
GPIO:
20 Arduino, 6
gravity sensors,
6 Intel CPU
Size: 88 x
58mm, 55g
It comes with
Windows 10 pre-
installed, but don’t
let that put you off!
Whonix 15
If routing all traffic through Tor doesn’t satisfy your need for privacy,
Mayank Sharma tests a resource-intensive solution with a novel approach.
honix is functionally very
in brief
This Debian-
W different from other privacy-
focused distros. Here’s a
based distro whistle-stop tour if you haven’t heard
isn’t unique in of it: The distro ships as a pair of
routing all Debian-based virtual appliances that
internet traffic you must run simultaneously.
through the There’s the Whonix-Gateway that
Tor network. exists to configure and route all
However, unlike internet traffic via Tor. This machine
its peers such has two virtual network interfaces:
as Tails and one connected to the internet via
SubgraphOS, NAT, which is used to communicate
Whonix is built with Tor, and the other connected to
on the concept a virtual network.
of security by The other machine is the Whonix- With the exception of an office suite, Whonix contains all the usual desktop apps that you’ll find
isolation and Workstation, which is the desktop in other everyday distros.
ships in the you are supposed to use for browsing
form of two and other tasks. Firewall rules on the Whonix-Workstation On the Whonix desktop you get a cherry-picked
virtual force it to only connect to the virtual network and redirect collection of privacy apps. There’s the KeePassXC
machines. This all traffic to the Whonix-Gateway. This scheme prevents password manager, zuluCrypt for encryption, qTox
arrangement web apps from ever knowing the user’s real IP address or instant messenger along with some Tor-based tools
strengthens accessing any information on the physical hardware. such as the Tor Browser and OnionShare for sharing files.
privacy and The latest v15 release introduces several new features, Highlights for us include the Firetools app to sandbox
helps isolate including a couple that make Whonix easier to deploy. apps, the MAT2 metadata anonymisation toolkit, and the
the work Starting with this release, the distro is available as a single Kloak keystroke anonymisation utility.
environment combined appliance. When you import this, it In case a bunch of privacy tools don’t convince you
from the automatically unfolds into the two virtual machines we of Whonix’s resolve to help you remain anonymous,
internet. mentioned earlier. By default, the VMs are configured to perhaps the distro’s behind-the-scenes work to curb
use four processors plus 768MB/2GB RAM for the privacy leaks will. For instance, they have blacklisted
gateway/workstation VMs. We reduced the processors uncommon network protocols out of the box to minimise
Min SPeC to two for both VMs and increased the RAM to 1GB/4GB, chances of abuse. They’ve also taken steps to harden the
Mem: 1GB and they still performed admirably well. kernel and have even sandboxed systemd services in a
HDD: 10GB bid to limit the damage of a compromised service.
CPU: AMD-V or Thoroughbred for privacy The best thing about Whonix is that its privacy
Intel VT-x The other change is the introduction of a ‘Live’ boot hardening doesn’t come at the cost of usability. The use
support option. When selected, the distro makes all writes to the of VMs eliminates the need for installation of any sort,
required memory instead of the VMs’ hard disks, which means which makes it very easy to deploy. Furthermore, the
Builds: 64-bit, they won’t persist after a reboot. Working from a Live distro also ships with a handful of wrapper scripts to
arm64 environment adds a layer of security in addition to the ease regular administration tasks.
distro’s privacy features. However, you shouldn’t rely on
this alone to thwart data retrievals, since that requires
additional steps, as the project’s documentation notes.
VerDiCT
Whonix 15 is also rebased on the new Debian 10 DeveloPeR: Whonix Developers
Buster release and has switched from the resource- WeB: www.whonix.org
intensive KDE desktop to the lightweight Xfce, which is a liCenCe: Various Free Software licences
welcome change. We weren’t enthusiastic about wasting
resources running KDE on two VMs, and the switch to feaTureS 8/10 eaSe of uSe 8/10
Xfce has made Whonix compatible with a lot more PerforManCe 7/10 DoCuMenTaTion 8/10
machines. Talking of underpowered machines, Whonix 15
has a CLI version that boots to a command line. You can Whonix is a meticulously crafted, privacy-enhancing distro
theoretically use it to pull in another desktop that helps you to remain anonymous .
environment, but the developers don’t recommend this
as it might pull in services whose privacy implications Rating 8/10
haven’t been tested by Whonix.
ON SALE
NOW
Dirt 4
Management is petrified, hiding from the mud monster entering
the building, but it’s just Andy Kelly after a season of rallying.
alfway through a gruelling
SPECS
Minimum
H four-mile rally, a tyre
suddenly pops. You can
OS: Ubuntu hear the loose rubber clinging on for
18.04 64-bit dear life until it eventually bursts and
CPU: 3.3GHz disintegrates, revealing a bare-metal
Intel Core wheel scraping along the gravel and
i3-3225 leaving a trail of sparks. The car is
Mem: 4GB flailing wildly and it’s a fight to keep it
GPU: Nvidia on the track, but we manage to limp
GeForce GTX over the finish line and place a
680/AMD R9 respectable third.
285 (GCN 3rd This is Dirt 4 at its best: those
Gen+), 2GB moments when you’re flying by the
VRAM seat of your pants, wrestling with The car is flailing wildly and you have to
fight with it to keep it on the track.
HDD: 39GB your car as it careens through the
Note: GPU mud, surviving long enough to cross
driver requires the finish line. Rallies are intense, nerve-racking tests of Mother Base. Money earned in championships is spent on
Vulkan, Nvidia endurance and driving skill. And when something goes facilities and staff, unlocking the ability to buy better parts
v418.43+, AMD wrong, like a knackered wheel or your headlights blinking for your vehicles and bonuses, such as sponsors paying
Mesa 18.3.4, out after one too many bumps in a night race, things get out greater sums of money and mid-championship
Intel GPUs are even more stressful – especially when you consider that repairs costing less. But it all happens through a series of
not supported. some damage will carry over into the next stage. dull, joyless menus, and while it’s compelling for a few
When you start Dirt 4 you’re given a choice of two hours, it soon begins to feel like a chore.
Recommended controls: Gamer and Simulation. Gamer labels itself as The sponsor system is cool, though. The gaudy logos
CPU: Intel Core being for those who want to “have fun”, but don’t be you plaster your car with aren’t just for show. If you team
i5-6600k tempted to choose it. When it’s enabled the game is up with, say, electronics company Blaupunkt, it might be
Mem: 8GB laughably easy, and you’ll soon grow tired of coming first pleased if you finish a race cleanly without hitting
GPU: Nvidia in every event and rarely veering off the track. anything – and if you do your relationship will improve,
GeForce GTX Simulation isn’t quite on the same level as superb earning you more money. But it goes the other way too,
1070 or better hardcore spin-off Dirt Rally, but it’s a lot less forgiving and it’s possible to damage your partnerships with
than Gamer. You really feel the weight of the car as you sponsors by failing to meet their needs.
speed around a corner, and it’s easy to spin out if you’re The tone is a lot more understated and serious,
too aggressive with the throttle. Even so, it’s noticeably reminiscent of the old Colin McRae Rally series, and we
more accessible and immediately playable than Dirt Rally, welcome this with wide-open arms. But it does lean a little
with nowhere near as much nuance to the controls and too heavily into being earnest and minimalist, and sorely
physics. You can get away with a lot more here, and the lacks any personality as a result. It’s so dry, although the
“Left into hard turn,
learning curve is less steep as a result. lovely Welsh voice of rally legend Nicky Grist – who you
right, right, hard Off the track there’s a team management mode that can now choose to be your co-driver – does bring a bit of
stop, crash.” seems to have been inspired by Metal Gear Solid V’s colour to the thing.
VERDICT
DevelopeR: Feral Interactive
Web: www.feralinteractive.com/en/games/dirt4
pRice: £45
Rating 8/10
SubScribe
Sign up today and get your
White Eclipse 3-Way
USB Charger
Charge multiple devices at maximum speed with the Eclipse 3-Way USB
Charger. This easy-on-the-eye charger is a three-port USB charging hub
that keeps 6m of cables neatly wrapped inside when not in use, while
providing neat pop-up access with a press of its top.
YoUr
GIFt!
Worth
£69.99
Don’t miss out,
subscribe now!
Product Features
Three devices at once
No more messy cables
Holds 6m of cable
Smart-IC Technology
High-speed charging
SUBSCrIBE NoW!
www.myfavouritemagazines.co.uk/lin/eclipse19/
Call: 0344 848 2852
26 LXF254 September 2019 www.linuxformat.com
Overseas
subs on
p67
PLUS! PLUS!
Every issue comes Get both the
with a 4GB DVD print and digital
packed full of the editions with a 4GB
hottest distros. Plus DVD. Plus your
your Eclipse 3-Way Eclipse 3-Way
USB Charger USB Charger
SAVE! SAVE!
Only Only
O
£16.25 22% That’s just £5 £72 58%
That’s just £5.54
Quarterly print per issue! Annual print and digital per issue!
by Direct Debit by Direct Debit
Terms and conditions: This offer is only available for new UK subscribers. Gift is subject to availability. Product pricing stated is RRP at original print date. Please allow
up to 60 days for the delivery of your gift. In the event of stocks being exhausted we reserve the right to replace with items of similar value. Prices and savings quoted
are compared to buying full-priced print issues. You will receive 13 issues in a year. You can write to us or call us to cancel your subscription within 14 days of purchase.
Payment is non-refundable after the 14-day cancellation period unless exceptional circumstances apply. UK calls will cost the same as other standard fixed line numbers
(starting 01 or 02) or are included as part of any inclusive or free minutes allowances, if offered by your phone tariff. For full terms and conditions please visit
www.bit.ly/magterms. Offer ends 30 September 2019.
Roundup
Atom Brackets Emacs
FocusWriter nano
Mike Bedford
loves writing but
more than that he
loves a text editor
that integrates a
coffee maker
Text editors
Which are the best text editors for programmers, writers and just
good old general use? Mike Bedford investigates…
HOW WE TESTED…
Display options
How the information is presented
on-screen in each app.
aving lots of windows or panes on screen at once
File types
Moving beyond just plain text files.
he plain text file format, containing just ASCII characters,
T is the most obvious format for a text editor to use, and all
our editors support this type of file. In the case of those
editors that only support text files, however, you’re not limited to
giving them a TXT extension. This means, for example, that if
you’re creating an HTML file, you could save it with the proper
HTML file extension.
Giving a text file an extension to indicate a programming
language isn’t just for your own information. If a text editor Because of its different target audience, FocusWriter supports RTF, DOCX and ODT
recognises an extension such as PHP or JAVA as that of a files as well as just plain text.
particular programming language, as all but FocusWriter can,
they enable their specific support for that language. This is FocusWriter will be lost. These additional file formats include
discussed later under the Language Support section. Rich Text Format (RTF), OpenOffice XML (DOCS) and Open
While the phrase ‘text editor’ might suggest that such a Document format (ODT).
package will only ever be able to read and write plain ASCII data –
whatever the file extension – FocusWriter goes one step further, VERDICT
and in this respect it resembles more of a word processor.
In reality, you’re not going to be able to create fully formatted ATom 6/10 FoCusWRITER 8/10
text in FocusWriter as you might in Microsoft Word or LibreOffice, BRACkETs 6/10 NANo 6/10
but this functionality does enable you to export your work to a EmACs 6/10
word processor or import text from one. In the latter case, With the single exception of FocusWriter, all these editors support plain text
however, sophisticated formatting that is not supported by files only.
overview
Making sense of a wide
range of packages. Atom 9/10 Brackets 9/10
To a large extent, Atom is aimed at Brackets differs from several of our other
iven that our five text editors programmers and of the packages text editors in that, although developers
Ease of use
Keeping you on the straight and narrow.
tom, Emacs and nano have a user manual; with Brackets indeed, Emacs boasts over 10,000 commands, and let’s face
Advanced features
Going beyond the basics of text editing.
ano offers nothing that could be considered over and than just a plain text editor, and whereas some of the features
Add-ons
Investigating options
for expandability.
ocusWriter offers no facilities whatsoever for expanding
Language support
Is there support for specific
programming languages?
ext editors intended for use by programmers or web
Text editors
The Verdict
irst, a disclaimer. If you’re a seasoned user of text
web: https://gottcode.org/focuswriter
Licence: GNU General Public License Version: 1.6.12
Ideal for the writer who doesn’t want to be distracted.
ALso CoNsIDER…
If you’re an Ubuntu user, you’ll find that you already have Text, which is free to trial for an unlimited period, but for
the GUI text editor Gedit and the command line editor which you are trusted to pay $70 for continued use; and
Vim (accessed by the vi command rather than vim ) Visual Code Studio, which is unusual in being an open-
pre-installed on your system, so these would be easy source Microsoft project. Add to these jEdit, Cream, SciTE,
ones to try out. Geany, Bluefish and Kwrite, and you’d have a major job on
For other distributions, you might discover Mousepad, your hands in deciding which to use. What’s more, there are
Kate, Pluma, Xed or LeafPad already installed for you to test- lots of others where these came from. Never let it be said
drive. Others which are highly respected include Sublime that text editors for Linux are in short supply.
BEWARE OF THE
RANSOMWARE
Jonni Bidwell knows how not to do a lot of things,
including how not to pay ransoms and how not to
be fooled by social engineering scams…
e’re still patiently waiting servers via shodan.io and create havoc. personal information) or even wiring
W
for the year of the Linux Attacking desktop Linux is a little more money to a stranger. Some of these
desktop, but one sign that delicate, but that’s not to say it doesn’t scams are easy to spot, but others are
Linux has become happen. Rogue websites may serve drive- not. Over the last five years, cyber-
mainstream is that it is now actively by downloads, bona fide websites may get criminals (we promise not to use this
targeted by malware pushers. Perhaps hacked or a long-standing bug in the prefix too much) have cottoned on to the
not to the same extent as Windows, kernel may be discovered. All of which fact that people care about their files, so
and perhaps those miscreants are might spell the end for your data. a popular MO is to encrypt them and hold
more interested in hijacking servers A much greater threat, however, is them to ransom. Victims are ‘invited’ to
than desktops, but peddling the old social engineering. This is pretty much pay, usually by cryptocurrency, for a
“Linux doesn’t get viruses” line does operating system agnostic – it relies on decryption key, but often this is never
not make for credible journalism. (don’t weaknesses in human nature rather than provided. Sometimes ransomware is ill
use the J word!–Ed) in software – so there’ll be a few tips that thought-out, and boffins can reverse-
Linux servers are compromised all the will help you even if you use some other engineer whatever encryption was used
time. It’s a little too easy for your run-of- heathen OS. A well-crafted email can trick and provide free decryption tools. But you
the-mill script kiddie to find their favourite a weary mark into opening the wrong kind shouldn’t count on this. Instead heed our
exploit in Metasploit, find some vulnerable of file, disclosing their password (or other guide – be strong, be vigilant and behave.
hile we did a cover feature on malware not all most of these were embedded installations
Anatomy of a
ransomware attack
Ever wondered how all this high-tech financial half-inching
and data scrambling works? Wonder no more.
nfortunately, if you fall victim to a ransomware their friends. Be that as it may, whether or not you
Social engineering
Convincing people to do things not in their interests has become
quite the artform, so don’t be fooled. Click here for puppies…
here are all kinds of devious ways that It’s incredibly easy to cosmetically clone an entire
ENTERPRISE
SOARING SUCCESS
Mayank Shama meets Robin Schumacher of DataStax to talk about
building success with open source while nurturing the community.
B
all open source software
was licensed under the GPL,
building a business around
it was quite a challenge. MySQL was
one of the first projects that attempted
to create a true-blue ‘enterprise open
source’ product by creating new
licensing terms and adding exceptions
to work around restrictive licensing.
The proliferation of permissive licenses
opened the flood gates, both for the use
of open source software in the enterprise
and for setting up professional support
business around these products.
Despite the fact that these days
virtually all major open source software
has a corporate backer that works with Robin pointed out that, for the first time, DataStax has put up some of its new under-development apps on
the community, mixing the two without its website, for anyone to try without signing up for the Early Access Program.
burning your fingers is quite a balancing
act. We caught up with Robin Schumacher, began with him having reindeer meat the ability to have IDs and passwords,
SVP of Products at DataStax, at the with the company’s co-founder David and manage the permissions of the
company’s Accelerate conference in Axmark in Sweden. Just as Oracle was various objects. Once they have this list of
Washington, to better understand its closing on MySQL AB, he moved into a necessary features that’s customary for
relationship with the open source Apache similar role at a PostgreSQL company any database, those were the things they
Cassandra community. We wanted called EnterpriseDB. He tells us that his gave back to the community.
to see how it contributes to the open process of turning open source software “But then we asked, is it normal for
source project, and what it takes to offer into enterprise products has evolved over a database to have low-level access
commercial solutions based on a freely time from MySQL AB to EnterpriseDB to control? No. That’s typically something
available piece of software. DataStax now. It’s critical for a responsible government and financial institutions
Robin is a been-there, done-that kind
of guy and has worked up and down the
corporate food chain. He has been how datastax Built uP its trust
“If you go to a government agency or a
tinkering with all kinds of databases in one
form or another for about three decades,
to be able to buttress these open source points out that all graph databases – to use open source software is to avoid
projects. And every open source project be it JanusGraph, DSE Graph, Amazon vendor lock-in. “And then thirdly, while
out there has one or two that do this type Neptune, Cosmos DB or IBM Graph – are some customers understand the need
of thing.” all built on top of Apache TinkerPop, which for DataStax Enterprise for large-scale
He’s glad that the Cassandra is the open source graph framework – and production systems, they might have
community has been very understanding DataStax is the largest code contributor to smaller departmental systems or large
of the differentiation DataStax has had that project. development environments where they
to build between the products: “They don’t necessarily need the extra firepower
understand that it’s a business that has Engaging the community that DSE provides.”
to be run, and they also understand that Another bit of the company’s engagement It’s a combination of these three
when that business is successful we are with open source that intrigued us was reasons that led DataStax to offer DDAC:
continuing to give back to open source. the DataStax Distribution of Apache “What we have done is taken Cassandra
There are features now in DSE that likely Cassandra (DDAC). It was announced and certified it just as we do for DSE. We
in three to five years we will transfer to towards the end of 2018 as essentially supplied the bulk loader and we give them
open source as we continue to innovate.” the company’s release of the open source that hand to hold, the support, all at an
One of the developments that DataStax version, and sticks out among DataStax’s extremely attractive cost. Believe me,
hasn’t yet contributed back to the proprietary DSE offerings. they are spending pennies to save tons
of money.”
Talking to Robin and the other head
talk is chEaP, BEEr lEss so honchos at the company, especially its
The future of
the database
Twiddling thumbs between sessions at a database conference,
Mayank Sharma ponders on the impact of the web on databases…
his is the information era, where ATM or buy a movie ticket – the list is virtually
e’ve been using databases to help us the first commercially available relational database. It
ed
S
re
re
re
re
M
BM
BM
gin
at
DB
DB
DB
sto
sto
to
nt
lD
eD
es
en
ph
ies
ML
rie
n
F
na
en
alu
lu
RD
m
ch
a
t-o
er
eX
tio
va
m
lu
Gr
ar
tiv
eS
y-
cu
la
jec
tiv
Se
l
Mu
Re
Ke
Tim
Do
ide
Ob
Na
W
and Microsoft SQL Server, among others. After a brief called Minerva. To meet his requirements, he developed
hiatus, Michael Stonebraker returned to Berkeley in 1985 mSQL, first as an SQL extension to Postgres, and then as
and began work on the next generation of the Ingres a lightweight database with a limited subset of the SQL
database to address some of the bottlenecks with the standard. When mSQL development began to stagnate in
original design. His work, dubbed Postgres (Post Ingres), 1996, its open source code was adapted into MySQL.
eventually evolved into PostgreSQL. After the acquisition of MySQL AB by Oracle, the code
The next milestone for open source databases came was forked into MariaDB in 2010.
in the mid 1990s, when David Hughes wanted a database Another popular database that came about as a result
for his network monitoring and management system of open source code was Firebird. It was forked from the
open source code of InterBase 6.0 in 2000. The database
introduced several performance improvements, and is
Ranking scores per category, July 2019 the default database engine in LibreOffice.
Document stores 8.7% Graph DBMS 1.5% Order in chaos
Wide column Key-value stores 4.8% The first chinks in the armour of the relational databases
stores 3.3%
Native XML began to appear with the dot-com boom in the 2000s.
Time Series DBMS DBMS 0.3% The proliferation of online applications and platforms
0.6% such as social media websites, e-commerce vendors,
RDF stores
Search engines 0.4% cloud storage silos and others led to a huge surge in the
4.7% amount of data that now had to be stored in large
databases and massive servers. As the nature of the data
changed, relational databases – which had mastered the
art of storing and processing structured data – were
incapable of efficiently handling the vast amounts of
non-relational, schema-less unstructured data.
This called for a new type of database system that
could provide fast search and retrieval, as well as reliable
and safe storage of the unstructured, non-traditional data.
NoSQL came about as a response to the need for faster
speed and the processing of this new unordered and
disorganised data. The term NoSQL is most often
interpreted as Not Only SQL. It points to the fact that in
these databases, some of the data is stored using SQL
Relational DBMS 75.3% systems, whereas other data is stored using NoSQL,
depending on the requirements of the application.
The highlight of the NoSQL data model is that it is non-
relational and uses a distributed database system. It is
TyPes of daTabases fast, uses an ad hoc method of organising data, and is
efficient at processing different kinds of data at high-
NoSQL databases provide the performance, scalability and stability volumes. The widespread use of NoSQL can be attributed
that’s required by the modern data-driven apps we interact with to the services offered by popular social media platforms
these days. But that is where the similarity between NoSQL systems and cloud services such as Twitter, Facebook, LinkedIn,
end. In fact, it wouldn’t be wrong to say that the only thing most Instagram and Google. These online platforms store and
NoSQL databases have in common is that they do not follow the process colossal amounts of unstructured data.
traditional relational data model. Broadly speaking, NoSQL databases Just as open source helped fuel the evolution of
typically fall into one of four categories: relational databases, it essayed a similar role in helping
Key-value These function in heavy read environments. Key-value
stores are the simplest form of NoSQL databases and won’t be of Complete Trend, starting with Jan 2013
much help when there are complex relationships between data
Graph DBMS Time Series DBMS Object oriented DBMS
elements. That’s because all access to the database is done using Document stores Wide column stores Multivalue DBMS
a primary key. Redis and Memcached are frequently used solutions. Search engines RDF stores Reletional DBMS
Columnar These are optimised for reading and writing columns of Key-value stores Native XML DBMS
data as opposed to rows of data. Also known as wide-column store
databases, they are well suited for analysing huge data sets. Apache
Cassandra, HBase and Accumulo are the best-known ones.
Image Credit: DB-Engines.com
time-series databases and Cassandra is the top ranking 17 FileMaker Relational 57.9
wide column database.
18 HBase Wide column 57.54
This comes as no surprise to Matt Yonkovit, Chief
Experience Officer at Percona. He explains that open 19 SAP Adaptive Server Relational 56.65
source databases are popular since “the barrier for entry 20 Amazon DynamoDB Multi-model 56.42
for open source is extremely low – there is no need for 21 SAP HANA Relational, Multi-model 55.54
budget approval with free software, there are lots of
people with the right skills available, and support for these 22 Neo4j Graph 48.98
systems is at hand for production applications. When you All things considered, 12 out of the top 22 databases in use today are open source.
Raspbian buster
les pounder hasn’t seen the latest Toy Story 4 movie as yet, but
nevertheless he’s already met Buster…
ith the release of a new
In bRIEf
The latest
W Raspberry Pi there is always
an update of Raspbian, and
Raspbian this time there is one big change.
release from Released on 24 June, Raspbian
Raspberry Pi Buster marks the start of new
Trading. Raspbian images based on the
Designed for latest Debian Buster image. In
use with the Pi 4 fact Raspbian Buster was released
but compatible before the official Debian release.
with most of the Running Linux Kernel 4.19.50
older boards, created on 20 June 2019, Raspbian
this is a grown- Buster is not much different to the
up distribution last release of Raspbian Stretch.
that can take on Most of the changes are to security
most ‘desktop and the backend. But Simon Long Refreshed and ready for new challenges, Raspbian Buster offers a great user experience.
PC’ tasks. was keen to refresh Raspbian’s
interface and so it features a more refined desktop that a newer OpenGL driver which offers better performance,
feels even more like a ‘desktop replacement’ than before. and the ability to alter the screen layout, as the Pi 4
If you’re familiar with previous Raspbian releases then the supports two 4K screens. There is also a new compositor.
basics are the same, but it just looks a little nicer. If you are not running a Pi 4 these options are not visible
Software choices for Raspbian Buster are Chromium nor configurable.
74, which runs reasonably well – and on Pi 4 it runs The Raspberry Pi Foundation’s Raspbian distribution
remarkably well. YouTube playback on anything but a Pi 4 has always been backwards-compatible, all the way back
is choppy, and the installed version of VLC has issues to the original Pi in 2012. So we tested Raspbian Buster
with audio playback in videos. LibreOffice 6.1 is installed on ageing models of the Pi. If you want to run Raspbian
and runs really well. For Python coders we see Python Buster as a desktop OS then stick to Pi 2 and above – in
3.7.3 installed as standard – it may not be the latest fact, Pi 3 would be better. Anything older that Pi 2 is really
version, but it’s recent and well supported. The ageing only usable with Buster as a terminal-only OS. On the Pi
Python editor IDLE has not been retired from the Zero range of boards you can do basic work… slowly. But
Raspbian image and instead we see the great Thonny then the Pi Zero range was never meant to be a desktop
editor, an ideal Python editor for beginners. This is now device, more embedded into projects.
the default editor for Python. There is also an alternative Is Raspbian Buster any good? Yes it is! We have a
editor called Mu, aimed squarely at beginners, which great desktop environment for users that will tackle
offers compatibility with the CircuitPython, the micro:bit whatever they throw at it. But as we mentioned earlier,
Thonny is now and the game creation library PyGame Zero. this is a release for Pi 2 and above. If you really need to
the default Python
editor and it works
Although Raspbian Buster is meant to work across all run Raspbian on older hardware then use the last version
well for beginners versions of Raspberry Pi, there are a few extra features of Raspbian Stretch, or if you need to run a terminal/
and experts alike. for the Raspberry Pi 4. Raspi-config has an option to use server install try something lighter such as DietPi.
VERDICT
DevelopeR: Raspberry Pi Trading
Web: www.raspberrypi.org
licence: Mixed, same as Debian
Rating 8/10
I2C DISPLAY
Create a Raspberry Pi
OLED monitor
Les Pounder shows us how to monitor a Raspberry Pi 4 with a small
screen and a little bit of Python code.
GPIO
Build a lightning
simulator with LEDs
Sean Conway provides the design details to build a circuit for
controlling LEDs using Raspberry Pi GPIO ports.
techradar.com
TuToRiaLs
TMsu
e covered the basic usage of TMSU in LXF253. specified tag. But if you want to narrow down the files
Virtual filesystem
As easy as it is to list all the tags and access files from You can use the -c option to count the number of files which match the query criteria, or even
the terminal, this isn’t always a practical solution, the number of untagged files.
especially when you want to access files using other
applications. Thankfully, TMSU provides a virtual $ ls
filesystem which you can mount to access all the articles lxf LXF project todo year
tagged files. Once mounted, you can even access the $ mv articles Articles The files listed
virtual filesystem using graphical applications, just as $ ls in the tags
you would any other filesystem on your disk. Articles lxf LXF project todo year directory are
To mount the virtual filesystem, you must first Removing a file from the tags directory has the all assigned
create a mount point and then run the tmsu mount expected effect of removing that tag from the file. For a unique
numerical
<mount-point> command: instance, if you remove the file todo-june.txt from the
value, which is
$ mkdir vfs vfs/tags/todo/files directory, the tag todo will be
appended to
$ tmsu mount vfs removed from the todo-june.txt file, without affecting the filename
$ cd vfs the original file itself. itself. This
$ ls Unlike the tags directory, which lists all the files and unique number
queries tags tags stored in the database, the queries directory in the or id is used to
The tags directory contains virtual directories for virtual filesystem lets you look up files on the basis of distinguish files
all the tags created in the current TMSU database. You queries using different operators, like the ones we with the same
can navigate these directories just as you would the discussed above: name that have
directories on your filesystem. Within each tag $ cd vfs/queries been assigned
the same tags.
directory, the directory files is home to symbolic links $ ls “articles and todo”
don’t worry
to all the files which have been assigned that particular LXF-254-tutorial.odt
however, as the
tag. Each tag directory also hosts directories for the LXF-255-tutorial.odt numerical value
other tags which have been assigned to these files: LXF-255-roundup.odt is added only
$ cd vfs/tags/articles $ ls to the symbolic
$ ls articles and todo links – the
files LXF year As you can see, running the query with the ls actual filenames
Here, the directory for the articles tag is made up of command produces a list of the files you’re looking for, remain
three separate directories. The files directory houses and the command automatically creates a directory unaffected.
all the files which have been assigned the articles tag. with the specified query. These directories can
But since some of the files assigned the articles tag subsequently be used to quickly identify files on the
have also been assigned the LXF tag, while others basis of different queries without having to run the
have been assigned a year value, those are also listed same query again and again.
in the articles directory. While the tool may seem overwhelming to use,
In addition to running the tmsu tag --create <tag1> especially if you’re not accustomed to the terminal,
<tag2> command to create tags, you can also create you’ll easily become used to its intuitive and
new directories within the tags directory in the straightforward working within no time at all. The ready
mounted virtual filesystem. You can also rename a tag availability of thorough documentation – as discussed
directory from the mounted virtual filesystem with the last issue – which details the different sub-commands
mv command, just as you would any regular directory: also goes a long way to explain the features and
$ cd vfs/tags functionality of the project.
NOTES
Store and sync notes
across PC and devices
Nick Peers examines two solutions to help you record all kinds of notes on
your desktop computer, plus access them on all your mobile devices.
veryone needs a note-taking app – a way of differences, which means you’ll probably find one
syncing to a publicly accessible cloud service. Note you’ll need to enter on your PC before you can access
that WebDav and Nextcloud sync is unreliable between those notebooks on there.
mobile and desktop at present, so you’re better off The Joplin web-clipper makes it easy to grab content Joplin makes
using OneDrive or Dropbox if you plan to sync with an from websites to incorporate into your notes. Get it possible to
Android or iOS device. started by opening Joplin and selecting ‘Tools > Web nest notebooks
Once you’ve set up and performed your first sync, clipper options’. Click ‘Enable Web Clipper Service’ and inside other
Joplin will continue to synchronise in the background at then click the relevant link for Firefox or Chrome to notebooks as
five-minute intervals. In the meantime, it’s time to download and install the add-on. sub-notebooks.
switch to your new device. Configure synchronisation in Once in place – which might take a while, as we Just drag
exactly the same way as you did with your PC, pointing found it claimed not to be working for a few minutes an existing
notebook on
to the same provider and account via the configuration before magically starting – make sure Joplin is running
top of another
screen. If you’re an Android user, tap to bring up the in the background. Then simply browse to a website
notebook to
menu to select Synchronise and then log in to your and click the Joplin icon in your browser toolbar to bring move it inside
account if necessary. up a pop-up menu of options. that notebook.
Joplin will bring in your synced items as a separate First, choose what you want to clip: a simplified drag a sub-
notebook, to sit alongside whatever items are locally version of the page, a complete HTML version of the notebook on to
stored on your new device. You’ll see they’re all listed as page, the selected portion of the page only, a the Notebooks
‘encrypted’ and unreadable. To resolve this, simply tap screenshot image of the page, or the URL. Make your header to move
‘Press to set the decryption password’, enter the choice and a preview will appear. Next, choose which it back to the
password and tap Save. You’ll also need to encrypt any notebook to save the note to, add any required tags (as root level.
existing notebooks on the device before they sync into you type, it will offer to autocomplete from existing tags
the cloud. Set up a master password for these, which in Joplin) and edit the title in the Preview: box before
clicking Confirm.
Once created – you may have to wait a few seconds
while the page is downloaded and any necessary
conversion is performed – switch back to Joplin where
you should find your note waiting for you.
Both Standard Notes and Joplin are great note-
taking tools, with different sets of features to appeal
to different audiences. Those looking for a simple, fuss-
free solution with minimal effort will most likely lean
towards Standard Notes, but if you find yourself
yearning for its premium-only features on a budget,
If you’re looking for notes that can be formatted using markdown text you’ll find Joplin fills the gap admirably – without
and contain images as well as file attachments, choose Joplin. costing a penny.
SWEET HOME 3D
Quote the issue code shown above and have your credit or debit card details ready
SUBSCRIBE!
Don’t wait for the latest issue to reach your local store –
subscribe today and let Linux Format come straight to you!
3 GREAT
WAYS TO
SUBSCRIBE
Print, digital and
print & digital
bundles!
Android
Part One!
Don’t miss
connected to Android
Aaron Peters has been using Android and Linux together in increasing
degrees of harmony since 2011 – and he shows how you can too.
Log back into the device with adb shell and you’ll
see all three files in the /sdcard/Download directory:
in additon to $ adb shell
clicking and $ noblelteatt:/ $ ls /sdcard/Download/*.txt
dragging, the /sdcard/Download/androidfile1.txt /sdcard/Download/
following androidfile3.txt /sdcard/Download/androidfile2.txt
keyboard/ This is all well and good for moving the occasional
mouse APK from ‘unknown sources’ onto your device. But it’s
shortcuts not a particularly good way to get a backup of all your
will help you files, for example. Luckily, there’s another out-of-the-
control your
box method you can use to connect to your Android.
phone from
Launch SSHDroid on your Android, and browse its files over SFTP.
Linux: ctrl+H
(or middle click) That media thing
for the Home Modern Android devices come loaded with the Media or phone-charging only. Make sure this is set to MTP.
screen, ctrl+B Transfer Protocol (MTP), which was also used in music Now when you plug your device into your Linux rig,
(or right-click) players. It enables computers to browse and access the it should connect via MTP. One way you can confirm
to go back, and filesystems of these devices; the mtp-tools and libmtp this is if the device indicator in your system tray shows
ctrl+s to switch packages for Linux provides the bits you need. Recent a new device. In KDE, for example, you’ll see the device
apps. versions of Ubuntu should come with this support out show up as a ‘Portable Media Player’ in the Device
of the box. But in the event you’re using a different spin Notifier, with options to open it in Dolphin or Gwenview.
or otherwise don’t have it, the following command (or Clicking on Dolphin opens the Phone device with the
your distro’s equivalent) will install it: mtp:/ KIO slave, which represents your device’s
$ apt install mtp-tools /sdcard directory. You can click files and folders, use
Next, make sure your Android device is set to Ctrl key commands to cut/copy/paste or drag-and-
connect in MTP mode. Go to the Settings app, and look drop files to your heart’s delight.
for a setting like ‘USB connection’ or ‘USB This is definitely a step up from terminal-based file
configuration’. This should give you a selection of shuffling, but it’s worth noting that the Linux
options including MTP, Picture Transfer Protocol (PTP) implementation of MTP does not always cooperate.
Fortunately, to this point we’ve only explored out-of-the-
box options. By trying some of the applications available
in the Play Store, and other sources, we can accomplish
some more cool stuff.
You’re on notice Linux rig, including mousing around and entering text.
For many people their phone is their connection to the Remote Keyboard from the desktop This lets you
outside world, and notifications are one of the many type on your Linux machine and have the entered text
ways you can be distracted to waste some valuable show up on your Android.
time. KDE Connect and its Gnome counterpart There are some others as well, like sharing the
GS-Connect show you all the notifications your phone clipboard and running commands, but the last two in
receives on your Linux desktop, for better or worse. If the above list really demonstrate a high level of
this sounds like a good idea to you, you can install it on integration. On one hand, you can select an option on
Ubuntu with the following (use your distro’s equivalent): your phone, and all of a sudden you’re controlling your
$ apt install kdeconnect Linux machine from across the room with the screen as
GS-Connect, on the other hand, is an extension for a mousepad and the Android virtual keyboard.
Gnome Shell. You can install it from the Gnome As for the Remote Keyboard feature… the concept is
Extensions repository. sound, but it’s not hugely simple to use. Once you select
Once it’s connected you’ll see its icon in your system the KDE Connect keyboard from your Android Settings,
tray. Next you’ll need to get your the KDE Connect app you get a tiny text box where you can type plain text.
for your phone. It’s available on both the Play Store It’s a great start for sure, but seems underwhelming
(boo hiss–Ed) and from F-Droid (huzzah!–Ed) at compared to the fancy programs Windows and macOS
https://f-droid.org/en/packages/org.kde. users have. Those let you mirror and interact with your
kdeconnect_tp. Once installed, when your devices device’s entire screen. Isn’t there something equally
are on the same network you can open your System fancy for Linux? You bet there is.
Settings app in Linux and select the KDE Connect item.
It should be showing your device in the list to the left. Mirror, mirror on the Android
Select it, then click the ‘Request pair’ button in the While SSH/SFTP access should be enough to make the
upper right. A dialogue on your device will ask you to most stalwart Linux geek happy, we haven’t finished
confirm. Once you do, you’ll have the ability to select all yet. Some Android models, notably those from
the various integrations listed in the ‘Available plugins’ Samsung, have proprietary utilities available that make
list for that device, including some of the following it easy to view your device’s screen on your PC.
important ones: SideSync is the name of the app from Samsung, and
Receive notifications As mentioned, this will display until recently it would have taken a great deal of effort
all the notifications from your phone in your desktop’s to do the same thing on Linux.
notification list. It behaves exactly as advertised, so use But no longer, thanks to the fantastic scrcpy. It’s
at your own peril. cross-platform and available from https://github.
Multimedia control receiver This enables you to, com/Genymobile/scrcpy, and although there’s not a
for example, pause music on your desktop using your ‘standard’ package for it in either DEB or RPM format,
phone. Why? No idea. there is a Snap available for easy installation. (Sure,
Ring my phone A useful little tool to find your the article in LxF244 might suggest Flatpak is a better
phone if you’ve misplaced it – within hearing and package format. But let’s not split hairs – at least we
network distance. don’t need to build it from scratch.)
Remote Filesystem Browser If you find MTP too Provided your distro has the Snap platform available,
unreliable and don’t like the idea of installing a server getting scrcpy is as easy as this:
from some strange developer on your phone, this plug- $ sudo snap install scrcpy
in enables you to view your phone’s files in Dolphin. Once the install is finished, the only other thing you
Virtual Input Like many app/server combinations need is USB Debugging enabled on your device. If
available on the Play Store and elsewhere, this lets you you’ve followed along with this tutorial, it already will be.
use your Android device as a remote control for your Just plug in via USB and fire off the following:
$ scrcpy
It takes a moment to start up, but soon you should
see a window showing your device’s screen. You can
interact with this using your mouse in all the ways you’d
expect: a click is a tap, and drag-and-drop is a swipe.
The GitHub page provides some great pointers on
things like keyboard shortcuts for Switch App and the
Home screen, as well as instructions to get this
connection working over Wi-Fi as well.
HASHICORP VAULT
Add military-level
security to any project
Mihalis Tsoukalos explains how to install and use Hashicorp security
software from the command line with Go and Python 3.
secret/hello . Note that you are free to write multiple $ vault kv get secret/hello
pieces of data into a path, like so: The command vault kv metadata get secret/hello
$ vault kv put secret/hello val1=s1 val2=s2 shows the metadata of an existing key. Figure 2 (page
As the previous command writes to an existing path, 73) shows the output of some of the aforementioned
all data in that path will be replaced by the new data. If commands. If you just want to print the value of a
the Vault server is not running, you will get an error specific field instead of the entire contents of a secret,
message of Get http://127.0.0.1:8200/v1/sys/internal/ you can use the -field command line option:
ui/mounts/secret/hello: dial tcp 127.0.0.1:8200: connect: $ vault kv get -field=val1 secret/hello
connection refused . As Vault keeps a history of values of a path, you can
The next command illustrates how to get/read go back in time and get the keys and values of a
a secret that you created previously: previous version of the path. For the secret/hello path
that only has two versions, getting the pairs stored in
the first version can be done as follows:
$ vault kv get -version=1 secret/hello
s1
You can now see the data=world pair of the path
secret/hello . The command vault kv delete secret/
hello will delete the contents of an existing path from
Vault. Figure 3 (below left) shows how to delete a secret
as well as some error messages generated by the Vault
binary. Please note that the secret/hello path is still
there, but it is empty.
Now that you know how to do basic things with
Vault, let’s continue discussing what it can do before
talking about configuration files. Vault keeps all its
information encrypted. Additionally, it offers access
Figure 3: How to
control that enables you to define who can access what.
get the value of
a specific field, Lastly, there is an audit trail that permits you to see
how to delete a who accessed what, which gives you more visibility
secret and how to and control.
view the metadata Vault also offers dynamic secrets, which are
of a path, as
well as some
ephemeral credentials that change over time, are
error messages unique to each client and can be revoked based on
generated by Vault. who leaked the related sensitive information.
Introducing HCL
HAsHicorp consul Vault would be almost useless if you couldn’t
operate it using configuration files. It supports HCL
HashiCorp Consul is a service mesh solution or, if you prefer, a multi- configuration files, and Figure 4 (page 75, top left)
cloud service networking platform that enables you to connect and shows a sample HCL file that will be used in this section.
secure services in dynamic infrastructures across any runtime The file has three parts. The first part is about storage,
platform and cloud provider. The key features of Consul are a service the second part is about the TCP configuration of the
directory, health checking, key/value storage, support for multiple Vault server and the third part is about the specification
data centres and service segmentation. of the telemetry reporting system that will be used.
Put simply, Consul acts as a service registry that keeps track of Reporting is a central part of modern systems because
available services and returns information about these when asked. it allows you to find out what went wrong and why.
If one of the instances of a service dies, Consul will notice and not All parts of a HCL file are important. However, the
return the address of that instance. If that instance becomes healthy most critical part of the file is where you define the
again, it will inform the Consul registry and it will return its address network configuration of the Vault server:
once more. The whole thing simplifies service-orientated listener “tcp” {
architectures because you do not have to keep track of the instances address = “192.168.1.10:8200”
that you put into the registry. You can also define which services are tls_disable = 1
allowed to talk to which services, which gives you security. }
For a server used for development, such as the Vault server we Using the presented HCL file, which is saved as
used in this tutorial, the backend storage usually uses the memory of my_Config.hcl, is as simple as executing:
your computer. In production systems, the storage would more likely $ vault server -config my_Config.hcl
be disk storage or Consul. The good thing is that HashiCorp tools If an HCL file has syntax errors or typos, which in this
work smoothly with each other. As well as the free version of Consul, case will be the absence of the storage block, you will
there is also a commercial version called Consul Enterprise. get an error message saying A storage backend must
Consul is an advanced tool and its target group is not the amateur be specified .
Linux user but professionals who want to automate things as much
as possible. However, you could always learn Consul by Using Vault with Go
experimenting with it in order to use it when the right time comes. You In this section we’ll look at how you can communicate
can learn more about it at www.hashicorp.com/products/consul. with a Vault server using the Go programming
language. For the purposes of this tutorial, the access
SUCKLESS TOOLS
Compile it yourself
for performance
Mats Tage Axelsson guides you through creating an image that is the
smallest fully fledged system possible – and then expands on it.
HotPicks
Foliate F.U.S.S. CPU-X Chomper
Timeshift Jade Gifcurry Pentobi
Alexander Tolstoy
counted all the open
source he has ever written
about and thought that if
each title was a raindrop,
the whole list would create
Speed Dreams Libheif GoTTY a downpour.
Foliate
Foliate.
A relaxation script
Post-iNstAll scriPt for Fedora fans!
Run it once and
F.U.S.S.
see how your
system acquires
extra software,
extensions and
popular tweaks.
Version: Git Web: http://bit.ly/
lxf254fuss
CPU-X
meet CPU-X!
Chomp your
screeN cAPture tool screen into parts.
They can be of
Chomper
any size and of
unlimited quantity
– mind the RAM
usage, though.
Timeshift
define a schedule
for automatic
backups.
Jade is a powerful
diAgrAm editor diagram editor
for Linux and an
Jade
easier alternative
to LaTeX.
Gifcurry
with confidence
and ease, using
Gifcurry.
The ‘GembloQ’
BoArd gAme game mode turns
the board by 45
Pentobi
degrees and allows
sharp corners.
Version: 17.1
Web: https://github.com/enz/pentobi
hen Bernard Tavitian invented the board game
rAciNg simulAtor
Speed Dreams
Version: 2.2.2 Web: https://sourceforge.net/projects/
speed-dreams
Encode a series
imAge formAt liBrAry of screenshots
into one .heic file
Libheif
and enjoy superb
compression!
Version: 1.4
Web: http://bit.ly/lxf254libheif
In many cases
commANd liNe tool Gotty can
safely replace
GoTTY
a heavyweight
monitoring system.
Version: 2.0.0-alpha3
Web: https://github.com/yudai/gotty
Part One!
Credit: www.minecraft.net Don’t miss
next issue,
PYTHON subscribe on
page 26!
Building in Minecraft
powered by Python
Calvin Robinson hooks mods into the Minecraft API so that we can
directly interface to it with some Python programming.
inecraft is one of the most versatile video install python should suffice for any Debian-based
mc.postToChat(“Hello world!”)
Here we’ve imported the Minecraft module, created
a new instance of it and used the postToChat
command to push a string into the game’s chat. Return
to Minecraft and type /python helloworld . Minecraft
will now run your Python script, which should result in a
chat command saying “Hello world!”.
Of course, to make this code more efficient and
useful later on it might better to replace the string with
a variable, such as with mc.postToChat(chatText) ,
defining the variable chatText beforehand. This
method is particularly handy because Minecraft’s
postToChat function can only accept one parameter
as an input, so if you ever want to pass more than one
string you’ll need to plug them all into a single variable
beforehand. For example, chatText = “String1” +
variable1 + “String2” + variable2 would work fine.
A water-filled glass
By changing the blockID WATER_STATIONARY
doughnut created
Mmm, doughnuts… you can fill the doughnut with any object type within with a ‘for’ loop.
We’ve included some pre-fabricated example scripts in Minecraft. Try filling the glass with lava. Then try
the MCPiPy collection to demonstrate what the module changing the outer shell from glass to TNT.
is capable of. Some scripts of note are star.py,
snowflake.py, sphere.py and lforest.py. One of I like to move Steve, move Steve
these that nicely shows off block placing in specific We can directly control our player character’s position When you’re
coordinates is the donut script (with US spelling): using X, Y and Z coordinates. Create a new Python script coding an item
to appear near
from mc import * in your Python IDE and import the MC module again:
your player
from mcpi import minecraft
character you’ll
def draw_donut(mcx,mcy,mcz,R,r,mcblock): mc = minecraft.Minecraft.create() usually want
for x in range(-R-r,R+r): to add/minus
for y in range(-R-r,R+r): mc.player.setTilePos(20, 20, 20) a coordinate
xy_dist = sqrt(x**2 + y**2) Now we’re using player.setTilePos to directly on the x/y axis,
if (xy_dist > 0): change the position of our player character. Of course, or it’ll appear
ringx = x / xy_dist * R # nearest point on major we can replace these values with variables, to make inside you.
ring things even easier later on:
ringy = y / xy_dist * R x=20
ring_dist_sq = (x-ringx)**2 + (y-ringy)**2 y=20
z=20
for z in range(-R-r,R+r): mc.player.setTilePos(x, y, z)
if (ring_dist_sq + z**2 <= r**2): Now whenever we want to change the player’s
mc.setBlock(mcx+x, mcy+z, mcz+y, mcblock) position, we simply alter the x , y and z variables. Of
course, we’ll need to bear in mind exactly when the
mc = Minecraft()
CoMMon errors
If you receive a ‘Script not found’ error, this probably means that you
don’t have the mod scripts installed in your Minecraft directory.
Check that you’ve replaced .minecraft with the one from McPiFoMo;
this should include mcpipy, which will be full of Python files
(identified by the extension .py).
If you receive a ‘Cannot run program “python”’ error, your game
cannot locate Python. Ensure you’ve got the latest version of Python
installed, and that it’s installed in Path. In a Bash shell, type export
Spawn TNT blocks with every step you take, and see how long it is PATH=”$PATH:/usr/local/bin/python” to check it.
before you ‘accidentally’ blow one up. Should you come into any problems with memory leakage or
infinite loops, you can stop a script that’s running by just typing
programming our game to respond to let us know /python again in Minecraft, as only one script can be run from the
what’s happening in-game. Create an empty text file in game at any given time. If you don’t want to be typing /python into
the same directory into which we’re saving our Python the game every time, you can always run your program directly from
scripts, with: the Python IDLE (using F5).
touch ~/.minecraft /mcpipy/textScript.txt Make sure Minecraft is not only running, but also logged into a
The touch command creates a file in the specified loaded world. It sounds obvious, but you’d be amazed how many
location without putting anything in it. ls -la ~/. times we kicked ourselves after tapping F5 in Python IDLE and
minecraft /mcpipy will show your directory contents wondering why nothing was happening – you need a player character
in a terminal window for confirmation. in a Minecraft world in order for the module to hook into the API.
Now we’ll program our Python script to provide
access to that file with read-only permissions:
textScript = open(”textScript.txt”, ”r”) with open(“script.txt”, ”a”) as textScript:
With the text file opened, we can read its contents textScript .write(”String1” + Variable1)
into a variable and push that straight into Minecraft. We can now use our text document to save all kinds if you see red
mc.postToChat(textScript) of functions and logs, including which blocks have been text stating
Minecraft or
textScript.close() given to the user and what location they were spawned
Python ‘Cannot
Placing the above code inside each function, we can in. For instance, we could replace Variable1 with
find script’ be
have pre-written text scripts to publish set messages variables we used earlier on, including playerPos , x , sure to check
into the game chat. If you want to read text in from your y , z and blockID . That way we can check our text doc the name and
document line by line, the best way is to use textScript after a game session and find out what our player has location of
.readline() . We can of course combine that with the been up to. These kinds of logs are essential when your .py file – it
postToChat function when we need to: creating admin tools, to monitor potential abuse. should be saved
textScript = open(”textScript.txt”, ”r”) We’re now able to get our player character’s in mcpipy.
perLine = textScript .readline() position, set individual or multiple blocks at once
mc.postToChat(perLine) (relative to that position, or absolute in the game
textScript.close() world), chat in game, and to create a script to log all
However, this will only read a single line. To read of these activities.
multiple lines of text from our document we’ll need to In the next issue we’ll be building on these
create a simple for loop: foundations – if you’ll pardon the pun – as we continue
for line in textScript.readline(): our series of tutorials on Python programming in
postToChat(line) Minecraft. Now get out there and cause some havoc…
in the game, that is.
Saving files
The next logical step is to use our text document to not
only print text, but to save it, too. Change our opening
statement from r for ‘read’ to r+ for ‘read and write’:
textScript = open(”~/.minecraft/mcpipy/textScript.txt”,
”r+”)
By specifying the full file path you can use a text
document saved anywhere on your system. This won’t
be very useful if you send your program to someone
else though, which is why it’s usually best to use a
relative filename and ensure the text document is saved
in the same directory as your Python file.
If you need to write a number of lines to your text Set the Y
coordinates to -1
file, for example for saving coordinates, it might be best and you’ll leave
to use the append option (change r+ to a ). You can a path of TNT
then feed in multiple lines at a time: underfoot.
Tools Summary
will be on sale
Quay House, The Ambury, Bath, BA1 1UA
Email [email protected]
Tuesday
EDITORIAL
Editor Neil Mohr
Hostage negotiator Jonni Bidwell
2019
Group editor in chief Graham Barlow
Senior art editor Jo Gulliver
Editorial contributors
Michael Bedford, Neil Bothwick, Christian Cawley,
Matthew Hanson, Jon Masters, Nick Peers, Aaron
Peters, Les Pounder, Mayank Sharma, Shashank
Sharma, Mihalis Tsoukalos, Alexander Tolstoy
Cartoons Shane Collinge
Cover illustration magictorch.com
Raspberry Pi is a trademark of the Raspberry Pi Foundation.
Tux credit: Larry Ewing ([email protected]) and The GIMP.
ADvERTIsIng
Media packs are available on request
Commercial sales director Clare Dove
[email protected]
Senior advertising manager Lara Jaggon
[email protected]
Head of commercial – Technology Dave Randall
[email protected]
Account director Andrew Tilbury
[email protected]
InTERnATIOnAL LIcEnsIng
Linux Format is available for licensing. Contact the
Licensing team to discuss partnership opportunities.
Head of Print Licensing Rachel Shaw
[email protected]
subscRIpTIOns & bAck IssuEs
Web www.myfavouritemagazines.co.uk
Email [email protected]
UK 0344 848 2852 World +44 (0) 344 848 2852
The perfect
cIRcuLATIOn
Head of newstrade Tim Mathers
pRODucTIOn AnD DIsTRIbuTIOn
Head of production UK & US Mark Constance
Production project manager Clare Scott
Advertising production manager Joanne Crosby
Digital editions controller Jason Hudson
Linux install
Production controller Nola Cokely
ThE mAnAgEmEnT
Chief content officer Aaron Asadi
Editorial director William Gannon
Brand director Andy Clough
Head of art & design Rodney Dive
Commercial finance director Dan Jotcham
Printed by Wyndeham Peterborough, Storey’s Bar
Road, Peterborough, Cambridgeshire, PE1 5YS
Distributed by Marketforce, 5 Churchill Place, Canary
Wharf, London, E14 5HU www.marketforce.co.uk
Anyone can install Linux, but only Jonni can Tel: 0203 787 9001
LINUX is a trademark of Linus Torvalds, GNU/Linux is abbreviated to Linux
throughout for brevity. Where applicable code printed in this magazine is licensed
We put the lightest Linux distros through their paces to see publication are not under our control. We are not responsible for their contents or any
other changes or updates to them. This magazine is fully independent and not
affiliated in any way with the companies mentioned herein.
which is the best for running your older or slower systems. If you submit material to us, you warrant that you own the material and/or have
the necessary rights/permissions to supply the material and you automatically grant
Future and its licensees a licence to publish your submission in whole or in part in
any/all issues and/or editions of publications, in any format published worldwide and
on associated websites, social media channels and associated products. Any
It’s the idiot’s guide to setting up your own, reasonably any loss of data or damage to your systems, peripherals or software through the use
of any guide.
secured web server – for blogs, for fun and for profit! We are committed to only using magazine paper which is derived
from responsibly managed, certified forestry and chlorine-free
manufacture. The paper in this magazine was sourced and
produced from sustainable managed forests, conforming to strict
Love Android
We continue our quest to make Android a more open source-
friendly place that plays nice with your Linux desktop. Future plc is a public Chief executive Zillah Byng-Thorne
company quoted on the Non-executive chairman Richard Huntingford
London Stock Exchange Chief financial officer Penny Ladkin-Brand
(symbol: FUTR)
www.futureplc.com Tel +44 (0)1225 442244
Contents of future issues subject to change – we might have lost Jonni to his sabbatical!