summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Raschbacher <lordvan@gentoo.org>2024-04-19 11:51:35 +0200
committerThomas Raschbacher <lordvan@gentoo.org>2024-04-19 11:53:20 +0200
commit05ee170777710ddd697b5faff78135ed12087d12 (patch)
treeddb29e39b8f00ad5fd4b9a69a045130de2c06f47
parentx11-plugins/guifications: Stabilize 2.16-r1 sparc, #930226 (diff)
downloadgentoo-05ee170777710ddd697b5faff78135ed12087d12.tar.gz
gentoo-05ee170777710ddd697b5faff78135ed12087d12.tar.bz2
gentoo-05ee170777710ddd697b5faff78135ed12087d12.zip
app-antivirus/clamav: add 1.0.6, 1.2.3, 1.3.1
Signed-off-by: Thomas Raschbacher <lordvan@gentoo.org>
-rw-r--r--app-antivirus/clamav/Manifest7
-rw-r--r--app-antivirus/clamav/clamav-1.0.6.ebuild400
-rw-r--r--app-antivirus/clamav/clamav-1.2.3.ebuild394
-rw-r--r--app-antivirus/clamav/clamav-1.3.1.ebuild397
4 files changed, 1198 insertions, 0 deletions
diff --git a/app-antivirus/clamav/Manifest b/app-antivirus/clamav/Manifest
index 5c194fdf2b01..482abb1090ee 100644
--- a/app-antivirus/clamav/Manifest
+++ b/app-antivirus/clamav/Manifest
@@ -26,8 +26,11 @@ DIST cexpr-0.6.0.crate 17966 BLAKE2B cb46f066eb1f4dbac00ec86dc3e562db7ee8ea5ff17
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST clamav-0.103.11.tar.gz 16550978 BLAKE2B 9fba6d5b41ef07b017be26b7ebd832ca03146a68545f794924332c67429ba27603745e2ad7fc0f58c341c6d9267e5b5265c37525dba9cbb15ab616915ec2d605 SHA512 86241ee8058d9a3ccc13b89bb41aa16cfbeb65717fbcfeea6117b7885e8854f5673c22475e7d33ee4210a15d583e806f252657c07933f072455027f1531427b8
DIST clamav-1.0.5.tar.gz 10344955 BLAKE2B 1deceff859c9eec6185f6c83833333d1a030edd1c9dcc6788f669259b4922f332b564a7c6f3fa7f03ebe2051524132becb35cbd67526aac43e95ca3978793517 SHA512 7d46cf5555107d2856430a5f09f5dfd011b597d3dc7e691db3c956867b1314b50fd23008bf45b377d31493a12716c527159d163748d6ae759e97a041780da0d9
+DIST clamav-1.0.6.tar.gz 10345779 BLAKE2B fbbef034a7bf6e2b323007a3de2464b60cc0a564551ddd4169a72af0328cfc2485c14395626e8d0258dfbb3bb41bc895d26622ff2dfb5fcd1181e6595da6489b SHA512 907cf51f8e6776a81ec5501026c240266b0eb8f7631fcbbcd0f8514446925dc731d819ae758217f9ed9414ca385b64e67f6de0e5133c04ba7590bd1e4445e09e
DIST clamav-1.2.2.tar.gz 10372690 BLAKE2B 47940236e38296ac908be4c5d1c5ce8bbc9ec5c69fa87b2472c941d2de9642e0ab6a59c63038aa706079e8efeb161083db69ad03eaaf27a6d05f4f1a5bb70aff SHA512 32562230f367a230f70dfca5ed5000ee8829a0da7452b0113e9dbaa47ef6b21901001f741b0e52ce52c02fe8f834bd559bcbdf1ea20495bead9c4976c3a4cc92
+DIST clamav-1.2.3.tar.gz 10376162 BLAKE2B f881ca93143fc418a475bfd8bcfe26bc964fedc9f50267e60e36b92932232aa219ee61091f23b53882776d1de7faf111faf8b123058d7b0f8feee01d1884133c SHA512 1298107f7d567bfdb151c452acb33edfa99e13f26a711f2c8cb6149fa144a0b164c92f10c7fb592ac4ae3787600b4996e295c2dd31dfac11a8c2ef8c00c61161
DIST clamav-1.3.0.tar.gz 12937306 BLAKE2B 4db193bd4cbe66cf3e7b3ac6ce26a1e74bc73b6ab0d9ba3b2fe496bba061f4ac1a89d05b797a384343ed02864f5ea9530bedf4f1aea8c5ae33f9fc86ab8521a3 SHA512 7fe05abcd6c6fb76de44471b63a0f31ebbabf477800966e87bd187591f2f6f6b7d4a66f450f05bfeb3ec33253887c8115cb9ddbc2cd744adb5b19af249ae3333
+DIST clamav-1.3.1.tar.gz 12938351 BLAKE2B d8fe1be274bcc8091ed4193967120201457d9a4eaaa27e8b5cdde279f25405882bd0cd5de80e7da041db28d3688f4270febda5ca70d69c7d36d1e099d03ddb3e SHA512 0693006c0f283862bf7f4eaeb39b409b92ac017a3d604df1340045c26dc47070d6f23dfb180dcb7753156d02c5e99cec23c53f6c56b007ed737be7060a4131f2
DIST clang-sys-1.4.0.crate 38679 BLAKE2B d15bdae2142ed26b4f6bd037bd2062e8c4b7b87fc5b749b872a95ff1952d000066c255aa0984e5f9c4a5c88066db4a20cfd048db4ba5a59b331d5ffa5e9a281d SHA512 062189bb0a341e2e85de4987f4b564c1fc69e4005c9c42cfedb61dee5f48db9126a8114d1d97be1b9c21b8c885243751232fbe8cf532e1d2be593308fe45216a
DIST clang-sys-1.6.1.crate 41346 BLAKE2B b70104e6c6b3c1b85caa111c2b1fb2c20d30eeb85059bc616afc49bce9409f7ee2dd8b800750a466accad6a74ef29d10c6a2ee4459d854a2c0c54050ff51cc4b SHA512 a6c62c1d3faae3796f5e7d98ed4f1a8119f0ffaf8fceee8e728cd4da57b0140e82631012450bb0c551cd13814a97065e9e47015320707a87bdfbb6fd317e952c
DIST color_quant-1.1.0.crate 6649 BLAKE2B 9a2488dd00b7a33e15e05531ea49ef1961131f0be0922ba41e2d74d2b1a047daed483ac3a9dd87c847a81cce70a347395c557cad8228ab9a8dc5be7cc0f1bcaa SHA512 690c928bda4b7b57425f38ea68ac89cde2473b7a91b7e62c04a8f2c5a0fa3505e26b065d48b7ad0a8bb491f92f600f896fefdad3ce0e86e43cbf4f9a89e94201
@@ -64,6 +67,7 @@ DIST fastrand-2.0.0.crate 14402 BLAKE2B 8bf830151ec616dbc25f216265722e39f8a2cd9a
DIST fastrand-2.0.1.crate 14664 BLAKE2B 7a5812153500170dcc53ca8d66384fef46eeb5a8f970be43863f22f82bf427672d07cb053f4e04b0fea358ca89178399871235680f57223b8561c07b8d21cf13 SHA512 79a1e1b3f39264f037def236afbd87b732f5e0a2154b1d9e721b3c7990c52be45138320e2571fe628f482e0da7e3cf867abb745e3c277b19015fc031fd4410d9
DIST fdeflate-0.3.0.crate 21790 BLAKE2B 3c96f6395fc42f66e436fbf6b747c2f3c2dfd8c38729bd0eb88be872ad55e5d964ba322b703fae122907d51892619687ac9b7a5e7546f8fe6eb7d80a91c1f398 SHA512 1a1862460745780407892c835b4e3431267044285fdd718dc6b316dbce9520d2955bf36e5e28257f2f758ba7bc3051b446e786d11ace83deec492e4c161664bc
DIST fdeflate-0.3.1.crate 26143 BLAKE2B 9decfc50a0d2961960f80e3c7e640c2f4a9c916fed3810031906548d60dc6edae4d32419b5fc7cb5ec9b6e9cadcb71cc723c6fdc6f94ac81e0272739b79277da SHA512 16aae554c5c629266c6b1d628076a7d67d9214988355a76c669152f1981ed12c35959cb1a81cc46a9fd000fe4c25266bcd0486931e8e4d91c47ff7001211fb39
+DIST fdeflate-0.3.4.crate 25001 BLAKE2B 69bffdb689dc467bd62738299ea17295bf7dd9d51c78b17e1ef6eee265056308703646791676c44430a686e1d713a8f561c5db972de7ab7c5e7b21050cad70f8 SHA512 a38b493eba656beb97275faf5a2f32c8a2c2cb12c5d5c280d37bbcf1406fe404151fd6312ec496aafdce802ef08745a6927e571890f9b290010ca5ac45ac9bdf
DIST flate2-1.0.25.crate 70210 BLAKE2B 992525ffeeb4433a222487cdfb0c3927ad77f914e1db94f612d80e81faef4a2c955c755c2b800251e3416d0b22726d5f7d7e432a81c3582c54b7de95ab7a324e SHA512 d81a463360ee2778f609ff297e04548120d1fda1f9e020fb2f429ea51189b8fe6cae57252fcd924d71fb65ad0f93ff7cdc7235913f8b78fa82925939cf884af7
DIST flate2-1.0.27.crate 73460 BLAKE2B 5603848098ac02c9c83893df79ea9d9ad3df5b7e02ffa155ac74602bda7e28e14e6b7de2ff321b38d24fa3741ccea8a4c811abb47690cc295f90d4cf2bdd0bbf SHA512 e76e76444686433acabd16513e6e5860d4d6fa53a810f37266f36900f154acacac6dcd77b0373599a6d33a09175f5f02146d84726b982c59a78926950e19ff09
DIST flate2-1.0.28.crate 73690 BLAKE2B c9f141bde0eda6b9c42da0a3ed69322c12c6c29bc522131f51ad56f6e2758646aa5585382407409257a8301f5f07a1825d150838bbb55822f2d49037f6279aa8 SHA512 9db6f3ddc4e1e91960b07c08712beabd911b297d93db8be3ecb97a392a4262e608c75ed8e9e34d87d58c3e67d1b7987734e14ab3d45fd837a2767e8016380284
@@ -126,6 +130,7 @@ DIST memoffset-0.9.0.crate 9033 BLAKE2B 19090c1af8b8cf54a2cf7593748aff4d3dc685ec
DIST minimal-lexical-0.2.1.crate 94841 BLAKE2B e6b8919b80d938d0b98d60d4f5f29ce43d77ebfcf8b18bde08909141915c6ef4f0d07a543538d4f3ba8527a9f55926d4a8e83473248469d087e80b274d701d61 SHA512 385fab51884bdcc7b0f2728a219ab164d0dc8efe42160b918f2c09f79ecf853fb12bda006d11e649f097bae1499dcd41ddf2a8784ee7d178cf2c28059e46078c
DIST miniz_oxide-0.6.2.crate 54536 BLAKE2B 8127ebec5a2cee1c2101d9533da573e01ef1a0fcb169bb0fb1419973ddd2e6953d8dfe85f9509a5d1226643ad290f0ee1479fc68f1788ade7ddf9633d90bfe1e SHA512 250782e214572acdd11df87c2788cd5f78e8388d9b285d0a850918219678e262e8b9905cc88728f5b70d13920ef9d19c43d243dad8fbcc18f8c8462662ce1419
DIST miniz_oxide-0.7.1.crate 55194 BLAKE2B 56afbe0c0b3eca98105ae2d507493f365353cce29a6b04910ff26bc75899400fdbd067756cbda7b3d86f047fb8f3d737de00043a4a7348a813cc43e45824e33f SHA512 5eb6ffe34a866403273ff0267ff7838aeb50722ca57a03d5a1d842a5f19a3b4af570b133a3b9d64d78eafe49e4b9732b92dd63fd9c6b0ce59b3295daf10f6a3c
+DIST miniz_oxide-0.7.2.crate 55731 BLAKE2B e3cbf5983025bee879b8a735fa2912db8975cb60f0499498a73ce4375e7d452c9ed62d4b0b6f6a4fa591aab55e5d7ff20033baa007fd6c839b9d74b31142c0b1 SHA512 2f8f09d7afdb9d78bfc80a228ded85a215fea05e577e907921f1808f84aae30ab118048d7b53295f11aeb5de70ab6cbdec892f3a2417bedf6f53a4576d095432
DIST nanorand-0.7.0.crate 18437 BLAKE2B f4aaf18b7cf32b385d97842cee234f0781bc2e55ca5662031204b999293d417e0ab2726eacff084dc6681ea5e46ce01335a1a5cfaa5e8bc6e602aacb1fd25252 SHA512 3ac650451d629852236eeb45dfee808acbea616036025676b47310100982d7e8317df647fe8649e7753dd0f57c501dcb3f7401c3d804af52ff2a2f50ace8cc69
DIST nom-7.1.3.crate 117570 BLAKE2B 5643b67990b7305e101b16b8cd27c447e162a7adc6d0dfac00920b0cb50fea98c9d4edca63c34f6845cba05f8d0acb407cf3045cf64a4cb28e53c8b6bc9090cf SHA512 1ffce08dde299bc0e0367ad59c7b6a83e23decfa11115ee076ab91ec53cdd9ef37e4c2103c96eff23a7b6b8b5c3f67c83ce1917928c7d4c6462083bdfa0c9cad
DIST num-complex-0.4.3.crate 29523 BLAKE2B 7f6af07ca78b00ba21f04931c473b2b725c61c78bb74b3bcef7b10a0fb00353c06283da02c056fa8cd4f9949476392054dda56ddacd330abc2d1aea3317e9ebe SHA512 64f1e6ee49f162a190b9aaccdebdf5d4f1712645eebda7877437f58859c5d8d4cfd10b67a39098dc964f9c842909b10e222aa8a2159575a7bb19352f753d3d99
@@ -148,6 +153,7 @@ DIST pin-project-1.1.3.crate 57740 BLAKE2B 5201a01cee2e98caa0d3ed1ff25d4af8c4a74
DIST pin-project-internal-1.0.12.crate 27956 BLAKE2B ac5cf33b5981e32ecf802a9de1576f696006ffc035b33173b1606a1d12c7b12c53a217f5723e8ebd622a121345f440b200ab3972410a2f161a5ed83fa8769ed6 SHA512 f3f4839c5fa7e3232a323283ad9636cd03e1bab79b439cc2d2ea954d60a3dfd417aa4680b7a34a3baa48d7e02266cf16e56b719a905f04157c708c90c02e45a9
DIST pin-project-internal-1.1.3.crate 27824 BLAKE2B 23b59024481710102677ba35aa8db8e27f6ce0973941addc11bc8a994031c2a4fe04cac197f04fb13c61110e554953883f50b4df15dd632e4c59fc8422fb26b0 SHA512 d2aef23074cdce910fbed47130636dfe3fcb6ab255c6fb4ff822d364d54d181f007c80755ae6f8c7519054888c1a763738d523217a8157542aa35007a77f2288
DIST png-0.17.10.crate 89384 BLAKE2B 4202db161bd974cc9b08ef01adf3ed4cbcaf00a5b8c3c8a42846581976be44e4e0bcf025d0493d39bc395dbaba6bd1336553d00e58f4280e23f41a6027ff4bec SHA512 33fdf0365b3475d7384fac29bfcd95177e822ac33d3adb1d91a1d52ea90a88bcc5facd95daadf02a79190d406f8a855c4ca4b6e09a0012c63ccbe5285d050101
+DIST png-0.17.13.crate 103176 BLAKE2B 99bfd1c444f5967b715b81607e3c3266fb3b1d8110897e4c93afb5b6e0e28df262f9c9d842aefed922c38a5ff9d16e75cca065d7cc14ddadb3a7e9ea4776e787 SHA512 064a932f4c48c2243286a9b4cdec0487cc976291bc8ecf4753691afdfe43acda4b17ea8d48ec933f309d158df28f40ee93b5b32b3ab5252e2e7aa1ee1c0e4e84
DIST png-0.17.7.crate 80979 BLAKE2B 37628fa2282c7195f983a95939eda1c73745f89d772904173775d7e1906b71615e45de8f59489d6842450ed6f7c7b809b28881c84d5a3399da38013fc3062c79 SHA512 f8009925a6948d8b9c82007f31eefd18d2173274816c0329673e48ef725aec52ca3aab2b91e8fc4f776c8f7f17475a3e065835e578a632445e1bd70794b18270
DIST prettyplease-0.2.15.crate 57034 BLAKE2B 251f4b19f2580c5503c7c1d1c47bb9fc125f5c9b8d41c960430c953ae83484049df0fcb1bed11693389c1fe48b9a41a5be35701c4f19cec90ee1cdee592f4e4c SHA512 789f9e381964f2da75e9def9f2474bc8a15adb598faae5044088543c9cd53f6f2fb70875263adaa7504e73a9fe1890949bdb9930dad199638c00196b24da6929
DIST prettyplease-0.2.4.crate 53478 BLAKE2B d83d392c7e7e0a4fa082d5c84615b012cf1988ec0a475be99313f95bcee47a11eb8c710fb992a18c0c6627b39e27b39fa767c4fa4c1c48f54cc4698f14577697 SHA512 68ea70cdbccad0e91c251bb66b317e126bda3c34fbd2d50f95549f7ee3e48566a7eafb77f58e40e3f298bc2a34f2a5b0d900067c717b117602dc57284d789480
@@ -229,6 +235,7 @@ DIST tiff-0.8.1.crate 1417977 BLAKE2B 4beeb5c46cb598311cfbe486d54a99d99ee2bef5ae
DIST tiff-0.9.0.crate 1418215 BLAKE2B 4e472ecc8629e714b97ca492851b615c1b700f71de13f0b6efd94c621da5996698da062465a5933ad2f1ba2c0882a02f4d4cffc256db4699f275e4139989874d SHA512 cd13530a976cc8cb24e649568b1833ec7eed1709a41b02c298b68e406b78b6de622d3ce32123fbbbbf0e5fcfab9a6c319a356db352fa83fec819dd318cb1e6ff
DIST toml-0.5.11.crate 54910 BLAKE2B 9ecd5103b33ab47d4be23c897c7095ca381cb79bedcaac4918cddc36fc7cf5d34ab664da52c2273d935f04486e9325241d6b66785d50aac78453c219aab49e1e SHA512 eddb82aeb8fdeb5436579292c6f7a64a90a2c7bb54070beb437bc7890b99795d0505faa8d6451a99e8bcf440f78db8a1b273a697c8ad44275cc4163a9ee49317
DIST transpose-0.2.2.crate 10816 BLAKE2B 87c6e1152858048fa188406a3683781b5af1f036c8236db2b4548a452327ba221a0c6ce71a6a191b2fe854a3292119cfe548a9b57266f4857fa0e517c331a6d4 SHA512 a08347773fba17586fd42f8e6ccd17c30f6d6c22faf391c6ff57ece99147754366b4273b41186a206f54b2be0bd3b29b2ef49182d23f0cfd11137cb49368338f
+DIST transpose-0.2.3.crate 10913 BLAKE2B 5af25c7e404121acf68caaa5b4109f4f3cd56093575139ce54a68dc14bd2238ef1d3cd2c7626a1a9e860433b15d517b57af264dea1f16cd59827bfa3cc4e93f2 SHA512 1a624e7baf2c74da48489558f9327d935bde67812eec50e205a4060180612d7e6d7d18f18c1b118bd7b08650cd089d8c1574db3fbd504a6915c9cd3b4ec09b59
DIST typenum-1.16.0.crate 42477 BLAKE2B acc6dcd4521493c438a8a3d997ab0456fdbff3db66aee9b81ba219714d47522c3ca8fe26f8ce84edfda416ff9a22747caf3ecc9cc4bcd1e7647ac351d5aef407 SHA512 93da3ed62573acbc9d5d31257fb72ae9cfc7d59e4040c1f32d93e8fec94795e1aa20a3bf76ddc64c4b383184306bb2a66e51fd61b64dd4ce46a1bca8238b57b2
DIST typenum-1.17.0.crate 42849 BLAKE2B a6d1162050679e2c4ab2467f3a77d301f6861882eb7c9749f31d047f383dd5bd2ed5846ad63eed99ccc04d6ac36cc697a305861e1d65880b4d2ef04ee0a79b94 SHA512 99773d5d9f850c0602db4bb67dd062b0ade6f086e155216f1bb2fb6569461ba7e1b7c2f2af81ea8833bc3bfcf3fe5033edecb7c438adae63f59d3e30cf63a508
DIST unicode-ident-1.0.11.crate 42067 BLAKE2B 3c7cac3d2bf1cbf1cf04716a482f130123e8e6940f7a90a17bc62fca44ac0069688165538f5329b95a72f735b594cfb85e3250738393ffd1b53cb0cd95077d89 SHA512 9682bbee339fb987c9d0bb6a54406d37b28b5c3587372d406402e4341900fec97e3234cd03b5c98b90b6378fd533dc452cac3de90d3ade19c4b09657e4abf6df
diff --git a/app-antivirus/clamav/clamav-1.0.6.ebuild b/app-antivirus/clamav/clamav-1.0.6.ebuild
new file mode 100644
index 000000000000..0e4796d9caf1
--- /dev/null
+++ b/app-antivirus/clamav/clamav-1.0.6.ebuild
@@ -0,0 +1,400 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_MAX_SLOT=13
+PYTHON_COMPAT=( python3_{10..12} )
+
+# Auto-Generated by cargo-ebuild 0.5.4-r1
+CRATES="
+ adler@1.0.2
+ autocfg@1.1.0
+ bindgen@0.65.1
+ bit_field@0.10.1
+ bitflags@1.3.2
+ block-buffer@0.10.3
+ bumpalo@3.12.0
+ bytemuck@1.13.0
+ byteorder@1.4.3
+ cbindgen@0.20.0
+ cc@1.0.83
+ cexpr@0.6.0
+ cfg-if@1.0.0
+ clang-sys@1.4.0
+ color_quant@1.1.0
+ cpufeatures@0.2.5
+ crc32fast@1.3.2
+ crossbeam-channel@0.5.8
+ crossbeam-deque@0.8.2
+ crossbeam-epoch@0.9.13
+ crossbeam-utils@0.8.14
+ crunchy@0.2.2
+ crypto-common@0.1.6
+ digest@0.10.6
+ either@1.8.1
+ errno@0.3.3
+ errno-dragonfly@0.1.2
+ exr@1.5.3
+ fastrand@1.8.0
+ fdeflate@0.3.4
+ flate2@1.0.25
+ flume@0.10.14
+ futures-core@0.3.26
+ futures-sink@0.3.26
+ generic-array@0.14.6
+ getrandom@0.2.8
+ gif@0.11.4
+ glob@0.3.1
+ half@2.2.1
+ hashbrown@0.12.3
+ heck@0.3.3
+ hermit-abi@0.2.6
+ hermit-abi@0.3.3
+ hex@0.4.3
+ image@0.24.5
+ indexmap@1.9.2
+ instant@0.1.12
+ io-lifetimes@1.0.11
+ itoa@1.0.5
+ jpeg-decoder@0.3.0
+ js-sys@0.3.61
+ lazy_static@1.4.0
+ lazycell@1.3.0
+ lebe@0.5.2
+ libc@0.2.139
+ libloading@0.7.4
+ linux-raw-sys@0.1.4
+ lock_api@0.4.9
+ log@0.4.17
+ memchr@2.5.0
+ memoffset@0.7.1
+ minimal-lexical@0.2.1
+ miniz_oxide@0.6.2
+ miniz_oxide@0.7.2
+ nanorand@0.7.0
+ nom@7.1.3
+ num-complex@0.4.3
+ num-integer@0.1.45
+ num-rational@0.4.1
+ num-traits@0.2.15
+ num_cpus@1.15.0
+ once_cell@1.17.0
+ peeking_take_while@0.1.2
+ pin-project@1.0.12
+ pin-project-internal@1.0.12
+ png@0.17.13
+ prettyplease@0.2.4
+ primal-check@0.3.3
+ proc-macro2@1.0.66
+ quote@1.0.26
+ rayon@1.6.1
+ rayon-core@1.10.2
+ redox_syscall@0.2.16
+ regex@1.7.1
+ regex-syntax@0.6.28
+ rustc-hash@1.1.0
+ rustdct@0.7.1
+ rustfft@6.1.0
+ rustix@0.36.15
+ ryu@1.0.12
+ scoped_threadpool@0.1.9
+ scopeguard@1.1.0
+ serde@1.0.152
+ serde_derive@1.0.152
+ serde_json@1.0.93
+ sha2@0.10.6
+ shlex@1.3.0
+ simd-adler32@0.3.4
+ smallvec@1.10.0
+ spin@0.9.8
+ strength_reduce@0.2.4
+ syn@1.0.107
+ syn@2.0.15
+ tempfile@3.4.0
+ thiserror@1.0.38
+ thiserror-impl@1.0.38
+ threadpool@1.8.1
+ tiff@0.8.1
+ toml@0.5.11
+ transpose@0.2.3
+ typenum@1.16.0
+ unicode-ident@1.0.6
+ unicode-segmentation@1.10.1
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ wasm-bindgen@0.2.84
+ wasm-bindgen-backend@0.2.84
+ wasm-bindgen-macro@0.2.84
+ wasm-bindgen-macro-support@0.2.84
+ wasm-bindgen-shared@0.2.84
+ weezl@0.1.7
+ which@4.4.0
+ winapi@0.3.9
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ windows-sys@0.42.0
+ windows-sys@0.45.0
+ windows-sys@0.48.0
+ windows-targets@0.42.2
+ windows-targets@0.48.5
+ windows_aarch64_gnullvm@0.42.2
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_msvc@0.42.2
+ windows_aarch64_msvc@0.48.5
+ windows_i686_gnu@0.42.2
+ windows_i686_gnu@0.48.5
+ windows_i686_msvc@0.42.2
+ windows_i686_msvc@0.48.5
+ windows_x86_64_gnu@0.42.2
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnullvm@0.42.2
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_msvc@0.42.2
+ windows_x86_64_msvc@0.48.5
+ zune-inflate@0.2.42
+"
+
+inherit cargo cmake flag-o-matic llvm python-any-r1 systemd tmpfiles
+
+MY_P=${P//_/-}
+
+DESCRIPTION="Clam Anti-Virus Scanner"
+HOMEPAGE="https://www.clamav.net/"
+SRC_URI="https://github.com/Cisco-Talos/clamav/archive/refs/tags/${MY_P}.tar.gz
+ ${CARGO_CRATE_URIS}"
+S=${WORKDIR}/clamav-${MY_P}
+
+LICENSE="Apache-2.0 BSD GPL-2 ISC MIT MPL-2.0 Unicode-DFS-2016 ZLIB"
+SLOT="0/lts"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+fi
+
+IUSE="doc clamonacc +clamapp experimental jit libclamav-only milter rar selinux +system-mspack systemd test"
+
+REQUIRED_USE="libclamav-only? ( !clamonacc !clamapp !milter )
+ clamonacc? ( clamapp )
+ milter? ( clamapp )
+ test? ( !libclamav-only )"
+
+RESTRICT="!test? ( test )"
+
+# Require acct-{user,group}/clamav at build time so that we can set
+# the permissions on /var/lib/clamav in src_install rather than in
+# pkg_postinst; calling "chown" on the live filesystem scares me.
+COMMON_DEPEND="
+ acct-group/clamav
+ acct-user/clamav
+ app-arch/bzip2
+ dev-libs/json-c:=
+ dev-libs/libltdl
+ dev-libs/libpcre2:=
+ dev-libs/libxml2
+ dev-libs/openssl:=
+ >=sys-libs/zlib-1.2.2:=
+ virtual/libiconv
+ !libclamav-only? ( net-misc/curl )
+ clamapp? ( sys-libs/ncurses:= net-misc/curl )
+ elibc_musl? ( sys-libs/fts-standalone )
+ jit? ( <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):= )
+ milter? ( mail-filter/libmilter:= )
+ rar? ( app-arch/unrar )
+ system-mspack? ( dev-libs/libmspack )
+ test? ( dev-python/pytest )
+"
+
+# rust-bin < 1.71 has an executable stack
+# which is not supported on selinux #911589
+BDEPEND="
+ virtual/pkgconfig
+ >=virtual/rust-1.71
+ doc? ( app-text/doxygen )
+ test? (
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
+ )
+"
+
+DEPEND="${COMMON_DEPEND}
+ test? ( dev-libs/check )"
+
+RDEPEND="${COMMON_DEPEND}
+ selinux? ( sec-policy/selinux-clamav )"
+
+python_check_deps() {
+ python_has_version -b "dev-python/pytest[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use jit && llvm_pkg_setup
+ use test && python-any-r1_pkg_setup
+}
+
+src_configure() {
+ use elibc_musl && append-ldflags -lfts
+ use ppc64 && append-flags -mminimal-toc
+
+ local mycmakeargs=(
+ -DAPP_CONFIG_DIRECTORY="${EPREFIX}"/etc/clamav
+ -DBYTECODE_RUNTIME=$(usex jit llvm interpreter)
+ -DCLAMAV_GROUP="clamav"
+ -DCLAMAV_USER="clamav"
+ -DDATABASE_DIRECTORY="${EPREFIX}"/var/lib/clamav
+ -DENABLE_APP=$(usex clamapp ON OFF)
+ -DENABLE_CLAMONACC=$(usex clamonacc ON OFF)
+ -DENABLE_DOXYGEN=$(usex doc)
+ -DENABLE_EXPERIMENTAL=$(usex experimental ON OFF)
+ -DENABLE_EXTERNAL_MSPACK=$(usex system-mspack ON OFF)
+ -DENABLE_JSON_SHARED=ON
+ -DENABLE_MAN_PAGES=ON
+ -DENABLE_MILTER=$(usex milter ON OFF)
+ -DENABLE_SHARED_LIB=ON
+ -DENABLE_STATIC_LIB=OFF
+ -DENABLE_SYSTEMD=$(usex systemd ON OFF)
+ -DENABLE_TESTS=$(usex test ON OFF)
+ -DENABLE_UNRAR=$(usex rar ON OFF)
+ -DOPTIMIZE=ON
+ )
+
+ if use test ; then
+ # https://bugs.gentoo.org/818673
+ # Used to enable some more tests but doesn't behave well in
+ # sandbox necessarily(?) + needs certain debug symbols present
+ # in e.g. glibc.
+ mycmakeargs+=(
+ -DCMAKE_DISABLE_FIND_PACKAGE_Valgrind=ON
+ -DPYTHON_FIND_VERSION="${EPYTHON#python}"
+ )
+ fi
+
+ if use jit ; then
+ # Suppress CMake warnings that variables aren't consumed if we aren't using LLVM
+ # https://github.com/Cisco-Talos/clamav/blob/main/INSTALL.md#llvm-optional-see-bytecode-runtime-section
+ # https://github.com/Cisco-Talos/clamav/blob/main/INSTALL.md#bytecode-runtime
+ mycmakeargs+=(
+ -DLLVM_ROOT_DIR="$(get_llvm_prefix -d ${LLVM_MAX_SLOT})"
+ -DLLVM_FIND_VERSION="$(best_version sys-devel/llvm:${LLVM_MAX_SLOT} | cut -c 16-)"
+ )
+ fi
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ # init scripts
+ newinitd "${FILESDIR}/clamd.initd" clamd
+ newinitd "${FILESDIR}/freshclam.initd" freshclam
+ use clamonacc && \
+ newinitd "${FILESDIR}/clamonacc.initd" clamonacc
+ use milter && \
+ newinitd "${FILESDIR}/clamav-milter.initd" clamav-milter
+
+ if ! use libclamav-only ; then
+ if use systemd ; then
+ # The tmpfiles entry is behind USE=systemd because the
+ # upstream OpenRC service files should (and do) ensure that
+ # the directories they need exist and have the correct
+ # permissions without the help of opentmpfiles. There are
+ # years-old root exploits in opentmpfiles, the design is
+ # fundamentally flawed, and the maintainer is not up to
+ # the task of fixing it.
+ dotmpfiles "${FILESDIR}/tmpfiles.d/clamav.conf"
+ systemd_newunit "${FILESDIR}/clamd_at.service-0.104.0" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_newunit "${FILESDIR}/freshclamd.service-r1" \
+ "freshclamd.service"
+ fi
+
+ if use clamapp ; then
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
+ sed -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(LocalSocket .*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/clamav/clamd.conf.sample > \
+ "${ED}"/etc/clamav/clamd.conf || die
+
+ sed -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(DatabaseOwner .*\)/\1/" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamav/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/clamav/freshclam.conf.sample > \
+ "${ED}"/etc/clamav/freshclam.conf || die
+
+ if use milter ; then
+ # Note: only keep the "unix" ClamdSocket and MilterSocket!
+ sed -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(ClamdSocket unix:.*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s/^#\(MilterSocket unix:.*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav/clamav-milter.conf.sample > \
+ "${ED}"/etc/clamav/clamav-milter.conf || die
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-0.104.0" clamav-milter.service
+ fi
+
+ local i
+ for i in clamd freshclam clamav-milter
+ do
+ if [[ -f "${ED}"/etc/"${i}".conf.sample ]] ; then
+ mv "${ED}"/etc/"${i}".conf{.sample,} || die
+ fi
+ done
+
+ # These both need to be writable by the clamav user
+ # TODO: use syslog by default; that's what it's for.
+ diropts -o clamav -g clamav
+ keepdir /var/lib/clamav
+ keepdir /var/log/clamav
+ fi
+ fi
+
+ if use doc ; then
+ local HTML_DOCS=( docs/html/. )
+ einstalldocs
+ fi
+
+ # Don't install man pages for utilities we didn't install
+ if use libclamav-only ; then
+ rm -r "${ED}"/usr/share/man || die
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ if ! use libclamav-only ; then
+ if use systemd ; then
+ tmpfiles_process clamav.conf
+ fi
+ fi
+
+ if use milter ; then
+ elog "For simple instructions how to setup the clamav-milter read the"
+ elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
+ fi
+
+ local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
+ if [[ ! -f "${databases}" ]] ; then
+ ewarn "You must run freshclam manually to populate the virus database"
+ ewarn "before starting clamav for the first time."
+ fi
+
+ if ! systemd_is_booted ; then
+ ewarn "This version of ClamAV provides separate OpenRC services"
+ ewarn "for clamd, freshclam, clamav-milter, and clamonacc. The"
+ ewarn "clamd service now starts only the clamd daemon itself. You"
+ ewarn "should add freshclam (and perhaps clamav-milter) to any"
+ ewarn "runlevels that previously contained clamd."
+ fi
+}
diff --git a/app-antivirus/clamav/clamav-1.2.3.ebuild b/app-antivirus/clamav/clamav-1.2.3.ebuild
new file mode 100644
index 000000000000..0a2ba10bc64f
--- /dev/null
+++ b/app-antivirus/clamav/clamav-1.2.3.ebuild
@@ -0,0 +1,394 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+# Upstream are working on updating clamav's LLVM bytecode interpreter to work
+# with later versions of LLVM, but it's not ready yet. See:
+# https://github.com/Cisco-Talos/clamav/issues/581
+# This does not impact the ability of the package to build with llvm/clang otherwise.
+LLVM_MAX_SLOT=13
+PYTHON_COMPAT=( python3_{10..12} )
+
+# Autogenerated by pycargoebuild 0.13.2
+CRATES="
+ adler@1.0.2
+ aho-corasick@1.0.5
+ autocfg@1.1.0
+ base64@0.21.3
+ bindgen@0.65.1
+ bit_field@0.10.2
+ bitflags@1.3.2
+ bitflags@2.4.0
+ block-buffer@0.10.4
+ bumpalo@3.13.0
+ bytemuck@1.14.0
+ byteorder@1.4.3
+ cbindgen@0.25.0
+ cc@1.0.83
+ cexpr@0.6.0
+ cfg-if@1.0.0
+ clang-sys@1.6.1
+ color_quant@1.1.0
+ cpufeatures@0.2.9
+ crc32fast@1.3.2
+ crossbeam-channel@0.5.8
+ crossbeam-deque@0.8.3
+ crossbeam-epoch@0.9.15
+ crossbeam-utils@0.8.16
+ crunchy@0.2.2
+ crypto-common@0.1.6
+ digest@0.10.7
+ either@1.9.0
+ errno-dragonfly@0.1.2
+ errno@0.3.3
+ exr@1.7.0
+ fastrand@2.0.0
+ fdeflate@0.3.4
+ flate2@1.0.27
+ flume@0.10.14
+ futures-core@0.3.28
+ futures-sink@0.3.28
+ generic-array@0.14.7
+ getrandom@0.2.10
+ gif@0.12.0
+ glob@0.3.1
+ half@2.2.1
+ hashbrown@0.12.3
+ heck@0.4.1
+ hermit-abi@0.3.2
+ hex@0.4.3
+ home@0.5.5
+ image@0.24.7
+ indexmap@1.9.3
+ itoa@1.0.9
+ jpeg-decoder@0.3.0
+ js-sys@0.3.64
+ lazy_static@1.4.0
+ lazycell@1.3.0
+ lebe@0.5.2
+ libc@0.2.147
+ libloading@0.7.4
+ linux-raw-sys@0.4.5
+ lock_api@0.4.10
+ log@0.4.20
+ memchr@2.6.3
+ memoffset@0.9.0
+ minimal-lexical@0.2.1
+ miniz_oxide@0.7.1
+ nanorand@0.7.0
+ nom@7.1.3
+ num-complex@0.4.4
+ num-integer@0.1.45
+ num-rational@0.4.1
+ num-traits@0.2.16
+ num_cpus@1.16.0
+ once_cell@1.18.0
+ peeking_take_while@0.1.2
+ pin-project-internal@1.1.3
+ pin-project@1.1.3
+ png@0.17.13
+ prettyplease@0.2.15
+ primal-check@0.3.3
+ proc-macro2@1.0.66
+ qoi@0.4.1
+ quote@1.0.33
+ rayon-core@1.11.0
+ rayon@1.7.0
+ redox_syscall@0.3.5
+ regex-automata@0.3.8
+ regex-syntax@0.7.5
+ regex@1.9.5
+ rustc-hash@1.1.0
+ rustdct@0.7.1
+ rustfft@6.1.0
+ rustix@0.38.11
+ ryu@1.0.15
+ scopeguard@1.2.0
+ serde@1.0.188
+ serde_derive@1.0.188
+ serde_json@1.0.105
+ sha1@0.10.5
+ sha2@0.10.7
+ shlex@1.3.0
+ simd-adler32@0.3.7
+ smallvec@1.11.0
+ spin@0.9.8
+ strength_reduce@0.2.4
+ syn@1.0.109
+ syn@2.0.31
+ tempfile@3.8.0
+ thiserror-impl@1.0.48
+ thiserror@1.0.48
+ tiff@0.9.0
+ toml@0.5.11
+ transpose@0.2.3
+ typenum@1.16.0
+ unicode-ident@1.0.11
+ unicode-segmentation@1.10.1
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ wasm-bindgen-backend@0.2.87
+ wasm-bindgen-macro-support@0.2.87
+ wasm-bindgen-macro@0.2.87
+ wasm-bindgen-shared@0.2.87
+ wasm-bindgen@0.2.87
+ weezl@0.1.7
+ which@4.4.2
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.48.0
+ windows-targets@0.48.5
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_msvc@0.48.5
+ windows_i686_gnu@0.48.5
+ windows_i686_msvc@0.48.5
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_msvc@0.48.5
+ zune-inflate@0.2.54
+"
+
+inherit cargo cmake flag-o-matic llvm python-any-r1 systemd tmpfiles
+
+MY_P=${P//_/-}
+
+DESCRIPTION="Clam Anti-Virus Scanner"
+HOMEPAGE="https://www.clamav.net/"
+SRC_URI="https://github.com/Cisco-Talos/clamav/archive/refs/tags/${MY_P}.tar.gz
+ ${CARGO_CRATE_URIS}"
+S=${WORKDIR}/clamav-${MY_P}
+
+LICENSE="Apache-2.0 BSD GPL-2 ISC MIT MPL-2.0 Unicode-DFS-2016 ZLIB"
+# 0/sts (short term support) if not an LTS release
+SLOT="0/sts"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+fi
+
+IUSE="doc clamonacc +clamapp experimental jit libclamav-only milter rar selinux +system-mspack systemd test"
+
+REQUIRED_USE="libclamav-only? ( !clamonacc !clamapp !milter )
+ clamonacc? ( clamapp )
+ milter? ( clamapp )
+ test? ( !libclamav-only )"
+
+RESTRICT="!test? ( test )"
+
+# Require acct-{user,group}/clamav at build time so that we can set
+# the permissions on /var/lib/clamav in src_install rather than in
+# pkg_postinst; calling "chown" on the live filesystem scares me.
+COMMON_DEPEND="
+ acct-group/clamav
+ acct-user/clamav
+ app-arch/bzip2
+ dev-libs/json-c:=
+ dev-libs/libltdl
+ dev-libs/libpcre2:=
+ dev-libs/libxml2
+ dev-libs/openssl:=
+ >=sys-libs/zlib-1.2.2:=
+ virtual/libiconv
+ !libclamav-only? ( net-misc/curl )
+ clamapp? ( sys-libs/ncurses:= net-misc/curl )
+ elibc_musl? ( sys-libs/fts-standalone )
+ jit? ( <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):= )
+ milter? ( mail-filter/libmilter:= )
+ rar? ( app-arch/unrar )
+ system-mspack? ( dev-libs/libmspack )
+ test? ( dev-python/pytest )
+"
+# rust-bin < 1.71 has an executable stack
+# which is not supported on selinux #911589
+BDEPEND="
+ virtual/pkgconfig
+ >=virtual/rust-1.71
+ doc? ( app-text/doxygen )
+ test? (
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
+ )
+"
+
+DEPEND="${COMMON_DEPEND}
+ test? ( dev-libs/check )"
+
+RDEPEND="${COMMON_DEPEND}
+ selinux? ( sec-policy/selinux-clamav )"
+
+python_check_deps() {
+ python_has_version -b "dev-python/pytest[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use jit && llvm_pkg_setup
+ use test && python-any-r1_pkg_setup
+}
+
+src_configure() {
+ use elibc_musl && append-ldflags -lfts
+ use ppc64 && append-flags -mminimal-toc
+
+ local mycmakeargs=(
+ -DAPP_CONFIG_DIRECTORY="${EPREFIX}"/etc/clamav
+ -DBYTECODE_RUNTIME=$(usex jit llvm interpreter)
+ -DCLAMAV_GROUP="clamav"
+ -DCLAMAV_USER="clamav"
+ -DDATABASE_DIRECTORY="${EPREFIX}"/var/lib/clamav
+ -DENABLE_APP=$(usex clamapp ON OFF)
+ -DENABLE_CLAMONACC=$(usex clamonacc ON OFF)
+ -DENABLE_DOXYGEN=$(usex doc)
+ -DENABLE_EXPERIMENTAL=$(usex experimental ON OFF)
+ -DENABLE_EXTERNAL_MSPACK=$(usex system-mspack ON OFF)
+ -DENABLE_JSON_SHARED=ON
+ -DENABLE_MAN_PAGES=ON
+ -DENABLE_MILTER=$(usex milter ON OFF)
+ -DENABLE_SHARED_LIB=ON
+ -DENABLE_STATIC_LIB=OFF
+ -DENABLE_SYSTEMD=$(usex systemd ON OFF)
+ -DENABLE_TESTS=$(usex test ON OFF)
+ -DENABLE_UNRAR=$(usex rar ON OFF)
+ -DOPTIMIZE=ON
+ )
+
+ if use test ; then
+ # https://bugs.gentoo.org/818673
+ # Used to enable some more tests but doesn't behave well in
+ # sandbox necessarily(?) + needs certain debug symbols present
+ # in e.g. glibc.
+ mycmakeargs+=(
+ -DCMAKE_DISABLE_FIND_PACKAGE_Valgrind=ON
+ -DPYTHON_FIND_VERSION="${EPYTHON#python}"
+ )
+ fi
+
+ if use jit ; then
+ # Suppress CMake warnings that variables aren't consumed if we aren't using LLVM
+ # https://github.com/Cisco-Talos/clamav/blob/main/INSTALL.md#llvm-optional-see-bytecode-runtime-section
+ # https://github.com/Cisco-Talos/clamav/blob/main/INSTALL.md#bytecode-runtime
+ mycmakeargs+=(
+ -DLLVM_ROOT_DIR="$(get_llvm_prefix -d ${LLVM_MAX_SLOT})"
+ -DLLVM_FIND_VERSION="$(best_version sys-devel/llvm:${LLVM_MAX_SLOT} | cut -c 16-)"
+ )
+ fi
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ # init scripts
+ newinitd "${FILESDIR}/clamd.initd" clamd
+ newinitd "${FILESDIR}/freshclam.initd" freshclam
+ use clamonacc && \
+ newinitd "${FILESDIR}/clamonacc.initd" clamonacc
+ use milter && \
+ newinitd "${FILESDIR}/clamav-milter.initd" clamav-milter
+
+ if ! use libclamav-only ; then
+ if use systemd ; then
+ # The tmpfiles entry is behind USE=systemd because the
+ # upstream OpenRC service files should (and do) ensure that
+ # the directories they need exist and have the correct
+ # permissions without the help of opentmpfiles. There are
+ # years-old root exploits in opentmpfiles, the design is
+ # fundamentally flawed, and the maintainer is not up to
+ # the task of fixing it.
+ dotmpfiles "${FILESDIR}/tmpfiles.d/clamav.conf"
+ systemd_newunit "${FILESDIR}/clamd_at.service-0.104.0" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_newunit "${FILESDIR}/freshclamd.service-r1" \
+ "freshclamd.service"
+ fi
+
+ if use clamapp ; then
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
+ sed -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(LocalSocket .*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/clamav/clamd.conf.sample > \
+ "${ED}"/etc/clamav/clamd.conf || die
+
+ sed -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(DatabaseOwner .*\)/\1/" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamav/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/clamav/freshclam.conf.sample > \
+ "${ED}"/etc/clamav/freshclam.conf || die
+
+ if use milter ; then
+ # Note: only keep the "unix" ClamdSocket and MilterSocket!
+ sed -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(ClamdSocket unix:.*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s/^#\(MilterSocket unix:.*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav/clamav-milter.conf.sample > \
+ "${ED}"/etc/clamav/clamav-milter.conf || die
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-0.104.0" clamav-milter.service
+ fi
+
+ local i
+ for i in clamd freshclam clamav-milter
+ do
+ if [[ -f "${ED}"/etc/"${i}".conf.sample ]] ; then
+ mv "${ED}"/etc/"${i}".conf{.sample,} || die
+ fi
+ done
+
+ # These both need to be writable by the clamav user
+ # TODO: use syslog by default; that's what it's for.
+ diropts -o clamav -g clamav
+ keepdir /var/lib/clamav
+ keepdir /var/log/clamav
+ fi
+ fi
+
+ if use doc ; then
+ local HTML_DOCS=( docs/html/. )
+ einstalldocs
+ fi
+
+ # Don't install man pages for utilities we didn't install
+ if use libclamav-only ; then
+ rm -r "${ED}"/usr/share/man || die
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ if ! use libclamav-only ; then
+ if use systemd ; then
+ tmpfiles_process clamav.conf
+ fi
+ fi
+
+ if use milter ; then
+ elog "For simple instructions how to setup the clamav-milter read the"
+ elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
+ fi
+
+ local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
+ if [[ ! -f "${databases}" ]] ; then
+ ewarn "You must run freshclam manually to populate the virus database"
+ ewarn "before starting clamav for the first time."
+ fi
+
+ if ! systemd_is_booted ; then
+ ewarn "This version of ClamAV provides separate OpenRC services"
+ ewarn "for clamd, freshclam, clamav-milter, and clamonacc. The"
+ ewarn "clamd service now starts only the clamd daemon itself. You"
+ ewarn "should add freshclam (and perhaps clamav-milter) to any"
+ ewarn "runlevels that previously contained clamd."
+ fi
+}
diff --git a/app-antivirus/clamav/clamav-1.3.1.ebuild b/app-antivirus/clamav/clamav-1.3.1.ebuild
new file mode 100644
index 000000000000..736dd8833c8a
--- /dev/null
+++ b/app-antivirus/clamav/clamav-1.3.1.ebuild
@@ -0,0 +1,397 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+# Upstream are working on updating clamav's LLVM bytecode interpreter to work
+# with later versions of LLVM, but it's not ready yet. See:
+# https://github.com/Cisco-Talos/clamav/issues/581
+# This does not impact the ability of the package to build with llvm/clang otherwise.
+LLVM_MAX_SLOT=13
+PYTHON_COMPAT=( python3_{10..12} )
+
+# Autogenerated by pycargoebuild 0.13.2
+CRATES="
+ adler@1.0.2
+ aho-corasick@1.1.2
+ autocfg@1.1.0
+ base64@0.21.5
+ bindgen@0.65.1
+ bit_field@0.10.2
+ bitflags@1.3.2
+ bitflags@2.4.1
+ block-buffer@0.10.4
+ bytemuck@1.14.0
+ byteorder@1.5.0
+ bytes@1.5.0
+ cbindgen@0.25.0
+ cexpr@0.6.0
+ cfg-if@1.0.0
+ clang-sys@1.6.1
+ color_quant@1.1.0
+ cpufeatures@0.2.11
+ crc32fast@1.3.2
+ crossbeam-deque@0.8.4
+ crossbeam-epoch@0.9.16
+ crossbeam-utils@0.8.17
+ crunchy@0.2.2
+ crypto-common@0.1.6
+ digest@0.10.7
+ either@1.9.0
+ encoding_rs@0.8.33
+ enum-primitive-derive@0.2.2
+ errno@0.3.8
+ exr@1.71.0
+ fastrand@2.0.1
+ fdeflate@0.3.4
+ flate2@1.0.28
+ flume@0.11.0
+ generic-array@0.14.7
+ gif@0.12.0
+ glob@0.3.1
+ half@2.2.1
+ hashbrown@0.12.3
+ heck@0.4.1
+ hex-literal@0.4.1
+ hex@0.4.3
+ home@0.5.5
+ image@0.24.7
+ indexmap@1.9.3
+ itertools@0.10.5
+ itoa@1.0.10
+ jpeg-decoder@0.3.0
+ lazy_static@1.4.0
+ lazycell@1.3.0
+ lebe@0.5.2
+ libc@0.2.151
+ libloading@0.7.4
+ linux-raw-sys@0.4.12
+ lock_api@0.4.11
+ log@0.4.20
+ memchr@2.6.4
+ memoffset@0.9.0
+ minimal-lexical@0.2.1
+ miniz_oxide@0.7.1
+ nom@7.1.3
+ num-complex@0.4.4
+ num-integer@0.1.45
+ num-rational@0.4.1
+ num-traits@0.2.17
+ once_cell@1.19.0
+ paste@1.0.14
+ peeking_take_while@0.1.2
+ png@0.17.13
+ prettyplease@0.2.15
+ primal-check@0.3.3
+ proc-macro2@1.0.70
+ qoi@0.4.1
+ quote@1.0.33
+ rayon-core@1.12.0
+ rayon@1.8.0
+ redox_syscall@0.4.1
+ regex-automata@0.4.3
+ regex-syntax@0.8.2
+ regex@1.10.2
+ rustc-hash@1.1.0
+ rustdct@0.7.1
+ rustfft@6.1.0
+ rustix@0.38.28
+ ryu@1.0.16
+ scopeguard@1.2.0
+ serde@1.0.193
+ serde_derive@1.0.193
+ serde_json@1.0.108
+ sha1@0.10.6
+ sha2@0.10.8
+ shlex@1.3.0
+ simd-adler32@0.3.7
+ smallvec@1.11.2
+ spin@0.9.8
+ strength_reduce@0.2.4
+ syn@1.0.109
+ syn@2.0.41
+ tempfile@3.8.1
+ thiserror-impl@1.0.50
+ thiserror@1.0.50
+ tiff@0.9.0
+ toml@0.5.11
+ transpose@0.2.3
+ typenum@1.17.0
+ unicode-ident@1.0.12
+ unicode-segmentation@1.10.1
+ uuid@1.6.1
+ version_check@0.9.4
+ weezl@0.1.7
+ which@4.4.2
+ widestring@1.0.2
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.48.0
+ windows-sys@0.52.0
+ windows-targets@0.48.5
+ windows-targets@0.52.0
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_gnullvm@0.52.0
+ windows_aarch64_msvc@0.48.5
+ windows_aarch64_msvc@0.52.0
+ windows_i686_gnu@0.48.5
+ windows_i686_gnu@0.52.0
+ windows_i686_msvc@0.48.5
+ windows_i686_msvc@0.52.0
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnu@0.52.0
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_gnullvm@0.52.0
+ windows_x86_64_msvc@0.48.5
+ windows_x86_64_msvc@0.52.0
+ zune-inflate@0.2.54
+"
+
+# Get the commit from the CLAM-2329-new-from-slice branch
+declare -A GIT_CRATES=(
+ [onenote_parser]="https://github.com/Cisco-Talos/onenote.rs;8b450447e58143004b68dd21c11b710fdb79be92;onenote.rs-%commit%"
+)
+
+inherit cargo cmake flag-o-matic llvm python-any-r1 systemd tmpfiles
+
+MY_P=${P//_/-}
+
+DESCRIPTION="Clam Anti-Virus Scanner"
+HOMEPAGE="https://www.clamav.net/"
+SRC_URI="https://github.com/Cisco-Talos/clamav/archive/refs/tags/${MY_P}.tar.gz
+ ${CARGO_CRATE_URIS}"
+S=${WORKDIR}/clamav-${MY_P}
+
+LICENSE="Apache-2.0 BSD GPL-2 ISC MIT MPL-2.0 Unicode-DFS-2016 ZLIB"
+# 0/sts (short term support) if not an LTS release
+SLOT="0/sts"
+if [[ ${PV} != *_rc* ]] ; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+fi
+
+IUSE="doc clamonacc +clamapp experimental jit libclamav-only milter rar selinux +system-mspack systemd test"
+
+REQUIRED_USE="libclamav-only? ( !clamonacc !clamapp !milter )
+ clamonacc? ( clamapp )
+ milter? ( clamapp )
+ test? ( !libclamav-only )"
+
+RESTRICT="!test? ( test )"
+
+# Require acct-{user,group}/clamav at build time so that we can set
+# the permissions on /var/lib/clamav in src_install rather than in
+# pkg_postinst; calling "chown" on the live filesystem scares me.
+COMMON_DEPEND="
+ acct-group/clamav
+ acct-user/clamav
+ app-arch/bzip2
+ dev-libs/json-c:=
+ dev-libs/libltdl
+ dev-libs/libpcre2:=
+ dev-libs/libxml2
+ dev-libs/openssl:=
+ >=sys-libs/zlib-1.2.2:=
+ virtual/libiconv
+ !libclamav-only? ( net-misc/curl )
+ clamapp? ( sys-libs/ncurses:= net-misc/curl )
+ elibc_musl? ( sys-libs/fts-standalone )
+ jit? ( <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):= )
+ milter? ( mail-filter/libmilter:= )
+ rar? ( app-arch/unrar )
+ system-mspack? ( dev-libs/libmspack )
+ test? ( dev-python/pytest )
+"
+# rust-bin < 1.71 has an executable stack
+# which is not supported on selinux #911589
+BDEPEND="
+ virtual/pkgconfig
+ >=virtual/rust-1.71
+ doc? ( app-text/doxygen )
+ test? (
+ ${PYTHON_DEPS}
+ $(python_gen_any_dep 'dev-python/pytest[${PYTHON_USEDEP}]')
+ )
+"
+
+DEPEND="${COMMON_DEPEND}
+ test? ( dev-libs/check )"
+
+RDEPEND="${COMMON_DEPEND}
+ selinux? ( sec-policy/selinux-clamav )"
+
+python_check_deps() {
+ python_has_version -b "dev-python/pytest[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use jit && llvm_pkg_setup
+ use test && python-any-r1_pkg_setup
+}
+
+src_configure() {
+ use elibc_musl && append-ldflags -lfts
+ use ppc64 && append-flags -mminimal-toc
+
+ local mycmakeargs=(
+ -DAPP_CONFIG_DIRECTORY="${EPREFIX}"/etc/clamav
+ -DBYTECODE_RUNTIME=$(usex jit llvm interpreter)
+ -DCLAMAV_GROUP="clamav"
+ -DCLAMAV_USER="clamav"
+ -DDATABASE_DIRECTORY="${EPREFIX}"/var/lib/clamav
+ -DENABLE_APP=$(usex clamapp ON OFF)
+ -DENABLE_CLAMONACC=$(usex clamonacc ON OFF)
+ -DENABLE_DOXYGEN=$(usex doc)
+ -DENABLE_EXPERIMENTAL=$(usex experimental ON OFF)
+ -DENABLE_EXTERNAL_MSPACK=$(usex system-mspack ON OFF)
+ -DENABLE_JSON_SHARED=ON
+ -DENABLE_MAN_PAGES=ON
+ -DENABLE_MILTER=$(usex milter ON OFF)
+ -DENABLE_SHARED_LIB=ON
+ -DENABLE_STATIC_LIB=OFF
+ -DENABLE_SYSTEMD=$(usex systemd ON OFF)
+ -DENABLE_TESTS=$(usex test ON OFF)
+ -DENABLE_UNRAR=$(usex rar ON OFF)
+ -DOPTIMIZE=ON
+ )
+
+ if use test ; then
+ # https://bugs.gentoo.org/818673
+ # Used to enable some more tests but doesn't behave well in
+ # sandbox necessarily(?) + needs certain debug symbols present
+ # in e.g. glibc.
+ mycmakeargs+=(
+ -DCMAKE_DISABLE_FIND_PACKAGE_Valgrind=ON
+ -DPYTHON_FIND_VERSION="${EPYTHON#python}"
+ )
+ fi
+
+ if use jit ; then
+ # Suppress CMake warnings that variables aren't consumed if we aren't using LLVM
+ # https://github.com/Cisco-Talos/clamav/blob/main/INSTALL.md#llvm-optional-see-bytecode-runtime-section
+ # https://github.com/Cisco-Talos/clamav/blob/main/INSTALL.md#bytecode-runtime
+ mycmakeargs+=(
+ -DLLVM_ROOT_DIR="$(get_llvm_prefix -d ${LLVM_MAX_SLOT})"
+ -DLLVM_FIND_VERSION="$(best_version sys-devel/llvm:${LLVM_MAX_SLOT} | cut -c 16-)"
+ )
+ fi
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ # init scripts
+ newinitd "${FILESDIR}/clamd.initd" clamd
+ newinitd "${FILESDIR}/freshclam.initd" freshclam
+ use clamonacc && \
+ newinitd "${FILESDIR}/clamonacc.initd" clamonacc
+ use milter && \
+ newinitd "${FILESDIR}/clamav-milter.initd" clamav-milter
+
+ if ! use libclamav-only ; then
+ if use systemd ; then
+ # The tmpfiles entry is behind USE=systemd because the
+ # upstream OpenRC service files should (and do) ensure that
+ # the directories they need exist and have the correct
+ # permissions without the help of opentmpfiles. There are
+ # years-old root exploits in opentmpfiles, the design is
+ # fundamentally flawed, and the maintainer is not up to
+ # the task of fixing it.
+ dotmpfiles "${FILESDIR}/tmpfiles.d/clamav.conf"
+ systemd_newunit "${FILESDIR}/clamd_at.service-0.104.0" "clamd@.service"
+ systemd_dounit "${FILESDIR}/clamd.service"
+ systemd_newunit "${FILESDIR}/freshclamd.service-r1" \
+ "freshclamd.service"
+ fi
+
+ if use clamapp ; then
+ # Modify /etc/{clamd,freshclam}.conf to be usable out of the box
+ sed -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(LocalSocket .*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamd.log:" \
+ -e "s:^\#\(LogTime\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/clamav/clamd.conf.sample > \
+ "${ED}"/etc/clamav/clamd.conf || die
+
+ sed -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(DatabaseOwner .*\)/\1/" \
+ -e "s:^\#\(UpdateLogFile\) .*:\1 ${EPREFIX}/var/log/clamav/freshclam.log:" \
+ -e "s:^\#\(NotifyClamd\).*:\1 ${EPREFIX}/etc/clamav/clamd.conf:" \
+ -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \
+ -e "s/^#\(DatabaseDirectory .*\)/\1/" \
+ "${ED}"/etc/clamav/freshclam.conf.sample > \
+ "${ED}"/etc/clamav/freshclam.conf || die
+
+ if use milter ; then
+ # Note: only keep the "unix" ClamdSocket and MilterSocket!
+ sed -e "s:^\(Example\):\# \1:" \
+ -e "s/^#\(PidFile .*\)/\1/" \
+ -e "s/^#\(ClamdSocket unix:.*\)/\1/" \
+ -e "s/^#\(User .*\)/\1/" \
+ -e "s/^#\(MilterSocket unix:.*\)/\1/" \
+ -e "s:^\#\(LogFile\) .*:\1 ${EPREFIX}/var/log/clamav/clamav-milter.log:" \
+ "${ED}"/etc/clamav/clamav-milter.conf.sample > \
+ "${ED}"/etc/clamav/clamav-milter.conf || die
+
+ systemd_newunit "${FILESDIR}/clamav-milter.service-0.104.0" clamav-milter.service
+ fi
+
+ local i
+ for i in clamd freshclam clamav-milter
+ do
+ if [[ -f "${ED}"/etc/"${i}".conf.sample ]] ; then
+ mv "${ED}"/etc/"${i}".conf{.sample,} || die
+ fi
+ done
+
+ # These both need to be writable by the clamav user
+ # TODO: use syslog by default; that's what it's for.
+ diropts -o clamav -g clamav
+ keepdir /var/lib/clamav
+ keepdir /var/log/clamav
+ fi
+ fi
+
+ if use doc ; then
+ local HTML_DOCS=( docs/html/. )
+ einstalldocs
+ fi
+
+ # Don't install man pages for utilities we didn't install
+ if use libclamav-only ; then
+ rm -r "${ED}"/usr/share/man || die
+ fi
+
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ if ! use libclamav-only ; then
+ if use systemd ; then
+ tmpfiles_process clamav.conf
+ fi
+ fi
+
+ if use milter ; then
+ elog "For simple instructions how to setup the clamav-milter read the"
+ elog "clamav-milter.README.gentoo in /usr/share/doc/${PF}"
+ fi
+
+ local databases=( "${EROOT}"/var/lib/clamav/main.c[lv]d )
+ if [[ ! -f "${databases}" ]] ; then
+ ewarn "You must run freshclam manually to populate the virus database"
+ ewarn "before starting clamav for the first time."
+ fi
+
+ if ! systemd_is_booted ; then
+ ewarn "This version of ClamAV provides separate OpenRC services"
+ ewarn "for clamd, freshclam, clamav-milter, and clamonacc. The"
+ ewarn "clamd service now starts only the clamd daemon itself. You"
+ ewarn "should add freshclam (and perhaps clamav-milter) to any"
+ ewarn "runlevels that previously contained clamd."
+ fi
+}