Cannot switch versions

I downloaded and unpacked anki 25.07.4, then executed ./anki:

$ ./anki
Starting Anki 25.07.3...
Qt warning: fromIccProfile: failed size sanity 2
Qt warning: fromIccProfile: failed size sanity 2
2025-07-25 08:11:51,499:INFO:aqt.mediasrv: Serving on http://127.0.0.1:34893
Starting main loop...

I then go to Extras → Switch Anki Versions → [YES]. Anki terminates and restarts v25.07.3:

2025-07-25 08:13:07,784:WARNING:waitress: unhandled close event
$

That’s it. How do I up- or downgrade?

There was a period of time yesterday when the 25.07.4 launcher was on GitHub but the .4 packages had not been uploaded to PyPI yet, so that would explain why you’re seeing .3 there. I presume in your message, you meant that you’re using the Tools>Upgrade/Downgrade menu option? When you run that, no terminal pops up? Here’s the terminals that Anki tries to launch:

What’s the first one that’s available on your system, and does it work properly when you run it yourself?

I just tried again, same behaviour. Im using the Tools → Upgrade/Downgrade option. No terminal opens.

Available terminals on my system are xterm, urxvt, wezterm-gui.

Upgrade from 25.07.2 to 25.07.3 worked as expected: after the terminal opened, I confirmed with return, download started. Version change from 25.07.3 doesn’t work for me: there’s just no version selection dialogue, instead anki just restarts.

Hmm, odd. If you install one of the other terminals listed above urxvt in the file (and confirm it works), does that make any difference to the behaviour you’re seeing?

Edit: when you use Tools>Upgrade/Downgrade, it should create a .want-launcher file in your AnkiProgramFiles folder. Do you see that file there? If you manually create it and then start Anki from a terminal, what happens?

I’ve installed alacritty and verify that it can be executed. There’s a .wanted-launcher file in the AnkiProgramFiles folder. I removed it, started anki and tried to switch versions. Result: Same behaviour – anki quits and starts again. No terminal is launched. There’s a new empty .wanted-launcher file in the AnkiProgramFiles folder.

I presume you mean ‘.want-launcher’. If you see that file in AnkiProgramFiles, and it’s not removed each time you start Anki, then that seems to imply you’re running an older launcher version that 25.07.4. Is it possible you changed launcher version at one point? Does the problem persist if you download the 25.07.4 launcher again, and run it from the untarred folder?

Sorry, I meant .want-launcher. The problem persists with a fresh download of the 25.07.4 launcher.

It seems like I was using the 25.07.3 launcher before and now are using the 25.07.4 launcher. Diff says both files are identical.

Hmm, I’m a bit stumped, as I can’t reproduce the problem on a Linux machine here, and don’t recall of any other reports of this so far. Same behaviour with the 25.07.5 launcher as well? If so, I might need you to try building the launcher locally to figure out why it’s not working in your case.

Same behaviour with 25.07.5. I removed the AnkiProgramFiles folder to force a clean install. Even now, when trying to change versions, anki just restarts.

I can try building the launcher locally. Are there instructions available?

Please start with anki/docs/development.md at main · ankitects/anki · GitHub

To build the launcher:

cd qt/launcher/lin && ./build.sh

If it succeeds, the launcher will be in ../../../out/launcher/

$ ./build.sh
info: downloading component 'rust-std' for 'aarch64-unknown-linux-gnu'
info: installing component 'rust-std' for 'aarch64-unknown-linux-gnu'
    Updating crates.io index
    Updating git repository `https://github.com/ankitects/rust-url.git`
    Updating git repository `https://github.com/ankitects/linkcheck.git`
  Downloaded anyhow v1.0.98
  Downloaded either v1.15.0
...
   Compiling once_cell v1.21.3
   Compiling anyhow v1.0.98
error[E0463]: can't find crate for `std`
  |
  = note: the `aarch64-unknown-linux-gnu` target may not be installed
  = help: consider downloading the target with `rustup target add aarch64-unknown-linux-gnu`

For more information about this error, try `rustc --explain E0463`.
error[E0463]: can't find crate for `core`
  |
  = note: the `aarch64-unknown-linux-gnu` target may not be installed
  = help: consider downloading the target with `rustup target add aarch64-unknown-linux-gnu`

error: could not compile `linux-raw-sys` (lib) due to 1 previous error
warning: build failed, waiting for other jobs to finish...
error: could not compile `cfg-if` (lib) due to 1 previous error
error: could not compile `bitflags` (lib) due to 1 previous error
error: could not compile `option-ext` (lib) due to 1 previous error
error: could not compile `either` (lib) due to 1 previous error
error: could not compile `fastrand` (lib) due to 1 previous error
error: could not compile `snafu` (lib) due to 1 previous error
error: could not compile `once_cell` (lib) due to 1 previous error
error: could not compile `libc` (lib) due to 1 previous error
error: could not compile `camino` (lib) due to 1 previous error
error: could not compile `serde` (lib) due to 1 previous error

$ rustup target add aarch64-unknown-linux-gnu
info: component 'rust-std' for target 'aarch64-unknown-linux-gnu' is up to date

Don’t know why it wants to build for aarch64, I’m on x86_64. Do you have any ideas?

It builds both platforms at once. You should be able to fix it with:

rustup target add aarch64-unknown-linux-gnu

That’s what I already did, as the error message suggested. I hit the same error, though.

Please make sure you run that command from inside the untarred folder, or you may be installing for a different Rust version.

But before we pursue this, would you please try the latest beta launcher? Please enable beta settings and install 25.08b4, and confirm in the about screen you’re on that version. After doing so, please try Tools>Upgrade/Downgrade again. With the latest beta + beta launcher, I’m hoping it will resolve your issue.

25.08b4 resolves the issues, thanks!

2 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.