https://github.com/erueri/oyomu
A command line comic reader and collection manager
https://github.com/erueri/oyomu
cli comics-collection comics-reader epub-reader ocaml terminal
Last synced: about 1 year ago
JSON representation
A command line comic reader and collection manager
- Host: GitHub
- URL: https://github.com/erueri/oyomu
- Owner: EruEri
- License: gpl-3.0
- Created: 2023-07-13T10:48:51.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2025-06-08T23:05:23.000Z (about 1 year ago)
- Last Synced: 2025-06-09T00:18:56.057Z (about 1 year ago)
- Topics: cli, comics-collection, comics-reader, epub-reader, ocaml, terminal
- Homepage: https://codeberg.org/EruEri/oyomu
- Size: 20.5 KB
- Stars: 14
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Oyomu
The source code is now hosted on [Codeberg](https://codeberg.org/EruEri/oyomu)
**oyomu** is a command line comic collection manager and also a comic reader.
Your terminal should at least support one of this format for the page to be somewhat readable:
- Sixels
- Iterm
- Kitty
**oyomu** supports zip archives _(.cbz or .zip)_ and to some
extend epub archives _(.epub)_
### How to use
#### Read
To read comics, use the ```read``` subcommand
By default, it uses the "h" for left and the "l" for right and 'q' for quit
```
$ oyomu read --help
NAME
oyomu-read - Read comics
SYNOPSIS
oyomu read [--pixel=PIXEL_MODE] [OPTION]… …
DESCRIPTION
Read commic
ARGUMENTS
(required)
Archive of the comic. The archives must be zip archive
OPTIONS
-p PIXEL_MODE, --pixel=PIXEL_MODE (absent=symbols)
pixel mode to use to render the images one of 'symbols', 'sixels',
'kitty' or 'iterm'
```
[Demonstration: MacOS iTerm](https://imgur.com/a/7pRl4j1)
#### Collection
The ```collection``` subcommand allows you to handle your collection
````
$ oyomu collection --help
NAME
oyomu-collection - Manage Oyomu collection
SYNOPSIS
oyomu collection COMMAND …
DESCRIPTION
oyomu collection allows you to manager and read your comic collection
COMMANDS
add [OPTION]… …
Add comics to the collection
delete [--all=COMIC] [--encrypt] [OPTION]… []…
Delete comics from collection
init [--encryption] [--force] [OPTION]…
Initialise the comics collection
list [--encrypt] [--name-only] [OPTION]… [SERIE]…
List series in collection
read [--all=COMIC] [--encrypt] [--pixel=PIXEL_MODE] [OPTION]…
[]…
Read comics from collection
````
##### Init
To Initialize the collection use ```ìnit``` subcommand
Oyomu has 2 strategies to store your comic:
- Normal:
- Your comics are stored in your **$XDG_DATA_HOME/oyomu/comics** directory where each folder holds the volumes of the serie
- Encrypted:
- Your comics are stored in your **$XDG_DATA_HOME/oyomu/.scomics** directory and are encrypted with a password that the ```ìnit```
wizard will ask you to set if the option **--encryption** is set
##### Add / Delete / List
- Those subcommands do are respectively add, delete and list comics
##### Read
- You can also read comics within your collection with the ```read``` subcommand of ```oyomu collection```
### Installation
- First you will need to install those opam packages.
```sh
$ opam install dune xdg camlzip cmdliner digestif dune-configurator mirage-crypto yojson ppx_deriving_yojson oepub re
```
- You will also need to install those C libraries:
- [Chafa](https://github.com/hpjansson/chafa)
- Chafa >= 1.12.4 (maybe should work with chafa >= 1.12.0)
- [ImageMagick](https://github.com/imagemagick/imagemagick)
- ImageMagick >= 7.0.0
The C libraries must be found by **pkg-config**
By default the prefix install is `/usr/local`. So oyomu binary is installed in `/usr/local/bin` and the man pages in `/usr/local/share/man`.
But the `make install` rule reacts to 3 variables:
- `PREFIX`:
- default: `/usr/local`
- `BINDIR`:
- default: `$(PREFIX)/bin`
- `MANDIR`:
- default: `$(PREFIX)/share/man`
```sh
$ git clone https://codeberg.org/EruEri/oyomu
$ cd oyomu
$ make
$ make install
```