a twisted story of exasperation, failure, heartbreak, and triumph.
Please excuse the long title. This entire exercise has me feeling some kind of way. Anyway… As I’m sure we’re all aware, the internet has changed quite a bit over the last 10 years or so. Google went from “Don’t be evil” to “collect all the data about everyone we can”. To say I have issues with Google’s business model and its implications for our privacy is like saying Zuck is kind of a strange dude. Like, yeah, duh: huge understatement. So I avoid Google’s products and services as much as I can. I use Apple Maps on my phone, instead of Google Maps, with mixed results.
I don’t even have Google Chrome installed on any of my personal devices (I do use it for work, on the work laptop, which is entirely segregated from my private life). But, I am still using Gmail. I recently decided, “you know what? I think I’ll stop using that too.” And here is where our tale begins.
Of course, part of the problem is changing one’s email address to begin with. See, if you’re anything like me, you’ve probably had the same email address for a loooong time. Many people have only had a single email address their entire lives. To begin to untangle its long tentacles from all the corners of one’s life can be quite a time-consuming process. Hell, I still get snail mail at my place for someone who lived here 2 tenants ago. So this is not new, nor isolated to email. There have been attempts to replace email with something a bit more, modern? I guess? But it’s not always a great idea to sign up with any internet-related services anymore because their main business model and purpose is to collect your data. Email, due to its extended age (it’s like, Gen X) , is a fairly simple and robust internet communication system.
For the most part, it just works. Email is also built upon a system of open protocols that no single organization owns or has control over. You know, the way the Internet is supposed to be. So, I, and most of us, still use it all the time. Sure, I have Slack at work and Discord and I use those too. But for many things, email is the move. So to make a long story longer, having to also update every single service provider website/account management system with a new address is a pain in the ass. I will probably forget some, and then will surprised by like my power getting shut off or something. Now, I’m wondering if I should even go through with it at all. But then I remember: Google is a bastard. So, I guess I’m going to take one for the team. As it were.
Now you may be saying “but wait a minute, dipshit. How is Apple any better than Google? Aren’t they a big evil corporation, too?” And you have a point. In the great scheme of things, any corporation as valuable as Apple is about as capitalist as it gets. And capitalism is a real problem, what with all the climate change and inequality and all. But, and this is important too, Apple’s entire business model isn’t based on gathering your data. Apple has a whole enclosed ecosystem thing going on over there, it’s a bit culty if I’m honest.
They also make hardware, such as iPhones, iPads, MacBooks, etc. They make some operating systems. They offer services such as iCloud+, Apple TV, and Fitness+. Apple, for all their perceived inventiveness and innovation, makes money the old fashioned way: you buy their shit. Now I do have to say here that Google does offer some paid services for users, but as I understand it these are not their major sources of income, data collection is. So Apple is therefore marginally better, because at least they aren’t selling all your data to everyone. They use your data, but they use it to sell you their own shit. Maybe they are innovative…
So since I have an active iCloud+ subscription (Apple One Family), I get a free iCloud mail account. I can also add my own domain, and create addresses at it. You can do this with Google’s Workspace née G-Suite product, but then you’re using Google so don’t do that shit, asshole. Apple makes it pretty simple to add your domain and use it, but I know that I’m saying that from my point of view as someone who has worked in the IT field for over 10 years. So, I’m sure most people would like a simple, straightforward, “just the facts, sir”, walkthrough on that process. Apple’s own instructions are here.
If you are following along and want to do that now, go ahead and then come back here. We’ll all just wait for you.
Welcome back. I think at this point it also bears mentioning why I use my own domain, and why I recommend you do the same. Using your own domain makes migrating to another email service much, much easier. You keep your address and don't need to run around making sure all the services you use have the updated one. If you create me@johnsmith.com
, for example, that will be your email address whether you use GMail, Zoho, Fastmail, iCloud, Yahoo, or whatever. If you ever decide to change email providers in the future, future you will thank present you for using your own email domain.
OK, so there may be some of you now saying, “Hey dumbass, you can just use your gmail account with IMAP, why are you doing all of this shit?” This is absolutely true, but Google does do server-side collection of data, so simply avoiding their webmail interface isn’t going to cut it. Anyway, to be honest, depending upon your level of email usage, this might not even be a big deal. You might be someone who rarely uses email and doesn’t have the complicated web of filters that a nerd like me has. I'm not here to judge you for those decisions. Do your own thing.
Once you have your domain added to iCloud (or are going to use your @icloud.com
email address for this), you can work on setting this address up on Thunderbird or Apple Mail. Doing this on Apple Mail is actually really simple, and you can also do this simple setup on your iPhone and iPad pretty easily too. To set up iCloud email on your iPhone or iPad, take the following steps:
- Open the settings app.
- Tap on iCloud.
- Tap on iCloud Mail.
- Tap on the toggle for Use on this iPhone to turn it on.
- If you added a custom domain, you can select the address as default, or just select your
@icloud.com
address here. - You can do some other stuff here as well, including creating an autoresponder, configuring mail box rules, and other cool shit. But that’s for another day.
These settings are quite similar on MacOS. I’ve included a screenshot here:
TL;DR open settings, click your name/avatar, click iCloud, click iCloud mail. Switch that mofo on.
For Thunderbird, you can follow their walkthrough. But, since you're using an iCloud email address, you’ll need to obtain an “app-specific password” from iCloud. Apple discusses this here. You’ll also want to obtain the iCloud server settings, from here. I’ve listed them below as well:
IMAP information for the incoming iCloud Mail server
- Server name:
imap.mail.me.com
- SSL Required: Yes
- If you see an error message when using SSL, try using TLS instead.
- Port:
993
- Username: This is usually the name of your iCloud Mail email address (for example,
johnappleseed
, notjohnappleseed@icloud.com
). If your email client app can't connect to iCloud Mail using just the name of your email address, try using the full address. - Password: Generate an app-specific password.
SMTP information for the outgoing iCloud Mail server
- Server name:
smtp.mail.me.com
- SSL Required: Yes
- If you see an error message when using SSL, try using TLS or STARTTLS instead.
- Port:
587
- SMTP Authentication Required: Yes
- Username: Your full iCloud Mail email address (for example,
johnappleseed@icloud.com
, notjohnappleseed
) - Password: Use the app-specific password that you generated when you set up the incoming mail server.
That’s about it for that part of the task.
Side note: I may be dating myself a bit here but I chuckled a bit at Apple's continued usage of the me.com
domain for these.
Now, for me, as I mentioned above, I have a ton of filters and labels in Gmail. I use these to separate emails in my inbox and keep certain emails from pinging my phone at all hours - especially marketing emails. I am signed up for some mailing lists because I use the products or services being marketed by those lists, but it’s almost never important enough that I need to see it immediately on my phone. There are also some other filters in place for similar reasons. This is all just a long-winded way to say that the next step is going to be recreating your folders, labels, and filters. This is where things get to be a bit more of a pain in the ass, as Gmail doesn’t offer a way to export these in a way that Apple Mail or Thunderbird can use. Apple Mail particularly sucks for this, as each rule you add has drop downs and shit that you can’t easily use in an automated way.
See, my intention was to export all of my filters from Gmail (you can get an xml
file from Gmail), and then import the rules using that file. This turned out to not be an option, sadly. So, with the help of a friend, I was able to extract only all of the email addresses used in my filters, and with these I can at least just copy/paste to create the new rules. This is a manual process that kind of sucks but what else are you gonna do? You know you ain’t got shit else to do today, and don’t tell me “I have to work” because fuck work.
You can use the following snippet to extract the email addresses from the xml
file generated by Gmail, and write them to a new file. Note: You will want to have yq
installed on your computer. If you have Homebrew installed on your Mac, you can do this with brew install yq
.
$ yq -oy ‘feeed.entry[].property[] | select(.+@name==“from”) | .+value’ filename.xml > newfile.txt
Note: Edit the above command as required for your environment. Specifically, the path and file names.
If you’re using a Windows computer then God have mercy on your soul, because I sure won’t. Just kidding (sort of), you can try using git-bash or WSL (Windows Subsystem for Linux) to install and run Linux-based commands. And if you’re using Linux, what the fuck are you reading this for? You don’t need any of these instructions and probably already did all this like a million years ago, then went and bragged about it on Reddit. Anyway, once you have the list of addresses, you can begin creating your rules. I really just have a major one I want to create, for the mailing lists. I called the Gmail label “lists”, and this basically just created an IMAP folder of the same name. So, once I’ve imported all of my messages (see below), the “lists” folder will show up. Now, I can create the rule.
Apple Mail:
- If mail is open, click on Mail in the Mac menu bar, and then click on Settings. (or, use
cmd+,
if you’re all fancy and use keyboard shortcuts and shit). If Mail isn’t open, well then open it. Then read this item again. - Now, click on Rules, then click on the New Rule button. You should see something like this:
- Give the rule a description that makes sense to you. Don’t ask me what this should be, I’m not your dad.
- Leave the next field set to any, and leave the following fields set to From and contains. Then in the text field, input the email address of the sender (from the file we generated above). Click the plus sign + to the right to add more addresses. Do this until you’ve added all of the addresses from the file above.
- Under Perform the following actions, leave the field as Move message, then in the next field, click and choose the inbox folder you want this rule to move the messages to.
- Boom, done. Rinse and repeat if you want to create other filters. You can read more about this on Apple’s support pages here.
Thunderbird:
- I think they’ve said it best here.
Lastly, I use Hide My Email all the time now for a lot of mailing lists, especially those that offer a discount for signing up. I know you’re tapping on those dumbass Instagram ads that are selling you something you don’t need but absolutely must have. Hide My Email is perfect for this type of guilty consumption. I sign up, get my discount code, make my purchase (if I decide to), and then just deactivate the alias when I no longer need it. Does this make me a bad leftist?
This is a great feature for privacy, and keeps my email address from being stored on servers I have no control over (well, except for Apple’s, anyway). As for creating a rule/filter, if you also use Hide My Email a lot, I checked and it’s possible to filter these on the iCloud webmail interface but alas, the filter I created in the Apple Mail desktop client didn’t seem to work. So, you’ll just want to use the From address for these, as outlined above, I guess. Bummer.
If you have a ton of messages in your old inbox, you can import these as well. This is a bit more of a task, depending upon your provider. If you use Outlook.com or Yahoo! Mail, the iPhone iCloud Mail settings area has an importer you can use. Otherwise, if you use Gmail, you can export your data from Gmail, and then use the “Mbox file” method outlined here on your Mac. You can also import an Mbox file to Thunderbird.
Once you’ve followed those steps, you should have all of your Gmail (or whatever) emails in your shiny new iCloud Mail inbox and other folders. You should also now have the same rules/filters as you had before. The last step is one I can’t really help you out too much with - telling everyone to use this new address instead of your old one. You should update your resume, and go through every online account you use that communicates to you via email and change the address there. This is a process that is a bit painful and completely manual, but unfortunately it’s just the way it works. As I said above, this step will probably take me a long time to complete and I am almost 100% confident that I will miss at least one. But that’s life in this amazing modern world we’ve created for ourselves.
Questions, comments? Please let me know. And don’t be a jerk about it.
title: "Switching email providers from Gmail to iCloud Mail" date: 2024-02-06 draft: false tags: - walkthrough - privacy - platform capitalism - apple