Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:X0F:branches:network
gnunet
gnunet.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File gnunet.spec of Package gnunet
# # spec file for package gnunet # # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2012 Pascal Bleser <pascal.bleser@opensuse.org> # # 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 https://bugs.opensuse.org/ # %define gnurl gnurl-7.64.1 %define _USER_ gnunet %define _GROUP_ gnunet %define _OTHERGROUP_ gnunetdns Name: gnunet Version: 0.11.4 Release: 0 Summary: Security focused Peer-to-Peer Framework License: GPL-3.0-only Group: Productivity/Networking/File-Sharing URL: http://gnunet.org Source0: ftp://ftp.gnu.org/gnu/gnunet/%{name}-%{version}.tar.gz Source1: ftp://ftp.gnu.org/gnu/gnunet/%{gnurl}.tar.gz Source2: gnunet.service.in Source3: gnunet.sysusers.in Source4: gnunet.tmpfile.in Patch0: gnunet-0.10.1_gnurl.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: gcc BuildRequires: glibc-devel BuildRequires: glpk-devel >= 4.45 BuildRequires: guile-devel >= 2.0 BuildRequires: libadns-devel BuildRequires: libesmtp-devel BuildRequires: libgcrypt-devel >= 1.6 BuildRequires: libmysqlclient-devel >= 5.1 BuildRequires: libtool BuildRequires: libunistring-devel BuildRequires: make BuildRequires: pkgconfig BuildRequires: postgresql-devel >= 8.3 BuildRequires: pkgconfig(gnutls) >= 3.2.12 BuildRequires: pkgconfig(libcares) BuildRequires: pkgconfig(libextractor) >= 0.6.1 BuildRequires: pkgconfig(libidn2) BuildRequires: pkgconfig(libmicrohttpd) >= 0.9.33 BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(sqlite3) >= 3.8 Recommends: %{name}-lang Recommends: %{name}-plugins Recommends: %{name}-storage-backend Provides: gnunetd = %{version} Provides: GNUnet = %{version} Provides: GNUnetd = %{version} %{?systemd_requires} # SECTION Recommend BuildRequires: pkgconfig(libpulse) >= 2.0 BuildRequires: pkgconfig(ogg) >= 1.3.0 BuildRequires: pkgconfig(openssl) >= 1.0 BuildRequires: pkgconfig(opus) >= 1.0.1 # /SECTION %description GNUnet is peer-to-peer framework focusing on security. The first and primary application for GNUnet is anonymous file-sharing. GNUnet is currently developed by a worldwide group of independent free software developers. GNUnet is a part of the GNU project (http://www.gnu.org/). %package devel Summary: Security focused Peer-to-Peer Framework Group: Development/Libraries/C and C++ Requires: lib%{name} = %{version} Requires: libgcrypt-devel >= 1.6 Requires: pkgconfig(gnutls) >= 3.2.12 %description devel GNUnet is peer-to-peer framework focusing on security. The first and primary application for GNUnet is anonymous file-sharing. GNUnet is currently developed by a worldwide group of independent free software developers. This package contains header files and libraries needed to develop application that use %{name}. %package -n lib%{name} Summary: GNUnet libraries Group: System/Libraries %description -n lib%{name} GNUnet is peer-to-peer framework focusing on security. The first and primary application for GNUnet is anonymous file-sharing. GNUnet is currently developed by a worldwide group of independent free software developers. This package contains lib%{name} shared library. %package plugins Summary: GNUnet plugins Group: Productivity/Networking/File-Sharing Requires: %{name} = %{version} %description plugins GNUnet is peer-to-peer framework focusing on security. The first and primary application for GNUnet is anonymous file-sharing. GNUnet is currently developed by a worldwide group of independent free software developers. This package contains plugins for GNUnet services. %package mysql Summary: MySQL Storage Backend for %{name} Group: Productivity/Networking/Other Requires: %{name} = %{version} Provides: %{name}-storage-backend = %{version} %description mysql GNUnet is peer-to-peer framework focusing on security. The first and primary application for GNUnet is anonymous file-sharing. GNUnet is currently developed by a worldwide group of independent free software developers. %package postgresql Summary: PostgreSQL Storage Backend for %{name} Group: Productivity/Networking/Other Requires: %{name} = %{version} Provides: %{name}-storage-backend = %{version} %description postgresql GNUnet is peer-to-peer framework focusing on security. The first and primary application for GNUnet is anonymous file-sharing. GNUnet is currently developed by a worldwide group of independent free software developers. %package sqlite Summary: SQLite Storage Backend for %{name} Group: Productivity/Networking/Other Requires: %{name} = %{version} Provides: %{name}-storage-backend = %{version} %description sqlite GNUnet is peer-to-peer framework focusing on security. The first and primary application for GNUnet is anonymous file-sharing. GNUnet is currently developed by a worldwide group of independent free software developers. %lang_package %prep %setup -q -b1 %patch0 -p1 for _file in %{SOURCE2} %{SOURCE3} %{SOURCE4}; do sed -e 's/@USER@/%{_USER_}/' \ -e 's/@GROUP@/%{_GROUP_}/' \ -e 's/@OTHERGROUP@/%{_OTHERGROUP_}/' \ -e 's|@LIBDIR@|%{_libdir}|' \ < $_file > ${_file##*/} done %build # Build gnurl pushd %{_builddir}/%{gnurl} autoreconf -fiv %configure \ --without-ssl \ --without-libpsl \ --without-librtmp \ --without-libmetalink \ --disable-ftp \ --disable-file \ --disable-ldap \ --disable-rtsp \ --disable-dict \ --disable-telnet \ --disable-dict \ --disable-telnet \ --disable-tftp \ --disable-pop3 \ --disable-imap \ --disable-smb \ --disable-smtp \ --disable-gopher \ --disable-ntlm-wb \ --enable-hidden-symbols \ --enable-threaded-resolver \ --enable-shared=no \ --with-random=/dev/urandom \ --with-ca-bundle=%{_sysconfdir}/ssl/certs/ca-certificates.crt make %{?_smp_mflags} popd # Build gnunet export CPPFLAGS="-I%{_builddir}/%{gnurl}/include" export LIBS="-L%{_builddir}/%{gnurl}/lib/.libs/ -lgnurl" autoreconf -fiv %configure \ --with-gnunetdns=%{grpdns} make %{?_smp_mflags} V=1 \ pkgcfgdir="%{_sysconfdir}/%{name}" %install make DESTDIR=%{buildroot} install \ pkgcfgdir="%{_sysconfdir}/%{name}" # install systemd files install -d %{buildroot}%{_sbindir} ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name} install -Dm 0644 %{name}.service.in %{buildroot}%{_unitdir}/%{name}.service install -Dm 0644 %{name}.tmpfile.in %{buildroot}%{_tmpfilesdir}/%{name}.conf install -Dm 0644 %{name}.sysusers.in %{buildroot}%{_sysusersdir}/%{name}.conf # use a symbolic link instead of patch ln -s %{_sysconfdir}/%{name} %{buildroot}%{_datadir}/%{name}/config.d # set a default configuration file sed -re 's/^ +?# +?(DEFAULTCONFIG)/\1/' \ -i $(grep -rl 'DEFAULTCONFIG\ \?=' %{buildroot}) # create a default configuration cat<<EOF > "%{buildroot}%{_sysconfdir}/%{name}.conf" [path] GNUNET_HOME = %{_localstatedir}/lib/%{name} GNUNET_DATA_HOME = %{_localstatedir}/lib/%{name}/data/ #DEFAULTCONFIG = %{_sysconfdir}/%{name}.conf [arm] SYSTEM_ONLY = YES USER_ONLY = NO EOF # get rid of static libraries find %{buildroot} -type f -name "*.la" -delete -print rm -rf %{buildroot}%{_datadir}/doc/%{name} %find_lang %{name} %pre %service_add_pre %{name}.service %post %service_add_post %{name}.service %tmpfiles_create %{_tmpfilesdir}/%{name}.conf %sysusers_create %{_sysusersdir}/%{name}.conf %install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info} %preun %service_del_preun %{name}.service %postun %service_del_postun %{name}.service %install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info} %post -n lib%{name} -p /sbin/ldconfig %postun -n lib%{name} -p /sbin/ldconfig %files %license COPYING %doc AUTHORS ChangeLog README %{_bindir}/%{name}-arm %{_bindir}/%{name}-ats %{_bindir}/%{name}-auto-share %{_bindir}/%{name}-bcd %{_bindir}/%{name}-bugreport %{_bindir}/%{name}-cadet %{_bindir}/%{name}-config %{_bindir}/%{name}-consensus-profiler %{_bindir}/%{name}-conversation %{_bindir}/%{name}-conversation-test %{_bindir}/%{name}-core %{_bindir}/%{name}-datastore %{_bindir}/%{name}-dht-get %{_bindir}/%{name}-dht-monitor %{_bindir}/%{name}-dht-put %{_bindir}/%{name}-directory %{_bindir}/%{name}-download %{_bindir}/%{name}-ecc %{_bindir}/%{name}-fs %{_bindir}/%{name}-gns %{_bindir}/%{name}-gns-proxy-setup-ca %{_bindir}/%{name}-identity %{_bindir}/%{name}-namecache %{_bindir}/%{name}-namestore %{_bindir}/%{name}-nat %{_bindir}/%{name}-nat-auto %{_bindir}/%{name}-nat-server %{_bindir}/%{name}-nse %{_bindir}/%{name}-peerinfo %{_bindir}/%{name}-peerstore %{_bindir}/%{name}-publish %{_bindir}/%{name}-resolver %{_bindir}/%{name}-revocation %{_bindir}/%{name}-scalarproduct %{_bindir}/%{name}-scrypt %{_bindir}/%{name}-search %{_bindir}/%{name}-secretsharing-profiler %{_bindir}/%{name}-set-profiler %{_bindir}/%{name}-statistics %{_bindir}/%{name}-testbed-profiler %{_bindir}/%{name}-testing %{_bindir}/%{name}-transport %{_bindir}/%{name}-transport-certificate-creation %{_bindir}/%{name}-unindex %{_bindir}/%{name}-uri %{_bindir}/%{name}-vpn %{_bindir}/%{name}-zoneimport %{_datadir}/%{name} # libexec dir %dir %{_libdir}/%{name} %dir %{_libdir}/%{name}/libexec %{_libdir}/%{name}/libexec/%{name}-communicator-unix %{_libdir}/%{name}/libexec/%{name}-daemon-exit %{_libdir}/%{name}/libexec/%{name}-daemon-latency-logger %{_libdir}/%{name}/libexec/%{name}-daemon-pt %{_libdir}/%{name}/libexec/%{name}-daemon-regexprofiler %{_libdir}/%{name}/libexec/%{name}-daemon-testbed-blacklist %{_libdir}/%{name}/libexec/%{name}-daemon-testbed-underlay %{_libdir}/%{name}/libexec/%{name}-daemon-topology %{_libdir}/%{name}/libexec/%{name}-dns2gns %{_libdir}/%{name}/libexec/%{name}-helper-audio-playback %{_libdir}/%{name}/libexec/%{name}-helper-audio-record %{_libdir}/%{name}/libexec/%{name}-helper-dns %{_libdir}/%{name}/libexec/%{name}-helper-exit %{_libdir}/%{name}/libexec/%{name}-helper-fs-publish %{_libdir}/%{name}/libexec/%{name}-helper-nat-client %{_libdir}/%{name}/libexec/%{name}-helper-nat-server %{_libdir}/%{name}/libexec/%{name}-helper-testbed %{_libdir}/%{name}/libexec/%{name}-helper-vpn %{_libdir}/%{name}/libexec/%{name}-namestore-fcfsd %{_libdir}/%{name}/libexec/%{name}-service-arm %{_libdir}/%{name}/libexec/%{name}-service-ats %{_libdir}/%{name}/libexec/%{name}-service-ats-new %{_libdir}/%{name}/libexec/%{name}-service-cadet %{_libdir}/%{name}/libexec/%{name}-service-consensus %{_libdir}/%{name}/libexec/%{name}-service-conversation %{_libdir}/%{name}/libexec/%{name}-service-core %{_libdir}/%{name}/libexec/%{name}-service-datastore %{_libdir}/%{name}/libexec/%{name}-service-dht %{_libdir}/%{name}/libexec/%{name}-service-dns %{_libdir}/%{name}/libexec/%{name}-service-evil-consensus %{_libdir}/%{name}/libexec/%{name}-service-fs %{_libdir}/%{name}/libexec/%{name}-service-gns %{_libdir}/%{name}/libexec/%{name}-service-identity %{_libdir}/%{name}/libexec/%{name}-service-namecache %{_libdir}/%{name}/libexec/%{name}-service-namestore %{_libdir}/%{name}/libexec/%{name}-service-nat %{_libdir}/%{name}/libexec/%{name}-service-nat-auto %{_libdir}/%{name}/libexec/%{name}-service-nse %{_libdir}/%{name}/libexec/%{name}-service-peerinfo %{_libdir}/%{name}/libexec/%{name}-service-peerstore %{_libdir}/%{name}/libexec/%{name}-service-regex %{_libdir}/%{name}/libexec/%{name}-service-resolver %{_libdir}/%{name}/libexec/%{name}-service-revocation %{_libdir}/%{name}/libexec/%{name}-service-scalarproduct-alice %{_libdir}/%{name}/libexec/%{name}-service-scalarproduct-bob %{_libdir}/%{name}/libexec/%{name}-service-scalarproduct-ecc-alice %{_libdir}/%{name}/libexec/%{name}-service-scalarproduct-ecc-bob %{_libdir}/%{name}/libexec/%{name}-service-secretsharing %{_libdir}/%{name}/libexec/%{name}-service-set %{_libdir}/%{name}/libexec/%{name}-service-statistics %{_libdir}/%{name}/libexec/%{name}-service-testbed %{_libdir}/%{name}/libexec/%{name}-service-testbed-logger %{_libdir}/%{name}/libexec/%{name}-service-transport %{_libdir}/%{name}/libexec/%{name}-service-vpn %{_libdir}/%{name}/libexec/%{name}-service-zonemaster %{_libdir}/%{name}/libexec/%{name}-service-zonemaster-monitor %{_libdir}/%{name}/libexec/%{name}-timeout %{_libdir}/%{name}/lib%{name}_plugin_namestore_heap.so %{_libdir}/%{name}/lib%{name}_plugin_peerstore_sqlite.so %dir %{_sysconfdir}/%{name} %config %{_sysconfdir}/%{name}/*.conf %config(noreplace) %{_sysconfdir}/%{name}.conf %{_mandir}/man?/%{name}*.?%{ext_info} %{_infodir}/%{name}*%{ext_info} %{_infodir}/images/ %{_sbindir}/rc%{name} %{_unitdir}/%{name}.service %{_sysusersdir}/%{name}.conf %{_tmpfilesdir}/%{name}.conf %if 0%{?suse_version} < 1500 %dir %{_sysusersdir} %endif %files -n lib%{name} %{_libdir}/lib%{name}*.so.* %files plugins %dir %{_libdir}/%{name}/nss %{_libdir}/%{name}/nss/libnss_gns.so?? %{_libdir}/%{name}/nss/libnss_gns?.so?? %{_libdir}/%{name}/lib%{name}_plugin_ats*.so %{_libdir}/%{name}/lib%{name}_plugin_block*.so %{_libdir}/%{name}/lib%{name}_plugin_datacache_heap.so %{_libdir}/%{name}/lib%{name}_plugin_datastore_heap.so %{_libdir}/%{name}/lib%{name}_plugin_gnsrecord*.so %{_libdir}/%{name}/lib%{name}_plugin_test.so %{_libdir}/%{name}/lib%{name}_plugin_transport*.so %files mysql %{_libdir}/%{name}/lib%{name}_plugin_datastore_mysql.so %files postgresql %{_libdir}/%{name}/lib%{name}_plugin_datacache_postgres.so %{_libdir}/%{name}/lib%{name}_plugin_datastore_postgres.so %{_libdir}/%{name}/lib%{name}_plugin_namecache_postgres.so %{_libdir}/%{name}/lib%{name}_plugin_namestore_postgres.so %files sqlite %{_libdir}/%{name}/lib%{name}_plugin_datacache_sqlite.so %{_libdir}/%{name}/lib%{name}_plugin_datastore_sqlite.so %{_libdir}/%{name}/lib%{name}_plugin_namecache_sqlite.so %{_libdir}/%{name}/lib%{name}_plugin_namestore_sqlite.so %files devel %{_includedir}/%{name} %{_libdir}/pkgconfig/%{name}*.pc %{_libdir}/lib%{name}*.so %files lang -f %{name}.lang %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor