Linux considerations

Continuing the discussion from Apple Turns to Google’s Gemini to Power Siri and Apple Intelligence:

On the plus side, the kind of things you want to do all exist in the Linux/Open source community. But you will, of course, be doing it with new apps, which will have a learning curve.

If you want to try out that arena, I recommend getting a cheap Linux computer to play with. A Raspberry Pi is a nice easy place to start. Or you can get nearly any PC - even ones that may be too old/slow for Windows users. These are often available from auctions and liquidation sales for extremely low prices (sometimes for less than the shipping cost).

FWIW, I have a Dell Precision T3400 workstation - a powerhouse in 2008, but is truly ancient today. It is equipped with 6 GB RAM and a 3TB hard drive. And works surprisingly well with Debian Linux.

Note that all Linux distributions pretty much provide the same operating system kernel. They vary with respect to the set of packages that are pre-installed and the system configuration utilities.

The Debian distribution is focused on the principles of open source and generally avoids closed-source packages, although there are repositories you can enable to get some such software.

These days, most people like to use Ubuntu. It works well, but I am not fond of the default GUI/desktop bundled with its desktop edition. I usually prefer to install the Xubuntu spin on it, which is pretty much the same system, but using the lightweight Xfce desktop. (In Linux parlance, a “spin” is a repackaging of a popular distribution, changing the default set of packages to appeal to a particular audience.)

But don’t fret about it too much. Most distributions have a wide variety of desktop environments that can be installed and used via its package manager. So you don’t need to wipe/reinstall anything if you want to play around with different GUIs.

Regarding your tasks, any good Linux distribution will include a vast array of software packages that you can download and install as you need via the distribution’s standard package manager. Some possibly relevant packages for your tasks are:

  • Mail. I’ve always been fond of Mozilla Thunderbird.
  • Web browsing. All the popular browsers have Linux versions, including Mozilla Firefox and Chromium (the open source system that runs at the core of Chrome, Edge and many other browsers)
  • Photos. I don’t do this on my Linux PCs, so I don’t have a recommendation. But here’s an article reviewing 11 products. Not all of them are open source, but several are and may even be bundled with your Linux distribution.
  • RSS reading. Again, I don’t have a recommendation (I use a web app for this), but here’s an article reviewing 7 products.
  • Text editing. Every distribution includes several “notepad” like apps for editing text files. I’m a big fan of GNU Emacs, but there’s a pretty substantial learning curve there.
  • PDF Viewing. Many web browsers (including Firefox) include this built-in, so you can just open PDFs there. Many desktop environments include the ability to view/preview PDFs.
  • Offline maps. I’ve never done this, but I’m sure that a bit of web searching will find a few packages that you can try.

I noticed that you didn’t mention anything resembling an office suite, but since most people want to at least occasionally use a word processor and spreadsheet, I would recommend LibreOffice. It’s somewhat popular on commercial operating systems, but is far and above the best for Linux (where Microsoft and Apple apps don’t exist).

There are many options beyond what I’ve listed above. These are just what I tend to use.

I have just been searching for phrases like “cell phone without google or apple” and then skimming through the results.

And since I just re-ran that search, I ran across this article that you may find of interest:

There’s quite a lot of great stuff out there if you just search for words and phrases and then skim the results.

5 Likes

Another idea is to install the free VM app UTM on a Mac and then install a Linux distribution on it.

4 Likes

VMs are not a bad idea, since you can get started for free, but they can only go so far.

Certain things, like interacting with USB and Bluetooth peripherals (e.g. import pictures from your camera or use your scanner) typically don’t work well (or at all) in a VM. For that, you need a computer that can boot Linux natively.

1 Like

Very true.

I just started experimenting with using Linux to set up a networked Time Machine server, and I had a twelve year old Pentium 3558U laptop kicking around that has been continually degrading as a Windows system to the point where it is only barely usable. (To be fair, the machine originally had Windows 7 and went through Win 8, Win 8.1, and Win 10 upgrades without ever getting a fresh Windows installation. I suspect that it would be okay with a clean Win 10 installation.)

Anyway, I installed the latest version of Linux Mint Cinnamon on it, and the performance was truly eye opening. No one will think of the machine as a speed demon, but it is completely comfortable to use, even for web browsing. As one small example, with Windows, it would take several minutes to boot and become fully functional. With Linux, it is around 30-40 seconds. If it can do that with an old machine, anything made in the last ten years should be very reasonable.

1 Like

Agreed that Linux can breathe life into older hardware. Like you, I have a pre-2010 Dell Latitude. Windows 10 was very sluggish on it. Fedora Linux on the other hand (with KDE desktop envionment) runs extremely well.

If you’re familiar with Windows, a distribution with KDE Plasma as the desktop environment (OpenSUSE Leap or Fedora KDE) is reportedly more familiar to Windows users. A bit more heavyweight but very configurable.

I’ll agree that virtual machines are a good option to get acclimated to Linux. I run VMware Fusion on my M1 Mac mini and have configured it with over a dozen different Linux distros. All recent versions of the almost all the mainstream Linux distros with ARM ports are easily installed and run well (two notable exceptions are Arch Linux and Gentoo - both of which IMHO are not for beginners). Some times the ARM architecture difference can cause problems but everything seems to run same as it does on a physical Intel PC (yes I have a couple of those too running Linux).

USB passthrough hasn’t been an issue to my Linux virtual machines. It’s worked very well with VMware Fusion - even with devices such as a Arduino microcontroller. But Bluetooth, GPU acceleration, and games that implement anti-cheat features are the real warts with virtual machines. If you need those, you’ll almost certainly need a physical PC.

1 Like

Thanks very much @Shamino for properly shifting my off-topic to this new topic, and the wealth of info provided!

I rarely use word processing software but now you mention it almost daily a Numbers spreadsheet.

Also remembered I use a good local app for weather here in Germany, which might not be on other OSes.

Backup of data is also important.

There’s a lot to learn here and it looks like I might be able to shift a lot over to Linux.

I agree with most of what you’re saying. I would add that the Brave browser works quite well on Linux, and can sync settings across machines and platforms without having to set up a special account. Vivaldi works fine, and also has email functionality, reminding me of the old Netscape Navigator days when the browser also had email available. Thunderbird looks a bit dated, but is very functional, and still under active development. Betterbird is a project to improve Thunderbird, by one of the (former?) TB developers. For those who really prefer Safari, there is now a project called Orion that is working to bring the Safari engine over onto Linux.

The CUPS printing standard, while not quite as simple to use as Apple’s, is directly derived from Apple technology which the company made available via open source.

One thing that we Mac people have to learn going into Linux is the concept of package management. Installing software is so easy on the Mac. On Linux, there are many ways to go about it, and we have to learn the difference between the distribution package manager, Flatpaks, Snaps, App Packages, and so on. But it’s all doable.

One sticking point for me was iCloud. However, iCloud email/calendar/contacts can all be used on good Linux email clients, etc. Also, some Linux distributions allow the user to create web apps. There’s even a package to do that with the iCloud web interface to much of its material. So you end up with what look to be iCloud Mail, iCloud Calendar, iCloud notes, etc. all as separate applications. In reality, they are web apps. They work quite well.

ZorinOS is another good one for people coming into Linux from Mac or Windows.

It took me a while to realize that in the Mac/Windows world, the visible interface, or Desktop Environment, is the system for most people. There is not separating the Mac interface from the Mac operating system for most of us, unless we drop into the terminal. Linux is not that way. We choose the distribution (“distro”), which may or may not come with a recommended desktop environment. But we’re not bound to that one interface. We can install the desktop environment of our choosing most of the time, on most of the distros. However, I would recommend that someone new not start out trying to do that.

And, many of those desktop environments can be configured to look very much like recent versions of macOS, visually. YouTube has several videos demonstrating “How to Make Your Linux Look Like a Mac,” or some such.

2 Likes

That all-in-one application still exists. Ongoing development is in the form of the SeaMonkey project. It contains a web browser, mail/news reader, composer, IRC chat client and some basic web development tools.

Unfortunately, the official builds are Intel-only. So it may be a challenge finding (or making) a build for Linux with an ARM processor. And a Mac with Apple Silicon will have to run it via Rosetta. But it might be worth trying anyway, even if it’s just for kicks.

1 Like

Yes, I completely forgot SeaMonkey. Thank you!

I just discovered another couple of angles on moving to Linux devices:

Backing up data: I suspect CCC won’t work but are there other backup softwares for a Linux-running laptop?

Phone-wise, I just discovered existence here in the EU of Advanced Mobile Location, apparently a feature that kicks in when dialing the 3-digit emergency number, allowing dispatchers taking the call to find you. This is helpful as I don’t continually think about how to describe where I am as I travel about. Online references say it is part of Android and iOS (apparently it works even with Emergency Calls & SOS off in Location Settings (web pages vary on this), though I’ve now turned it on just in case). Any idea if this works in Linux phones?

There are many backup packages. Historically, I’ve just used the old tar utility to dump everything to a tar file (or to a physical tape, back when my content was small enough to make that practical).

You can also use rsync to clone a volume or directory to another volume/directory.

These are both command-line tools. They get the job done, but they’re not pretty. There are many more options (here’s a review of 25 of them) some with GUI interfaces.

If you want your backup to be bootable, look for a tool that can do the work for you. Conceptually, it’s not difficult, but there are a lot of fiddly bits that might catch you by surprise. The process is something like:

  • Clone the root file system. If you have other critical partitions (e.g. the EFI partition or the “/boot” partition) clone them as well. Then use your boot-loader’s setup utility (e.g., the GNU GRUB utility that is very popular these days) to make it bootable.
    • But setting up Grub from scratch may be too much for a novice user to do without help.
  • Depending on how your volumes are identified in your /etc/fstab file, you may need to change them on the backup. Otherwise, it will attempt to mount the original system’s volumes instead of its own volumes (from the backup).
  • There may be other little gotchas.

If you’re doing this as a hobbyist or as a part of learning how, by all means, go for it. But if you just want to get your work done, then you may want to stick with non-bootable backups or seek out a user friendly tool that can automatically make bootable clones.

2 Likes

Thanks very much, at first it will be as a hobbyist as I learn if the change makes sense for me. Securing any new files I create would be important, not bootability initially.

Restic seems to be a popular cross-platform backup tool choice, these days, and someone has put a user interface on it (Backrest).

(I would put bootable system volumes into the resiliency “bucket”, using mirroring or other techniques for managing the configuration and being able to reinstall from scratch.)

1 Like

Clonezilla has worked well for backups for a close friend who primarily runs Linux.

4 Likes

Thanks for reminding me. I actually used it years ago to clone a system’s hard drive to a bigger one during an upgrade.

But I haven’t evaluated its utility for more routine backups, like daily or weekly incrementals.

1 Like

There’s a GUI app called “PikaBackup” that I’ve seen offered here and there.

I’ve used an rsync script for decades to keep my server farm backed up to encrypted physical media. I still use it, though I’m down to a half dozen servers from the 30+ of a few years ago. As @Shamino says, it isn’t pretty, but it also isn’t long. Most of the script is devoted to making sure I can see the “SUCCESS!” message from across the room.

#!/bin/bash

set -o errexit
cryptsetup luksOpen $1 securebackup
mount -t ext3 /dev/mapper/securebackup /mnt
trap "echo; df -h; umount /mnt; cryptsetup luksClose securebackup; exit" INT TERM EXIT
rsync --archive --verbose --one-file-system --delete --exclude=/swap.img --exclude=/home/ron/.cache --exclude=/dev --exclude=/sys --exclude=/proc / /mnt/$HOSTNAME
echo
echo ' sss  u   u  cccc  cccc  eeee  sss  sss  !!'
echo 's     u   u c     c     e     s    s     !!'
echo ' sss  u   u c     c     eeee   sss  sss  !!'
echo '    s u   u c     c     e         s    s   '
echo ' sss   uuu   cccc  cccc  eeee  sss  sss  !!'
echo

Ten years ago I wrote about making bootable clones for GNU/Linux; the technique would work for restoring a bootable system from the backups made by the above script, and I think it explains how to set up the disk for the encrypted backups. I suspect it’s out of date now, so don’t rely on it but use it to get a notion of the extent of the problem. (Not bad, in my world, but possibly completely opaque by the standards of a primarily GUI user.)

It’s also worth mentioning cronopete, an attempt at a Time Machine clone. I’ve never used it, but it’s been around for a while.

CrashPlan backs up Linux…