diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-09-28 01:25:58 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-09-28 01:25:58 +0100 |
commit | 6405cba4bf18141460bc9fcb8f5580532d4b46f8 (patch) | |
tree | 377baa366741990f54b18ea82f5566c48295f4e0 /app-emulation | |
parent | abc3bfc07d931f667a0f50cf607f1c8a49af879f (diff) |
gentoo auto-resync : 28:09:2024 - 01:25:57
Diffstat (limited to 'app-emulation')
-rw-r--r-- | app-emulation/Manifest.gz | bin | 15525 -> 15517 bytes | |||
-rw-r--r-- | app-emulation/free42/Manifest | 2 | ||||
-rw-r--r-- | app-emulation/free42/free42-3.1.8.ebuild | 2 | ||||
-rw-r--r-- | app-emulation/virtualbox-additions/Manifest | 2 | ||||
-rw-r--r-- | app-emulation/virtualbox-additions/virtualbox-additions-7.1.2.ebuild | 26 | ||||
-rw-r--r-- | app-emulation/virtualbox-extpack-oracle/Manifest | 2 | ||||
-rw-r--r-- | app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-7.1.2.ebuild | 33 | ||||
-rw-r--r-- | app-emulation/virtualbox-guest-additions/Manifest | 2 | ||||
-rw-r--r-- | app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.1.2.ebuild | 288 | ||||
-rw-r--r-- | app-emulation/virtualbox-modules/Manifest | 2 | ||||
-rw-r--r-- | app-emulation/virtualbox-modules/virtualbox-modules-7.1.2.ebuild | 34 | ||||
-rw-r--r-- | app-emulation/virtualbox/Manifest | 3 | ||||
-rw-r--r-- | app-emulation/virtualbox/virtualbox-7.1.2.ebuild | 744 |
13 files changed, 1138 insertions, 2 deletions
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz Binary files differindex 1139bfead711..bdb4a5bb7632 100644 --- a/app-emulation/Manifest.gz +++ b/app-emulation/Manifest.gz diff --git a/app-emulation/free42/Manifest b/app-emulation/free42/Manifest index 0f69aaaf8944..9a2134ad3857 100644 --- a/app-emulation/free42/Manifest +++ b/app-emulation/free42/Manifest @@ -9,5 +9,5 @@ DIST free42-nologo-3.1.8.tgz 7464179 BLAKE2B 122175508b2da42f101fae37d7c1627ef80 EBUILD free42-2.5.24.ebuild 988 BLAKE2B 018e42a0d178fddad32220fb80a8052b883341ed595aeacb8c62189167b92354df147821701c496010a2d41d4492b9c8f9591e3dc3726277fca9032f22877b7b SHA512 558ca798068bb404d040e4f95ef2a404f8184d23f1b91c03801dd29599b2615f8bbaef509edac11d958a641ba103e2871cc7d5e4f1e2b7be47f6cfdc22d3cdac EBUILD free42-3.1.3.ebuild 981 BLAKE2B 2a1c4d1a6258b90bb571e61c009502194155d30be1f595d9dd0f6f6acbfa2c81e26e2c52c8f66868f198b7a40e6e4f8c8e24a81caf60ec88b149a04fc628407b SHA512 285d201e00e9f6670da9e28ed6236e10e23c82018bf3b481bb323493ed921bb48ccea9952699049bc60589f80cac56060110184d68c90a24cac90c317bcbf961 EBUILD free42-3.1.7.ebuild 978 BLAKE2B c3a4c3bc87adec0b446a2dc59f540253fe0458cef590566f6cd8c5ff0950a33835b18ef22fecc21505f5c30ab247d97f3fa8df82524d0f0847e0d8304c8976ca SHA512 a43b154709566e9bc8ae472c9beb2d946f1327929f1b5777670eb4ba883b1e7d39583dcdeb72d5f8d0a7b9faf83cacded5d6c265230b836057e658c8d7cf0e14 -EBUILD free42-3.1.8.ebuild 978 BLAKE2B c3a4c3bc87adec0b446a2dc59f540253fe0458cef590566f6cd8c5ff0950a33835b18ef22fecc21505f5c30ab247d97f3fa8df82524d0f0847e0d8304c8976ca SHA512 a43b154709566e9bc8ae472c9beb2d946f1327929f1b5777670eb4ba883b1e7d39583dcdeb72d5f8d0a7b9faf83cacded5d6c265230b836057e658c8d7cf0e14 +EBUILD free42-3.1.8.ebuild 976 BLAKE2B fdac700a7965299f84511ace42e5b49665431f42dd6c02eb4f58e235b60ede1bb719fe5a553242aced72a22572a117cee839522cb98bc10193cf8ff88cfc2dad SHA512 5b994121ff250b72b0b01ac05f00d07d6cb3d8f302b22b5f0d0bb1db6ad7d6a2624f1e7b68fbb980597993992123188a095af46588d54142c86554b09a99ea53 MISC metadata.xml 346 BLAKE2B e7d31b887aade448cfdd31d3221c1d01f13ae1ad9097c4b18fa39b927401d7aa1c0b0b4bad4c36251b74f976ae79899e1b64b6086656cfbbee2036e1cf85946d SHA512 a848ab39ebadfe8b2c866cec845b16c1a0d92070a8e4365bc576a3d4287078594d0eb41f704f5a2f9b35618e24d91de99f6760ced7d39d9a4f706ca6f5c5480b diff --git a/app-emulation/free42/free42-3.1.8.ebuild b/app-emulation/free42/free42-3.1.8.ebuild index 063f0e457429..962007422a29 100644 --- a/app-emulation/free42/free42-3.1.8.ebuild +++ b/app-emulation/free42/free42-3.1.8.ebuild @@ -14,7 +14,7 @@ S=${WORKDIR}/${MY_PV} LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64 ~x86" +KEYWORDS="amd64 x86" IUSE="+alsa" DEPEND="app-accessibility/at-spi2-core diff --git a/app-emulation/virtualbox-additions/Manifest b/app-emulation/virtualbox-additions/Manifest index 017c2c67829e..74ced91028ad 100644 --- a/app-emulation/virtualbox-additions/Manifest +++ b/app-emulation/virtualbox-additions/Manifest @@ -1,7 +1,9 @@ DIST VBoxGuestAdditions_6.1.50.iso 64051200 BLAKE2B 9eff4a3643579ee0426dbe2b62247b8c89321be495e61469628574445fedc06ff2fb9afa108705cbaf24a13db99b4e6e850c61e5c97343095549f444831fcf62 SHA512 d74ce912dbbcef7f644a9f3ba9917782336cbee8e0756727a8753ffc17486a75e833adaa869e205531bc3b81b9cb26aa9b50f44210e78dceece966687122f6c6 DIST VBoxGuestAdditions_7.0.20.iso 53504000 BLAKE2B c29824e0e35104051205b13ce11137c1900be7c24c0d1dd4ff7cb6d936e61a8413a4ee1713034f8a347adfaa9b0ce3b43ce2de5b41dd9e74202f2f97710a8009 SHA512 6b87812ad1d8230c4f8ab79b58b7095c8c56b0b2acd7dcf0ecf54248fff2d0f3c89cc590de32a3cbabf5853ffa55e1cad8500206512141f027919c37b01f84ad DIST VBoxGuestAdditions_7.1.0.iso 58832896 BLAKE2B c15c0efddc8ab79a022243c006d8fb31d1a20bf5fe7ea4186f0ddca73cc01b8bffe166ec1fb334b83cc3f36ea07a0f2cc99b4dc4474e6fb8808e8d7493e9fed1 SHA512 92314d5488db4d53ba779350cb2226ae444678bb48070ed0cc9c2f11472d6ac7823517baa5ec6cdb3cb97e279205526d4c15aeb268cf43563fa1402cd7176c37 +DIST VBoxGuestAdditions_7.1.2.iso 58839040 BLAKE2B 5fe5350d22a47fc9820e18de0a8248f093f38bf26dfcbbbc61375b9fbbdde1aba2017d53a53740f21669b8df3b1813e9ba6089ebd948954787e45583f24f9d88 SHA512 30d5e7df24a44b694d87debcf3887eafbe6acf09cfdb0b453021825781aa167ab9d2a658b285079960ab92818281332fdf90997abf361cb6f652e63d54e56b8b EBUILD virtualbox-additions-6.1.50.ebuild 567 BLAKE2B cfacfeed3e15bb0407abaf7b9584d37054ed47cff35bdc80b71f9a97af7a49534ec4ade228ea39e3801f94a25fe6fd872c698d811f14f7ae744e816a0ead9061 SHA512 1fd1aa81f3ff55ca2d71ca5384fdb2bf46c9cdf5bce89917089743a86b92caaf06ffc1e1cf844a10bd2259ebfb59417850eeabd75653cd613c3f64f85ce30c70 EBUILD virtualbox-additions-7.0.20.ebuild 555 BLAKE2B 2b0398d65ffbc61bb3a6f5833ae5f5fc3bf4582df3caa78007b3da03d840cd2e455cd5bbbe81cbe6b0652613dd7d75acb7d0e0e04312b419717ac7c473ae6163 SHA512 7f10e29a7ee72d988c92228b64a769e00ef42292b26ce61e62182af93938f63489615009f8224b4fef8bd927ee6d24c6301496be50cc3efaa817423b4ac54e84 EBUILD virtualbox-additions-7.1.0.ebuild 576 BLAKE2B 419933ecb873ae67f95affc06086378acfbfb245ad6be2f08154e3613c120788e003b8148cfa13c6012356b906100fc01b0a01b3b8094dd0c48429f93a7c0bfb SHA512 d5841adebee160e71a0a3371c99990dd8a4f2b8436f760b9a0152b9b223274ddef68ce8656cd7707e77e40deb17ae2b13b5caab690dfefedcb067789f8eb6f80 +EBUILD virtualbox-additions-7.1.2.ebuild 576 BLAKE2B 419933ecb873ae67f95affc06086378acfbfb245ad6be2f08154e3613c120788e003b8148cfa13c6012356b906100fc01b0a01b3b8094dd0c48429f93a7c0bfb SHA512 d5841adebee160e71a0a3371c99990dd8a4f2b8436f760b9a0152b9b223274ddef68ce8656cd7707e77e40deb17ae2b13b5caab690dfefedcb067789f8eb6f80 MISC metadata.xml 255 BLAKE2B 9386ef3bdb55211441f303528b31f8ccd9ad9039744400e859574a424fa1f366a989fe78f5c10038f3dd9b06a6a389e4a7e643b3eac0dc93a79ac4cc3b4c5423 SHA512 6c158e12464285afd44b70d0653b65f65da1c523fc2b1b07eb6d2dec56f58234bb31cb9dc36238cd6dfc20031b4d58c04e7c1678cc9f917194403ad8a209513f diff --git a/app-emulation/virtualbox-additions/virtualbox-additions-7.1.2.ebuild b/app-emulation/virtualbox-additions/virtualbox-additions-7.1.2.ebuild new file mode 100644 index 000000000000..c1633c28ffeb --- /dev/null +++ b/app-emulation/virtualbox-additions/virtualbox-additions-7.1.2.ebuild @@ -0,0 +1,26 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PN=VBoxGuestAdditions +MY_PV=${PV^^} +MY_P=${MY_PN}_${MY_PV} + +DESCRIPTION="CD image containing guest additions for VirtualBox" +HOMEPAGE="https://www.virtualbox.org/" +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso" +S="${WORKDIR}" + +LICENSE="GPL-3 || ( GPL-3 CDDL )" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +src_unpack() { + return 0 +} + +src_install() { + insinto /usr/share/${PN/-additions} + newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso +} diff --git a/app-emulation/virtualbox-extpack-oracle/Manifest b/app-emulation/virtualbox-extpack-oracle/Manifest index cd301171cab4..dc46fb4b77c0 100644 --- a/app-emulation/virtualbox-extpack-oracle/Manifest +++ b/app-emulation/virtualbox-extpack-oracle/Manifest @@ -1,7 +1,9 @@ DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.50.tar.gz 11175855 BLAKE2B 898ef92a91dbfb39079f8dfa5f4c1e6d91df66e92deb00849ba1da8a2278e3adcfd5754bf70acc6d8b6d7d6273923999860b71c01de3eaabf4d487d718aa14ef SHA512 818f0564a8ee1266f2d03d6e0d5df44278746067ae86279f6e884f519ad3e923382c7b987b3a58fe95e2aa4f0a53b98d553106b0250923e88989e5fdaa9dc3ae DIST Oracle_VM_VirtualBox_Extension_Pack-7.0.20.tar.gz 18263914 BLAKE2B ca31eccf361e7ce865e838d6e819f3b9ecc0852d07660f14aa9fae200a0d04777256e3cd933ffc02992ed7b596779280176916e9d9f030d7aaf2319433fc63f3 SHA512 b0ba22299a9bb81f47fb4c7f4117b1b5210a72973da723185c6d87fe192f7ab0ea0eb9fae6671b84332a234ead8539375976c87c483628449812e617c42598c7 DIST Oracle_VirtualBox_Extension_Pack-7.1.0.tar.gz 22885754 BLAKE2B a3b24822ee269e3bf362871edde3b12f8073e228abf2b390a42d5ba0b38c66d454d765d20bbcf86a212091c3789a3b76a86338f1cdcea79dd902025cee257b9b SHA512 d164f6ee79c78183dd388db34dc7616c5ba31a3103e5a7d3a8c526f2612a49b831a8483d5d8874983185d6d18143fb78905f18167cc22caf5f552984fdc0d826 +DIST Oracle_VirtualBox_Extension_Pack-7.1.2.tar.gz 22966287 BLAKE2B aa13d0945a2b033213dcf897d8f5afaf1ac96d89a236aca574e2dc02699efd2b3532e51a5c7fbbbc4b0deb74f525f05108d3e77202959e7ec2f0a87fd776bc42 SHA512 8d65de1c62fe7d4f2540a997e9fd0912b99d1561ade4e55b020700b0608f7da76d7a1b3fada413c1a742c9304e3295403ac0c9cd30bb563c56dd8a68ea36b374 EBUILD virtualbox-extpack-oracle-6.1.50.ebuild 742 BLAKE2B 687dfef72959968f610b73f55ad028e00e59fd9bf4ff7d9d60b77e704bf61395ff1680958455619c5afd2867be365e161e5845b03a53902a7a14f88b7887815a SHA512 00fd45d6068420328b559d7ab7ca491b8dde2b8b96e5bd8a7e46108cf980e38c660425020de6a58501d6b119443f80cbd64fc52ed223f5c9f3ecf8834cf52d02 EBUILD virtualbox-extpack-oracle-7.0.20.ebuild 797 BLAKE2B 04bab98e17dd3519b1de3a2644a1f150f07bb1b555fb0b65bd8022fd99b71e5631dae91862847feecebb99d7ddac5656fac69e17ab33bb63be5a9c9bbb9a8aa5 SHA512 f28316b58160fcb3e55c72c928974dd1db6239220cc9f61510b9a6408adea2de0cc13faee7e91dcdbe5240eb19f542c85a78c0fea2ac2a2efd37ab0779d05d38 EBUILD virtualbox-extpack-oracle-7.1.0.ebuild 782 BLAKE2B bba57eaa3723a33d0f4020f6dc8ac4c7e10aaa16464c326d10dbbf20e7be57a3d4c72c07e23efdeb359cf7b17be22824eb9db3f700da54348b488da060fb3394 SHA512 72b27f8120af9f9501011fb6d88b6e5b76493a05af785aa33ec8217892cc7adbfb461bc60f143ba91a9c7126b8436e8565727a2275c0367ebf850bf6fd0b0dbb +EBUILD virtualbox-extpack-oracle-7.1.2.ebuild 782 BLAKE2B bba57eaa3723a33d0f4020f6dc8ac4c7e10aaa16464c326d10dbbf20e7be57a3d4c72c07e23efdeb359cf7b17be22824eb9db3f700da54348b488da060fb3394 SHA512 72b27f8120af9f9501011fb6d88b6e5b76493a05af785aa33ec8217892cc7adbfb461bc60f143ba91a9c7126b8436e8565727a2275c0367ebf850bf6fd0b0dbb MISC metadata.xml 255 BLAKE2B 9386ef3bdb55211441f303528b31f8ccd9ad9039744400e859574a424fa1f366a989fe78f5c10038f3dd9b06a6a389e4a7e643b3eac0dc93a79ac4cc3b4c5423 SHA512 6c158e12464285afd44b70d0653b65f65da1c523fc2b1b07eb6d2dec56f58234bb31cb9dc36238cd6dfc20031b4d58c04e7c1678cc9f917194403ad8a209513f diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-7.1.2.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-7.1.2.ebuild new file mode 100644 index 000000000000..ffa939f5e0fa --- /dev/null +++ b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-7.1.2.ebuild @@ -0,0 +1,33 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PV="${PV^^}" +MY_PN="Oracle_VirtualBox_Extension_Pack" +MY_P="${MY_PN}-${MY_PV}" + +DESCRIPTION="PUEL extensions for VirtualBox" +HOMEPAGE="https://www.virtualbox.org/" +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz" +S="${WORKDIR}" + +LICENSE="PUEL-12" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +RESTRICT="bindist mirror strip" + +RDEPEND=" + || ( + =app-emulation/virtualbox-${PV}* + =app-emulation/virtualbox-kvm-${PV}* + ) +" + +QA_PREBUILT="usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/*" + +src_install() { + insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN} + doins -r linux.${ARCH} + doins ExtPack* PXE-Intel.rom +} diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest index 3ee4cac2cb72..1b2e75a081aa 100644 --- a/app-emulation/virtualbox-guest-additions/Manifest +++ b/app-emulation/virtualbox-guest-additions/Manifest @@ -8,6 +8,7 @@ AUX xorg.conf.vbox 274 BLAKE2B 3a3035fcbdbd5810c54505f5a5e6deefa1540e5e01a038bab DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f DIST VirtualBox-7.0.20.tar.bz2 173300021 BLAKE2B 23a1553578c8b89c3bea65fd9a451ef5abf419ce8a05524f2afc15b8d9a378a22ffb01c0c792d258320aeddb330b74f8f769180863041e333512d0eed2f4449c SHA512 7682e24d60c1896c661f2689af6820ae67b6bd8d9faaf18c58e8159bc7694ef80722f8e9611d6272da5b46eb2f3a44fc637b277e6801b7a8bf53aad045a81fe9 DIST VirtualBox-7.1.0.tar.bz2 205966296 BLAKE2B 135805119d1710adbb17164d80a67f9b40fcc72d966af3b6d687b7f742a7bb487e76afc1ec45e31fe880a99a291ecdac3ee3dacdd342dbbe2dcec0eab32c8121 SHA512 d0fc27195b859fb537d57229d60a8895ced24b04c0f703c5862982de01d4787d20a3acb9cee4af29d18c56cd8c7ad846fd0eacc14af0c419e738953ca488463b +DIST VirtualBox-7.1.2.tar.bz2 206105145 BLAKE2B 4b30f1d14625ddaed88b1a9cdac41289fef332d52e210d982ce075d652849b1cb72fee6d6e691f74378d4b8e7dd914355bcf0cd074d36249f39b099d1bba7c79 SHA512 d890f9b2e8799bcb1ed9cdaa86ef42daa261f7e9022a2e7e9df8c21f395c56e91e2d03292f22c9633ff6a0f0c5933ba3ac30af30befe87b84ffd89c07d51568f DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57 DIST virtualbox-patches-7.0.16.tar.bz2 6808 BLAKE2B d15fa2ca306375142c3e25d4759d2790b2bb9eb69e333a8773ad500b29dd127b401943abf59ca59d01858a3ed5551fb3a6c93c4c893c8de971a714ce5306d577 SHA512 a488cbc6660fe8637c44cd79d87156609af089988239a7e76fea8a3c7e6319512c574bef2e942b354b14ce671a8e75ab8b2160abf7c40963795ee8a545ecd992 DIST virtualbox-patches-7.1.0.tar.bz2 5952 BLAKE2B cb024f36249d7d312c9d0f9231c22a9609d45de1d4c82ca36672fea703765d437d7a414d810adb5eb5f2db92018b669c3b5d0c32372c5ced90f5e13f82344ffa SHA512 c6ef54b7d60f01f5f2b89c6fd7f8b7b509bc62bca0502114cedcbaaf9643445ea413bba481dcf43fb96b5b4d94d64395965682c1ee160d889213615c9272184c @@ -15,4 +16,5 @@ EBUILD virtualbox-guest-additions-6.1.50-r1.ebuild 7489 BLAKE2B 777c460693bb7240 EBUILD virtualbox-guest-additions-6.1.50.ebuild 7515 BLAKE2B c431547ddba5da48b1adf38c5586b0716f35bcef669584928e5d8e0611b47afedbf7e928f173d69b40891bd992e394630386587fcf05504bbc03d14251f42b75 SHA512 9c345dff47ab1aecede001e780f61cd51dbd0b4edd6a67491d410d964a387defdb282e13feaf14336291b58c9fb23532c5a438ffa26af7b60d63f75cbb931343 EBUILD virtualbox-guest-additions-7.0.20.ebuild 7544 BLAKE2B 78aeb666e2db0db9e7d8120113e45ee31de38964492dbf725ff1256a817614f834cd546e680743e41a380abf97be97a7698ef0b874b182f069ce710dc6d0148a SHA512 fe700af6d72182109e7dd9dc96263b8b4f17aa381e35b3f196386b3effde9d65b4c4bb30e8c065585455a83240a00148276df38fd5e51c26d172c0bdc73ede20 EBUILD virtualbox-guest-additions-7.1.0.ebuild 7565 BLAKE2B d250ddfd0077966a80d702b5e2dedb43136acd1799a5f82fbecee6de8e6c6d121f868106c3aea0860bf26df449086be2cfdfb275ef04b82ea478d583e4791fc2 SHA512 b8effe4b04ad3babcd80274cda2b8ce97b0907063c8c865a421d8e19cfe7ed8c03bbc65c7f85be190955eea37419653eb4c08536ce7b61617024c655058a376f +EBUILD virtualbox-guest-additions-7.1.2.ebuild 7565 BLAKE2B d250ddfd0077966a80d702b5e2dedb43136acd1799a5f82fbecee6de8e6c6d121f868106c3aea0860bf26df449086be2cfdfb275ef04b82ea478d583e4791fc2 SHA512 b8effe4b04ad3babcd80274cda2b8ce97b0907063c8c865a421d8e19cfe7ed8c03bbc65c7f85be190955eea37419653eb4c08536ce7b61617024c655058a376f MISC metadata.xml 255 BLAKE2B 9386ef3bdb55211441f303528b31f8ccd9ad9039744400e859574a424fa1f366a989fe78f5c10038f3dd9b06a6a389e4a7e643b3eac0dc93a79ac4cc3b4c5423 SHA512 6c158e12464285afd44b70d0653b65f65da1c523fc2b1b07eb6d2dec56f58234bb31cb9dc36238cd6dfc20031b4d58c04e7c1678cc9f917194403ad8a209513f diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.1.2.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.1.2.ebuild new file mode 100644 index 000000000000..6a4d48acf31d --- /dev/null +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.1.2.ebuild @@ -0,0 +1,288 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo linux-mod-r1 readme.gentoo-r1 systemd toolchain-funcs udev + +MY_PN="VirtualBox" +MY_PV=${PV^^} +MY_P=${MY_PN}-${MY_PV} + +DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests" +HOMEPAGE="https://www.virtualbox.org/" +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2 + https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.1.0.tar.bz2" +S="${WORKDIR}/${MY_PN}-${MY_PV}" + +# Reminder: see the LICENSE related comment in app-emulation/virtualbox-additions ebuild +LICENSE="GPL-3 LGPL-2.1+ MIT || ( GPL-3 CDDL )" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64 ~x86" +IUSE="+dbus gui" + +RDEPEND=" + acct-group/vboxguest + acct-group/vboxsf + acct-user/vboxguest + sys-libs/pam + sys-libs/zlib + dbus? ( sys-apps/dbus ) + gui? ( + x11-apps/xrandr + x11-apps/xrefresh + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXmu + x11-libs/libXt + ) +" +# some libs here are indirect dependencies, and also needed at compile time. +# keeping them in DEPEND to avoid warnings from qa-vdb. +DEPEND=" + ${RDEPEND} + gui? ( + x11-libs/libICE + x11-libs/libSM + x11-libs/libXau + x11-libs/libXdmcp + x11-base/xorg-proto + ) +" +BDEPEND=" + >=dev-lang/yasm-0.6.2 + >=dev-build/kbuild-0.1.9998.3127 + sys-devel/bin86 + sys-power/iasl +" + +DOCS=() # Don't install the default README file during einstalldocs + +VBOX_MOD_SRC_DIR="out/linux.${ARCH}/release/bin/additions/src" +CONFIG_CHECK="~DRM_TTM ~DRM_VMWGFX" +WARNING_DRM_TTM="DRM_TTM is needed for running the vboxvideo driver." +WARNING_DRM_VMWGFX="DRM_VMWGFX is the recommended driver for VMSVGA." + +DOC_CONTENTS="\n +Please add users to the \"vboxguest\" group so they can\n +benefit from seamless mode, auto-resize and clipboard.\n +\n +The vboxsf group has been added to make automount services work.\n +These services are part of the shared folders support.\n +\n +Please add:\n + /etc/init.d/virtualbox-guest-additions\n +to the default runlevel in order to start\n +needed services.\n +\n +An autostart .desktop file has been installed to start\n +VBoxClient in desktop sessions.\n +\n +You can mount shared folders with:\n + mount -t vboxsf <shared_folder_name> <mount_point>\n +\n +Warning:\n + this ebuild is only needed if you are running gentoo\n + inside a VirtualBox Virtual Machine, you don't need\n + it to run VirtualBox itself.\n +\n" + +src_prepare() { + # Remove shipped binaries (kBuild,yasm), see bug #232775 + rm -r kBuild/bin tools || die + + # Provide kernel sources + pushd src/VBox/Additions &>/dev/null || die + ebegin "Extracting guest kernel module sources" + kmk GuestDrivers-src vboxguest-src vboxsf-src vboxvideo-src &>/dev/null + eend $? || die + popd &>/dev/null || die + + # PaX fixes (see bug #298988) + eapply -d "${VBOX_MOD_SRC_DIR}" -- "${FILESDIR}"/vboxguest-6.1.36-log-use-c99.patch + + # Disable things unused or splitted into separate ebuilds + cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die + if ! use gui; then + echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk || die + fi + + # Remove pointless GCC version check + sed -e '/ check_gcc$/d' -i configure || die + + # Respect LDFLAGS (bug #759100) + sed -i -e '/TEMPLATE_VBoxR3Exe_LDFLAGS.linux[ ]*=/ s/$/ $(CCLDFLAGS)/' Config.kmk || die + + eapply "${WORKDIR}/virtualbox-patches-7.1.0/patches" + eapply_user +} + +src_configure() { + tc-export AR CC CXX LD RANLIB + + # Build the user-space tools, warnings are harmless + local myconf=( + --with-gcc="$(tc-getCC)" + --with-g++="$(tc-getCXX)" + + --nofatal + --disable-xpcom + --disable-sdl-ttf + --disable-pulse + --disable-alsa + $(usev !dbus --disable-dbus) + --target-arch=${ARCH} + --with-linux="${KV_OUT_DIR}" + --build-headless + ) + + # bug #843437 + # Respect LDFLAGS (bug #759100) + # Cannot use LDFLAGS here because they also get passed to $(LD) + cat >> LocalConfig.kmk <<-EOF || die + CFLAGS=${CFLAGS} + CXXFLAGS=${CXXFLAGS} + CCLDFLAGS=${LDFLAGS} + EOF + + edo ./configure "${myconf[@]}" +} + +src_compile() { + source ./env.sh || die + + # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529) + MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) + MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) + MAKEOPTS="${MAKEJOBS} ${MAKELOAD}" + + local myemakeargs=( + VBOX_BUILD_PUBLISHER=_Gentoo + VBOX_ONLY_ADDITIONS=1 + + KBUILD_VERBOSE=2 + + AS="$(tc-getCC)" + CC="$(tc-getCC)" + CXX="$(tc-getCXX)" + LD="$(tc-getCC)" + + TOOL_GCC3_CC="$(tc-getCC)" + TOOL_GCC3_CXX="$(tc-getCXX)" + TOOL_GCC3_LD="$(tc-getCC)" + TOOL_GCC3_AS="$(tc-getCC)" + TOOL_GCC3_AR="$(tc-getAR)" + TOOL_GCC3_OBJCOPY="$(tc-getOBJCOPY)" + #TOOL_GCC3_LD_SYSMOD="$(tc-getCC)" + + TOOL_GXX3_CC="$(tc-getCC)" + TOOL_GXX3_CXX="$(tc-getCXX)" + TOOL_GXX3_LD="$(tc-getCXX)" + TOOL_GXX3_AS="$(tc-getCXX)" + TOOL_GXX3_AR="$(tc-getAR)" + TOOL_GXX3_OBJCOPY="$(tc-getOBJCOPY)" + #TOOL_GXX3_LD_SYSMOD="$(tc-getCXX)" + + TOOL_GCC3_CFLAGS="${CFLAGS}" + TOOL_GCC3_CXXFLAGS="${CXXFLAGS}" + VBOX_GCC_OPT="${CXXFLAGS}" + VBOX_NM="$(tc-getNM)" + TOOL_YASM_AS=yasm + ) + + MAKE="kmk" emake "${myemakeargs[@]}" + + # Now creating the kernel modules. We must do this _after_ + # we compiled the user-space tools as we need two of the + # automatically generated header files. (>=3.2.0) + # Move this here for bug 836037 + local modargs=( KERN_DIR="${KV_OUT_DIR}" KERN_VER="${KV_FULL}" ) + local modlist=( vboxguest vboxsf ) + use gui && modlist+=( vboxvideo ) + modlist=( "${modlist[@]/%/=misc:${VBOX_MOD_SRC_DIR}}" ) + linux-mod-r1_src_compile +} + +src_install() { + linux-mod-r1_src_install + + insinto /etc/modprobe.d # 485996 + newins - vboxsf.conf <<-EOF + # modprobe.d configuration file for VBOXSF + + # Internal Aliases - Do not edit + # ------------------------------ + alias fs-vboxsf vboxsf + EOF + + cd out/linux.${ARCH}/release/bin/additions || die + + insinto /sbin + newins mount.vboxsf mount.vboxsf + fperms 4755 /sbin/mount.vboxsf + + if use dbus; then + newinitd "${FILESDIR}"/${PN}-8.initd-r1 ${PN} + else + newinitd <(sed 's/ dbus\>//' "${FILESDIR}"/${PN}-8.initd-r1) ${PN} + fi + + insinto /usr/sbin/ + newins VBoxService vboxguest-service + fperms 0755 /usr/sbin/vboxguest-service + + insinto /usr/bin + doins VBoxControl + fperms 0755 /usr/bin/VBoxControl + + # VBoxClient user service and xrandr wrapper + if use gui ; then + doins VBoxClient + fperms 0755 /usr/bin/VBoxClient + doins VBoxDRMClient + fperms 4755 /usr/bin/VBoxDRMClient + + pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null || die + newins 98vboxadd-xclient VBoxClient-all + fperms 0755 /usr/bin/VBoxClient-all + popd &>/dev/null || die + fi + + # udev rule for vboxdrv + local udev_rules_dir="/lib/udev/rules.d" + dodir ${udev_rules_dir} + echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \ + >> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \ + || die + echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \ + >> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \ + || die + + # VBoxClient autostart file + insinto /etc/xdg/autostart + doins "${FILESDIR}"/vboxclient.desktop + + # sample xorg.conf + dodoc "${FILESDIR}"/xorg.conf.vbox + docompress -x "${ED}"/usr/share/doc/${PF}/xorg.conf.vbox + + systemd_dounit "${FILESDIR}/${PN}.service" + + readme.gentoo_create_doc +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + udev_reload + + if ! use gui ; then + elog "The use flag \"gui\" is off, enable it to install the" + elog "X Window System drivers and integration." + fi + + readme.gentoo_print_elog +} + +pkg_postrm() { + udev_reload +} diff --git a/app-emulation/virtualbox-modules/Manifest b/app-emulation/virtualbox-modules/Manifest index 341e98062d74..c540d2da5cfd 100644 --- a/app-emulation/virtualbox-modules/Manifest +++ b/app-emulation/virtualbox-modules/Manifest @@ -4,7 +4,9 @@ AUX virtualbox.conf-r1 30 BLAKE2B 6308dedc75e2677cbdc844b53f51359e6b5745d3510636 DIST vbox-kernel-module-src-6.1.50.tar.xz 680700 BLAKE2B c3a10ce8f3eb7e6c0c05f81cd3c072296557b9f9f6f501bb0aec3f04aabfe1fbb67b553510104139cef290c09ff9e67161085781b8d28c968dfafd15958a1b1a SHA512 7822e421b595263cbdaae08103255742360ca7ab0c385818ec895f10570c5b9ed5c7614742d8fa8bc2414cd426907cd1c49d735cde8caf9d2b7692898058f592 DIST vbox-kernel-module-src-7.0.20.tar.xz 720160 BLAKE2B 833aa87af13a6c3e9426bd00e32b14c8b3958ab14425e8c02141d8579e987255b170662e00abb92f17234d4f03462d6d5b9fc1279d9da5449d344a328c905c8f SHA512 650bb6cf16ae42774524bf2e7ad2ee125d7a8d57de1e58d24b8b49bb9cf2829ea01dd32d2c1e0b2df556eab4a458cb0d84715b92d4085d03891f62a46aaf2916 DIST vbox-kernel-module-src-7.1.0.tar.xz 738408 BLAKE2B d9d88a1a3fcc31557f55be9f136811ce5142f37d94f7ea2144e8461cad09c82e8a4fc01310548a220c645f560849b43a3d4925246961cb8aba9030e8a224c9bb SHA512 385c5062ed8ad5158cb3c3f26c1de90294f1ef108f13da621daef3e99ad21e75f228a91147157fd0fc3dfd14068db976f322f04ea7a22eb3b170361b5a3940bf +DIST vbox-kernel-module-src-7.1.2.tar.xz 738328 BLAKE2B b38f6b3d28581d3c4153d04d3be8bd5792031934740a7acd56e1fdccf78d3d91e55245184aa051ba5329b2be40aa89897c3b2642d2129e4b2af7347efa313c56 SHA512 a16ff5ab4b4c139b6fd86da46c28858f06b42a5577915a5c6888d4b4ef6e3f58bff6e70cfe3a939c9896c9a0e371277a89ec58fca695d2232d8ceae9e4ce85e1 EBUILD virtualbox-modules-6.1.50-r2.ebuild 1052 BLAKE2B 0f1c43ab2798cc3231c78651a21b3f4bd75b168013ffedf9ecd8c049608c3fcce2e981d1609a8b42fd38d25db36caa48518ce37ed7fd6178a796472c7144bf20 SHA512 23801a41671154a5a89560bb3c23a0d41fde2352be6ace937f0c223c356b458b7df2585562b60c4a5294b2c74f3bc13b43ade175c4a42e8221ab38b86aa0bac5 EBUILD virtualbox-modules-7.0.20.ebuild 941 BLAKE2B 23539d6f2c798b730f2f9afb007158672cabb6e199356b104c5e34b4f8e819e55f77ae1f303d655333cbc4351b67dc44735c131d59bb04031bc7c1b900d49c7b SHA512 379c3e216af76612970ca077c29a3c750de40c9a91dd288754cf55e7612e64227c261ffe2b0ccb8aef21f47ed1afac713295d6f7b063f27fa083715d311f7c75 EBUILD virtualbox-modules-7.1.0.ebuild 942 BLAKE2B eefe2ce819d229a06584224a5f4ffe531e821df6dcc7b5f761d88605ab854880f9182a22d228953e2194d9a37191e6816fb5db4f87e3e10d324a42f71486ffce SHA512 181fece45985e074c73476473eba544a69151e6e2499e6162ca6019213aff95d6460d240890b01e24ff230eb87070d31f2ab9e595a21545a3020e9f4b1e7da34 +EBUILD virtualbox-modules-7.1.2.ebuild 942 BLAKE2B eefe2ce819d229a06584224a5f4ffe531e821df6dcc7b5f761d88605ab854880f9182a22d228953e2194d9a37191e6816fb5db4f87e3e10d324a42f71486ffce SHA512 181fece45985e074c73476473eba544a69151e6e2499e6162ca6019213aff95d6460d240890b01e24ff230eb87070d31f2ab9e595a21545a3020e9f4b1e7da34 MISC metadata.xml 255 BLAKE2B 9386ef3bdb55211441f303528b31f8ccd9ad9039744400e859574a424fa1f366a989fe78f5c10038f3dd9b06a6a389e4a7e643b3eac0dc93a79ac4cc3b4c5423 SHA512 6c158e12464285afd44b70d0653b65f65da1c523fc2b1b07eb6d2dec56f58234bb31cb9dc36238cd6dfc20031b4d58c04e7c1678cc9f917194403ad8a209513f diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-7.1.2.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-7.1.2.ebuild new file mode 100644 index 000000000000..08e22e5e0379 --- /dev/null +++ b/app-emulation/virtualbox-modules/virtualbox-modules-7.1.2.ebuild @@ -0,0 +1,34 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# XXX: the tarball here is just the kernel modules split out of the binary +# package that comes from VirtualBox-*.run +# XXX: update: now it is split from virtualbox-*-Debian~bullseye_amd64.deb + +EAPI=8 + +inherit linux-mod-r1 + +MY_P="vbox-kernel-module-src-${PV}" +DESCRIPTION="Kernel Modules for Virtualbox" +HOMEPAGE="https://www.virtualbox.org/" +SRC_URI="https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${MY_P}.tar.xz" +S="${WORKDIR}" + +LICENSE="GPL-3" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" + +CONFIG_CHECK="~!SPINLOCK JUMP_LABEL" + +src_compile() { + local modlist=( {vboxdrv,vboxnetflt,vboxnetadp}=misc ) + local modargs=( KERN_DIR="${KV_OUT_DIR}" KERN_VER="${KV_FULL}" ) + linux-mod-r1_src_compile +} + +src_install() { + linux-mod-r1_src_install + insinto /usr/lib/modules-load.d/ + newins "${FILESDIR}"/virtualbox.conf-r1 virtualbox.conf +} diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest index bf2175a830b4..50aceb3bcb98 100644 --- a/app-emulation/virtualbox/Manifest +++ b/app-emulation/virtualbox/Manifest @@ -16,13 +16,16 @@ AUX virtualbox-vboxusb_tmpfilesd 35 BLAKE2B 56937e236a0e4d1a2aa085271e8ae0af9553 DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f DIST VirtualBox-7.0.20.tar.bz2 173300021 BLAKE2B 23a1553578c8b89c3bea65fd9a451ef5abf419ce8a05524f2afc15b8d9a378a22ffb01c0c792d258320aeddb330b74f8f769180863041e333512d0eed2f4449c SHA512 7682e24d60c1896c661f2689af6820ae67b6bd8d9faaf18c58e8159bc7694ef80722f8e9611d6272da5b46eb2f3a44fc637b277e6801b7a8bf53aad045a81fe9 DIST VirtualBox-7.1.0.tar.bz2 205966296 BLAKE2B 135805119d1710adbb17164d80a67f9b40fcc72d966af3b6d687b7f742a7bb487e76afc1ec45e31fe880a99a291ecdac3ee3dacdd342dbbe2dcec0eab32c8121 SHA512 d0fc27195b859fb537d57229d60a8895ced24b04c0f703c5862982de01d4787d20a3acb9cee4af29d18c56cd8c7ad846fd0eacc14af0c419e738953ca488463b +DIST VirtualBox-7.1.2.tar.bz2 206105145 BLAKE2B 4b30f1d14625ddaed88b1a9cdac41289fef332d52e210d982ce075d652849b1cb72fee6d6e691f74378d4b8e7dd914355bcf0cd074d36249f39b099d1bba7c79 SHA512 d890f9b2e8799bcb1ed9cdaa86ef42daa261f7e9022a2e7e9df8c21f395c56e91e2d03292f22c9633ff6a0f0c5933ba3ac30af30befe87b84ffd89c07d51568f DIST virtualbox-help-7.0.20.tar.xz 3949292 BLAKE2B c56f736606fdedfb59bd1f4446a457587dcbe018d1be3162d94eca780cacfa45b49ba5a9c6b25970d28e5a428904bdfd34d2f229c1e24b567fd1b1959cbdc9ea SHA512 e73e448b8aa875d0f6ae1fb398082fa7183e198191a9b509b63592b5df3a19069b805dcdc11d98da3971a14fd6670d8b0a777e5a6d6b63358f7a4f263ca8d31e DIST virtualbox-help-7.1.0.tar.xz 1631644 BLAKE2B 408748619d1e981b9d5b5e615baca75ff297e9b7e745751767361b7b9c74345a3db1980734439f3868c412fe28a6b687b417adc3cc148d2e2b8a9fa60e48463b SHA512 513b8474d4fbf7cdb83624dc8d344122c524d92f9f84b32784161c8e1cac8ddc2c265447621d7cd3cf105d555a044e6abf42155f413ba89d507eba7ce3b2da89 +DIST virtualbox-help-7.1.2.tar.xz 1587216 BLAKE2B 561a7ec607b61a9adf2fc5c86ad49828da4e1d3bcf8cae2771f1e498426652fc990c603128471412fd0d9f21ead004dd65006d6a8f70e4fa972c9055ffc8084a SHA512 6cd1bf849658f1abb8eb5a3d2da53d862ee0143aaff44e755f79bfb2d31977447e6546faa277dd860a0b6e1c3b72ae47479fbbec42419629e1cb2006df14194f DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57 DIST virtualbox-patches-7.0.16.tar.bz2 6808 BLAKE2B d15fa2ca306375142c3e25d4759d2790b2bb9eb69e333a8773ad500b29dd127b401943abf59ca59d01858a3ed5551fb3a6c93c4c893c8de971a714ce5306d577 SHA512 a488cbc6660fe8637c44cd79d87156609af089988239a7e76fea8a3c7e6319512c574bef2e942b354b14ce671a8e75ab8b2160abf7c40963795ee8a545ecd992 DIST virtualbox-patches-7.1.0.tar.bz2 5952 BLAKE2B cb024f36249d7d312c9d0f9231c22a9609d45de1d4c82ca36672fea703765d437d7a414d810adb5eb5f2db92018b669c3b5d0c32372c5ced90f5e13f82344ffa SHA512 c6ef54b7d60f01f5f2b89c6fd7f8b7b509bc62bca0502114cedcbaaf9643445ea413bba481dcf43fb96b5b4d94d64395965682c1ee160d889213615c9272184c EBUILD virtualbox-6.1.50-r3.ebuild 18929 BLAKE2B 5361667320ccdc5534959f12f40665f7a8a19e8b09b0b172c3537bb0d93a7bb0117dc35114e27e7a6de35eefb0811aaf94c54568b32cd1dcc62524ec22d7b393 SHA512 54719ef39276acff779d399ed744d5aef88e6275dce7d06cec9fc611335d243b8dd1b817aea56fa5b93b96345f7b19dccdf8facdfc49e58d42524f9050ba7776 EBUILD virtualbox-7.0.20.ebuild 20842 BLAKE2B ecbe8b10b4f87550cdd04b878009b5443d859f141b5b214cab7cb53c693ee00470e89140f6ee2c66a24435ceba7484ded028a9594b8a7a7594cd00cd59a4ca74 SHA512 9fc697f31fab0ffbea2ac94fe031400ce544d93069a720fc3871452d8074e97fd4a075603732ca1bb5441ddfccf95664f3b5f5ff44b2dd3be4554129121918ba EBUILD virtualbox-7.1.0.ebuild 21017 BLAKE2B 075d51e4b5d4cd69fc0162653da4f8a73a33ebcc4279986904176c2a7d8b840cfc4627a72d1f9b8acbe07f574f158bfdd5a765b185b8e2dc05859e50487b1c47 SHA512 6aa737bd3d4bc583ca7d32922b8c771c227dc463e43303bb1b80c2b29089de9d6e88c41201d767145b3894fa6caf02ad7bad90d151f309d49c9e4ce028a64ec4 +EBUILD virtualbox-7.1.2.ebuild 21017 BLAKE2B 075d51e4b5d4cd69fc0162653da4f8a73a33ebcc4279986904176c2a7d8b840cfc4627a72d1f9b8acbe07f574f158bfdd5a765b185b8e2dc05859e50487b1c47 SHA512 6aa737bd3d4bc583ca7d32922b8c771c227dc463e43303bb1b80c2b29089de9d6e88c41201d767145b3894fa6caf02ad7bad90d151f309d49c9e4ce028a64ec4 EBUILD virtualbox-9999.ebuild 21786 BLAKE2B 5afb7f0128428c8b9e21566be919375da4b54640cdf8742c4ae0cca6f487292ac8701af19f2aedca2eb8a41be9788d6c02ec3a053ecfd4e696bda193be050d3a SHA512 f886f7caa42c27f02288adef130ccfc919c5d730e1b8fa696915598a124c32a93259c9d75a1ad18e8ca8c621fe71b85503eb876e4de8215a729ac7ccfdb6b4f0 MISC metadata.xml 948 BLAKE2B c074e494d9affda91addd2355f8e71616602102b4cc151d2b45efd04754f1f92621ecd313dbe3baa44c3301f57b61e9cff780d445c2ea3d19ce3d9c8ae05213a SHA512 5338812da9334aedf08dd7a31a4a07c7bfa8232e8f0de6af9de9ac0f5585397cea16e66cb73d56632efa4cf21386782108182d803de6ff45c08082a13dc5fed9 diff --git a/app-emulation/virtualbox/virtualbox-7.1.2.ebuild b/app-emulation/virtualbox/virtualbox-7.1.2.ebuild new file mode 100644 index 000000000000..32185b29faef --- /dev/null +++ b/app-emulation/virtualbox/virtualbox-7.1.2.ebuild @@ -0,0 +1,744 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# To add a new Python here: +# 1. Patch src/libs/xpcom18a4/python/Makefile.kmk (copy the previous impl's logic) +# Do NOT skip this part. It'll end up silently not-building the Python extension +# or otherwise misbehaving if you do. +# +# 2. Then update PYTHON_COMPAT & set PYTHON_SINGLE_TARGET for testing w/ USE=python. +# +# May need to look at other distros (e.g. Arch Linux) to find patches for newer +# Python versions as upstream tends to lag. Upstream may have patches on their +# trunk branch but not release branch. +# +# See bug #785835, bug #856121. +PYTHON_COMPAT=( python3_{10..11} ) + +inherit desktop edo flag-o-matic java-pkg-opt-2 linux-info multilib optfeature pax-utils \ + python-single-r1 tmpfiles toolchain-funcs udev xdg + +MY_PN="VirtualBox" +MY_P=${MY_PN}-${PV} +HELP_PV=${PV} + +DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use" +HOMEPAGE="https://www.virtualbox.org/" +SRC_URI=" + https://download.virtualbox.org/virtualbox/${PV}/${MY_P}.tar.bz2 + https://gitweb.gentoo.org/proj/virtualbox-patches.git/snapshot/virtualbox-patches-7.1.0.tar.bz2 + gui? ( !doc? ( https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-help-${HELP_PV}.tar.xz ) ) +" +S="${WORKDIR}/${MY_PN}-${PV}" + +LICENSE="GPL-2+ GPL-3 LGPL-2.1 MIT dtrace? ( CDDL )" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64" +IUSE="alsa dbus debug doc dtrace +gui java lvm nls pam pch pulseaudio +opengl python +sdk +sdl +udev vboxwebsrv vde +vmmraw vnc" + +unset WATCOM #856769 + +COMMON_DEPEND=" + acct-group/vboxusers + app-arch/xz-utils + ~app-emulation/virtualbox-modules-${PV} + dev-libs/libtpms + dev-libs/libxml2 + dev-libs/openssl:0= + media-libs/libpng:0= + media-libs/libvpx:0= + net-misc/curl + sys-libs/zlib + dbus? ( sys-apps/dbus ) + gui? ( + dev-qt/qtbase:6[widgets] + dev-qt/qtscxml:6 + dev-qt/qttools:6[assistant] + x11-libs/libX11 + x11-libs/libXt + ) + lvm? ( sys-fs/lvm2 ) + opengl? ( + media-libs/libglvnd[X] + media-libs/vulkan-loader + x11-libs/libX11 + x11-libs/libXt + ) + pam? ( sys-libs/pam ) + python? ( ${PYTHON_DEPS} ) + sdl? ( + media-libs/libsdl2[X,video] + x11-libs/libX11 + x11-libs/libXt + ) + vboxwebsrv? ( net-libs/gsoap[-gnutls(-),debug?] ) + vde? ( net-misc/vde ) + vnc? ( >=net-libs/libvncserver-0.9.9 ) +" +# We're stuck on JDK (and JRE, I guess?) 1.8 because of need for wsimport +# with USE="vboxwebsrv java". Note that we have to put things in DEPEND, +# not (only, anyway) BDEPEND, as the eclass magic to set the environment variables +# based on *DEPEND doesn't work for BDEPEND at least right now. +# +# There's a comment in Config.kmk about it +# ("With Java 11 wsimport was removed, usually part of a separate install now.") +# but it needs more investigation. +# +# See bug #878299 to track this issue. +DEPEND=" + ${COMMON_DEPEND} + >=dev-libs/libxslt-1.1.19 + virtual/libcrypt:= + x11-libs/libXt + alsa? ( >=media-libs/alsa-lib-1.0.13 ) + gui? ( + x11-base/xorg-proto + x11-libs/libxcb:= + x11-libs/libXcursor + x11-libs/libXext + x11-libs/libXinerama + x11-libs/libXmu + x11-libs/libXrandr + ) + java? ( virtual/jdk:1.8 ) + opengl? ( + x11-base/xorg-proto + x11-libs/libXcursor + x11-libs/libXinerama + x11-libs/libXmu + x11-libs/libXrandr + virtual/glu + ) + sdl? ( + x11-libs/libXcursor + x11-libs/libXinerama + ) + pulseaudio? ( media-libs/libpulse ) + udev? ( >=virtual/udev-171 ) +" +RDEPEND=" + ${COMMON_DEPEND} + gui? ( x11-libs/libxcb:= ) + java? ( virtual/jre:1.8 ) +" +BDEPEND=" + >=app-arch/tar-1.34-r2 + >=dev-lang/yasm-0.6.2 + dev-libs/libIDL + dev-util/glslang + >=dev-build/kbuild-0.1.9998.3592 + sys-apps/which + sys-devel/bin86 + sys-libs/libcap + sys-power/iasl + virtual/pkgconfig + doc? ( + app-doc/dita-ot-bin + app-text/docbook-sgml-dtd:4.4 + app-text/docbook-xsl-ns-stylesheets + dev-texlive/texlive-basic + dev-texlive/texlive-latex + dev-texlive/texlive-latexrecommended + dev-texlive/texlive-latexextra + dev-texlive/texlive-fontsrecommended + dev-texlive/texlive-fontsextra + dev-qt/qttools:6[assistant] + sys-libs/nss_wrapper + ) + gui? ( dev-qt/qttools:6[linguist] ) + nls? ( dev-qt/qttools:6[linguist] ) + java? ( virtual/jdk:1.8 ) + python? ( ${PYTHON_DEPS} ) +" + +QA_FLAGS_IGNORED=" + usr/lib64/virtualbox/VBoxDDR0.r0 + usr/lib64/virtualbox/VMMR0.r0 + usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0 + usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.debug +" + +QA_TEXTRELS=" + usr/lib64/virtualbox/VMMR0.r0 + usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0 +" + +QA_EXECSTACK=" + usr/lib64/virtualbox/iPxeBaseBin + usr/lib64/virtualbox/VMMR0.r0 + usr/lib64/virtualbox/VBoxDDR0.r0 + usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0 + usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.debug +" + +QA_WX_LOAD=" + usr/lib64/virtualbox/iPxeBaseBin +" + +QA_PRESTRIPPED=" + usr/lib64/virtualbox/VMMR0.r0 + usr/lib64/virtualbox/VBoxDDR0.r0 + usr/lib64/virtualbox/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux.amd64/VBoxDTraceR0.r0 +" + +REQUIRED_USE=" + java? ( sdk ) + python? ( sdk ${PYTHON_REQUIRED_USE} ) + vboxwebsrv? ( java ) +" + +PATCHES=( + # Downloaded patchset + "${WORKDIR}"/virtualbox-patches-7.1.0/patches +) + +pkg_pretend() { + if ! use gui; then + einfo "No USE=\"gui\" selected, this build will not include any Qt frontend." + fi + + if ! use opengl; then + einfo "No USE=\"opengl\" selected, this build will lack" + einfo "the OpenGL feature." + fi + if ! use nls && use gui; then + einfo "USE=\"gui\" also selects USE=\"nls\". This build" + einfo "will have NLS support." + fi + + # 749273 + local d=${ROOT} + for i in usr "$(get_libdir)"; do + d="${d}/$i" + if [[ "$(stat -L -c "%g %u" "${d}")" != "0 0" ]]; then + die "${d} should be owned by root, VirtualBox will not start otherwise" + fi + done +} + +pkg_setup() { + java-pkg-opt-2_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + + # Only add nopie patch when we're on hardened + if gcc-specs-pie; then + eapply "${FILESDIR}"/050_virtualbox-5.2.8-nopie.patch + fi + + # Remove shipped binaries (kBuild, yasm) and tools, see bug #232775 + rm -r kBuild/bin || die + # Remove everything in tools except kBuildUnits + find tools -mindepth 1 -maxdepth 1 -name kBuildUnits -prune -o -exec rm -r {} \+ || die + + # Disable things unused or split into separate ebuilds + sed -e "s@MY_LIBDIR@$(get_libdir)@" \ + "${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die + + if ! use pch; then + # bug #753323 + printf '\n%s\n' "VBOX_WITHOUT_PRECOMPILED_HEADERS=1" \ + >> LocalConfig.kmk || die + fi + + # bug #916002, #488176, #925347 + tc-ld-is-mold || tc-ld-force-bfd + + # Respect LDFLAGS + sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \ + -i Config.kmk src/libs/xpcom18a4/Config.kmk || die + + # Do not use hard-coded ld (related to bug #488176) + sed -e '/QUIET)ld /s@ld @$(LD) @' \ + -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die + + # Use PAM only when pam USE flag is enbaled (bug #376531) + if ! use pam; then + einfo "Disabling PAM removes the possibility to use the VRDP features." + sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die + sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \ + src/VBox/HostServices/Makefile.kmk || die + echo -e "\nIPRT_WITHOUT_PAM=1" >> LocalConfig.kmk || die + fi + + # add correct java path + if use java; then + sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \ + -i "${S}"/Config.kmk || die + java-pkg-opt-2_src_prepare + fi + + # bug #908814 + filter-lto + + # bug #843437 + cat >> LocalConfig.kmk <<-EOF || die + CXXFLAGS=${CXXFLAGS} + CFLAGS=${CFLAGS} + EOF + + if use sdl; then + sed -i 's/sdl-config/sdl2-config/' configure || die + echo -e "\nVBOX_WITH_VBOXSDL=1" >> LocalConfig.kmk || die + fi + + #443830 + echo -e "\nVBOX_WITH_VBOX_IMG=1" >> LocalConfig.kmk || die + + if tc-is-clang; then + # clang does not support this extension + eapply "${FILESDIR}"/${PN}-7.1.0-disable-rebuild-iPxeBiosBin.patch + fi + + # fix doc generation + echo -e "\nVBOX_PATH_DOCBOOK=/usr/share/sgml/docbook/xsl-ns-stylesheets" >> LocalConfig.kmk || die + # replace xhtml names with numeric equivalents + find doc/manual -name \*.xml -exec sed -i \ + -e 's/ /\ /g' \ + -e 's/–/\–/g' \ + -e 's/←/\←/g' \ + -e 's/→/\→/g' \ + -e 's/↔/\↔/g' {} \+ || die + + # fix help path #891879 + echo -e "\nVBOX_PATH_PACKAGE_DOCS=/usr/share/doc/${PF}" >> LocalConfig.kmk || die + + # 489208 + # Cannot patch the whole text, many translations. Use sed instead to replace the command + find src/VBox/Frontends/VirtualBox/nls -name \*.ts -exec sed -i \ + 's/'[^&]*\(vboxdrv setup\|vboxconfig\)'/\'emerge -1 virtualbox-modules\'/' {} \+ || die + sed -i "s:'/sbin/vboxconfig':'emerge -1 virtualbox-modules':" \ + src/VBox/Frontends/VirtualBox/src/main.cpp \ + src/VBox/VMM/VMMR3/VM.cpp || die + + # 890561 + echo -e "\nVBOX_GTAR=gtar" >> LocalConfig.kmk || die + + if ! use nls && ! use gui; then + cat >> LocalConfig.kmk <<-EOF || die + VBOX_WITH_NLS := + VBOX_WITH_MAIN_NLS := + VBOX_WITH_PUEL_NLS := + VBOX_WITH_VBOXMANAGE_NLS := + EOF + fi +} + +src_configure() { + tc-export AR CC CXX LD RANLIB + export HOST_CC="$(tc-getBUILD_CC)" + + local myconf=( + --with-gcc="$(tc-getCC)" + --with-g++="$(tc-getCXX)" + + --disable-kmods + + $(usev !alsa --disable-alsa) + $(usev !dbus --disable-dbus) + $(usev debug --build-debug) + $(usev !doc --disable-docs) + $(usev !java --disable-java) + $(usev !lvm --disable-devmapper) + $(usev !pulseaudio --disable-pulse) + $(usev !python --disable-python) + $(usev vboxwebsrv --enable-webservice) + $(usev vde --enable-vde) + $(usev !vmmraw --disable-vmmraw) + $(usev vnc --enable-vnc) + ) + + if use gui || use sdl || use opengl; then + myconf+=( + $(usev !opengl --disable-opengl) + $(usev !gui --disable-qt) + $(usev !sdl --disable-sdl) + ) + else + myconf+=( + --build-headless + ) + fi + + if use amd64 && ! has_multilib_profile; then + myconf+=( --disable-vmmraw ) + fi + + # not an autoconf script + edo ./configure "${myconf[@]}" + + # Force usage of chosen Python implementation + # bug #856121, bug #785835 + sed -i \ + -e '/VBOX_WITH_PYTHON.*=/d' \ + -e '/VBOX_PATH_PYTHON_INC.*=/d' \ + -e '/VBOX_LIB_PYTHON.*=/d' \ + AutoConfig.kmk || die + + if use python; then + cat >> AutoConfig.kmk <<-EOF || die + VBOX_WITH_PYTHON=$(usev python 1) + VBOX_PATH_PYTHON_INC=$(python_get_includedir) + VBOX_LIB_PYTHON=$(python_get_library_path) + EOF + + local mangled_python="${EPYTHON#python}" + mangled_python="${mangled_python/.}" + + # Stub out the script which defines what the Makefile ends up + # building for. gen_python_deps.py gets called by the Makefile + # with some args and it spits out a bunch of paths for a hardcoded + # list of Pythons. We just override it with what we're actually using. + # This minimises the amount of patching we have to do for new Pythons. + cat > src/libs/xpcom18a4/python/gen_python_deps.py <<-EOF || die + print("VBOX_PYTHON${mangled_python}_INC=$(python_get_includedir)") + print("VBOX_PYTHON${mangled_python}_LIB=$(python_get_library_path)") + print("VBOX_PYTHONDEF_INC=$(python_get_includedir)") + print("VBOX_PYTHONDEF_LIB=$(python_get_library_path)") + EOF + + chmod +x src/libs/xpcom18a4/python/gen_python_deps.py || die + else + cat >> AutoConfig.kmk <<-EOF || die + VBOX_WITH_PYTHON:= + EOF + fi +} + +src_compile() { + source ./env.sh || die + + # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529) + MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) + MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) + MAKEOPTS="${MAKEJOBS} ${MAKELOAD}" + + local myemakeargs=( + VBOX_BUILD_PUBLISHER=_Gentoo + VBOX_WITH_VBOXIMGMOUNT=1 + + KBUILD_VERBOSE=2 + + AS="$(tc-getCC)" + CC="$(tc-getCC)" + CXX="$(tc-getCXX)" + + TOOL_GCC3_CC="$(tc-getCC)" + TOOL_GCC3_LD="$(tc-getCC)" + TOOL_GCC3_AS="$(tc-getCC)" + TOOL_GCC3_AR="$(tc-getAR)" + TOOL_GCC3_OBJCOPY="$(tc-getOBJCOPY)" + + TOOL_GXX3_CC="$(tc-getCC)" + TOOL_GXX3_CXX="$(tc-getCXX)" + TOOL_GXX3_LD="$(tc-getCXX)" + TOOL_GXX3_AS="$(tc-getCXX)" + TOOL_GXX3_AR="$(tc-getAR)" + TOOL_GXX3_OBJCOPY="$(tc-getOBJCOPY)" + + TOOL_GCC3_CFLAGS="${CFLAGS}" + TOOL_GCC3_CXXFLAGS="${CXXFLAGS}" + VBOX_GCC_OPT="${CXXFLAGS}" + VBOX_NM="$(tc-getNM)" + + TOOL_YASM_AS=yasm + ) + + if use amd64 && has_multilib_profile; then + myemakeargs+=( + CC32="$(tc-getCC) -m32" + CXX32="$(tc-getCXX) -m32" + + TOOL_GCC32_CC="$(tc-getCC) -m32" + TOOL_GCC32_CXX="$(tc-getCXX) -m32" + TOOL_GCC32_LD="$(tc-getCC) -m32" + TOOL_GCC32_AS="$(tc-getCC) -m32" + TOOL_GCC32_AR="$(tc-getAR)" + TOOL_GCC32_OBJCOPY="$(tc-getOBJCOPY)" + + TOOL_GXX32_CC="$(tc-getCC) -m32" + TOOL_GXX32_CXX="$(tc-getCXX) -m32" + TOOL_GXX32_LD="$(tc-getCXX) -m32" + TOOL_GXX32_AS="$(tc-getCXX) -m32" + TOOL_GXX32_AR="$(tc-getAR)" + TOOL_GXX32_OBJCOPY="$(tc-getOBJCOPY)" + ) + fi + + if use doc; then + # dita needs to write to ~/.fop and ~/.java + # but it ignores ${HOME} and tries to write to the real home of user portage + # resulting in a sandbox violation + # -Duser.home= does not work + # force using the temporary homedir with nss_wrapper + echo "${LOGNAME}::$(id -u):$(id -g):${USER}:${HOME}:/bin/bash" >> ~/passwd + echo "${LOGNAME}::$(id -g):" >> ~/group + + local -x LD_PRELOAD=libnss_wrapper.so + local -x NSS_WRAPPER_PASSWD="${HOME}"/passwd + local -x NSS_WRAPPER_GROUP="${HOME}"/group + fi + + MAKE="kmk" emake "${myemakeargs[@]}" all +} + +src_install() { + cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die + + local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile + + vbox_inst() { + local binary="${1}" + local perms="${2:-0750}" + local path="${3:-${vbox_inst_path}}" + + [[ -n "${binary}" ]] || die "vbox_inst: No binary given!" + [[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits." + + insinto ${path} + doins ${binary} + fowners root:vboxusers ${path}/${binary} + fperms ${perms} ${path}/${binary} + } + + # Create configuration files + insinto /etc/vbox + newins "${FILESDIR}/${PN}-4-config" vbox.cfg + + # Set the correct libdir + sed \ + -e "s@MY_LIBDIR@$(get_libdir)@" \ + -i "${ED}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed" + + # Install the wrapper script + exeinto ${vbox_inst_path} + newexe "${FILESDIR}/${PN}-ose-6-wrapper" "VBox" + fowners root:vboxusers ${vbox_inst_path}/VBox + fperms 0750 ${vbox_inst_path}/VBox + + # Install binaries and libraries + insinto ${vbox_inst_path} + doins -r components + + for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,VMMPreload} \ + vboximg-mount vbox-img *so *r0; do + vbox_inst ${each} + done + + # These binaries need to be suid root. + for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do + vbox_inst ${each} 4750 + done + + # Install EFI Firmware files (bug #320757) + for each in VBoxEFI{32,64}.fd ; do + vbox_inst ${each} 0644 + done + + # VBoxSVC and VBoxManage need to be pax-marked (bug #403453) + # VBoxXPCOMIPCD (bug #524202) + for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do + pax-mark -m "${ED}"${vbox_inst_path}/${each} + done + + # Symlink binaries to the shipped wrapper + for each in vbox{autostart,balloonctrl,bugreport,headless,manage} \ + VBox{Autostart,BalloonCtrl,BugReport,Headless,Manage,VRDP} ; do + dosym ${vbox_inst_path}/VBox /usr/bin/${each} + done + dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount + dosym ${vbox_inst_path}/vbox-img /usr/bin/vbox-img + + if use pam; then + # VRDPAuth only works with this (bug #351949) + dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so + fi + + # set an env-variable for 3rd party tools + echo "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox" + # environment variables used during SDK binding installation + echo "VBOX_SDK_PATH=${vbox_inst_path}/sdk" >> "${T}/90virtualbox" + echo "VBOX_INSTALL_PATH=${vbox_inst_path}" >> "${T}/90virtualbox" + doenvd "${T}/90virtualbox" + + if use sdl; then + vbox_inst VBoxSDL 4750 + pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL + + for each in vboxsdl VBoxSDL ; do + dosym ${vbox_inst_path}/VBox /usr/bin/${each} + done + fi + + if use gui; then + vbox_inst VirtualBox + vbox_inst VirtualBoxVM 4750 + for each in VirtualBox{,VM} ; do + pax-mark -m "${ED}"${vbox_inst_path}/${each} + done + + for each in virtualbox{,vm} VirtualBox{,VM} ; do + dosym ${vbox_inst_path}/VBox /usr/bin/${each} + done + + insinto /usr/share/${PN} + doins -r nls + doins -r UnattendedTemplates + + domenu ${PN}.desktop + + pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die + for size in 16 32 48 64 128 ; do + newicon -s ${size} ${PN}-${size}px.png ${PN}.png + done + newicon ${PN}-48px.png ${PN}.png + doicon -s scalable ${PN}.svg + popd &>/dev/null || die + pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die + for size in 16 24 32 48 64 72 96 128 256 512 ; do + for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do + icofile="${PN}-${ico}-${size}px.png" + if [[ -f "${icofile}" ]]; then + newicon -s ${size} ${icofile} ${PN}-${ico}.png + fi + done + done + popd &>/dev/null || die + fi + + if use lvm; then + vbox_inst VBoxVolInfo 4750 + dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo + fi + + if use sdk; then + insinto ${vbox_inst_path} + doins -r sdk + + if use java; then + java-pkg_regjar "${ED}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar" + java-pkg_regso "${ED}/${vbox_inst_path}/libvboxjxpcom.so" + fi + fi + + if use udev; then + local udevdir="$(get_udevdir)" + local udev_file="VBoxCreateUSBNode.sh" + local rules_file="10-virtualbox.rules" + + insinto ${udevdir} + doins ${udev_file} + fowners root:vboxusers ${udevdir}/${udev_file} + fperms 0750 ${udevdir}/${udev_file} + + insinto ${udevdir}/rules.d + sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/${rules_file} \ + > "${T}"/${rules_file} || die + doins "${T}"/${rules_file} + fi + + if use vboxwebsrv; then + vbox_inst vboxwebsrv + dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv + newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv + newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv + fi + + # Remove dead symlinks (bug #715338) + find "${ED}"/usr/$(get_libdir)/${PN} -xtype l -delete || die + + # Fix version string in extensions or else they don't get accepted + # by the virtualbox host process (see bug #438930) + find ExtensionPacks -type f -name "ExtPack.xml" -exec sed -i '/Version/s@_Gentoo@@' {} \+ || die + + local extensions_dir="${vbox_inst_path}/ExtensionPacks" + + if use vnc; then + insinto ${extensions_dir} + doins -r ExtensionPacks/VNC + fi + + if use dtrace; then + insinto ${extensions_dir} + doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack + fi + + if use doc; then + dodoc UserManual.pdf UserManual.q{ch,hc} + docompress -x /usr/share/doc/${PF} + elif use gui; then + dodoc "${WORKDIR}"/${PN}-help-${HELP_PV}/UserManual.q{ch,hc} + docompress -x /usr/share/doc/${PF} + fi + + if use python; then + local python_path_ext="${ED}/usr/$(get_libdir)/virtualbox/VBoxPython3.so" + if [[ ! -x "${python_path_ext}" ]]; then + eerror "Couldn't find ${python_path_ext}! Bindings were requested with USE=python" + eerror "but none were installed. This may happen if support for a Python target" + eerror "(listed in PYTHON_COMPAT in the ebuild) is incomplete within the Makefiles." + die "Incomplete installation of Python bindings! File a bug with Gentoo!" + fi + + # 378871 + local installer_dir="${ED}/usr/$(get_libdir)/virtualbox/sdk/installer/python/vboxapi/src" + pushd "${installer_dir}" &> /dev/null || die + sed -e "s;%VBOX_INSTALL_PATH%;${vbox_inst_path};" \ + -e "s;%VBOX_SDK_PATH%;${vbox_inst_path}/sdk;" \ + -i vboxapi/__init__.py || die + # insert shebang, the files come without one + find vboxapi -name \*.py -exec sed -e "1 i\#! ${PYTHON}" -i {} \+ || die + python_domodule vboxapi + popd &> /dev/null || die + + # upstream added a /bin/sh stub here + # use /usr/bin/python3, python_doscript will take care of it + sed -e '1 i #! /usr/bin/python3' -i vboxshell.py + python_doscript vboxshell.py + + # do not install the installer + rm -r "${installer_dir%vboxapi*}" || die + fi + + newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf +} + +pkg_postinst() { + xdg_pkg_postinst + + if use udev; then + udev_reload + udevadm trigger --subsystem-match=usb + fi + + tmpfiles_process virtualbox-vboxusb.conf + + if use gui; then + elog "To launch VirtualBox just type: \"virtualbox\"." + fi + + elog "You must be in the vboxusers group to use VirtualBox." + elog "" + elog "The latest user manual is available for download at:" + elog "https://download.virtualbox.org/virtualbox/${PV}/UserManual.pdf" + elog "" + + optfeature "Advanced networking setups" net-misc/bridge-utils sys-apps/usermode-utilities + optfeature "USB2, USB3, PXE boot, and VRDP support" app-emulation/virtualbox-extpack-oracle + optfeature "Guest additions ISO" app-emulation/virtualbox-additions + + if ! use udev; then + ewarn "Without USE=udev, USB devices will likely not work in ${PN}." + fi +} + +pkg_postrm() { + xdg_pkg_postrm + + use udev && udev_reload +} |