aboutsummaryrefslogtreecommitdiff
path: root/thumbnail/README.md
blob: 5bd876acbb071553d609a5f1e062b358ab81d498 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
# Thumbnail generation tool for `slcl`

This directory defines a separation application to be used in conjunction with
`slcl`, aimed to update the thumbnail database automatically whenever files
are added/removed to/from the database.

### Root permissions

This application requires no `root` permissions. So, in order to avoid the
risk for security bugs, **please do not run this application as `root`**.

## Requirements

- A POSIX environment.
- [`dynstr`](https://gitea.privatedns.org/xavi92/dynstr)
(provided as a `git` submodule).
- MagickCore
- CMake (optional).

### Ubuntu / Debian

#### Mandatory packages

```sh
sudo apt install build-essential libmagickcore-6.q16-dev
```

#### Optional packages

```sh
sudo apt install cmake
```

## How to use
### Build

Similarly to `slcl`, two build environments are provided - feel free to choose
any of them:

- A mostly POSIX-compliant [`Makefile`](Makefile).
- A [`CMakeLists.txt`](CMakeLists.txt).

`thumbnail` can be built using the standard build process:

#### Make

```sh
$ make
```

#### CMake

```sh
$ mkdir build/
$ cmake ..
$ cmake --build .
```

## Usage

This tool only consumes one argument: the directory containing the instance
database, which must be the same used by `slcl`. For example:

```sh
thumbnail ~/my-db
```