Compare commits

..
20 Commits
Author SHA1 Message Date
EnumDev dd062d67b1 Update package version to 6.18.46 2026-09-04 15:57:38 +03:00
EnumDev 5010bdc145 Enable different power state config options 2026-07-30 13:20:08 +03:00
EnumDev ddf696f4db Rebuild package 2026-07-10 19:15:54 +03:00
EnumDev 1392201c76 Update package version to 6.18.38 2026-07-08 13:33:32 +03:00
EnumDev a0045433b1 Update package version to 6.18.36 2026-06-21 11:34:09 +03:00
EnumDev b7557e0732 Switch to new package format 2026-06-13 20:00:16 +03:00
EnumDev 8b815f1665 Update package version to 6.18.34 2026-06-07 16:32:23 +03:00
EnumDev 367b309078 Enable i2c and smbus 2026-05-28 19:00:33 +03:00
EnumDev 46cbd5f070 Improve NVME support and enable Steam Force Feedback 2026-05-28 16:10:16 +03:00
EnumDev 9e933d6d27 Update package version to 6.18.33 2026-05-28 16:08:54 +03:00
EnumDev b7de9207da Update package version to 6.18.31 2026-05-17 16:18:38 +03:00
EnumDev b4cd4c00c7 Create headers split package for DKMS support 2026-05-09 18:35:26 +03:00
EnumDev 2cfd4c8adc Update package version to 6.18.26 2026-05-02 18:24:44 +03:00
EnumDev 7e62ef58b9 Update package version to 6.18.24 2026-04-26 16:17:19 +03:00
EnumDev b5ae25ecce Update package version to 6.18.23 2026-04-20 12:19:18 +03:00
EnumDev 13d38dbcb6 Restrict dmesg by default 2026-04-16 17:26:29 +03:00
EnumDev 2267c6858e Enable apparmor 2026-04-07 17:57:58 +03:00
EnumDev 8f65a00bfb Enable ntsync 2026-04-07 14:42:13 +03:00
EnumDev bae5171a46 Update package version to 6.18.21 2026-04-04 13:21:24 +03:00
EnumDev 7a345a6fa4 Update package version to 6.18.20 2026-03-29 22:09:54 +03:00
4 changed files with 899 additions and 450 deletions
+21 -3
View File
@@ -1,6 +1,6 @@
name: linux-lts name: linux-lts
description: The longterm support version of the linux kernel description: The longterm support version of the linux kernel
version: 6.18.19 version: 6.18.46
revision: 1 revision: 1
url: https://www.kernel.org/ url: https://www.kernel.org/
license: GPL2-only license: GPL2-only
@@ -16,19 +16,37 @@ make_depends:
- libelf - libelf
- lld - lld
- llvm - llvm
- openssl
- pahole
- perl - perl
- rustc - rustc
- rust-bindgen - rust-bindgen
- rust-src - rust-src
- xz-utils
- zlib
- zstd
downloads: downloads:
- url: https://cdn.kernel.org/pub/linux/kernel/v${BPM_PKG_VERSION%%.*}.x/linux-${BPM_PKG_VERSION}.tar.xz - url: https://cdn.kernel.org/pub/linux/kernel/v${BPM_PKG_VERSION%%.*}.x/linux-${BPM_PKG_VERSION}.tar.xz
extract_to: ${BPM_SOURCE} extract_to: ${BPM_SOURCE}
extract_strip_components: 1 extract_strip_components: 1
checksum: eaaf78271cd07c68ad9c4c9a70c72718b33abbd716239d82bac96b1751eb090c checksum: f5d44b93808b02cc2969c5404ba081d97523719c9fd2ba2de6db318b4141cca0
split_packages: split_packages:
- name: linux-lts - name: linux-lts
optional_depends: optional_depends:
- linux-lts-docs - linux-lts-docs:For documentation
- linux-lts-headers:For building modules
- name: linux-lts-headers
description: The longterm support version of the linux kernel (Headers)
depends:
- linux-lts
- binutils
- lld
- llvm
- openssl
- pahole
- xxhash
- zlib
- zstd
- name: linux-lts-docs - name: linux-lts-docs
description: The longterm support version of the linux kernel (Documentation) description: The longterm support version of the linux kernel (Documentation)
depends: depends:
+142
View File
@@ -0,0 +1,142 @@
# This is the recipe.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
# The prepare function is executed in the root of the temp directory
# This function is used for putting downloaded files to the correct location or applying patches
prepare() {
cd "$BPM_SOURCE"
make mrproper
cp ../config .config
}
# The build function is executed in the source directory
# This function is used to compile the source code
build() {
make LLVM=1 olddefconfig
make LLVM=1
make -C tools/bpf/bpftool vmlinux.h feature-clang-bpf-co-re=1
}
# The package function is executed in the source directory
# This function is used to move the compiled files into the output directory
package_linux-lts() {
# Install kernel modules
make INSTALL_MOD_PATH="$BPM_OUTPUT"/usr INSTALL_MOD_STRIP=1 modules_install
# Install kernel image and config
install -Dm644 arch/x86/boot/bzImage "$BPM_OUTPUT"/boot/vmlinuz-linux-lts
install -Dm644 .config "$BPM_OUTPUT"/boot/config-linux-lts
# Remove build link
rm "$BPM_OUTPUT"/usr/lib/modules/$(make -s kernelrelease)/build
# Install package licenses
install -d "$BPM_OUTPUT"/usr/share/licenses
cp -r LICENSES "$BPM_OUTPUT"/usr/share/licenses/linux-lts
}
package_linux-lts-headers() {
local builddir="$BPM_OUTPUT"/usr/lib/modules/$(make -s kernelrelease)/build
local karch
case $CARCH in
x86_64) karch=x86 ;;
*) echo "Unknown CARCH $CARCH"; exit 1 ;;
esac
echo "Installing build files..."
install -Dt "$builddir" -m644 .config Makefile Module.symvers System.map vmlinux tools/bpf/bpftool/vmlinux.h
install -Dt "$builddir/kernel" -m644 kernel/Makefile
install -Dt "$builddir/arch/$karch" -m644 arch/$karch/Makefile
cp -t "$builddir" -a scripts
ln -srt "$builddir" "$builddir/scripts/gdb/vmlinux-gdb.py"
if [[ $(scripts/config -s CONFIG_HAVE_STACK_VALIDATION) = y ]]; then
install -Dt "$builddir/tools/objtool" tools/objtool/objtool
fi
if [[ $(scripts/config -s CONFIG_DEBUG_INFO_BTF_MODULES) = y ]]; then
install -Dt "$builddir/tools/bpf/resolve_btfids" tools/bpf/resolve_btfids/resolve_btfids
fi
echo "Installing headers..."
cp -t "$builddir" -a include
cp -t "$builddir/arch/$karch" -a arch/$karch/include
install -Dt "$builddir/arch/$karch/kernel" -m644 arch/$karch/kernel/asm-offsets.s
install -Dt "$builddir/drivers/md" -m644 drivers/md/*.h
install -Dt "$builddir/net/mac80211" -m644 net/mac80211/*.h
install -Dt "$builddir/drivers/media/i2c" -m644 drivers/media/i2c/msp3400-driver.h
install -Dt "$builddir/drivers/media/usb/dvb-usb" -m644 drivers/media/usb/dvb-usb/*.h
install -Dt "$builddir/drivers/media/dvb-frontends" -m644 drivers/media/dvb-frontends/*.h
install -Dt "$builddir/drivers/media/tuners" -m644 drivers/media/tuners/*.h
install -Dt "$builddir/drivers/iio/common/hid-sensors" -m644 drivers/iio/common/hid-sensors/*.h
echo "Installing KConfig files..."
find . -name 'Kconfig*' -exec install -Dm644 {} "$builddir/{}" \;
echo "Installing Rust files..."
if [[ $(scripts/config -s CONFIG_RUST) = y ]]; then
install -Dt "$builddir/rust" -m644 rust/*.rmeta
install -Dt "$builddir/rust" rust/*.so
fi
echo "Installing unstripped VDSO..."
make INSTALL_MOD_PATH="$BPM_OUTPUT"/usr vdso_install \
link= # Suppress build-id symlinks
echo "Removing unneeded architectures..."
local arch
for arch in "$builddir"/arch/*/; do
[[ $arch = */$karch/ ]] && continue
echo "Removing $(basename "$arch")"
rm -r "$arch"
done
echo "Removing documentation..."
rm -r "$builddir/Documentation"
echo "Removing broken symlinks..."
find -L "$builddir" -type l -printf 'Removing %P\n' -delete
echo "Removing loose objects..."
find "$builddir" -type f -name '*.o' -printf 'Removing %P\n' -delete
echo "Stripping build tools..."
local file
while read -rd '' file; do
case "$(file -Sib "$file")" in
application/x-sharedlib\;*) # Libraries (.so)
strip -v $STRIP_SHARED "$file" ;;
application/x-archive\;*) # Libraries (.a)
strip -v $STRIP_STATIC "$file" ;;
application/x-executable\;*) # Binaries
strip -v $STRIP_BINARIES "$file" ;;
application/x-pie-executable\;*) # Relocatable binaries
strip -v $STRIP_SHARED "$file" ;;
esac
done < <(find "$builddir" -type f -perm -u+x ! -name vmlinux -print0)
echo "Stripping vmlinux..."
strip -v $STRIP_STATIC "$builddir/vmlinux"
echo "Adding symlink..."
mkdir -p "$BPM_OUTPUT"/usr/src
ln -sr "$builddir" "$BPM_OUTPUT"/usr/src/linux-lts
}
package_linux-lts-docs() {
# Install documentation
install -d "$BPM_OUTPUT"/usr/share/doc/
cp -r Documentation "$BPM_OUTPUT"/usr/share/doc/linux-lts
# Install package licenses
install -d "$BPM_OUTPUT"/usr/share/licenses
ln -sf linux-lts "$BPM_OUTPUT"/usr/share/licenses/linux-lts-docs
}
+736 -403
View File
File diff suppressed because it is too large Load Diff
-44
View File
@@ -1,44 +0,0 @@
# 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
# The prepare function is executed in the root of the temp directory
# This function is used for putting downloaded files to the correct location or applying patches
prepare() {
cd "$BPM_SOURCE"
make mrproper
cp ../config .config
}
# The build function is executed in the source directory
# This function is used to compile the source code
build() {
make LLVM=1 olddefconfig
make LLVM=1
}
# The package function is executed in the source directory
# This function is used to move the compiled files into the output directory
package_linux-lts() {
# Install kernel modules
make INSTALL_MOD_PATH="$BPM_OUTPUT"/usr INSTALL_MOD_STRIP=1 modules_install
# Install kernel image and config
install -Dm644 arch/x86/boot/bzImage "$BPM_OUTPUT"/boot/vmlinuz-linux-lts
install -Dm644 .config "$BPM_OUTPUT"/boot/config-linux-lts
# Install package licenses
install -d "$BPM_OUTPUT"/usr/share/licenses
cp -r LICENSES "$BPM_OUTPUT"/usr/share/licenses/linux-lts
}
package_linux-lts-docs() {
# Install documentation
install -d "$BPM_OUTPUT"/usr/share/doc/
cp -r Documentation "$BPM_OUTPUT"/usr/share/doc/linux-lts
# Install package licenses
install -d "$BPM_OUTPUT"/usr/share/licenses
ln -sf linux-lts "$BPM_OUTPUT"/usr/share/licenses/linux-lts-docs
}