mirror of
https://gitea.osmocom.org/cellular-infrastructure/osmo-upf.git
synced 2025-10-23 00:02:03 +00:00
* Explicitly chown /var/lib/osmocom to osmocom:osmocom, instead of relying on systemd to do it when the service starts up. This does not work with the systemd versions in debian 10 and almalinux 8. * deb: Use "useradd" instead of the interactive "adduser" perl script from Debian. This makes it consistent with how we do it in rpm, and avoids the dependency on "adduser". * deb: Consistently use tabs through the file, instead of mixing tabs and spaces. * deb: Remove support for the "dpkg-statoverride --list" logic. This seems to be a rather obscure feature to override permissions for certain files or directories, for which it does not seem to be a good idea to make the postinst script less maintainable. Something similar can be achieved by using your own Osmocom config file in a different path with different permissions. Related: OS#4107 Change-Id: Ib129217f6aff713d1d0e7aa831b4b54823e9bade
108 lines
3.1 KiB
RPMSpec
108 lines
3.1 KiB
RPMSpec
#
|
|
# spec file for package osmo-upf
|
|
#
|
|
# Copyright (c) 2017, 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.
|
|
|
|
## Disable LTO for now since it breaks compilation of the tests
|
|
## https://osmocom.org/issues/4113
|
|
%define _lto_cflags %{nil}
|
|
|
|
Name: osmo-upf
|
|
Version: @VERSION@
|
|
Release: 0
|
|
Summary: OsmoUPF: Osmocom User Plane Function
|
|
License: AGPL-3.0-or-later AND GPL-2.0-or-later
|
|
Group: Hardware/Mobile
|
|
URL: https://osmocom.org/projects/osmo-upf
|
|
Source: %{name}-%{version}.tar.xz
|
|
BuildRequires: autoconf-archive
|
|
BuildRequires: automake >= 1.9
|
|
BuildRequires: libtool >= 2
|
|
BuildRequires: lksctp-tools-devel
|
|
BuildRequires: pkgconfig >= 0.20
|
|
%if 0%{?suse_version}
|
|
BuildRequires: systemd-rpm-macros
|
|
%endif
|
|
BuildRequires: pkgconfig(libgtpnl) >= 1.2.0
|
|
BuildRequires: pkgconfig(libnftables) >= 1.0.2
|
|
BuildRequires: pkgconfig(libosmocore) >= 1.6.0
|
|
BuildRequires: pkgconfig(libosmoctrl) >= 1.6.0
|
|
BuildRequires: pkgconfig(libosmovty) >= 1.6.0
|
|
BuildRequires: pkgconfig(libosmo-pfcp) >= 0.1.0
|
|
BuildRequires: pkgconfig(talloc)
|
|
%{?systemd_requires}
|
|
|
|
%description
|
|
OsmoUPF: Osmocom User Plane Function
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
%build
|
|
echo "%{version}" >.tarball-version
|
|
autoreconf -fi
|
|
%configure \
|
|
--docdir=%{_docdir}/%{name} \
|
|
--with-systemdsystemunitdir=%{_unitdir}
|
|
make %{?_smp_mflags}
|
|
|
|
%install
|
|
%make_install
|
|
|
|
%preun
|
|
%if 0%{?suse_version}
|
|
%service_del_preun %{name}.service
|
|
%endif
|
|
|
|
%postun
|
|
%if 0%{?suse_version}
|
|
%service_del_postun %{name}.service
|
|
%endif
|
|
|
|
%pre
|
|
getent group osmocom >/dev/null || groupadd --system osmocom
|
|
getent passwd osmocom >/dev/null || useradd --system --gid osmocom --home-dir /var/lib/osmocom \
|
|
--shell /sbin/nologin --comment "Open Source Mobile Communications" osmocom
|
|
%if 0%{?suse_version}
|
|
%service_add_pre %{name}.service
|
|
%endif
|
|
|
|
%post
|
|
%if 0%{?suse_version}
|
|
%service_add_post %{name}.service
|
|
%endif
|
|
chown osmocom:osmocom /etc/osmocom/osmo-upf.cfg
|
|
chmod 0660 /etc/osmocom/osmo-upf.cfg
|
|
chown root:osmocom /etc/osmocom
|
|
chmod 2775 /etc/osmocom
|
|
mkdir -p /var/lib/osmocom
|
|
chown -R osmocom:osmocom /var/lib/osmocom
|
|
|
|
%check
|
|
make %{?_smp_mflags} check || (find . -name testsuite.log -exec cat {} +)
|
|
|
|
%files
|
|
%license COPYING
|
|
%doc AUTHORS README.md
|
|
%{_bindir}/osmo-upf
|
|
%{_bindir}/osmo-pfcp-tool
|
|
%dir %{_docdir}/%{name}/examples
|
|
%dir %{_docdir}/%{name}/examples/osmo-upf
|
|
%{_docdir}/%{name}/examples/osmo-upf/osmo-upf.cfg
|
|
%{_docdir}/%{name}/examples/osmo-upf/osmo-upf-create-dev.cfg
|
|
%{_docdir}/%{name}/examples/osmo-upf/osmo-upf-mockup.cfg
|
|
%dir %{_sysconfdir}/osmocom
|
|
%config(noreplace) %{_sysconfdir}/osmocom/osmo-upf.cfg
|
|
%{_unitdir}/%{name}.service
|
|
|
|
%changelog
|