From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- net-fs/samba/Manifest | 36 +++ net-fs/samba/files/4.2/samba4.confd | 38 +++ net-fs/samba/files/4.2/samba4.initd-r1 | 55 ++++ net-fs/samba/files/4.4/samba4.confd | 38 +++ net-fs/samba/files/4.4/samba4.initd-r1 | 55 ++++ net-fs/samba/files/nmbd.service | 12 + .../files/samba-4.2.3-heimdal_compilefix.patch | 22 ++ net-fs/samba/files/samba-4.2.7-pam.patch | 36 +++ net-fs/samba/files/samba-4.4.0-pam.patch | 29 ++ .../samba/files/samba-4.5.1-compile_et_fix.patch | 16 ++ net-fs/samba/files/samba.conf | 2 + net-fs/samba/files/samba.service | 10 + net-fs/samba/files/smbd.service | 12 + net-fs/samba/files/smbd.socket | 9 + net-fs/samba/files/smbd_at.service | 7 + net-fs/samba/files/talloc-disable-python.patch | 34 +++ net-fs/samba/files/winbindd.service | 12 + net-fs/samba/metadata.xml | 31 +++ net-fs/samba/samba-4.2.14.ebuild | 257 +++++++++++++++++ net-fs/samba/samba-4.5.10-r1.ebuild | 281 +++++++++++++++++++ net-fs/samba/samba-4.5.13.ebuild | 282 +++++++++++++++++++ net-fs/samba/samba-4.5.14.ebuild | 282 +++++++++++++++++++ net-fs/samba/samba-4.6.8-r1.ebuild | 305 +++++++++++++++++++++ net-fs/samba/samba-4.7.0-r1.ebuild | 301 ++++++++++++++++++++ 24 files changed, 2162 insertions(+) create mode 100644 net-fs/samba/Manifest create mode 100644 net-fs/samba/files/4.2/samba4.confd create mode 100644 net-fs/samba/files/4.2/samba4.initd-r1 create mode 100644 net-fs/samba/files/4.4/samba4.confd create mode 100644 net-fs/samba/files/4.4/samba4.initd-r1 create mode 100644 net-fs/samba/files/nmbd.service create mode 100644 net-fs/samba/files/samba-4.2.3-heimdal_compilefix.patch create mode 100644 net-fs/samba/files/samba-4.2.7-pam.patch create mode 100644 net-fs/samba/files/samba-4.4.0-pam.patch create mode 100644 net-fs/samba/files/samba-4.5.1-compile_et_fix.patch create mode 100644 net-fs/samba/files/samba.conf create mode 100644 net-fs/samba/files/samba.service create mode 100644 net-fs/samba/files/smbd.service create mode 100644 net-fs/samba/files/smbd.socket create mode 100644 net-fs/samba/files/smbd_at.service create mode 100644 net-fs/samba/files/talloc-disable-python.patch create mode 100644 net-fs/samba/files/winbindd.service create mode 100644 net-fs/samba/metadata.xml create mode 100644 net-fs/samba/samba-4.2.14.ebuild create mode 100644 net-fs/samba/samba-4.5.10-r1.ebuild create mode 100644 net-fs/samba/samba-4.5.13.ebuild create mode 100644 net-fs/samba/samba-4.5.14.ebuild create mode 100644 net-fs/samba/samba-4.6.8-r1.ebuild create mode 100644 net-fs/samba/samba-4.7.0-r1.ebuild (limited to 'net-fs/samba') diff --git a/net-fs/samba/Manifest b/net-fs/samba/Manifest new file mode 100644 index 000000000000..ad93e8fbc7fe --- /dev/null +++ b/net-fs/samba/Manifest @@ -0,0 +1,36 @@ +AUX 4.2/samba4.confd 1783 SHA256 53755809cc27fdbaf98752cd3da45b5c2bda62dd46fcc37570c6e237f7954ffa SHA512 6fc7edf192957f97b171c97482317bf563385917cfdbf950ed28d9387961bd16f82844c6f9b5c430508ec6dc7331ecdf5f81fa3135663316061c1d0b1808f53d WHIRLPOOL 868539ecf658f9da3574847cb1447dafe422c60a9208de5580cf7f53e4346e9c7d1c6b3e7ea5c684b83e613dd912c5245ffce6a43bc8bd9bf8417a9c7a5f2557 +AUX 4.2/samba4.initd-r1 1103 SHA256 d40c512760bc0cc56629429219e1eadbcee23aa12ec5b3145f679ed644d0912c SHA512 8627b32446afed2cf1238eafc0f154ddb6c16857ee96f959e47f8d485b7317354afe59a08fcb3adbd17da087069cf2b94020a44b9190d597b40afd0b8aedf9a5 WHIRLPOOL 8f446f2f5302582e162c9eefc679b5037df33d988484aa1773eac732740dbed4e43f771ce9ab93c0a0427f9f90db9c760ab281427e229748640924f91eada32e +AUX 4.4/samba4.confd 1783 SHA256 53755809cc27fdbaf98752cd3da45b5c2bda62dd46fcc37570c6e237f7954ffa SHA512 6fc7edf192957f97b171c97482317bf563385917cfdbf950ed28d9387961bd16f82844c6f9b5c430508ec6dc7331ecdf5f81fa3135663316061c1d0b1808f53d WHIRLPOOL 868539ecf658f9da3574847cb1447dafe422c60a9208de5580cf7f53e4346e9c7d1c6b3e7ea5c684b83e613dd912c5245ffce6a43bc8bd9bf8417a9c7a5f2557 +AUX 4.4/samba4.initd-r1 1103 SHA256 d40c512760bc0cc56629429219e1eadbcee23aa12ec5b3145f679ed644d0912c SHA512 8627b32446afed2cf1238eafc0f154ddb6c16857ee96f959e47f8d485b7317354afe59a08fcb3adbd17da087069cf2b94020a44b9190d597b40afd0b8aedf9a5 WHIRLPOOL 8f446f2f5302582e162c9eefc679b5037df33d988484aa1773eac732740dbed4e43f771ce9ab93c0a0427f9f90db9c760ab281427e229748640924f91eada32e +AUX nmbd.service 224 SHA256 a5e25c11714206c4fb129333dd45152c5753716c6445cbe78c28275df1a1cb77 SHA512 098dfb270c5a5c29f59b4fd8d51b17931771e25e481124832f1a086677825527e2afa7276e8614e5007fbf044d253ce2eaf3a7caf7461ad5d90d0b1c7f157f9d WHIRLPOOL 2f7c342a60c09d5e40e968a026aa17d8c2fe3fd032331c7bb26599bb0f8ec8a77c2a3e329498ed16b1602451fd85a8ef076c436e8a092740cfbd01a82ca52e30 +AUX samba-4.2.3-heimdal_compilefix.patch 819 SHA256 6cf93d127aa900c1e9a4fb8a3bdff6054d78a7adb798c6f409feffc13c714ee9 SHA512 0f6ddbf58e5d5b83e3fb9738dd10c2ab0f1ed96fb62f9b4389a40729b3fe2d4af1a5c5bd2d44fa7d568136072b787b6358aeca3026f1acec4f5a6869e74f2536 WHIRLPOOL 882a52598013a40165d87616eaa016139fa89ff218dc43a6e6518123ccc18ca84e4ba275731e10ec762b22f26576eac56ad6b257cfae2e1cbc45f518a0d37007 +AUX samba-4.2.7-pam.patch 1273 SHA256 e1abd99fcf4ff721dafa64c77a60b07962e3e818eaf5d10fecead61a2af81e07 SHA512 5f900ebfdfb15af38814864f7ec8cd52d3525098d6f2017ab2f29d301e6a0e622d2ab37976fbd97180cbfe23c7853e91ab7966655eb46ebd9bdd2951205e46bc WHIRLPOOL 91e1fc2e49944d1ded93d902fc50437763388a12b8c2eab70e2dcd8124860746c71fa8b4c26e7b43e5ebc2c0fc94c4c005a2c1eb8b9af68e77c9c6cc1d92927c +AUX samba-4.4.0-pam.patch 895 SHA256 a7f91da7da039346e9497addef7e644ef1290b5915a43fb9cc76200294022eb7 SHA512 5a00c6131c372fc1cc9e23e4a37314442bf9af8e420a040a7b20ec3d76a357959d456437ed13e2e17f938eb6dcb4e7c5d899ff3d670526b0a444f63e35d5262c WHIRLPOOL 48e4853bb284ba0bf54262a951ae8045075179c51dbb27689a31c0eba61f1ddb707e1adf62e5e67940c239ea7bc4d1691e6eb8d21781fd9fb30cb76a32cc229b +AUX samba-4.5.1-compile_et_fix.patch 762 SHA256 49039beb8e96139b32c733e876f6dbdfb764dc51fc3b963d5485aad33641628b SHA512 9605751653dcbbce41be807a9b4f8e5f657db6622f843e91c4df9c4b3e4ad621b6e8e3891f2b970208d55a80801355988f253e3c844ca51a658cd6de8c373e24 WHIRLPOOL 93e57f6c5cff7a1b24a71cce6c584f2a12560b38a5841bf888e6f5d8323801b4aa7ac5fe1bf06cdd7739d284509c07f465c03a07de1b9aa03d7c9988a59cb4c2 +AUX samba.conf 61 SHA256 e4fc68bc14a44e3c452e767d996ff693d131da317eb513de10d752dd96cb6f12 SHA512 4a75185762c90d110c399215fbfc939d30804b558ffdb11cc68dee6f87a94c86cadbcd63935884db1266cf40fe24fefb75f9067fe4751ad9838d7a43e8973b9e WHIRLPOOL ad21bc3738c2ec721ad3be746c66719385390835c7f4da881fc0cc1c982bb6821a56300157b1169d1a35264e44dab1a0c29cd9919455a02a8f4c53c665a4bed3 +AUX samba.service 199 SHA256 0ae738fa2a15b476dbca016dfa4e1cf4b8c4a575e13edf518eb70b615c02a059 SHA512 eb277917f15de958f4a0404b66c6d2cc82ae4319b85f2f442489988d523bf92e2a9d23a6051ee693cd4bcfbc67947e8028c59906ad3e537578daf5caee8a6f16 WHIRLPOOL 1132081b63b1e0e1a9342d59493ebfe1d918133a4091e48c42dae7845dcaa24a0b8e7a1183d5a41b0173c3f6dbc17838a9b7a6297fc8ea0775ab150a22ae3151 +AUX smbd.service 250 SHA256 e1f5da902cd97891852f6463b2c7eddbc61e7fbd3e3c281028a806319627fc68 SHA512 a54e3c337f7c27766a81f68ad6d8f4eb6ddb1d1aec3303f274e419a49114755bc5dd711701d5e64954ae7153a8be4a7063371af286696c0b81d543b9276703c3 WHIRLPOOL 18b6a57603a41303d207249fdb46cb4f6e887f8b9bd4921dca6b4f28a59951368d6abead2dc9d3be2c09cb2c9f295087ef5f20d121a309791b9031e3fad28b13 +AUX smbd.socket 121 SHA256 d62a239cba39ae03dbb7a291843b2c202973341c85d93ffc87b4e78813be44c2 SHA512 2db4a707fcc6ef1928ac010e5e92cdaf0f6ff3ffa8aef918e0db1ce910abfb481d6a19082337f9c8444cd780d1d442fa8df2bb65e6142fc109d29657532572ed WHIRLPOOL aef792f27a7cd91ee258b6137015269cf2e6310c24a060acb7c6a97162aaebe37f32f66e46f4399cd1160bcc65e5608da7bc87bf933bccd2ffdfe51a6a7cdd8d +AUX smbd_at.service 145 SHA256 909dddfd80982035739081d86d2c524f6a25440d9c10b8a80626d9b4eee424cd SHA512 e6486c35dfa6f77ad46547a78fcae55fb71e4dad7dc7b4580c2b8c1be232c0a870f56714b2b103a1fd8717298f41347d7178fbebb90f0f2d0324fe5233f0f9f3 WHIRLPOOL f5ac03a1e7b653458d49fa2c2afe674e9d8f1e5a81e72a5e49781de3e5111bbe23eedc38c78a6f5e7edc4c32300ddaf76caf889de256fc799cf117edcd6ce6fb +AUX talloc-disable-python.patch 1706 SHA256 005dabcd79697577ea3ad0c5e65c0c0511492ba925c2af87b655acb91fbdcb2d SHA512 ac0bf82e8ed8b918a5efbdeb0a6cbaaef22bb72231abb09026637d62b8ce35b25212960d26c07abe63661328ab7ea8a82590cd93f04de583e23239211daf6efa WHIRLPOOL 9b18876c86af3d9211c87137ba628b0bb4f0b69cd961eb75b9ed1de461d9a157c75fc7605cba63f5024544d3bbb7270027894074a3d8cec03d99456153d1e9fb +AUX winbindd.service 240 SHA256 755036bc419cce90200ac3c04986fbb7cf718c128c2a1288c634658bb779bf3a SHA512 f1ce6d035e8e0fcdc73f14e3b60c9647043777ff6b2a982a81ed07eb4df5ff245a9511e3e4a9d8163f9c8f3fb86d2a39a67621ace68392eb7c2f2e2a55d587f7 WHIRLPOOL eb4d7f30b4ce3341e3d24a6c05965bdce9ded78a7327b44d3d04d00837d6e8109857b1fb1b78c8325680588cf9abe94158755a962fb8f7e8dac04b336308c268 +DIST samba-4.2.14.tar.gz 20883281 SHA256 db820a9947e44f04b0eb25e4aa0c3db32c4042fca541775ee8e2905093e888e6 SHA512 269dd74ba788657434f51ac70953a293c94bcf98280eaa6f44634c5da54169a5ea7865d543a7c23860c4750a40cdee7caeaf5c7fc3dbc137f444e90f31a09890 WHIRLPOOL 925369c2f9c222d718bf4aacc7b1a83b8275acd96bbc1eca52ad96c86847327807560674ee9b180173d17a1e6109307ec4f70f1acbebe2efc8a9e67f2141e17d +DIST samba-4.5.10.tar.gz 20989431 SHA256 7cb753f5f6d5527ef40d4c1f47dacafb7c876cb304b4906ccb390c6a18477714 SHA512 046bae9c66083a4fe656d6a7b02b64343c66e0ea4925193a898dbda107b5b158d1897f16c36f4c393a30457a49215fa6ef91720367f4946760ec48ce02a4a68a WHIRLPOOL 2359a40337c2a85c17e3c860a8531c21ec5cf3c180dfd5a1e554f2eb5e10576a8b706464d490e008af441d9ce6a14043112d621d8e140461806c97947362933a +DIST samba-4.5.11-disable-python-patches.tar.xz 6292 SHA256 8db451910c3d46fc715203e0b674c49846528cf864c381520dc93de20a3637d3 SHA512 f0e3076e3e1ecaae3f06b3ef30efc81719fb3f63a1041dcbdae4b62ca4cf693732f9eb16f047d046d4930136fed82194e82b455ea888e12cf845b3e6a122d57d WHIRLPOOL 641d429fc4865e12e89bad28110b03ca87c6b658f59943f4d44c0b3a91fc49b5dc90e496a8a9d391c2897aec87fc43ea1c9a26084f3394b1883ad9755fd0eca3 +DIST samba-4.5.13.tar.gz 21013879 SHA256 5fc4762d2259469bfb0067c10f77378cb720f2ebdaf2f37b5ca1918dbe84d04d SHA512 c495dffeee4dd83d710182713c8a0e6730f250fab2d03b62cc0f5354497fbc41d5140d7dea5c4089c026a7e9b820e48c94806bbc44b6594c9e5bad977793eb4a WHIRLPOOL 9e720801f44ac7fab65c748dd24c52763b8568d1af73b64006d847c53604df0a7f3d4febeac2dd467c2fd1c3940b86253c37f99e2e2f39028d43acc4f99668ee +DIST samba-4.5.14.tar.gz 21016317 SHA256 15dc04fd2b19081daf1118318f43f88ef7260b3fc6e4f86ee7c7913bb7c92ed9 SHA512 35b6ec38b6750ebdd387eade3c7a1f61c83a4d6642c9a2a8a811d84b506c9f20ed69fa1db9065852ce792fd769fe151177200cdd55de308017cd5416f80eb095 WHIRLPOOL b374abd1439072ab16d84f12b4876f4c44c8d34b734e3c4a0b909e685bb3eb1f02f5b58d9c8173909f2154e97d3e60743646252818a527358ba7316f5a348140 +DIST samba-4.6.7-disable-python-patches.tar.xz 8896 SHA256 33702adba80e9886625fda8cba46d4017ae603f5d9cf9d3dc78e5ef30ff6f5eb SHA512 c45e548a49735e17b568bebf07dc7409de3de0f93256d1dcf345d2723a27d22a51d860ed921785354fda691f83be4eca3b9d618d5c332438ebf97518a01983eb WHIRLPOOL 1cb176480b8583369e1085c8e122958112c0d13aa8ba78cd57dfd04b17c7d8f0a0664a43d277deba86775f1944eab052f4fb9459f64506215ae25184c86cbe40 +DIST samba-4.6.8.tar.gz 21139872 SHA256 581deeb2543f5cedcb556cb950d0e82690d9f0cd33811d76624502ca0c32575d SHA512 fb40144210361bdeab09007aa49fa85077fbc8eeae2c49bcdafb01d33ec40425160882979f0829005a89766ed4fd4e36d7f952f6dbf6e0178f5b0945dc8d8efb WHIRLPOOL d669df156dcae5846d814eb30f577b9df0513383be91a87886b91dff12451d82c236dd7c1fd996a378d90619aabee5adc33ecd488534b612b8f82b7b88d0840a +DIST samba-4.7.0.tar.gz 16830569 SHA256 bd16d169988eb513e685a87e9964a5210482498fa9b3a22aaa8287a061e3c936 SHA512 c69da34566ec672ed17f86ecf793154374c71dd33b588adceed5fbd9345d978a4ffeced5d3a4033edb4daedac2294ed088beed8cdde19724f9d03da54e22e4ee WHIRLPOOL d2635df77e8dc82d0a6aeb345eebf5616fba1ab826b90aedac1f49669ff7faae8845737267c908956ade1904a2c85e918b6db678197e3a6c1f35f78ccc78021f +DIST samba-disable-python-patches-4.2.12.tar.xz 6052 SHA256 8903eacbabdfaf7b64cbde03d7c367d1efdc92e54090f0f4b9ed5d2a462b1c18 SHA512 c527d0a052d3211e5b12c17bc94db56cc5e5545189ed65a760c0656c94c22e27a4b159e6439eb0370873e1619873a741f3b3bd10d3876b38eb3914a87eace372 WHIRLPOOL ad63db55d5dc96f56e6c9b30c2092e2f6e206b0ed5d13c249879d10753c8db2f475c5d4e651e2fc042ad992b648d3b4465f1b28c6b4bbf821cf503d27f741f7e +DIST samba-disable-python-patches-4.5.0_rc1.tar.xz 6204 SHA256 fa0d776e04e3222c0dc4761e376717f4154937cdcb85f4117b8978dfb770a78e SHA512 920089ba3c6e8e7d913b1d7ef1017262a19d1af41215adb30cfc98a57556efc4b0116931d4ef774c01124149d8eca2be3a23814ce7e11daf0180d2c111799927 WHIRLPOOL 6d55710895435ad012e23f8c252e5276966241014710349ca7fa9cf037e8742030b8e053f7cb71309a0a45f48d2235d55393243bf4d19476a22dd39bb1b7748d +EBUILD samba-4.2.14.ebuild 7041 SHA256 c5e6ea8d2e28ef6ee10976157d16c11c1f8708fc18b321ad1a39ea4e9c4a06e5 SHA512 26eaf948b1b631347434603d01cb727feb1b25e5e1cc936086a7790aaccabbc6d2e0e0c0dc4b6ee76beab6ee8ed959f9c875b2940c96c497ce300b4306eb23ff WHIRLPOOL ea78ed40e61c52258fc6a66468bfbf4b0c540d91a017b50bf858583448d650d5f042af2237368b629d50f82292b9b32f2cd43534a910b2fc3008cf475ee10bee +EBUILD samba-4.5.10-r1.ebuild 7732 SHA256 25dca274a37d51734f784a3d619f452c661665912e0928ea9d8ef1ab60821472 SHA512 ec4cf6f818c64bda6458a3f21476d5c1511a3e2aaf26a637789775fd99f34486dadbec61e513f986d78b47445625b7ba79c1e6574b4b193bd377f5fe54813c6f WHIRLPOOL 775d59dd8059c8e93a3330da48fea13a5b655cdf5f4dc98aea81a58536d0ec8ee9e7074050dbb096de73f5a4d20e9bda1ca0c1a864859838c58c67086804a629 +EBUILD samba-4.5.13.ebuild 7797 SHA256 31b9e91ac0a2ef2711b17a346a5a43b32dd1116cf0ad5611668b997adb09adf2 SHA512 a45c3285315eb47503df08dd9c027f75b31c5450da026108487d24ea3cdae88129ea9f886fec716b6fbbc995ee32f83d78714b2494f75006979d01e0965a2076 WHIRLPOOL f75074ea63cc5fde0e167b046665df978439ef027df6c74f04395fa072b4af872139ba898fec9665dbc6fc7cdd051cef0af1cf9a847b09bdf234fabe11b66152 +EBUILD samba-4.5.14.ebuild 7797 SHA256 31b9e91ac0a2ef2711b17a346a5a43b32dd1116cf0ad5611668b997adb09adf2 SHA512 a45c3285315eb47503df08dd9c027f75b31c5450da026108487d24ea3cdae88129ea9f886fec716b6fbbc995ee32f83d78714b2494f75006979d01e0965a2076 WHIRLPOOL f75074ea63cc5fde0e167b046665df978439ef027df6c74f04395fa072b4af872139ba898fec9665dbc6fc7cdd051cef0af1cf9a847b09bdf234fabe11b66152 +EBUILD samba-4.6.8-r1.ebuild 8541 SHA256 44f5bc8303cd3530bd9d386f1ff949c7f0019f19d97ffa139787b07e3787a80b SHA512 c9a846198e58746952e74a619316757f8f40891570484cc4e2950a5ba28d91aff198c7de8161735a9239ed1dfc2e6c4d657e0db08d2a46f9ea95705e0910a16f WHIRLPOOL 4ee11b357f9a49fdcb69c64d241c5d3322bc28f331a695e0d9d58b7475b5aeb9e2c87ccb58e124db87b809a6ca9c926166a23cba2b614e7835ec866ae1cf4b22 +EBUILD samba-4.7.0-r1.ebuild 8353 SHA256 86810a734d6688cf2689d8223e4ca9d264ef74b5ce26d1618640448210a5301e SHA512 258f093ca130fdd1132a5aac3ed825e6e1e954490067d04df414061451198a5538112d9d1319c6b57d49bd10b2d7f106f14f82fbd8892670149b2562c12eca69 WHIRLPOOL d61ca69d1f4a7ef730cdd37e464403c38a55dab8e3ac543ab3e348d359f9622dba7f1ae6aa6b67b2da36eed80435570bba566056164d485d39cf70ca07b4ae6a +MISC ChangeLog 29865 SHA256 9fdf9b583855db807230f491b4957583779bda1b46807e5a1f3fc3f16a584322 SHA512 6ac0456dcf57a73cb9ca984623b5fb4512b9cbcfd9189c3cbeeac5b2135aee2dbb99114e838c8f6438388d948da4ea7fe15712a38bcf834c75d414c538f460b4 WHIRLPOOL 271a5a1c45a6a6b5d41173c677e3c48053bf2aae078098ebdd8ab6de31defd2bbbc6679bbeca8f7a6426edeec9692ad2e86ff465ed7459f5800089ec1abc7a84 +MISC ChangeLog-2013 106689 SHA256 00ac832a137c7ce1d21be794b45339e1f4e9c51eb1b796cbcac90a03e1cf5453 SHA512 9dc4e4e22042db7f5ff3a474eb7a454044ea6958ffc3ba5c5de6f09608cfbbcaed8db00763a38995276de03a5f1c728fc783d4addaca7da16f4be76a4e49fd6f WHIRLPOOL 85a746ae34c0386ecb151f5f323b92615cce971b1e46f249cccfdc682bdddd7dad080dd4ffbe5748f093ee11db3f5182cae6d85191a37014639a56040eff9644 +MISC ChangeLog-2015 11570 SHA256 700ea64c0586d7957e3ef95425683f9bd711ae4311c7cd19575b6d1cdd814e94 SHA512 8d5d99a08a409db4cf8c8e9c3a82a080de66d9aac6ff39e53bb6eb5eeadb625d0ebd07c6fc81bce1755d2441ab91d96f90787d3975814f572e2ce2a366038299 WHIRLPOOL 340948bfd379c419985c93c21a543bb10d10a0c95c8ec2cf1d01697a3e47613b2b6e9f2292c1d03f353121a39b6be809ba432535ccab67b71adf333c69c5bc2e +MISC metadata.xml 1535 SHA256 e52ce6fb55ee494bc4ed348148a75f496df1fcc5282795c58155d3d770816a4e SHA512 478534265c8b41cc907fd27b7bfdba056a5949d9a6d1c0dec16572eebd7c9eefed24cb625a15f36f457fad0bd321063f0ffe2ed764415f3c09c61458b0751baf WHIRLPOOL dd7e58a5eda413342d65e117d1020c2a11befe5b1577c0569a4c4749b0ca4592a6d086b03079f1e271b375f700868b57e5a9ed7d404e8d3201d1b73c558e7f76 diff --git a/net-fs/samba/files/4.2/samba4.confd b/net-fs/samba/files/4.2/samba4.confd new file mode 100644 index 000000000000..58b2c7827bdf --- /dev/null +++ b/net-fs/samba/files/4.2/samba4.confd @@ -0,0 +1,38 @@ +# Add "winbind" to the daemon_list if you also want winbind to start. +# Replace "smbd nmbd" by "samba4" if you want the active directory domain controller part or the ntvfs +# file server part or the rpc proxy to start. +# Note that samba4 controls 'smbd' by itself, thus it can't be started manually. You can, however, +# tweak the behaviour of a samba4-controlled smbd by modifying your '/etc/samba/smb.conf' file +# accordingly. +daemon_list="smbd nmbd" + +#---------------------------------------------------------------------------- +# Daemons calls: _ +#---------------------------------------------------------------------------- +my_service_name="samba" +my_service_PRE="unset TMP TMPDIR" +my_service_POST="" + +#---------------------------------------------------------------------------- +# Daemons calls: _ +#---------------------------------------------------------------------------- +smbd_start_options="-D" +smbd_start="start-stop-daemon --start --exec /usr/sbin/smbd -- ${smbd_start_options}" +smbd_stop="start-stop-daemon --stop --exec /usr/sbin/smbd" +smbd_reload="killall -HUP smbd" + +nmbd_start_options="-D" +nmbd_start="start-stop-daemon --start --exec /usr/sbin/nmbd -- ${nmbd_start_options}" +nmbd_stop="start-stop-daemon --stop --exec /usr/sbin/nmbd" +nmbd_reload="killall -HUP nmbd" + +samba4_start_options="" +samba4_start="start-stop-daemon --start --exec /usr/sbin/samba -- ${samba4_start_options}" +samba4_stop="start-stop-daemon --stop --exec /usr/sbin/samba" +samba4_reload="killall -HUP samba" + +winbind_start_options="" +winbind_start="start-stop-daemon --start --exec /usr/sbin/winbindd -- ${winbind_start_options}" +winbind_stop="start-stop-daemon --stop --exec /usr/sbin/winbindd" +winbind_reload="killall -HUP winbindd" + diff --git a/net-fs/samba/files/4.2/samba4.initd-r1 b/net-fs/samba/files/4.2/samba4.initd-r1 new file mode 100644 index 000000000000..52a9b68bba80 --- /dev/null +++ b/net-fs/samba/files/4.2/samba4.initd-r1 @@ -0,0 +1,55 @@ +#!/sbin/openrc-run +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later + +extra_started_commands="reload" +piddir="/run/samba" + +depend() { + after slapd + need net + use cupsd +} + +DAEMONNAME="${SVCNAME##samba.}" +[ "${DAEMONNAME}" != "samba" ] && daemon_list=${DAEMONNAME} + +signal_do() { + local signal="$1" + [ -z "${signal}" ] && return 0 + + local result=0 last_result=0 daemon= cmd_exec= + for daemon in ${daemon_list} ; do + eval cmd_exec=\$${daemon}_${signal} + if [ -n "${cmd_exec}" ]; then + ebegin "${my_service_name} -> ${signal}: ${daemon}" + #echo ${cmd} '->' ${!cmd} + ${cmd_exec} > /dev/null + last_result=$? + eend ${last_result} + fi + result=$(( ${result} + ${last_result} )) + done + return ${result} +} + +start() { + ${my_service_PRE} + [ -d "${piddir}" ] || mkdir -p "${piddir}" + signal_do start && return 0 + + eerror "Error: starting services (see system logs)" + signal_do stop + return 1 +} +stop() { + ${my_service_PRE} + if signal_do stop ; then + ${my_service_POST} + return 0 + fi +} +reload() { + ${my_service_PRE} + signal_do reload +} diff --git a/net-fs/samba/files/4.4/samba4.confd b/net-fs/samba/files/4.4/samba4.confd new file mode 100644 index 000000000000..58b2c7827bdf --- /dev/null +++ b/net-fs/samba/files/4.4/samba4.confd @@ -0,0 +1,38 @@ +# Add "winbind" to the daemon_list if you also want winbind to start. +# Replace "smbd nmbd" by "samba4" if you want the active directory domain controller part or the ntvfs +# file server part or the rpc proxy to start. +# Note that samba4 controls 'smbd' by itself, thus it can't be started manually. You can, however, +# tweak the behaviour of a samba4-controlled smbd by modifying your '/etc/samba/smb.conf' file +# accordingly. +daemon_list="smbd nmbd" + +#---------------------------------------------------------------------------- +# Daemons calls: _ +#---------------------------------------------------------------------------- +my_service_name="samba" +my_service_PRE="unset TMP TMPDIR" +my_service_POST="" + +#---------------------------------------------------------------------------- +# Daemons calls: _ +#---------------------------------------------------------------------------- +smbd_start_options="-D" +smbd_start="start-stop-daemon --start --exec /usr/sbin/smbd -- ${smbd_start_options}" +smbd_stop="start-stop-daemon --stop --exec /usr/sbin/smbd" +smbd_reload="killall -HUP smbd" + +nmbd_start_options="-D" +nmbd_start="start-stop-daemon --start --exec /usr/sbin/nmbd -- ${nmbd_start_options}" +nmbd_stop="start-stop-daemon --stop --exec /usr/sbin/nmbd" +nmbd_reload="killall -HUP nmbd" + +samba4_start_options="" +samba4_start="start-stop-daemon --start --exec /usr/sbin/samba -- ${samba4_start_options}" +samba4_stop="start-stop-daemon --stop --exec /usr/sbin/samba" +samba4_reload="killall -HUP samba" + +winbind_start_options="" +winbind_start="start-stop-daemon --start --exec /usr/sbin/winbindd -- ${winbind_start_options}" +winbind_stop="start-stop-daemon --stop --exec /usr/sbin/winbindd" +winbind_reload="killall -HUP winbindd" + diff --git a/net-fs/samba/files/4.4/samba4.initd-r1 b/net-fs/samba/files/4.4/samba4.initd-r1 new file mode 100644 index 000000000000..52a9b68bba80 --- /dev/null +++ b/net-fs/samba/files/4.4/samba4.initd-r1 @@ -0,0 +1,55 @@ +#!/sbin/openrc-run +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later + +extra_started_commands="reload" +piddir="/run/samba" + +depend() { + after slapd + need net + use cupsd +} + +DAEMONNAME="${SVCNAME##samba.}" +[ "${DAEMONNAME}" != "samba" ] && daemon_list=${DAEMONNAME} + +signal_do() { + local signal="$1" + [ -z "${signal}" ] && return 0 + + local result=0 last_result=0 daemon= cmd_exec= + for daemon in ${daemon_list} ; do + eval cmd_exec=\$${daemon}_${signal} + if [ -n "${cmd_exec}" ]; then + ebegin "${my_service_name} -> ${signal}: ${daemon}" + #echo ${cmd} '->' ${!cmd} + ${cmd_exec} > /dev/null + last_result=$? + eend ${last_result} + fi + result=$(( ${result} + ${last_result} )) + done + return ${result} +} + +start() { + ${my_service_PRE} + [ -d "${piddir}" ] || mkdir -p "${piddir}" + signal_do start && return 0 + + eerror "Error: starting services (see system logs)" + signal_do stop + return 1 +} +stop() { + ${my_service_PRE} + if signal_do stop ; then + ${my_service_POST} + return 0 + fi +} +reload() { + ${my_service_PRE} + signal_do reload +} diff --git a/net-fs/samba/files/nmbd.service b/net-fs/samba/files/nmbd.service new file mode 100644 index 000000000000..44b4ffba1f7f --- /dev/null +++ b/net-fs/samba/files/nmbd.service @@ -0,0 +1,12 @@ +[Unit] +Description=Samba NetBIOS name server +After=network.target + +[Service] +Type=forking +PIDFile=/var/run/samba/nmbd.pid +ExecStart=/usr/sbin/nmbd -D +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/net-fs/samba/files/samba-4.2.3-heimdal_compilefix.patch b/net-fs/samba/files/samba-4.2.3-heimdal_compilefix.patch new file mode 100644 index 000000000000..c6f50073317a --- /dev/null +++ b/net-fs/samba/files/samba-4.2.3-heimdal_compilefix.patch @@ -0,0 +1,22 @@ +https://bugs.gentoo.org/542638 + +From: Stephan Wolf + +Samba uses the build in implementation of heimdal from year 2011. +The ebuild uses the portage version of heimdal. +I got it fixed to patch samba kdc_init function. + +--- samba-4.2.3/source4/kdc/kdc.c ++++ samba-4.2.3/source4/kdc/kdc.c +@@ -967,9 +967,9 @@ + * The old behavior in the _kdc_get_preferred_key() + * function is use_strongest_server_key=TRUE. + */ +- kdc->config->as_use_strongest_session_key = false; ++ kdc->config->tgt_use_strongest_session_key = false; + kdc->config->preauth_use_strongest_session_key = false; +- kdc->config->tgs_use_strongest_session_key = false; ++ kdc->config->svc_use_strongest_session_key = false; + kdc->config->use_strongest_server_key = true; + + /* Register hdb-samba4 hooks for use as a keytab */ diff --git a/net-fs/samba/files/samba-4.2.7-pam.patch b/net-fs/samba/files/samba-4.2.7-pam.patch new file mode 100644 index 000000000000..22b393e78677 --- /dev/null +++ b/net-fs/samba/files/samba-4.2.7-pam.patch @@ -0,0 +1,36 @@ +--- samba-4.2.7/source3/wscript ++++ samba-4.2.7/source3/wscript +@@ -853,11 +853,11 @@ + if not conf.CHECK_FUNCS_IN('iconv_open', 'iconv', headers='iconv.h'): + conf.env.with_iconv = False + if conf.env.with_iconv: + conf.DEFINE('HAVE_ICONV', 1) + +- if Options.options.with_pam: ++ if Options.options.with_pam != False: + use_pam=True + conf.CHECK_HEADERS('security/pam_appl.h pam/pam_appl.h') + if not conf.CONFIG_SET('HAVE_SECURITY_PAM_APPL_H') and not conf.CONFIG_SET('HAVE_PAM_PAM_APPL_H'): + Logs.warn("--with-pam=yes but pam_appl.h not found") + use_pam=False +@@ -926,10 +926,20 @@ + msg="Checking whether PAM_RADIO_TYPE is available"); + if use_pam: + conf.DEFINE('WITH_PAM', 1) + conf.DEFINE('WITH_PAM_MODULES', 1) + ++ else: ++ Logs.warn("PAM disabled") ++ use_pam=False ++ conf.undefine('WITH_PAM') ++ conf.undefine('WITH_PAM_MODULES') ++ conf.undefine('HAVE_SECURITY_PAM_APPL_H') ++ conf.undefine('PAM_RHOST') ++ conf.undefine('PAM_TTY') ++ conf.undefine('HAVE_PAM_PAM_APPL_H') ++ + if Options.options.with_pam_smbpass: + conf.env.with_pam_smbpass = True + + seteuid = False + diff --git a/net-fs/samba/files/samba-4.4.0-pam.patch b/net-fs/samba/files/samba-4.4.0-pam.patch new file mode 100644 index 000000000000..451601383d4b --- /dev/null +++ b/net-fs/samba/files/samba-4.4.0-pam.patch @@ -0,0 +1,29 @@ +--- samba-4.4.0rc2/source3/wscript ++++ samba-4.4.0rc2/source3/wscript +@@ -870,7 +870,7 @@ + if conf.env.with_iconv: + conf.DEFINE('HAVE_ICONV', 1) + +- if Options.options.with_pam: ++ if Options.options.with_pam != False: + use_pam=True + conf.CHECK_HEADERS('security/pam_appl.h pam/pam_appl.h') + if not conf.CONFIG_SET('HAVE_SECURITY_PAM_APPL_H') and not conf.CONFIG_SET('HAVE_PAM_PAM_APPL_H'): +@@ -943,6 +943,17 @@ + conf.DEFINE('WITH_PAM', 1) + conf.DEFINE('WITH_PAM_MODULES', 1) + ++ else: ++ Logs.warn("PAM disabled") ++ use_pam=False ++ conf.undefine('WITH_PAM') ++ conf.undefine('WITH_PAM_MODULES') ++ conf.undefine('HAVE_SECURITY_PAM_APPL_H') ++ conf.undefine('PAM_RHOST') ++ conf.undefine('PAM_TTY') ++ conf.undefine('HAVE_PAM_PAM_APPL_H') ++ ++ + seteuid = False + + # diff --git a/net-fs/samba/files/samba-4.5.1-compile_et_fix.patch b/net-fs/samba/files/samba-4.5.1-compile_et_fix.patch new file mode 100644 index 000000000000..463512f9a9c8 --- /dev/null +++ b/net-fs/samba/files/samba-4.5.1-compile_et_fix.patch @@ -0,0 +1,16 @@ +--- samba-4.5.1/source4/heimdal_build/wscript_configure ++++ samba-4.5.1/source4/heimdal_build/wscript_configure +@@ -258,7 +258,11 @@ + + # With the proper checks in place we should be able to build against the system libtommath. + #if conf.CHECK_BUNDLED_SYSTEM('tommath', checkfunctions='mp_init', headers='tommath.h'): + # conf.define('USING_SYSTEM_TOMMATH', 1) + +-check_system_heimdal_binary("compile_et") +-check_system_heimdal_binary("asn1_compile") ++# comment out next line to stop Gentoo Samba build from using the compile_et in e2fsprogs-libs ++# to compile the error tables. This produces a compile error later on. ++#check_system_heimdal_binary("compile_et") ++# ++# As a precaution do the same for asn1_compile ++#check_system_heimdal_binary("asn1_compile") diff --git a/net-fs/samba/files/samba.conf b/net-fs/samba/files/samba.conf new file mode 100644 index 000000000000..e0a6f325cf9a --- /dev/null +++ b/net-fs/samba/files/samba.conf @@ -0,0 +1,2 @@ +D /run/samba 0755 root root +D /run/lock/samba 0755 root root diff --git a/net-fs/samba/files/samba.service b/net-fs/samba/files/samba.service new file mode 100644 index 000000000000..8214ff863182 --- /dev/null +++ b/net-fs/samba/files/samba.service @@ -0,0 +1,10 @@ +[Unit] +Description=Samba AD server +After=network.target winbindd.service +Conflicts=nmbd.service smbd.service + +[Service] +ExecStart=/usr/sbin/samba --interactive + +[Install] +WantedBy=multi-user.target diff --git a/net-fs/samba/files/smbd.service b/net-fs/samba/files/smbd.service new file mode 100644 index 000000000000..5c006a44edb6 --- /dev/null +++ b/net-fs/samba/files/smbd.service @@ -0,0 +1,12 @@ +[Unit] +Description=Samba SMB/CIFS server +After=network.target nmbd.service winbindd.service + +[Service] +Type=forking +PIDFile=/var/run/samba/smbd.pid +ExecStart=/usr/sbin/smbd -D +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/net-fs/samba/files/smbd.socket b/net-fs/samba/files/smbd.socket new file mode 100644 index 000000000000..833bf438832f --- /dev/null +++ b/net-fs/samba/files/smbd.socket @@ -0,0 +1,9 @@ +[Unit] +Description=Samba SMB/CIFS server socket + +[Socket] +ListenStream=445 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/net-fs/samba/files/smbd_at.service b/net-fs/samba/files/smbd_at.service new file mode 100644 index 000000000000..e1f71be3f7fa --- /dev/null +++ b/net-fs/samba/files/smbd_at.service @@ -0,0 +1,7 @@ +[Unit] +Description=Samba SMB/CIFS server instance + +[Service] +ExecStart=/usr/sbin/smbd -F +ExecReload=/bin/kill -HUP $MAINPID +StandardInput=socket diff --git a/net-fs/samba/files/talloc-disable-python.patch b/net-fs/samba/files/talloc-disable-python.patch new file mode 100644 index 000000000000..6ef45eb37fb8 --- /dev/null +++ b/net-fs/samba/files/talloc-disable-python.patch @@ -0,0 +1,34 @@ +--- a/lib/talloc/wscript 2017-04-28 04:57:26.000000000 -0400 ++++ b/lib/talloc/wscript 2017-07-05 14:30:42.700580464 -0400 +@@ -74,19 +74,22 @@ + implied_deps='replace'): + conf.define('USING_SYSTEM_TALLOC', 1) + +- using_system_pytalloc_util = True +- if not conf.CHECK_BUNDLED_SYSTEM_PKG('pytalloc-util', minversion=VERSION, +- implied_deps='talloc replace'): ++ if conf.env.disable_python: + using_system_pytalloc_util = False +- +- # We need to get a pytalloc-util for all the python versions +- # we are building for +- if conf.env['EXTRA_PYTHON']: +- name = 'pytalloc-util' + conf.all_envs['extrapython']['PYTHON_SO_ABI_FLAG'] +- if not conf.CHECK_BUNDLED_SYSTEM_PKG(name, minversion=VERSION, ++ else: ++ using_system_pytalloc_util = True ++ if not conf.CHECK_BUNDLED_SYSTEM_PKG('pytalloc-util', minversion=VERSION, + implied_deps='talloc replace'): + using_system_pytalloc_util = False + ++ # We need to get a pytalloc-util for all the python versions ++ # we are building for ++ if conf.env['EXTRA_PYTHON']: ++ name = 'pytalloc-util' + conf.all_envs['extrapython']['PYTHON_SO_ABI_FLAG'] ++ if not conf.CHECK_BUNDLED_SYSTEM_PKG(name, minversion=VERSION, ++ implied_deps='talloc replace'): ++ using_system_pytalloc_util = False ++ + if using_system_pytalloc_util: + conf.define('USING_SYSTEM_PYTALLOC_UTIL', 1) + diff --git a/net-fs/samba/files/winbindd.service b/net-fs/samba/files/winbindd.service new file mode 100644 index 000000000000..67a778fc76c7 --- /dev/null +++ b/net-fs/samba/files/winbindd.service @@ -0,0 +1,12 @@ +[Unit] +Description=Samba Winbind daemon +After=network.target nmbd.service + +[Service] +Type=forking +PIDFile=/var/run/samba/winbindd.pid +ExecStart=/usr/sbin/winbindd -D +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/net-fs/samba/metadata.xml b/net-fs/samba/metadata.xml new file mode 100644 index 000000000000..c6b9bbe87e47 --- /dev/null +++ b/net-fs/samba/metadata.xml @@ -0,0 +1,31 @@ + + + + + samba@gentoo.org + Samba Team + + + Samba is an Open Source/Free Software suite that provides seamless file and print services to SMB/CIFS clients. Integration with various accounting and antivirus backends. License: GNU General Public License. + + + Enable Active Directory Domain Controller support + Enable AD DNS integration + Enable Active Directory support + Enable asynchronous IO support + Enables the client part + Enable support for clustering + Enable support for DMAPI. This currently works only in combination with XFS. + Use app-crypt/gpgme for AD DC + Enabling iPrint technology by Novell + Enables support for user quotas + Use app-crypt/heimdal instead of + bundled heimdal. + Use app-crypt/mit-krb5 instead of + app-crypt/heimdal. + Enables support for the winbind auth daemon + + + cpe:/a:samba:samba + + diff --git a/net-fs/samba/samba-4.2.14.ebuild b/net-fs/samba/samba-4.2.14.ebuild new file mode 100644 index 000000000000..1bf4b2e16841 --- /dev/null +++ b/net-fs/samba/samba-4.2.14.ebuild @@ -0,0 +1,257 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE='threads(+),xml(+)' + +inherit python-single-r1 waf-utils multilib-minimal linux-info systemd eutils + +MY_PV="${PV/_rc/rc}" +MY_P="${PN}-${MY_PV}" + +SRC_PATH="stable" +[[ ${PV} = *_rc* ]] && SRC_PATH="rc" + +SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz + https://dev.gentoo.org/~polynomial-c/samba-disable-python-patches-4.2.12.tar.xz" +[[ ${PV} = *_rc* ]] || \ +KEYWORDS="alpha amd64 arm hppa ~ia64 ppc ppc64 ~sparc ~x86" + +DESCRIPTION="Samba Suite Version 4" +HOMEPAGE="http://www.samba.org/" +LICENSE="GPL-3" + +SLOT="0" + +IUSE="acl addc addns ads aio avahi client cluster cups dmapi fam gnutls iprint +ldap pam quota selinux syslog +system-mitkrb5 systemd test winbind" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/samba-4.0/policy.h + /usr/include/samba-4.0/dcerpc_server.h + /usr/include/samba-4.0/ctdb.h + /usr/include/samba-4.0/ctdb_client.h + /usr/include/samba-4.0/ctdb_protocol.h + /usr/include/samba-4.0/ctdb_private.h + /usr/include/samba-4.0/ctdb_typesafe_cb.h + /usr/include/samba-4.0/ctdb_version.h +) + +# sys-apps/attr is an automagic dependency (see bug #489748) +CDEPEND="${PYTHON_DEPS} + >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}] + dev-lang/perl:= + dev-libs/libbsd[${MULTILIB_USEDEP}] + dev-libs/iniparser:0 + dev-libs/popt[${MULTILIB_USEDEP}] + sys-libs/readline:= + virtual/libiconv + dev-python/subunit[${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=net-libs/socket_wrapper-1.1.2[${MULTILIB_USEDEP}] + sys-apps/attr[${MULTILIB_USEDEP}] + sys-libs/libcap + >=sys-libs/ldb-1.1.24[ldap(+)?,${MULTILIB_USEDEP}] + sys-libs/ncurses:0=[${MULTILIB_USEDEP}] + >=sys-libs/nss_wrapper-1.0.2[${MULTILIB_USEDEP}] + >=sys-libs/ntdb-1.0[python,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/talloc-2.1.2[python,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tdb-1.3.6[python,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tevent-0.9.28[${MULTILIB_USEDEP}] + >=sys-libs/uid_wrapper-1.0.1[${MULTILIB_USEDEP}] + sys-libs/zlib[${MULTILIB_USEDEP}] + acl? ( virtual/acl ) + addns? ( net-dns/bind-tools[gssapi] ) + aio? ( dev-libs/libaio ) + cluster? ( !dev-db/ctdb ) + cups? ( net-print/cups ) + dmapi? ( sys-apps/dmapi ) + fam? ( virtual/fam ) + gnutls? ( dev-libs/libgcrypt:0 + >=net-libs/gnutls-1.4.0 ) + ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) + pam? ( virtual/pam ) + system-mitkrb5? ( app-crypt/mit-krb5[${MULTILIB_USEDEP}] ) + !system-mitkrb5? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] ) + systemd? ( sys-apps/systemd:0= )" +DEPEND="${CDEPEND} + virtual/pkgconfig" +RDEPEND="${CDEPEND} + client? ( net-fs/cifs-utils[ads?] ) + selinux? ( sec-policy/selinux-samba ) + !dev-perl/Parse-Yapp +" + +REQUIRED_USE="addc? ( gnutls !system-mitkrb5 ) + ads? ( acl gnutls ldap ) + ${PYTHON_REQUIRED_USE}" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/${PN}-4.2.3-heimdal_compilefix.patch" + "${FILESDIR}/${PN}-4.2.7-pam.patch" +) + +CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" + +WAF_BINARY="${S}/buildtools/bin/waf" + +SHAREDMODS="" + +pkg_setup() { + python-single-r1_pkg_setup + if use aio ; then + if ! linux_config_exists || ! linux_chkconfig_present AIO; then + ewarn "You must enable AIO support in your kernel config, " + ewarn "to be able to support asynchronous I/O. " + ewarn "You can find it at" + ewarn + ewarn "General Support" + ewarn " Enable AIO support " + ewarn + ewarn "and recompile your kernel..." + fi + fi + if use cluster ; then + SHAREDMODS="${SHAREDMODS}idmap_rid,idmap_tdb2,idmap_ad" + fi +} + +src_prepare() { + epatch "${PATCHES[@]}" + + # install the patches from tarball(s) + EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + epatch "${WORKDIR}/patches" + + # Allow user patches + epatch_user + multilib_copy_sources +} + +multilib_src_configure() { + local myconf=() + myconf=( + --enable-fhs + --sysconfdir=/etc + --localstatedir=/var + --with-modulesdir=/usr/$(get_libdir)/samba + --with-piddir=/run/${PN} + --bundled-libraries=NONE + --builtin-libraries=NONE + --disable-rpath + --disable-rpath-install + --nopyc + --nopyo + ) + if multilib_is_native_abi ; then + myconf+=( + $(use_with acl acl-support) + $(usex addc '' '--without-ad-dc') + $(use_with addns dnsupdate) + $(use_with ads) + $(usex ads '--with-shared-modules=idmap_ad' '') + $(use_with aio aio-support) + $(use_enable avahi) + $(use_with cluster cluster-support) + $(use_enable cups) + $(use_with dmapi) + $(use_with fam) + $(use_enable gnutls) + $(use_enable iprint) + $(use_with ldap) + $(use_with pam) + $(use_with pam pam_smbpass) + $(usex pam "--with-pammodulesdir=/$(get_libdir)/security" '') + $(use_with quota quotas) + $(use_with syslog) + $(use_with systemd) + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + $(use_with winbind) + $(usex test '--enable-selftest' '') + --with-shared-modules=${SHAREDMODS} + ) + else + myconf+=( + --without-acl-support + --without-ad-dc + --without-dnsupdate + --without-ads + --without-aio-support + --disable-avahi + --without-cluster-support + --disable-cups + --without-dmapi + --without-fam + --disable-gnutls + --disable-iprint + $(use_with ldap) + --without-pam + --without-pam_smbpass + --without-quotas + --without-syslog + --without-systemd + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + --without-winbind + --disable-python + ) + fi + + CPPFLAGS="-I${SYSROOT}/usr/include/et ${CPPFLAGS}" \ + waf-utils_src_configure ${myconf[@]} +} + +multilib_src_install() { + waf-utils_src_install + + # Make all .so files executable + find "${D}" -type f -name "*.so" -exec chmod +x {} + + + if multilib_is_native_abi; then + # install ldap schema for server (bug #491002) + if use ldap ; then + insinto /etc/openldap/schema + doins examples/LDAP/samba.schema + fi + + # create symlink for cups (bug #552310) + if use cups ; then + dosym /usr/bin/smbspool /usr/libexec/cups/backend/smb + fi + + # install example config file + insinto /etc/samba + doins examples/smb.conf.default + + # Install init script and conf.d file + newinitd "${CONFDIR}/samba4.initd-r1" samba + newconfd "${CONFDIR}/samba4.confd" samba + + systemd_dotmpfilesd "${FILESDIR}"/samba.conf + systemd_dounit "${FILESDIR}"/nmbd.service + systemd_dounit "${FILESDIR}"/smbd.{service,socket} + systemd_newunit "${FILESDIR}"/smbd_at.service 'smbd@.service' + systemd_dounit "${FILESDIR}"/winbindd.service + systemd_dounit "${FILESDIR}"/samba.service + fi +} + +multilib_src_test() { + if multilib_is_native_abi ; then + "${WAF_BINARY}" test || die "test failed" + fi +} + +pkg_postinst() { + ewarn "Be aware the this release contains the best of all of Samba's" + ewarn "technology parts, both a file server (that you can reasonably expect" + ewarn "to upgrade existing Samba 3.x releases to) and the AD domain" + ewarn "controller work previously known as 'samba4'." + + elog "For further information and migration steps make sure to read " + elog "http://samba.org/samba/history/${P}.html " + elog "http://samba.org/samba/history/${PN}-4.2.0.html and" + elog "http://wiki.samba.org/index.php/Samba4/HOWTO " +} diff --git a/net-fs/samba/samba-4.5.10-r1.ebuild b/net-fs/samba/samba-4.5.10-r1.ebuild new file mode 100644 index 000000000000..bb4953a89c67 --- /dev/null +++ b/net-fs/samba/samba-4.5.10-r1.ebuild @@ -0,0 +1,281 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE='threads(+),xml(+)' + +inherit python-single-r1 waf-utils multilib-minimal linux-info systemd eutils + +MY_PV="${PV/_rc/rc}" +MY_P="${PN}-${MY_PV}" + +SRC_PATH="stable" +[[ ${PV} = *_rc* ]] && SRC_PATH="rc" + +SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz + https://dev.gentoo.org/~polynomial-c/samba-disable-python-patches-4.5.0_rc1.tar.xz" +[[ ${PV} = *_rc* ]] || \ +KEYWORDS="alpha amd64 ~arm ~arm64 ia64 ppc ppc64 sparc x86" + +DESCRIPTION="Samba Suite Version 4" +HOMEPAGE="http://www.samba.org/" +LICENSE="GPL-3" + +SLOT="0" + +IUSE="acl addc addns ads client cluster cups dmapi fam gnutls gpg iprint ldap pam +quota selinux syslog system-heimdal +system-mitkrb5 systemd test winbind zeroconf" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/samba-4.0/policy.h + /usr/include/samba-4.0/dcerpc_server.h + /usr/include/samba-4.0/ctdb.h + /usr/include/samba-4.0/ctdb_client.h + /usr/include/samba-4.0/ctdb_protocol.h + /usr/include/samba-4.0/ctdb_private.h + /usr/include/samba-4.0/ctdb_typesafe_cb.h + /usr/include/samba-4.0/ctdb_version.h +) + +# sys-apps/attr is an automagic dependency (see bug #489748) +CDEPEND="${PYTHON_DEPS} + >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}] + dev-lang/perl:= + dev-libs/libaio[${MULTILIB_USEDEP}] + dev-libs/libbsd[${MULTILIB_USEDEP}] + dev-libs/iniparser:0 + dev-libs/popt[${MULTILIB_USEDEP}] + dev-python/subunit[${PYTHON_USEDEP},${MULTILIB_USEDEP}] + sys-apps/attr[${MULTILIB_USEDEP}] + >=sys-libs/ldb-1.1.27[ldap(+)?,python(+),${MULTILIB_USEDEP}] + sys-libs/libcap + sys-libs/ncurses:0=[${MULTILIB_USEDEP}] + sys-libs/readline:0= + >=sys-libs/talloc-2.1.8[python,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tdb-1.3.10[python,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tevent-0.9.31-r1[${MULTILIB_USEDEP}] + sys-libs/zlib[${MULTILIB_USEDEP}] + virtual/libiconv + pam? ( virtual/pam ) + acl? ( virtual/acl ) + addns? ( net-dns/bind-tools[gssapi] ) + cluster? ( !dev-db/ctdb ) + cups? ( net-print/cups ) + dmapi? ( sys-apps/dmapi ) + fam? ( virtual/fam ) + gnutls? ( + dev-libs/libgcrypt:0 + >=net-libs/gnutls-1.4.0 + ) + gpg? ( app-crypt/gpgme ) + ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) + system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] ) + system-mitkrb5? ( app-crypt/mit-krb5[${MULTILIB_USEDEP}] ) + systemd? ( sys-apps/systemd:0= )" +DEPEND="${CDEPEND} + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + virtual/pkgconfig + test? ( + !system-mitkrb5? ( + >=sys-libs/nss_wrapper-1.1.3 + >=net-dns/resolv_wrapper-1.1.4 + >=net-libs/socket_wrapper-1.1.7 + >=sys-libs/uid_wrapper-1.2.1 + ) + )" +RDEPEND="${CDEPEND} + client? ( net-fs/cifs-utils[ads?] ) + selinux? ( sec-policy/selinux-samba ) + !dev-perl/Parse-Yapp +" + +REQUIRED_USE="addc? ( gnutls !system-mitkrb5 ) + ads? ( acl gnutls ldap ) + gpg? ( addc ) + ?? ( system-heimdal system-mitkrb5 ) + ${PYTHON_REQUIRED_USE}" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/${PN}-4.4.0-pam.patch" + "${FILESDIR}/${PN}-4.5.1-compile_et_fix.patch" +) + +#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" +CONFDIR="${FILESDIR}/4.4" + +WAF_BINARY="${S}/buildtools/bin/waf" + +SHAREDMODS="" + +pkg_setup() { + python-single-r1_pkg_setup + if use cluster ; then + SHAREDMODS="idmap_rid,idmap_tdb2,idmap_ad" + elif use ads ; then + SHAREDMODS="idmap_ad" + fi +} + +src_prepare() { + default + + # install the patches from tarball(s) + eapply "${WORKDIR}/patches" + + # ugly hackaround for bug #592502 + cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die + + sed -e 's:::' \ + -i source4/dsdb/samdb/ldb_modules/password_hash.c \ + || die + + # Friggin' WAF shit + multilib_copy_sources +} + +multilib_src_configure() { + # when specifying libs for samba build you must append NONE to the end to + # stop it automatically including things + local bundled_libs="NONE" + if ! use system-heimdal && ! use system-mitkrb5 ; then + bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" + fi + + local myconf=() + myconf=( + --enable-fhs + --sysconfdir="${EPREFIX}/etc" + --localstatedir="${EPREFIX}/var" + --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" + --with-piddir="${EPREFIX}/run/${PN}" + --without-lttng + --bundled-libraries="${bundled_libs}" + --builtin-libraries=NONE + --disable-rpath + --disable-rpath-install + --nopyc + --nopyo + ) + if multilib_is_native_abi ; then + myconf+=( + $(use_with acl acl-support) + $(usex addc '' '--without-ad-dc') + $(use_with addns dnsupdate) + $(use_with ads) + $(use_with cluster cluster-support) + $(use_enable cups) + $(use_with dmapi) + $(use_with fam) + $(use_enable gnutls) + $(use_with gpg gpgme) + $(use_enable iprint) + $(use_with ldap) + $(use_with pam) + $(usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') + $(use_with quota quotas) + $(use_with syslog) + $(use_with systemd) + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + $(use_with winbind) + $(usex test '--enable-selftest' '') + $(use_enable zeroconf avahi) + --with-shared-modules=${SHAREDMODS} + ) + else + myconf+=( + --without-acl-support + --without-ad-dc + --without-dnsupdate + --without-ads + --disable-avahi + --without-cluster-support + --disable-cups + --without-dmapi + --without-fam + --disable-gnutls + --without-gpgme + --disable-iprint + $(use_with ldap) + --without-pam + --without-quotas + --without-syslog + --without-systemd + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + --without-winbind + --disable-python + ) + fi + + CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \ + waf-utils_src_configure ${myconf[@]} +} + +multilib_src_compile() { + waf-utils_src_compile +} + +multilib_src_install() { + waf-utils_src_install + + # Make all .so files executable + find "${D}" -type f -name "*.so" -exec chmod +x {} + + + if multilib_is_native_abi; then + # install ldap schema for server (bug #491002) + if use ldap ; then + insinto /etc/openldap/schema + doins examples/LDAP/samba.schema + fi + + # create symlink for cups (bug #552310) + if use cups ; then + dosym /usr/bin/smbspool /usr/libexec/cups/backend/smb + fi + + # install example config file + insinto /etc/samba + doins examples/smb.conf.default + + # Fix paths in example file (#603964) + sed \ + -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ + -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ + -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ + -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ + -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ + -i "${ED%/}"/etc/samba/smb.conf.default || die + + # Install init script and conf.d file + newinitd "${CONFDIR}/samba4.initd-r1" samba + newconfd "${CONFDIR}/samba4.confd" samba + + systemd_dotmpfilesd "${FILESDIR}"/samba.conf + systemd_dounit "${FILESDIR}"/nmbd.service + systemd_dounit "${FILESDIR}"/smbd.{service,socket} + systemd_newunit "${FILESDIR}"/smbd_at.service 'smbd@.service' + systemd_dounit "${FILESDIR}"/winbindd.service + systemd_dounit "${FILESDIR}"/samba.service + fi +} + +multilib_src_test() { + if multilib_is_native_abi ; then + "${WAF_BINARY}" test || die "test failed" + fi +} + +pkg_postinst() { + ewarn "Be aware the this release contains the best of all of Samba's" + ewarn "technology parts, both a file server (that you can reasonably expect" + ewarn "to upgrade existing Samba 3.x releases to) and the AD domain" + ewarn "controller work previously known as 'samba4'." + + elog "For further information and migration steps make sure to read " + elog "http://samba.org/samba/history/${P}.html " + elog "http://samba.org/samba/history/${PN}-4.5.0.html and" + elog "http://wiki.samba.org/index.php/Samba4/HOWTO " +} diff --git a/net-fs/samba/samba-4.5.13.ebuild b/net-fs/samba/samba-4.5.13.ebuild new file mode 100644 index 000000000000..cbf7ec7d4fc5 --- /dev/null +++ b/net-fs/samba/samba-4.5.13.ebuild @@ -0,0 +1,282 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE='threads(+),xml(+)' + +inherit python-single-r1 waf-utils multilib-minimal linux-info systemd eutils + +MY_PV="${PV/_rc/rc}" +MY_P="${PN}-${MY_PV}" + +SRC_PATH="stable" +[[ ${PV} = *_rc* ]] && SRC_PATH="rc" + +SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz + https://dev.gentoo.org/~polynomial-c/samba-4.5.11-disable-python-patches.tar.xz" +[[ ${PV} = *_rc* ]] || \ +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" + +DESCRIPTION="Samba Suite Version 4" +HOMEPAGE="http://www.samba.org/" +LICENSE="GPL-3" + +SLOT="0" + +IUSE="acl addc addns ads client cluster cups dmapi fam gnutls gpg iprint ldap pam +quota selinux syslog system-heimdal +system-mitkrb5 systemd test winbind zeroconf" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/samba-4.0/policy.h + /usr/include/samba-4.0/dcerpc_server.h + /usr/include/samba-4.0/ctdb.h + /usr/include/samba-4.0/ctdb_client.h + /usr/include/samba-4.0/ctdb_protocol.h + /usr/include/samba-4.0/ctdb_private.h + /usr/include/samba-4.0/ctdb_typesafe_cb.h + /usr/include/samba-4.0/ctdb_version.h +) + +# sys-apps/attr is an automagic dependency (see bug #489748) +CDEPEND="${PYTHON_DEPS} + >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}] + dev-lang/perl:= + dev-libs/libaio[${MULTILIB_USEDEP}] + dev-libs/libbsd[${MULTILIB_USEDEP}] + dev-libs/iniparser:0 + dev-libs/popt[${MULTILIB_USEDEP}] + dev-python/subunit[${PYTHON_USEDEP},${MULTILIB_USEDEP}] + sys-apps/attr[${MULTILIB_USEDEP}] + >=sys-libs/ldb-1.1.27[ldap(+)?,python(+),${MULTILIB_USEDEP}] + =sys-libs/talloc-2.1.8[python,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tdb-1.3.10[python,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tevent-0.9.31-r1[${MULTILIB_USEDEP}] + sys-libs/zlib[${MULTILIB_USEDEP}] + virtual/libiconv + pam? ( virtual/pam ) + acl? ( virtual/acl ) + addns? ( net-dns/bind-tools[gssapi] ) + cluster? ( !dev-db/ctdb ) + cups? ( net-print/cups ) + dmapi? ( sys-apps/dmapi ) + fam? ( virtual/fam ) + gnutls? ( + dev-libs/libgcrypt:0 + >=net-libs/gnutls-1.4.0 + ) + gpg? ( app-crypt/gpgme ) + ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) + system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] ) + system-mitkrb5? ( app-crypt/mit-krb5[${MULTILIB_USEDEP}] ) + systemd? ( sys-apps/systemd:0= )" +DEPEND="${CDEPEND} + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + virtual/pkgconfig + test? ( + !system-mitkrb5? ( + >=sys-libs/nss_wrapper-1.1.3 + >=net-dns/resolv_wrapper-1.1.4 + >=net-libs/socket_wrapper-1.1.7 + >=sys-libs/uid_wrapper-1.2.1 + ) + )" +RDEPEND="${CDEPEND} + client? ( net-fs/cifs-utils[ads?] ) + selinux? ( sec-policy/selinux-samba ) + !dev-perl/Parse-Yapp +" + +REQUIRED_USE="addc? ( gnutls !system-mitkrb5 ) + ads? ( acl gnutls ldap ) + gpg? ( addc ) + ?? ( system-heimdal system-mitkrb5 ) + ${PYTHON_REQUIRED_USE}" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/${PN}-4.4.0-pam.patch" + "${FILESDIR}/${PN}-4.5.1-compile_et_fix.patch" +) + +#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" +CONFDIR="${FILESDIR}/4.4" + +WAF_BINARY="${S}/buildtools/bin/waf" + +SHAREDMODS="" + +pkg_setup() { + python-single-r1_pkg_setup + if use cluster ; then + SHAREDMODS="idmap_rid,idmap_tdb2,idmap_ad" + elif use ads ; then + SHAREDMODS="idmap_ad" + fi +} + +src_prepare() { + default + + # install the patches from tarball(s) + eapply "${WORKDIR}/patches" + + # ugly hackaround for bug #592502 + cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die + + sed -e 's:::' \ + -i source4/dsdb/samdb/ldb_modules/password_hash.c \ + || die + + # Friggin' WAF shit + multilib_copy_sources +} + +multilib_src_configure() { + # when specifying libs for samba build you must append NONE to the end to + # stop it automatically including things + local bundled_libs="NONE" + if ! use system-heimdal && ! use system-mitkrb5 ; then + bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" + fi + + local myconf=() + myconf=( + --enable-fhs + --sysconfdir="${EPREFIX}/etc" + --localstatedir="${EPREFIX}/var" + --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" + --with-piddir="${EPREFIX}/run/${PN}" + --without-lttng + --bundled-libraries="${bundled_libs}" + --builtin-libraries=NONE + --disable-rpath + --disable-rpath-install + --nopyc + --nopyo + ) + if multilib_is_native_abi ; then + myconf+=( + $(use_with acl acl-support) + $(usex addc '' '--without-ad-dc') + $(use_with addns dnsupdate) + $(use_with ads) + $(use_with cluster cluster-support) + $(use_enable cups) + $(use_with dmapi) + $(use_with fam) + $(use_enable gnutls) + $(use_with gpg gpgme) + $(use_enable iprint) + $(use_with ldap) + $(use_with pam) + $(usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') + $(use_with quota quotas) + $(use_with syslog) + $(use_with systemd) + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + $(use_with winbind) + $(usex test '--enable-selftest' '') + $(use_enable zeroconf avahi) + --with-shared-modules=${SHAREDMODS} + ) + else + myconf+=( + --without-acl-support + --without-ad-dc + --without-dnsupdate + --without-ads + --disable-avahi + --without-cluster-support + --disable-cups + --without-dmapi + --without-fam + --disable-gnutls + --without-gpgme + --disable-iprint + $(use_with ldap) + --without-pam + --without-quotas + --without-syslog + --without-systemd + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + --without-winbind + --disable-python + ) + fi + + CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \ + waf-utils_src_configure ${myconf[@]} +} + +multilib_src_compile() { + waf-utils_src_compile +} + +multilib_src_install() { + waf-utils_src_install + + # Make all .so files executable + find "${D}" -type f -name "*.so" -exec chmod +x {} + + + if multilib_is_native_abi; then + # install ldap schema for server (bug #491002) + if use ldap ; then + insinto /etc/openldap/schema + doins examples/LDAP/samba.schema + fi + + # create symlink for cups (bug #552310) + if use cups ; then + dosym /usr/bin/smbspool /usr/libexec/cups/backend/smb + fi + + # install example config file + insinto /etc/samba + doins examples/smb.conf.default + + # Fix paths in example file (#603964) + sed \ + -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ + -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ + -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ + -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ + -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ + -i "${ED%/}"/etc/samba/smb.conf.default || die + + # Install init script and conf.d file + newinitd "${CONFDIR}/samba4.initd-r1" samba + newconfd "${CONFDIR}/samba4.confd" samba + + systemd_dotmpfilesd "${FILESDIR}"/samba.conf + systemd_dounit "${FILESDIR}"/nmbd.service + systemd_dounit "${FILESDIR}"/smbd.{service,socket} + systemd_newunit "${FILESDIR}"/smbd_at.service 'smbd@.service' + systemd_dounit "${FILESDIR}"/winbindd.service + systemd_dounit "${FILESDIR}"/samba.service + fi +} + +multilib_src_test() { + if multilib_is_native_abi ; then + "${WAF_BINARY}" test || die "test failed" + fi +} + +pkg_postinst() { + ewarn "Be aware the this release contains the best of all of Samba's" + ewarn "technology parts, both a file server (that you can reasonably expect" + ewarn "to upgrade existing Samba 3.x releases to) and the AD domain" + ewarn "controller work previously known as 'samba4'." + + elog "For further information and migration steps make sure to read " + elog "http://samba.org/samba/history/${P}.html " + elog "http://samba.org/samba/history/${PN}-4.5.0.html and" + elog "http://wiki.samba.org/index.php/Samba4/HOWTO " +} diff --git a/net-fs/samba/samba-4.5.14.ebuild b/net-fs/samba/samba-4.5.14.ebuild new file mode 100644 index 000000000000..cbf7ec7d4fc5 --- /dev/null +++ b/net-fs/samba/samba-4.5.14.ebuild @@ -0,0 +1,282 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE='threads(+),xml(+)' + +inherit python-single-r1 waf-utils multilib-minimal linux-info systemd eutils + +MY_PV="${PV/_rc/rc}" +MY_P="${PN}-${MY_PV}" + +SRC_PATH="stable" +[[ ${PV} = *_rc* ]] && SRC_PATH="rc" + +SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz + https://dev.gentoo.org/~polynomial-c/samba-4.5.11-disable-python-patches.tar.xz" +[[ ${PV} = *_rc* ]] || \ +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86" + +DESCRIPTION="Samba Suite Version 4" +HOMEPAGE="http://www.samba.org/" +LICENSE="GPL-3" + +SLOT="0" + +IUSE="acl addc addns ads client cluster cups dmapi fam gnutls gpg iprint ldap pam +quota selinux syslog system-heimdal +system-mitkrb5 systemd test winbind zeroconf" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/samba-4.0/policy.h + /usr/include/samba-4.0/dcerpc_server.h + /usr/include/samba-4.0/ctdb.h + /usr/include/samba-4.0/ctdb_client.h + /usr/include/samba-4.0/ctdb_protocol.h + /usr/include/samba-4.0/ctdb_private.h + /usr/include/samba-4.0/ctdb_typesafe_cb.h + /usr/include/samba-4.0/ctdb_version.h +) + +# sys-apps/attr is an automagic dependency (see bug #489748) +CDEPEND="${PYTHON_DEPS} + >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}] + dev-lang/perl:= + dev-libs/libaio[${MULTILIB_USEDEP}] + dev-libs/libbsd[${MULTILIB_USEDEP}] + dev-libs/iniparser:0 + dev-libs/popt[${MULTILIB_USEDEP}] + dev-python/subunit[${PYTHON_USEDEP},${MULTILIB_USEDEP}] + sys-apps/attr[${MULTILIB_USEDEP}] + >=sys-libs/ldb-1.1.27[ldap(+)?,python(+),${MULTILIB_USEDEP}] + =sys-libs/talloc-2.1.8[python,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tdb-1.3.10[python,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tevent-0.9.31-r1[${MULTILIB_USEDEP}] + sys-libs/zlib[${MULTILIB_USEDEP}] + virtual/libiconv + pam? ( virtual/pam ) + acl? ( virtual/acl ) + addns? ( net-dns/bind-tools[gssapi] ) + cluster? ( !dev-db/ctdb ) + cups? ( net-print/cups ) + dmapi? ( sys-apps/dmapi ) + fam? ( virtual/fam ) + gnutls? ( + dev-libs/libgcrypt:0 + >=net-libs/gnutls-1.4.0 + ) + gpg? ( app-crypt/gpgme ) + ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) + system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] ) + system-mitkrb5? ( app-crypt/mit-krb5[${MULTILIB_USEDEP}] ) + systemd? ( sys-apps/systemd:0= )" +DEPEND="${CDEPEND} + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + virtual/pkgconfig + test? ( + !system-mitkrb5? ( + >=sys-libs/nss_wrapper-1.1.3 + >=net-dns/resolv_wrapper-1.1.4 + >=net-libs/socket_wrapper-1.1.7 + >=sys-libs/uid_wrapper-1.2.1 + ) + )" +RDEPEND="${CDEPEND} + client? ( net-fs/cifs-utils[ads?] ) + selinux? ( sec-policy/selinux-samba ) + !dev-perl/Parse-Yapp +" + +REQUIRED_USE="addc? ( gnutls !system-mitkrb5 ) + ads? ( acl gnutls ldap ) + gpg? ( addc ) + ?? ( system-heimdal system-mitkrb5 ) + ${PYTHON_REQUIRED_USE}" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/${PN}-4.4.0-pam.patch" + "${FILESDIR}/${PN}-4.5.1-compile_et_fix.patch" +) + +#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" +CONFDIR="${FILESDIR}/4.4" + +WAF_BINARY="${S}/buildtools/bin/waf" + +SHAREDMODS="" + +pkg_setup() { + python-single-r1_pkg_setup + if use cluster ; then + SHAREDMODS="idmap_rid,idmap_tdb2,idmap_ad" + elif use ads ; then + SHAREDMODS="idmap_ad" + fi +} + +src_prepare() { + default + + # install the patches from tarball(s) + eapply "${WORKDIR}/patches" + + # ugly hackaround for bug #592502 + cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die + + sed -e 's:::' \ + -i source4/dsdb/samdb/ldb_modules/password_hash.c \ + || die + + # Friggin' WAF shit + multilib_copy_sources +} + +multilib_src_configure() { + # when specifying libs for samba build you must append NONE to the end to + # stop it automatically including things + local bundled_libs="NONE" + if ! use system-heimdal && ! use system-mitkrb5 ; then + bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" + fi + + local myconf=() + myconf=( + --enable-fhs + --sysconfdir="${EPREFIX}/etc" + --localstatedir="${EPREFIX}/var" + --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" + --with-piddir="${EPREFIX}/run/${PN}" + --without-lttng + --bundled-libraries="${bundled_libs}" + --builtin-libraries=NONE + --disable-rpath + --disable-rpath-install + --nopyc + --nopyo + ) + if multilib_is_native_abi ; then + myconf+=( + $(use_with acl acl-support) + $(usex addc '' '--without-ad-dc') + $(use_with addns dnsupdate) + $(use_with ads) + $(use_with cluster cluster-support) + $(use_enable cups) + $(use_with dmapi) + $(use_with fam) + $(use_enable gnutls) + $(use_with gpg gpgme) + $(use_enable iprint) + $(use_with ldap) + $(use_with pam) + $(usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') + $(use_with quota quotas) + $(use_with syslog) + $(use_with systemd) + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + $(use_with winbind) + $(usex test '--enable-selftest' '') + $(use_enable zeroconf avahi) + --with-shared-modules=${SHAREDMODS} + ) + else + myconf+=( + --without-acl-support + --without-ad-dc + --without-dnsupdate + --without-ads + --disable-avahi + --without-cluster-support + --disable-cups + --without-dmapi + --without-fam + --disable-gnutls + --without-gpgme + --disable-iprint + $(use_with ldap) + --without-pam + --without-quotas + --without-syslog + --without-systemd + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + --without-winbind + --disable-python + ) + fi + + CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \ + waf-utils_src_configure ${myconf[@]} +} + +multilib_src_compile() { + waf-utils_src_compile +} + +multilib_src_install() { + waf-utils_src_install + + # Make all .so files executable + find "${D}" -type f -name "*.so" -exec chmod +x {} + + + if multilib_is_native_abi; then + # install ldap schema for server (bug #491002) + if use ldap ; then + insinto /etc/openldap/schema + doins examples/LDAP/samba.schema + fi + + # create symlink for cups (bug #552310) + if use cups ; then + dosym /usr/bin/smbspool /usr/libexec/cups/backend/smb + fi + + # install example config file + insinto /etc/samba + doins examples/smb.conf.default + + # Fix paths in example file (#603964) + sed \ + -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ + -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ + -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ + -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ + -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ + -i "${ED%/}"/etc/samba/smb.conf.default || die + + # Install init script and conf.d file + newinitd "${CONFDIR}/samba4.initd-r1" samba + newconfd "${CONFDIR}/samba4.confd" samba + + systemd_dotmpfilesd "${FILESDIR}"/samba.conf + systemd_dounit "${FILESDIR}"/nmbd.service + systemd_dounit "${FILESDIR}"/smbd.{service,socket} + systemd_newunit "${FILESDIR}"/smbd_at.service 'smbd@.service' + systemd_dounit "${FILESDIR}"/winbindd.service + systemd_dounit "${FILESDIR}"/samba.service + fi +} + +multilib_src_test() { + if multilib_is_native_abi ; then + "${WAF_BINARY}" test || die "test failed" + fi +} + +pkg_postinst() { + ewarn "Be aware the this release contains the best of all of Samba's" + ewarn "technology parts, both a file server (that you can reasonably expect" + ewarn "to upgrade existing Samba 3.x releases to) and the AD domain" + ewarn "controller work previously known as 'samba4'." + + elog "For further information and migration steps make sure to read " + elog "http://samba.org/samba/history/${P}.html " + elog "http://samba.org/samba/history/${PN}-4.5.0.html and" + elog "http://wiki.samba.org/index.php/Samba4/HOWTO " +} diff --git a/net-fs/samba/samba-4.6.8-r1.ebuild b/net-fs/samba/samba-4.6.8-r1.ebuild new file mode 100644 index 000000000000..b4690d4142ed --- /dev/null +++ b/net-fs/samba/samba-4.6.8-r1.ebuild @@ -0,0 +1,305 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE='threads(+),xml(+)' + +inherit python-single-r1 waf-utils multilib-minimal linux-info systemd eutils + +MY_PV="${PV/_rc/rc}" +MY_P="${PN}-${MY_PV}" + +SRC_PATH="stable" +[[ ${PV} = *_rc* ]] && SRC_PATH="rc" + +SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz + https://dev.gentoo.org/~axs/samba-4.6.7-disable-python-patches.tar.xz" +[[ ${PV} = *_rc* ]] || \ +KEYWORDS="~amd64 ~arm64 ~x86" + +DESCRIPTION="Samba Suite Version 4" +HOMEPAGE="http://www.samba.org/" +LICENSE="GPL-3" + +SLOT="0" + +IUSE="acl addc addns ads client cluster cups debug dmapi fam gnutls gpg iprint ldap pam python +quota selinux syslog system-heimdal +system-mitkrb5 systemd test winbind zeroconf" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/samba-4.0/policy.h + /usr/include/samba-4.0/dcerpc_server.h + /usr/include/samba-4.0/ctdb.h + /usr/include/samba-4.0/ctdb_client.h + /usr/include/samba-4.0/ctdb_protocol.h + /usr/include/samba-4.0/ctdb_private.h + /usr/include/samba-4.0/ctdb_typesafe_cb.h + /usr/include/samba-4.0/ctdb_version.h +) + +# sys-apps/attr is an automagic dependency (see bug #489748) +CDEPEND=" + >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}] + dev-lang/perl:= + dev-libs/libaio[${MULTILIB_USEDEP}] + dev-libs/libbsd[${MULTILIB_USEDEP}] + dev-libs/iniparser:0 + dev-libs/popt[${MULTILIB_USEDEP}] + dev-python/subunit[${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=dev-util/cmocka-1.0.0[${MULTILIB_USEDEP}] + sys-apps/attr[${MULTILIB_USEDEP}] + >=sys-libs/ldb-1.1.29[ldap(+)?,python(+),${PYTHON_USEDEP},${MULTILIB_USEDEP}] + =sys-libs/talloc-2.1.9[python?,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tdb-1.3.12[python?,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tevent-0.9.31-r1[python?,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + sys-libs/zlib[${MULTILIB_USEDEP}] + virtual/libiconv + pam? ( virtual/pam ) + acl? ( virtual/acl ) + addns? ( + net-dns/bind-tools[gssapi] + dev-python/dnspython:=[${PYTHON_USEDEP}] + ) + cluster? ( !dev-db/ctdb ) + cups? ( net-print/cups ) + debug? ( dev-util/lttng-ust ) + dmapi? ( sys-apps/dmapi ) + fam? ( virtual/fam ) + gnutls? ( + dev-libs/libgcrypt:0 + >=net-libs/gnutls-1.4.0 + ) + gpg? ( app-crypt/gpgme ) + ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) + system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] ) + system-mitkrb5? ( app-crypt/mit-krb5[${MULTILIB_USEDEP}] ) + systemd? ( sys-apps/systemd:0= )" +DEPEND="${CDEPEND} + ${PYTHON_DEPS} + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + virtual/pkgconfig + test? ( + !system-mitkrb5? ( + >=sys-libs/nss_wrapper-1.1.3 + >=net-dns/resolv_wrapper-1.1.4 + >=net-libs/socket_wrapper-1.1.7 + >=sys-libs/uid_wrapper-1.2.1 + ) + )" +RDEPEND="${CDEPEND} + python? ( ${PYTHON_DEPS} ) + client? ( net-fs/cifs-utils[ads?] ) + selinux? ( sec-policy/selinux-samba ) + !dev-perl/Parse-Yapp +" + +REQUIRED_USE="addc? ( python gnutls !system-mitkrb5 ) + test? ( python ) + addns? ( python ) + ads? ( acl gnutls ldap ) + gpg? ( addc ) + ?? ( system-heimdal system-mitkrb5 ) + ${PYTHON_REQUIRED_USE}" + +# the test suite is messed, it uses system-installed samba +# bits instead of what was built, tests things disabled via use +# flags, and generally just fails to work in a way ebuilds could +# rely on in its current state +RESTRICT="test" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/${PN}-4.4.0-pam.patch" + "${FILESDIR}/${PN}-4.5.1-compile_et_fix.patch" +) + +#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" +CONFDIR="${FILESDIR}/4.4" + +WAF_BINARY="${S}/buildtools/bin/waf" + +SHAREDMODS="" + +pkg_setup() { + python-single-r1_pkg_setup + if use cluster ; then + SHAREDMODS="idmap_rid,idmap_tdb2,idmap_ad" + elif use ads ; then + SHAREDMODS="idmap_ad" + fi +} + +src_prepare() { + default + + # install the patches from tarball(s) + eapply "${WORKDIR}/patches" + + # un-bundle dnspython + sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die + + # unbundle iso8601 unless tests are enabled + use test || sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die + + # ugly hackaround for bug #592502 + cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die + + sed -e 's:::' \ + -i source4/dsdb/samdb/ldb_modules/password_hash.c \ + || die + + # Friggin' WAF shit + multilib_copy_sources +} + +multilib_src_configure() { + # when specifying libs for samba build you must append NONE to the end to + # stop it automatically including things + local bundled_libs="NONE" + if ! use system-heimdal && ! use system-mitkrb5 ; then + bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" + fi + + local myconf=() + myconf=( + --enable-fhs + --sysconfdir="${EPREFIX}/etc" + --localstatedir="${EPREFIX}/var" + --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" + --with-piddir="${EPREFIX}/run/${PN}" + --bundled-libraries="${bundled_libs}" + --builtin-libraries=NONE + --disable-rpath + --disable-rpath-install + --nopyc + --nopyo + ) + if multilib_is_native_abi ; then + myconf+=( + $(use_with acl acl-support) + $(usex addc '' '--without-ad-dc') + $(use_with addns dnsupdate) + $(use_with ads) + $(use_with cluster cluster-support) + $(use_enable cups) + $(use_with debug lttng) + $(use_with dmapi) + $(use_with fam) + $(use_enable gnutls) + $(use_with gpg gpgme) + $(use_enable iprint) + $(use_with ldap) + $(use_with pam) + $(usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') + $(use_with quota quotas) + $(use_with syslog) + $(use_with systemd) + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + $(use_with winbind) + $(usex python '' '--disable-python') + $(usex test '--enable-selftest' '') + $(use_enable zeroconf avahi) + --with-shared-modules=${SHAREDMODS} + ) + else + myconf+=( + --without-acl-support + --without-ad-dc + --without-dnsupdate + --without-ads + --disable-avahi + --without-cluster-support + --disable-cups + --without-dmapi + --without-fam + --disable-gnutls + --without-gpgme + --disable-iprint + $(use_with ldap) + $(use_with debug lttng) + --without-pam + --without-quotas + --without-syslog + --without-systemd + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + --without-winbind + --disable-python + ) + fi + + CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \ + waf-utils_src_configure ${myconf[@]} +} + +multilib_src_compile() { + waf-utils_src_compile +} + +multilib_src_install() { + waf-utils_src_install + + # Make all .so files executable + find "${D}" -type f -name "*.so" -exec chmod +x {} + + + if multilib_is_native_abi; then + # install ldap schema for server (bug #491002) + if use ldap ; then + insinto /etc/openldap/schema + doins examples/LDAP/samba.schema + fi + + # create symlink for cups (bug #552310) + if use cups ; then + dosym /usr/bin/smbspool /usr/libexec/cups/backend/smb + fi + + # install example config file + insinto /etc/samba + doins examples/smb.conf.default + + # Fix paths in example file (#603964) + sed \ + -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ + -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ + -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ + -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ + -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ + -i "${ED%/}"/etc/samba/smb.conf.default || die + + # Install init script and conf.d file + newinitd "${CONFDIR}/samba4.initd-r1" samba + newconfd "${CONFDIR}/samba4.confd" samba + + systemd_dotmpfilesd "${FILESDIR}"/samba.conf + systemd_dounit "${FILESDIR}"/nmbd.service + systemd_dounit "${FILESDIR}"/smbd.{service,socket} + systemd_newunit "${FILESDIR}"/smbd_at.service 'smbd@.service' + systemd_dounit "${FILESDIR}"/winbindd.service + systemd_dounit "${FILESDIR}"/samba.service + fi +} + +multilib_src_test() { + if multilib_is_native_abi ; then + "${WAF_BINARY}" test || die "test failed" + fi +} + +pkg_postinst() { + ewarn "Be aware the this release contains the best of all of Samba's" + ewarn "technology parts, both a file server (that you can reasonably expect" + ewarn "to upgrade existing Samba 3.x releases to) and the AD domain" + ewarn "controller work previously known as 'samba4'." + + elog "For further information and migration steps make sure to read " + elog "http://samba.org/samba/history/${P}.html " + elog "http://samba.org/samba/history/${PN}-4.5.0.html and" + elog "http://wiki.samba.org/index.php/Samba4/HOWTO " +} diff --git a/net-fs/samba/samba-4.7.0-r1.ebuild b/net-fs/samba/samba-4.7.0-r1.ebuild new file mode 100644 index 000000000000..382862651762 --- /dev/null +++ b/net-fs/samba/samba-4.7.0-r1.ebuild @@ -0,0 +1,301 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE='threads(+),xml(+)' + +inherit python-single-r1 waf-utils multilib-minimal linux-info systemd eutils + +MY_PV="${PV/_rc/rc}" +MY_P="${PN}-${MY_PV}" + +SRC_PATH="stable" +[[ ${PV} = *_rc* ]] && SRC_PATH="rc" + +SRC_URI="mirror://samba/${SRC_PATH}/${MY_P}.tar.gz" +[[ ${PV} = *_rc* ]] || \ +KEYWORDS="~amd64 ~arm64 ~x86" + +DESCRIPTION="Samba Suite Version 4" +HOMEPAGE="http://www.samba.org/" +LICENSE="GPL-3" + +SLOT="0" + +IUSE="acl addc addns ads client cluster cups debug dmapi fam gnutls gpg iprint ldap pam python +quota selinux syslog system-heimdal +system-mitkrb5 systemd test winbind zeroconf" + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/samba-4.0/policy.h + /usr/include/samba-4.0/dcerpc_server.h + /usr/include/samba-4.0/ctdb.h + /usr/include/samba-4.0/ctdb_client.h + /usr/include/samba-4.0/ctdb_protocol.h + /usr/include/samba-4.0/ctdb_private.h + /usr/include/samba-4.0/ctdb_typesafe_cb.h + /usr/include/samba-4.0/ctdb_version.h +) + +# sys-apps/attr is an automagic dependency (see bug #489748) +CDEPEND=" + >=app-arch/libarchive-3.1.2[${MULTILIB_USEDEP}] + dev-lang/perl:= + dev-libs/libaio[${MULTILIB_USEDEP}] + dev-libs/libbsd[${MULTILIB_USEDEP}] + dev-libs/iniparser:0 + dev-libs/popt[${MULTILIB_USEDEP}] + dev-python/subunit[${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=dev-util/cmocka-1.1.1[${MULTILIB_USEDEP}] + sys-apps/attr[${MULTILIB_USEDEP}] + >=sys-libs/ldb-1.2.2[ldap(+)?,python?,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + sys-libs/libcap + sys-libs/ncurses:0=[${MULTILIB_USEDEP}] + sys-libs/readline:0= + >=sys-libs/talloc-2.1.9[python?,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tdb-1.3.14[python?,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + >=sys-libs/tevent-0.9.33[python?,${PYTHON_USEDEP},${MULTILIB_USEDEP}] + sys-libs/zlib[${MULTILIB_USEDEP}] + virtual/libiconv + pam? ( virtual/pam ) + acl? ( virtual/acl ) + addns? ( + net-dns/bind-tools[gssapi] + dev-python/dnspython:=[${PYTHON_USEDEP}] + ) + cluster? ( !dev-db/ctdb ) + cups? ( net-print/cups ) + debug? ( dev-util/lttng-ust ) + dmapi? ( sys-apps/dmapi ) + fam? ( virtual/fam ) + gnutls? ( + dev-libs/libgcrypt:0 + >=net-libs/gnutls-1.4.0 + ) + gpg? ( app-crypt/gpgme ) + ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] ) + system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl,${MULTILIB_USEDEP}] ) + system-mitkrb5? ( >=app-crypt/mit-krb5-1.15.1[${MULTILIB_USEDEP}] ) + systemd? ( sys-apps/systemd:0= )" +DEPEND="${CDEPEND} + ${PYTHON_DEPS} + app-text/docbook-xsl-stylesheets + dev-libs/libxslt + virtual/pkgconfig + test? ( + !system-mitkrb5? ( + >=sys-libs/nss_wrapper-1.1.3 + >=net-dns/resolv_wrapper-1.1.4 + >=net-libs/socket_wrapper-1.1.7 + >=sys-libs/uid_wrapper-1.2.1 + ) + )" +RDEPEND="${CDEPEND} + python? ( ${PYTHON_DEPS} ) + client? ( net-fs/cifs-utils[ads?] ) + selinux? ( sec-policy/selinux-samba ) + !dev-perl/Parse-Yapp +" + +REQUIRED_USE="addc? ( python gnutls ) + test? ( python ) + addns? ( python ) + ads? ( acl gnutls ldap ) + gpg? ( addc ) + ?? ( system-heimdal system-mitkrb5 ) + ${PYTHON_REQUIRED_USE}" + +# the test suite is messed, it uses system-installed samba +# bits instead of what was built, tests things disabled via use +# flags, and generally just fails to work in a way ebuilds could +# rely on in its current state +RESTRICT="test" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}/${PN}-4.4.0-pam.patch" + "${FILESDIR}/${PN}-4.5.1-compile_et_fix.patch" + "${FILESDIR}"/talloc-disable-python.patch +) + +#CONFDIR="${FILESDIR}/$(get_version_component_range 1-2)" +CONFDIR="${FILESDIR}/4.4" + +WAF_BINARY="${S}/buildtools/bin/waf" + +SHAREDMODS="" + +pkg_setup() { + python-single-r1_pkg_setup + if use cluster ; then + SHAREDMODS="idmap_rid,idmap_tdb2,idmap_ad" + elif use ads ; then + SHAREDMODS="idmap_ad" + fi +} + +src_prepare() { + default + + # un-bundle dnspython + sed -i -e '/"dns.resolver":/d' "${S}"/third_party/wscript || die + + # unbundle iso8601 unless tests are enabled + use test || sed -i -e '/"iso8601":/d' "${S}"/third_party/wscript || die + + # ugly hackaround for bug #592502 + cp /usr/include/tevent_internal.h "${S}"/lib/tevent/ || die + + sed -e 's:::' \ + -i source4/dsdb/samdb/ldb_modules/password_hash.c \ + || die + + # Friggin' WAF shit + multilib_copy_sources +} + +multilib_src_configure() { + # when specifying libs for samba build you must append NONE to the end to + # stop it automatically including things + local bundled_libs="NONE" + if ! use system-heimdal && ! use system-mitkrb5 ; then + bundled_libs="heimbase,heimntlm,hdb,kdc,krb5,wind,gssapi,hcrypto,hx509,roken,asn1,com_err,NONE" + fi + + local myconf=() + myconf=( + --enable-fhs + --sysconfdir="${EPREFIX}/etc" + --localstatedir="${EPREFIX}/var" + --with-modulesdir="${EPREFIX}/usr/$(get_libdir)/samba" + --with-piddir="${EPREFIX}/run/${PN}" + --bundled-libraries="${bundled_libs}" + --builtin-libraries=NONE + --disable-rpath + --disable-rpath-install + --nopyc + --nopyo + ) + if multilib_is_native_abi ; then + myconf+=( + $(use_with acl acl-support) + $(usex addc '' '--without-ad-dc') + $(use_with addns dnsupdate) + $(use_with ads) + $(use_with cluster cluster-support) + $(use_enable cups) + $(use_with debug lttng) + $(use_with dmapi) + $(use_with fam) + $(use_enable gnutls) + $(use_with gpg gpgme) + $(use_enable iprint) + $(use_with ldap) + $(use_with pam) + $(usex pam "--with-pammodulesdir=${EPREFIX}/$(get_libdir)/security" '') + $(use_with quota quotas) + $(use_with syslog) + $(use_with systemd) + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + $(use_with winbind) + $(usex python '' '--disable-python') + $(usex test '--enable-selftest' '') + $(use_enable zeroconf avahi) + --with-shared-modules=${SHAREDMODS} + ) + else + myconf+=( + --without-acl-support + --without-ad-dc + --without-dnsupdate + --without-ads + --disable-avahi + --without-cluster-support + --disable-cups + --without-dmapi + --without-fam + --disable-gnutls + --without-gpgme + --disable-iprint + $(use_with ldap) + $(use_with debug lttng) + --without-pam + --without-quotas + --without-syslog + --without-systemd + $(usex system-mitkrb5 '--with-system-mitkrb5' '') + --without-winbind + --disable-python + ) + fi + + CPPFLAGS="-I${SYSROOT}${EPREFIX}/usr/include/et ${CPPFLAGS}" \ + waf-utils_src_configure ${myconf[@]} +} + +multilib_src_compile() { + waf-utils_src_compile +} + +multilib_src_install() { + waf-utils_src_install + + # Make all .so files executable + find "${D}" -type f -name "*.so" -exec chmod +x {} + + + if multilib_is_native_abi; then + # install ldap schema for server (bug #491002) + if use ldap ; then + insinto /etc/openldap/schema + doins examples/LDAP/samba.schema + fi + + # create symlink for cups (bug #552310) + if use cups ; then + dosym /usr/bin/smbspool /usr/libexec/cups/backend/smb + fi + + # install example config file + insinto /etc/samba + doins examples/smb.conf.default + + # Fix paths in example file (#603964) + sed \ + -e '/log file =/s@/usr/local/samba/var/@/var/log/samba/@' \ + -e '/include =/s@/usr/local/samba/lib/@/etc/samba/@' \ + -e '/path =/s@/usr/local/samba/lib/@/var/lib/samba/@' \ + -e '/path =/s@/usr/local/samba/@/var/lib/samba/@' \ + -e '/path =/s@/usr/spool/samba@/var/spool/samba@' \ + -i "${ED%/}"/etc/samba/smb.conf.default || die + + # Install init script and conf.d file + newinitd "${CONFDIR}/samba4.initd-r1" samba + newconfd "${CONFDIR}/samba4.confd" samba + + systemd_dotmpfilesd "${FILESDIR}"/samba.conf + systemd_dounit "${FILESDIR}"/nmbd.service + systemd_dounit "${FILESDIR}"/smbd.{service,socket} + systemd_newunit "${FILESDIR}"/smbd_at.service 'smbd@.service' + systemd_dounit "${FILESDIR}"/winbindd.service + systemd_dounit "${FILESDIR}"/samba.service + fi +} + +multilib_src_test() { + if multilib_is_native_abi ; then + "${WAF_BINARY}" test || die "test failed" + fi +} + +pkg_postinst() { + ewarn "Be aware the this release contains the best of all of Samba's" + ewarn "technology parts, both a file server (that you can reasonably expect" + ewarn "to upgrade existing Samba 3.x releases to) and the AD domain" + ewarn "controller work previously known as 'samba4'." + + elog "For further information and migration steps make sure to read " + elog "http://samba.org/samba/history/${P}.html " + elog "http://samba.org/samba/history/${PN}-4.5.0.html and" + elog "http://wiki.samba.org/index.php/Samba4/HOWTO " +} -- cgit v1.2.3