@Eirikr I checked on linux-nitrous, and iwlwifi is not missing.
Search Criteria
Package Details: linux-nitrous-fire 6.2.13-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/linux-nitrous-fire.git (read-only, click to copy) |
---|---|
Package Base: | linux-nitrous-fire |
Description: | Modified Linux kernel optimized for Skylake and newer, compiled using clang, sacrificing security for performance. The 'nitrous-fire' kernel is insecure, only use it if you need the performance. |
Upstream URL: | https://gitlab.com/xdevs23/linux-nitrous |
Keywords: | insecure no-mitigations optimized performance speed |
Licenses: | GPL2 |
Provides: | NTFS3-MODULE |
Submitter: | superboringdev |
Maintainer: | superboringdev (n0m4n904) |
Last Packager: | superboringdev |
Votes: | 1 |
Popularity: | 0.000000 |
First Submitted: | 2020-05-04 21:00 (UTC) |
Last Updated: | 2023-04-26 17:17 (UTC) |
Dependencies (20)
- coreutils (coreutils-gitAUR, busybox-coreutilsAUR, coreutils-hybrid-gitAUR, coreutils-selinuxAUR, coreutils-uutilsAUR, coreutils-hybridAUR)
- initramfs (booster-gitAUR, booster-wip-gitAUR, mkinitcpio-gitAUR, dracut-gitAUR, booster, dracut, mkinitcpio)
- kmod (busybox-coreutilsAUR, kmod-gitAUR)
- bc (bc-ghAUR) (make)
- bison (byacc-bisonAUR, bison-gitAUR) (make)
- clang (llvm-rocm-gitAUR, llvm-gitAUR, clang-minimal-gitAUR, clang17-binAUR) (make)
- coreutils (coreutils-gitAUR, busybox-coreutilsAUR, coreutils-hybrid-gitAUR, coreutils-selinuxAUR, coreutils-uutilsAUR, coreutils-hybridAUR) (make)
- docbook-xsl (make)
- git (git-gitAUR, git-glAUR) (make)
- inetutils (inetutils-gitAUR, busybox-coreutilsAUR) (make)
- kmod (busybox-coreutilsAUR, kmod-gitAUR) (make)
- libelf (elfutils-gitAUR) (make)
- lld (llvm-rocm-gitAUR, llvm-gitAUR) (make)
- llvm (llvm-rocm-gitAUR, llvm-gitAUR, llvm-minimal-gitAUR) (make)
- lzop (make)
- rust (rust-nightlyAUR, rustup-gitAUR, rust-nightly-binAUR, rust-gitAUR, rust-beta-binAUR, rustup) (make)
- xmlto (xmlto-gitAUR) (make)
- crda (wireless-regdb) (optional) – to set the correct wireless channels of your country
- linux-firmware (linux-libre-firmwareAUR, linux-firmware-xzAUR, linux-firmware-amd-staging-um5606-gitAUR, linux-firmware-uncompressedAUR, linux-firmware-gitAUR) (optional) – Additional firmware blobs
- linux-nitrous-fire-headersAUR (optional) – to build DKMS modules against this kernel
Required by (0)
Sources (2)
superboringdev commented on 2023-05-13 14:15 (UTC)
superboringdev commented on 2023-05-07 18:09 (UTC)
@Eirikr I'll take a look at that. It should not be missing iwlwifi. I use Intel WiFi on my work laptop afaik.
Eirikr commented on 2023-05-07 17:09 (UTC)
Is iwlwifi missing from the regular linux-nitrous as well?
I run with kernel option mitigations=off but I think this disables further mitigations if I’m not mistaken… and allows for undervolting in combination with the right UEFI firmware version on hardware that had it disabled.
Really would prefer though to use my internal wireless instead of a USB stick
(Can’t install iwlwifi-next or any other version either… all give error 7 during kernel module installation even after using CC=clang and CXX=clang++ in both /etc/makepkg.conf and /etc/environment)
superboringdev commented on 2022-12-20 21:09 (UTC)
@Technetium1 thank you. I've updated the PKGBUILD and it will be available upon next release.
Technetium1 commented on 2022-12-20 19:05 (UTC)
Missing lzop
in makedepends
to build in clean chroot.
pipes80 commented on 2022-04-03 13:40 (UTC)
i have problem to install this kernel with nvidia module, these module cannot install
superboringdev commented on 2021-09-10 22:27 (UTC)
@tam1m Perfect, that's great. Thanks for letting me know.
tam1m commented on 2021-09-10 16:51 (UTC)
@superboringdev Yes, this works! Thank you!
superboringdev commented on 2021-09-10 16:34 (UTC)
@tam1m
Thank you for explaining and providing a patch! I applied the patch. Please test if it works for you.
tam1m commented on 2021-09-10 12:17 (UTC) (edited on 2021-09-10 12:36 (UTC) by tam1m)
@superboringdev
Thank you! But in order for this to really work, there are some more changes needed. I looked through the code of mkinitcpio and booster and found, that both of them come with install/remove hooks for kernel packages.
They both look for usr/lib/modules/*/vmlinuz
on install/remove/upgrade and execute their respective scripts, which generate the initramfs images and copy vmlinuz
to /boot
. Dracut doesn't come with any pacman hooks itself, but the wiki describes how to set those up and these are working the same way. Also systemd seems to expect this (see https://github.com/systemd/systemd/commit/edda44605f06a41fb86b7ab8128dcf99161d2344) .It also seems to be expected, that there is a usr/lib/modules/*/pkgbase
which just holds the content if $pkgbase
(in this case linux-nitrous-fire
).
Setup like this, the initramfs generators will do all the work from copying vmlinuz
to /boot
to generating the initramfs and the reverse on uninstall. I tested this with mkinitcpio and booster and it seems to work nicely. I don't have dracut setup, but it should work aswell.
Here is a small patch with the changes need for PKGBUILD
and linux-nitrous-fire.install
.
diff --git a/PKGBUILD b/PKGBUILD
index 7088d72..b7aaea3 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -89,7 +89,17 @@ _package() {
mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot}
$make_env_variant INSTALL_MOD_PATH="${pkgdir}" modules_install
- cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${__kernelname}"
+
+ local modulesdir="$pkgdir/lib/modules/${_kernver}"
+
+ echo "Installing boot image..."
+ # systemd expects to find the kernel here to allow hibernation
+ # https://github.com/systemd/systemd/commit/edda44605f06a41fb86b7ab8128dcf99161d2344
+ # Also initramfs generators are using this for install/remove/upgrade detection
+ install -Dm644 "$(make -s image_name)" "$modulesdir/vmlinuz"
+
+ # Used by mkinitcpio to name the kernel
+ echo "$pkgbase" | install -Dm644 /dev/stdin "$modulesdir/pkgbase"
# set correct depmod command for install
cp -f "${startdir}/${install}" "${startdir}/${install}.pkg"
diff --git a/linux-nitrous-fire.install b/linux-nitrous-fire.install
index 0ca7cbd..983bdd6 100644
--- a/linux-nitrous-fire.install
+++ b/linux-nitrous-fire.install
@@ -5,17 +5,11 @@ KERNEL_NAME=
KERNEL_VERSION=
post_install () {
- echo ">>> Generating kernel initramfs..."
- mkinitcpio -p ${KERNEL_NAME}
+ echo ">>> Don't forget to generate kernel initramfs, if this is not done automatically by your initramfs generator!"
}
post_upgrade() {
- if findmnt --fstab -uno SOURCE /boot &>/dev/null && ! mountpoint -q /boot; then
- echo "WARNING: /boot appears to be a separate partition but is not mounted."
- fi
-
- echo ">>> Generating kernel initramfs..."
- mkinitcpio -p ${KERNEL_NAME}
+ echo ">>> Don't forget to generate kernel initramfs, if this is not done automatically by your initramfs generator!"
if [ $(vercmp $2 3.13) -lt 0 ]; then
echo ">>> WARNING: AT keyboard support is no longer built into the kernel."
@@ -24,8 +18,4 @@ post_upgrade() {
fi
}
-post_remove() {
- # also remove the compat symlinks
- rm -f boot/initramfs-linux${KERNEL_NAME}.img
- rm -f boot/initramfs-linux${KERNEL_NAME}-fallback.img
-}
+
Pinned Comments
superboringdev commented on 2020-05-04 21:32 (UTC) (edited on 2023-04-27 21:18 (UTC) by superboringdev)
Note that this is not a secure kernel. It has things disabled that mitigate security bugs in the processor (for example retpoline, spectre/meltdown mitigation etc.) and some things tuned here and there. Do not use this on servers or on machines where security is important.
It looks like not many people are using this and thus the binary packages are not going to be available anymore. This will need to be built from source.
Update: Because this kernel is insecure, untested and barely used, it won't be updated anymore. Use linux-nitrous instead.