88 lines
3.5 KiB
RPMSpec
88 lines
3.5 KiB
RPMSpec
Name: harbour-calibreweb
|
|
Summary: Client OPDS per Calibre Web
|
|
Version: 0.2.0
|
|
Release: 1
|
|
Group: Qt/Qt
|
|
License: MIT
|
|
URL: https://github.com/kaneda/harbour-calibreweb
|
|
Source0: %{name}-%{version}.tar.gz
|
|
Source1: %{name}.desktop
|
|
|
|
Requires: sailfishsilica-qt5 >= 0.10.9
|
|
BuildRequires: pkgconfig(sailfishapp) >= 1.0.2
|
|
BuildRequires: pkgconfig(Qt5Core)
|
|
BuildRequires: pkgconfig(Qt5Qml)
|
|
BuildRequires: pkgconfig(Qt5Quick)
|
|
BuildRequires: desktop-file-utils
|
|
|
|
%description
|
|
Client per navigare e scaricare libri da un'istanza Calibre Web
|
|
(o dal Content Server di Calibre) tramite il protocollo OPDS.
|
|
Supporta autenticazione di base, ricerca, copertine, download
|
|
in tutti i formati disponibili e lettura EPUB integrata con
|
|
reflow del testo, margini configurabili e posizione salvata
|
|
in locale.
|
|
|
|
%changelog
|
|
* Wed Aug 19 2026 Carlo Baratto <carlo@carlobaratto.it> - 0.2.0-1
|
|
- Selettore lingua nelle impostazioni (System/English/Italiano, applicata al
|
|
riavvio; QTranslator in main.cpp, pattern quill)
|
|
- Fix 'Close book': pop fino alla prima pagina (popTo(null) non affidabile)
|
|
- Localizzazione: lingua di default inglese (qsTr ovunque), catalogo
|
|
italiano harbour-calibreweb_it.ts/.qm installato in /usr/share/translations
|
|
- Fix configurazione persa: file di configurazione unico e fisso
|
|
(/home/nemo/.config/harbour/calibreweb.conf) indipendente dall'utente
|
|
che avvia l'app (launcher nemo / debug SSH defaultuser), con migrazione
|
|
automatica dei valori gia' salvati
|
|
- Lettore EPUB nativo (WebView): capitoli, reflow A-/A+, margini
|
|
configurabili, posizione salvata in locale (QSettings) e ripristinata
|
|
all'apertura
|
|
- Parser EPUB in C++ (ZIP minimale + container/OPF/spine, TOC EPUB2+3)
|
|
- Rimossa la sync server dell'avanzamento (route web con login di
|
|
sessione): resta solo il segno locale
|
|
- URL risolti RFC 3986 (sottopath /calibre non piu raddoppiato),
|
|
copertine validate prima del cache, pagine corrette per Silica 5.1
|
|
- Icone in struttura standard hicolor
|
|
|
|
%prep
|
|
%setup -q -n %{name}-%{version}
|
|
|
|
%build
|
|
%qmake5
|
|
make %{?_smp_mflags}
|
|
|
|
# Translation catalogue: generated explicitly with lrelease (the sailfishapp_i18n
|
|
# template does not produce the .qm reliably on the 5.1 kit). The .ts lives in
|
|
# the source tree; sfdk uses the sources live (shadow build), so locate it
|
|
# across the possible layouts.
|
|
if [ -f %{_builddir}/../%{name}-%{version}/translations/%{name}_it.ts ]; then
|
|
TS=%{_builddir}/../%{name}-%{version}/translations/%{name}_it.ts
|
|
elif [ -f %{_builddir}/%{name}-%{version}/translations/%{name}_it.ts ]; then
|
|
TS=%{_builddir}/%{name}-%{version}/translations/%{name}_it.ts
|
|
elif [ -f %{_builddir}/translations/%{name}_it.ts ]; then
|
|
TS=%{_builddir}/translations/%{name}_it.ts
|
|
else
|
|
echo "ERROR: %{name}_it.ts not found" >&2
|
|
exit 1
|
|
fi
|
|
lrelease "$TS" -qm %{_builddir}/%{name}_it.qm
|
|
|
|
%install
|
|
make install INSTALL_ROOT=%{buildroot}
|
|
mkdir -p %{buildroot}%{_datadir}/applications
|
|
install -m 0644 %{SOURCE1} %{buildroot}%{_datadir}/applications/%{name}.desktop
|
|
desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop || true
|
|
|
|
# Italian translation: installed from the spec, like the desktop file.
|
|
mkdir -p %{buildroot}/usr/share/translations
|
|
install -m 0644 %{_builddir}/%{name}_it.qm %{buildroot}/usr/share/translations/
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%{_bindir}/%{name}
|
|
%{_datadir}/applications/%{name}.desktop
|
|
%{_datadir}/icons/hicolor/86x86/apps/%{name}.png
|
|
%{_datadir}/icons/hicolor/108x108/apps/%{name}.png
|
|
%{_datadir}/%{name}/qml
|
|
/usr/share/translations/%{name}*.qm
|