File open5gs.spec of Package open5gs
#
# spec file for package open5gs
#
# Copyright (c) 2018-2025, Martin Hauke <mardnh@gmx.de>
#
# 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.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%define open5gs_user open5gs
%define open5gs_group open5gs
%define sover 2.7.5
Name: open5gs
Version: 2.7.5
Release: 0
Summary: Open Source based 3GPP EPC (metapackage)
License: AGPL-3.0-only
Group: Productivity/Telephony/Servers
URL: https://open5gs.org
#Git-Clone: https://github.com/open5gs/open5gs.git
Source: https://github.com/open5gs/open5gs/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: open5gs-subprojects.tar.gz
Source2: open5gs-tmpfile
Source3: open5gs-metapackage
Source99: open5gs-rpmlintrc
Patch0: gcc13.patch
BuildRequires: bison
BuildRequires: cmake
BuildRequires: gcc-c++
BuildRequires: flex
BuildRequires: libgcrypt-devel
BuildRequires: pkgconfig(libtins)
BuildRequires: lksctp-tools-devel
BuildRequires: meson
BuildRequires: pkgconfig
BuildRequires: pkgconfig(gnutls)
BuildRequires: pkgconfig(libcurl)
BuildRequires: pkgconfig(libidn)
BuildRequires: pkgconfig(libmicrohttpd)
BuildRequires: pkgconfig(libnghttp2)
BuildRequires: pkgconfig(libmongoc-1.0) >= 1.3.1
BuildRequires: pkgconfig(talloc)
BuildRequires: pkgconfig(yaml-0.1) >= 0.1.4
#
#BuildRequires: pkgconfig(prometheus-client-c)
BuildRequires: pkgconfig(openssl)
BuildRequires: libprom-devel
#
Requires: open5gs-common = %{version}
Requires: open5gs-mme = %{version}
Requires: open5gs-sgwc = %{version}
Requires: open5gs-smf = %{version}
Requires: open5gs-amf = %{version}
Requires: open5gs-sgwu = %{version}
Requires: open5gs-upf = %{version}
Requires: open5gs-hss = %{version}
Requires: open5gs-pcrf = %{version}
Requires: open5gs-nrf = %{version}
Requires: open5gs-ausf = %{version}
Requires: open5gs-udm = %{version}
Requires: open5gs-bsf = %{version}
Requires: open5gs-udr = %{version}
%{?systemd_ordering}
%description
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package contains some core libraries/plugins required by the other
binary packages such as open5gs-{mme,sgwc,sgwu,amf,smf,upf,...}.
%package -n open5gs-common
Summary: Open Source based 3GPP EPC (Shared Files)
Group: Productivity/Telephony/Servers
Requires: logrotate
Requires(pre): shadow
%description -n open5gs-common
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package contains some core libraries/plugins required by the other
binary packages such as open5gs-{mme,sgwc,sgwu,amf,smf,upf,...}.
%package -n open5gs-mme
Summary: Open Source based 3GPP EPC MME (Mobility Management Entity)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-mme
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the MME (Mobility Management Engine), which
terminates the S1 interfaces from the eNodeBs cells in the cellular
network, and interfaces via S11 to the SGW-C as well as via S6a to the
HSS.
%package -n open5gs-sgwc
Summary: Open Source based 3GPP EPC SGW-C (Serving Gateway - Control Plane)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-sgwc
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the SGW-C (Serving Gateway - Control Plane)
which is situated between the MME and PGW. It implements the S11 interface
to the MME, and the S5 interface to the SMF-C.
%package -n open5gs-smf
Summary: Open Source based 3GPP EPC SMF (Session Management Function)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-smf
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the SMF (Session Management Function)
%package -n open5gs-amf
Summary: Open Source based 3GPP EPC AMF (Access and Mobility Management Function)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-amf
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the AMF (Access and Mobility Management Function)
%package -n open5gs-sgwu
Summary: Open Source based 3GPP EPC SGW-U (Serving Gateway - User Plane)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-sgwu
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the SGW-U (Serving Gateway - User Plane)
which is situated between the eNB and UPF. It implements the S1U interface
to the eNB, and the S5U interface to the SMF-U.
%package -n open5gs-upf
Summary: Open Source based 3GPP EPC UPF (User Plane Function)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-upf
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the UPF (User Plane Function)
%package -n open5gs-hss
Summary: Open Source based 3GPP EPC HSS (Home Subscriber Server)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-hss
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the HSS (Home Subscriber Server) element of the
EPC, i.e. the central database of mobile network subscribers, with
their IMSI, MSISDN, cryptographic key materials, service subscription
information, etc. It implements the S6a interface towards the MME
using the DIAMETER protocol.
%package -n open5gs-pcrf
Summary: Open Source based 3GPP EPC PCRF (Policy and Charging Rules Function)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-pcrf
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package contains the PCRF (Policy and Charging Rules Function),
which controls the service quality (QoS) of individual connections and
how to account/charge related traffic. It implements the Gx interface
towards the SMF-C using the DIAMETER protocol.
%package -n open5gs-nrf
Summary: Open Source based 3GPP EPC NRF (Network Repository Function)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-nrf
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the NRF (Network Repository Function)
%package -n open5gs-ausf
Summary: Open Source based 3GPP EPC AUSF (Authentication Server Function)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-ausf
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the AUSF (Authentication Server Function)
%package -n open5gs-udm
Summary: Open Source based 3GPP EPC UDM (Unified Data Management)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-udm
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the UDM (Unified Data Managemement)
%package -n open5gs-pcf
Summary: Open Source based 3GPP EPC PCF (Policy Control Function)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-pcf
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the PCF (Policy Control Function)
%package -n open5gs-nssf
Summary: Open Source based 3GPP EPC NSSF (Network Slice Selection Function)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-nssf
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the NSSF (Network Slice Selection Function)
%package -n open5gs-bsf
Summary: Open Source based 3GPP EPC BSF (Binding Support Function)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-bsf
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the BSF (Binding Support Function)
%package -n open5gs-udr
Summary: Open Source based 3GPP EPC UDR (Unified Data Repository)
Group: Productivity/Telephony/Servers
Requires: open5gs-common = %{version}
%description -n open5gs-udr
Open5GS is a C-language implementation of 5G Core and EPC
Packet Core, i.e. the core network of an NR/LTE network (Release-16)
This package provides the UDR (Unified Data Repository).
%prep
%setup -q
%autopatch -p1
cp %{_sourcedir}/open5gs-metapackage README-metapackage
tar xzf %{SOURCE1} -C subprojects/
%build
# FIXME: you should use %%meson macros
meson build --prefix=%{_prefix} --buildtype=release
ninja -C build
%install
DESTDIR=%{buildroot} ninja -C build install
#
install -d %{buildroot}/%{_sysconfdir}/open5gs
install -d %{buildroot}/%{_sysconfdir}/freeDiameter
install -d %{buildroot}/%{_unitdir}
install -d %{buildroot}%{_localstatedir}/log/open5gs
install -d %{buildroot}/%{_sysconfdir}/logrotate.d
install -m 0644 build/configs/logrotate/open5gs %{buildroot}%{_sysconfdir}/logrotate.d/
install -d -m 0755 %{buildroot}%{_tmpfilesdir}/
install -D -m 0644 %{_sourcedir}/open5gs-tmpfile %{buildroot}%{_tmpfilesdir}/open5gs.conf
#
#install -m 0644 build/configs/freeDiameter/cacert.pem %{buildroot}/%{_sysconfdir}/freeDiameter/
#
install -m 0644 build/configs/open5gs/hss.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/freeDiameter/hss.conf %{buildroot}/%{_sysconfdir}/freeDiameter/
#install -m 0644 build/configs/freeDiameter/hss.cert.pem %{buildroot}/%{_sysconfdir}/freeDiameter/
#install -m 0644 build/configs/freeDiameter/hss.key.pem %{buildroot}/%{_sysconfdir}/freeDiameter/
install -m 0644 build/configs/systemd/open5gs-hssd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/mme.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/freeDiameter/mme.conf %{buildroot}/%{_sysconfdir}/freeDiameter/
#install -m 0644 build/configs/freeDiameter/mme.cert.pem %{buildroot}/%{_sysconfdir}/freeDiameter/
#install -m 0644 build/configs/freeDiameter/mme.key.pem %{buildroot}/%{_sysconfdir}/freeDiameter/
install -m 0644 build/configs/systemd/open5gs-mmed.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/sgwc.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-sgwcd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/sgwu.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-sgwud.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/amf.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-amfd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/upf.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-upfd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/nrf.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-nrfd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/ausf.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-ausfd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/udm.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-udmd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/udr.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-udrd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/udr.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-udrd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/bsf.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-bsfd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/pcrf.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/freeDiameter/pcrf.conf %{buildroot}/%{_sysconfdir}/freeDiameter/
#install -m 0644 build/configs/freeDiameter/pcrf.cert.pem %{buildroot}/%{_sysconfdir}/freeDiameter/
#install -m 0644 build/configs/freeDiameter/pcrf.key.pem %{buildroot}/%{_sysconfdir}/freeDiameter/
install -m 0644 build/configs/systemd/open5gs-pcrfd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/smf.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/freeDiameter/smf.conf %{buildroot}/%{_sysconfdir}/freeDiameter/
#install -m 0644 build/configs/freeDiameter/smf.cert.pem %{buildroot}/%{_sysconfdir}/freeDiameter/
#install -m 0644 build/configs/freeDiameter/smf.key.pem %{buildroot}/%{_sysconfdir}/freeDiameter/
install -m 0644 build/configs/systemd/open5gs-smfd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/nssf.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-nssfd.service %{buildroot}/%{_unitdir}/
#
install -m 0644 build/configs/open5gs/pcf.yaml %{buildroot}/%{_sysconfdir}/open5gs/
install -m 0644 build/configs/systemd/open5gs-pcfd.service %{buildroot}/%{_unitdir}/
%pre -n open5gs-common
# Create open5gs user/group
getent group %{open5gs_group} >/dev/null || %{_sbindir}/groupadd -r %{open5gs_group}
getent passwd %{open5gs_user} >/dev/null || %{_sbindir}/useradd -g %{open5gs_group} -s /bin/false -r -c "%{open5gs_user}" -d /run/open5gs/ %{open5gs_user}
%post -n open5gs-common
%tmpfiles_create %{_tmpfilesdir}/open5gs.conf
/sbin/ldconfig
%postun -n open5gs-common -p /sbin/ldconfig
%pre -n open5gs-hss %service_add_pre open5gs-hssd.service
%post -n open5gs-hss %service_add_post open5gs-hssd.service
%preun -n open5gs-hss %service_del_preun open5gs-hssd.service
%postun -n open5gs-hss %service_del_postun open5gs-hssd.service
#
%pre -n open5gs-mme %service_add_pre open5gs-mmed.service
%post -n open5gs-mme %service_add_post open5gs-mmed.service
%preun -n open5gs-mme %service_del_preun open5gs-mmed.service
%postun -n open5gs-mme %service_del_postun open5gs-mmed.service
#
%pre -n open5gs-pcrf %service_add_pre open5gs-pcrfd.service
%post -n open5gs-pcrf %service_add_post open5gs-pcrfd.service
%preun -n open5gs-pcrf %service_del_preun open5gs-pcrfd.service
%postun -n open5gs-pcrf %service_del_postun open5gs-pcrfd.service
#
%pre -n open5gs-amf %service_add_pre open5gs-amfd.service
%post -n open5gs-amf %service_add_post open5gs-amfd.service
%preun -n open5gs-amf %service_del_preun open5gs-amfd.service
%postun -n open5gs-amf %service_del_postun open5gs-amfd.service
#
%pre -n open5gs-ausf %service_add_pre open5gs-ausfd.service
%post -n open5gs-ausf %service_add_post open5gs-ausfd.service
%preun -n open5gs-ausf %service_del_preun open5gs-ausfd.service
%postun -n open5gs-ausf %service_del_postun open5gs-ausfd.service
#
%pre -n open5gs-nrf %service_add_pre open5gs-nrfd.service
%post -n open5gs-nrf %service_add_post open5gs-nrfd.service
%preun -n open5gs-nrf %service_del_preun open5gs-nrfd.service
%postun -n open5gs-nrf %service_del_postun open5gs-nrfd.service
#
%pre -n open5gs-sgwc %service_add_pre open5gs-sgwcd.service
%post -n open5gs-sgwc %service_add_post open5gs-sgwcd.service
%preun -n open5gs-sgwc %service_del_preun open5gs-sgwcd.service
%postun -n open5gs-sgwc %service_del_postun open5gs-sgwcd.service
#
%pre -n open5gs-sgwu %service_add_pre open5gs-sgwud.service
%post -n open5gs-sgwu %service_add_post open5gs-sgwud.service
%preun -n open5gs-sgwu %service_del_preun open5gs-sgwud.service
%postun -n open5gs-sgwu %service_del_postun open5gs-sgwud.service
#
%pre -n open5gs-smf %service_add_pre open5gs-smfd.service
%post -n open5gs-smf %service_add_post open5gs-smfd.service
%preun -n open5gs-smf %service_del_preun open5gs-smfd.service
%postun -n open5gs-smf %service_del_postun open5gs-smfd.service
#
%pre -n open5gs-udm %service_add_pre open5gs-udmd.service
%post -n open5gs-udm %service_add_post open5gs-udmd.service
%preun -n open5gs-udm %service_del_preun open5gs-udmd.service
%postun -n open5gs-udm %service_del_postun open5gs-udmd.service
#
%pre -n open5gs-udr %service_add_pre open5gs-udrd.service
%post -n open5gs-udr %service_add_post open5gs-udrd.service
%preun -n open5gs-udr %service_del_preun open5gs-udrd.service
%postun -n open5gs-udr %service_del_postun open5gs-udrd.service
#
%pre -n open5gs-upf %service_add_pre open5gs-upfd.service
%post -n open5gs-upf %service_add_post open5gs-upfd.service
%preun -n open5gs-upf %service_del_preun open5gs-upfd.service
%postun -n open5gs-upf %service_del_postun open5gs-upfd.service
#
%pre -n open5gs-pcf %service_add_pre open5gs-pcfd.service
%post -n open5gs-pcf %service_add_post open5gs-pcfd.service
%preun -n open5gs-pcf %service_del_preun open5gs-pcfd.service
%postun -n open5gs-pcf %service_del_postun open5gs-pcfd.service
#
%pre -n open5gs-nssf %service_add_pre open5gs-nssfd.service
%post -n open5gs-nssf %service_add_post open5gs-nssfd.service
%preun -n open5gs-nssf %service_del_preun open5gs-nssfd.service
%postun -n open5gs-nssf %service_del_postun open5gs-nssfd.service
#
%pre -n open5gs-bsf %service_add_pre open5gs-bsfd.service
%post -n open5gs-bsf %service_add_post open5gs-bsfd.service
%preun -n open5gs-bsf %service_del_preun open5gs-bsfd.service
%postun -n open5gs-bsf %service_del_postun open5gs-bsfd.service
%files
%doc README-metapackage
%files -n open5gs-common
%license LICENSE
%doc README.md
%dir %{_sysconfdir}/open5gs
%dir %{_sysconfdir}/freeDiameter
#%%config %{_sysconfdir}/freeDiameter/cacert.pem
%dir %{_localstatedir}/log/open5gs
%config(noreplace) %{_sysconfdir}/logrotate.d/open5gs
%{_tmpfilesdir}/open5gs.conf
%ghost %dir /run/open5gs-mmed
%ghost %dir /run/open5gs-sgwcd
%ghost %dir /run/open5gs-smfd
%ghost %dir /run/open5gs-amfd
%ghost %dir /run/open5gs-sgwud
%ghost %dir /run/open5gs-upfd
%ghost %dir /run/open5gs-hssd
%ghost %dir /run/open5gs-pcrfd
%ghost %dir /run/open5gs-nrfd
%ghost %dir /run/open5gs-ausfd
%ghost %dir /run/open5gs-udmd
%ghost %dir /run/open5gs-udrd
%attr(0750,%{open5gs_user},%{open5gs_group}) %{_var}/log/open5gs
##
%dir %{_libdir}/freeDiameter
%{_libdir}/freeDiameter/dbg_msg_dumps.fdx
%{_libdir}/freeDiameter/dict_dcca.fdx
%{_libdir}/freeDiameter/dict_dcca_3gpp.fdx
%{_libdir}/freeDiameter/dict_mip6i.fdx
%{_libdir}/freeDiameter/dict_nas_mipv6.fdx
%{_libdir}/freeDiameter/dict_nasreq.fdx
%{_libdir}/freeDiameter/dict_rfc5777.fdx
#
%{_libdir}/libfdcore.so
%{_libdir}/libfdcore.so.1.3.2
%{_libdir}/libfdcore.so.7
#
%{_libdir}/libfdproto.so
%{_libdir}/libfdproto.so.1.3.2
%{_libdir}/libfdproto.so.7
#
%{_libdir}/libogsapp.so
%{_libdir}/libogsapp.so.2
%{_libdir}/libogsapp.so.%{sover}
#
%{_libdir}/libogsasn1c-common.so
%{_libdir}/libogsasn1c-common.so.2
%{_libdir}/libogsasn1c-common.so.%{sover}
#
%{_libdir}/libogsasn1c-s1ap.so
%{_libdir}/libogsasn1c-s1ap.so.2
%{_libdir}/libogsasn1c-s1ap.so.%{sover}
#
%{_libdir}/libogscore.so
%{_libdir}/libogscore.so.2
%{_libdir}/libogscore.so.%{sover}
#
%{_libdir}/libogscrypt.so
%{_libdir}/libogscrypt.so.2
%{_libdir}/libogscrypt.so.%{sover}
#
%{_libdir}/libogsdbi.so
%{_libdir}/libogsdbi.so.2
%{_libdir}/libogsdbi.so.%{sover}
#
%{_libdir}/libogsdiameter-common.so
%{_libdir}/libogsdiameter-common.so.2
%{_libdir}/libogsdiameter-common.so.%{sover}
#
%{_libdir}/libogsdiameter-gx.so
%{_libdir}/libogsdiameter-gx.so.2
%{_libdir}/libogsdiameter-gx.so.%{sover}
#
%{_libdir}/libogsdiameter-gy.so
%{_libdir}/libogsdiameter-gy.so.2
%{_libdir}/libogsdiameter-gy.so.%{sover}
#
%{_libdir}/libogsdiameter-rx.so
%{_libdir}/libogsdiameter-rx.so.2
%{_libdir}/libogsdiameter-rx.so.%{sover}
#
%{_libdir}/libogsdiameter-s6a.so
%{_libdir}/libogsdiameter-s6a.so.2
%{_libdir}/libogsdiameter-s6a.so.%{sover}
#
%{_libdir}/libogsdiameter-s6b.so
%{_libdir}/libogsdiameter-s6b.so.2
%{_libdir}/libogsdiameter-s6b.so.%{sover}
#
%{_libdir}/libogsdiameter-swx.so
%{_libdir}/libogsdiameter-swx.so.2
%{_libdir}/libogsdiameter-swx.so.%{sover}
#
%{_libdir}/libogsgtp.so
%{_libdir}/libogsgtp.so.2
%{_libdir}/libogsgtp.so.%{sover}
#
%{_libdir}/libogsmetrics.so
%{_libdir}/libogsmetrics.so.2
%{_libdir}/libogsmetrics.so.%{sover}
#
%{_libdir}/libogspfcp.so
%{_libdir}/libogspfcp.so.2
%{_libdir}/libogspfcp.so.%{sover}
#
%{_libdir}/libogss1ap.so
%{_libdir}/libogss1ap.so.2
%{_libdir}/libogss1ap.so.%{sover}
#
%{_libdir}/libogssctp.so
%{_libdir}/libogssctp.so.2
%{_libdir}/libogssctp.so.%{sover}
#
%{_libdir}/libogsasn1c-ngap.so
%{_libdir}/libogsasn1c-ngap.so.2
%{_libdir}/libogsasn1c-ngap.so.%{sover}
#
%{_libdir}/libogsasn1c-util.so
%{_libdir}/libogsasn1c-util.so.2
%{_libdir}/libogsasn1c-util.so.%{sover}
#
%{_libdir}/libogsipfw.so
%{_libdir}/libogsipfw.so.2
%{_libdir}/libogsipfw.so.%{sover}
#
%{_libdir}/libogsnas-5gs.so
%{_libdir}/libogsnas-5gs.so.2
%{_libdir}/libogsnas-5gs.so.%{sover}
#
%{_libdir}/libogsnas-common.so
%{_libdir}/libogsnas-common.so.2
%{_libdir}/libogsnas-common.so.%{sover}
#
%{_libdir}/libogsnas-eps.so
%{_libdir}/libogsnas-eps.so.2
%{_libdir}/libogsnas-eps.so.%{sover}
#
%{_libdir}/libogsngap.so
%{_libdir}/libogsngap.so.2
%{_libdir}/libogsngap.so.%{sover}
#
%{_libdir}/libogsdiameter-cx.so
%{_libdir}/libogsdiameter-cx.so.2
%{_libdir}/libogsdiameter-cx.so.%{sover}
#
%{_libdir}/libogssbi-openapi.so
%{_libdir}/libogssbi-openapi.so.2
%{_libdir}/libogssbi-openapi.so.%{sover}
#
%{_libdir}/libogssbi.so
%{_libdir}/libogssbi.so.2
%{_libdir}/libogssbi.so.%{sover}
#
/usr/lib64/libogsproto.so
/usr/lib64/libogsproto.so.2
/usr/lib64/libogsproto.so.%{sover}
#
%{_libdir}/libogstun.so
%{_libdir}/libogstun.so.2
%{_libdir}/libogstun.so.%{sover}
#
#
### das gehört da nicht hin
# FIXME
/usr/lib64/libprom.so
/usr/bin/open5gs-scpd
/usr/bin/open5gs-seppd
### /das gehört da nicht hin
%files -n open5gs-mme
%config(noreplace) %{_sysconfdir}/freeDiameter/mme.conf
#%%config(noreplace) %{_sysconfdir}/freeDiameter/mme.cert.pem
#%%config(noreplace) %{_sysconfdir}/freeDiameter/mme.key.pem
%config(noreplace) %{_sysconfdir}/open5gs/mme.yaml
%{_bindir}/open5gs-mmed
%{_unitdir}/open5gs-mmed.service
%files -n open5gs-sgwc
%config(noreplace) %{_sysconfdir}/open5gs/sgwc.yaml
%{_bindir}/open5gs-sgwcd
%{_unitdir}/open5gs-sgwcd.service
%files -n open5gs-smf
%config(noreplace) %{_sysconfdir}/open5gs/smf.yaml
%config(noreplace) %{_sysconfdir}/freeDiameter/smf.conf
#%%config(noreplace) %{_sysconfdir}/freeDiameter/smf.cert.pem
#%%config(noreplace) %{_sysconfdir}/freeDiameter/smf.key.pem
%{_bindir}/open5gs-smfd
%{_unitdir}/open5gs-smfd.service
%files -n open5gs-amf
%config(noreplace) %{_sysconfdir}/open5gs/amf.yaml
%{_bindir}/open5gs-amfd
%{_unitdir}/open5gs-amfd.service
%files -n open5gs-sgwu
%config(noreplace) %{_sysconfdir}/open5gs/sgwu.yaml
%{_bindir}/open5gs-sgwud
%{_unitdir}/open5gs-sgwud.service
%files -n open5gs-upf
%config(noreplace) %{_sysconfdir}/open5gs/upf.yaml
%{_bindir}/open5gs-upfd
# FIXME: configs/systemd/99-open5gs.net* etc/systemd/network
%{_unitdir}/open5gs-upfd.service
%files -n open5gs-hss
%config(noreplace) %{_sysconfdir}/freeDiameter/hss.conf
#%%config(noreplace) %{_sysconfdir}/freeDiameter/hss.cert.pem
#%%config(noreplace) %{_sysconfdir}/freeDiameter/hss.key.pem
%config(noreplace) %{_sysconfdir}/open5gs/hss.yaml
%{_bindir}/open5gs-hssd
%{_unitdir}/open5gs-hssd.service
%files -n open5gs-pcrf
%config(noreplace) %{_sysconfdir}/freeDiameter/pcrf.conf
#%%config(noreplace) %{_sysconfdir}/freeDiameter/pcrf.cert.pem
#%%config(noreplace) %{_sysconfdir}/freeDiameter/pcrf.key.pem
%config(noreplace) %{_sysconfdir}/open5gs/pcrf.yaml
%{_bindir}/open5gs-pcrfd
%{_unitdir}/open5gs-pcrfd.service
%files -n open5gs-nrf
%config(noreplace) %{_sysconfdir}/open5gs/nrf.yaml
%{_bindir}/open5gs-nrfd
%{_unitdir}/open5gs-nrfd.service
%files -n open5gs-ausf
%config(noreplace) %{_sysconfdir}/open5gs/ausf.yaml
%{_bindir}/open5gs-ausfd
%{_unitdir}/open5gs-ausfd.service
%files -n open5gs-udm
%config(noreplace) %{_sysconfdir}/open5gs/udm.yaml
%{_bindir}/open5gs-udmd
%{_unitdir}/open5gs-udmd.service
%files -n open5gs-pcf
%config(noreplace) %{_sysconfdir}/open5gs/pcf.yaml
%{_bindir}/open5gs-pcfd
%{_unitdir}/open5gs-pcfd.service
%files -n open5gs-nssf
%config(noreplace) %{_sysconfdir}/open5gs/nssf.yaml
%{_bindir}/open5gs-nssfd
%{_unitdir}/open5gs-nssfd.service
%files -n open5gs-bsf
%config(noreplace) %{_sysconfdir}/open5gs/bsf.yaml
%{_bindir}/open5gs-bsfd
%{_unitdir}/open5gs-bsfd.service
%files -n open5gs-udr
%config(noreplace) %{_sysconfdir}/open5gs/udr.yaml
%{_bindir}/open5gs-udrd
%{_unitdir}/open5gs-udrd.service
%changelog