Skip to content

Commit

Permalink
Post release cleanup (#473)
Browse files Browse the repository at this point in the history
* Updated readme, some cleanup, added example spec files for openSUSE & Fedora.
* Added missing patches for openSUSE and Fedora.
* Added ecosystem section to readme.
  • Loading branch information
hmatuschek authored Aug 15, 2024
1 parent 7075899 commit 97a84eb
Show file tree
Hide file tree
Showing 8 changed files with 158 additions and 56 deletions.
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ option(BUILD_TESTS "Build test programs" OFF)
option(BUILD_DOCS "Build API documentation" OFF)
option(BUILD_MAN "Build man page for dmrconf" OFF)
option(INSTALL_UDEV_RULES "Install udev rules file." ON)
option(INSTALL_UDEV_PATH "Install path of udev rules file." "/etc/udev/rules.d")
option(INSTALL_BUNDLE "Installs QDMR as an AppBundle under MacOS X" OFF)
option(BUNDLE_PATH "Where to install the MacOS X application bundle." "~/Applications")

Expand Down
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,21 @@ A more [detailed list](https://dm3mat.darc.de/qdmr/#dev) is also available.
* There is also a *Matrix* chat at [#qdmr:darc.de](https://matrix.to/#/#qdmr:darc.de).
* You can also follow me at [mastodon](https://mastodon.radio/@dm3mat), where I usually announce new releases.


## Ecosystem
As *qdmr* gets more and more popular with Linux HAMs, the ecosystem around it grows too. These are
tools, that make your day-to-day useage of *qdmr* easier, by providing features, not covered in
qdmr or dmrconf.

* **[dmrfill](https://github.com/jancona/dmrfill)** -- Automatically extemds a qdmr YAML file with repeaters from a selected region. Get them all with one single command.


## Releases
<a href="https://repology.org/project/qdmr/versions">
<img src="https://repology.org/badge/vertical-allrepos/qdmr.svg" alt="Packaging status" align="right">
</a>

* **[Version 0.12.0](https://github.com/hmatuschek/qdmr/releases/tag/v0.12.0)** -- Added support BTech DR-1801UV (A6, still unstable) and Radioddity GD-73.
* **[Version 0.11.3](https://github.com/hmatuschek/qdmr/releases/tag/v0.11.3)** -- Added proper support for BTech DMR-6X2UV, device specific settings for AnyTone devices, some bugfixes.
* **[Version 0.10.4](https://github.com/hmatuschek/qdmr/releases/tag/v0.10.4)** -- Added support for BTech DM1701, some bugfixes.
* **[Version 0.9.3](https://github.com/hmatuschek/qdmr/releases/tag/v0.9.3)** -- Reworked core library, added support for TyT MD-2017/Retevis RT82, TyT MD-390/Retevis RT8 & TyT MD-UV380.
Expand Down
13 changes: 13 additions & 0 deletions dist/fedora/fix-docbook-xsl-path.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/doc/docbook_man.debian.xsl b/doc/docbook_man.debian.xsl
index f6027aa..6c498bc 100644
--- a/doc/docbook_man.debian.xsl
+++ b/doc/docbook_man.debian.xsl
@@ -5,5 +5,5 @@

<xsl:strip-space elements="*"/>

- <xsl:include href="file:///usr/share/xml/docbook/stylesheet/docbook-xsl/manpages/docbook.xsl"/>
+ <xsl:include href="file:///usr/share/sgml/docbook/xsl-ns-stylesheets/manpages/docbook.xsl"/>
</xsl:stylesheet>


128 changes: 128 additions & 0 deletions dist/fedora/qdmr.spec
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
#
# spec file for package qdmr
#
# Copyright (c) 2021-2023, Martin Hauke <[email protected]>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.


%define sover 0
%define realver 0.12.0
Name: qdmr
Version: %{realver}
Release: 0
Summary: Graphical code-plug programming tool for DMR radios
License: GPL-3.0-or-later
Group: Productivity/Hamradio/Other
URL: https://dm3mat.darc.de/qdmr/
#Git-Clone: https://github.com/hmatuschek/qdmr.git
Source: https://github.com/hmatuschek/qdmr/archive/refs/tags/v%{realver}.tar.gz
Patch0: fix-docbook-xsl-path.patch
BuildRequires: cmake
BuildRequires: docbook5-style-xsl
BuildRequires: xsltproc
BuildRequires: gcc-c++
BuildRequires: hicolor-icon-theme
BuildRequires: pkgconfig
BuildRequires: pkgconfig(Qt5Core)
BuildRequires: pkgconfig(Qt5Network)
BuildRequires: pkgconfig(Qt5Positioning)
BuildRequires: pkgconfig(Qt5SerialPort)
BuildRequires: pkgconfig(Qt5Test)
BuildRequires: pkgconfig(Qt5UiTools)
BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(libusb-1.0)
BuildRequires: pkgconfig(yaml-cpp)


%description
qdmr is a Qt5 application to program DMR radios. DMR is a digital modulation
standard used in amateur and commercial radio. To this end, qdmr is an
alternative codeplug programming software (CPS) that supports several radios
across several manufacturers.

Currently supported devices are:
* Radioddity/Baofeng RD-5R, GD-73, GD-77
* TYT MD-380, MD-390, MD-UV380, MD-UV390, MD-2017
* Retevis RT8, RT3S, RT82
* Open GD77 firmware (GD77, RD-5R & DM-1801)
* AnyTone AT-D868UVE, AT-D878UV, AT-878UVII, AT-D578UV
* BTech DMR-6X2, DM-1701, DR-1801UV

%package -n libdmrconf%{sover}
Summary: Graphical code-plug programming tool for DMR radios
Group: System/Libraries

%description -n libdmrconf%{sover}
qDMR is a simple to use and feature-rich code-plug programming software
(CPS) for cheap DMR radios.

This subpackage contains shared library part of libdmrconf.

%package devel
Summary: Development files for dmrconf
Group: Development/Libraries/C and C++
Requires: libdmrconf%{sover} = %{version}

%description devel
qDMR is a simple to use and feature-rich code-plug programming software
(CPS) for cheap DMR radios.

This subpackage contains libraries and header files for developing
applications that want to make use of libdmrconf.

%prep
%setup -q -n %{name}-%{realver}
%patch 0 -p1

%build
# with 0.12.1: -DBUILD_MAN=ON -DINSTALL_UDEV_PATH=%{buildroot}%{_udevrulesdir}
%cmake -DBUILD_MAN=ON
%cmake_build

%install
%cmake_install
install -d %{buildroot}%{_udevrulesdir}
# FIXME: would be nice to have udev-rules install path configurable via cmake
# (will be there with 0.12.1).
mv %{buildroot}%{_sysconfdir}/udev/rules.d/99-qdmr.rules %{buildroot}%{_udevrulesdir}

%post -n libdmrconf%{sover} -p /sbin/ldconfig
%postun -n libdmrconf%{sover} -p /sbin/ldconfig

%files
%license LICENSE
%doc README.md
%{_bindir}/dmrconf
%{_bindir}/qdmr
%{_udevrulesdir}/99-qdmr.rules
%{_datadir}/applications/qdmr.desktop
%{_datadir}/icons/hicolor/*/qdmr.png
%{_mandir}/man1/dmrconf.1%{?ext_man}
%{_mandir}/man1/qdmr.1%{?ext_man}
%{_datadir}/locale/de/LC_MESSAGES/qdmr_qt.qm
%{_datadir}/locale/en_US/LC_MESSAGES/qdmr_qt.qm
%{_datadir}/locale/sv/LC_MESSAGES/qdmr_qt.qm
%{_datadir}/locale/fr/LC_MESSAGES/qdmr_qt.qm

%files -n libdmrconf%{sover}
%{_libdir}/libdmrconf.so.*

%files devel
%{_includedir}/libdmrconf/
%{_libdir}/libdmrconf.so

%changelog
* Thu Jul 25 2024 Hannes Matuschek <[email protected]>
- Updated to 0.12.0
- added translations
- updated description
- fixed so-version
- adapted from openSUSE spec file
52 changes: 0 additions & 52 deletions dist/qdmr.spec

This file was deleted.

2 changes: 1 addition & 1 deletion lib/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,6 @@ install(FILES ${libdmrconf_MOC_HEADERS} DESTINATION ${CMAKE_INSTALL_FULL_INCLUDE
install(FILES ${PROJECT_BINARY_DIR}/lib/config.h DESTINATION ${CMAKE_INSTALL_FULL_INCLUDEDIR}/libdmrconf)

if (UNIX AND NOT APPLE AND ${INSTALL_UDEV_RULES})
install(FILES "${CMAKE_SOURCE_DIR}/dist/99-qdmr.rules" DESTINATION "/etc/udev/rules.d/")
install(FILES "${CMAKE_SOURCE_DIR}/dist/99-qdmr.rules" DESTINATION ${INSTALL_UDEV_PATH})
endif(UNIX AND NOT APPLE AND ${INSTALL_UDEV_RULES})

2 changes: 2 additions & 0 deletions lib/gd73_interface.hh
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
#include "c7000device.hh"
#include "radiointerface.hh"

/** Implements the communication interface to the GD-73.
* @ingroup gd73 */
class GD73Interface: public C7000Device, public RadioInterface
{
Q_OBJECT
Expand Down
6 changes: 3 additions & 3 deletions snapcraft.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: qdmr

#version: git
#grade: devel
version: 0.11.3
version: 0.12.0
grade: stable

summary: Graphical code-plug programming tool for DMR radios.
Expand All @@ -13,8 +13,8 @@ description: |
* Retevis RT8, RT82, RT3, RT3S, RT84
* Open GD77 firmware (GD77, RD-5R & DM-1801)
* AnyTone AT-D868UVE, AT-D878UV AT-D878UVII, AT-D578UV
* Radioddity GD77, RD-5R
* Baofeng DMR-6X2, DM-1701
* Radioddity GD-73, GD-77, RD-5R
* Baofeng/BTech DMR-6X2, DM-1701, DR-1801UV (A6)
confinement: strict
base: core20
Expand Down

0 comments on commit 97a84eb

Please sign in to comment.