Hi all,
The tool we use to build Anki’s official packages is unfortunately no longer being developed, meaning we need to migrate to something else. Rather than opting for something similar to what we’re currently using, I’ve been looking into a somewhat different approach, and it’s now ready for initial testing & feedback.
Previously, releases were made by packaging up all of our Python libraries into a compressed archive, and distributing that. That meant every small update required users to download all of Anki’s dependencies, including the hundreds-of-megabytes Qt. This new approach is closer to Chrome’s installer: it is a small launcher that downloads Anki’s dependencies when launched.
There are some tradeoffs with this approach. The initial run is slower, especially on macOS, as the dependencies need to be downloaded and verified. It also provides no out-of-the-box ‘offline install’ - internet access is required on first run (but after first run, the resulting program files can be copied to other machines if desired).
There are a number of big advantages though:
- It makes it really simple to implement auto-update functionality.
- It makes it much easier for users to make tweaks to their environment (prefer an older Qt? You can easily switch it out with a quick edit to a file)
- It’s much closer to the way devs run Anki during development, reducing the number “works for me” cases
On first run, you should see Anki’s dependencies being downloaded. On Linux, you’ll need to launch Anki from a terminal to see the progress. Subsequent launches require no network access, so you should find Anki launches like normal.
Anki’s dependencies are placed in the following locations:
- Windows: %LOCALAPPDATA%\AnkiProgramFiles
- Mac: ~/Library/Application Support/AnkiProgramFiles
- Linux: ~/.local/share/AnkiProgramFiles
You can recreate the first install case by removing that folder (but downloads are cached separately, so things will be faster the second time round).
I’d appreciate it if you could give it a try, and let us know if you run into any problems. Feedback on the approach in general is welcome too.
Download links:
The Mac and Linux builds should work on both x86 and ARM machines.
I’ll follow-up with some more technical info for the curious.