Gmvault for Gmail Backups: What It Does and Where It Stands
On this page
Gmvault is a tool for copying Gmail messages to local storage and restoring backed-up messages to Gmail. A SourceForge listing describes it as a free macOS utility that downloads messages and attachments; the listing also says later runs can save messages received since the previous sync. You can use Gmvault to keep a local copy of Gmail, but the available information does not show whether anyone still maintains it or which current systems it supports.
For a different kind of archive, mailmd is a free, open source command-line tool that saves email as Markdown files on your computer, one file per message. It works with Gmail and other mail providers, but it does not restore messages to a mailbox. Choose Gmvault if you need to back up and restore Gmail messages. Choose mailmd if you want files you can read and search with ordinary tools.
What Gmvault does #
According to its macOS listing on SourceForge, Gmvault saves Gmail messages and attachments locally and lets you restore them to the original Gmail account. The listing says each later sync saves messages received since the previous sync. It also says Gmvault can export conversations into other formats, but does not name those formats.
Older user reports describe options for resuming interrupted syncs and restores. A 2012 Hacker News comment discusses a --restart option and reports that Gmail disconnected or throttled some transfers. That is one user's experience from 2012, so it does not show how current versions of Gmail or Gmvault behave.
A 2014 Gmvault user-group thread describes a restore that failed after nearly 20 hours with a broken-pipe error. The user asked whether the restore could resume and whether running a full restore after a quicker restore would create duplicate messages; the excerpt does not provide answers. Test how Gmvault handles large mailboxes and repeated restores before relying on it.
Gmvault’s current status is unclear #
Available sources do not show a current release from Gmvault's maintainers or whether they still maintain it. A community-maintained container project packages Gmvault 1.9.2-beta-1, which its author describes as the latest version they used. The project also says Gmvault relies on Python 2, which has reached end of life and is absent from some modern Linux distributions. The container lets you run that packaged version, but you also have to maintain the container.
Gmail access is another point to check before choosing Gmvault. Google has ended password-based access through older protocols for affected Google Workspace accounts. Google recommends OAuth, a login method that grants an app access without giving it the account password. The available Gmvault information does not confirm whether it supports OAuth or app passwords. If Gmvault reports incorrect credentials, check which sign-in method your account requires and whether Gmvault supports it before treating the error as a password problem.
The available information explains what Gmvault does, but does not establish its current compatibility or reliability when restoring mail. Test a backup and restore with a small amount of mail before depending on it for a full mailbox.
How mailmd compares and when it fits better #
mailmd creates a local folder of Markdown files, with one file per message and headers stored at the top of each file. mailmd turns HTML email into readable Markdown and saves attachments beside each message. It creates directories for folders and years. It also writes an index.jsonl file that scripts can filter. Use --keep-raw to save the original .eml message alongside the Markdown version.
mailmd connects to Gmail through the Gmail API or through IMAP, a protocol for accessing email, with an app password. The Gmail API route requires an OAuth app created in Google Cloud. mailmd also supports other IMAP mailboxes and connects to Outlook.com and Microsoft mailboxes through Microsoft Graph, which is Microsoft’s API for accessing those mailboxes. Its logins request read access, and mail folders open read-only. mailmd does not mark messages as read. It also does not move or delete mail, or send messages.
mailmd is a better fit when you want an archive you can inspect with a text editor. You can also search it with rg or grep, or filter it with jq. You can schedule mailmd sync --quiet to add new messages and update read and starred marks. mailmd never deletes archived files, so a message deleted later from the mailbox remains in the local archive with a marker showing it was deleted on the server. mailmd excludes spam and trash unless you ask it to include them. When mailmd uses IMAP with Gmail, it syncs All Mail, including archived messages.
That file-based archive has limits. mailmd is not a mail client, does not import messages back into a mailbox, and does not convert email to PST or PDF. It also does not free mailbox storage by itself; you must delete mail from the mailbox after keeping a copy if that is your goal. mailmd stores login details outside the archive. Only your user can read them, but mailmd does not encrypt them. mailmd has no built-in search engine; you search the files with other tools.
To try it, install mailmd and run mailmd sync. The mailmd repository gives the installation steps. For Gmail, choose either mailmd connect gmail --client-secret client_secret.json for the Gmail API or mailmd connect imap --email you@example.com for IMAP with an app password.
Free and open source
Try mailmd
mailmd is a free command-line tool that copies your email into Markdown files on your computer, one file per message. It works with any IMAP mailbox, and with Gmail and Outlook through their own APIs.
Install
$ curl -fsSL https://raw.githubusercontent.com/vincentsch/mailmd/main/install.sh | sh
Set it up with your coding agent
Set up mailmd so you can read my email. Use https://github.com/vincentsch/mailmd: read its AGENTS.md and follow the steps. Connect my mailbox and run the first sync. Then show me where the files are.