Linux Format - April 2025
Linux Format - April 2025
WIRESHARK ANDROID VM
Tricks and hacks for The network hunter Run Android apps
a faster & cooler Pi is taking to the cloud! on your Linux distro
POWER DISTROS!
Take your Linux game
to the next level
PLUS: q¶ĭþ¶
Start coding with Rust
Run OnlyOffice on your NAS
Use Rust for secure remote desktops
Defend your networks Try the systems that Have a LoRa fun with
from AI attack vectors made Linux great! low-cost networking
WELCOME
Hacking an
MEET THE TEAM education
It’s that time of the year when
This month, we’re putting our readers 4"/"(,211%")1"01% ("/}0
through our Hacking Academy, so 1,,)(&1+!$"16,22-1,0-""!o
1%"/1%+ ,3"/)&$&+n
which old-school type of hack are you 4"}/"/,))&+$ (,5,21o +
most proud of? Tux’s Hacking Academyn4"$"1
6,22-+!/2++&+$n1("6,2
1%/,2$%1%" /&1& )1,,)0n01/1
6,2-)6&+$4&1%0,*""5-),&10n
Jonni Bidwell +!,21)&+"4%16,2+""!&+
In a feat worthy of Odysseus, I managed to !"!& 1"!% ("/}0&v &!-1,/
get a modern version of Apache running on x1%"6}/"+,1))2&)1".2))6o
a certain server that was running a very +}11%&+(,#"11"/46
outdated OS. The fiendish process, which I 1,)"/+,21%,4&+25+!+"14,/(0#2+ 1&,+1%+% (&+$
wouldn’t wish on anyone, involved creating 464&1%("61,,)0+!!"!& 1"!!&01/,o 1}0,3&,20)6+,
a binary-compatible virtual machine and unspeakable horror. 02/-/&0"1%1,-"+0,2/ "+!&+25%3")460""+11%"
#,/"4%"+&1 ,*"01,1%"0"),4v)"3")+)60&01,,)0o%/,2$%
0"/"+!&-&16n1%&0&002"4"}/")0,1)(&+$1,1%"#,2+!"/0,#
Michael Reed ,+",#1%"("6+"14,/(1,,)0pWireshark. 10 /"1&,++!
I made use of the built-in exploit database !"3"),-*"+1&01"01*"+11,1%" ,**2+&1&"0+!"1%,0
on a pentesting distro. In minutes, I had ,#,-"+0,2/ "o")0, 1 %2-,+1%"&/)1"01-/,'" 1n
command-line access on an old Windows Stratoshark –&1}0#0 &+1&+$012##o
á-ࡳɢŔɭʋljɭȶȟŔȥˊʋǠǫȥnjǫʋɭŔȟɽǠȶȟơʋǠơ ,4"3"/n,2'2014+11,$"1,+4&1%20&+$&+25n6,2
fact that you should never connect an old 0%,2)!1/6,+",#1%"-,4"/!&01/,04"}/"1"01&+$1%&0&002"o
machine to the internet. Security updates, people! # ,2/0"n/ %&+254&+0%+!0!,4+n211%" ,*-&)"!v
#/,*v0,2/ " "+1,,,/ ,+#&$2/1&,+v0"!&5)0,,##"/
&++,31&3"n-,4"/#2)+!*&+!v"5-+!&+$460,#)"/+&+$*,/"
Tam Hanna ,21%,4&+254,/(0+!n,# ,2/0"n%,44" +))"+',6&1j
òȶȟơˊơŔɭɽŔnjȶȶˁȥơɭɽȶljáŔȍȟ¶òá7ɽ
not made by Sony did not have access to
NetFront, the cream of the web browser
ƃɭȶɢࡳbȶɭʋʠȥŔʋơȍˊŔȍǫʋʋȍơơȟʠȍŔʋȶɭáè-
ljǫˉơƎʋǠơɢɭȶŹȍơȟ࢘ǫʋƃǠŔȥnjơƎʋǠơáŔȍȟ
OS registry to pretend to be a Sony device, and all was well. Neil Mohr Editor
[email protected]
Les Pounder
I recently got my hands on an Issue 2
ŁĴࢳòɢơƃʋɭʠȟˁǫʋǠࠀࠅȶljè¡ࡳþǠơɢȶˁơɭ
supply was a little dodgy, so I managed
SAVE! * Subsc
ʋȶࢳŹʠǫȍƎŔčò%-ɢȶˁơɭɽʠɢɢȍˊʠɽǫȥnjŔ
ȟŔȥʠŔȍȍˊɽơȍơƃʋŔŹȍơčò%-á7ɢȶˁơɭ
ŹȶŔɭƎࢳŔȍȶȥnjˁǫʋǠŔ7-ŹŔɭɭơȍǿŔƃȇࡳ
50
Nick Peers
% & savribe e!
òȶȟơʋǫȟơɽˊȶʠǠŔʽơʋȶŔʽȶǫƎečzɽŔȥƎnjȶ
straight to the underlying settings – or JSON On digita
l and p
file in the case of HandBrake, where I’ve
see page rint:
mastered the art of copying and pasting 16
audio track names across a queue of titles
using a text editor. Far quicker than manually typing them.
REVIEWS
Siduction 2024.1.0 21
Nate Drake has been hobnobbing with
Siduction’s developers to inform you about
all this Debian-based distro has to offer.
CREDIT: Magictrorch
MakuluLinux 2025.1 22
Nate Drake heads to Vietnam to explore
this feature-rich distro with its own Electra
AI assistant. What more could you want?
Ditana 0.9.0 23
ROUNDUP IN DEPTH
Nate Drake delves into the beta version of
this Arch-based distribution. Is it ready to
roll or just played out?
CREDIT: Westend61/Getty Images
Pi USER TUTORIALS
CODING ACADEMY
Code Space Invaders in BBC Basic 90 HARDWARE: What made Linux great 70
Nate Drake invites you to stave off the To kick off our new series, Mike Bedford
alien menace by coding your very own delves into the largely forgotten 80386,
Space Invaders clone in Basic. where Linux first saw the light of day.
How fast can your Rust code run? 94 ONLYOFFICE: Run it from your NAS 74
David Bolton demonstrates two Rust Enhance your private Synology cloud with
programs to time card shuffling and OnlyOffice Docs, asKseniya Fedoruk walks
generate a file full of poker cards. you through the installation process.
OPERATING SYSTEM
DATA AI censorship
POINTS broken with hex We were also able to use hex
Chinese AI firm DeepSeek’s censorship prompts to discuss censored
subjects like the Falun Gong
has been bypassed by a researcher. with DeepSeek’s LLM.
CREDIT: DeepSeek
community events: FOSDEM in China, like the 1989 protests in Tiananmen In the case of the DeepThink-R1 model, the
in Belgium and State of Open Square. An anonymous security researcher has researcher discovered that using base 16
,+&+1%"o,n4%1/" now been able to bypass this with carefully %"5!" &*) %/ ,!"01, %14&1%1%"
my biggest takeaways? /#1"!-/,*-1&+'" 1&,+0o%" ++6 6-00"!1%"#&)1"/"+1&/")6o "20"!1%&01,
On the community side, researcher worked out that this censorship discuss otherwise censored topics.
there is no shortage of
passionate people. Everyone
who makes it to these events
has an interest in technology,
%")-&+$1%"&/-/,'" 10$/,4n
DESKTOP ENVIRONMENT SOFTWARE
and collaborating with more
people to solve problems.
The depth of feeling is
)460*7&+$+!&+0-&/&+$o
Gnome Flathub adds
On the other side,
companies involved in open
source have to build and
adds HDR new sections
sustain their operations,
+!1%1*"+0 /"1&+$
profitable business models.
configuration New We Games and On
The Go categories make
A big challenge to this is HDR support answers for easier Flatpak browsing.
telemetry. While we are keen
long-standing requests. lathub users already know that the
F
1,0%/",2/-/,'" 10#,/
reuse, we don’t have enough 0&1"+"1)6 1"$,/&0"03&))"--0
data on where they are used into groups such as Networking and
G
+,*"<@}0#"12/"#/""7"1,,(-) "
or where we might want to &+ "/2/6o 201"#,/"1%"!"!)&+"n Education. This has now been supplemented
concentrate in future. code was introduced to better support with a We *"0 1"$,/6n4%& %&0#2/1%"/
This is changing. Analytics %&$%!6+*& /+$"o%"&*-)"*"+11&,+ subdivided into games, game launchers,
company Scarf tracked more &+ )2!"0&+1/,!2 &+$|,+#&$2/" 3& emulators and game tools. There’s also now an
than 10 billion open source ApplyMonitors’ for Mutter, +,*"}04&+!,4 +%" , 1"$,/61,$/,2-1,$"1%"/&+25
downloads in 2024. At manager. It replaces the previous experimental apps for mobile devices.
Percona, we use telemetry -/,-"/16#,/ o0"/04&))")"1,!&/" 1)6 So-called Flathub Fixer Bart Piotrowski
data to understand how "+)" 02--,/14&1%o:988 ,),2/0- " %0)0,-,01"!,+1%"0&1"),$n++,2+ &+$
users interact with our open mode via a new option in the Gnome Control changes to the store’s infrastructure. This will
source products, helping us Center. This news has gone over well with the mainly focus on improving compatibility with its
better serve the community. &+25 ,**2+&16n4%& %%0""+/".2"01&+$ continuous integration system Buildbot, as well
We hope other open source better display capabilities for years. as work on its successor.
-/,'" 10!,-11%&0--/, %o
Under the Flathub
CREDIT: +,*"n )1%2
Distro watch
OPINION
MAKING
What’s behind the free software sofa? TRACKS
GPARTED LIVE 1.7.0-1
%&0)&3"!&01/,&0+}1&+1"+!"!0!&)6!/&3"/o ,4"3"/n&1!,"0-/,3&!"
0& $/-%& )"+3&/,+*"+1 ,2/1"06,#o,/$+!Fluxbox). From
here, users can launch a number of tools for analysing and partitioning
hard disks. New versions are made available roughly once a year. The
)1"01/")"0",# /1"!+,4&+ )2!"002--,/1#,//" ,$+&0&+$0 GParted is designed Frederic Plourde
+"14,/(), (!"3& "0o 1%0)0,&+1/,!2 "!"5-"/&*"+1)02--,/1 to partition hard disks ǫɽĴèȍơŔƎŔʋࢳ-ȶȍȍŔŹȶɭŔࡳ
for Bcachefs single device filesystems. See https://gparted.org. and fix drive errors.
If you’re not familiar
with VR terminology,
lighthouse tracking is a
SOLUS 4.7 positional tracking system
Solus is an independent rolling release distro that’s focused on for VR headsets and
!"0(1,- ,*-21&+$o 120"0#,/("!3"/0&,+,#1%"PiSi package controllers. It tracks the
manager called eopkg. The flagship edition uses Budgie but other movement and position of
!"0(1,-"+3&/,+*"+10/"3&))"n&+ )2!&+$ +,*"+!)0*o devices in 3D space with
%")1"013"/0&,+ ,!"+*"+!2/+ "+,4,##"/0+"40,#14/" high precision.
"+1/"04&1%2+!)"!02--,/1#,/ )1-(0o%"&+25("/+")%0""+ Solus now offers There exists an open
upgraded to v6.12.19. The OS also now has better support for Nvidia ķĬÐĨĬǏǎÆéČìÆÐǎČãǎ source, community-driven
graphics cards. Discover more at: https://getsol.us. ĬČãijŋĨÐǎÆÐĆijĨÐĬƧ implementation of
lighthouse tracking called
Libsurvive. %&0-/,'" 1
contains free tools and
KAOS 2025.01 libraries that enable tracking
&0&+0-&/"!6/ %&+2521&10 /"1,/0!"3"),-1%"&/,4+ on lighthouse and Vive-
packages, available from in-house repos. It uses KDE Plasma and based systems, and can run
bundles popular apps like the Calligra office suite. New packages in this on any device. It currently
version include the Firefox-based Zen browser and Harper, an open supports both SteamVR 1.0
source grammar and spelling checker. Behind the scenes, the KaOS N]}ǎĆČŋǎìĆÆÿķÌÐĬǎ and SteamVR 2.0 devices,
4"0&1"%0)0,%!*',/,3"/%2)o%"-/,'" 1}0 ,!"%0)0, the Zen browser and and is also easily usable with
*&$/1"!#/,* &1 21,,!""/$o"!*,/"1https://kaosx.us. ǏĬĥÐÿÿÆéÐÆüÐĨƧ Monado, the cross-platform,
open source XR runtime.
Recently, I had the
pleasure of announcing an
PARROT OS 6.3 exciting new chapter for this
Formerly known as Parrot Security OS, this Debian-based distro open source tracking system
&0!"0&$+"!#,/-"+"1/1&,+1"01&+$o&("&10"11"/v(+,4+ ,20&+ 01%"-/,'" 11/+0&1&,+"!
)&n&1 ,*"04&1%%2$" ,))" 1&,+,#21&)&1&"0#,/% (&+$n/"3"/0" &10,4+"/0%&-1,,)),/}0
engineering and cracking passwords. It uses the MATE desktop &1 2,/$+&01&,+n4%"/"
environment. The latest release comes with upgrades to key packages two people in our XR team
like Wireshark and Burpsuite. The system libraries have undergone a vĨĨČijǎÆČĆijìĆĬǎ 4&))",##& &)*&+1&+"/0o
*',/2-!1"o%"/"}0)0,#&5#,/2$1%1-/"3"+1"!VirtualBox numerous tools for The previous maintainers,
&*$"0#2+ 1&,+&+$-/,-"/)6o"/+*,/"1https://parrotsec.org. penetration testing. due to other commitments,
decided to pass the torch to
"+02/"1%"-/,'" 1 ,+1&+2"0o
We are grateful for their
PORTEUX 1.9 contributions and look
Based on Slackware and inspired by Slax and Porteus its main goal is to forward to supporting the
be super fast, small, portable, modular and immutable. It’s set for basic -/,'" 10*2 %04" +o
usage, including lightweight applications for the seven standard Bringing Libsurvive into
desktops. No browser is included, but an app store provides easy the fold is exciting, further
0,#14/"!,4+),!0o%"-/,'" 1}0)1"010+-0%,1&0,/1"29oA4%& % Inspired by Porteus pushing 6DoF tracking for
#&5"0+2*"/,#&002"0n!!002--,/101, ;n+!2-!1"0 ijéìĬǎìĬǎǎ}ÿÆüŋĨÐǎ ))!"3& "0&+1/2"n,-"+
the kernel to version 6.13.1. Read more at https://github.com/porteux. based distro. source fashion. Catch us on
the Libsurvive Discord
to stay in the loop.
Kernel Watch
OPINION
BURNT
OFFERINGS
Jon Masters summarises the latest happenings in
the Linux kernel, so that you don’t have to.
inus Torvalds announced the first
L
&)& ,+ 0n-",-)"1,,(%&*0"/&,20)6o%"
couple of Release Candidates for Asahi project (and its remix of Fedora) is relied
what will become Linux 6.14. upon by Linus himself, who often uses a Mac.
Jon Masters is a kernel hacker Among the new features are the usual "3"/)!/&3"/01%1#,/*1%"0%&-,/1
who’s been involved with Linux internal refactoring and device driver (including graphics support) are written in Rust,
for over 22 years, and works on updates, but also completed support for the a modern memory safe language. The Rust for
energy-efficient Arm servers. ntsync Windows compatibility feature that Linux (r4l) project is focused on enabling Rust
will benefit gamers. A number of changes 1, ,v"5&014&1%1/!&1&,+) ,!"&+1%"("/+")
There’s been a lot of were merged to further development of source through special interfacing wrappers
talk about maintainer drivers in Rust, including PCIe support. 1%1 ,+3"/11%"v0"! &+1,,+"1%1201
burnout. Many projects have Perhaps the biggest piece of news is how drivers can use. The latest drama began when
a single maintainer who ‘tiny’ the 6.14 release will be when compared one of the Rust developers posted a patch
works in a hobbyish to recent kernels – it will have ‘only’ half a against the kernel’s DMA subsystem. DMA
capacity. Over time, their million lines changed and 10,000 individual (direct memory access) is used to accelerate
project becomes popular commits (collections of patches). For almost copying data to/from devices. Maintainer
and derives paying any other project, that would be
customers. The developer massive, but for Linux, that’s “The thread became heated, but touched on
starts experiencing the down 30% on a normal
demands of large numbers development cycle. Linus
issues of burnout, the fact that most developers
of users who expect more attributed it in large part to ĨÐǎĥìÌǏÅőǎÆČĨĥČĨijìČĆĬƨǎĆÌǎŋéijǎìijǎijüÐĬǎijČǎäÐijǎ
than the developer can 1%"1&*&+$4&1%"+!v,#v6"/ ÆČÌÐǏìĆijČǎPìĆķŐǎijéÐĬÐǎÌőĬƧDž
,##"/&+1"/*0,#1%"&/1&*"o holidays, noting, “I really feel
The demands come to a like this year we got the whole holiday Christoph Hellwig replied: “No Rust code in
head and the developer has season release timing right.” In other words, kernel/DMA, please.”
to look out for their own some folks actually got to spend time with This lead to a lengthy back and forth.
wellbeing, day job, family, their family over the recent holidays. Eventually, Marcan suggested: “Rust folks
whatever else is going on. should just merge this series… ignoring
The Linux kernel has Rust upheaval Christoph’s overt attempt at sabotaging the
plenty of subsystem By far the most significant discussion topic project.” Apparently, Marcan posted a rant on
maintainers effectively over the past month has been the state of Mastodon, sufficient for a new followup thread
going it alone, and has the Rust for Linux project, and the fate of its titled ‘On community influencing’ in which
experienced its fair share most prominent user, Asahi Linux. Asahi was various kernel developers pushed back on
,#2/+,2101,/&"0o,n&1 founded by Hector Martin (aka Marcan) as “social media brigading”. The thread became
&04&1%1%&0&+*&+!1%1 +"##,/11,/"3"/0""+$&+""/--)"&)& ,+ heated, but touched on issues of burnout, that
-,+!"/1%&0*,+1%}0201v Macs and to port Linux to them. Marcan was most developers are paid by corporations, and
related drama. As you’ll 4"))(+,4+#,//"3"/0""+$&+""/&+$,+6}0 what it takes to get code into Linux these days.
learn (see main story), the )611&,+ ,+0,)"1,/2+&+25n1%20n4%"+ Ultimately, Marcan decided to leave the kernel
lead developer of Asahi he suggested he would port Linux to Apple community and step down from Asahi.
Linux has stepped away
after feeling burned out.
While the story has a lot ONGOING DEVELOPMENT
of nuance, I feel sympathy
for Marcan and those Updated Kexec HandOver (KHO) patches enable support for a feature of the
involved. I’m not a Rust fan, were posted that allow the kernel to kexec Clang ,*-&)"/&+4%& %&1
but they’re striving to make (load another kernel) while keeping various 4/+0,211%/"!0#"16&002"0o 1
something they believe in states around. In particular, this is useful apparently relies upon a C language
happen. Dealing with the #,/0&121&,+04%"/",+"*&$%14+11, extension called capabilities that allow
upstream community can patch and effectively reboot a hypervisor ,!"1,"++,11"!+!1%"+ %" ("!1,
be brutal. I used to maintain while not disturbing any existing guest see if it is operating within the intended
a small package used by the virtual machines. constraints, the goal being to improve
kernel and grew tired of 1%/"!1&1)"!|,*-&)"/v0"! detection of potential threading issues
dealing with some of -&)&16v+!, (&+$v+)60&0}&*01, 1%1 ,2)!)"!1,!"!), (0o
1%"-"/0,+)&1&"0
&+3,)3"!o,n $"1&1o
%&04&)) ,-61%"Y)"0&+1%"0,/1"!
order, copying as many in one go as your
0%"))}0 ,**+!v)&+")&*&104&))%+!)"o
This leaves the problem of spaces
and other reserved characters in the
Y)"+*"0n4%& % +"0,/1"!620&+$
+2))61"1,!")&*&11%"Y)"0&+Y+!}0 output
and telling xargs1,"5-" 11%&0&+-21n
which is simpler to do than to describe:
$ find -name ‘*.mp3’ -print0 | sort | xargs
-0 cp -t usbstick
The order of the arguments given
to xargs is important. Those before the
command apply to xargs, those after are
passed to the command.
However, this may not completely solve
your problem, due to the way the FAT
Y)"0601"*4,/(0q01& (0$"+"/))620"
1%&0&+!,40Y)"0601"*o3"+,24/&1" Synchronising Samsung Calendar with Thunderbird works if you use the Google Calendar as an intermediary.
1%"Y)"0&+1%",/!"/6,24+1n1%"6*6
still be jumbled on the stick. The solution &+!,40"/n 20"!MyPhoneExplorer is able to sync with ,,$)")"+!/n and
is a utility called fatsort. If it is not in your 1,06+ %/,+&0"1%"Thunderbird )"+!/ the *02+$)"+!/is able to sync with
!&01/,}0/"-,0n$"1&1#/,*https://fatsort. 4&1%*6*02+$+!/,&!-%,+" 1%1o%"Y/0101"-&01,$,1%" ,2+10
0,2/ "#,/$"o&,. At its simplest, run: (Samsung Calendar). MyPhoneExplorer section of the phone settings. Go to Add
$ fatsort -a /dev/usbstick &+&+!,4&+1"$/1"04&1%Thunderbird Account, select Google and log into your
You give fatsort the device node, not /"))6+& ")6n21)1%,2$% %3"&+01))"! Google account, then you can enable the
the mount point. The device should not be MyPhoneExplorer,+&+25n %3" Sync Calendar option.
mounted when you run this. The man page +,1""+)"1,!,1%"0*"o1 Once you can see your calendar entries
%0,-1&,+0#,/Y+"v12+&+$1%"/"02)10o #/,**6-%,+"&006+ %/,+&0"!4&1% appearing in the Google app or web page,
Your combination of ls and cp failed MyPhoneExplorer’s,4+ )"+!/0601"*n Y/"2-%2+!"/&/! and go to File > New >
because you use $(...), not <(...), to pass 21MyPhoneExplorer&+&+25&0+,1 )"+!/o)& (+%""14,/(+!"51n
the output of one command to another. 06+ %/,+&0"!4&1%Thunderbird. then type in your Google email address.
Normann Aa Nielsen ,2}))0""1%"202)21%,/&01&,+/".2"01
WRITE TO US My code!
I just learnt that there is an article in the February
Do you have a 2025 Code Academy about my program Cosmic
burning Linux-
Invaders. ,4 + $"1-/&+1"! ,-6l 1}0+,1
related issue
available to order on the site.
that you want to
discuss? Write to Mark Buckwell
us at Linux Format,
Future Publishing, Neil says…
xķőǏ<ČķĬÐƨǎ The issue in question, LXF324, is now available to order
éÐǏąÅķĨőƨǎ from www.magazinesdirect.com, but we’ve put a copy
ijéƨǎūǎūǎČĨǎ in the post for you. We hope you enjoy how we’re
email letters@ presenting the project to 21st-century coders! Ideally you want the Linux kernel to have support, but you can install
linuxformat.com. your own drivers; just be prepared to reinstall with kernel updates.
,,,)!l
I have an old system and was wondering if it’s worth an Athlon II of some description. The good news is they
-211&+$&+25,+1%"/"l 1}0#/,*/,2+!:898+!%0 are at least 64-bit and support SSE4 and hardware
+3&!& <<84&1%9 n!2)v ,/" virtualisation, which means they should run any
+!@ o,2)!&1"0"/3"!"11"/4&1%&+25 modern distro with no technical issues – even if they
,+&1l }))*&+)620"&1#,/,22"n"0060+!#"4 didn’t, there are 32-bit options, such as Bodhi Legacy.
)&$%1$*"00*60" ,+!/6o 120"!1,%3" The same goes for the GT 440 card – it’s still
Windows 7 and it didn’t perform very well. supported and you should find decent out-of-the-box
Peter Vance performance for desktop use. It has the same sort
,#;-"/#,/*+ "01%" +1") >;8&+1"$/1"!
Neil says… graphics. Not sugar coating it, these days that’s pretty
The Nvidia GT 440 came out in 2011 and was an entry- poor, but good enough for basic desktop acceleration
)"3") 1%102--,/10&/" 19:#"12/"0o ,&+$,## and playing 2010-era games at lower resolutions. The
that, I’d guess the processor you have is also entry- one thing you don’t mention is the motherboard, audio
level, something like the dual-core Intel Core i3 540 or or network interface. These last two tend to cause
hiccups on older hardware, but usually, if you can look
Cosmic Invaders
up the chipset code, you can track down a Linux driver.
was released as a
coding book back
ìĆǎūųŲŮƨǎĆÌǎijéÐǎ Not secure
code has since been I worry about security. I currently use Windows and it’s
ķĥÿČÌÐÌǎijČǎ7ìij<ķÅǎ clear that the OS belongs to a worldwide-known and
for all to enjoy.
one of the richest American companies, Microsoft.
214%1,21&+25l ,4 + "02/" 4&))$"1
-/,3&!"!4&1%0" 2/&162-!1"01%"+"51!6n,/&#
2-!1"0/"#/"",#*)4/"l %3"#"")&+$1%1
there are hundreds of various distros run by hobbyists
who can do whatever they want with their systems.
Why do you trust and keep using these distros,
"0-" &))6&#*,01,#1%"*/"#/"",# %/$"l
Trevor Smith
Neil says…
This is a great question and a valid concern that comes
up a lot, quite often in the form of how can open source
Helpdex
Wine, wine, wine The Dell XPS might be no more but at least they sent us review units!
While tools like Wine and Proton are helpful,
compatibility can be frustrating, usually with less
,**,+,/20&+"00v0-" &#& 0,#14/"o ,/"5*-)"n suppose to troubleshoot Wine issues and set things
0,*"--)& 1&,+0 /0%4&1%,21"5-)+1&,+n4%&)" up for specific scenarios.
others struggle with performance or lack a feature Alex Carter
+""!o }!),3"1,0"" ,*-/"%"+0&3"$2&!"1%1
compares different approaches, such as fine-tuning Neil says…
Wine configurations, using virtualisation tools like We’ve looked at Wine (LXF314, LXF284, LXF238) but v10 is
VirtualBox,/n+!"5-),/&+$+"4"/0,)21&,+0 out now… Bottles is new, so we should check that out,
)&("Bottles. I’d be interested in seeing how you are while Proton (LXF314, LXF266) is games-orientated.
[email protected]
www.magazinesdirect.com
/LIN/DH43Z
Call 0330 333 1113
and quote DH43Z
NEW !
cess to
Digital ac
es when
130+ issu
ribe
you subsc
to print!**
50 %*
Only Only
£21.09 for 6 months
£22.71 for 6 months
6 months of Linux Format >*,+1%0,#!&$&1)
!")&3"/"!#,/^:9o8Aj Linux Format #,/^::o?9j
Head to Linux Format Use your subs number Access your issues
1 ,2%"/!1%"*+x/,40"1, 2 Log in using your subscriber 3 Use the issue drop-down menu
www.linuxformat.com/archives using +2*"/+!02/+*"o,2 +#&+! 1, "00-01+! 2//"+1&002"0o,2
6,2/#3,2/&1"4"/,40"/o%"/"&1 1%"+2*"/,3"6,2/+*"+! +)0,0"/ %621%,/+!("64,/!
06020 /&"/0p)& ( "/"n!,'2011%1o !!/"00,+1%"!!/"00)")o ,//1& )"16-"0o
Visit www.magazinesdirect.com/linux-format
18 LXF326 April 2025 www.linuxformat.com
REVIEWS
Asus ZenWiFi BT8
Brandon Hill finally thinks this is a worthy Wi-Fi 7 router.
he ZenWiFi BT8 shares its design language
SPECS
Wi-Fi: Wi-Fi 7
T with the more expensive ZenWiFi BT10. In
fact, the two mesh router systems share the
(802.11be) same exterior dimensions. The outside is finished in
Bands: *114%&1"n+!1%"-)&+"01%"1& 0%,2)!)),41%"
2.4GHz: 2x2, wireless nodes to fade into the background wherever
688Mb/s you place them in your home.
5GHz: 3x3, At least when looking at the nodes, the primary
4,323Mb/s differentiator between the ZenWiFi BT8 and the
6GHz: 3x3, ZenWiFi BT10 is the port arrangement on the back.
8,643Mb/s The ZenWiFi BT8 provides a 2.5G port for WAN/LAN
Speed: and another 2.5G port for LAN – the ZenWiFi BT10
13,654Mb/s provides 10G for both. The ZenWiFi BT8 also provides
CPU: TBC two 1G ports for LAN with a USB 3.2 port.
Mem: 1GB RAM, The setup is straightforward, as is usually the case
128GB flash with Asus routers. Once the physical wired connections
Ports: 2x are made, direct your web browser to asusrouter.com.
2.5Gb/s WAN/ After clicking through a couple of pages filled with
LAN, 2x 1Gb/s, 4))0,#1"51!"+,1&+$-/&3 61"/*0n6,2}/")),4"! A consumer-friendly white box will look smashing in your living room.
1x USB 3.2 1, /"1"0"-/1" 0#,/" %4&/")"00+!+!
Support: Mesh, separate IoT network. Then create a new administrator (1,950Mb/s) and 25-foot (718Mb/s) distances. It was a
beamforming, login and password. At this point, any additional mesh mixed bag on the 5GHz band, where it fell to last place
Size: 159 x 72 units can be added. at six feet, but placed second at 25 feet. The ZenWiFi
x 186mm The ZenWiFi BT8 supports wired and wireless BT8 put on another strong showing on the 2.4GHz
backhaul. If your home is already wired up, you can band with congested traffic, taking first place at six
leverage the wired backhaul using the 2.5G LAN port feet (99Mb/s) and 25 feet (60Mb/s).
on the back of each node. If you go the wireless route, Ping times were consistently in the 3ms to 5ms
the ZenWiFi BT8 uses MLO to bond the 2.4GHz, range for the ZenWiFi BT8 on the 6GHz and 5GHz
= 7+!> 7+!0&+1,0&+$)")&+("14""+1%" bands in our congested and uncongested testing.
router and satellites. These are excellent options. However, the 2.4GHz band tests saw ping times hover
between 7ms and 13ms.
Net worth The Asus ZenWiFi BT8 is a great value router for
020}0"5 "))"+1AsusWRT 5.0 software platform anyone looking to upgrade an ageing Wi-Fi 5 or older
offers a wealth of configuration options and features network to the performance and reliability afforded
that you can explore. The Network Map serves as 6&v &?o +# 1n&1}0/"*/()"3)2"#,/&v &?
1%"%,*"-$"#,/1%""+& &@n+!&1$&3"0 mesh router that cracks the 2,000Mb/s mark on the
broad overview of your network, including internet > 7+!o")0, +}1!&0 ,2+11%"AiProtection
connection status, WPA security level, CPU core 02&1"1%1}0,##"/"!#/"",# %/$"n4%&)"susWRT
utilisation, RAM usage, active Ethernet ports, USB =o8continues to be one of the most thorough and
-,/101120n+!&"0%01120o customisable software platforms available in the
020!,"0+}1 %/$"#,/!!&1&,+)#"12/"04%"+ %,*"/,21"/*/("1o
companies like Netgear, Eero and TP-Link try to push
their paid-for subscription services in order to unlock
certain features or security suites.
VERDICT
In the 6GHz iPerf3 uncongested tests at six feet, DEVELOPER: Asus
1%""+& &@02/-00"!:n8880o 1 ,2)!+}1 WEB: www.asus.com
quite keep up with the ZenWiFi BT10, though, which PRICE: £250
1,--"!)) ,*-"1&1,/01:n>>?0o
Things were a bit closer between the two Asus FEATURES 9/10 EASE OF USE 9/10
siblings in the 5GHz iPerf3 test. The performance at PERFORMANCE 9/10 VALUE 7/10
0&5#""140+"/)6&!"+1& )n4&1%1%""+& &@
hitting 1,297Mb/s and the ZenWiFi BT10 achieving Asus offers a compelling tri-node, tri-band Wi-Fi 7 router
CREDIT: Asus
9n:A;0o%"" ,>=/,1,,(1,-%,+,2/01 that while still expensive at least justifies the cost.
0&5#""119n=;80o
Moving to our congested testing regimen, the Rating 8/10
ZenWiFi BT8 slipped into second place at both six-foot
Siduction 2024.1.0
Nate Drake has been hobnobbing with Siduction’s developers to
inform you about all this Debian-based distro has to offer.
ike MakuluLinux (see p.22),
IN BRIEF
This OS
L Siduction is based on the
testing branch of Debian.
represented a The latest version is available with
considerable 1%"1n# "+!)0*
upgrade over desktops. But after choosing the
regular Debian 0-&+/2++&+$)0*>n4"+,1"!
testing, with 1%1&120"099&+01"!,#6)+!o
support via a This is ostensibly due to issues with
manual, IRC choosing the correct keyboard
channel and layout when using Calamares.
user forum. After downloading the 3.7GB
There were ISO, code-named Shine On You
some glitches /76&*,+!#1"/1%"&+(
installing Floyd track), we booted the OS
software but &+1,1%")&3""+3&/,+*"+1o-,+
nothing too launching Calamares, you are given The Siduction desktop has shortcuts to the handy user manual and the
serious. the option to install non-free drivers #siduction IRC channel. There’s also a user forum.
and firmware. After choosing this,
we then chose our time zone and specified partitions. touted Siduction as a viable alternative for users whose
SPECS System encryption didn’t seem to be available. machines can’t be upgraded to Windows 11. The
CPU: 1GHz Once we clicked Install, setup completed in just over review also pointed out that as a rolling release, there’s
Mem: 4GB three minutes – on a par with stock Debian. During this no need to perform regular major upgrades.
HDD: 15GB time, you are treated to a slideshow of the artwork for When we checked system settings, we noted that
Builds:5@>u>< various Siduction distros over the past 10 years, with software updates are set to Manual, which surprised
lyrical code names such as Desperado and Firestarter. us. Still, upon launching Discover, we noted that 1,179
Once the desktop loaded, we were happy to see updates were available, which may explain why the
that it contained a link to Siduction’s comprehensive system is configured not to apply them automatically.
manual. It was here we learned the recommended We also used Discover to try to install the
specs (see left). After firing up System Monitor, we cyberpunk point-and-click adventure Beneath a Steel
found the manual had got it right. With no other apps Sky. However, when we did so, the progress bar
open, Siduction used just 1.8GB of RAM in our virtual seemed frozen. The same thing happened when we
* %&+"+!/,2+!=8,#,2/3&/12)o 10&+01)) attempted to install the Chromium browser. Rebooting
footprint (including non-free packages) was 14.4GB. our virtual machine fixed this issue.
The default wallpaper is a variant of Nexus by We noted another glitch when launching Konsole.
/601&+'!")n4&1%%/&01*01%"*"+,1"1%" After attempting to use sudo apt to install cowsay,
+1%111%",11,*v/&$%1o,2 + %+$"1,1%" we were told that the user account we created was
standard Nexus background via desktop settings. not in the sudoers file. Fixing it by switching to the
The bundled applications in our version contained a root account via su is simple for experienced Linux
+2*"/,#--0)&("Konqueror. The Konversation users, but Windows refugees could struggle.
IRC client also comes pre-installed. Clicking the IRC
shortcut on the desktop launches Konversation, which
is preconfigured to load the #siduction channel. It was
VERDICT
here that one of the Siduction developers informed us DEVELOPER: Siduction Development Team
that the OS also has an extensive user forum. WEB: https://siduction.org
They also mentioned that they’re particularly proud LICENCE:&+)6
of including Mesa-git in this edition, an experimental
build of Mesa. The live ISO also contains chroot-helper. FEATURES 8/10 EASE OF USE 7/10
In the words of Siduction developer ‘dpanter’, this is for PERFORMANCE 8/10 DOCUMENTATION 9/10
when “things bork completely”. More technically, it
enables users to chroot into an existing install to fix Siduction offers a simple setup, as well as comprehensive
booting errors. This came in useful in 2023 when support. The desktop is stunning but there are minor bugs.
"/1&+ - ($"0!&!+}12-$/!" ,//" 1)6o
On the subject of upgrades, after visiting the user Rating 8/10
#,/2*0n4"+,1"!)&+(1,"1/"3&"4n4%& %
MakuluLinux 2025.1
Nate Drake heads to Vietnam to explore this feature-rich distro with its
own Electra AI assistant. What more could you want?
ince 2013, there have
IN BRIEF
‘Makulu’ means
S been various versions
of MakuluLinux,
‘big’ in Zulu and including ones based on Ubuntu
that’s what the LTS. This latest version is based
OS does. It’s big on Debian Testing and is part of
on features, AI the project’s LinDoz products.
integration, and These LinDoz editions are
pre-installed designed to make the transition
applications. from Windows to Linux easier,
Upgrade to such as by using the Microsoft-
/,#,/"11"/ like Cinnamon desktop.
desktop and AI After downloading the hefty
customisation. 6GB ISO and booting it in our
VM, we were pleased to see
that the OS supports live mode.
SPECS We were immediately treated Upgrading to Pro offers more desktop customisation, such as additional wallpapers, icons, shades
CPU: 1GHz 1,3&!",,#$6+,&!4%, and themes. It also unlocks advanced AI features.
Mem: 2GB (4GB represents the built-in Makulu
suggested) AI Electra. This provided a useful overview of the themes. We were particularly impressed by the
HDD: functions Electra can perform and how to access it. inclusion of over 30 high definition wallpapers.
15GB (20GB Upon first launch of the live desktop, we were also Next, we launched the AI assistant, which uses a
suggested) treated to a window listing Makulu’s AI tools, but we chat interface to talk with Electra. This was extremely
Builds: x86_64 launched the installer instead. We were impressed to sluggish in our VM but that’s unsurprising given that it
see that you can specify the download server. couldn’t directly access the system GPU. The drop-
Setup is managed by Calamares, so it only took a down menu at the top allows users to interact with a
few moments to go through options like setting the number of other LLMs including Claude and ChatGPT.
keyboard layout, partitions and users. We couldn’t see Makulu’s AI Toolbox contains launchers for even
an option for system encryption. Once the install was more useful utilities such as tools for image generation,
underway, setup completed in just under eight minutes. background removal and coding assistance.
When the desktop loaded, the Makulu Setup You can add more programs via the pre-installed
Manager launched automatically. This encourages Gnome Software. We used this to install the Flatpak
users to configure drivers and the system firewall, as version of Firefox without issue. This wasn’t necessary,
well as network and backup settings. After this app is because the OS comes with the Chromium browser.
closed, the First-Setup utility opens for Makulu’s own However, from going through the pre-installed apps
messaging program. This includes Makulu’s latest n4"+,1"!1%"/"4"/"0,*"/"!2+!+ &"0n02 %0
Universal Translator feature, so that each participant including both the Mpv and VLC media players.
sees chats in their native language. The Software Center supports updates, but Makulu
The main website has extensive documentation, has its own dedicated utilities for system and package
including helpful tutorial videos from lead developer updates. These can be launched from the dock.
Jacque Raymer. However the listed system specs were
for an older build of Makulu. Fortunately, the desktop
implements Conky, which lists current resources. With
VERDICT
no other apps running, the system used 1.5GB of RAM DEVELOPER: Jacque Montague Raymer
on our VM and around 1% of our virtual CPU. Despite WEB: www.makululinux.com
the large ISO, the install footprint was around 20GB. LICENCE: GPL v3
At this point, we received a message from Jacque
Raymer himself. After discovering his OS was being FEATURES 10/10 EASE OF USE 9/10
reviewed, he sent us a DEB file to upgrade to the Pro PERFORMANCE 9/10 DOCUMENTATION 9/10
edition. This normally costs $33 and includes a number
of upgrades, including extra desktop customisation, as We don’t say “wow” very often but MakuluLinux is truly
well as an AI widget and better integration. impressive. The desktop is colourful, intuitive and featureful.
Upon rebooting, we decided to fire up the upgraded
desktop manager. This offers options to relocate the Rating 9/10
dock and panels, as well as apply new colours and
Ditana 0.9.0
Nate Drake delves into the beta version of this Arch-based distro.
Is it ready to roll or just played out?
itana’s main site contains a
IN BRIEF
This distro
D Design Philosophy section
that states: “We believe
performs well that users should have the power
for a beta and 1,*("4"))v&+#,/*"!!" &0&,+0
has some about their systems’ requirements
excellent without unnecessary complexity or
#"12/"0o"12- hidden defaults.”
is flexible but %"&10")#&00"!,+/ %
the huge Linux and is currently only available
number of as beta software. While LXF as a
options might rule doesn’t review development
overwhelm versions of Linux distros, there’s
non-power been enough online buzz to
users. We’d convince us that this one is
)0,--/" &1" sufficiently mature to be tested.
more in-depth After downloading and booting While power users might appreciate the chance to enter their monitor DPI, it strikes us as
documentation. 1%"9o> n4"+,1"!1%"0601"* overkill to require this during setup.
uses a colourful text-based installer.
We were also given the option for robotic speech. replacing text in files and running searches. We
SPECS The setup options were reasonably intuitive at encourage you to do your own research.
CPU: 1GHz #&/01o0-/,*&0"!61%"!"3"),-"/0n20"/0%3" The Xfce desktop also has a built-in cheat sheet,
Mem: 2GB $/"1!"),# ,+1/,),3"/1%"-/, "00n04"4"/" which lists handy keyboard shortcuts and commands.
HDD: 13GB offered the option for a headless install, as well as These are listed by category, such as Workspaces
Builds:5@>u>< specific packages. Users can even configure the +!,#14/"+$"/o%&0&04%"/"4")"/+"!1%1
("/+"),/!&0)"+"14,/(&+$!2/&+$0"12-o Ditana uses Pikaur as an AUR helper, which in turn
This said, the setup assistant wasn’t as intuitive forwards to Pacman for official packages.
04"}!%,-"!o,2/"-/,*-1"!1,0"120"/+! We were able to use this in the Kitty terminal to
group ID (1000 is left in by default). The installer also search for packages. However, installation and updates
prompts you to choose a keyboard layout and locale. are managed by Pacui. This uses a numerical menu. For
After choosing GB, unknown to us, it defaulted to the instance, you can press 3 to view an alphabetical list of
Colemak layout, which resulted in a comedy of errors installable AUR packages. You can scroll through these
4%"+"+1"/&+$1%"),$&+-004,/!o1&))n&1+1("0 manually but Pacui also allows you to enter a string to
security seriously, as you must choose passphrases of filter the list, as we did to install Firefox.
at least eight characters, with a mixture of letters and The desktop interface itself is colourful but not as
+2*"/0o601"*"+ /6-1&,+&0)0,02--,/1"!o intuitive as we’d like. The application launcher in the
Once the setup process began, it downloaded a corner isn’t helpfully labelled as such, so we had to find
large number of packages, meaning it took over 20 it on our own. The icons at the bottom-right were also a
minutes for installation to complete. This makes the little too closely grouped together, but we noticed that
distro one of the longest we’ve ever taken to set up. this wasn’t the case at higher monitor resolutions.
After reviewing the online documentation, we
couldn’t find any record of the system requirements
1,/2+&1+o%,0",21)&+"!(see side box) are for
VERDICT
&10-/"+1n/ %o1&))n2-,+#&/01),$&+n4"4"/" DEVELOPER:1"#++!%,*0&--/,1%
pleased to see that Gnome System Monitor comes WEB: https://ditana.org
pre-installed. This showed that without any other LICENCE:&+)6
--)& 1&,+0/2++&+$n1%"20"!,+)6/,2+!:
,#+!/,2+!@,#,2/3&/12)/"0,2/ "0o FEATURES 7/10 EASE OF USE 6/10
The install footprint was quite light at around PERFORMANCE 7/10 DOCUMENTATION 7/10
10.4GB. This was no doubt due to the fact that we
,+)6 %,0"1%"!"#2)1- ($"0!2/&+$0"12-o%&0 Ditana is extremely flexible and has AI integration. However,
excluded Ditana’s integrated AI assistant, as we knew setup is laborious and there’s no graphical package manager.
,2/0&*-)6 ,2)!+}1%+!)"&1o%10&!n1%",+)&+"
documentation states that Ditana Assistant is useful Rating 7/10
for routine operations such as identifying processes,
Halls of Torment
Management loves the idea of a vast army hammering away
at keys all day – Joshua Wolens thinks that’s his current day job.
he most obvious difference between Halls of you’re going to spec your guy over a multitude of +1%
SPECS
Minimum
T Torment and its inspiration is that it expects you
to click to attack. No, sir, none of that Vampire
and +0.2% increments to their myriad stats. And where
ordinarily those kinds of minute increases are barely
OS: Ubuntu Survivors laxity here. You’ll make inputs to hit enemies noticeable in RPGs, the constant churn of level-ups
18.04 LTS and you’ll like it. At least for the 10 seconds or so before means they quickly accrue into meaningful differences.
CPU: 2.5GHz+, you head into the settings menu and turn it off.
quad-core But there’s a reason Halls of Torment starts like that: Weapons of mass construction
Mem: 4GB it’s a mission statement. Yes, it’s saying, you’re one little Plus, your buildcrafting is made easier by one of Halls of
HDD: 4GB guy against an army of hundreds, thousands, hundreds Torment’s primary cleavages from Vampire Survivors:
GPU: Intel Iris of thousands of other little guys, and yes, you’re sucking level-ups only give you a chance to buff stats, not choose
Xe, Nvidia GTX up experience gems by the bucketload, but this isn’t that new weapons, and you get four options to choose from
970, AMD RX other autobattler. This is something different, more (with opportunities to reroll your options, once you get in
570, Mesa 22+ deliberate, more considered, and altogether less slot- far enough). If you want new gear, actual gear, you have
machiney than its razzle-dazzle forebear. This is Vampire to slay one of the bosses roaming the levels, but it’s not
Recommended Survivors with a heavy Diablo gloss. It’s exactly as strictly necessary. Filling all your possible weapon slots
OS: Ubuntu dangerous for your time and productivity as it sounds. &0//&16n+!&14,2)!+}1"2+%"/!,#1,*("&1))1%"
22.04 LTS We’re not name-dropping Halls of Torment’s clearest way though a level without ever getting anything on top
CPU: 3.5GHz+, influences to demean it. The game doesn’t shy away of your default, class-based weapon.
quad-core from its inspirations – they’re there on its sleeve for all Take our favourite class and probable war criminal:
Mem: 8GB 1,0""x21&14,2)!"2+#&/+!&+ 2/1"1, ))Halls the Exterminator. He’s got a flamethrower. Notionally, you
HDD: 4GB of Torment derivative. By some mad alchemy, it blends could have other weapons, but who cares? Our focus
GPU: Nvidia the compulsive loops and endless enemies of Vampire when playing him is turning him into a roving, angry
GTX 1070, Survivors with the gear and buildcrafting of Diablo and Roman candle, melting hordes of enemies into masses
AMD RX 570 produces something wholly its own. of undifferentiated flesh. Is this optimal? Perhaps not. Is
Despite the writhing masses of sprites, it’s a this satisfying? Like you wouldn’t believe.
)&11)"*,/"1%,2$%1#2)+! ,+0"/31&3"1%+,1%"/ That’s the handle: the thing that makes Halls of
autobattlers we’ve played. Your hero has over 20 stats Torment different from Vampire Survivors and the thing
for you to consider as you massacre your way through that makes us keep coming back to it is that it feels like
dungeons. There’s the usual stuff – health, defence, you’re following something resembling a plan. Vampire
damage – but there’s also stuff like piercing, force and a Survivors is great, but its experience is one of frantically
critical hit system composed of multiple substats. assembling an ad-hoc toolkit out of whatever its level-up
Rounds are 30 minutes, so you’re unlikely to max gachas spit at you. Failure is a quirk of the slot machine.
them all out even if you want to. You have to decide how In Halls of Torment? Our failure is the failure of our plan
Failure is a quirk of
the slot machine. CREDIT: Chasing Carrots
Things might be
getting out of hand…
Michael Reed
has been using
Linux since the
Gentoo Arch Linux Void Linux mid ’90s, so a bit
NixOS Slackware of compiling and
reconfiguring
doesn’t faze him.
Power-user distributions
Michael Reed tries some Linux distros that throw ease of installation out
of the window in favour of customisation and a learning experience.
HOW WE TESTED…
,#1%"!&01/&21&,+6,2}/"
,211,1 ()"o0+ These power-user distros are tricky to chroot into the partially installed system.
example, we set up the SSH install but provide useful benefits over the From this point, you can begin configuring
server while installing so that more run-of-the-mill options, because they the system and install the bootloader. At
we could cut and paste from are far more customisable and they give the each stage, you have some options about
our regular (Ubuntu) desktop user a deep insight into how a Linux system how you would like to proceed. Hopefully,
even though the installation actually works. In each case, you’re going to along the way, you’ll learn a few things about
was running within a have to roll your virtual sleeves up and get how a Linux distribution functions and put
VirtualBox virtual machine. stuck into the command line to carry out an together a system that works just the way
installation, effectively manually doing what you want it to.
Installation
procedure
It tends to be a learning experience
with distributions like these.
entoo’s installation procedure is one of the most Slackware’s installation utility does a lot of the work for you, which might be what
source-based installation, you can end up waiting for, say, half an and partition the disks. Then on, the installation utility uses a
hour while certain packages are compiled and installed. If you text-mode GUI. The procedure isn’t that different from a modern
choose the wrong option, this obviously adds to the time. We Linux installation, with a few small extra details. One bigger
reckon that a user who understands manual partitioning and difference is that you have a lot of control of package selection.
compiling the kernel would typically need a couple of nights to NixOS starts in a familiar way as you boot from a live medium,
install the system. A less advanced user might need a week. then set up partitions from the command line. From there on,
Arch Linux installation is also a largely manual affair, but it things take a different tack as a config file is edited to make all
doesn’t involve compiling packages from source. We reckon it decisions about configuration (such as the locale) and package
might be the best balance between having full manual control selection. Thankfully, there are some good installation groups,
,#4%16,2/"&+01))&+$+!)"/+&+$%,4&+254,/(04&1% such as those to set up a Gnome desktop.
building a usable system with a reasonable amount of effort.
Void Linux is similar. Where appropriate, standard tools are VERDICT
used, but some of the install is made easier with custom scripts.
Getting out of things like manual keyboard setup is convenient GENTOO 8/10 NIXOS 7/10
without making us feel too separated from the experience. ARCH LINUX 9/10 SLACKWARE 7/10
If you’ve been with Linux since the early days, Slackware’s VOID LINUX 9/10
installation will be a trip down memory lane. Some manual work You learn a lot, but installing Gentoo is a lot of work. Arch also gives you
from the command line has to be done to install the bootloader insights into how things work.
Alternative
distro builds
Pre-built and configured options
with easy-to-use derivatives.
entoo has a small collection of alternative installation
B *+2))6&+01))"!
distributions, the quality
&+&10"5-)+1&,+,#4%1" %+!"3"/6
command does, yet, ironically, it doesn’t
and has a clear-looking aesthetic that
separates command line sequences in the
,#1%"&+01))1&,+$2&!"&0,# assume much pre-existing knowledge. explanatory text. Useful boxes containing
paramount importance. We’ll start The guide does have its problems, additional tips, notes and warnings are
with the fundamentals because a though, the main one being that it follows littered throughout the guide. It says a lot
good layout is appreciated. By this, more than one installation path within a for the Arch documentation that we often
we mean clearly marked sections single document. For example, the UEFI land on it when searching for help on
that, preferably, can be jumped boot system and the traditional MBR style various Linux topics.
between. A massive wall of bland- of boot are mixed in together. The same The text is highly informative because
looking text wears thin pretty &01/2"#,/Systemd and OpenRC init &11"+!01,$&3"#2))"5-)+1&,+01,
.2& ()6&+1%&00,/1,#0&121&,+n0, systems or using a signed kernel. 4%66,2/" //6&+$,211%" 1&,+0o
4")0,)&("1,0""$,,!20",# The end result is a lot of scrolling up Alternatives (such as to the init or boot
colour and formatting. +!!,4+06,2%3"1,!,2)"v %" ( systems) are mentioned, but they don’t
We like to see a full explanation which option relates to each command take over the text, like the confusing
of what we’re typing actually does, sequence, and it doesn’t help that the Gentoo guide. Again, balance is key here:
even if we have to follow links to section headers are indistinct with a bland the text isn’t crowded with superfluous
other parts of the documentation colour scheme. Splitting it into different details, but it includes a healthy number
&+,/!"/1,!,0,o002*-1&,+,# versions for different options would have ,#)&+(01%1,##"/*,/"!"1&)4%"/"&1}0
knowledge can be a problem with a been easier to follow. It’s a shame, as you needed, and these are easy to open in
guide that is overly light on details, can learn so much from installing Gentoo. another browser tab.
because you could end up in a
situation where you’re typing in
commands and don’t have any
&!",#4%11%"6*"+o%&0
*"+01%16,2}/"-/,+"1,$"11&+$
stuck at one stage or another, and it
also means that you’re not actually
learning anything about how the
distribution works.
Educational value
These distributions offer an opportunity to pick up some useful skills.
f the systems we’ve looked at, Gentoo offers the something like Debian. The documentation is excellent and the
O *,01&+0&$%1&+1,%,4&+250601"*4,/(0n-/1&))6
because its systems are so basic and partially because
skills you’ll learn are highly transferable to other Linux systems.
Slackware’s installation routine is slightly more automated
the packages have to be compiled and configured. Package than that of the other systems, which means that you do miss
manager Portage doesn’t do as much for the user automatically out on some information about how Linux works.
as, say, apt. For example, we installed X11, but we ended up Void Linux, Slackware and Arch Linux are similar in that they
without some essential packages and couldn’t start the GUI. We present the user with a basic Linux system that is best managed
had to resort to searching online to understand the meaning of via configuration files. By contrast, it can be tricky to manually
the errors we were seeing. Being frank, once you’ve built a fully configure a component such as the init system of a distribution
working Gentoo system, the other systems we’re looking at are a like Ubuntu, as it’s more complex.
cinch, and that means we must have learned something useful
from installing Gentoo. VERDICT
Like all of the systems, you’ll learn something about how
Linux works by using NixOS. However, the downside of it being a GENTOO 9/10 NIXOS 6/10
declarative system is that some of the skills you’ll learn can’t be ARCH LINUX 8/10 SLACKWARE 6/10
transferred to a more ‘normal’ system. VOID LINUX 7/10
Although Arch Linux has its own package manager (Pacman), For better or worse, you have to learn a lot to manage Gentoo – but that does
it is a fairly standard system and works along similar lines to mean your Linux knowledge grows.
Community
and support
Getting started and
troubleshooting problems.
he official Slackware documentation revolves around a
Scope for
customisation
Make your vision for a Linux system
a reality rather than using defaults.
ixOS is the odd one out as it’s declarative. Rather than
The verdict
Power-user distributions
e’ve chosen Arch Linux as our current favourite
ALSO CONSIDER
Debootstrap is a utility that can install a Debian-based Linux Linux From Scratch isn’t a distribution as such. It’s a set of
system from within another running distribution, much like instructions to build up a Linux installation manually. In theory,
the installation procedure of the power-user distributions you learn a lot about how Linux works while you’re doing it.
we’ve looked at here. Bedrock Linux describes itself as a meta distribution, and it
CRUX Linux is manually installed and configured and was makes it possible to mix components from different distros.
one of the inspirations behind Gentoo Linux and Arch Linux. The website gives an example of using Debian’s Core Utilities,
Unfortunately, its future is uncertain as the original maintainer Arch’s kernel, a PDF reader maintained with Gentoo’s Portage,
has left the project and the last update was in 2022. and games running against Ubuntu’s libraries. Woah!
E 6,2!&!n1%1}04%66,2$,1&+1,&+25o/
*6"&140" 20"&+!,40&01,,
"5-"+0&3"o&1%"/46n4"}/"%"/"1,1" %
6,20,*"% ("/1/& (0o ,-"#2))6+,1+61%&+$1%1}))
$"16,2&+1/,2)"1%1}02-1,6,2n21 "/1&+)6
0,*"1" %+&.2"06,2 +20"/&$%1+,41,1"01
0" 2/&16,+6,2/%,*"+"14,/(,//"*,1"0"/3"/0o
"}))&+1/,!2 " (,5n!&01/,!"!& 1"!1,
-"+"1/1&,+1"01&+$n0" 2/&16/"0"/ %+!% (&+$o
1}0$,1"3"/61%&+$6,2+""!+!-/,)6),16,2
!,+}11,"$&+6,2/!3"+12/"0o"}))01/14&1%-,/1
0 ++&+$x-/1,#1%"&+#,/*1&,+v$1%"/&+$-%0",#
+611 (x1,#&+!,214%10"/3& "0/"/2++&+$,+
6,2/* %&+"0o ,/1%&04"}))20"Nmap (Network
Mapper, 0#"12/"!&+1%"#&)*0The Matrix Reloaded
and Elysium),+"00"+1&)-/1,#+6% ("/}0/0"+)o
%"+4"}))*,3",+1,*,/"!3+ "!+"14,/(
/" ,++&00+ "x20&+$EtherApe 1,!&0-)6+"14,/(
1/##& &+/")1&*"o,1 ,+1"+14&1%1%1n4"}))),,(1
- ("10+&##&+$4&1%Wireshark+!1%"+4"}))"3"+
%3"$,1 /#1&+$,2/,4+/"*,1" "001/,'+
4&1%Metasploito%+!'201#,/$,,!*"02/"n4"}))
use Metasploit$&+&1}0+,1%"/"00"+1&)1,,),#
1%"1/!"1,1/61,11 ( (,5&10")#o"/"
/")"+1)"00o+!1%"/"}0*,/"n1,,n0,$//"4
+!$"1% (&+$j 201!,+}1$"1&++61/,2)"o
+!,2!,n!,+}11"))+6,+"4%,1,)!6,2
%,41,!,&1o)"0"o
CREDIT: Magictorch
Hacking origins
Some musings on the hacker archetype and today’s common
misconceptions about the practice. Plus an intro to BackBox.
e’ve given up trying to tell Management about BackBox uses the
Port scanning
Get started with port scanning and probe your systems
with Nmap – the bread and butter of pentesting.
Network recon
Explore the Zenmap GUI, look at network traffic with
EtherApe, and sniff packets with Wireshark.
It’s highly
satisfying watching
EtherApe do its
real-time traffic
ŊìĬķÿìĬijìČĆǎijéìĆäƧǎ
A static image
ÆĆĆČijǎÆČĆŊÐőǎìijƧ
Wi-Fi. Thanks to how Ethernet works, a network Now we attempt to engage monitor mode and
adaptor in promiscuous mode can see all (up to the reactivate the link:
nearest router anyway) packets on that network. $ sudo iw wlp1s0 set type monitor
%&0*"+01%14%"+6,2#&/0101/1 EtherApe, on $ sudo ip link set wlp1s0 up
+"3"+*,!"01v0&7"!+"14,/(n6,2}))-/,)6" If you don’t see an error, that’s a good sign, but sadly
overwhelmed with connection data. If you want to be not a guarantee of success. Start Wireshark and select
less overwhelmed, go into the preferences and change the wireless interface. Now tune the device to the
the Capture Filter from IP Or IP6 to just IP. This way we correct wireless channel (use a mobile app like Wifi-
won’t see any IPv6 connections or addresses. Analyzer, 3&))",+ v/,&!n,2}/"+,102/"x9n>
The bread and butter tool for packet sniffing is +!99/" ,**,+ %++")0p
Wireshark. ,2}))#&+!&1&+ (,5}0 +1"/+"1*"+2o # $ sudo iw dev wlp1s0 set channel 1
you’re running it from the live media, you can start it If Wireshark doesn’t capture anything, it’s possible
and point it at your network interface right away. If monitor mode is not really supported. This happened to
you’re running on Ubuntu, you can install it with sudo us, but fortunately there is a guide to suitable adaptors
apt install wireshark . It asks you if you want to add coming up (page 40), so we shan’t grumble – instead
6,2/20"/1,1%"4&/"0%/( group, which you should say we’ll plug in a cheap LXF-endorsed USB adaptor and be
yes to. It grants raw packet capture privileges to the on our way. See the box (opposite page) for a primer on
program. This change usually needs you to log out and snooping on encrypted wireless networks.
log in before it takes effect, but a handy trick for the To put everything back to how it was and restore
impatient is to run newgrp wireshark . Either way, once your internet connection, use:
it’s loaded, hit the threatening shark fin button in the $ sudo ip link set wlp1s0 down
1,-v)"#11,01/1 -12/"o,2}))0""))(&+!0,# ,),2/v $ sudo iw wlp1s0 set type managed
coded traffic at various layers in the transport stack. $ sudo systemctl start NetworkManager These are the EAP
If you’re on a wireless network, Wireshark shows packets you need
6,2))1%"- ("10&1 +0"",+1%1+"14,/(o ,4"3"/n Tux’s Challenge! if you want to
decrypt wireless
with a bit of legwork, it’s also possible to see packets Get your wireless device to work in monitor mode, ijĨããìÆƧǎĆÌǎőČķǎ
,+,1%"/+"14,/(0o%&0/".2&/"04&/")"00!"3& " capture the four-way handshake and snoop on your need the password
1%1&0 -)",#*,+&1,/*,!"0,*"1&*"0 ))"! own wireless network. ijČČƧǎ?ijLJĬǎĆČijǎãìĨƧ
promiscuous mode) on Linux. In this mode, the device
doesn’t associate with an access point; instead, it sniffs
what packets it can as they pass through the air. We’ll
use the laconically named ip and iw tools to set things
up. First close Wireshark and run ip a to get the
interface name for your wireless device. In order to put
that interface in monitor mode, we first have to shut it
down (depriving you of network access). Network
Manager will constantly try to take back control of the
interface, so we’ll shut it down, too. Replace wlp1s0
with the name from the previous command:
$ sudo systemctl stop NetworkManager
$ sudo ip link set wlp1s0 down
Metasploit playground
Test your system for known vulnerabilities, try to backdoor it,
and almost discover a vulnerability in BackBox. Fun!
Tux’s Challenge!
+01))1%",)!n32)+"/)"3"/0&,+9o>,#,++
It may not look like much, but many a hacker would emit a joyful Ubuntu (or whatever) VM, then install Metasploit and
ĬÆĨÐąǎČĆǎĬÐÐìĆäǎǎVÐijÐĨĥĨÐijÐĨǎĬÐĬĬìČĆǎĬĥŋĆƧ see if you can have more hacker success than we did.
Hacker-friendly Wi-Fi
1"/(" guides you through choosing the right wireless
device so you can hack with the best of them.
MX Linux 23.5
Les Pounder takes his annual spin with MX Linux on the Raspberry Pi 5.
Has it improved since 2024? Spoiler: yes!
X Linux is a lightweight alternative to
IN BRIEF
An alternative
M the official Raspberry Pi OS and you
would expect that it would be a lesser
Raspberry Pi OS product compared to the official OS. But MX
based on Linux 23.5, powered by Debian 12.9 Bookworm
Debian and using Xfce 4.20, is a joy to behold. We
Bookworm and 1"01"!1%")1"01&1"/1&,+,+&=< n1%"
designed for sweet spot for price and performance.
the Raspberry After flashing to a fast microSD card, we
Pi 4, 400 and 5. booted to the setup screen and followed the
The OS offers process of setting up the OS for the first time.
),1v#/"" On boot, we were greeted with a login screen,
refined desktop and then we got access to the glorious MX
experience. Linux desktop. In the top-right are system The MX Linux 23.5 desktop is clean and welcoming. It feels like a
Everything is details (disk usage, CPU temp and memory place where we can get work done.
easy to find usage) along with the time and date. To the left
+!4" + is the main menu and system tray. We like this setup, the software for many HATs is designed specifically for
20"1%" 21&11,,()&11)"4%&)"#,/,2//&+1,$"120"!1,&1o Raspberry Pi OS.
#,/41 %&+$ ,4"3"/n#/,*1%"*&+*"+24" +.2& ()6,-"+ We tested the official Raspberry Pi Camera Module 3
media, writing network settings, Bluetooth and so on. Wi-Fi connection and it worked great. But, just like MX Linux 23.1, there is
code or was a simple task thanks to the Network Manager, and no preview window to help us frame a shot – however,
browsing the Ethernet just worked. Bluetooth connections to our we can take pictures and video with the camera. A
internet. It mobile devices were easy and we soon had files copying preview would be a real benefit, though.
offers most of to and from our devices. The Pi 5 introduced a dedicated PCIe connection for
the Raspberry devices such as NVMe SSDs, so we installed MX Linux
Pi OS Tooling up 1, " "+;!/&3"n+!20"!&+",/!0 1/&3"j
experience ,&+$ (1,1%"*&+*"+2n&1&00-)&1&+1, 1"$,/&"0n Nano connected to the Pi 5. MX Linux 23.5 is much
+!#"12/"0 like many other OSes. Inside the MX Tools section, we #01"/4&1%+"!/&3"/2++&+$1 " "+;0-""!0o
&+-)"0+1 find useful tools for disk management and system That said, the microSD experience was snappy, too.
package. config. Installing applications is a breeze using either the The OS is light, but feels complete. It could be a viable
--)& 1&,+,/1%"1"/*&+)o00"+1&))64"/"20&+$ alternative to Raspberry Pi OS. YouTube video playback
Debian Bookworm-based system, so there’s a plethora is decent: 1080p 30 frames is solid; at 1080p 60, we get
of applications and tools that we can install. We chose to a solid experience, too. In one minute, it dropped 43
install GIMP and everything worked as we expected. frames from a total of 3,807 (1.12%), a vast improvement
This respin is designed for the Raspberry Pi, and the over MX Linux 23.1, which dropped 40% back in 2024.
Running GIMP &%0#"4("6#"12/"01%14"+""!1,1"01p1%" n MX Linux 23.5 for the Raspberry Pi 5 is a delight to
and transferring camera and, for the Raspberry Pi 5, NVMe SSDs. First use, it has its quirks (the camera, for instance) but it
an image from
our smartphone 1"01401%" o0&+$ "/,n4" ,+1/,))"!+ works well as a general-purpose OS, and it can be used
was an effortless LED with ease. If you want to use your favourite HAT, you #,/ -/,'" 10o%"&0#01,+*& /, /!n+!
experience. will need to do the extra work to make it work because even faster on an M.2 NVMe SSD.
VERDICT
DEVELOPER: MX Linux
WEB: https://mxlinux.org
LICENCE: Mixed
Rating 9/10
OrangePi 4A
The ingredients are all there, but this Pi just doesn’t taste
sweet enough for Les Pounder.
rangePi has released a slew of boards
SPECS
SoC: Allwinner
O over the years and one of its latest is
1%"/+$"&<n4%& %n01%"+*"
T527 8-core suggests, takes aim at the older Raspberry Pi 4’s
ARM market. The OrangePi 4A is an octa-core CPU
Cortex-A55 with onboard M.2 NVMe SSD support. It could be
1.8GHz an alternative to the Raspberry Pi 5 if you don’t
RAM: 2GB/4GB need the absolute horsepower.
LPDDR4/4X The nearest comparison for the OrangePi 4A
Storage: is the Raspberry Pi 4 4GB. Sure, the OrangePi 4A
MicroSD, has four more cores, but the systems run
eMMC, M.2 remarkably similar. To look at, they are quite
NVMe SSD different. For starters, the PCB cooler is different,
Comms: Gigabit as is the USB and Ethernet port placement. The
Ethernet, Allwinner SoC is rotated 45 degrees and we have A little larger than the Pi 4, but then oranges always are…
Wi-Fi 2.4/5GHz, a single HDMI port. Flip it over, and the M.2 NVMe
Bluetooth 5.0 slot is visible, but note that it is only compatible with powerful beast. In multi-core, the OrangePi 4A ran away
USB: 4x USB 2280 drives. There is also an eMMC socket, used for an with a score of 1,033, versus the Pi 4’s 719.
2.0, 1x USB 2.0 optional eMMC module, which should run faster than The GPIO on many Raspberry Pi alternative boards is
Display: microSD but slower than NVMe. often an afterthought, but this isn’t entirely true for the
1x HDMI 2.0 The OrangePi 4A performs somewhere between a OrangePi 4A. We can access the GPIO using WiringPi via
4K@60, 1x MIPI Raspberry Pi 4 and a Pi 5. It’s not a bad experience, but it Bash and we tested blinking an LED and all was good.
DSI, 1x eDP1.3 feels slower than the Pi 5. We tested running the Debian PWM is possible via Bash. Python, on the other hand, is
Camera: OS from a class A2 microSD card. very similar to the old RPi.GPIO Python module
1x 2-lane MIPI- The boot time of the OrangePi 4A is roughly nine WiringPi for Python works well enough; it is a little
CSI, 1x 4-lane seconds longer than the Raspberry Pi 4 and 11.47s clunky when compared to refinements such as GPIO
MIPI-CSI slower than the Pi 5. The OS in general was responsive, Zero. We were able to connect and use a very old
GPIO: 40-pin but at times it did run a bit slower than we would’ve liked. &/")),/!6*--&+$1%"-&+,21,#1%",/!1,
Pi pinout 1%"&/&+$&-&+/"#"/"+ "0o%"+n4&1%#"4)&+"0,#
Audio: 3.5mm Slow motion Python, we had the red, yellow and green LEDs lighting
audio jack Applications on the OrangePi 4A felt slower than the up. According to the user manual, there was no reference
PSU: USB C Raspberry Pi 4. Chromium was a close call – just over a to PWM for Python, but we know for a fact that WiringPi
5V 5A second between the Raspberry Pi 4 and the OrangePi can do this. So, after a little Googling, we found a script
Size: 89 x 56 4A. But GIMP was almost twice as fast on the Raspberry that we adapted to PWM pulse Pibrella’s red LED.
x 18mm Pi 4 (8.9s) versus the OrangePi 4A’s 15.54s. If you plan to use one of the best Raspberry Pi HATs
YouTube playback was awful. Big Buck Bunny was with the OrangePi 4A, your mileage may vary. Many
dropping frames and at one point, YouTube tried to drop HATs use a mix of I2C, UART, SPI, PWM and digital IO, so
the resolution from 1080p to 480p just to give us a it depends on how their software is written, and you may
playable frame rate. What about local playback? Not need to do a little hacking to make it all work.
great! We used a 4K test file on VLC. Normally, VLC plays
anything, but this time it just ground to a halt.
The onboard Gigabit Ethernet port is comparable with
VERDICT
the Raspberry Pi 4 – there was just 1Mb/s between the DEVELOPER: OrangePi
two during our iPerf tests. For Wi-Fi performance, the WEB: www.orangepi.org
OrangePi 4A wins with 149Mb/s versus the Raspberry PRICE: £40 4GB (£35 2GB)
&<}098:0o%""51"/+)+1"++*6%3"042+$
the result in the OrangePi 4A’s favour. FEATURES 9/10 EASE OF USE 6/10
Power usage at idle is where the Raspberry Pi 4 PERFORMANCE 7/10 VALUE 8/10
4&+0n0&--&+$,+9o=;n ,*-/"!1,1%"<o=A,#1%"
OrangePi 4A. Under load, the OrangePi 4A consumed If you need a little more power than a Raspberry Pi 4, and
7.14W and the Pi 4 6.12W. want onboard NVMe, the OrangePi 4A is a contender, but you
The Geekbench 6 single-core score of 242 shows need to be an experienced user to get the most out of it.
that the Arm Cortex A55 is slightly less powerful than
the Arm Cortex A72 on the Pi 4. But when we see the Rating 7/10
multi-core test results, the OrangePi 4A is a much more
RASPBERRY PI 5
%"0-"//6&=&0)/"!6
T 0-""!!"*,+n211%"/"
/"460+!*"+01,
0.2""7""3"+*,/"-"/#,/*+ "
#/,*&1n+!&+1%&0121,/&)4"4&))"
OUR !,&+$'2011%1o"}))"04--&+$
,2/*& /,01,/$"#,/ ";o8v
EXPERT 0"!"o:#,//,2+!
Les Pounder ^<8n211%14&))"1%",+)6 ,01o
is associate #1"/1%1n))1%"2-$/!"0/"#/""o
editor at Tom’s %"6'201/".2&/")&11)"4,/(o"}))
Hardware and a ",3"/ ), (&+$1%"1,$"1
freelance maker 0,*""51/#/""-"/#,/*+ "n+!
for hire. He %+$&+$1%"1&*&+$01,$"1
ŹȍȶnjɽࢳŔŹȶʠʋ 1%"*,01#/,*1%"*o &+))64"0%))
ǠǫɽࢳŔƎʽơȥʋʠɭơɽ ""+)&+$*"+0#,/1%"&
and projects at +!1,4,/("11"/1,$"1%"/o This is the Raspberry Pi 5 16GB and now it has been overclocked, runs from an
http://bigl.es. Best of all, this is already set in the NVMe SSD, and the SDRAM timings have been tweaked.
("/+")q4"'201+""!1, 1&31"&1o
0"3"/n1(" /"o"}/"-20%&+$1%"0-"//6&= our money is the Pineboards HatDrive! Nano. For £9,
YOU NEED )&11)"%/!"/1%+&10*("/04,2)!)&("n0,"+02/"6,2 1%&0&03"/6 %"-461,!!+1,0-"//6
*(" (2-0,#+64,/(n+!%3"!".21" ,,)&+$ &=o /6,2/0")#:=> 0-"//6&v/+!"!o:
A Pi 5 #,/6,2/0-"//6&=o,2)0,+""!1%",##& &) "/,2+!^:@+!6,2/",+6,2/461,
NVMe SSD 0-"//6&=:?-,4"/02--)6" 20"&1-/,3&!"0 0-""!60601"*o
NVMe HAT *,/"1%+"+,2$%-,4"/#,/,2/,3"/ ), (&+$o ,n%,4!,4"!!+1,,2/0-"//6&=l
Cooling for &/01,#))n4"+""!1,4/&1"0-"//6&1,
your Pi 5 Adding an NVMe SSD *& /, /!n1%"+00"*)",2/ %,0"+"
%"&$$"010-""!,,01,+0-"//6&=4&)) +!11 %1%""o,4"/2-+!4%"+6,2
,016,2&1,#*,+"6o%"0-"//6&=&+1/,!2 "! $"11,1%"0-"//6&!"0(1,-n,-"+1%"*&+*"+2
" ,++" 1,/,+1%"1/!&1&,+)&)6,21o +1%" +! )& (,+ "00,/&"0/!,-&"/o"1,-6
6"/0&+ "/")"0"n1%"/"%0""+-)"1%,/,# "& /,*"3& "1,6,2/*& /, /!n+!,-6,"3& "
!!v,+0n+!*+6o:" 0o%""01#,/ 06,2/"o)& (1/11, ,-61%" 2//"+1
&*$"1,1%""o%"+!,+"n )& (),0"o,4
6,2%3"4,/(&+$ ,-&"!1,1%""n4"
+""!1,1"))1%"0-"//6&1,,,1#/,*&1o-"+
1"/*&+)+!/2+1%&0 ,**+!p
$ sudo rasp-config
0&+$1%" 2/0,/("60n0 /,))!,4+1,!3+ "!
-1&,+0+!-/"00+1"/o,40 /,))1,,,1/!"/+!
Tweaking the -/"00+1"/o")" 1",,1+!-/"00+1"/o
SDRAM timings %"+-/"00+1"/1, ,+#&/*1%11%""!/&3"&0
is super-simple, +,41%",,1!"3& "o , (1,!3+ "!-1&,+0n
and provides
around 5-10%
+!0")" 1 "-""!o"11%&01,"+)" ";o8
performance 0-""!0/,2+!?880/"!0-""!+!-/"00+1"/n
boost, for free! 1%"++1"/o5&1#/,*raspi-config and reboot your
0-"//6&=o,2/"+,4,,1&+$+!/2++&+$1%" Geekbench 6 is
#/,*1%"*2 %#01"/ ";o8v0"!"j a great means
to qualify all of
the work that
Overclocking the CPU you have put in
"#,/"4",3"/ ), (1%"&=}0)/"!6012-&!)6#01 to tweaking your
:o< 7n4"+""!1,"+02/"4"%3" ,,)&+$o Raspberry Pi 5.
$,,!-00&3" ,,)"/&01%"*&+&*2*q/"))6n6,20%,2)!
%3" 1&3" ,,)&+$o%",##& &)0-"//6& 1&3"
,,)"/&0$/"1n0&0/$,+<8}0 ;8**
1&3",,)"/o"0n6,2 +$"10,*"%,1/,!v016)"
,,)"/0n21^= 1&3" ,,)"/0/"*2 %"11"/!")j
n0,6,2%3"1%" ,,)&+$11 %"!n+!1%"&&0
,,1"!1,1%"!"0(1,-o-"+1"/*&+)+!"+02/"))
6,2/0,#14/"+!/"-,0&1,/&"0/"2-1,!1"p
$ sudo apt update && sudo apt dist-upgrade
"51n,-"+1%"config.txt file in nanoo%"#&)"&0 2-!1"1,"3"/&#&"!0 ,//" 1n1%"+/",,11%"
), 1"!&+1%"/boot/firmware !&/" 1,/6p 0-"//6&=#,/+,1%"/#/""0-""!,,01o
$ sudo nano /boot/firmware/config.txt
/,))1,1%""+!,#1%"#&)"+!!! ,**"+1n NUMA emulation
#,)),4"!66,2/!"0&/"!0-""!o1& (1,"),4; 71, ,+v2+&#,/**"*,/6 "00&04%"/"
01/14&1%n,1%"/4&0"6,2*6$"1+&+01+1 /0%p *"*,/6), 1&,+ "001&*"03/6!"-"+!&+$,+1%"
#Overclock }0-/,5&*&161,1%"*"*,/6o/!&1&,+))6&+
arm_freq=2800 0601"*0n" %-/, "00,/%0&10,4+*"*,/6+(#,/
/"001/)n1%"++!+1"/1,03"+! ),0"o #01"/ "00o%&0&0+}11%" 0"4&1%1%"0-"//6
,4/",,16,2/&=o,2/0-"//6&=0%,2)!,,1 &=n214" +"*2)1"&1+!-/,3&!"/,2+!=
0+,/*)n21&#+,1n!,+}14,//6o,4"/ 6 )"1%"&=n +!9:-"/#,/*+ ",,01#,/0&+$)"+!*2)1&v ,/"
+!%,)!1%"%("62+1&)6,20""1%"!"0(1,-o%&0 /"0-" 1&3")6o%""011%&+$l%"-1 %"01,*("1%&0
4&))1"))1%"1,&$+,/"config.txt, essentially booting 4,/(/"+,4-/1,#0-"//6&n0,))6,2+""!
&+1,0#"*,!"o%"+6,2 +/"v,-"+config.txt and 1,!,&0,-"+1"/*&+)+!/2+#2))2-$/!"n/",,1n
14"(1%",3"/ ), (1,),4"/0-""!+!/",,1o +!6,2/"!,+"p
, %" (1%1+,3"/ ), (&002 "00#2)n,-"+14, $ sudo apt full-upgrade
1"/*&+)4&+!,40o +1%"#&/01n&+01))+!/2+stress. #1"/1%"/",,1n,-"+1"/*&+)+!/2+1%&0
%&001/"00v1"0106,2/n#,/ &+$&11,4,/(%/!o ,**+!1, %" (#,/p
"/"4"/2++))v ,/"<01/"001"01#,/>80" ,+!0p $ dmesg | grep NUMA
$ sudo apt install stress #6,20""1%&0)&+"n1%"+"3"/61%&+$&04,/(&+$p
$ stress -c 4 -t 60 [ 0.000000] mempolicy: NUMA default policy
+1%"0" ,+!n20&+$watch, use vcgencmd to read overridden to ‘interleave:0-7’
1%"0-""!"3"/614,0" ,+!0o0&+$watch, the ,1%"/"4"$,n#,/+,1),1,#*,+"6n+!'201
0-""!2-!1"06&10")#o,01,-&1n-/"001/)1, #"4)&+"0,# ,!"n4"%3""("!,21)&11)"*,/"
/"(1%"/2++&+$ ,**+!p -"/#,/*+ "#/,*,2/0-"//6&=o
$ watch vcgencmd measure_clock arm
%",21-214&))0%,40,*"1%&+$)&("
frequency(0)=2800023808 n4&1%1%":@88 CHECKING YOUR PERFORMANCE
/"-/"0"+1&+$:o@ 7o,2'201$,1#/""0-""!,,01j
"+""!1,.2+1=%"-"/#,/*+ "$&+0*!"4&1%1%&0121,/&)n
Faster RAM and the best means to do so is using Geekbench, 21&1 +"1/& (6
%"1&*&+$0#,/1%"0-"//6&=/")&11)" 1,&+01)),+1%"0-"//6&=n0,)"1}020"0,*"1%&+$3"/60&*-)"j
,+0"/31&3"6!"#2)1x1%"6%3"1,"1,"+02/" Pi-Apps &0 v0"!&+01))"/#,/0)"4,#--0+!$*"0n+!
1%1"3"/61%&+$4,/(0,21,#1%",5o21n#,/1%,0",# "01,#))&120"00&*-)",+"v)&+"&+01))"/o%&0&0+}1)4601%""01
204%, /3"*,/"-"/#,/*+ "n+!!,+}14+11, *"+01,&+01))+--)& 1&,+n "/1&+)6+,1&+-/,!2 1&,+n21&+1%&0
0-"+!+6*,/"*,+"6n4" +$"1/,2+!98v:8 0"&1&0o-"+1"/*&+)+!"+1"/1%&0 ,**+!p
"51/-"/#,/*+ "1:o< 7n#,/#/""n614"(&+$1%" $ curl -sSL https://git.io/JfAPE | bash
1&*&+$0 2+1%"&+01))"/+!4&1#,/&11,#&+&0%oPi-Apps ++,4"#,2+!
-"+1"/*&+)+!/2+ ,**+!1,2-!1"6,2/ &+1%" "00,/&"00" 1&,+,#1%"*&+*"+2o")" 1,,)0n+!1%"+
0-"//6&n+!-/"001, ,+#&/*o,1"1%11%&04&)) Geekbench 6. ")" 1 +01))+!4&1#,/1%"&+01))1,#&+&0%o,4
2-!1"6,2/#&/*4/"n0,!,0,4&1% /"p ,-"+1"/*&+)+!/2+Geekbench 66"+1"/&+$1%"#,)),4&+$p
$ sudo rpi-update $ geekbench6
",,16,2/&=+!/"v,-"+1"/*&+)4&+!,4o 2+1%/,2$%1%"Geekbench"+ %*/(0+!6,24&))$"10 ,/"
,44"+""!1,"!&11%",,1),!"/ ,+#&$#&)"p 11%""+!o%&0&01%"+),$$"!1,+,+)&+"!10"o,2 + )&*
$ sudo rpi-eeprom-config -e 1%"0 ,/",2%3"+ ,2+1o,1%&0"#,/"+!#1"/6,2%3"
,1,1%")01)&+"&+1%"#&)"+!!!1%&0)&+"o%"+ /2+1%"14"(01,0""%,44"))6,2/0601"*%0-"/#,/*"!o
-/"001/)n+!+1"/1,03"+!"5&1o&1#,/1%"
LORA
Credit: www.semtech.com/lora
Long-range wireless
without pesky bills
Exchanging data over long ranges without paying carriers a fortune
sounds like a dream, but Tam Hanna and LoRa technology let you do it!
WIRESHARK
Linux Format talks to Gerald Combs and Loris Degioanni,
about creating Wireshark, the origins of network packet
analysis, and how they want their shark to fly...
ne of the best known open source model), which was this tiny, very inexpensive, minimum
Left: Loris (fourth from left) and Gerald (furthest right) with the but we created two things that were complementary.
ijÐąǏãĨČąǎ$ǎÐÆéĆČÿČäìÐĬǎìĆǎŬŪŪűƧ He created the user interface part and I created the
capture engine for Windows. Wireshark has
time, I had used quite a bit of open source software äĨČŋĆǎijČǎÅÐÆČąÐǎ
one of the world’s
and it just seemed like a really good way to give back LXF: 2011,4%&77 (n ,2)!6,2.2& ()6$,&+1,)&11)" most popular
to the community. As it turned out, this was a great !"1&),214%1- ("10+&##"/0/"+!4%66,21%"+ ĆÐijŋČĨüǎĆÿőĬÐĨĬƧ
move, because releasing it as open source let a whole +""!"!1,!,6,2/,4+&*-)"*"+11&,+l
bunch of people contribute, and that’s where we got
our initial developer base. The project also just grew Gerald: As far as the actual network sniffer goes, it
from there. We got a really big boost in our user was a product of its time. They were trying to address
,**2+&164%"+4"!!"!&+02--,/1#,/&+n the same problems we were, but they were developing
which is kind of where Loris joins in. This let us expand it in the ’80s, versus in the late ’90s, so computers
our user base to Windows users, and suddenly we weren’t quite as fast. They had to get as much
have this explosion of users and this large community. powerful hardware as they could into as small and
portable unit as they could. They were called luggables
Loris Degioanni: 6#&/01 ,*-21"/40,**,!,/" +!4"/"02&1 0"0&7"!o6"1%"6%!o
64 – I’m old as well! The computer where I actually So, you were not only lugging around a computer,
learned a lot of stuff and that made me a programmer you were also lugging around two pounds of glass as a
40+*&$o 409<,/9=n+! $,102**"/', display tube. The computers weren’t fast, so you had
as a bartender in Italy. I got enough money saved to to have special hardware for capture, so that included
buy myself either a computer or a scooter. Everybody probably a full-length or half-length capture card with
in Italy at that time wanted a scooter, and all my custom chips on it. So, that made it expensive and
#/&"+!04"/"26&+$1%"*o !" &!"!1,261%" made it heavy, but it did the job at the time.
computer because I was so passionate about that, and It’s just that by the time Loris and I came around,
that’s where I started programming. So, that’s what computers were fast, and you had things like Linux,
got me into operating systems and Linux. where you could go and hack the kernel pretty easily
From the very early days, I remember installing +!!!0,*"1%&+$)&("&n+!+"14,/( /!0
Slackware on my 486 with a tower of floppies, and were cheap.
going and using some of my savings to buy 60MB of I should say that where Loris focused on Windows,
#,/*6<@>n0, ,2)!/2+&+!,4o1%"/4&0" 40(&+!,#-1%,),$& ))6)&+!1,&1n" 20"6,2
could only run Linux on the command line. Those were asked about Linux experiences. Throughout the ’90s, I
the days when I was at university, I was studying used Unix and Linux; that’s what we used at the ISP,
computer science, really getting into software, and and that’s what I focused on. I just had a minimal
having access to an operating system where you had
NOT TO BE SNIFFED AT
the source code and you could compile the kernel and
012!6%,4&14,/(0+!0,,+o+!1%"/"40 1&3"
authors of tcpdump didn’t want to tie their name to different industries going, “Hey, I can add this
Windows. In practice, this was quite game changing. automotive protocol” or “I can add this telephony
Across the decades, Microsoft had taken many protocol,” and they all did at the same time.
steps to port the full Linux stack and Unix stack, all the
tools, the shell, all this kind of stuff, to Windows. At Loris: And I just want to remind you that especially in
this point, there was still a clear separation, not only the early days, 1998-1999, there wasn’t GitHub, there
technical, but philosophical and politically. This was wasn’t even Git. There was no social media, so even
essentially the first attempt to unite the two worlds advertising your project was on newsgroups. With
and I think it was positive, not just for technical people development, at least at the beginning, my releases
who could use this tool on Windows, but it was also were ZIP files.
positive as a way to show a path for the Windows It was a different world these very early days, so
community to embrace open source. both from the technical point of view, but also from
For a while, there was a network analyser created the community point of view, we sort of had to figure it
by Microsoft, that just wanted an alternative. But after out. There was a quick evolution during those times,
a while, our open source tool was just better, more not only on how to develop these tools in the open,
widely embraced by the community. Being open 21)0,%,41,1)(1,6,2/20"/0n*+$"6,2/
source enables your colleague or your friend to install communities, and how to reach out to them, and how
it, then it’s easy to share information and to work to receive their contributions and include them all,
together. So, it enables some workflows that not even including licences – all this kind of stuff.
Microsoft could enable on its operating system. It
LXF:,n4%14"/"1%",1%"/*&+&002"06,2%!
in fact, you know, that proved to be successful. And Far left: Gerald
the name Wireshark is memorable. Everybody who ČąÅĬǎĨÐÿìĬìĆäǎ
éÐǏÌČÐĬĆLJijǎéŊÐǎ
has done networks now knows Wireshark. to run Linux on a
}ìĆÆÿìĨǎūŪŪŪƧǎ
LXF: %1&0&11%1Wireshark!,"01%1}0*!"&1
0,02 "00#2)+!4%"/"!,"0&1$,+"51l Left: Loris
Degioanni has
been working
Gerald: Wireshark’s job is to take all the packets that ČĆǎČĥÐĆǎĬČķĨÆÐǎ
go across our network that it can capture and take software
that data and display it in a way that humans can Wireshark
understand. And it does this through a process called ĬìĆÆÐǏūųųųƧ
dissection. It takes every field in each of the packets
and breaks it down and shows you. What’s the name,
what’s the value, what are we looking at here. And display data in specific ways – that make it unique.
that’s why I think it’s so successful, because it lets you We’re applying the Wireshark philosophy, but creating
see all the packets, it lets you filter them, drill down a new tool.
and do all sorts of analysis. That’s why I’m excited
about Stratoshark – the intent is for that to be the Gerald: Along with that, when we were deciding
same type of tool for system calls. whether or not to keep it all in one application or to
split it, you have to keep the user experience in mind
Loris: Gerald and I are launching a new member of the and what their needs are and how their workflow is
Wireshark family. It’s called Stratoshark, and it applies going to be affected. If you’re focused on analysing
essentially the same user interface, the same way to systems, you really want a tool that’s dedicated to that
see discrete information and be able to drill down and not have to wade through the huge Wireshark
+!1(" -12/"0n--)6#&)1"/0+! 201,*&0"1%" feature set, but if you’re focused on systems, you
columns, and all of this kind of stuff. But instead of !,+}14+11,4!"1%/,2$%))1%"1")"-%,+6+!
doing it for network traffic, it does it for system calls networking stuff!
and system information under Linux.
You can install this on your Linux workstation, LXF: %&00,2+!001%,2$%&1}))%3"4&!"--)& 1&,+n
3&/12)* %&+"n-%60& )* %&+"n+!&102--,/10 /"6,2&*&+$&11+6-/1& 2)/!"-),6*"+10l
,+1&+"/0o,2 )& (1%"-12/"211,+n21&+01"!
of capturing the network traffic, you essentially see Loris: The use cases are broad – they can cover
)),#1%" 1&3&161%1&0%--"+&+$&+1%"* %&+"n anything from running these on your local machine
1%""5" 21"!-/, "00"0n)),#1%"#&)"01%1/",-"+ 1,1/,2)"0%,,1n0601"*v)"3")1/,2)"0%,,1&+$+!
+! ),0"!n/"!+!4/&11"+n)),#1%"+"14,/( observability to running these on cloud instances to
conversations, all of the data process communication. see what your containers are doing, figuring out
It’s like an X-ray system that is going to be very application issues or analysing an attack, which is
familiar for people who are using Wireshark, but another powerful thing that you can do, because
it’s a tool for Linux troubleshooting and security
A 1"))/"-"1"!)6#,/"3"/6,+"}0
*20"*"+1o 1}0"3"+"11"/4%"+
you can tell the same story for different
purposes. For instance, in a decade long ago,
OUR on a computer long since scrapped, he who
shall not be named accidentally dd-ed an
EXPERT &*$"&+1,%/!!&0(-/1&1&,+&+01"!
Shashank ,#!/&3"n/"02)1&+$&+1%" ,*-)"1"
Sharma ),00,#!1o%&0&001,/61%14"}3"1,)!
is a trial lawyer repeatedly when talking about the risks of
in Delhi and an dd, but more importantly, to reiterate the
avid Arch user. benefit of backing up essential files and data.
He’s been %&)"1%"/"}0+2*"/,# (2-
writing about solutions to choose from, most feature a
open source graphical interface that might not be to
software for "3"/6,+"}0)&(&+$o ,/ "+1%20&010n1%"/"}0
ࠁ߿ࢳˊơŔɭɽŔȥƎ #"12/"#2))1"/+1&3"oRestic is a fast and
lawyering for robust cross-platform backup solution that Refer to the documentation to see how you can tweak the CPU usage
over 10. can help you create a local or remote copy of and compression when performing backups.
all your important files.
)1%,2$%01,/$"0- "&0+}1*2 %,# With each instance of a backup operation, Restic
consideration for most these days, your chosen backup creates a snapshot, which comprises the current state
0,)21&,+*20120"3&))"0- "4&0")6oRestic does of the specified files and directories. All subsequent
this with the use of deduplication, which ensures single backup operations are incremental, and you can also
(2-0,#+6$&3"+#&)"o%&0*"+06,2/ (2-0 perform a diff operation to see the differences
1("2-)"000- "n4&1%1%"!!"!!3+1$"1%1&1}0 between the specified snapshots. Restic also encrypts
much easier and faster to find files in your backups. your backups by default, regardless of the destination,
REMOTE BACKUPS
,#/n4"}3",+)6!&0 200"!01,/&+$ ,**+!o #6,2}/"/2++&+$ "!,/n machine. You can do so with the sudo
(2-0,+), )!/&3"oRestic, run sudo dnf install openssh-server restic init -r sftp:username@remote-
%,4"3"/n02--,/1001,/&+$ (2-0 openssh-client instead, followed by ip:<repo-path> command.
,+/"*,1"* %&+"020&+$ n&+ sudo systemctl enable sshd . , (2-1%"0*"/mnt/Stuffsies/
!!&1&,+1, ),2!01,/$"!"3& "0o Depending on the distro running on AA-Imp-Docs/ directory as from our
If you wish to store your backup on a 1%"/"*,1"* %&+"n6,2*6%3" -/"3&,20"5*-)",+1,1%"/"*,1"
/"*,1"* %&+"n6,2%3"1, ,+#&$2/" 1,!!&1&,+))6)),4&+ ,*&+$ host, we must now run restic backup -r
,+,1%6,2/%,01+!/"*,1" ,++" 1&,+0o,!,0,n/2+1%" firewall- sftp:[email protected]:backups /
machines. Ubuntu users can install cmd --permanent --zone=public --add- mnt/Stuffsies/AA\ Imp\ Docs .
OpenSSH with the sudo apt install service=ssh command. 00"+1&))6n6,2%3"1,/"-) "1%"
openssh-server openssh-client &1%6,2//"*,1"!"3& " ,+#&$2/"! <path> when specifying the location of
,**+!o"51n"+)"1%" 0"/3& " 1, "-1 ,++" 1&,+0n6,2*201 the repository with sftp:username@
with the sudo systemctl enable ssh first create a repository on the remote ip-address:<repository-path> .
Managing snapshots
%" restic -r <repo-path> snapshots command lists all
1%"0+-0%,10&+1%"$&3"+/"-,0&1,/6o %0+-0%,1&0
assigned a unique ID, which can be used to perform
,-"/1&,+002 %03&"4&+$1%"!&##"/"+ ""14""+
14,0+-0%,10n,//" ,3"/&+$#&)"0#/,*0+-0%,1o
Restic)0,)"106,2!!1$01,0+-0%,10o%"0"
can also be used to define the snapshots for certain
,-"/1&,+0n02 %0/" ,3"/&+$#&)"0#/,*0+-0%,1,/
deleting a snapshot, instead of using the snapshot ID.
%" restic backup -r ~/Documents/restic-backup
--tag case-files ~/Documents/MenschLaw/case-files 1%1o" ,+!)6n4"}3"20"!1%" -n command flag, to You only have
command uses the tag case-files when creating the -"/#,/*!/6/2+o%"!/6/2+ +""5" 21"!4%"+ to initialise a
repository the first
snapshot. You can also add multiple tags to the same creating a backup as well to see what operations would time, and you can
0+-0%,1620&+$0"3"/)--tag command flags. be performed by Restic without actually making any then point Restic
Just as with directories on your system, you can use changes to a repository. to the repository
the ls ,**+!1,3&"41%" ,+1"+10,#0+-0%,1o ,03",+!&0(0- "n6,2 +/"*,3"0+-0%,10 with the -r
command option
2+ restic ls <snapshotID> for a complete list of all that are no longer needed. First, you must run the
in conjunction
#&)"0&+1%"0-" &#&"!!&/" 1,/6o+#,/12+1")6n6,2 +}1 restic -r <repository> forget <snapshot> command, with all Restic
use the --tag flag to identify the snapshot you wish to 4%& %!")"1"01%"0-" &#&"!0+-0%,1o%"!14&1%&+ commands.
access with the restic ls command. Use the --long 1%"0+-0%,1/"*&+02+##" 1"!n%,4"3"/n+!&001&))
command option with the restic ls command if 01,/"!&+1%"/"-,0&1,/6o,#/""2-!&0(0- "+!
6,2)0,4&0%1,3&"41%"0&7",#1%"#&)"0&+1%" ,*-)"1")6/"*,3"!1+,),+$"/00, &1"!4&1%
snapshot, as well as other details such as permissions, 0+-0%,1#/,*/"-,0&1,/6n6,2*201/2+1%" restic
modification time, file path and so on. By default, the -r <repository> prune command. You can combine the
restic ls command does not list the contents of two operations and instead run restic -r <repository>
subdirectories within the snapshot, and you must run forget <snapshot> --prune . Once again, if you used
restic ls <snapshotID> --long --recursive to do so. tags, they can be used to identify the snapshots you
#6,2&+!3"/1"+1)6 (2-#&)"01%16,24&0%1, wish to delete, instead of the snapshot ID.
/"*,3"#/,*0+-0%,1n6,2 +!,0,620&+$1%"
rewrite flag coupled with --exclude. For instance, to Restore files
/"*,3"))7&-#&)"0#/,*,2/case-files snapshot: You can restore the contents of an entire snapshot,
$ restic -r ~/Documents/restic-backup/ --tag case-files ,/ %"//6v-& (#&)"0,2-/"#"/o,2+""!1,-/,3&!"
rewrite --exclude *.zip -n Restic with a destination target where the specified
enter password for repository: #&)",/1%" ,+1"+10,#0+-0%,10%,2)!"/"01,/"!o
repository c30fde85 opened (version 2, compression %" restic restore -r <repository> <snapshotID>
level auto) --target <some-directory> command places the
[0:00] 100.00% 2 / 2 index files loaded complete contents of the specified snapshot in the
snapshot 2a831284 of [~/Documents/MenschLaw/ target directory, while the following command only
case-files] at 2025-02-11 20:02:00.209161687 +0530 IST restores zip files from the specified snapshot:
by linuxlala@playground $ restic restore -r ~/Documents/restic-backup
excluding ~/Documents/MenschLaw/case-files/HC-9- 2a831284 --include *.zip --target /mnt/restic-restore
HPG-Consulting/New Documents.zip You can use multiple --include or --exclude
excluding ~/Documents/MenschLaw/case-files/HC-9- command flags to restrict the restoration operation.
HPG-Consulting/Project Deliverables.zip Just as we did when creating backups, text files with
excluding ~/Documents/MenschLaw/case-files/HC-9- patterns and file and directory names to include or
HPG-Consulting/documentsrequired.zip exclude can also be used when restoring files.
"/"n4"}3"20"!1%"--tag flag to identify "}3" ,3"/"!,+)61%"0& 0,#Restic, but this
1%"0+-0%,14"4&0%1,*,!o #1%"/"4"/"+, 0%,2)!$&3"6,20,*"&!",#&10 -&)&1&"0o"#"/1,
00, &1"!1$0n4"4,2)!%3"%!1,#&/01/2+1%" 1%"!, 2*"+11&,+https://restic.readthedocs.io) or
restic -r ~/Documents/restic-backup snapshots read the man pages to familiarise yourself with the
command to identify the snapshot ID and then use *+6!&##"/"+1 ,**+!,-1&,+03&))"o
WAYDROID
Credit: https://waydro.id
F --0,+6,2/!"0(1,-l
Then you need Waydroid.
Unlike other attempts to emulate
your mobile’s ecosystem, Waydroid
OUR installs Android in an LXC container,
giving it direct access to your
EXPERT system’s hardware. Waydroid also
Nick Peers integrates your new Android install
is looking directly into your desktop, making it
forward to possible to run mobile apps and
seeing how native programs side by side in
ǠǫɽࢳȥơˁǠˊŹɭǫƎ almost seamless fashion.
čŹʠȥʋʠࡹȥƎɭȶǫƎ Thanks to full hardware
installation acceleration, your choice of x86
performs over and ARM (via translation) apps and Waydroid currently emulates Android 11 by default – unofficial Android 13 builds exist,
the coming games run smoothly. You can also but for now Android 11 is the only ‘officially’ supported version.
months. set up file sharing to both access
and transfer files between Android and Linux. Better Android image. Waydroid ships with a minimal custom
still, Waydroid is relatively easy to set up and configure image based on LineageOS that provides Android 11.
– and armed with our tutorial, you’ll have all the tools You have a choice of two Android types: Vanilla, which
+!1&-06,2+""!1,/2+'201,21+6--,+6,2/o requires you to install a third-party app store to access
apps, or Gapps, which allows you to sign into your
Wailing about Wayland Google account and use the Play Store.
When running Waydroid, you need to be running a Once you’ve chosen, click Download and wait for
desktop environment that uses the Wayland display the image (around 900MB) to be downloaded. Click
server. Ubuntu has made Wayland its default since Done and Waydroid launches. By default, it opens in
Ubuntu 24.04 LTS, but open a terminal window, type full-screen view, which means your desktop appears to
echo $XDG_SESSION_TYPE and press Enter to be replaced by an Android desktop. Don’t worry, the
confirm it’s Wayland running. If you’re stuck with X11, Ubuntu dock and status bar remain visible, so you can
You can take all is not lost – visit https://github.com/1999AZZAR/ seamlessly move between Waydroid and native apps.
a local backup use-waydroid-on-x11 for detailed instructions. If you choose the GAPPS option expecting to
of your apps Installation is simple – most distros are covered at immediately have access to the Google Play Store,
and data using https://docs.waydro.id/usage/install-on-desktops, but you’ll be disappointed, but don’t worry – the Register
the built-in
Ubuntu users should issue the following commands: For Google Apps boxout (opposite) reveals the extra
Seedvault
backup provider
$ sudo apt install curl ca-certificates -y steps you need to follow to get things working.
– see https:// $ curl -s https://repo.waydro.id | sudo bash
docs.waydro. $ sudo apt install waydroid -y Basic navigation
id/faq/backup- Ignore the ERROR: Waydroid is not initialized, run The Android desktop works exactly as it would
restore-apps- “waydroid init” message; once complete, open the ,+6,2/-%,+",/1)"1n)1%,2$%&+01"!,#
and-data for program from its new shortcut on the app launcher. touchscreen, you’ll see a cursor, which works in
instructions "5 1)61%"466,2}!"5-" 1&11,x'201 )& (n!/$+!
ČĆǏķĬìĆäǎìijǎijČǎ Android activate! drop as you would normally. Waydroid also accepts
both back up The first thing you’re asked to do is initialise Waydroid. input from your keyboard, but the on-screen keyboard
and restore.
This involves downloading and installing your choice of automatically pops up as soon as you click inside an
Install apps
Those with Google Play set up can immediately use
the Play Store app to find and install apps on their
Waydroid instance. If you’ve installed the Vanilla build,
it’s possible to install apps through the terminal – you
need to manually download APK packages to a
suitable folder, such as Downloads, then issue the
following command:
$ sudo waydroid app install ~/Downloads/appname.
apk
Obviously, that’s fiddly, so why not make things Each virtual instance of Android you create needs to be registered in order
"0&"/,+6,2/0")#6&+01))&+$$/-%& )--01,/"l ijČǏÆÆÐĬĬǎijéÐǎ7ČČäÿÐǎvÿőǎ}ijČĨÐƧ
The step-by-step guide (page 61) reveals how to
&+01))0 /&-11%1"+)"06,21,&+01))x*,+$,1%"/
things – F-Droid (https://f-droid.org) as well as MicroG different devices among other useful controls, tweaks
(https://microg.org), which basically gives you access and extensions. We’ll cover it shortly.
to the core Google apps if you need them. You should
also install Libhoudini, which provides ARM translation Manage apps
that allows you to run apps built for ARM-based Once installed, apps add shortcuts to the Android
devices (in other words, most mobile phones). desktop in the usual way. You can move these around
You should have little trouble installing most apps, the desktop like any regular Android install – click and
but you will come across occasions when apps claim hold on an icon and wait for it to be ‘picked up’, then
1,"&+ ,*-1&)"4&1%6,2/!"3& "o%"0,)21&,+%"/" drag it where you want to go. There are the pinned
is to spoof your device, so it claims to be something shortcuts at the bottom, and shortcuts can be kept on
else – we successfully employed this to install the *2)1&-)"!"0(1,-0'201 )& (+!04&-")"#1,//&$%14&1%
Royal Match game and Plex Dash app, among others. the mouse to move between screens).
The spoof-device.sh script at https://github.com/ You’ll also find that Waydroid has placed shortcuts
Quackdoc/waydroid-scripts/ can be used to trick to all your Android apps in the main Ubuntu launcher
--0&+1,1%&+(&+$6,2/6!/,&!&+01+ "&0 ,,$)" itself. Clicking one of these opens the app in its own
Pixel 5, but there’s an easier way to do this using a tool maximised window instead of displaying the whole
called Waydroid Helper, which can spoof a range of desktop environment. You can then close the app
simply by right-clicking its icon in the dock and applications) in your home folder – you can delete this
choosing Quit. on shutting down Waydroid to remove them.
Waydroid A word of warning: this approach can be glitchy. It’s a temporary fix; the shortcuts are recreated
periodically "#,2+!1%1,+,2/2+12:<o8<0601"*4&1%+ 1%"+"511&*"6,2)2+ %6!/,&!o #6,2}!)&("1,
releases new AMD CPU and GeForce graphics card, we often permanently disable them, open a terminal window
official builds brought Waydroid (and the current user session) while Waydroid is running and type the following:
based on the grinding to a halt when attempting to launch apps $ truncate -s 0 ~/.local/share/applications/
current version directly from these shortcuts. waydroid.*.desktop
of LineageOS %&0&0(+,4+&002",+1%"-/,'" 1}0 &1 2 This reduces the file size of each shortcut to 0
(18.1 at time of -$"00"" https://github.com/waydroid/waydroid/ bytes, so the files remain in place, but do nothing – that
writing). These
issues/1404), and an early example of the fact that way, Waydroid doesn’t attempt to recreate them. The
are hosted at
https://ota.
6!/,&! +".2&1"1"*-"/*"+1)x&+ &!"+1))6n shortcuts vanish from the launcher and won’t return –
waydro.id/ 1%" &1 2&002"0-$"&0$,,!-) "1,01/14&1% should you ever need to recreate them, delete all the
and updates troubleshooting any other issues you encounter. Waydroid entries in .local/share/applications and
are delivered they’re recreated the next time you open Waydroid.
through Remove app icons
Waydroid itself. You may decide you don’t want these app shortcuts Easier to use
cluttering up your launcher, particularly if you install There are lots of tweaks you can apply to Waydroid,
lots of apps – they’ll get mixed up with your main but many require scripts or command-line knowledge.
Ubuntu apps, which can make things confusing. Why bother with that when there’s Waydroid Helper
%"0%,/1 210/"0&!"&+%&!!"+#,)!"/.local/share/ (https://github.com/ayasa520/waydroid-helper), a
Don’t wait for the latest issue to reach your local store –
subscribe today and let Linux Format fly straight to you.
2 GREAT
WAYS TO
SUBSCRIBE
Print + NEW
digit
access or al
digital-only
!
Or 1-844-779-2822
Lines open Monday-Friday 8.30am-5pm EST
*We don’t actually deliver to the Moon. Yet.
RUSTDESK
Credit: https://rustdesk.com
Self-host remote
access with RustDesk
Remote-control software is useful, but Tam Hanna suggests self-hosted
remote control software based on open source technology is even better.
R ,/"1%+:86"/0$,n1%"3"+"/)"
protocol enabled this writer to access their
&"++v,2+!4,/(011&,+#/,*/,!o 2/1%"/*,/"n
"00&+$1%"%"!)"000"/3"/40*!"*2 %
OUR "0&"/3&&100"/3& "o
+-/ 1& "n%,4"3"/n&0+,1-/1& 2)/)6
EXPERT ,*#,/1)"o &/01)6n1%"4,/(011&,+1%1&01,"
Tam Hanna /"*,1"v ,+1/,))"!202))6+""!01,-2)& )6"5-,0"1%"
often finds -,/14%"/"1%"0"/3"/4&))4&1#,/ ,**+!0o
himself press- %&0/".2&/"0/,21"/ ,+#&$2/1&,++!&0#&/01v$/!"
ganged into IT attack vector for every type of miscreant seeking to
admin duty for add a new machine to their botnet. Keep in mind that
friends and Towarisch Haxxor never sleeps and that port scans
family. Sadly, "5-)& &1)60"/ %#,/0"/3& "0o
TeamViewer, sorry,
they are usually On the other hand, a service such as TeamViewer yķĬij ÐĬüǏìĬǏĨÐÌőǎijČǎéÐÿĥƧ
a few hours’ /".2&/"01%"&+-211&+$,#+ x-2+ %&+$1%/,2$%1%"
worth of travel various routers is handled by the operator. This can be
away from of great value when the system to be administrated
ǠǫɽࢳŹʠȥȇơɭࡳ has a dynamic IP address; services such as http:// machines can communicate directly, screen and
heise.de/ip tend to be a major challenge for technically control data flows between the two machines without
unsophisticated users. an intermediary relay.
In principle, RustDesk realises the user experience In practice, however, the two servers often can’t
that users of TeamViewer know and like. The user directly communicate with one another due to
&+1"/# ",+1%"#/,+1v"+! (see screenshot, above- firewalls, NATs and various other realities of modern
right) is difficult to distinguish from what is rendered computer internet working.
6&10)/$"/n4"))v"01)&0%"! ,*-"1&1,/o In this case, a second server called the relay server
,01&*-,/1+1)6n0&$+))&+$0"/3& "%")-01%" is brought into the connection. This machine acts as an
)&"+1 ,*-21"/ ,++" 11,1%"/"*,1" ,*-21"/x&+ intermediary between the two machines, ensuring data
RustDesk lingo, the client computer is the machine can be exchanged without network reconfiguration.
that takes control of the remote computer. If the two In the interest of efficient product promotion, the
RustDesk team provides a basic complement of
servers of its own. However, serious open source
aficionados and people who are concerned about
performance are well advised to host their own
servers. Hosting can be done either in the cloud or
,+-/, "00 ,*-21"/x#,/0*))&+01))1&,+0n1%"
0601"*/".2&/"*"+100-" *&+&*2*,#9 ,#
/+!,* "00*"*,/6o!)6n=9:* %&+"0
++,1"20"!n4%& %!&0.2)&#&"00,*",#1%""/)&"01
Raspberry Pi models.
1%"0"01"-0,+><v&13"/0&,+,#1%",-"/1&+$
system, you should instead follow the guide found at PAYING FOR IT
https://docs.docker.com/engine/install/debian/.
The actual server environment, which happens to Even though RustDesk&0,-"+0,2/ "+!#/""v0v&+v""/n1%"
consist of multiple packages, can then be downloaded developers also provide a paid option for the server component,
by entering the following command: billed on a per user basis. The price list found at https://rustdesk.
$ sudo docker image pull rustdesk/rustdesk-server com/pricing01/104&1%[98-"/*,+1%-)+n4%& %-/,3&!"0
1!,4+),!03/&,20)6"/0n4%& %/"/".2&/"!#,/ ,3"/$"#,/2-1,:8/"*,1"!"3& "0o
the successful execution of the RustDesk server. After %"-&!-)+}0*,01&*-,/1+1!!"!v3)2"#"12/"&0&104"
that, the individual servers can be started by entering &+1"/# "o%"0"/3"/"5-,0"0*+$"*"+1 ,+0,)"1-,/1:999<n
commands such as the following: 4%& % +"20"!1, ,+#&$2/" "00-"/*&00&,+0o)&"+10+!
$ sudo docker run --name hbbs -v ./data:/root -td users can be assigned interaction rights in a fashion not dissimilar to
--net=host --restart unless-stopped rustdesk/rustdesk- 1&3"&/" 1,/6o+,1%"/3)2"v!!"!#"12/",#1%"-&!3"/0&,+&0
server hbbs connection logging. When interacting with a paid server, it records
$ sudo docker run --name hbbr -v ./data:/root -td detailed information about sent files and connection times.
--net=host --restart unless-stopped rustdesk/rustdesk- &+))6n1%"-&!3"/0&,+,#RustDesk provides an address book.
server hbbr This means that a list of all clients is provided on a website, greatly
Of course, the parameters provided to the Docker simplifying connection to remote clients without having to keep a
instances must be modified according to the network’s ),$,#1%"&/&+!&3&!2) 0o 2/1%"/&+#,/*1&,+,+1%"#"12/"0#,2+!
operational state. However, this is beyond the scope of in the paid version can be found at https://rustdesk.com/docs/en/
this article. self-host/rustdesk-server-pro/o,*-+&"01%120"RustDesk
heavily should definitely give the product a go.
Configuring clients
After the server has been set up successfully on
1%"0-"//6&n1%"&+!&3&!2) )&"+10+""!1," similarly to the way in which ours is, do as follows:
informed about the new infrastructure. In particular, ~/data $ cat id_ed25519.pub
the RustDesk clients provide the network settings xPOTq5++Nt3zC+efR8CyZORBu57uJkALxERTHA02ZV
window, which can be parametrised similarly to the o=pi@raspberrypi:~/data $
way shown in the screenshot (bottom-right). Of Interestingly, the cat command does not append a
course, your server’s public IP must be entered here //&$"/"12/+1,1%" (,#1%",21-21o2"1,1%1n
instead of the local dummy IP shown in the screenshot. the correct public key in the output above would be the
2/1%"/*,/"n!,+,1#/"1%"RustDesk client asks string xPOTq5++Nt3zC+efR8CyZORBu57uJkALxERT
6,2#,/6,2/20"/-004,/!x*,!&+$0"11&+$0+! HA02ZVo=. It then must be put inside the Key field of
starting or stopping the RustDesk0"/3& "/".2&/"1%" the dialog shown in the screenshot (below). Usually, the
user password to prevent abuse by people loafing system will work after this.
around in front of the terminal. All those seeking an open source alternative
At this point, a small smoke test can be done. If the 1,TeamViewer ++,4/"01&+-" "xRustDesk
client installed on one machine is connected to the provides exactly what is demanded. Even though
Raspberry Pi while the other client is still set up to use 1%"0601"*4,/(0/"0,+)64"))4&1%1%"3"+!,/v
the normal global infrastructure, connection attempts provided public servers, good practice dictates that
will fail, with errors pointing to the remote target heavy users should host their own relay servers, which
system’s offline status. This behaviour usually occurs further increases security.
even if both computers are resident
on the same subnet and can ping
one another directly.
If a RustDesk server is intended
solely for use in a local network, both
ad blockers and NAT servers can
cause trouble. Some information,
geared especially towards users
,#Pi-hole and AdGuard, can be
found by visiting https://rustdesk.
com/docs/en/self-host/nat-
loopback-issues/.
+0,*" 0"0n0")#v ,+#&$2/"!
instance of RustDesk throws up an
infamous key mismatch error. This
+202))6"0,)3"!0&*-)6o &/01n
return to the server hosting the
actual Docker containers, and check
its data folder for the key file. Should
you use a Raspberry Pi configured éìĬǎÌìÿČäǎìĬǎķĬÐÌǎãČĨǎ?vǎÐĆijĨőƧ
LINUX HARDWARE
next issue,
subscribe on
page 16!
The hardware
that made Linux great
To kick off our new series, Mike Bedford delves into the now largely
forgotten 80386, which is where Linux first saw the light of day.
let’s take a look at the computing market home computer revolution was the Commodore Amiga
landscape of the early 1990s. Or, – Sinclair ZX80, BBC Micro and range, which included the Amiga
to be more accurate, let’s delve ))x40!" !",)!o+!1%&+$0 500 that used the 16/32-bit
into what computer enthusiasts had changed a lot in those 10 Motorola 68000 processor, and
were using. We’ll see something years. Many of the computers that the fully 32-bit Amiga 3000. But
of the professional side of 1990s brought computing to the home as a computer that can trace its
computing later in the series, but had fallen by the wayside. And ancestry back to one of the ’80s
here we’re concentrating on while some hobbyists had turned greats, the BBC Micro, we also
machines that were designed their attention to the PC, other have to mention the Acorn
specifically as home computers. computers came into being to fill Archimedes. Its biggest legacy is
Of course, 386-based PCs were the gap in the home computer surely the ARM processor that
used by some well-heeled market. The ’80s might have been was designed for it. Needless to
enthusiasts, but here we’re the era of 8-bit home computers, say, we’ll be seeing more of this
considering those machines that but as the ’90s arrived, home family of chips later in the series.
home computers and supercomputers. And we’ll was because, although some of the early versions
conclude with an investigation of today’s state-of-play. ,#&+!,404"/"3&))"&+1%"!60,#1%";@>n
In this first article, we take a look at the hardware many users were still using MS-DOS, and that limited
that gave Linux birth. And despite our reference to the software to using 640k memory. Some solutions were
vast diversity of Linux hardware, that initial hardware available to overcome that restriction, but with many
was a PC fitted with an Intel 80386 processor. users tied into legacy software, they didn’t provide a
Bizarrely, therefore, the x86 ISA that dominates the mainstream solution. So, we rather wonder if another
desktop today is where it all started 34 years ago. But part of Linus Torvalds’s motivation in writing Linux was
that statement rather downplays all those years of x86 to provide some means of utilising the 386’s advanced
development. So, to set the scene for our wide-ranging features – 32 bits, 4GB address space and all. Despite the
voyage of discovery over the next few issues, we’ll modest claims
investigate the early days of the x86 architecture. Examining x86 it made for the
operating system
To see where the Intel 80386 – otherwise known as we now know
The birth of Linux the i386 but commonly abbreviated to the 386 – fits as Linux, Linus
Our emphasis in this series might be hardware, but no in, we need to go back to 1971. To quickly cover that Torvalds’s 1991
discussion of the first Linux platform can be complete ancient history, 1971 was when the world’s first ever announcement
started a
without a recap of how Linux came into being. And we microprocessor, the Intel 4004 (see LXF282), was
revolution.
could do worse than quote Finnish university student launched. It was a 4-bit chip. This was followed by the
Linus Torvalds who wrote the original Linux kernel. The 8-bit 8008 a year later, and several more advanced
statement in question was made on 25th August 1991 8-bit chips until, in 1978, the 8086 and 8088 arrived.
on a Usenet newsgroup, this being a pre-www bulletin Both of these were 16-bit designs, so Intel processors
board. “I’m doing a (free) operating system (just a %!"3,)3"!#/,*<1,@1,9>&10&+'2010"3"+6"/0o
hobby, won’t be big and professional like gnu) for These 16-bit chips marked the beginning of the x86
386(486) AT clones. This has been brewing since April, ISA. And the 8088’s place in history was guaranteed
and is starting to get ready. I’d like any feedback on when it was chosen to power the IBM PC, which
things people like/dislike in Minix, as my OS resembles launched in 1981, and with clones following soon after.
it somewhat (same physical layout of the file-system To clarify the difference between the 8086 and the The 80386
CREDIT: Wikimedia Commons/LinuxCon Europe Linus Torvalds/ krd CC BY-SA 4.0. Sun Wikimedia Commons/htomari, CC BY-SA 2.0
(due to practical reasons) among other things).” 8088, both were 16-bit designs internally but, while the appeared back
Note Torvalds’s reference to the operating system – 8086 also had a 16-bit external data bus, this bus was in 1985, and
as yet unnamed – being free, so this was a key part of just 8 bits wide on the 8088. This meant it could be by 1991, when
Linux from the very start. And, with the advantage of used with the readily available support chips that had Linux made its
hindsight, you might be amused at his assertion that it been designed for 8-bit systems, minimising the cost appearance,
its successor
wouldn’t be big or professional. Of particular note of 16-bit computers. The 8086 and 8088 were
the 80486 had
regarding that initial announcement was the fact that available with clock speeds ranging from 5 to 10MHz.
already been
the OS was described as resembling Minix. We should The next member of the x86 family was the 80186. launched. And
point out, therefore, that Minix was a Unix clone. It was But it didn’t show up in many PCs, the most obvious while this would
developed by American-Dutch computer scientist soon result in
Andrew Tanenbaum for use by computer science the decline of
university students on low-cost hardware. In particular, 386-based PCs,
it would run on 8086 or 8088-based PCs. It comes as the 80386 lived
no surprise at all, therefore, that Linux is a Unix-like OS. to a ripe old age.
The fact that Minix would work on an 8086/88 is It continued
to be used in
interesting because it hints at the major difference that
embedded
Linux represented. As we’ll see, the Intel 8086 and
applications
8088 were introduced seven years earlier than the until Intel
80386 and were two generations older, so why did ĥķÿÿÐÌǏijéÐǎĥÿķäǎ
Torvalds choose to base Linux on the 80386, given on it in 2007.
that 386-based PCs were much more expensive than
8086- or 8088-based machines in 1991?
Prior to his Linux project, Torvalds’s home
computers were a VIC-20 and a Sinclair QL. As he
revealed in a 1992 interview with Linux News, though,
he’d been unimpressed with Intel processors, but that
changed with the 80386. After referring to machines
he’d seen running MS-DOS as “PC-contemptibles”, he
explained how he wanted something similar to Minix
running on a home PC, and he “had long since decided In addition to PC2,
the 386 found its
that anything less than a 386 wasn’t worth it”.
way into high-
But although Linus Torvalds thought of the 80386 performance Unix
as the first x86 processor worthy of his attention, workstations like
many mainstream 386 users weren’t making the most this one from Sun
of its architecture. It probably wouldn’t be a gross Microsystems.
Linux would
exaggeration to say that they were using them only as eventually turn
faster 8088s, 8086s or 80286s, benefiting primarily up in Sun’s
from the higher clock speeds available on 386s. This workstations, too.
80386 computers
So we come to the subject of the hardware that was
powered by the 386. In particular, we’re looking at what
we could think of as ordinary PCs, as opposed to
workstations. After all, this is the sort of hardware that
Linux was designed for in the early days. We could do
worse than take a look at the 386-based PC that Linus
Torvalds bought for his Linux project. The processor
was the DX variant clocked at 33MHz, it had 4MB of -/, "00,/0+!@8;@?#),1&+$v-,&+1 ,-/, "00,/0n
RAM, and a 40MB hard disk, which he considered they were expandable to 16MB of RAM, and they had a
+,13"/6)/$"o%"/"40+,;@?#),1&+$v-,&+1 91MB or 327MB disk. There was an Ethernet port and The Linux
coprocessor, but he added one 18 months later. various video options with a maximum resolution of kernel included
For a 21-year-old student, this was quite an 1,152x900 in 256 colours. The workstations were support for
investment. Indeed, Torvalds is on record explaining housed in floor-standing tower cases and supplied the 386 until
%,4%"40)"1,##,/!&1o "$,1012!"+1),+n21 4&1%1%"2+,-"/1&+$0601"*n1%&0"&+$2+v 2012, that was
he lived at home with his mother, so he didn’t need to developed Unix OS based on BSD (Berkeley Software 21 years since
spend much of the loan on living costs. Also, since he Distribution Unix) with the addition of the SunView that first 386-
only release.
bought it just after Christmas, he had additional money graphical user interface. The 25MHz version with the
Its successor,
that he’d been given as presents. We don’t know how smaller 91MB disk and a 16-inch monitor cost a
the 486 – as
much the PC cost, but we’ve done a bit of detective whopping $17,990 at launch, and significantly more mentioned
work. Adverts in the January 1991 edition of Computer &+/")1"/*04&1%;?6"/0,#&+#)1&,+1("+&+1, by Linus
Shopper magazine suggest that, in the UK, a computer account. Torvalds’s £5,200 PC seems positively Torvalds in his
of roughly the same specification as the one bought by %"-6 ,*-/&0,+o famous 1991
Torvalds would have cost upwards of £2,300 including announcement
VAT, and from a later edition, we glean that he’d have The end of the beginning of Linux – did
paid about £105 for the coprocessor he added later. Although Linux was announced in August 1991, there even better.
Multiplying these figures by the inflation rate over the was no way that initial offering could be considered From its
inclusion in
intervening periods, we arrive at today’s equivalents of 20)"0601"*n"3"+4%"+4"/"*"*"/1%1&140
1989, the 486
£5,200 and £220 respectively. So, while the operating only the kernel. In fact, according to Linus Torvalds,
survived in the
system might have been free, we can’t help but &1 ,*-/&0"!)&11)"*,/"1%+*2)1&10(&+$ ,!"n&+ Linux kernel for
comment on the fact that the Linux route wasn’t cheap addition to drivers for the keyboard, the display in 33 years until it
in the early days. Indeed, users would have paid quite a 1"51*,!",+)6n0"/&))&+"+!1%"!&0(n-)201%" was eventually
lot more to embrace the new operating system rather filesystem. In fact, Linux was only released at version phased out in
than stick with the MS-DOS or Windows alternative. 1.0 in the spring of 1994. version 6.1.
# ,2/0"n"3"+*,/"*,!"01:@>v0"!0n4%& % Prior to its full release, in 1992, Andrew S
would be suitable for most Windows users, would have Tanenbaum of Minix fame posted a Usenet article
CREDIT: Wikimedia Commons/Konstantin Lanzet, Intel i386DX.
been expensive from today’s perspective, but they’d entitled ‘Linux is obsolete’. This led to a well-known
have been around half the price. debate between Tanenbaum and Torvalds. Here,
If you want to get a better idea of 1991 computer though, we want to pick up on just one of Tanenbaum’s
technology in the form of 386-based PCs in particular, criticisms, namely that “writing a new operating system
see our Hands On With The 386 box (opposite). that is closely tied to any particular piece of hardware,
We can’t leave the subject of 80386 computers especially a weird one like the Intel line, is basically
without taking a brief look at 386-based engineering wrong”. Needless to say, the assertion that Linux’s
workstations in a little more detail. Indeed, these were portability was compromised by being too reliant on
probably the only 386 computers to be running the x86 ISA couldn’t have been more wrong. After all,
anything other than MS-DOS or Windows back %1%!12/+"!,211,"1%" 0"n1%&00"/&"0,#
&+9AA9o+! %"-1%"6*,01 "/1&+)64"/"+}1o + articles on the hardware that made Linux great would
9AA@n2+& /,0601"*0)2+ %"!&102+;@>& be a somewhat repetitive and boring one. So, do
0"/&"0,#14,*,!")0n,+" ), ("!19= 7+! forgive us for issuing this spoiler, but that hardware
4&1%<,#*"*,/6n+!1%",1%"/ ), ("!1 we’re going to look at in the remainder of this series
:= 7+!4&1%@,#*"*,/6o,1%%!@8;@> certainly doesn’t comprise just x86 chips.
ONLYOFFICE
Credit: www.onlyoffice.com
T
%"0&+$2)/&16&0 2//"+1)6x0#/04" We asked ChatGPT
(+,4x#& 1&,+)"3"+14%"+1" %+,),$6 a simple question
and it was wrong,
advancement spirals out of control with
but when we
unforeseen consequences for human asked if it was
&3&)&01&,+o ,**,+-/1,#1%&0&0+/1&#& &)02-"/ sure, it corrected
&+1"))&$"+ "n)"1,1("0")#v!"1"/*&+&+$!" &0&,+01 itself – and was
a level far above standard human levels, which at this still wrong. Never
trust an AI!
point doesn’t seem much beyond whether we need
*,/"/4*&)(+"512"0!6n211%"-,&+101&))01+!0o
0&1&0n &0%"/"n1%,2$%601+!/!*"1/& 0n&1
2//"+1)6 ,010[98n888&+ ,*-21"1&*"1,*1 %
01+!/!%2*+01/"$2)/10(0o%&0!,"0+}1*"+
1%1$"+"/1&3" 4&1%&10&)&161,*&*& %2*+
voices and animated facial expressions isn’t already
,21#,5&+$01+!/!%2*+0o
+1%&0 "3"/6!6/")&16n4%14"/"0""&+$&0
+"443",#&+0&!&,20+!4&!"0-/"! v-,4"/"! into sharing something they shouldn’t, or
1%/"10o3"/6,+"+""!01,"4/",#%,41%"+"4 masquerading as bank officials to get them to
technologies make online exploits more dangerous ,+#&/*#/2!2)"+11/+0 1&,+o2102 %11 (0
1%+"3"/n+!"3"+,-"+2-+"43" 1,/0,#11 (o have historically required a significant investment of
*+-,4"/o %+$"01%1-& 12/"!/*1& ))6o
Phishing and phakes +1/$"1&+!&3&!2)010 )"n&+ /"0&+$1%"
+",#1%"*,01-,4"/#2)--)& 1&,+0,# &0&+1%" likelihood of success,” says Muhammad Yahya Patel,
/"+,#-%&0%&+$o &1%"/1,n1%11"/*%0*,01)6 lead security engineer and evangelist in the office of
referred to dodgy emails that appear to come from a 1%"1%" (,&+1,#14/"o11 ("/0 +
)"$&1&*1"0,2/ "x21,+ "6,2!!1%"&)&161, create processes to exploit specific vulnerabilities and
//6,+4%,))6 ,+3&+ &+$%2*+v)&(" ,+3"/01&,+0n personalise attacks far more efficiently than humans
6,2}/"&+1,4%,)"+"44,/)!,#/&0(o +1%"-01n "3"/ ,2)!o +,1%"/4,/!0n +"+)"11 ("/01,
phishing attempts largely relied on catching the carry out sophisticated phishing attacks on hundreds
recipient with their guard down, and getting them ,/1%,20+!0,#1/$"101,+ "o
1,&**"!&1")6$&3"2-0,*"&1"*,#3)2)" Even if phishing targets are cautious, avoiding
&+#,/*1&,+o,4n))&11("0&0+ ("6#,/ scams is made a whole lot harder by the rise of
*&+01/"*x4%& % +"0&)6"01,)"+x+! +,1%"/ v-,4"/"!1" %+,),$6x+*")6!""-#("0o
/&*&+)0 +20"+ 1, ,+3&+ &+$)6 //6,++ !*&)1,+n0"+&,/ 6"/0" 2/&16 ,+02)1+11
interactive conversation for as long as it takes to get CyberSmart, is in no doubt that deepfake attacks
4%11%"64+1#/,*1%"1/$"1o /"1%"-/&*/6"3,)3&+$1%/"11,"*"/$"#/,*1%"
+,+"0"+0"n1%&0!,"0+}1+" "00/&)6 %+$" 02 "00,# 1" %+,),$6o11%"01/1,#:8:<n&)1,+
1%"$*"))1%1*2 %o,2}3"-/,)6%"/!,# says, “we saw cybercriminals use a deepfake of a chief ChatGPT won’t
generate images of
0,-%&01& 1"!0-"/v-%&0%&+$11 (0n4%"/" /&*&+)0 financial officer to trick an employee into transferring famous people but
have directly impersonated senior staff to trick victims :=*&))&,+!,))/01,1%"*o has no problem
This particular attack began with a relatively with looky-likies.
straightforward phishing email, which the employee
PRIVACY PROBLEMS 40/&$%1)60 "-1& ),#o214%"+1%""*-),6""
',&+"!3&/12)*""1&+$+!04+!%"/!1%"
!*&)1,+20"!1,"&+)4"+#,/ "*"+1n x04"))0,1%"/-",-)"%"/" ,$+&0"!x))020-& &,+0
working as a detective in charge of a cybercrime 4"/"$,+"o
team, before joining the private sector and That’s the problem: while the security message
" ,*&+$ 6"/0" 2/&16 ,+02)1+1o+!&+ about not trusting emails and messages has been
%&03&"4n1%"$/"1"011%/"1#/,* &0+}1 driven home over the last few years, the standard
conventional cyberattacks, but rather the advice is to take concerns to the person involved
&+30&,+,#,2/-/&3 6o 2-1%"20&+"00%&"// %6o%1,2 +}1"02/"1%"
That’s because the amount of data collected person you’re talking to is real and not a deepfake?
by technology interactions these days is beyond &0" ,*&+$&+ /"0&+$)60,-%&01& 1"!n060
301o 201-& 12/"4%1 ,,$)",/ ",,((+,4 Pilton, “the responses are increasingly accurate, and
about you, your activities, interests, associations the number of tools and resources we have access to
+!0,#,/1%o%1&#+,/$+&01&,+%,)!&+$ has dramatically increased, from simple text responses
02 %!140/" %"!l *$&+" ,))1&+$)) 1,-& 12/"0n2!&,n3&!",+!*,/"o""-#("0+,4
1%1&+#,/*1&,++!0(&+$+ 1,-/,#&)" have more realistic facial expressions, lip movements,
-"/0,+n&)1,+4/+0o%1&# 6"/ /&*&+)0 and voice synthesis, making them almost impossible to
CREDIT: Magictorch
IN-HOUSE AI DANGERS
%&)"*+620&+"00"0/"/&$%1)6 ,+ "/+"!
,2111 ("/020&+$ #,/+"#/&,20-2/-,0"0n
*+$"/0)0,+""!1,"4/",#1%"
-,1"+1&)/&0(0,#20&+$0""*&+$)6&++, "+1
1,,)01%"*0")3"0o
,/01/1n&1}04"))(+,4+1%1 +
‘hallucinate’ facts and figures, and even if you’re
,+)6/")6&+$,++ 1,02**/&0",/+)60"
supplied information, there’s always a risk that it
4&))*&00,/*&0011"&*-,/1+1-,&+10o #6,2/")6
,+1%",21-21,#+ n6,2 ,2)!"+!2-*(&+$
1%"4/,+$!" &0&,+0n4&1%!&001/,20/"02)10o
1,,)0/")0,32)+"/)"1,-/,*-1
&+'" 1&,+11 (0n4%"/"*)& &,20 1,/$&3"0
&+01/2 1&,+01,1%" 1,*("&1!,0,*"1%&+$&1}0
+,102--,0"!1,x02 %0/"3")&+$ ,+#&!"+1&)
data that it’s previously processed, or giving bad
&+#,/*1&,+4%"+.2&77"!o%"$,3"/+*"+1}0
1&,+)6"/" 2/&16"+1/",##"/00,*"
,+)&+"!3& "#,/4,/(&+$0#")64&1% 0""
http://tinyurl.com/363ncsc), and an extensive %"0*"--)&"0&+/"0)&(" 20"o0 Cybersecurity
$,3"/+*"+1v ,**&00&,+"!012!640-2)&0%"! " ()+!!3&0"0n6,20%,2)!+,1&$+,/"1%" training has
become absolutely
&+6:8:<"5-),/&+$32)+"/&)&1&"0&+ &*-,/1+ ",# ,+1&+2,20 *,+&1,/&+$+! essential in the
systems (http://tinyurl.com/363studyo automated vulnerability scanning, to minimise the modern world,
"01/,+$)6/" ,**"+!1%1 *+$"/0 4&+!,4,#,--,/12+&16#,/*)& &,20"5-),&11&,+o even before
read the entire report, but if you need to To be clear, though, that doesn’t mean looking for a ?ǏijéĨÐijĬƧ
(+,4'201,+"1%&+$n%""!1%"}0!3& " 0&)3"/v2))"1 v0"!0" 2/&160,)21&,+o&)3"/2))"10
1%1(""-&+$ 0601"*00" 2/"&00*2 % !,+}1"5&014%"+&1 ,*"01, 1%/"10n+6*,/"1%+
about organisational culture, process and 1%"6!,#,/+61%&+$")0"o)!v0 %,,)*"02/"002 %
communication as it is about technical 0: n ,2+10"-/1&,+n-1 %*+$"*"+1+!
*"02/"0o +,1%"/4,/!0n002*"1%"4,/01 +"14,/(0"$*"+11&,+/"01&)),#21*,01&*-,/1+ "o
,#+6 0601"*n+!1("01"-01,"+02/"1%1 “Organisations considering the deployment
your workflows aren’t leaving you vulnerable to ,# v0"!0,)21&,+00%,2)!3,&!/20%&+$&+'201
2+&+1"+!"!*&01("0,/&+1"+1&,+)"5-),&10o " 20"&1}01%")1"011/"+!n16,/060o,2+""!
to thoroughly appraise and trial systems before rolling
1%"*,21o ,/12+1")6n1%"/"/"0"3"/)#/*"4,/(0
+,4"<n-,&+10,21n !,"0),4"/1%"//&"/1, 3&))"1,00&014&1%1%&0n02 %0 ,,$)" n
"+1/60&$+&#& +1)6n+!4&)),+)6$"1"11"/o n1%",-98#,/0n+!
o%"0"#/*"4,/(0%")-,/$+&01&,+0
AI protection understand the risks, attack surfaces and potential
)"/)6n &0+}10&+$)"1%/"1n21-,4"/#2)n3"/01&)" 1%/"101, v0"!0601"*0n!!0,/o
set of technologies with implications for almost every +!1%""01!"#"+ "$&+011%"*)& &,2020",#
0-" 1,# 6"/0" 2/&16o,n/1%"/1%+),,(&+$#,/ +"41" %+,),$6n&+1%",-&+&,+,#!*&)1,+n&0+}1
single solution, we must think broadly about defensive technical at all, but rather takes the form of employee
*"02/"0o%"+!")&+$4&1%!""-#("0n#,/"5*-)"n 1/&+&+$+!4/"+"00o 1}0&*-"/1&3"1%14"
*&"" ()+!/" ,**"+!01%120&+"00"0 ,+0&!"/ /"$2)/)6"!2 1""*-),6""0,21 v!/&3"+1%/"10n
/,201*2)1&v# 1,/21%"+1& 1&,+0601"*01%13"/ &)1,+060o"*201*("&1 )"/1%1"*-),6""0
not only user credentials but behavioural biometrics, should be cautious about the information they share
1,,o!3+ "!*,+&1,/&+$1,,)0!"1" 1+,*)&"0&+ ,+-2)& -)1#,/*0n0 +"0&)60 /-"0, &)
communication patterns and transactional behaviours *"!&1, /#11/$"1"!0, &)"+$&+""/&+$11 (0o
that can help identify and prevent unauthorised -,4"/#2)461, %&"3"1%&0&01,*("&1/")o
1&3&1&"0"#,/"1%"6"0 )1"n%"060o 6 ,+!2 1&+$-"/&,!& 1)"1,-"5"/ &0"0+!
+!)"1}0+,1#,/$"11%11%"3"/61" %+,),$61%1}0 11 (0&*2)1&,+0n&)1,+ ,+ )2!"0n4"1"011%"
being deployed against us can also be used to our effectiveness of our incident response plans, crucially
!3+1$"q &0+}1,+"v4601/""14%"+&1 ,*"0 &+ )2!&+$,2//"0-,+0"1, v/")1"!11 (0)&("
1, 6"/0" 2/&16o%&0%&+$11 (0n&*-"/0,+1&,+ !""-#("0,/21,*1"!"5-),&10o
+!0, &)"+$&+""/&+$/"))/"04%"/" +" //1&+ /"*"/$/""01%14/"+"001/&+&+$
deployed to exploit vulnerabilities, but, as Muhammad has to go beyond the written word, or periodic chats
%61")060n1%"21,*1&,+"+)"!6 + about threats; it needs to include exposure to the
also help in vulnerability management, continuously 1%/"1&10")#o" ,/!!""-#("3&!",,#1%"n
scanning for weaknesses within an organisation’s %"/" ,**"+!0n+!20"1%104/"+"00*1"/&)
02--)6 %&+,/ ),2!"+3&/,+*"+1o 1,!"*,+01/1"1%"1%/"101,"3"/6,+"o
Mayank Sharma
is thinking of reigniting the
SysD Manager AdGuard Home ExifTool Vim versus Emacs debate
in the hope of generating
Tuptime Xournal++ Hidamari PeaZip heat to warm him enough
to discover new apps.
HeXon FeudalTactics Lock Double Commander
SYSTEMD MANAGER
SysD
Manager
Version: 1.6 Web: https://github.
com/plrigaux/sysd-manager
SysD Manager is intuitive to use and also has a comprehensive search function to
ystemd is the de facto startup and service help you narrow down the list of services.
Unlike ad-blocking
AD BLOCKER plugins that
protect individual
AdGuard
devices, AdGuard
Home can be
easily rolled out to
protect all devices
Home
in your network.
Version: 0.107.55
Web: https://adguard.com/en/
adguard-home/overview.html
dGuard Home is a network-wide ad-and- AdGuard Home a static IP, if you haven’t already. You’re
ExifTool
Version: 13.11
Web: https://exiftool.org
The Tuptime
SYSTEM AVAILABILITY utility houses the
system availability
Tuptime
details in a SQLite
database, and can
also output these
in CSV format.
DIGITAL NOTES
Xournal++
Version: 1.2.5
Web: https://xournalpp.github.io
VIDEO WALLPAPER
Hidamari
Version: 3.6 Web: https://github.com/
jeffshee/hidamari
I ,+6,2/!"0(1,-n6,2 +20"Hidamari to
/2+3&!",004))--"/0o/&11"+&+61%,+n
Hidamari can use local videos or stream them from
online services such as YouTube, directly on to the
!"0(1,-o+!1%+(01,&1002--,/1#,/ 3&!",
decoding, you wouldn’t really notice any performance
lag on modern-day hardware. click context menu on the desktop while the video Besides setting
videos as
Hidamari is available as a distro-agnostic Flatpak and &0/2++&+$o
wallpapers, you
can be installed with flatpak install flathub io.github. In addition to the ability to control playback, you also can also ask
jeffshee.Hidamari . get the option to mute and unmute the video here. The Hidamari to set a
The app has a simple tabbed interface. To play right-click menu also has the I’m Feeling Lucky option, video frame as a
any of your videos as wallpaper, drop them inside you can also reload the video from here, and bring up static wallpaper.
the ~/Videos/Hidamari folder. Any files in there show the Hidamari interface. The tool also automatically
up under the Local Video tab. Select the video you want pauses playback when a window is maximised or an
to use as the wallpaper and click the Apply button. app is running in full-screen mode.
If you have multiple videos, you can use the I’m To use a video from the internet as wallpaper, switch
Feeling Lucky button in the top-left corner of the app 1,1%"1/"*&+$1+!-01"1%",#1%"3&!",&+
to allow the app to pick one on its own. There’s also the the text box. Similarly, head to the Web Page tab to
Play/Pause button next to it that helps you to control point to a website or an HTML file on your computer to
the video playback. You also get this option in the right- use it as your wallpaper.
FILE ARCHIVER
PeaZip
Version: 10.2.0
Web: https://peazip.github.io
ARCADE ACTION
HeXon
Version: 20241021
Web: https://luckey.games
H 4&1%&+1"/"01&+$-%60& 01%1*("0#,/
challenging gameplay.
To play, download the ZIP archive from the project’s
website, and extract it with unzip hexon.zip -d hexon .
Then switch to the extracted hexon directory and
launch the game with ./hexon . irrespective of the orientation of your ship. For HeXon is a simple
The premise is simple: take charge of your instance, the 9 key fires in the top-right direction, arcade shooter
spaceship and zoom through the screen destroying while the 1 key fires lasers towards the bottom-left. that’ll suck up
hours thanks to
enemy vessels while you collect upgrades. Enemies come in the form of razors, spires and its portal-like
However, mastering flight takes some doing. That’s masons, each of which has its own characteristics space arena
because all edges of the space arena are connected and rewards. When you destroy razors, you get five and its steadily
1,1%"&/,--,0&1"0&!"0)&("-,/1)0o%&0*"+01%1 -,&+10n4%&)"0%,,1&+$0-&/"0$"106,298o0,+0 increasing pace.
&+01"!,#,2+ &+$,##1%""!$"n6,2'201"5&11%" /"!&##& 2)11,!"01/,621/"4,/1%<:-,&+10o,2
arena and reappear on the opposite side. Easy to wrap also get points collecting pickups, which come in the
your head around, but way more difficult to master. form of apples, hearts and chaoballs.
The multiplayer game supports up to four players. Each apple is worth 23 points, and you can
11%"01/16,24)(&+1,1%"%+$/1,0")" 16,2/ upgrade your weapons by collecting five of them
0- "0%&-o0"1%"("601,01""/6,2/ /#1 &+/,4o "/10/"-&/!*$"1,6,2/ /#1n+!
&+0&!"1%"%"5$,+)0- "/"+o0"1%"+2*"/-! collecting five of them one after the other restores
to fire the lasers that shoot in the direction of the keys full health and also charges your shields.
STRATEGY
FeudalTactics
Version: 1.3.1 Web: https://github.
com/Sesu8642/FeudalTactics
GPG FRONT-END
Lock
Version: 1.3.8 Web: https://
konstantintutsch.com/Lock/
G +!0&$+&+$1"51+!#&)"0o21"&+$
command-line interface tool, it isn’t really
accessible to everyone. Lock helps solve this problem
by exposing GPG’s functionalities through an appealing
graphical interface.
The application is distributed on Flathub and can 20"1%" *-,/1211,+1,-,&+11%"--1,1%" Lock makes it
fairly intuitive to
"&+01))"!4&1% flatpak install flathub com. person’s public key.
generate keys
konstantintutsch.Lock . You’re now all set to encrypt, sign, decrypt and and use them to
"#,/"6,2 +20"Lock to encrypt and sign text verify text and documents. encrypt, decrypt,
and files, you need to generate an encryption key. Click Head to the Text tab and enter the text you want sign and verify
on the hamburger menu and head to Manage Keys. 1,"+ /6-1o0"1%"-2))v!,4+*"+2&+1%"1,-v)"#1 ijÐŐijǏĆÌǎãìÿÐĬƧ
Now click the + icon to generate a new key. Enter your corner and select the Encrypt option. Lock then
name and email address, and just go with the default 0(06,21,0")" 11%"("61,"+ /6-11%"1"51o0
options for the rest of the fields, unless you know what soon as you do, it replaces the plain text with the
you’re doing. encrypted text. You can now pass it along, and
You now need to export this key to the person with anyone with your public key can decrypt it.
whom you want to exchange encrypted documents, To decrypt an encrypted text, copy and paste it
+!&*-,/11%"&/("6o0"1%"5-,/1"6211,++"51 &+Lock. Then select the Decrypt option from the
1,1%"$"+"/1"!("61,"5-,/1&11,1"51#&)"n4%& % pull-down menu. Lock prompts you for the key’s
you can then forward to the other person. Similarly, password before it decrypts the text.
FILE MANAGER
Double
Commander
Version: 1.1.21 Web: https://
doublecmd.sourceforge.io
T
he default file manager in your distro is good
enough for most tasks, but third-party options
can do a lot more. The cross-platform Double houses some interesting ones. For instance, you can You can use
the Double
Commander is one such option that’s inspired by the change the attributes of a file, get a count of the files
Commander
popular Windows-only Total Commander file manager. and subfolders inside a folder, and their total size, file manager
Double Commander is available as a portable release split and combine files, calculate and verify file for regular file
for both GTK and Qt-based desktops. You can also checksums, and a lot more. management
grab it as an AppImage. Once downloaded, make the Double Commander also supports tabs, so you functions and
a lot more.
AppImage executable either with the chmod +x +,-"+#,)!"/0&++"410o211%&0&03&))"3&
command, or through your default file manager. the Ctrl+up keyboard shortcut only. You can also use
Double Commander is an orthodox file manager it to peek inside compressed archives, or even copy
with a dual-pane interface. You can operate it via the files from inside without extracting the archive.
mouse or keyboard. The default keybindings are the It also has an advanced search function that
same as in Total Commander, but can be remapped. +#&+!1"51&+0&!"#&)"0,/0"/ %4&1%&+/ %&3"0o
The app works just like any other file manager and There’s also a directory synchronisation tool that can
can perform all the usual tasks you expect from such a compare and mirror the contents of the directories
tool. Most of the common operations are rolled up in in its two-panes. Also handy is the multi-rename tool
the right-click context menu, while the Files menu that you can use to rename multiple files at once.
Coding Cosmic
page 16!
o far in this series, we have covered how instructions in the title screen, the game throws up a
DRAWING BOUNDARIES
If you have already run the sample script COSMIC10.bas, you’ll have
noticed that it has three procedures related to defining boundaries.
%" ,!"#,/1%"0" +"#,2+!,+)&+"09A>8v:9<8,#1%"
original code. You can examine these if you wish, but the best way to
understand how they work is to play the game or sample script.
If you do this, focus on destroying just one column of invaders
,+1%""51/"*")"#1v%+!0&!",#1%")&"+$/&!o #6,2!,1%&0n6,2}))
notice that the next column of invaders now moves to the edge of
the screen, instead of being locked in a rigid grid. The same holds
1/2",2!"01/,61%",11,*v*,01/,4,#&+3!"/0x1%",1%"/0
continue moving downwards.
The missile keeps moving up the screen at fixed intervals. The player The master procedure governing this is PROC_Boundary_Update.
can only fire one at a time. %&0&+&1&))601,/"01%"3)2",#1%")"#1v*,01,2+!/6&+1%")&"+
formation O%&+1%"3/&)"S%. The procedure then calls upon
guessed, these determine the horizontal and vertical PROC_X_Boundary_Update and PROC_Y_Boundary_Update to
starting positions of the missile respectively. adjust the horizontal and vertical positions of the grid respectively.
In the case of MissileX%, this is determined by the In the case of PROC_X_Boundary_Update, the procedure just
variable B%, which represents the current position of %" (0%")"#1v*,01 ,)2*+Space%(O%,5)&0"*-16o #0,n&1
the player’s ship. Because this is calculated from the &+ /"*"+102+1&)&1#&+!0 ,)2*+1%1!,"0 ,+1&+)&"+0o 1
)"#1v*,010&!",#1%"0%&-n:&0!!"!1,MissileX% to )0,!,"01%"0*"4&1%1%"/&$%1v%+!,2+!/6P%o
make the missile fire directly from the centre. PROC_Y_Boundary Update works in a similar way, in that it
The value for MissileY% determines that its firing !'20101%"1,-+!,11,*,2+!/&"0Q% and R%&#"*-16/,40
position always starts from a specific height just above are found, until it finds one containing aliens.
the ship. If the procedure ended here, the missile
would simply appear in this position directly above the
ship and remain static.
The boundaries
This is why PROC_Fire next invokes the procedure procedures
PROC_Move_Missile(L%). ensure that
%&0-/, "!2/"&0!"#&+"!,+)&+"09=>8v9>=8&+1%" the alien grid
original game code: makes use of
the available
1560 DEF PROC_Move_Missile(L%) space on screen
1570 LOCAL I%,K% after invaders
1580 PRINTTAB(MissileX%,MissileY%); are destroyed.
1590 IF FN_Find_Char <> 32 THEN PROC_Hit : GOTO
1650
1600 PRINTTAB(MissileX%,MissileY%+1);
1610 IF MissileY%+1 <> 23 THEN PRINT” “
1620 PRINTTAB(MissileX%,MissileY%);
1630 IF MissileY%<>1 THEN PRINT”^”
1640 IF MissileY%>1 THEN MissileY%=MissileY%-1
ELSE Missile%=FALSE &+"09>88v9><8$,3"/+1%" 12)*,3"*"+1
1650 ENDPROC ,#1%"*&00&)"6!!&+$91,MissileY% to move it
The overall purpose of this procedure is to manage progressively upwards. This section also checks if the
the movement and display of the missile after it has *&00&)"}0 ,,/!&+1"0/"*,/",/)"001%+:;n1%"
been fired. bottom limit from which a missile can emanate. If so,
+)&(",1%"/-/, "!2/"04"}3"4/&11"+0,#/n1%&0 &1-/&+100- "1&10 2//"+1-,0&1&,+1,"+02/"&1 As you fire the
one contains the parameter (L%). This is used for remains visible. missile, note
collision detection, which we’re going to cover later &+"9><80&*-)6011"01%1%"*&00&)"/" %"0 that it changes
,+&+1%&0121,/&)o -,0&1&,+91%"2--"/)&*&1,#1%"0 /""+n1%"+&1}0 colour as it
The LOCAL variables of I% and K% are also rendered invisible. enters the same
predefined
something we’re encountering for the first time in You can download a sample copy of the Cosmic
bands as the
1%&0$*"o01%"+*"02$$"010n1%&0'201*"+0 Invaders script with PROC_Fire, PROC_Move_
invaders. The
1%1I% and K% are local to this particular procedure Missile(L%) and FN_Find_Char from https://bit.ly/ higher up the
PROC_Move_Missile. This is usually done to store lxfcosmic9. screen the
temporary values. alien is when
&+"9=@80&*-)6!/401%"*&00&)"1&10 2//"+1 Taking a hit it’s hit, the
position. This has already been defined by PROC_Fire, If you run the COSMIC9.bas sample script, you’ll notice greater number
so it should appear directly above the centre of the 1%14%"+6,2-20%1%"%("6n*&00&)"//,4 of points you
player ship. 06*,)+,4*,3"02-4/!0#/,*1%"-)6"/}00%&-o score. This is
The following line deals with collision detection and +#,/12+1")6n&#&1 ,))&!"04&1%+61%&+$6,2}))0"" determined by
PROC_Invader_
invokes a procedure if a missile finds its target, which another ‘NO SUCH FN/PROC’ error. This is because
Hit(L%).
we’ll explore in more depth later in the tutorial. PROC_Hit is currently undefined. You can find this in
)&+"09>>8v9?<8,#1%",/&$&+)
game code:
Acorn and BBC 1660 DEF PROC_Hit
enthusiast 1670 SOUND &0010,-15,6,5 : IF
Colin Hoad MissileY% < 22 THEN PRINTTAB(M
who originally issileX%,MissileY%+1);” “
uploaded the 1680
Cosmic Invaders
PRINTTAB(MissileX%,MissileY%); :
script to GitHub
C%=FN_Find_Char
has reached
out to Nate on 1690 IF
Bluesky to say (MissileY%+1<=Y%+(R%+1)*3) AND
he’s an avid (MissileX%>=X%) AND
Linux Format (MissileX%<X%+(P%-O%+1)*4)
reader and THEN PROC_Invader_Hit(L%) :
is delighted GOTO 1720
with this 1700 IF MissileY%=1 THEN PROC_
series. Follow Mystery_Hit : GOTO 1740
Colin’s other
1710 PROC_Base_Hit
BBC-related
1720 I%=7
activities at
https://bsky. 1730 IF NOT FN_Is_Line THEN The latest sample script (COSMIC10.bas) supports shooting missiles
app/profile/ finish=TRUE that can obliterate aliens as well as the player’s shields.
colinhoad. 1740 ENDPROC
bsky.social. + "$&+n/(%0*!" invaders, as originally defined in PROC_Invader_Setup.
effective use of the colon to group multiple commands The variable R% determines the boundary for the
into lines for the sake of efficiency. invaders’ height so that they record as being hit no
,4"3"/n1%&0!,"0*(")&+"9>?8)&11)"!&##& 2)1 matter what part of the missile touches them.
1,!"1+$)"o%"SOUND command simply plays to The next part of the line simply determines that
indicate the missile has hit something. The line then 1%"*&00&)"}0%,/&7,+1)-,0&1&,+0!"1"/*&+"!6
checks that the missile’s Y coordinate is below 22, MissileX%%0&+1"/0" 1"!4&1%1%1,#1%"&+3!"/0
+!�,"/0"0&16/"-) &+$&14&1%0- "o%&0 0!"#&+"!6X%. The variables P% and O% check
represents the fact that in the original Space Invaders, 1%"&+3!"/4&!1%n0,,+ "$&+1%"*&00&)" +01/&("
each missile is destroyed when it comes into contact anywhere on their bodies.
with something. The specific procedure of what to do if an invader is
&+"9>@8-) "01%" 2/0,/11%"*&00&)"}0 2//"+1 %&1&01%"+&+3,("!PROC_Invader_Hit(L%)+!1%"
position. This allows the game to interact with screen line then skips to the end of the procedure.
content here, like the invaders. This exact content is Assuming that the missile hasn’t collided with an
determined by the variable C%, which records the &+3!"/n1%"-/, "!2/"&+01"!*,3"0,+1,)&+"9?88o
current character in this position. This checks whether the missile’s Y coordinate is
&+"9>A8$,3"/+0 ,))&0&,+!"1" 1&,+1,!"1"/*&+" 9x1%"1,-,#1%"0 /""+o #0,n1%&0&+3,("0PROC_
if the missile has hit an invader. While this is a little Mystery_Hit, which governs what to do when the
involved, it’s enough to know that our old friend mystery ship is hit.
MissileY% determines the Y coordinates of the missile If the missile has hit neither a regular invader nor
and that the variable Y% determines the same for the the mystery ship, then PROC_Base_Hit is invoked.
+,1%"/4,/!0n1%"*&00&)"'201%&10,+",#1%"
defensive shields.
&+"9?;8!,2)"v %" (04%"1%"/+6&+3!"/0/"
left on screen. If there are none, the value finish is set
to TRUE, indicating the level is over.
Hitting out
If you worked your way through PROC_Hit, you’ll have
noticed that it can invoke three separate procedures.
The first of these is PROC_Invader_Hit(L%), which is a
little like PROC_Move_Missile(L%).
%&0&0*+$"!6)&+"09@>8v9A=8&+1%",/&$&+)
game code:
1860 DEF PROC_Invader_Hit(L%)
1870 LOCAL I%,K%
1880 IF Left% THEN G%=-1 ELSE G%=1
1890 IF MissileX% > X%+(L%-O%+1)*4 THEN
I%=(MissileX%-X%+(O%*4)+G%)DIV4 ELSE
I%=(MissileX%-X%+O%*4)DIV4
1900 K%=(MissileY%-Y%) DIV 3 :
If a missile hits an alien, this invokes PROC_Invader_Hit, causing both to Space%(I%,K%)=FALSE : J%=(I%-O%)*4 : PROC_
disappear. Scoring will be covered in next month’s tutorial. Blank(J%)
Part Two!
RUST
Don’t miss
+"51&002"n
020 /&",+
-$"9>j
There are
similarities and
differences
between C# and
Rust. If you are
a C# developer
starting to
use Rust, you
may find this
multipage
Microsoft
resource for
C# developers
learning Rust
useful: https://
bit.ly/lxf326MS
Running a ‘rustup update’ command in a terminal.
It’s worth
running rustup
update once
a week or so
as updates do
happen. Make
sure you’re not
compiling or
anything when
you do it.
LXF32s7ale
Email [email protected]
EDITORIAL
Editor-in-chief Neil Mohr
will be on
Art editor Fraser McDermott
Production editor Katharine Davies
Tuesday
Content director Marc Chacksfield
Group art director Warren Brown
1st April
Editorial contributors
Mike Bedford, Jonni Bidwell, David Bolton, Neil Bothwick, Stuart Burns,
Nate Drake, Kseniya Fedoruk, Tam Hanna, Brandon Hill, Nick Peers,
2025 "0,2+!"/n& %")""!n6+(%/*n%0%+(%/*n
3"6&+!"/n ,0%2,)"+0
Cover illustration Magictorch.com
0-"//6&&01/!"*/(,#1%"0-"//6& ,2+!1&,+o
Tux credit: Larry Ewing ([email protected]).
Content production Adequate Media Limited
ADVERTISING
Commercial sales director Clare Dove
[email protected]
Advertising director Lara Jaggon
[email protected]
Account director Andrew Tilbury
[email protected]
INTERNATIONAL LICENSING
Head of print licensing %")%4
Linux Format is available for licensing and syndication.
To find our more contact us at [email protected]
or view our content at www.futurecontenthub.com
NEW SUBSCRIPTIONS & PAST ISSUES
Web www.magazinesdirect.com
EXISTING SUBSCRIPTIONS
Web www.mymagazine.co.uk
Subscription delays: Please allow up to seven days before
contacting us about a late delivery to [email protected]
LINUX ON
MANAGE YOUR SUBSCRIPTION ONLINE WITH MYMAGAZINE
Visit www.mymagazine.co.uk/FAQ to view frequently asked questions
or log in at www.mymagazine.co.uk
CIRCULATION
Newstrade & retail category director Ben Oakden
PRODUCTION AND DISTRIBUTION
Group head of production Mark Constance
Production manager Nola Cokely
THE MOVE
Senior ad production manager Jo Crosby
Digital editions manager Jason Hudson
THE MANAGEMENT
Managing director technology group Paul Newman
Global head of design,!+"6&3"
Commercial finance director Tania Brunning
Printed by William Gibbons & Sons
Distributed by Marketforce UK
9:9v9<9"01,2/+""// "n,+!,+:> owww.marketforce.co.uk
For enquiries email: [email protected]
How do you take Linux with you? In your pocket? On Order and access past issues: If you are an active subscriber, you have instant access to past issues through your iOS or
Android device/s. Your digital magazine entitlement is available at no additional cost and no further action is required.
Pocketmags library may not have access to the full archive of digital past issues. You will only be able to access the digital
Dump Ubuntu!
www.gnu.org/copyleft/gpl.html. All copyrights and trademarks are recognised and respected.
Disclaimer: All contents © 2025 Future Publishing Limited or published under licence. All rights reserved. No part of this
magazine may be used, stored, transmitted or reproduced in any way without the prior written permission of the publisher.
212/"2)&0%&+$&*&1"! ,*-+6+2*"/:88@@@=&0/"$&01"/"!&++$)+!+!)"0o"$&01"/"!,##& "p26
House, The Ambury, Bath BA1 1UA. All information contained in this publication is for information only and is, as far as we
We stack up the best Ubuntu alternatives so you can run are aware, correct at the time of going to press. Future Publishing Limited cannot accept any responsibility for errors or
inaccuracies in such information. You are advised to contact manufacturers and retailers directly with regard to the price of
products/services referred to in this publication. Apps and websites mentioned in this publication are not under our
Ubuntu without having to deal with Ubuntu! 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.
If you submit material to us, you warrant that you own the material and/or have the necessary rights/permissions
1,02--)61%"*1"/&)+!6,221,*1& ))6$/+1 212/"2)&0%&+$&*&1"!+!&10)& "+0""0)& "+ "1,-2)&0%6,2/
submission in whole or in part in any/all issues and/or editions of publications, in any format published worldwide and on
Hacking Academy
00, &1"!4"0&1"0n0, &)*"!& %++")0+!00, &1"!-/,!2 10o+6*1"/&)6,202*&1&00"+116,2/,4+/&0(+!n
although every care is taken, neither Future nor its employees, agents, subcontractors or licensees shall be liable for loss or
damage. We assume all unsolicited material is for publication unless otherwise stated, and reserve the right to edit, amend
and adapt all submissions. All contents in this magazine are used at your own risk. We accept no liability for any loss of data
or damage to your systems, peripherals or software through the use of any guide. Notes: This issue was brought to you