harbour-maree 0.1.0: motore armonico 7 costituenti, 16 porti, ricerca libera (Nominatim+locale), grafico 24/48/72h, EN/IT, preferenze (lingua, porto, unità, intervallo), icone harbour

This commit is contained in:
2026-08-24 13:30:31 +02:00
commit 18c6147d22
21 changed files with 1535 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
[Desktop Entry]
Name=Maree
Name[it_IT]=Maree
Comment=Universal tide predictions
Comment[it_IT]=Previsioni di marea universali
Exec=harbour-maree
Icon=harbour-maree
Type=Application
X-Nemo-Application-Type=silica-qt5
Categories=Utility;
# Profilo SailJail esplicito: senza X-Sailjail la sandbox di Sailfish 5.1 usa
# il profilo default, che nasconde ~/.config/harbour (config non persistente).
# Con OrganizationName/ApplicationName la sandbox rende persistente
# ~/.config/harbour/maree/ (AppConfigLocation). Internet = geocoding
# OpenStreetMap per la ricerca libera delle città.
[X-Sailjail]
Permissions=Internet
OrganizationName=harbour
ApplicationName=maree
+75
View File
@@ -0,0 +1,75 @@
Name: harbour-maree
Summary: Universal tide predictions
Version: 0.1.0
Release: 1
Group: Qt/Qt
License: MIT
URL: https://git.hackatoniclife.com/kaneda/harbour-maree
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
Universal tide predictions for Sailfish OS. Harmonic model
(M2, S2, N2, K1, O1, P1, K2) computed locally: known ports with
realistic constants, plus a free city search (OpenStreetMap
geocoding) that falls back to a synthetic estimate from lat/lon.
English and Italian UI, preferred port, units (m/ft) and chart
range saved in settings.
%changelog
* Fri Aug 21 2026 Carlo Baratto <carlo@carlobaratto.it> - 0.1.0-1
- Prima release: motore armonico a 7 costituenti, 16 porti noti,
ricerca libera delle citta' (Nominatim + dataset locale),
card "porto piu' vicino", grafico 24/48/72 h, fase lunare e
alba/tramonto, lingua EN/IT (catalogo it nel data dir), porto
preferito, unita' e intervallo salvati in QSettings
%prep
%setup -q -n %{name}-%{version}
%build
%qmake5
make %{?_smp_mflags}
# Catalogo di traduzione generato esplicitamente con lrelease (il template
# sailfishapp_i18n non produce il .qm in modo affidabile sul kit 5.1).
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
# Traduzione italiana nel data dir dell'app (il validatore RPM rifiuta
# /usr/share/translations); main.cpp la carica da qui.
mkdir -p %{buildroot}%{_datadir}/%{name}/translations
install -m 0644 %{_builddir}/%{name}_it.qm %{buildroot}%{_datadir}/%{name}/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}/icons/hicolor/128x128/apps/%{name}.png
%{_datadir}/icons/hicolor/172x172/apps/%{name}.png
%{_datadir}/%{name}/qml
%{_datadir}/%{name}/translations/%{name}*.qm