Loading search…

Explain with AI
Edit this page

Installation

Last updated

Install comic-dl from a release binary or from source.

On this page

Download a build from the GitHub Releases page. It runs on its own — no Python, no Node. Latest release: v0.0.6 is the version these filenames use.

Building from source is the fallback, and the only option on macOS. It needs Python 3.11+ and uv.

pip does not work

pip install comic-dl fails: the name on PyPI belongs to an unrelated project. Use a release binary or build from source.

Check your architecture

Filenames encode the CPU, so find yours first:

$ echo $env:PROCESSOR_ARCHITECTURE   # prints AMD64 or ARM64
$ uname -m

Two answers, and every comic-dl filename is built from one of them:

What you got Your CPU Debian uses Fedora / Arch use
x86_64, AMD64 Intel / AMD amd64 x86_64
aarch64, ARM64 Apple Silicon, Snapdragon, Raspberry Pi arm64 aarch64

Same chips, different spellings.

Which file do I need?

Pick your OS:

comic-dl-0.0.6-windows-amd64.zip     or the bare comic-dl-0.0.6-windows-amd64.exe

x86-64 only. No native ARM64 build — the amd64 one runs emulated.

comic-dl_0.0.6_amd64.deb             x86-64
comic-dl_0.0.6_arm64.deb             ARM64
comic-dl-0.0.6-1.fc44.x86_64.rpm     x86-64
comic-dl-0.0.6-1.fc44.aarch64.rpm    ARM64

Keep the -1.fc44. build marker exactly as written. RHEL compatibility is not guaranteed.

fallen020-comic-dl-0.0.6-1-x86_64.pkg.tar.zst  x86-64

No ARM64 package — build from source there.

Nothing to download. macOS builds are unsigned and unnotarized, so no binary is published. Build from source — the solver uses the built-in WKWebView and needs nothing extra.

Not supported. It may run under Termux from source, but the webview solver has not been validated there. Build the .cbz files on a desktop and copy them across.

Only the version number changes between releases. Artifacts are tested in CI before publication — if one fails to install or run, report it with the release version and operating system.

Install by platform

With the file downloaded, install it:

Unzip it and run comic-dl.exe from a terminal:

$ .\comic-dl.exe self version

Use Windows Terminal — the CLI output uses Unicode glyphs. In classic cmd.exe, run chcp 65001 first.

  • Windows on ARM64: there is no native build; the amd64 binary runs emulated. Build from source for native speed.
  • The webview solver needs the Microsoft Edge WebView2 Runtime. It ships with current Windows versions; if the solver fails to start, install it from Microsoft separately.
$ sudo apt install ./comic-dl_0.0.6_amd64.deb

On ARM64, install the _arm64.deb file instead.

$ sudo dnf install ./comic-dl-0.0.6-1.fc44.x86_64.rpm

Use the exact filename, including the Fedora build marker (-1.fc44.), and substitute .aarch64 for .x86_64 on ARM64. RHEL compatibility is not guaranteed — if dependency resolution fails, build from source.

$ sudo pacman -U fallen020-comic-dl-0.0.6-1-x86_64.pkg.tar.zst

No ARM64 Arch package is provided; on ARM64, build from source.

The AUR package is a different project

The AUR hosts an unrelated package also named comic-dl. Installing it with yay or paru swaps this program out for that one. Get the fallen020-comic-dl-*.pkg.tar.zst file from the release page instead; no AUR entry exists under that name, so helpers never touch it.

If you installed the old comic-dl package (0.0.4 or earlier), switch to the new name:

$ sudo pacman -Rns comic-dl   # remove the old package name
$ sudo pacman -U fallen020-comic-dl-0.0.6-1-x86_64.pkg.tar.zst

Your config, cookies, and library database are untouched.

Needs Python 3.11+ and uv on your PATH:

$ python3 --version
$ uv --version
$ git clone https://github.com/fallen020/comic-dl
$ cd comic-dl
$ uv sync

uv sync creates .venv/ and installs the project with its dependencies. Run it with uv run — the same command works everywhere, Windows PowerShell included:

$ uv run comic-dl self version

For the development environment, with test and lint tooling, use uv sync --extra dev --locked instead.

  • macOS: no binary is published, so build from source. The solver uses the built-in WKWebView; nothing extra to install.
  • Android: not supported. It may run under Termux from source, but this is untested and the webview solver has not been validated there. Build the .cbz files on a desktop and copy them across.

Webview solver libraries (Linux)

The Cloudflare challenge solver ships with the application, and the Debian, Fedora, and Arch packages declare its GTK and WebKit dependencies — installing comic-dl pulls the whole stack in.

A source checkout needs those libraries separately, because the pywebview wheel cannot ship them:

$ sudo apt install python3-gi python3-gi-cairo gir1.2-webkit2-4.1
$ sudo dnf install python3-gobject webkit2gtk4.1
$ sudo pacman -S python-gobject webkit2gtk-4.1

On headless Linux, run under xvfb-run or pass --solver impersonation to skip the webview entirely.

Verify

Check that it runs before your first download:

$ comic-dl self version          # binary install
$ uv run comic-dl self version   # source checkout

Checksums

Every release attaches a SHA256SUMS file. After downloading the package, fetch it from the same release and check the download against it:

$ curl -LO https://github.com/fallen020/comic-dl/releases/download/v0.0.6/SHA256SUMS
$ sha256sum -c SHA256SUMS --ignore-missing

OK means the file matches the published checksum; --ignore-missing skips the release files you did not download.

Shell completions

Completions exist for bash, zsh, fish, and PowerShell. Binary installs put comic-dl on PATH; from a source checkout, prefix with uv run:

# binary install
$ source <(comic-dl completion bash)
# source checkout
$ source <(uv run comic-dl completion bash)
# binary install
$ eval "$(comic-dl completion zsh)"
# source checkout
$ eval "$(uv run comic-dl completion zsh)"
# binary install
$ comic-dl completion fish | source
# source checkout
$ uv run comic-dl completion fish | source
# binary install
> comic-dl completion powershell | Out-String | Invoke-Expression
# source checkout
> uv run comic-dl completion powershell | Out-String | Invoke-Expression

To load completions on every new shell, add the command to your shell startup file: ~/.bashrc, ~/.zshrc, ~/.config/fish/config.fish, or $PROFILE for PowerShell.

Update

comic-dl self update works out how comic-dl was installed and updates it through whichever tool owns that install. It never downgrades, and nothing changes until you confirm:

$ comic-dl self update
  • --check reports the installed and latest versions and changes nothing.
  • -y / --yes skips the confirmation. Without a TTY and without --yes, it refuses rather than running unattended.
  • --channel beta opts into pre-releases.

What it does depends on the install:

Prints the Releases page. The standalone executable does not replace itself yet.

Downloads the .deb for your architecture, then runs sudo apt install --yes on it.

Downloads the .rpm, then runs sudo dnf install --yes on it.

Downloads the .pkg.tar.zst, then runs sudo pacman -U --noconfirm on it.

Runs uv tool upgrade comic-dl.

Prints git pull and uv sync. It never modifies your checkout.

Can I just install the newer package over the old one?

Yes — on Linux that is what self update does anyway, since package managers upgrade in place. If you already downloaded the newer file, install it the same way you installed the first one:

$ sudo apt install ./comic-dl_0.0.6_amd64.deb
$ sudo dnf install ./comic-dl-0.0.6-1.fc44.x86_64.rpm
$ sudo pacman -U fallen020-comic-dl-0.0.6-1-x86_64.pkg.tar.zst

Swap in the version you downloaded. No uninstall first — the package manager upgrades over the existing install, and your config, cookies, and library database are left alone.

Version and Updates covers this in more detail.

Uninstall

Two steps, and only the first removes the program. Your downloads are never touched.

1. Remove the program

Delete the folder you unzipped comic-dl into.

$ sudo apt remove comic-dl
$ sudo dnf remove comic-dl
$ sudo pacman -Rns fallen020-comic-dl
$ rm -rf comic-dl

2. Optionally remove the data

Skip this if you plan to reinstall — keeping the directories means comic-dl library list still knows your series when you come back. comic-dl is already gone at this point, so this is plain file removal. Each platform’s commands remove the config, the cookie jar, the scrape cache, and the library database.

> rmdir /s /q "%LOCALAPPDATA%\comic-dl"

Config, cookies, cache, and library.db all live under %LOCALAPPDATA%\comic-dl on Windows.

$ rm -rf ~/.config/comic-dl         # config.toml + cookies.db
$ rm -rf ~/.cache/comic-dl          # scrape cache
$ rm -rf ~/.local/share/comic-dl    # library.db
$ rm -rf ~/Library/Application\ Support/comic-dl   # config.toml + cookies.db + library.db
$ rm -rf ~/Library/Caches/comic-dl                 # scrape cache

Your downloaded .cbz archives live wherever you told comic-dl to put them — nothing here removes those.

To clear just the cookies and cache without deleting anything, run comic-dl cookie clear and comic-dl cache clear before removing the program. Exact paths, including the $COMIC_DL_CONFIG and $COMIC_DL_DATA_DIR overrides: Privacy.

Next