b4768be
Name:          modem-manager-gui
b4768be
Summary:       Graphical interface for ModemManager
b4768be
Summary(de):   Grafische Oberfläche für ModemManager
b4768be
Summary(ru):   Графический интерфейс для демона ModemManager
29e635d
c9b0da1
Version:       0.0.19.1
60379d7
Release:       10%{?dist}
b4768be
License:       GPLv3
29e635d
29e635d
URL:           https://linuxonly.ru/page/modem-manager-gui
29e635d
Source0:       http://download.tuxfamily.org/gsf/source/modem-manager-gui-%{version}.tar.gz
b4768be
e8d7c40
# Avoid string truncation
e8d7c40
Patch0: mmgui-fix-strncpy-usage.patch
e8d7c40
9150646
# Upstream patches for memory corruption issues
9150646
# https://bitbucket.org/linuxonly/modem-manager-gui/commits/COMMIT_HASH_GOES_HERE/raw
9150646
Patch1: mmgui-6710bf86869852bb8a9946b628eff5bc1019b5aa.diff
9150646
Patch2: mmgui-83553d042443c71be71533b6b91ee10f228d935f.diff
9150646
2debdd6
%global build_using_meson 0
10c0c96
%global with_ofono 0
10c0c96
dbe1083
BuildRequires: gcc
dbe1083
BuildRequires: desktop-file-utils
7a11663
BuildRequires: gdbm-devel >= 1.10
dbe1083
BuildRequires: gettext
29e635d
BuildRequires: glib2-devel > 2.32.1
29e635d
BuildRequires: gtk3-devel >= 3.4.0
29e635d
BuildRequires: gtkspell3-devel >= 3.0.3
dbe1083
BuildRequires: itstool
29e635d
BuildRequires: libappindicator-gtk3-devel >= 0.4.92
5600873
BuildRequires: libappstream-glib
29e635d
BuildRequires: libnotify-devel >= 0.7.5
dbe1083
BuildRequires: pkgconfig
5600873
BuildRequires: po4a
5600873
2debdd6
%if %{build_using_meson}
2debdd6
BuildRequires: meson
2debdd6
%else
2debdd6
BuildRequires: make
2debdd6
%endif
2debdd6
10c0c96
%if %{with_ofono}
10c0c96
BuildRequires: ofono-devel >= 1.09
10c0c96
%endif
10c0c96
2b3d96f
Requires: filesystem
2b3d96f
Requires: hicolor-icon-theme
2b3d96f
Requires: mobile-broadband-provider-info >= 1.20120614
2b3d96f
Requires: yelp >= 3.10
b4768be
b5dd4a3
Requires: %{name}-cm%{?_isa} = %{version}-%{release}
b5dd4a3
Requires: %{name}-mm%{?_isa} = %{version}-%{release}
7a11663
%if 0%{?rhel} >= 8
7a11663
Suggests: %{name}-cm-NetworkManager%{?_isa} = %{version}-%{release}
b5dd4a3
Suggests: %{name}-mm-ModemManager%{?_isa} = %{version}-%{release}
7a11663
%endif
658e0ed
b4768be
%description
b4768be
This program is a simple graphical interface for Modem Manager 
b4768be
daemon dbus interface.
b4768be
Current features:
b4768be
- View device information: Operator name, Mode, IMEI, IMSI,
b4768be
  Signal level.
b4768be
- Send and receive SMS messages with long massages 
b4768be
  concatenation and store messages in database.
b4768be
- Send USSD requests and read answers in GSM7 and UCS2 formats
b4768be
  converted to system UTF8 charset.
b4768be
- Scan available mobile networks.
b4768be
b4768be
%description -l de
b4768be
Dieses Programm ist eine einfache grafische Oberfläche für
b4768be
die DBus-Schnittstelle des ModemManager-Daemons.
b4768be
Funktionen:
b4768be
- Geräteinformationen anzeigen: Name des Netzanbieters, Modus,
b4768be
  IMEI, IMSI, Signalstärke.
b4768be
- SMS senden und empfangen, Verkettung langer Nachrichten,
b4768be
  Speichern der Nachrichten in der Datenbank.
b4768be
- USSD-Befehle in den Formaten GSM7 und UCS2 senden und
b4768be
  Antworten empfangen, Umwandlung in den UTF-8-Zeichensatz.
b4768be
- Nach verfügbaren Mobilnetzwerken suchen.
b4768be
b4768be
%description -l ru
b4768be
Данная программа является простым графическим интерфейсом для
b4768be
демона Modem Manager, использующим интерфейс dbus.
b4768be
Текущие возможности:
b4768be
- Просмотр информации об устройстве: имени оператора, режима работы,
b4768be
  IMEI, IMSI и уровня сигнала.
b4768be
- Прием и отправка сообщений SMS с объединением длинных сообщений 
b4768be
  и сохранением сообщений в базе данных.
b4768be
- Отправка запросов USSD и прием ответов в кодировках GSM7 и UCS2
b4768be
  с последующей конвертацией в системную кодировку UTF8.
b4768be
- Сканирование доступных мобильных сетей.
b4768be
658e0ed
658e0ed
%package cm-connman
658e0ed
Summary: Use connman to manage connections in %{name}
658e0ed
Requires: connman >= 1.12
658e0ed
Provides: %{name}-cm%{?_isa}
658e0ed
%description cm-connman
658e0ed
Plugin for %{name} allowing to use connman as the connection manager.
658e0ed
658e0ed
%package cm-NetworkManager
10c0c96
Summary: Use NetworkManager to manage connections in %{name}
658e0ed
Requires: NetworkManager >= 0.9.0
60379d7
Requires: %{_bindir}/python3
658e0ed
Provides: %{name}-cm%{?_isa}
658e0ed
%description cm-NetworkManager
b5dd4a3
Plugin for %{name} allowing to use NetworkManager
b5dd4a3
as the connection manager.
658e0ed
658e0ed
%package cm-pppd
658e0ed
Summary: Use pppd to manage connections in %{name}
658e0ed
Requires: ppp >= 2.4.5
658e0ed
Provides: %{name}-cm%{?_isa}
658e0ed
%description cm-pppd
658e0ed
Plugin for %{name} allowing to use pppd as the connection manager.
658e0ed
658e0ed
%package mm-ModemManager
658e0ed
Summary: Use ModemManager to manage modems in %{name}
658e0ed
Requires: ModemManager >= 0.7.0
658e0ed
Provides: %{name}-mm%{?_isa}
658e0ed
%description mm-ModemManager
658e0ed
Plugin for %{name} allowing to use ModemManager as the modem manager.
658e0ed
10c0c96
%if %{with_ofono}
658e0ed
%package mm-ofono
658e0ed
Summary: Use ofono to manage modems in %{name}
658e0ed
Requires: ofono >= 1.09
658e0ed
Provides: %{name}-mm%{?_isa}
658e0ed
%description mm-ofono
658e0ed
Plugin for %{name} allowing to use ofono as the modem manager. 
10c0c96
%endif
658e0ed
658e0ed
b4768be
%prep
b4768be
%setup -q
e8d7c40
%patch0 -p1
9150646
%patch1 -p1
9150646
%patch2 -p1
bf7ec26
sed -e "s/meson_version: '>=0.37'/meson_version: '>=0.38'/" -i meson.build
b4768be
2debdd6
b4768be
%build
2debdd6
%if %{build_using_meson}
2debdd6
    %meson
2debdd6
    %meson_build
2debdd6
%else
2debdd6
    %configure
2debdd6
    %make_build
2debdd6
%endif
2debdd6
b4768be
b4768be
%install
2debdd6
# Override the system RPM macro to force a single-threaded install process.
a7c7e7a
# This is a workaround around bugs in /usr/bin/itstool, which cause it
a7c7e7a
# to behave non-deterministic during pararell builds.
a7c7e7a
%global _smp_mflags -j1
2debdd6
2debdd6
%if %{build_using_meson}
2debdd6
    %meson_install
2debdd6
%else
2debdd6
    %make_install
2debdd6
%endif
a7c7e7a
5600873
%find_lang %{name} --with-gnome
b4768be
658e0ed
# Fix /usr/bin/env usage
60379d7
sed -e 's|/usr/bin/env python3|%{_bindir}/python3|' \
2b3d96f
    -i %{buildroot}%{_sysconfdir}/NetworkManager/dispatcher.d/95-mmgui-timestamp-notifier
2b3d96f
658e0ed
# Remove plugin for obsolete ModemManager version
658e0ed
rm %{buildroot}/%{_libdir}/%{name}/modules/libmodmm_mm06.so
658e0ed
2debdd6
%if !%{with_ofono}
2debdd6
    find %{buildroot} -name '*ofono*' -exec rm '{}' ';'
2debdd6
%endif
2debdd6
2debdd6
b4768be
%check
29e635d
appstream-util validate --nonet %{buildroot}/%{_datadir}/metainfo/*.appdata.xml
b4768be
desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
29e635d
b4768be
b4768be
%files -f %{name}.lang
e032b00
%doc AUTHORS Changelog
e032b00
%license LICENSE
b4768be
%{_bindir}/%{name}
29e635d
%{_datadir}/applications/%{name}.desktop
29e635d
%{_datadir}/icons/hicolor/*/apps/%{name}.png
29e635d
%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
29e635d
%{_datadir}/icons/hicolor/symbolic/apps/%{name}-symbolic.svg
29e635d
%{_datadir}/metainfo/%{name}.appdata.xml
e376e44
%{_datadir}/polkit-1/actions/ru.linuxonly.modem-manager-gui.policy
b4768be
%{_datadir}/%{name}/
658e0ed
%dir %{_libdir}/%{name}/
658e0ed
%dir %{_libdir}/%{name}/modules/
b4768be
%{_mandir}/man1/%{name}.1.*
b4768be
%{_mandir}/*/man1/%{name}.1.*
658e0ed
658e0ed
%files cm-connman
658e0ed
%{_libdir}/%{name}/modules/libmodcm_connman112.so
658e0ed
658e0ed
%files cm-NetworkManager
658e0ed
%{_libdir}/%{name}/modules/libmodcm_nm09.so
29e635d
%{_sysconfdir}/NetworkManager/dispatcher.d/95-mmgui-timestamp-notifier
b4768be
658e0ed
%files cm-pppd
658e0ed
%{_libdir}/%{name}/modules/libmodcm_pppd245.so
658e0ed
658e0ed
%files mm-ModemManager
658e0ed
%{_libdir}/%{name}/modules/libmodmm_mm07.so
658e0ed
10c0c96
%if %{with_ofono}
658e0ed
%files mm-ofono
658e0ed
%{_libdir}/%{name}/modules/libmodmm_ofono109.so
658e0ed
%{_libdir}/ofono/plugins/libmmgui-ofono-history.so*
10c0c96
%endif
658e0ed
658e0ed
b4768be
%changelog
60379d7
* Wed Jun 19 2019 Artur Iwicki <fedora@svgames.pl> - 0.0.19.1-10
60379d7
- Change the -mm-ModemManager dependency from python3 to bindir/python3
60379d7
7a11663
* Mon Jun 17 2019 Artur Iwicki <fedora@svgames.pl> - 0.0.19.1-9
7a11663
- Fix gdbm-devel version requirement
7a11663
- Wrap Suggests: tags with %%if (tag not supported on EPEL7)
7a11663
9150646
* Sat May 25 2019 Artur Iwicki <fedora@svgames.pl> - 0.0.19.1-8
9150646
- Add upstream patches for memory corruption issues
9150646
2debdd6
* Sat Mar 09 2019 Artur Iwicki <fedora@svgames.pl> - 0.0.19.1-7
2debdd6
- Use make instead of meson for building
2debdd6
a7c7e7a
* Tue Feb 05 2019 Artur Iwicki <fedora@svgames.pl> - 0.0.19.1-6
a7c7e7a
- Force the installation phase to be single-threaded
a7c7e7a
10c0c96
* Sun Feb 03 2019 Artur Iwicki <fedora@svgames.pl> - 0.0.19.1-5
10c0c96
- Fix build failures due to Fedora dropping ofono
e8d7c40
- Fix build failures due to strncpy() usages
10c0c96
a57a34d
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.19.1-4
a57a34d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
a57a34d
bf7ec26
* Sun Oct 07 2018 Artur Iwicki <fedora@svgames.pl> - 0.0.19.1-3
bf7ec26
- Fix meson version requirement
bf7ec26
- Add a sleep call to workaround subtly broken meson script
bf7ec26
627d020
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.19.1-2
627d020
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
627d020
c9b0da1
* Sat Apr 28 2018 Artur Iwicki <fedora@svgames.pl> - 0.0.19.1-1
c9b0da1
- Update to new upstream version
c9b0da1
- Remove Patch0 (fix to linker errors) - issues fixed upstream
c9b0da1
b5dd4a3
* Mon Mar 26 2018 Artur Iwicki <fedora@svgames.pl> - 0.0.19-4
b5dd4a3
- Add exact version-release requirement to Requires: %%{name}-cm and -mm
b5dd4a3
- Add line wrapping to -cm-NetworkManager description
b5dd4a3
658e0ed
* Sat Mar 24 2018 Artur Iwicki <fedora@svgames.pl> - 0.0.19-3
658e0ed
- Separate the connection management and the modem management plugins
658e0ed
  into individual packages
658e0ed
658e0ed
* Wed Mar 21 2018 Artur Iwicki <fedora@svgames.pl> - 0.0.19-2
2b3d96f
- Add missing Requires:
2b3d96f
- Fix 95-mmgui-timestamp-notifier using "#!/usr/bin/env python3"
2b3d96f
29e635d
* Tue Mar 20 2018 Artur Iwicki <fedora@svgames.pl> - 0.0.19-1
29e635d
- Update to new upstream release
29e635d
dbe1083
* Sun Feb 18 2018 Artur Iwicki <fedora@svgames.pl> - 0.0.18-8
dbe1083
- Add missing BuildRequires: for gcc
dbe1083
- Order BuildRequires: alphabetically
dbe1083
abbb4c4
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.18-7
abbb4c4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
abbb4c4
5b5b47b
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.18-6
5b5b47b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
5b5b47b
6b03162
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.18-5
6b03162
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
6b03162
fe8a12c
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.18-4
fe8a12c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
fe8a12c
59eae2e
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.0.18-3
59eae2e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
59eae2e
c67fed8
* Sun Oct 18 2015 Mario Blättermann <mario.blaettermann@gmail.com> - 0.0.18-2
81def8e
- New upstream version
81def8e
- Patch1 is obsolete
81def8e
b08166c
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.0.17.1-5
b08166c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
b08166c
214fd40
* Mon May 25 2015 Mario Blättermann <mario.blaettermann@gmail.com> - 0.0.17.1-4
214fd40
- Patch for broken libebook API
214fd40
e032b00
* Fri Jan 02 2015 Mario Blättermann <mario.blaettermann@gmail.com> - 0.0.17.1-3
e032b00
- Reactivate bn_BD locale
e032b00
- Use the %%license macro
e032b00
9e85388
* Thu Sep 18 2014 Mario Blättermann <mariobl@fedoraproject.org> - 0.0.17.1-2
9e85388
- Appdata validation disabled due to vague guidelines
9e85388
5600873
* Thu Sep 18 2014 Mario Blättermann <mariobl@fedoraproject.org> - 0.0.17.1-1
5600873
- New upstream version
5600873
- Added latest translations from Transifex
5600873
- Appdata file validation
5600873
cce74c5
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.0.16-6
cce74c5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
cce74c5
5f9fa57
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.0.16-5
5f9fa57
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
5f9fa57
b4768be
* Fri Jan 03 2014 Mario Blättermann <mariobl@fedoraproject.org> - 0.0.16-4
b4768be
- Remove the bn_BD translation because the locale doesn't exist in Fedora
b4768be
- Added German and Russian man pages
b4768be
b4768be
* Thu Jan 02 2014 Mario Blättermann <mariobl@fedoraproject.org> - 0.0.16-3
b4768be
- Fix folder ownership
b4768be
- Move desktop-file-validate to %%check
b4768be
b4768be
* Sat Dec 28 2013 Mario Blättermann <mariobl@fedoraproject.org> - 0.0.16-2
b4768be
- Added German translation
b4768be
b4768be
* Sat Oct 26 2013 Mario Blättermann <mariobl@fedoraproject.org> 0.0.16-1
b4768be
- New upstream version
b4768be
- Some spec file cleanup
b4768be
b4768be
* Sun Dec 16 2012 Alex <alex@linuxonly.ru>
b4768be
- added additional pictures for 0.0.15 release
b4768be
b4768be
* Wed Aug 08 2012 Alex <alex@linuxonly.ru>
b4768be
- released spec
b4768be