GNU ddrescue for hard disk imaging or recovery on Ubuntu 24.04 LTS
GNU ddrescue (ddrescue) is a proven data recovery tool which you can trust. However, it is also quite a complicated command line tool. If only there was a way to make it more straightforward to use.
Read more: Using GNU ddrescue and GParted for hard disk imaging or recovery on Ubuntu 24.04 LTS
GNU ddrescue for hard disk imaging or recovery on macOS Ventura
GNU ddrescue (ddrescue) is a proven data recovery tool which you can trust. However, it is also quite a complicated command line tool. If only there was a way to make it more straightforward to use.
Flutter based Ubuntu 24.04 App Centre
Great to see the fruit of Ubuntu's decision to embrace Flutter. App Center made it into Ubuntu 23.10 but cements itself in 24.04 which is destined to be an LTS release.
TL:DR โ It is a massive endorsement for Flutter for Linux for Ubuntu to be using it for a flagship Ubuntu Desktop app like App Center.
Easier than a full blown data centre style virtualisation solution for a local lab environment
If you don't need a full scale data centre style virtualisation solution then Workstation Player uses VMware vSphere Hypervisor technology to provide simple and secure local virtualisation on modest hardware. It is far easier for a small local testing or technology exploration lab than ESXi or OpenStack.
Why VMware Workstation?
VMware Workstation supports hundreds of 32-bit and 64-bit guest operating systems. Best of all, VMware Workstation Player is free for personal, non-commercial use (business and nonprofit use is considered commercial use). VMware say "If you would like to learn about virtual machines or use them at home, you are welcome to use VMware Workstation Player for free".
TL:DR โ This was actually moderately difficult to do, because it involved signing a module and installing it for secure boot. Also because my Lunix Distribution - Ubuntu 24.04 is unreleased at this point and not supported by VMware Workstation Player for Linux, and my processor architecture, 'skylake' is not supported by the latest version of VMware Workstation Player so I had to fall back to a previous version, and compile the VMware modules into my Ubuntu 24.04 kernel. I got it working. YMMV.
Apache Virtual hosts using Let's Encrypt on Ubuntu 24.04
It is no longer hard to serve multiple differently named websites from the same server with SSL. Let's Encrypt supports Apache and Ubuntu and is easy to configure.
The Apache HTTP Server has always had a virtual hosts feature to serve multiple differently named websites from the same server. Setting it up with SSL is historically more complex than it perhaps ought to be given that the project it named after HTTP it was centred around http and https was originally an additional, often expensive and complex configuration step.
This seems outmoded to me. Even for test sites, traffic encrypted to the web browser with https is mandatory for any serious web presence. http is an insecure protocol that should really be a secondary consideration. Anyway, it is what it is.
With virtual hosts, each individual site appears to the end-user to have a different identity even though it is served from the same server. Hosting providers use this technology to provide resilience, security, scale, analytics and for many other reasons but it is also useful for developers who want to have a replica small scale development or staging environment perhaps for multiple websites. A development environment is my reason for building out Apache 2 virtual hosts with separate Let's Encrypt certificates on my Ubuntu Linux machine.
To make it work, you need to think about setting out the directory structure on your Linux machine, the Virtual Hosts configuration files for Apache2, and a properly resolving DNS record to the Linux machine hosting your virtual host site. Setting it up is easy enough but takes a little bit of concentration on the details of all these moving parts. Adding SSL to these virtual hosts is far less tricky than it once was because 'Let's Encrypt' does most of the heavy lifting now.
TL:DR โ I now have two dev sites on my local Ubuntu Desktop. Both have valid Let's Encrypt SSL certificates and are working well locally and via the Internet. It took about 45 minutes to set up.
Read more: How to set up secure virtual hosts using Let's Encrypt with Apache2 on Ubuntu 24.04 LTS
Joomla 5.0.3, on Ubuntu 24.04, with PHP 8.3
Two years after installing Ubuntu 22.04 a third party software update completely broke my Joomla site development computer. Yeah I should have known better! So, nows the time to rebuild. I've chosen to use Ubuntu 24.04 desktop, which is about to be released, and is in the very final stages of work, and pretty much finished, so that I can find our whats new, and if anything I care about is broken and hopefully then remain as updated as I dare for the forseeable future.
What will be installed
- Apache 2, MySQL, and PHP
- Joomla 5.x in multiple virtual sites
- ddclient for auto updating DNS host IP addresses, because this is a laptop
- certbot for Let's Encrypt SSL certificates
TL:DR โ This is always an interesting exercise because it makes you think about all the first principles for running a content management system like Joomla. Where and how your databases will be set up, how exactly are you going to set up the web server, will your network support Let's Encrypt certificate renewal. It can be challenging to hold it all in your head, so I tend to write everything down these days and take screenshots. It becomes self documenting. I hope it is helpful to someone.
This PC doesnt currently meet Windows 11 system requirements
So, I bought this total bargain Lenovo ThinkCentre 710q chiefly because it consumes low power, has all Lenovo's attention to detail for maintenance and spare part replacement, has a nice tiny form factor, and a reasonably modern architecture. The Think Centre supports secure boot, and has a Trusted Platform Module (TPM) 2.0. This one came with a DVD rw drive but has a modest 8GB of memory and a 500GB drive. The 6th Generation Intelยฎ Coreโข i5-6400T 'Skylake' processor and the Intel HD 530 graphics are end of life. Nevertheless it is a relatively good specification. Sadly however, according to Microsoft's tools, the Lenovo ThinkCentre M710q appears to be unable to meet the minimum system requirements for Windows 11. Thats a shame, but all is not lost! Lets see what can be done to improve the usefulness of this machine.
TL:DR โ Lenovo have always made high quality rugged expandable hardware, especially in the Think design range they acquired from IBM, who after all, invented the PC in the first place. These ThinkCentre 710q tiny workstations are low power workhorses so they don't cost a fortune to run and are cheaply and plentifully available now in the used marketplaces. They can be expanded to excellent maximum specification and in some cases beyond to deliver their full potential at low cost and are ideal for home/lab/small office use. Plenty of parts are available, mostly very easily user replacable with ease. It is as easy as can be to bypass the arbitrary restriction and allow the upgrade to Windows 11, or indeed to install Linux or whatever other OS you please.
Read more: Yes, you can install Windows 11 on an unsupported processor chip
Secure File Sharing with FileCloud
FileCloud is powerful software, delivering a secure, enterprise-grade file sharing and content collaboration platform. The community edition provides an annual licence for 5 full accounts, with 10 external accounts. Community edition is self-hosted on your Windows or Linux servers or in your own account in a supported Infrastructure as a Service (IaaS) provider. For our review we installed it in Amazon EC2, using Amazon S3 for storage, as well as on a local Linux server, using local storage, and on a local virtual machine, on an Intel based Mac, running VMware Fusion, with the Filecloud provided Ubuntu 22,04 virtual machine. You need to have a good knowledge of Linux, virtual machines and web applications to get Filecloud running well.
Warning for Linux installations!
After installing FileCloud, it auto updated and somehow, during this process, something recursively changed the permissions of the entire Linux machine to www-data:www-data
. This is pretty much impossible to reliably recover from, so the machine had to be reinstalled. Fortunately its a lab machine not a production machine.
FileCloud requires some very specific dependencies. The installer and the upgrade process is brittle being just a set of scripts with little or no explanation. It is made more opaque because it is not open source. These things are probably enough to make you look elsewhere, which is a shame because the functionality ticks all the boxes!
An older cassette recorder, for 2024?
Professional level Compact Cassette Deck
Can I finally digitise old analog cassette tapes?
Cassette tapes are a lost art. I haven't had a cassette player connected to my home audio system for decades. But I remember vividly the playlists on my mixtapes, and still today expect certain songs to appear after other songs when I hear them. Mixtapes also provide a snapshot of the music at the time, unlike our digital media services today.
Vintage cassette players and recorders, are expensive and full of compromises on eBay but seem to have a devoted following among collectors, vinyl enthusiasts, and music lovers. Analog audio has the hiss of tape. Remember the special grades of Tape? Like mighty TDK SA 90 which was the king of the blank audio cassette for years. TDK also made C-120s but they were prone to failure and best avoided. Everybody it seemed, made Cassette media, but it was always TDK for me if I could stretch to them.
In my other article on New Cassette recorders in 2024, I look at the only two, almost identical brand new decks you can buy (from Teac and TASCAM). Both have the exact same mechanism, and remote, with a few styling differences, notably โ rack mount capability and one additional playback function on the TASCAM. In the end I decide to try a second hand deck to determine how much quality I can get out of it, and really whether I care enough to invest in this old but originally groundbreaking media. I'm still a sucker for TASCAM, the professional division of Teac, so I looked for a TASCAM 302 - one of the finest professional, rack mountable, dual cassette decks ever made.
TASCAM 302
TL:DR โ If you have the means theres still a TASCAM Pro Audio and a Teac consumer cassette deck available in new condition with USB out from. But can you get similar quality out of a second hand TASCAM cassette deck?
Amazon Appstore on Windows 11 and WSA unplugged
Microsoft's recent announcement regarding the sunset of Windows Subsystem for Android (WSA) means the end of Amazon Appstore on Windows 11. This ripple is being felt throughout the tech press, sparking discussions about the company's technology shifts and the implications for users and developers alike. Here's an extract of Amazon's email
Discontinuation of Amazon Appstore on Windows 11
Starting March 6, 2024, Amazon Appstore will no longer be available for download from the Microsoft Store on Windows 11 devices. After March 5, 2025, Amazon Appstore on Windows 11 and any apps downloaded from it will not be supported.
For additional details and insights into this transition, please read our Frequently Asked Questions (FAQs): https://www.amazon.co.uk/appstoreonwindowsFAQ
In this article, we delve into the murk surrounding this decision, examining its possible background, reasons, impact, industry response, and future implications. Here is Microsofts announcement:
Important
Microsoft is ending support for the Windows Subsystem for Androidโข๏ธ (WSA). As a result, the Amazon Appstore on Windows and all applications and games dependent on WSA will no longer be supported beginning March 5, 2025. Until then, technical support will remain available to customers. Customers that have installed the Amazon Appstore or Android apps prior to March 5, 2024, will continue to have access to those apps through the deprecation date of March 5, 2025.
Source: https://learn.microsoft.com/en-us/windows/android/wsa/
TL:DR: Microsoft has thrown in the towel. Use a Chromebook or an Android tablet if you want seamless Android. Use an Emulator from Android Studio if you want recently updated emulators of Android devices.
WYSIWYG editing in Joomla 5
Joomla 5 introduces Fontawesome 6.4, and already has Bootstrap 5, but it can be a pain to preview what your article might look like with Bootstrap styling and Font Awesome Icons. JCE Pro fixes that, with one simple profile configuration change which enables What you see is what you get, (WYSIWYG) editing in Joomla.
Evaluating secure file sharing against an information security policy framework
File Sharing securely with external users and with adequate governance is hard. You might think you can just easily mandate a file sharing Software as a Service (SaaS) platform as part of your productivity suite, (Google Workspace has Google Drive, Microsoft 365 has Microsoft OneDrive, Apple has iCloud or there's always a third party SaaS like the venerable DropBox), but hold on before you do so. In exchange for a simple user experience you give up control over your data hosting to the cloud service provider. That might be fine for your organisation, and it is for a lot of organisations, but for some data workloads with sensitive, private or privileged data it could well not be acceptable.
Five reasons why a Software as a Service (SaaS) platform might fail your organisations criteria for secure file sharing technology
There are probably more but here are five:
- Firstly, SaaS providers might be required to give access to their data to other agencies by regulation or for other reasons although like DropBox they may appear to be transparent about it.
- Secondly, they might index your content as Windows does if you let it by enabling "Cloud content search", leading to the potential for serving information in search results to users who should not be able to see it.
- Thirdly, your SaaS provider might harvest the data for use in training a large language model (LLM) for Artificial Intelligence (AI), with the resulting risk posited by Google that training data appears in output or could be subject to a training data extraction attack.
- Fourthly, they might change their terms and conditions or like Skiff be acquired and shut down.
- In extreme cases, (looking at you, Amazon Drive), they may just throw in the towel and cease operating the service altogether.
Evaluating secure file sharing against an information security policy framework
Recently, we conducted an evaluation of secure file sharing technology for suitability for sharing securely with users both internal and external to an organisation in a regulated market sector. This was an interesting exercise, which made us spend further time thinking about the issues around secure sharing of company information in the cloud, and the almost automatic use these days of the technologies tied to an organisations business cloud software provider. The criteria we set were informed by our own information security policy framework as we look to become ISO27001 certified.
Information Security Criteria
Whatever system is chosen must preserve information security. It should ensure that access to the system is only given to the right people, to the right data, and at the right time.
- Access Control โ Measures to control who can access the data and what actions they can perform.
- Authentication โ Authentication, authorisation and revocation mechanisms strong enough to verify the identity of users accessing the service.
- Auditing and Logging โ Detailed logs of all activities and accesses to the data, allowing for accountability and traceability.
- Incident Response โ Procedures to respond and mitigate changes, continuity, disaster, security incidents or breaches.
- Data Encryption โ Encryption to protect data from unauthorized access.
- Data Integrity โ Maintenance and assurance of data over its entire life-cycle.
- Data Deletion and Disposal โ Supports procedures for securely deleting and disposing of data when it is no longer needed.
- Data Governance โ Policies and procedures for the proper management and use of data within the organization.
- Data Classification โ Data classification based on its sensitivity.
- Network Security โ Prevention of unauthorized access and protection against external threats.
- Vendor Risk Management โ Assessment and management of security risks associated with third-party vendors or partners involved in the data sharing process.
- User Training and Awareness โ Education available to users about security best practices to help prevent security incidents.
- Secure Development Lifecycle โ Security in the software development process must be respected.
- Security Monitoring โ Tools and processes for continuous monitoring of the service and its environment for potential security issues.
- Compliance and Regulatory Requirements โ Ensure that the service complies with relevant laws, regulations, and industry standards.
Functionality and ease of use
Functionality and ease of use only matters if the information security criteria are met.
- Ease of use โ There should be a fully featured web App, Windows, Mac desktop drive/volume level support is desirable, folder level support acceptable. iOS and Android Apps are highly desirable.
- Functionality โ Branded Portal, Let's Encrypt SSL support, Custom URL, Shared Files and Folders, (password protection, public, time timited), Unlimited storage. Comprehensive email notifications.
No system guarantees everything in an information security policy
This exercise is not about criticising systems that cannot guarantee total compliance with information security policies. None are perfect, It is more to show that if information security cannot be guaranteed then the risks should be quantified, written down, subject to regular review and accepted by the executive management of the business.
TL:DR: Operating system vendor solutions and well known SaaS services cannot easily be made to satisfy all of these conditions. The only way to guarantee compliance with strict information security policies is to self host with a technology and platform that enables you to encrypt your data in transit and at rest. You have to have the keys to the kingdom!
Read more: Evaluating secure file sharing against an information security policy framework
Joomla can be annoying sometimes. You try to add a fancy icon to your article like this, , but when you save your article the icon isn't there. On inspection you can see the tags have been removed!
This is irritating, but before you spend all day trying to understand it, there is an easy solution.
TL:DR: Learn just enough about editor settings to configure Joomla so editing is how you want it to be.
First, do you need a sitemap?
A sitemap is a file where you provide structured information intended for web crawlers such as search engines. You might need a sitemap if your site is complex and/or multilingual. You might not need a sitemap if you have a small site, (Google say less than 500 pages), or if your site content is comprehensively linked from menus, or if you don't have videos, images or news pages that you'd like to appear in search results.
But if you do need or want a sitemap for Joomla, it is a simple task to add a sitemap to Joomla..
TL:DR: If you do, just Download OSMap from Joomlashack, it is free, although there is a Pro version should you need it.
What is S3 Browser?
S3 Browser is a Freeware Windows client for Amazon Simple Storage Service (Amazon S3) A part of Amazon Web Services (AWS) Amazon S3 is a well regarded, highly available, resilient object storage service offering industry-leading scalability, data availability, security, and performance. If there is a criticism it is that it can be hard to navigate and hard to ensure security is implemented thoroughly. S3 Browser can help shine some light on your S3 Buckets and files, and its dead easy to use and powerful.
Main features
- Access Key ID based login
- Upload / Download with built in data integrity
- Publish
- Browse, create and delete S3 buckets
- Share S3 buckets
- Use other shared buckets
- Set Access Controls on S3 Buckets and files
- Create encrypted backups
- Manage Amazon CloudFront
TL:DR: If you use Windows, then this is an invaluable tool for working with Amazon S3 files and buckets from multiple Amazon S3 accounts. You should download it, upgrade to Pro and expense the modest cost! If you don't use Windows this is not for you.
Read more: S3 Browser, a little swiss army knife for AWS S3 buckets
Icons in Joomla Menus
This is a relatively new feature in Joomla 4.1 and later, and it really helps make menus look more professional.
Icon from bootstrap icons, font awesome, or any icon font supported by your template can be used.
TL:DR: Make your Joomla menus look better with icons, easily.
Customising the Menu class in Joomla Cassiopeia template
I needed to style the border for my menu in the Cassiopeia template when an item is selected or hovered, as its not a very good contrasting colour by default.
and its actually really easy to do with one CSS statement and a Link Class in the Link Type screen for the menu..
TL:DR: Make your Joomla menus look better with a hover border, easily.
My Google payments for Apps using AdMob were on hold. Thats not good! How do you fix it?
Read more: Google payments on hold. Action is required - Taiwan
A security policy for macOS Sonoma
This document is an example security policy for the security of Apple Mac computers running macOS Sonoma in a small business setting.
Version | Significant changes |
---|---|
1.3 | Updated for macOS Sonoma |
1.3.1 | Version for LinkedIn |
TL:DR โ I was asked if I had a security policy document for macOS that would work for a small business who don't have a device management platform and I did have one, but it was mostly in my head or implemented on my Macs, so I decided to write it up in detail.
It is an example. You might want to change things. It is for smaller businesses who can't use Apple Business Manager or similar device management technologies.
I thought it might be helpful to someone to post it here.
iOS 17
iOS 17 brings big updates to Phone, Messages and FaceTime that give you new ways to express yourself as you communicate. StandBy delivers a new full-screen experience with glanceable information designed to be viewed from a distance when you turn iPhone on its side while charging. AirDrop makes it easier to share and connect with those around you and adds NameDrop for contact sharing. Enhancements to the keyboard make entering text faster and easier than ever before. iOS 17 also includes updates to Widgets, Safari, Music, AirPlay and more.
TL:DRโ Install right away if your device is eligible just to get the updates and Security fixes. Consider selling/trading in iPhones older than the iPhone XS as they won't be upgradable to iOS 17 and their value is diminishing. iOS 17 compatible iPhone devices with a lightniing connector are also on borrowed time, but do not need to be immediately replaced. App developers might find it helpful to keep an iPhone 8 or iPhone X around for testing with iOS 16 while it is still supported.
You can select dashboards and reports and publish them as an app, either to a group or to your whole organization, but how do you package up a Power BI app for a third party, as part of an application lifecycle management (ALM) system for good governance? โ Let's find out what best practice looks like in September 2023!
Publishing apps in Power BI
Microsoft say "You can publish apps to people outside your organization, too. They can view and interact with the app content, but can't share it with others. Now you can create template apps and deploy them to any Power BI customer." (See: Ways to collaborate and share in Power BI โ Microsoft). That is quite hard to unpick.
Heres a little cookbook of utilities that make working with Android devices easier.
TL:DR โ Heres how to enable developer mode on your Android device, how to install ADB, how to use ADB to connect using a USB cable, how to use ADB to connect over your local WiFi network, how to use ADB to Sync content such as music or movies to your android device, how to pull videos our of your phone storage onto your computer, how to take a screenshot and save it on your local computer, how to record a movie of the screen of your android device, and how to open a Unix shell on your Android device from your computer.ย
Read more: Using developer tools to transfer files on Android
Scalable Vector Graphics (SVGs) work better for logos, but are not enabled by default in Joomla 4
Scalable Vector Graphics have been around since before the millennium. SVG is an open standard for vector graphics stored in XML text files. SVGs can however also contain code and other artefacts so theres an abundance of caution in Joomla towards them, and they are not enabled by default. That said, in 2023, they are by far the best graphics format for logos and can be useful elsewhere in your Joomla CMS site. Other graphics formats look jagged in comparison.
This article explains how to get SVG enabled in Joomla, what the issues are, and why its worth the effort
TL:DR: SVG is better in so many ways for crisp text on responsive sites and it is worth doing the work to understand how to use SVG with Joomla safely. Takes about 30 minutes.
Joomla has some intricate feature settings you probably want to adjust early on in your creation of a site in order to maximise your eligibility for search engine rankings without penalties. You can look at third party extensions to help address this, but why not start by optimising the system without third party additions first to see if it is enough for your requirements. Joomla is a mature content management system and there are lots of adjustments you can make before you look for more specialised tools.
These settings and changes are by necessity in different components of Joomla. Although this is confusing and you may well wonder why there is not one single configuration page it is because the changes don't universally apply to a given site, group of related sites or their content and their hosting provider.
TL:DR โ Configuring your htaccess, site settings and enabling the SEF plugin all help to make Joomla search engine friendly. Read on to find out how. Easy to do. Takes about 15 minutes.
Read more: Making Joomla Search Engine Friendly (SEF) as a precursor to Optimisation (SEO)
So the ๐ logo above is taken from the X Brand toolkit and it looks ok and is a .png graphic. They also provide a .svg so you can create whatever size you need. But thats extra work managing images and who needs that?
The ๐ just above here isn't an image, its just a big single text character. <span style="font-size: 128pt;">๐</span>
. This is much easier to deal with and the differences are imperceptible unless you line them up side by side.
Wait, whats this, the ๐ is just a font character!
Instead of using an image you can just use a Unicode symbol which has been around since 2001. Its called the Mathematical Double-Struck Capital X. Not exactly catchy but its helpful nonetheless. Because it has been around so long, it has widespread adoption in typefaces you might use. It also has what is known as an html entity, which makes it easy to type. Try 𝕏
on any web page editor and you'll see.
TL:DR โ Mathematical Double-Struck Capital X was added to Unicode 3.1 in March 2001. Any difference from the X Corp design is imperceptible to me and it is trivial to add to any html page using and html entity 𝕏
which renders as ๐. Perfect!
Read more: Quick and easy ๐ Logo for Twitter for documents and websites
Subcategories
Flutter
Learning Flutterโข โ Simultaneous publication of apps for Apple and Google Android devices
Flutter is an open source framework by Google for building beautiful, natively compiled, multi-platform applications from a single codebase.
I create mobile applications that can be published in the App Store and Google Play. I'm not a hard core developer, I have professional developers working with me in my clients and contracted work. But I am a product manager / interim CTO.
It seemed to me that going through the whole process of app creation and management and documenting it for others would be useful. I've been writing requirements and producing mobile applications for decades but I thought I'd like to learn at a far deeper level about Flutter just for fun and because cross platform applications are something I have a passion for. This is my learned experience of picking up these development tools and seeing what I can do.
Of course, one does not simply publish an app.
In order to publish an app you have to plan, code, build, test, publish, operate, monitor, manage and update it. This is a familiar pattern these days, its sometimes called 'devops', and it can't be avoided, for if you skip elements of it then updating your app or managing it might become impossible over time. You don't want that! So while this collection of articles is based around Flutter it is also about all the surrounding disciplines that need to be considered as part of development and operating a cross platform mobile application and the inevitable platform behind it.
Flutter starter app running on iPhone 14 Pro simulator on macOS Ventura (Intel)
Getting started with Flutter
This is the first part of a journey to build and publish a Flutter based app for the App Store and Google Play. Building the starter app on a Mac computer with Apple silicon. Start here.
Getting started with Flutter and building the starter app on a Mac computer with Apple silicon