mirror of
https://github.com/oxen-io/lokinet.git
synced 2024-11-15 12:13:24 +00:00
193 lines
5.7 KiB
RPMSpec
193 lines
5.7 KiB
RPMSpec
Name: lokinet
|
|
Version: 0.9.9
|
|
Release: 1%{?dist}
|
|
Summary: Lokinet anonymous, decentralized overlay network
|
|
|
|
License: GPLv3+
|
|
URL: https://lokinet.org
|
|
Source0: %{name}-%{version}.src.tar.gz
|
|
|
|
%global sonamever %{version}
|
|
|
|
BuildRequires: cmake
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: libuv-devel
|
|
BuildRequires: unbound-devel
|
|
BuildRequires: libsodium-devel
|
|
BuildRequires: systemd-devel
|
|
BuildRequires: systemd-rpm-macros
|
|
BuildRequires: libcurl-devel
|
|
BuildRequires: jemalloc-devel
|
|
BuildRequires: libsqlite3x-devel
|
|
|
|
# Changes the default dns listener to 127.0.0.1:953 because Fedora's systemd-resolved doesn't like
|
|
# talking to 127.3.2.1:53 for unknown reasons.
|
|
Patch1: default-dns.patch
|
|
|
|
Requires: lokinet-bin = %{version}-%{release}
|
|
%{?systemd_requires}
|
|
|
|
%description
|
|
|
|
Lokinet private, decentralized, market-based, Sybil resistant overlay network
|
|
for the internet. Lokinet uses Oxen Service Nodes as relays to provide
|
|
censorship resistance and privacy for communication between Lokinet network
|
|
clients.
|
|
|
|
This package contains the lokinet configuration and dependencies needed to
|
|
connect to lokinet as a client or SNapp.
|
|
|
|
%package bin
|
|
Summary: Lokinet anonymous, decentralized overlay network -- binaries
|
|
|
|
%description bin
|
|
|
|
This package contains the common binaries for lokinet packages. Most users will
|
|
want to install the lokinet package rather than this one to run lokinet as a
|
|
system service.
|
|
|
|
%package monitor
|
|
Summary: lokinetmon monitoring tool for lokinet
|
|
Requires: python3
|
|
Requires: python3-zmq
|
|
Recommends: lokinet
|
|
|
|
%description monitor
|
|
|
|
This package contains the lokinetmon command-line tool for advanced monitoring
|
|
of a running lokinet instance.
|
|
|
|
%prep
|
|
|
|
%autosetup -p1
|
|
|
|
%build
|
|
|
|
%define cmake_extra_args %{nil}
|
|
%ifarch x86_64
|
|
export CXXFLAGS="%{optflags} -mtune=haswell"
|
|
export CFLAGS="%{optflags} -mtune=haswell"
|
|
%endif
|
|
%ifarch aarch64
|
|
%define cmake_extra_args -DNON_PC_TARGET=ON
|
|
export CXXFLAGS="%{optflags} -march=armv8-a+crc -mtune=cortex-a72"
|
|
export CFLAGS="%{optflags} -march=armv8-a+crc -mtune=cortex-a72"
|
|
%endif
|
|
%ifarch %{arm}
|
|
%define cmake_extra_args -DNON_PC_TARGET=ON
|
|
export CXXFLAGS="%{optflags} -march=armv6 -mtune=cortex-a53 -mfloat-abi=hard -mfpu=vfp"
|
|
export CFLAGS="%{optflags} -march=armv6 -mtune=cortex-a53 -mfloat-abi=hard -mfpu=vfp"
|
|
%endif
|
|
|
|
%undefine __cmake_in_source_build
|
|
%cmake -DFORCE_OXENC_SUBMODULE=ON -DFORCE_OXENMQ_SUBMODULE=ON -DNATIVE_BUILD=OFF -DUSE_AVX2=OFF -DWITH_TESTS=OFF %{cmake_extra_args} -DCMAKE_BUILD_TYPE=Release -DLOKINET_VERSIONTAG=%{release} -DWITH_SETCAP=OFF -DSUBMODULE_CHECK=OFF -DBUILD_SHARED_LIBS=OFF -DBUILD_LIBLOKINET=OFF
|
|
%cmake_build
|
|
|
|
%install
|
|
|
|
%cmake_install
|
|
|
|
install -m755 contrib/py/admin/lokinetmon $RPM_BUILD_ROOT/%{_bindir}/
|
|
install -Dm644 SOURCES/lokinet.service $RPM_BUILD_ROOT/%{_unitdir}/lokinet.service
|
|
install -Dm644 contrib/systemd-resolved/lokinet.rules $RPM_BUILD_ROOT/%{_datadir}/polkit-1/rules.d/50-lokinet.rules
|
|
install -Dm644 SOURCES/dnssec-lokinet.negative $RPM_BUILD_ROOT%{_exec_prefix}/lib/dnssec-trust-anchors.d/lokinet.negative
|
|
install -Dm644 SOURCES/bootstrap.signed $RPM_BUILD_ROOT%{_sharedstatedir}/lokinet/bootstrap.signed
|
|
|
|
|
|
%files
|
|
|
|
%license LICENSE
|
|
%doc readme.*
|
|
%{_datadir}/polkit-1/rules.d/50-lokinet.rules
|
|
%{_unitdir}/lokinet.service
|
|
|
|
%files bin
|
|
|
|
%{_bindir}/lokinet
|
|
%{_bindir}/lokinet-bootstrap
|
|
%{_bindir}/lokinet-vpn
|
|
%{_exec_prefix}/lib/dnssec-trust-anchors.d/lokinet.negative
|
|
%{_sharedstatedir}/lokinet/bootstrap.signed
|
|
|
|
%files monitor
|
|
|
|
%{_bindir}/lokinetmon
|
|
|
|
%pre bin
|
|
|
|
|
|
# Create the _lokinet/_loki user/group
|
|
if ! getent group _loki >/dev/null; then
|
|
groupadd --system _loki
|
|
fi
|
|
if ! getent passwd _lokinet >/dev/null; then
|
|
useradd --badnames --system --home-dir /var/lib/lokinet --group _loki --comment "Lokinet system user" _lokinet
|
|
fi
|
|
|
|
# Make sure the _lokinet user is part of the _loki group (in case it already existed)
|
|
if ! id -Gn _lokinet | grep -qw _loki; then
|
|
usermod _lokinet -g _loki
|
|
fi
|
|
|
|
%post
|
|
|
|
datadir=/var/lib/lokinet
|
|
mkdir -p $datadir
|
|
chown _lokinet:_loki $datadir
|
|
|
|
if ! [ -e /etc/loki/lokinet.ini ]; then
|
|
mkdir -p /etc/loki
|
|
/usr/bin/lokinet -g /etc/loki/lokinet.ini
|
|
chmod 640 /etc/loki/lokinet.ini
|
|
chown _lokinet:_loki /etc/loki/lokinet.ini
|
|
ln -sf /etc/loki/lokinet.ini /var/lib/lokinet/lokinet.ini
|
|
fi
|
|
|
|
%systemd_post lokinet.service
|
|
|
|
%preun
|
|
%systemd_preun lokinet.service
|
|
|
|
%postun
|
|
%systemd_postun lokinet.service
|
|
|
|
%changelog
|
|
* Wed Jun 29 2022 Technical Tumbleweed <necro_nemesis@hotmail.com> - 0.9.9-1
|
|
- bump version
|
|
- cmake flags for no system library search
|
|
- update port patch
|
|
- remove version patch
|
|
|
|
* Wed Nov 17 2021 Technical Tumbleweed <necro_nemesis@hotmail.com> - 0.9.8-1
|
|
- bump version
|
|
|
|
* Wed Oct 20 2021 Technical Tumbleweed <necro_nemesis@hotmail.com> - 0.9.7-1
|
|
- bump version
|
|
|
|
* Thu Sep 09 2021 Jason Rhinelander <jason@imaginary.ca> - 0.9.6-1
|
|
- 0.9.6 release.
|
|
- bundle bootstrap.signed instead of downloading
|
|
- drop default upstream dns patch (fixed in 0.9.6)
|
|
|
|
* Thu Aug 12 2021 Jason Rhinelander <jason@imaginary.ca> - 0.9.5-6
|
|
- Change default dns port from 1053 to 953 so that it is still privileged.
|
|
|
|
* Wed Aug 11 2021 Jason Rhinelander <jason@imaginary.ca> - 0.9.5-5
|
|
- Apply default upstream dns patch from PR #1715
|
|
|
|
* Wed Aug 11 2021 Jason Rhinelander <jason@imaginary.ca> - 0.9.5-4
|
|
- Change default DNS address to 127.0.0.1:1053 because systemd-resolved has trouble with 127.3.2.1
|
|
for unknown reasons.
|
|
- Make it work
|
|
|
|
* Tue Aug 10 2021 Jason Rhinelander <jason@imaginary.ca> - 0.9.5-3
|
|
- Updated for rpm.oxen.io packaging
|
|
- Split into lokinet/lokinet-bin/lokinet-monitor packages
|
|
|
|
* Thu Jul 22 2021 Technical Tumbleweed <necro_nemesis@hotmail.com> Lokinet 0.9.5
|
|
- Build with systemd-resolved and binary lokinet-bootstrap
|
|
|
|
* Sun Mar 07 2021 Technical Tumbleweed <necro_nemesis@hotmail.com> Lokinet 0.8.2
|
|
- First Lokinet RPM
|