Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,10 @@ cr3gui/data/tessdata/
/clang-analyzer-reports/
/thirdparty
/thirdparty_tmp
/obj-x86_64-linux-gnu/
/debian/cr3/
/debian/cr3-dbgsym/
/debian/.debhelper/
/debian/*.substvars
/debian/files
/debian/*.debhelper.log
50 changes: 50 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,53 @@
# CoolReader (fork with updated Debian packaging)

This is a fork of [buggins/coolreader](https://github.com/buggins/coolreader), the official CoolReader e-book reader project.

## What was changed in this fork

The original Debian packaging files (`packages/ubuntu/debian`) were written around 2012 and targeted a long-obsolete toolchain: Qt4, `libpng12`, `libjpeg62`, and the deprecated `cdbs` build system. They no longer build on modern Debian/Ubuntu-based distributions (build dependencies are unavailable in current repositories).

This fork updates the packaging to work with current tooling:

- **Build system**: migrated from `cdbs` to plain `debhelper` (compat level 13) driving the project's existing CMake build, instead of the old `class/cmake.mk` cdbs module.
- **Qt version**: switched the build from Qt4 (`GUI=QT`) to Qt5 (`GUI=QT5`), matching current dependency availability.
- **Dependencies**: updated `debian/control` to current library packages (`libpng-dev`, `libjpeg-dev`, `qtbase5-dev`, `qttools5-dev`, etc.) instead of long-removed ones like `libpng12-0-dev`, `libjpeg62-dev`, `libqt4-dev`.
- **AppStream metadata**: fixed `cr3.appdata.xml` to pass `appstreamcli validate-tree`:
- added a proper `<launchable type="desktop-id">` element (the old bare `<id>` reference is deprecated),
- renamed the component ID to reverse-DNS style (`io.github.buggins.coolreader`) and renamed the file to match (`io.github.buggins.coolreader.appdata.xml`),
- added `<developer>` and `<content_rating>` elements to clear remaining validator hints.
- **Misc cleanup**: fixed an invalid weekday in `debian/changelog`, removed the deprecated `debian/menu` file (the `menu` transitional mechanism is no longer used by modern desktop environments).

The resulting package builds cleanly with `debuild -us -uc -b`, installs without missing dependencies, and passes `lintian` with no warnings.

Pre-built `.deb` packages are available on the [Releases page](../../releases).

---

## CoolReader (форк с обновлённой Debian-упаковкой)

Это форк оригинального проекта [buggins/coolreader](https://github.com/buggins/coolreader) — официального читалки электронных книг CoolReader.

## Что изменено в этом форке

Оригинальные файлы Debian-пакета (`packages/ubuntu/debian`) были написаны около 2012 года и рассчитаны на давно устаревший набор инструментов: Qt4, `libpng12`, `libjpeg62` и устаревшую систему сборки `cdbs`. Из-за этого пакет больше не собирается на современных дистрибутивах на базе Debian/Ubuntu — нужные зависимости уже отсутствуют в актуальных репозиториях.

В этом форке упаковка обновлена под современный инструментарий:

- **Система сборки**: переход с `cdbs` на обычный `debhelper` (уровень совместимости 13), который использует уже имеющуюся в проекте сборку через CMake, вместо старого модуля `class/cmake.mk` из cdbs.
- **Версия Qt**: сборка переведена с Qt4 (`GUI=QT`) на Qt5 (`GUI=QT5`), в соответствии с доступными сейчас зависимостями.
- **Зависимости**: `debian/control` обновлён под актуальные пакеты библиотек (`libpng-dev`, `libjpeg-dev`, `qtbase5-dev`, `qttools5-dev` и т.д.) вместо давно удалённых, таких как `libpng12-0-dev`, `libjpeg62-dev`, `libqt4-dev`.
- **AppStream-метаданные**: файл `cr3.appdata.xml` исправлен так, чтобы проходить проверку `appstreamcli validate-tree`:
- добавлен корректный элемент `<launchable type="desktop-id">` (старая привязка через голый `<id>` считается устаревшей),
- идентификатор компонента переименован в reverse-DNS стиль (`io.github.buggins.coolreader`), файл переименован соответствующим образом (`io.github.buggins.coolreader.appdata.xml`),
- добавлены элементы `<developer>` и `<content_rating>` для устранения оставшихся замечаний валидатора.
- **Прочие правки**: исправлен некорректный день недели в `debian/changelog`, удалён устаревший файл `debian/menu` (переходный механизм `menu` больше не используется современными окружениями рабочего стола).

Итоговый пакет собирается без ошибок командой `debuild -us -uc -b`, устанавливается без недостающих зависимостей и проходит проверку `lintian` без единого предупреждения.

Готовые `.deb`-пакеты доступны на странице [Releases](../../releases).

---

CoolReader 3 - cross platform open source e-book reader
=======================================================

Expand Down
2 changes: 1 addition & 1 deletion cr3qt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ INSTALL( DIRECTORY data/backgrounds DESTINATION share/cr3 )
INSTALL( FILES ${CR3_CHANGELOG} DESTINATION share/doc/cr3 )
INSTALL( FILES ${QM_FILES} DESTINATION share/cr3/i18n )
INSTALL( FILES src/desktop/cr3.desktop DESTINATION share/applications )
INSTALL( FILES src/desktop/cr3.appdata.xml DESTINATION share/metainfo )
INSTALL( FILES src/desktop/io.github.buggins.coolreader.appdata.xml DESTINATION share/metainfo )
INSTALL( FILES src/desktop/cr3.png DESTINATION share/pixmaps )
INSTALL( FILES src/desktop/cr3.xpm DESTINATION share/pixmaps )

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<component type="desktop-application">
<id>cr3.desktop</id>
<id>io.github.buggins.coolreader</id>
<name>CoolReader</name>
<project_license>GPL-2.0</project_license>
<metadata_license>CC0-1.0</metadata_license>
Expand All @@ -21,10 +21,15 @@
Book formatting is customizable using CSS files.
</p>
</description>
<launchable type="desktop-id">cr3.desktop</launchable>
<url type="homepage">https://github.com/buggins/coolreader</url>
<developer id="io.github.buggins">
<name>Vadim Lopatin</name>
</developer>
<content_rating type="oars-1.1" />
<screenshots>
<screenshot type="default">
<image>https://gist.github.com/avsej/eaea5ae3d5ed045261e9f36d2c9964b5/raw/d251fab97400a8d708c01d51018ca7925e75e971/screenshot-2019-02-24_10-09-26.1550992166.png</image>
<image type="source">https://gist.github.com/avsej/eaea5ae3d5ed045261e9f36d2c9964b5/raw/d251fab97400a8d708c01d51018ca7925e75e971/screenshot-2019-02-24_10-09-26.1550992166.png</image>
</screenshot>
</screenshots>
</component>
Loading