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