Many years ago, Gmail changed their folder structure so some of the IMAP settings tutorials are not correct anymore. Since Windows Live Mail (WLM) auto-configures Gmail, the special folders are automatically determined and they cannot be specified. Please leave Root folder path alone like this:
Basically Gmail decided with the exception of Inbox, which stays at root, all “System labels” goes under the subfolder [Gmail]. However user-created labels (simply called “Labels“) stay at root folder level. For example, I have a user folder called Save enabled for IMAP, the folder tree with the Gmail account looks like this:
Because you cannot specify where the Trash folder is, delete button really mean delete (to a recycle bin that’s purged in 30 days), not archive to a folder.
Also because Gmail is smart enough to save a copy in your [Gmail]/Sent Mail folder if you use their SMTP (out-going mail) server, the “Save copy of sent message in ‘Sent Items’ folder” setting on Windows Live Mail is irrelevant: you cannot choose not to save it.
And yes, I tried it checking this (for other non-Gmail accounts), and confirmed that Gmail is smart enough to save one copy (not one from the SMTP and one executed by the client).
So here’s a summary:
Gmail automatically configures and dictates IMAP’s special folders. You have no choice
No special folder choice means you cannot reroute ‘delete’ to mean archive/move
If you use Gmail’s SMTP server (likely), it will save a copy of outgoing mail to [Gmail]/Sent Mail folder. You cannot turn this off.
“Save copy of sent message in the ‘Sent Items’ folder‘ is irrelevant if you use Gmail’s SMTP server. It will correctly save only one copy of the sent mail.
One thing that 2020 and 2021 taught us is that we’ve foolishly surrendered our data to private companies for harvesting and subjected ourselves to being manipulated (behavior conditioned) by bots (artificial intelligence studying our habits), in exchange for a little convenience having big companies hosting our data (on the cloud) for free.
The conventional wisdom is that something is free without the pains (either hard to use or has advertisement), you are the product to be monetized.
Their house, their rules.
They are the ones who wrote the law, interpret the law, and enforce the laws. The unholy trinity has fused the 3 traditionally separated powers in democracies and became THE almighty.
Of course they bear the consequence of their actions, depending on how much de facto leverage they actually have, which is increases with their size. They are already effectively controlling the government with their extensive lobbying budgets.
Not to mention that we are also rely on their IT security department that are constantly under attack since a centralized target provides a high return on investment in hacking attempts. Bad people only need to hack a big corporation once to steal 100 million+ user data. If the 100 million+ users’ data are scattered on many different servers with different software, configurations and locations, each attack will be much less worthwhile.
In some sense, it’s much safer for less attractive targets (nobodies) to risk security flaws in their own setups because nobody cared to go after them. More importantly, I don’t want to feed a monster with my data that they are going to bite me or other people I support whenever they wanted to.
Here are the basic minimum web services that we’ve become reliant on in our daily lives.
Calendar & Tasks
Contact List (e.g. Phonebook)
In Google ecosystem:
Google Calendar & Google Tasks
Apple (iCloud) uses the standard protocols
Calendar & Tasks: CalDav
Contact List: CardDav
If you are paranoid about full control over your data that nobody (including tech support) can see, you should host your own server (based on the protocols above). But if you are concerned about up-time, these services come pretty standard with most cheap (shared) web hosting plans at around $2/mo.
If your provider uses cPanel (e.g. namecheap), each email account comes with Calendar/Task (CalDav) and Contact List (CardDav) sync services. They typically come with a webmail client like horde/roundcube.
Namecheap has their own dedicated email service, but I think their shared hosting plan is a much better deal unless you really need the ActiveSync (Outlook, but you can do it for free with CalDAVsynchronizer) and the Open-Xchange productivity suite (which looked better than horde webmail client). You can also host websites and WordPress (blogs) with the hosting plan and have a FTP server for your files.
cPanel is the most popular admin panel for shared hosting, but there are companies like Dreamhost that doesn’t use cPanel and do not offer calendar/task and contact sync services natively so watch out.
In Android, I recommend the following setup after trial and error
CalDAV/CardDAV sync adapters (needed for Calendar & Contacts above): DavX5
These are ALL open-source free software (privacy respecting) available from F-droid.org, which do not require login/purchases (please donate). You might see the paid version on Play Store, but it’s just taxing the less adventurous people.
Many fancy email apps that autoconfigures the server for you often harvest your data or do analytics. Be very careful of that. As far as I know FairEmail is the only one that has advanced features comparable to Gmail and doesn’t harvest your data nor charge you.
Remember to turn on Push-IMAP in your email client so it’ll be as responsive as Gmail. In Fairmail, it’s under Settings -> Receive -> When -> Automatically Optimize ON + Always.
I’ve tried a few other Calendar and Tasks app on Google store (such as BusinessCalendar and aCal), and so far the stock Calendar app and Simple Calendar Pro’s built in refresh works correctly with DavX5 sync adapters. The refresh button for the rest did nothing so I had to open DavX5 to manually initiate a refresh if I don’t want to wait 15 minutes (fastest update rate allowed by DavX5).
As for Tasks.org app, it doesn’t use the sync adapter. Instead we directly enter the CalDAV login info with the server link provided by your hosting provider
Namecheap provides a free Dynamic DNS client for Windows but unfortunately the client cannot be run as a service. To manage remote computers, the dynamic DNS update should at least run before any user is logged or we’ll run into a chick-and-egg problem: you want to log in remotely but the IP of the remote computer is not known (mapped/updated) until you logged in.
I initially tried to use sc.exe to create a Windows service but the program lacks a ServiceMain() implementation so the service won’t start:
Turns out there is a way to wrap a Windows executable not designed to be used as a service (without ServiceMain() implementation) and make it run as a service. Use a tool called NSSM – the Non-Sucking Service Manager!
Note that the default setting for “Log on as” is “Local System Account”, which will not work with this free Namecheap Dynamic DNS client. You must set it to “Log on as” an Administrator account.
To start the newly created service without rebooting, do nssm start <servicename>, where <servicename> is replaced by the name you choose for the service.
Note that the ‘Path to executable’ for the newly created service is nssm.exe itself, not directly the DNS update client program (like what it’d be if you create the service through sc.exe instead of nssm.exe). The reason is that nssm.exe is the wrapper that calls the underlying executable.
If you have a domain registered under Namecheap, you dynamically update the IP address to a remote computer at no extra costs. If you use no-ip.com, you have to pay $29.95/yr to use your own domain name.
However, the process is not entirely trivial because Namecheap only offers the dynamic update through its BasicDNS nameserver, which has a few implications
BasicDNS nameserver means you configure the DNS records directly Advanced DNS tab when you manage your domain name. DNS records in the Zone Editor in cPanel is not active with BasicDNS nameserver
If you use the domain name with Namecheap hosting services, you can no longer have everything configured for you (managed in cPanel’s Zone Editor) by choosing Namecheap Web Hosting nameserver. You have to transfer the DNS record in Zone Editor (cPanel) manually to Advanced DNS tab (Namecheap). At minimum, get the IP address of the HTTP server and enter it as the ‘A Record’ for the main/sub-domain.
Setting up subdomain name or root domain name to be used with Dynamic DNS update service is simply entering ‘A Record’ with an any IP address as seed ‘Value’ (subdomains entered as ‘Host’). The value (IP address) will be overwritten by the update service/client.
Namecheap also offer an eye candy called ‘A + Dynamic DNS Record’ which is exactly the same thing but makes it easier for you to remind yourself that the ‘A Record’ is specifically used for dynamic DNS update.
It’s a daunting task if you haven’t done the work to understand how DNS record works since there are lots of new terms to learn.
However, it’s not that hard after you understand what ‘A Record’ does: map the domain name (or its subdomains) to an IP address. All Namecheap did is providing a web server (using REST API that accepts user inputs with certain syntax in the URL) that updates your ‘A Record’ (domain to IP address map).
If you flash a Debian-style Linux live-boot image that’s intended for USB stick on a USB-SSD itself (for speed), it will get stuck at initramfs on boot because unlike USB sticks, USB SSD drives are not considered removable drives, yet the live-boot parameters (scripts) set to search only removable media, hence it cannot find the right device.
The solution is to remove live-media=removable as boot parameter (typically under append initrd). You can do that quickly on each boot by TAB key to modify this key-value pair out of the boot parameters and hit enter.
To make it persistent, you have to edit the scripts where these boot parameter lives. The live USB stick/CD was supposed to be mounted as a read-only volume, so we need to first remount it as writable in order to modify the scripts:
mount -o remount -w /lib/live/mount/medium
Note the -w parameter which means writable. -o means options. -o remount,rw means exercising the remount option as a writable drive (-w is alternate syntax for writable).
Make sure you have root access (to modify these files), and edit these live*.cfg files if it shows up in the following folders:
Hong Kong people who grew up under the British rule (before 1997-07-01) generally respects freedom and genuine democracy (the western kind with separation of powers strictly enforced under the rule-OF-law, not Marxist-Leninsts’ People’s democracy which is the dictatorship of the Soviets).
They fought for freedom and genuine democracy in China in 1989 in response to the Tiananmen Square massacre. 30 years later the very same artists were bought by the Chinese Communist Party to relay their propaganda. It’s scary how many people will sell their souls and their freedom, especially other people’s freedoms, for some ‘easy’ cash (those easy cash has strings attached: you have to obey the CCP. It’s a contract with Satan).
The Chinese Communist Party did the same infiltration plans to America, which the Chinese Communist Party has made the break during the Clinton administration bribing American politicians which opens the door for them to WTO and other international organizations, allowing the evil transnational criminal organization Chinese Communist Party to have more access to trade and use the wealth to destroy and dominate the free world with communism. Time for us to either shoot down the communist party or be slaves of Xi Jin Ping.
For those who want to dive into the details, the infiltration plan is called the ‘Termite strategy‘ by Chinese Communist Party premier Zhou-Enlai: basically it sends infiltrators dressing up as innocent members of the society at all levels to emigrate to the victim country that the Chinese Communist Party wishes to corrupt. It goes as early as the 1940s, and the first attempt to subvert is the 1967 riots of Hong Kong. They did something similar with the underground communists worldwide disguising itself as the black rights movements (which repeats itself as the #BlackLivesMatter movement in 2020). There’s no surprise as the Chinese Communist Party has been sticking with the same plans ever since conception. Everything in between are just (like staying under the radar for a period of growth during Deng and Jiang dynasties) the process of helping them gain power to achieve the same evil goals of world domination by communism.
Here’s the playlist of the charity event “Concert For Democracy In China”.