diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-01-17 20:06:58 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-01-17 20:06:58 +0000 |
commit | 08c5e4df7a4b66ba8dbb827ca2e3a973d4f19ab0 (patch) | |
tree | 347af25df153363454776e1fe95fc4e8100a7e7d /app-emulation/virtualbox-guest-additions | |
parent | fc6e577018dec28e18904f9ad5c1417976e3c728 (diff) |
gentoo auto-resync : 17:01:2024 - 20:06:58
Diffstat (limited to 'app-emulation/virtualbox-guest-additions')
8 files changed, 602 insertions, 16 deletions
diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest index 3ed0ee513480..f9ac22aa7702 100644 --- a/app-emulation/virtualbox-guest-additions/Manifest +++ b/app-emulation/virtualbox-guest-additions/Manifest @@ -8,13 +8,17 @@ AUX virtualbox-guest-additions.service 411 BLAKE2B f5f1c24a94764ca72a04879c27cd9 AUX xorg.conf.vbox 274 BLAKE2B 3a3035fcbdbd5810c54505f5a5e6deefa1540e5e01a038babb62a40bd5b2de2dc5b228cabe55612d92a522e6ae92aa7ff4ff2ab26772c3b54ce95ebac4e7fc5a SHA512 ac2b14970dc6667ceec2dbdae52bc92cbad4aff020898ede156454e8a8a703354f15c7e19cfbd2bdd15e251493fd05cacfe814cabee0f9b4cf155e44860ed4c9 DIST VirtualBox-6.1.46.tar.bz2 166045588 BLAKE2B 041fad30d7cbe524cfd5c865b225c00df7715a6648ed0d8f7ee3ca4be0d0dabcb324c676ba2ea78288cde89ed8e5412fae75e31bb49f623de2acddb8f10d6ee1 SHA512 695ca4d41ff10d0581e4cffe4a0ec80e0fe380f4c7d5d51ee4d21aeb61646c26edd60301e541894e71c3323e2d7207e23299938c18ee45631afd1e0851946e77 DIST VirtualBox-6.1.48.tar.bz2 165960987 BLAKE2B c981e390ae518b829970827f6032fb19a93685fb58835a9d489c6e14cc60a5c14c65b0a3da5adae7818e73e1b0e558e8fa803160cb67847f18565bb78d656e97 SHA512 fff759f3871e4e8962536002f2bc13e5150a927e280493f5cb0abf06466ce66e45f4c6ef43489b5b3ed8682d8a3ac0eb6fb3dd7c4144924c81612553ec71a95f +DIST VirtualBox-6.1.50.tar.bz2 165959648 BLAKE2B e244c4fa2ffe86216664104473e27e8ddbad86aae3bc26612d18204a4e67cece91d1fa3aa9e70f1c39f915bf5e4a1e6a14bbb19162c3ae2ff554373df95bce51 SHA512 ee2ec352e020f07262bf2120278d0d9807c501cd7c4d621d4e12ce18a821b134d48eb852bc7136008cfa77ed709703d3c2835b7a7177c325d989e8f433aff73f DIST VirtualBox-7.0.10.tar.bz2 175450841 BLAKE2B 49eaa14f716f021f1ecec1ad48a2aa8a3a758cbd9b03cf30d65ddcf5aba11842b0ea8bc2c4d477084a4cea318dc302a4ed426ec9f675a1fe675c5f18c48796c7 SHA512 2870d39385f66557281edf1368db68cd69d6a9bebc30d52511929462d0ac210cec49dd8531a280c6facff22ba6e4808477fbf3d09abf998d863a007fc7f2c3bd DIST VirtualBox-7.0.12.tar.bz2 175644088 BLAKE2B 507cbf7b1a8a807bd2602e74bc19a59cb177b9b2bdefa1be582e520666360a42510ca501f20c354746a0f1dadf61fe29135e3edc867e611bfe60a9405cb2bbce SHA512 9fe4511442eba788d02f932f5e98cfcc5aa4ebed41c00bd7333cf7e3f5de787e458f1f56930978283f041f403652c803143335fe9120ab63a2c113ca7b3f588f +DIST VirtualBox-7.0.14.tar.bz2 175654864 BLAKE2B 99f4942b864ce481d69983af31393d763452c5b55697ab642b43c155f5fbc2a9963fbe1b7744baef620d0b351e1ac73c1ef978698b9a7e77897bb9cbc18dc17c SHA512 6a82933bbf51ff255d17cb61ae6ddfb791a2200e3dff705f181cd06c6031b48cf15faa5e8202a65daef0fb20b7fd9e33d40dbd0f9cc3f49af49fff04a1cb0a73 DIST virtualbox-patches-6.1.36.tar.bz2 2733 BLAKE2B dcfebfeca4873d382441515d48b4dfee9343bc7c83ea3cbb5002dbf7975143a79fae9a701b67dc35505e9ca03ff1b6293cb7c3279c4fdfda8ad21ba5fb9b7e87 SHA512 1bed5cdefbf8e7c4b0d9092ba4961ecf2262f27f35c71a91ef6f2e8fe8a1d92ed74f06bafbf58d70ba7165d933997f58073f4d4f4051e3ba5c0339b729066f57 DIST virtualbox-patches-7.0.8.tar.bz2 2733 BLAKE2B 044dfe02a5bd5e757091318b394b0e5918677b5bbce9caef4a18d4d8df54821559f0df6ffbdd6f52d4934bc4018e9c9d908571c5d3d8804fd3b0f22a7a1aed84 SHA512 93a06aa3f9508d3a8743ca8494a958159b5bc3fd7a0a08ff23414d05c4f31084cf0f1c82a3866e222c83e6996ba004546f0bd33c6eb9a90eec8e548b8b3f2fbf -EBUILD virtualbox-guest-additions-6.1.46.ebuild 7513 BLAKE2B 03710cc1587aef146cecde50915f7181e7251956605c5f84e069265c9918a583a8ac3d12af5ca9ce88f7e025a55327dddd779c8f8fb94dc12097d45db96ae5a1 SHA512 7ffb5b6e835519b566612a040301b1aae87d5542c65d6c5ff6b6d647fe85c585ba3e24c380dba9f26dbbf06404c182bdbb332e77adf78f6084f7ce7219812268 -EBUILD virtualbox-guest-additions-6.1.48.ebuild 7515 BLAKE2B de9b6a457ccb4d78c4d0dd92b3edf6b51dd75179d309b1ef57c4898e2024590c54c7bff93fd29cafa3d7d4fa7b7293506957183cad47bc4ad0803f05da834e67 SHA512 2dba618288947fab91690e72003f6f74157210aa05cbe0d4e84b26dff221506210aa57a8b7256f242c783415e08531223dccf85aea90513a9cc27bbdd3f5717d -EBUILD virtualbox-guest-additions-7.0.10-r1.ebuild 7923 BLAKE2B dd8f77c7a3d573f2d44681da44da38cf8624a176ba0c8e207fdfe36f3c6418bd91ac41c674d108f8b7742a096e1ebb3f6dada0c6bcc1e84bb794d9f1bb7c59d4 SHA512 98fcba920871098e3ca5352c3d604082b104cf461a582ebb53880bd1bc63537cc192145c4cf11a5a413414980462bc63cd8a5b87a035a0eb847c87cb995ac899 -EBUILD virtualbox-guest-additions-7.0.10.ebuild 7837 BLAKE2B 8635995d24c5257a9e635c90ff33204a5d12e1ed57bf48b31e41bdbf87c5b06be31907188fe08a73d92462d94b380aa26ed45ea4d7fc03c19adb9ce1eafc1d84 SHA512 a8555e77239e78d8480be113826ad0ba60ad343dbf14b967d8c606924b6d3b07424e02d7235556b9f4234c53ae711a32d49dde354a7bb67957b082bac556427c -EBUILD virtualbox-guest-additions-7.0.12.ebuild 7838 BLAKE2B d4e8cb753feb6c6ebdbe057b4b64366ebcc32a91ef096ada0801b072051ecc62eae44a10efee2145fc18744c07280dece669cabf934d88b8a7c5e1311dc74631 SHA512 8e627aef6124fcb6ec9e8772ba1294c10289b5068b7bfffcb92d54a01b7e02871ea4c6f567c0c3f49dbf72eaf0dd3e6fc07c298f4a6bdada1ebf79b5cd1c0217 +EBUILD virtualbox-guest-additions-6.1.46.ebuild 7515 BLAKE2B c431547ddba5da48b1adf38c5586b0716f35bcef669584928e5d8e0611b47afedbf7e928f173d69b40891bd992e394630386587fcf05504bbc03d14251f42b75 SHA512 9c345dff47ab1aecede001e780f61cd51dbd0b4edd6a67491d410d964a387defdb282e13feaf14336291b58c9fb23532c5a438ffa26af7b60d63f75cbb931343 +EBUILD virtualbox-guest-additions-6.1.48.ebuild 7517 BLAKE2B f965f336150f47d1567258c071f863f85a8e19770bb048ee4dc433ee07de1a563887118455c88e8f7aaf31c355a715ef2d93d252a72daacdf828da22a83bfef4 SHA512 bcadf1d9475f67d3382caf76b5cf5699c265c58fd7f20cca876af36d06139d2b249de312b1253f5e82ae95810a903a0cf6f93b546c095deb9d60716b87a49eda +EBUILD virtualbox-guest-additions-6.1.50.ebuild 7517 BLAKE2B f965f336150f47d1567258c071f863f85a8e19770bb048ee4dc433ee07de1a563887118455c88e8f7aaf31c355a715ef2d93d252a72daacdf828da22a83bfef4 SHA512 bcadf1d9475f67d3382caf76b5cf5699c265c58fd7f20cca876af36d06139d2b249de312b1253f5e82ae95810a903a0cf6f93b546c095deb9d60716b87a49eda +EBUILD virtualbox-guest-additions-7.0.10-r1.ebuild 7924 BLAKE2B b5d444ae52f9632927bc8165d47975fafef80f182b439652194dda7ac51c1ca82dd0f03876f67aad927f53f77a6c7c4ca804223e2a207393ea52b880741c840d SHA512 2421e2fcab2651e1b9267ef128e699f2f6171129a2650955e35d6439305348cc8b48c497325035c7ffb5f6c817f976c1fd8038c6ffc8d3c6e91933563f6323a4 +EBUILD virtualbox-guest-additions-7.0.10.ebuild 7838 BLAKE2B 20770a15705f5baace0c3272a66a3380ce921500be005c7afb754b84f6c4edbd780d9543dfb5d4ecd44f543dd7cb97772f24f61b66c12a1186499d29d1640d54 SHA512 c2e631469644c35d4092dd9b59ba9d053a431af5ca792171517f05e189fd8a7e66f909e1e8449eff8040c61c16282b5ae485bb3848fb98691e1fa4771a662fbc +EBUILD virtualbox-guest-additions-7.0.12.ebuild 7839 BLAKE2B 0fb948908c6b4573711dc25e51ec599107b64979597cfb6879890a3d49d2e1e1ce99c5935c51d18fa95a14c084b6adbc42fbd3c3ad15af15e44a357ac54dfa36 SHA512 0751487b722d94fdfa4ba46c1fa5f15cd246269b618c610bea55e710dbc2e7f1106086e4e39be38d3157d6318bfbdbebaaf547fb3e31dde1530f7a7cd0b85437 +EBUILD virtualbox-guest-additions-7.0.14.ebuild 7840 BLAKE2B 0f66f78bb59e62a2cc0d5eed3427279a68a5576a2f5a49cb433a54e1c2fc65e174faa5b0dfe3112b0215d2704e1fb5be2efbdc9706cfb9b7daa83bd39b28ce0f SHA512 ff08361f7537d58c35d8ac0b4a9faed4f63bd145f48083acc01dcf9b53a7a925e89f0aeaabcb0559e1f069c66b9fd9591dd96a19c0d6a8e0fe0219cd680dfdc0 MISC metadata.xml 255 BLAKE2B 9386ef3bdb55211441f303528b31f8ccd9ad9039744400e859574a424fa1f366a989fe78f5c10038f3dd9b06a6a389e4a7e643b3eac0dc93a79ac4cc3b4c5423 SHA512 6c158e12464285afd44b70d0653b65f65da1c523fc2b1b07eb6d2dec56f58234bb31cb9dc36238cd6dfc20031b4d58c04e7c1678cc9f917194403ad8a209513f diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.46.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.46.ebuild index 578abd460e54..fe43f7ac3ca9 100644 --- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.46.ebuild +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.46.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2023 Gentoo Authors +# Copyright 2022-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -47,8 +47,8 @@ DEPEND=" ) " BDEPEND=" - >=dev-util/kbuild-0.1.9998.3127 - <=dev-util/kbuild-0.1.9998.3500 + >=dev-build/kbuild-0.1.9998.3127 + <=dev-build/kbuild-0.1.9998.3500 >=dev-lang/yasm-0.6.2 sys-devel/bin86 sys-power/iasl diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.48.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.48.ebuild index 35c42213697c..346c45fc35e9 100644 --- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.48.ebuild +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.48.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2023 Gentoo Authors +# Copyright 2022-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -47,8 +47,8 @@ DEPEND=" ) " BDEPEND=" - >=dev-util/kbuild-0.1.9998.3127 - <=dev-util/kbuild-0.1.9998.3500 + >=dev-build/kbuild-0.1.9998.3127 + <=dev-build/kbuild-0.1.9998.3500 >=dev-lang/yasm-0.6.2 sys-devel/bin86 sys-power/iasl diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.50.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.50.ebuild new file mode 100644 index 000000000000..346c45fc35e9 --- /dev/null +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.50.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 systemd toolchain-funcs udev + +MY_PN="VirtualBox" +MY_P="${MY_PN}-${PV}" + +DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests" +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-6.1.36.tar.bz2" +S="${WORKDIR}/${MY_PN}-${PV}" + +LICENSE="GPL-2" +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64 ~x86" +IUSE="X +dbus" + +# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist +RDEPEND=" + acct-group/vboxguest + acct-group/vboxsf + acct-user/vboxguest + sys-libs/pam + sys-libs/zlib + dbus? ( sys-apps/dbus ) + X? ( + x11-apps/xrandr + x11-apps/xrefresh + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXmu + x11-libs/libXt + ) +" +DEPEND=" + ${RDEPEND} + X? ( + x11-base/xorg-proto + x11-libs/libICE + x11-libs/libSM + x11-libs/libXau + x11-libs/libXdmcp + ) +" +BDEPEND=" + >=dev-build/kbuild-0.1.9998.3127 + <=dev-build/kbuild-0.1.9998.3500 + >=dev-lang/yasm-0.6.2 + sys-devel/bin86 + sys-power/iasl +" +PDEPEND=" + X? ( x11-drivers/xf86-video-vboxvideo ) +" + +PATCHES=( + "${FILESDIR}"/virtualbox-guest-additions-7.0.8-fix-gcc13.patch +) + +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" + +src_prepare() { + eapply "${PATCHES[@]}" + + # 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 + use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk + + # 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 + + eapply "${WORKDIR}/virtualbox-patches-6.1.36/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 X && 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 X ; 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" +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + udev_reload + if ! use X ; then + elog "use flag X is off, enable it to install the" + elog "X Window System video driver." + fi + elog "" + elog "Please add users to the \"vboxguest\" group so they can" + elog "benefit from seamless mode, auto-resize and clipboard." + elog "" + elog "The vboxsf group has been added to make automount services work." + elog "These services are part of the shared folders support." + elog "" + elog "Please add:" + elog "/etc/init.d/${PN}" + elog "to the default runlevel in order to start" + elog "needed services." + elog "To use the VirtualBox X driver, use the following" + elog "file as your /etc/X11/xorg.conf:" + elog " /usr/share/doc/${PF}/xorg.conf.vbox" + elog "" + elog "An autostart .desktop file has been installed to start" + elog "VBoxClient in desktop sessions." + elog "" + elog "You can mount shared folders with:" + elog " mount -t vboxsf <shared_folder_name> <mount_point>" + elog "" + elog "Warning:" + elog "this ebuild is only needed if you are running gentoo" + elog "inside a VirtualBox Virtual Machine, you don't need" + elog "it to run VirtualBox itself." + elog "" +} + +pkg_postrm() { + udev_reload +} diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.10-r1.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.10-r1.ebuild index 7c0370a2380b..3540b581e1b6 100644 --- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.10-r1.ebuild +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.10-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2023 Gentoo Authors +# Copyright 2022-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -53,7 +53,7 @@ DEPEND=" " BDEPEND=" >=dev-lang/yasm-0.6.2 - >=dev-util/kbuild-0.1.9998.3127 + >=dev-build/kbuild-0.1.9998.3127 sys-devel/bin86 sys-power/iasl " diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.10.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.10.ebuild index d1bff79dd254..52388f674103 100644 --- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.10.ebuild +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.10.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2023 Gentoo Authors +# Copyright 2022-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -53,7 +53,7 @@ DEPEND=" " BDEPEND=" >=dev-lang/yasm-0.6.2 - >=dev-util/kbuild-0.1.9998.3127 + >=dev-build/kbuild-0.1.9998.3127 sys-devel/bin86 sys-power/iasl " diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.12.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.12.ebuild index 6d6814bda531..dea4c1340ecb 100644 --- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.12.ebuild +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.12.ebuild @@ -53,7 +53,7 @@ DEPEND=" " BDEPEND=" >=dev-lang/yasm-0.6.2 - >=dev-util/kbuild-0.1.9998.3127 + >=dev-build/kbuild-0.1.9998.3127 sys-devel/bin86 sys-power/iasl " diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.14.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.14.ebuild new file mode 100644 index 000000000000..a90daa79102a --- /dev/null +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-7.0.14.ebuild @@ -0,0 +1,294 @@ +# Copyright 2022-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo linux-mod-r1 systemd toolchain-funcs udev + +MY_PN="VirtualBox" +MY_P="${MY_PN}-${PV}" + +DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests" +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.0.8.tar.bz2" +S="${WORKDIR}/${MY_PN}-${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" + +# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist +# TODO: find out what this is, remove comment if obsolete + +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 +" +PDEPEND=" + gui? ( x11-drivers/xf86-video-vboxvideo ) +" + +PATCHES=( + "${FILESDIR}"/virtualbox-guest-additions-7.0.8-fix-gcc13.patch +) + +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" + +src_prepare() { + eapply "${PATCHES[@]}" + + # 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.0.8/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" +} + +pkg_postinst() { + linux-mod-r1_pkg_postinst + udev_reload + if ! use gui ; then + elog "use flag gui is off, enable it to install the" + elog "X Window System video driver." + fi + elog "" + elog "Please add users to the \"vboxguest\" group so they can" + elog "benefit from seamless mode, auto-resize and clipboard." + elog "" + elog "The vboxsf group has been added to make automount services work." + elog "These services are part of the shared folders support." + elog "" + elog "Please add:" + elog "/etc/init.d/${PN}" + elog "to the default runlevel in order to start" + elog "needed services." + elog "To use the VirtualBox X driver, use the following" + elog "file as your /etc/X11/xorg.conf:" + elog " /usr/share/doc/${PF}/xorg.conf.vbox" + elog "" + elog "An autostart .desktop file has been installed to start" + elog "VBoxClient in desktop sessions." + elog "" + elog "You can mount shared folders with:" + elog " mount -t vboxsf <shared_folder_name> <mount_point>" + elog "" + elog "Warning:" + elog "this ebuild is only needed if you are running gentoo" + elog "inside a VirtualBox Virtual Machine, you don't need" + elog "it to run VirtualBox itself." + elog "" +} + +pkg_postrm() { + udev_reload +} |