commit 11797df1e238952fb3d53ce4c48f92e13665da55 Author: CapCreeperGR Date: Wed Jul 10 05:33:47 2024 +0000 Initial Commit diff --git a/pkg.info b/pkg.info new file mode 100644 index 0000000..0be54fa --- /dev/null +++ b/pkg.info @@ -0,0 +1,7 @@ +name: linux-firmware-amd +description: AMD CPU and GPU firmware files +version: 20240709 +url: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git +license: See /usr/share/licenses/linux-firmware/amd +architecture: any +type: source diff --git a/source.sh b/source.sh new file mode 100644 index 0000000..8d25602 --- /dev/null +++ b/source.sh @@ -0,0 +1,33 @@ +# This is the source.sh script. It is executed by BPM in a temporary directory when compiling a source package +# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE +# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT + +DOWNLOAD="https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/snapshot/linux-firmware-${BPM_PKG_VERSION}.tar.gz" +FILENAME="${DOWNLOAD##*/}" + +# The prepare function is executed in the root of the temp directory +# This function is used for downloading files and putting them into the correct location +prepare() { + wget "$DOWNLOAD" + tar -xvf "$FILENAME" --strip-components=1 -C "$BPM_SOURCE" +} + +# The package function is executed in the source directory +# This function is used to move the compiled files into the output directory +package() { + make install FIRMWAREDIR=/usr/lib/firmware/temp DESTDIR="$BPM_OUTPUT" + mkdir -p "$BPM_OUTPUT"/usr/share/licenses/linux-firmware/temp + mkdir -p "$BPM_OUTPUT"/usr/share/licenses/linux-firmware/amd + cp LICENSE* "$BPM_OUTPUT"/usr/share/licenses/linux-firmware/temp + cp LICENCE* "$BPM_OUTPUT"/usr/share/licenses/linux-firmware/temp/ + cd "$BPM_OUTPUT" + mv usr/lib/firmware/temp/amd* usr/lib/firmware/ + mv usr/lib/firmware/temp/radeon usr/lib/firmware/ + mv usr/share/licenses/linux-firmware/temp/LICENSE.amdgpu usr/share/licenses/linux-firmware/amd/ + mv usr/share/licenses/linux-firmware/temp/LICENSE.amd-ucode usr/share/licenses/linux-firmware/amd/ + mv usr/share/licenses/linux-firmware/temp/LICENSE.radeon usr/share/licenses/linux-firmware/amd/ + mkdir -p usr/lib/dracut/dracut.conf.d + echo "early_microcode=yes" >> usr/lib/dracut/dracut.conf.d/amd_ucode.conf + rm -r usr/lib/firmware/temp + rm -r usr/share/licenses/linux-firmware/temp +}