Name: smartdns Version: 46 Release: 5.4027503%{?dist} Summary: Self host a DNS server for best Internet experience Group: Applications/System License: MIT license URL: https://pymumu.github.io/smartdns %undefine _disable_source_fetch Source0: https://github.com/pymumu/smartdns/archive/refs/heads/master.zip Source1: https://github.com/user-attachments/files/18922855/smartdns-with-webui-x86_64.tar.gz Source2: smartdns.logrotate Patch0: 0001-static-build-libssl.a-libcrypto.a-from-openssl-3.5.patch %define debug_package %nil #openssl35 for quic support #libssl.so.3(OPENSSL_3.3.0) BuildRequires: openssl35,make,gcc,clang-libs,clang-devel,zlib-devel BuildRequires: cargo >= 1.85 %description A local DNS server to obtain the fastest website IP for the best Internet experience, support DoT, DoH. %prep %autosetup -p1 -n smartdns-master tar -xvzf %{_sourcedir}/smartdns-with-webui-x86_64.tar.gz --strip-components=1 smartdns/www %build export CPPFLAGS+=" -I/usr/local/openssl35/include" export CFLAGS+=" -I/usr/local/openssl35/include" export LDFLAGS+=" -L/usr/local/openssl35/lib64/" WITH_UI=1 OPTIMIZE_SIZE=1 make %{?_smp_mflags} all %install [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install # #Error source #install -v -m 0644 -D -t /builddir/build/BUILDROOT/smartdns-46-1.el9.x86_64 systemd/smartdns.service #'systemd/smartdns.service' -> '/builddir/build/BUILDROOT/smartdns-46-1.el9.x86_64/smartdns.service' # install -v -m 0644 -D -t $RPM_BUILD_ROOT/usr/lib/systemd/system/ systemd/smartdns.service rm -rf $RPM_BUILD_ROOT/smartdns.service install -v -m 0755 -d $RPM_BUILD_ROOT/var/cache/ install -v -m 0755 -d $RPM_BUILD_ROOT/var/log/smartdns/ install -v -m 0755 -d $RPM_BUILD_ROOT/etc/logrotate.d install -v -m 0755 -d $RPM_BUILD_ROOT/usr/share/smartdns/wwwroot install -v -m 0755 -d $RPM_BUILD_ROOT/usr/lib64/ install -v -m 0644 -D %{_sourcedir}/smartdns.logrotate $RPM_BUILD_ROOT/etc/logrotate.d/smartdns install -v -m 0644 -D plugin/smartdns-ui/target/smartdns_ui.so $RPM_BUILD_ROOT/usr/lib64/smartdns_ui.so cp -r www/* $RPM_BUILD_ROOT/usr/share/smartdns/wwwroot #install -v -m 0644 -D %{_sourcedir}/smartdns.conf $RPM_BUILD_ROOT/etc/smartdns/smartdns.conf.template #install -v -m 0644 -D -t $RPM_BUILD_ROOT/etc/smartdns %{_sourcedir}/smartdns.conf %pre getent group smartdns >/dev/null || groupadd -r smartdns getent passwd smartdns >/dev/null || useradd -s /sbin/nologin -g smartdns -r -b '/home' -d '/home/smartdns' -M -c 'Self host a DNS server for privacy & security' smartdns %post if [ $1 == 1 ];then echo "-------------------------------------------------------" echo "Install Sucessful" echo "service: smartdns.service" echo "port: 53,6080" echo "--------------------------------------------------------" fi %postun %systemd_postun smartdns.service 0 %clean [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT %files %doc LICENSE /etc/default/smartdns /etc/init.d/smartdns %dir %attr(0700,root,root) /etc/smartdns %config(noreplace) /etc/smartdns/smartdns.conf #/etc/smartdns/smartdns.conf.template /usr/lib/systemd/system/smartdns.service /usr/sbin/smartdns %dir /var/cache %dir %attr(0755,smartdns,smartdns) /var/log/smartdns /etc/logrotate.d/smartdns %dir %attr(0755,smartdns,smartdns) /usr/share/smartdns/wwwroot /usr/share/smartdns/wwwroot/* /usr/lib64/smartdns_ui.so