clamav-1.4.2

This commit is contained in:
uglyside
2025-04-19 21:43:18 +03:00
parent 5e3d2f4270
commit 0909366def
9 changed files with 144 additions and 170 deletions
+8 -13
View File
@@ -4,36 +4,31 @@
# Licensed under the GNU General Public License, version 3. # Licensed under the GNU General Public License, version 3.
# See the file https://www.gnu.org/licenses/gpl-3.0.txt # See the file https://www.gnu.org/licenses/gpl-3.0.txt
from pisi.actionsapi import shelltools, mesontools, cmaketools, pisitools, get from pisi.actionsapi import mesontools, cmaketools, pisitools
j = ''.join([ j = ''.join([
' -DCMAKE_BUILD_TYPE=None', ' -DCMAKE_BUILD_TYPE=None',
' -DENABLE_EXAMPLES=ON', ' -DENABLE_EXAMPLES=ON',
' -DENABLE_MILTER=OFF', ' -DENABLE_{MILTER,SYSTEMD}=OFF',
' -DENABLE_SYSTEMD=OFF',
' -DAPP_CONFIG_DIRECTORY=/etc/clamav', ' -DAPP_CONFIG_DIRECTORY=/etc/clamav',
' -DDATABASE_DIRECTORY=/var/lib/clamav', ' -DDATABASE_DIRECTORY=/var/lib/clamav',
' -B_build -G Ninja -L ' ' -Bbuild -G Ninja -L '
]) ])
def setup(): def setup():
shelltools.export("CFLAGS", "%s -I/usr/include/iconv " % get.CFLAGS())
cmaketools.configure(j) cmaketools.configure(j)
def build(): def build():
mesontools.build("-C _build") mesontools.build()
def check(): def check():
# failed utf16 to utf8 converting mesontools.build("test")
#pass # pass
mesontools.build("-C _build test")
def install(): def install():
mesontools.install("-C _build install") mesontools.install()
#pisitools.dodir("/run/clamav")
pisitools.dodir("/var/lib/clamav") pisitools.dodir("/var/lib/clamav")
#pisitools.dodir("/var/log/clamav")
for t in shelltools.ls("%s/etc/clamav" % get.installDIR()): for t in ["clamd.conf.sample", "freshclam.conf.sample"]:
pisitools.rename("/etc/clamav/%s" % t, t.replace(".sample", "")) pisitools.rename("/etc/clamav/%s" % t, t.replace(".sample", ""))
+13 -6
View File
@@ -1,24 +1,31 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
#!/usr/bin/env python #!/usr/bin/python
import os import os
from comar.service import * from comar.service import *
serviceType = "server" serviceType = "local"
serviceDefault = "off"
serviceConf = "clamd"
serviceDesc = _({"en": "Clam Anti-Virus Daemon", serviceDesc = _({"en": "Clam Anti-Virus Daemon",
"tr": "Clam Antivirüs Servisi"}) "tr": "Clam Antivirüs Servisi"})
PIDFILE = "/var/run/clamd.pid"
@synchronized @synchronized
def start(): def start():
startService(command="/usr/sbin/clamd", startService(command="/usr/sbin/clamd",
pidfile="/run/clamd.pid", args="--config-file=/etc/clamav/clamd.conf %s" % config.get("CLIOPTS"),
donotify=False) pidfile=PIDFILE,
time.sleep(4) detach=True,
donotify=True)
@synchronized @synchronized
def stop(): def stop():
stopService(command="/usr/sbin/clamd", stopService(command="/usr/sbin/clamd",
pidfile=PIDFILE,
donotify=True) donotify=True)
if os.path.isfile(PIDFILE): os.unlink(PIDFILE)
def status(): def status():
return isServiceRunning("/run/clamd.pid") return isServiceRunning(PIDFILE)
+12 -5
View File
@@ -1,23 +1,30 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
#!/usr/bin/env python #!/usr/bin/python
import os import os
from comar.service import * from comar.service import *
serviceType = "server" serviceType = "local"
serviceDefault = "off"
serviceConf = "freshclam"
serviceDesc = _({"en": "ClamAV database updater service"}) serviceDesc = _({"en": "ClamAV database updater service"})
PIDFILE = "/var/run/freshclam.pid"
@synchronized @synchronized
def start(): def start():
startService(command="/usr/bin/freshclam", startService(command="/usr/bin/freshclam",
args="-d -p /run/freshclam.pid", args="--config-file=/etc/clamav/freshclam.conf %s" % config.get("CLIOPTS"),
pidfile="/run/freshclam.pid", pidfile=PIDFILE,
detach=True,
donotify=True) donotify=True)
@synchronized @synchronized
def stop(): def stop():
stopService(command="/usr/bin/freshclam", stopService(command="/usr/bin/freshclam",
pidfile=PIDFILE,
donotify=True) donotify=True)
if os.path.isfile(PIDFILE): os.unlink(PIDFILE)
def status(): def status():
return isServiceRunning("/run/freshclam.pid") return isServiceRunning(PIDFILE)
+13 -4
View File
@@ -1,8 +1,17 @@
#!/usr/bin/env python # -*- coding: utf-8 -*-
#!/usr/bin/python
import os import os
def postInstall(fromVersion, fromRelease, toVersion, toRelease): def postInstall(fromVersion, fromRelease, toVersion, toRelease):
os.system("/bin/chown clamav:clamav /var/lib/clamav -R") try:
#os.system("/bin/chown clamav:clamav /run/clamav -R") os.system("/usr/sbin/useradd -r -k /dev/null -m -b /var/lib -U clamav")
#os.system("/bin/chown clamav:clamav /var/log/clamav -R") except:
pass
def postRemove():
try:
os.system("/usr/sbin/userdel -r clamav")
os.system("/usr/sbin/groupdel clamav")
except:
pass
+2
View File
@@ -0,0 +1,2 @@
# see clamd --help
CLIOPTS=""
+70
View File
@@ -0,0 +1,70 @@
diff --git a/etc/clamd.conf.sample b/etc/clamd.conf.sample
index 120cf32..b4bc4c1 100644
--- a/etc/clamd.conf.sample
+++ b/etc/clamd.conf.sample
@@ -5,7 +5,7 @@
# Comment or remove the line below.
-Example
+#Example
# Uncomment this option to enable logging.
# LogFile must be writable for the user running daemon.
@@ -74,7 +74,7 @@ Example
# It is recommended that the directory where this file is stored is
# also owned by root to keep other users from tampering with it.
# Default: disabled
-#PidFile /run/clamav/clamd.pid
+PidFile /var/run/clamd.pid
# Optional path to the global temporary directory.
# Default: system specific (usually /tmp or /var/tmp).
@@ -115,7 +115,7 @@ Example
# TCP port address.
# Default: no
-#TCPSocket 3310
+TCPSocket 3310
# TCP address.
# By default we bind to INADDR_ANY, probably not wise.
@@ -123,7 +123,7 @@ Example
# from the outside world. This option can be specified multiple
# times if you want to listen on multiple IPs. IPv6 is now supported.
# Default: no
-#TCPAddr localhost
+TCPAddr localhost
# Maximum length the queue of pending connections may grow to.
# Default: 200
diff --git a/etc/freshclam.conf.sample b/etc/freshclam.conf.sample
index d91fe81..f07a5e4 100644
--- a/etc/freshclam.conf.sample
+++ b/etc/freshclam.conf.sample
@@ -5,14 +5,14 @@
# Comment or remove the line below.
-Example
+#Example
# Path to the database directory.
# WARNING: It must match clamd.conf's directive!
# WARNING: It must already exist, be an absolute path, be writeable by
# freshclam, and be readable by clamd/clamscan.
# Default: hardcoded (depends on installation options)
-#DatabaseDirectory /var/lib/clamav
+DatabaseDirectory /var/lib/clamav
# Path to the log file (make sure it has proper permissions)
# Default: disabled
@@ -54,7 +54,7 @@ Example
# It is recommended that the directory where this file is stored is
# also owned by root to keep other users from tampering with it.
# Default: disabled
-#PidFile /run/clamav/freshclam.pid
+PidFile /var/run/freshclam.pid
# By default when started freshclam drops privileges and switches to the
# "clamav" user. This directive allows you to change the database owner.
@@ -1,105 +0,0 @@
diff -Nuar a/etc/clamav-milter.conf.sample b/etc/clamav-milter.conf.sample
--- a/etc/clamav-milter.conf.sample 2023-10-24 20:10:14.000000000 +0300
+++ b/etc/clamav-milter.conf.sample 2023-11-04 11:15:20.706075909 +0300
@@ -3,7 +3,7 @@
##
# Comment or remove the line below.
-Example
+# Example
##
diff -Nuar a/etc/clamd.conf.sample b/etc/clamd.conf.sample
--- a/etc/clamd.conf.sample 2023-10-24 20:10:14.000000000 +0300
+++ b/etc/clamd.conf.sample 2023-11-04 11:20:07.859485998 +0300
@@ -5,13 +5,14 @@
# Comment or remove the line below.
-Example
+# Example
# Uncomment this option to enable logging.
# LogFile must be writable for the user running daemon.
# A full path is required.
# Default: disabled
#LogFile /tmp/clamd.log
+LogFile /var/log/clamd.log
# By default the log file is locked for writing - the lock protects against
# running clamd multiple times (if want to run another clamd, please
@@ -19,7 +20,7 @@
# the daemon with --config-file option).
# This option disables log file locking.
# Default: no
-#LogFileUnlock yes
+LogFileUnlock yes
# Maximum size of the log file.
# Value of 0 disables the limit.
@@ -75,6 +76,7 @@
# also owned by root to keep other users from tampering with it.
# Default: disabled
#PidFile /run/clamav/clamd.pid
+PidFile /run/clamd.pid
# Optional path to the global temporary directory.
# Default: system specific (usually /tmp or /var/tmp).
@@ -82,7 +84,7 @@
# Path to the database directory.
# Default: hardcoded (depends on installation options)
-#DatabaseDirectory /var/lib/clamav
+DatabaseDirectory /var/lib/clamav
# Only load the official signatures published by the ClamAV project.
# Default: no
@@ -100,6 +102,7 @@
# Default: disabled (must be specified by a user)
#LocalSocket /run/clamav/clamd.sock
#LocalSocket /tmp/clamd.sock
+LocalSocket /run/clamd.socket
# Sets the group ownership on the unix socket.
# Default: disabled (the primary group of the user running clamd)
@@ -115,7 +118,7 @@
# TCP port address.
# Default: no
-#TCPSocket 3310
+TCPSocket 3310
# TCP address.
# By default we bind to INADDR_ANY, probably not wise.
diff -Nuar a/etc/freshclam.conf.sample b/etc/freshclam.conf.sample
--- a/etc/freshclam.conf.sample 2023-10-24 20:10:14.000000000 +0300
+++ b/etc/freshclam.conf.sample 2023-11-04 11:22:10.603951481 +0300
@@ -5,16 +5,16 @@
# Comment or remove the line below.
-Example
+# Example
# Path to the database directory.
# WARNING: It must match clamd.conf's directive!
# Default: hardcoded (depends on installation options)
-#DatabaseDirectory /var/lib/clamav
+DatabaseDirectory /var/lib/clamav
# Path to the log file (make sure it has proper permissions)
# Default: disabled
-#UpdateLogFile /var/log/freshclam.log
+UpdateLogFile /var/log/freshclam.log
# Maximum size of the log file.
# Value of 0 disables the limit.
@@ -53,6 +53,7 @@
# also owned by root to keep other users from tampering with it.
# Default: disabled
#PidFile /run/clamav/freshclam.pid
+PidFile /run/freshclam.pid
# By default when started freshclam drops privileges and switches to the
# "clamav" user. This directive allows you to change the database owner.
@@ -0,0 +1,2 @@
# see freshclam --help
CLIOPTS=""
+24 -37
View File
@@ -5,32 +5,33 @@
<Name>clamav</Name> <Name>clamav</Name>
<Homepage>https://www.clamav.net/</Homepage> <Homepage>https://www.clamav.net/</Homepage>
<Packager> <Packager>
<Name>PisiLinux Community</Name> <Name>Kamil Atlı</Name>
<Email>admins@pisilinux.org</Email> <Email>suvari@pisilinux.org</Email>
</Packager> </Packager>
<License>GPL-2</License> <License>GPLv2</License>
<IsA>app:console</IsA> <IsA>app:console</IsA>
<Summary>Clam Antivirus software.</Summary> <PartOf>util.antivirus</PartOf>
<Summary>A GPL virus scanner.</Summary>
<Description>Clam AntiVirus is a GPL anti-virus toolkit for UNIX.</Description> <Description>Clam AntiVirus is a GPL anti-virus toolkit for UNIX.</Description>
<Archive sha1sum="09781ed9c3d7dcff5ea79783d76d6ee4344b5a48" type="targz">https://www.clamav.net/downloads/production/clamav-1.2.1.tar.gz</Archive> <Archive sha1sum="bb28848206df9014c9e3e5d89219cd953c685629" type="targz">https://github.com/Cisco-Talos/clamav/releases/download/clamav-1.4.2/clamav-1.4.2.tar.gz</Archive>
<BuildDependencies> <BuildDependencies>
<Dependency>rust</Dependency> <Dependency>rust</Dependency>
<Dependency>cmake</Dependency> <Dependency>cmake</Dependency>
<Dependency>ninja</Dependency> <Dependency>ninja</Dependency>
<!-- <Dependency>libmilter</Dependency> -->
<Dependency>curl-devel</Dependency> <Dependency>curl-devel</Dependency>
<Dependency>zlib-devel</Dependency> <Dependency>zlib-devel</Dependency>
<Dependency>check-devel</Dependency> <Dependency>check-devel</Dependency>
<Dependency>json-c-devel</Dependency> <Dependency>json-c-devel</Dependency>
<Dependency>rust-bindgen</Dependency>
<Dependency>openssl-devel</Dependency> <Dependency>openssl-devel</Dependency>
<Dependency>ncurses-devel</Dependency> <Dependency>ncurses-devel</Dependency>
<Dependency>python3-devel</Dependency> <Dependency>python3-devel</Dependency>
<Dependency>libxml2-devel</Dependency> <Dependency>libxml2-devel</Dependency>
<Dependency>libpcre2-devel</Dependency> <Dependency>libpcre2-devel</Dependency>
<Dependency>libiconv-devel</Dependency>
</BuildDependencies> </BuildDependencies>
<Patches> <Patches>
<Patch level="1">daemon_confs.patch</Patch> <!-- <Patch level="1"></Patch> -->
<Patch level="1">config.patch</Patch>
</Patches> </Patches>
</Source> </Source>
@@ -46,45 +47,23 @@
<Dependency>ncurses</Dependency> <Dependency>ncurses</Dependency>
<Dependency>openssl</Dependency> <Dependency>openssl</Dependency>
<Dependency>libpcre2</Dependency> <Dependency>libpcre2</Dependency>
<Dependency>libiconv</Dependency>
<!-- <Dependency>libmilter</Dependency> -->
</RuntimeDependencies> </RuntimeDependencies>
<Files> <Files>
<Path fileType="config">/etc/clamav</Path> <Path fileType="config">/etc</Path>
<Path fileType="executable">/usr/bin</Path> <Path fileType="executable">/usr/bin</Path>
<Path fileType="executable">/usr/sbin</Path> <Path fileType="executable">/usr/sbin</Path>
<Path fileType="library">/usr/lib</Path> <Path fileType="library">/usr/lib</Path>
<Path fileType="data">/run/clamav</Path> <Path fileType="data">/usr/share</Path>
<Path fileType="data">/var/lib/clamav</Path> <Path fileType="data">/var</Path>
<Path fileType="data">/var/log/clamav</Path>
<Path fileType="doc">/usr/share/doc</Path>
<Path fileType="man">/usr/share/man</Path>
</Files> </Files>
<AdditionalFiles> <AdditionalFiles>
<!-- <AdditionalFile owner="root" permission="0644" target="."></AdditionalFile> --> <AdditionalFile permission="644" owner="root" target="/etc/conf.d/clamd">clamd.conf</AdditionalFile>
<AdditionalFile permission="644" owner="root" target="/etc/conf.d/freshclam">freshclam.conf</AdditionalFile>
</AdditionalFiles> </AdditionalFiles>
<Provides> <Provides>
<COMAR script="package.py">System.Package</COMAR> <COMAR script="package.py">System.Package</COMAR>
<COMAR script="clamd.py">System.Service</COMAR> <COMAR script="clamd.py" name="clamd">System.Service</COMAR>
</Provides> <COMAR script="freshclam.py" name="freshclam">System.Service</COMAR>
</Package>
<Package>
<Name>freshclam</Name>
<RuntimeDependencies>
<Dependency release="current">clamav</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="config">/etc/clamav/freshclam.conf</Path>
<Path fileType="executable">/usr/bin/freshclam</Path>
<Path fileType="data">/usr/lib/libfreshclam.so</Path>
<Path fileType="data">/usr/lib/libfreshclam.so.2</Path>
<Path fileType="data">/usr/lib/libfreshclam.so.2.0.2</Path>
<Path fileType="man">/usr/share/man/man1/freshclam.1</Path>
<Path fileType="man">/usr/share/man/man5/freshclam.conf.5</Path>
</Files>
<Provides>
<COMAR script="freshclam.py">System.Service</COMAR>
</Provides> </Provides>
</Package> </Package>
@@ -94,12 +73,20 @@
<Dependency release="current">clamav</Dependency> <Dependency release="current">clamav</Dependency>
</RuntimeDependencies> </RuntimeDependencies>
<Files> <Files>
<Path fileType="executable">/usr/bin/clamav-config</Path>
<Path fileType="header">/usr/include</Path> <Path fileType="header">/usr/include</Path>
<Path fileType="data">/usr/lib/pkgconfig</Path> <Path fileType="data">/usr/lib/pkgconfig</Path>
</Files> </Files>
</Package> </Package>
<History> <History>
<Update release="9">
<Date>2025-04-19</Date>
<Version>1.4.2</Version>
<Comment>Rebuild.</Comment>
<Name>Kamil Atlı</Name>
<Email>suvari@pisilinux.org</Email>
</Update>
<Update release="8"> <Update release="8">
<Date>2023-12-19</Date> <Date>2023-12-19</Date>
<Version>1.2.1</Version> <Version>1.2.1</Version>