diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..cbb3a13
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*.rpm
+*.log
+*spec-20*
+*.tar.gz
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..f043556
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,21 @@
+# Makefile for source rpm: smeserver-rsyncd
+# $Id: Makefile,v 1.1 2021/04/02 22:54:23 jpp Exp $
+NAME := smeserver-rsyncd
+SPECFILE = $(firstword $(wildcard *.spec))
+
+define find-makefile-common
+for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
+endef
+
+MAKEFILE_COMMON := $(shell $(find-makefile-common))
+
+ifeq ($(MAKEFILE_COMMON),)
+# attept a checkout
+define checkout-makefile-common
+test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
+endef
+
+MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
+endif
+
+include $(MAKEFILE_COMMON)
diff --git a/README.md b/README.md
index 5ce5059..d7b571d 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,16 @@
-# smeserver-rsyncd
+#
smeserver-rsyncd
-SMEServer Koozali developed git repo for smeserver-rsyncd smecontribs
\ No newline at end of file
+SMEServer Koozali developed git repo for smeserver-rsyncd smecontribs
+
+## Wiki
+
https://wiki.koozali.org/Rsyncd
+
https://wiki.koozali.org/Rsyncd_setup_on_a_windows_computer_for_use_with_Affa_backup
+
+## Bugzilla
+Show list of outstanding bugs: [here](https://bugs.koozali.org/buglist.cgi?component=smeserver-rsyncd&product=SME%20Contribs&query_format=advanced&limit=0&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=CONFIRMED)
+
+## Description
+
+
*This description has been generated by an LLM AI system and cannot be relied on to be fully correct.*
+*Once it has been checked, then this comment will be deleted*
+
diff --git a/contriborbase b/contriborbase
new file mode 100644
index 0000000..9b7fd51
--- /dev/null
+++ b/contriborbase
@@ -0,0 +1 @@
+contribs10
diff --git a/createlinks b/createlinks
new file mode 100644
index 0000000..664040c
--- /dev/null
+++ b/createlinks
@@ -0,0 +1,13 @@
+#!/usr/bin/perl -w
+
+use esmith::Build::CreateLinks qw(:all);
+
+
+my $event ="smeserver-rsyncd-update";
+
+safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/rsyncd");
+event_link("systemd-reload", $event, "89");
+event_link("systemd-default", $event, "88");
+
+templates2events("/etc/rsyncd.conf", ($event, qw(pre-backup bootstrap-console-save remoteaccess-update) ) );
+templates2events("/etc/xinet.d/rsync", ($event, qw(pre-backup bootstrap-console-save remoteaccess-update) ) );
diff --git a/root/etc/e-smith/db/configuration/defaults/rsyncd/TCPPort b/root/etc/e-smith/db/configuration/defaults/rsyncd/TCPPort
new file mode 100644
index 0000000..d6cf73b
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/defaults/rsyncd/TCPPort
@@ -0,0 +1 @@
+873
diff --git a/root/etc/e-smith/db/configuration/defaults/rsyncd/access b/root/etc/e-smith/db/configuration/defaults/rsyncd/access
new file mode 100644
index 0000000..3e18ebf
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/defaults/rsyncd/access
@@ -0,0 +1 @@
+private
diff --git a/root/etc/e-smith/db/configuration/defaults/rsyncd/status b/root/etc/e-smith/db/configuration/defaults/rsyncd/status
new file mode 100644
index 0000000..86981e6
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/defaults/rsyncd/status
@@ -0,0 +1 @@
+enabled
diff --git a/root/etc/e-smith/db/configuration/defaults/rsyncd/type b/root/etc/e-smith/db/configuration/defaults/rsyncd/type
new file mode 100644
index 0000000..24e1098
--- /dev/null
+++ b/root/etc/e-smith/db/configuration/defaults/rsyncd/type
@@ -0,0 +1 @@
+service
diff --git a/root/etc/e-smith/templates/etc/rsyncd.conf/10global b/root/etc/e-smith/templates/etc/rsyncd.conf/10global
new file mode 100644
index 0000000..36ea55d
--- /dev/null
+++ b/root/etc/e-smith/templates/etc/rsyncd.conf/10global
@@ -0,0 +1,17 @@
+# Global Configuration for rsync daedmon on KOOZALI SME SERVER
+
+port = {$rsyncd{'TCPPort'} || '873'}
+max connections = {$rsyncd{'MaxConnections'} || '20'}
+transfer logging = yes
+strict modes = {$rsyncd{'StrictMode'} || 'yes'}
+reverse lookup = {$rsyncd{'Reverse'} || 'no'}
+timeout = {$rsyncd{'Timeout'} || '900'}
+ignore nonreadable = {$rsyncd{'IgnoreNonreadable'} || 'yes'}
+use chroot = {$rsyncd{'Chroot'} || 'yes'}
+read only = {$rsyncd{'ReadOnly'} || 'yes'}
+dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
+list = {$rsyncd{'List'} || 'yes'}
+motd file = /etc/rsyncd.motd
+log file = /var/log/rsyncd.log
+uid = nobody
+gid = nobody
diff --git a/root/etc/e-smith/templates/etc/xinetd.d/rsync/10config b/root/etc/e-smith/templates/etc/xinetd.d/rsync/10config
new file mode 100644
index 0000000..69f0127
--- /dev/null
+++ b/root/etc/e-smith/templates/etc/xinetd.d/rsync/10config
@@ -0,0 +1,15 @@
+
+# KOOZALI SME SERVER : we run the rsyncd.service as a deamon, please do not use xinetd for rsync on demand
+# default: off
+# description: The rsync server is a good addition to an ftp server, as it # allows crc checksumming etc.
+service rsync
+\{
+ disable = yes
+ socket_type = stream
+ wait = no
+ user = root
+ server = /usr/bin/rsync
+ server_args = --daemon
+ log_on_failure += USERID
+\}
+
diff --git a/root/etc/rsyncd.motd b/root/etc/rsyncd.motd
new file mode 100644
index 0000000..6821de4
--- /dev/null
+++ b/root/etc/rsyncd.motd
@@ -0,0 +1 @@
+Welcome !
diff --git a/root/usr/lib/systemd/system/rsyncd.service.d/51-koozali.conf b/root/usr/lib/systemd/system/rsyncd.service.d/51-koozali.conf
new file mode 100644
index 0000000..aa4f147
--- /dev/null
+++ b/root/usr/lib/systemd/system/rsyncd.service.d/51-koozali.conf
@@ -0,0 +1,2 @@
+[Install]
+WantedBy=sme-server.target
diff --git a/smeserver-rsyncd.spec b/smeserver-rsyncd.spec
new file mode 100644
index 0000000..2908941
--- /dev/null
+++ b/smeserver-rsyncd.spec
@@ -0,0 +1,97 @@
+%define name smeserver-rsyncd
+%define version 1.0
+%define release 2
+Summary: SMEserver rpm for rsyncd
+Name: %{name}
+Version: %{version}
+Release: %{release}
+License: GNU GPL version 2
+URL: http://www.contribs.org
+Distribution: SME Server
+Group: SMEServer/addon
+Source: %{name}-%{version}.tar.xz
+
+Packager: Jean-Philippe Pialasse
+BuildRoot: /var/tmp/%{name}-%{version}
+BuildArchitectures: noarch
+BuildRequires: e-smith-devtools
+Requires: e-smith-release >= 10
+AutoReqProv: no
+
+
+%description
+SMEserver rpm for setting up rsyncd
+
+%changelog
+* Thu Oct 09 2025 cvs2git.sh aka Brian Read 1.0-2.sme
+- Roll up patches and move to git repo [SME: 12338]
+
+* Thu Oct 09 2025 BogusDateBot
+- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday,
+ by assuming the date is correct and changing the weekday.
+
+* Sat Apr 03 2021 Jean-Philippe Pialasse 1.0-1.sme
+- initial build for SME 10
+
+
+%prep
+%setup
+#%patch1 -p1
+
+%build
+perl createlinks
+
+
+%install
+rm -rf $RPM_BUILD_ROOT
+(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT)
+/sbin/e-smith/genfilelist $RPM_BUILD_ROOT > %{name}-%{version}-filelist
+echo "%doc " >> %{name}-%{version}-filelist
+
+%clean
+cd ..
+rm -rf %{name}-%{version}
+
+%pre
+%preun
+%post
+#new installs
+if [ $1 = 1 ] ; then
+ /bin/touch /home/e-smith/db/dungog
+
+# DBS=`find /home/e-smith/db/navigation -type f -name "navigation.*"`
+# for db in $DBS ; do
+# /sbin/e-smith/db $db set dungog-rsync panel Description "Rsync" DescriptionWeight 4863 Heading "dungog.net" HeadingWeight 4000 2>/dev/null
+# done
+fi
+
+/bin/chmod 644 /etc/crontab
+/etc/e-smith/events/actions/initialize-default-databases
+
+echo ''
+echo 'Remote server syntax changed for secure transfers from dungog-rsync-1.2-4'
+echo 'you now need to enter the user as well as the server'
+echo 'this removes the requirement of having the same user on both servers'
+echo 'but you may need to update your existing rules'
+echo ''
+
+
+%postun
+#uninstalls
+if [ $1 = 0 ] ; then
+ /sbin/e-smith/expand-template /etc/crontab
+
+ /bin/rm -rf /usr/bin/dungogrsync-?????
+
+# DBS=`find /home/e-smith/db/navigation -type f -name "navigation.*"`
+# for db in $DBS ; do
+# /sbin/e-smith/db $db delete dungog-rsync 2>/dev/null
+# done
+
+fi
+
+#&upgrades
+
+
+%files -f %{name}-%{version}-filelist
+%defattr(-,root,root)