Initial Comicviewer implementation

This commit is contained in:
burnintuna 2026-07-21 02:12:05 +09:00
commit cb01395612
20 changed files with 4940 additions and 0 deletions

45
README.md Normal file
View file

@ -0,0 +1,45 @@
# Comicviewer
Comicviewer is a GTK4 desktop application for browsing and reading comic image
archives stored locally or on SMB, FTP, and SFTP servers.
The project is currently in early development. It supports saved local, SMB,
FTP, and SFTP locations, complete remote ZIP downloads with an LRU cache,
natural sorting, safe on-demand image decoding and prefetching, single-page and
two-page viewing, continuous vertical scrolling, reading progress, and
XDG-compliant configuration.
## Development dependencies
On CachyOS or Arch Linux:
```sh
sudo pacman -S rust gtk4 sqlite gvfs gvfs-smb
```
Run the application with:
```sh
cargo run
```
GVfs provides the FTP and SFTP backends. `gvfs-smb` adds SMB support. These
services must be installed on the host even when Comicviewer is distributed as
an AppImage.
Application files are stored below the standard XDG configuration, data, and
cache directories. No runtime state is written into the source tree.
## AppImage
The AppImage build uses `linuxdeploy` and `linuxdeploy-plugin-gtk`:
```sh
PATH="/path/to/appimage-tools:$PATH" \
LINUXDEPLOY="/path/to/linuxdeploy-x86_64.AppImage" \
./packaging/build-appimage.sh
```
The resulting file is written to `dist/`. Remote locations still require the
host system's GVfs services and protocol backends, including `gvfs-smb` for
SMB.