diff --git a/linux-6.12.29-483.bee b/linux-6.12.29-483.bee new file mode 100755 index 000000000..4c84f09f0 --- /dev/null +++ b/linux-6.12.29-483.bee @@ -0,0 +1,46 @@ +#!/bin/env beesh + +# note: BEE_MAKEFLAGS="-j $(nproc)" ./linux-xxx.bee + +KERNELVERSION=${PKGVERSION} + +# append extra version to get for example 4.8-rc4 +KERNELVERSION=${KERNELVERSION}${PKGEXTRAVERSION_DASH} + +echo $KERNELVERSION + +#SRCURL[0]="https://github.molgen.mpg.de/mariux64/linux/archive/refs/tags/mariux-$KERNELVERSION-$PKGREVISION.tar.gz" +SRCURL[0]="https://beehive.molgen.mpg.de/8502679ddd7885c8d3d99763f2d27cd0/mariux-6.12.29-483.tar.gz" + +KERNELLOCAL=".mx64.${PKGREVISION}" +FULLKERNELVERSION="${KERNELVERSION}${KERNELLOCAL}" + +B=${S} + +same_revision_files=$(ls ${BEE_PKGDIR}/linux-[0-9].[0-9]*-${PKGREVISION}.x86_64.bee.* 2>/dev/null) \ + && echo "A kernel with revision ${PKGREVISION} has already been build: $same_revision_files" \ + && exit + + +mee_configure() { + echo "configure $@" + echo "CONFIG_LOCALVERSION=\"$KERNELLOCAL\"" > .config + grep -v 'CONFIG_LOCALVERSION=' config-mpi >> .config + make olddefconfig +} + +mee_build() { + echo "build $@" + make ${BEE_MAKEFLAGS} +} + +mee_install() { + echo "install $@" + + make modules_install INSTALL_MOD_PATH=${D} + make install INSTALL_PATH=${D}/boot + + rm -rf ${D}/lib/modules/${FULLKERNELVERSION}/{source,build} + + ln -sv bzImage-${FULLKERNELVERSION} ${D}/boot/mariux.${PKGREVISION} +} diff --git a/nvidia_current-570.144-0.bee b/nvidia_current-570.144-0.bee new file mode 100755 index 000000000..2c7002e4b --- /dev/null +++ b/nvidia_current-570.144-0.bee @@ -0,0 +1,102 @@ +#!/bin/env beesh + +# resources: +# http://www.nvidia.com/object/unix.html +# ./README.txt +# ./.manifest +# https://github.com/NVIDIA/nvidia-installer +# ./nvidia-installer -A +# ./nvidia-installer --ui=none --accept-license --no-kernel-module --expert +# + +NVIDIA_ARCHIVE="NVIDIA-Linux-x86_64-${PKGVERSION}${PKGEXTRAVERSION:+-${PKGEXTRAVERSION}}.run" + +#SRCURL[0]="https://de.download.nvidia.com/XFree86/Linux-x86_64/$PKGVERSION/NVIDIA-Linux-x86_64-$PKGVERSION.run" +SRCURL[0]="https://beehive.molgen.mpg.de/c2a4ccbd3d29ed83d0d9dcd742eb034a/NVIDIA-Linux-x86_64-570.144.run" + + +BEE_CONFIGURE=none + +build_in_sourcedir + +PREFIX=/usr/share/nvidia/${PKGVERSION} +LIBDIR=${PREFIX}/lib +BINDIR=${PREFIX}/bin + +# fix tar option for user namespace usage (`unshare -U -r BEEFILE`) +export TAR_OPTIONS=--no-same-owner + +mee_extract() { + rmdir ${S} + sh ${F}/${NVIDIA_ARCHIVE} -x --target ${S} +} + +#mee_patch() { +# bee_patch +#} + +mee_build() { + #bee_build + true +} + +mee_install() { + #bee_install + + mkdir -pv ${D}${PREFIX}/{bin,lib,drivers,man/man1} + mkdir -pv ${D}/usr/lib + + NVDRV="nvidia_drv.so" + + NVBIN=( \ + "nvidia-cuda-mps-control" \ + "nvidia-cuda-mps-server" \ + "nvidia-debugdump" \ + "nvidia-modprobe" \ + "nvidia-persistenced" \ + "nvidia-settings" \ + "nvidia-smi" \ + "nvidia-xconfig" \ + ) + + for i in lib*.so.$PKGVERSION; do + install -v -t ${D}${LIBDIR} "$i" + ln -sv "${LIBDIR}/$i" ${D}/usr/lib/ + if soname="$(soname "$i")"; then + #echo "$soname\n" + test -e "${D}${LIBDIR}/${soname}" || ln -sv "$i" "${D}${LIBDIR}/${soname}" + fi + done + + # libglxserver_nvidia.so should reside in /usr/lib/xorg/modules/extensions, + # here we cheat away and stay in line with the /node/usr_share_mxgfx mechanism. + # Additional note: don't put/link libglx.so into /usr/lib. + ln -sv libglxserver_nvidia.so.$PKGVERSION ${D}${LIBDIR}/libglxserver_nvidia.so + + # libnvidia-api was introduced with 525, but w/o a 'PKGVERSION' + install -v -t ${D}${LIBDIR} libnvidia-api.so.1 + + mkdir -vp ${D}/usr/lib/xorg/modules/extensions + + cd ${D}/usr/lib/xorg/modules/extensions + ln -sv /usr/share/mxgfx/lib/libglxserver_nvidia.so libglxserver_nvidia.so + cd $B + + echo "installing ${NVDRV} as drivers/$(basename ${NVDRV})"; + install -c -v ${NVDRV} ${D}${PREFIX}/drivers + + mkdir -pv ${D}/usr/share/man/man1 + + for i in ${NVBIN[@]} ; do + echo "installing ${i} as bin/${i}" + install -v -c -m 755 ${i} ${D}${BINDIR} + if [ -e ${i}.1.gz ]; then + install -v -c -m 644 ${i}.1.gz ${D}${PREFIX}/man/man1 + fi + done + + mkdir -pv ${D}/lib/firmware/nvidia/${PKGVERSION} + install -v -c -m 644 firmware/gsp_ga10x.bin ${D}/lib/firmware/nvidia/${PKGVERSION} + install -v -c -m 644 firmware/gsp_tu10x.bin ${D}/lib/firmware/nvidia/${PKGVERSION} + +} diff --git a/nvidia_linux-6.12.29-483-570.144-0.bee b/nvidia_linux-6.12.29-483-570.144-0.bee new file mode 100755 index 000000000..c2777a233 --- /dev/null +++ b/nvidia_linux-6.12.29-483-570.144-0.bee @@ -0,0 +1,48 @@ +#!/bin/env beesh + +NVIDIA_ARCHIVE="NVIDIA-Linux-x86_64-${PKGVERSION}.run" + +#SRCURL[0]="https://de.download.nvidia.com/XFree86/Linux-x86_64/$PKGVERSION/NVIDIA-Linux-x86_64-$PKGVERSION.run" +SRCURL[0]="https://beehive.molgen.mpg.de/c2a4ccbd3d29ed83d0d9dcd742eb034a/NVIDIA-Linux-x86_64-570.144.run" + +PATCHURL+=() + +LINUXPKG=${PKGEXTRANAME}.${ARCH} + +LINUXKLOCALVER=$(beeversion --format "%v.mx64.%r" "${LINUXPKG}") + +# '4.4.mx64.75' to '4.4.0.mx64.75' +if [[ $LINUXKLOCALVER =~ ^([0-9]+\.[0-9]+)(\.mx64.*) ]]; then + LINUXKLOCALVER="${BASH_REMATCH[1]}.0${BASH_REMATCH[2]}" +fi + + +build_in_sourcedir +sourcesubdir_append kernel + +: ${BEE_TMP_TMPDIR:=/tmp} + +# fix tar option for user namespace usage (`unshare -U -r BEEFILE`) +export TAR_OPTIONS=--no-same-owner + +mee_extract() { + rmdir ${S} + start_cmd sh ${F}/${NVIDIA_ARCHIVE} -x --target ${S} + + if [ ! -d "${BEE_TMP_TMPDIR}/${LINUXPKG}/source" ] ; then + start_cmd gtar -xf ${BEE_BUILDARCHIVEDIR}/${LINUXPKG}.beebuild.tar.bz2 -C ${BEE_TMP_TMPDIR} + fi + LINUXSRCDIR="${BEE_TMP_TMPDIR}/${LINUXPKG}/source" +} + +mee_build() { + make SYSSRC=${LINUXSRCDIR} CC=gcc module +} + +mee_install() { + mkdir -pv ${D}${DATAROOTDIR}/nvidia/kernel/${LINUXKLOCALVER}/${PKGVERSION} + + cp -v *.ko ${D}${DATAROOTDIR}/nvidia/kernel/${LINUXKLOCALVER}/${PKGVERSION}/ + + ln -s ${PKGVERSION} ${D}${DATAROOTDIR}/nvidia/kernel/${LINUXKLOCALVER}/current +}