Package Details: linux-xanmod 6.12.8-1

Git Clone URL: https://aur.archlinux.org/linux-xanmod.git (read-only, click to copy)
Package Base: linux-xanmod
Description: The Linux kernel and modules with Xanmod patches
Upstream URL: http://www.xanmod.org/
Licenses: GPL2
Provides: KSMBD-MODULE, NTFS3-MODULE, VIRTUALBOX-GUEST-MODULES, WIREGUARD-MODULE
Replaces: virtualbox-guest-modules-arch, wireguard-arch
Submitter: Yoshi2889
Maintainer: figue (figuepluto, jfigueras)
Last Packager: figue
Votes: 131
Popularity: 0.82
First Submitted: 2017-02-14 09:40 (UTC)
Last Updated: 2025-01-05 16:47 (UTC)

Dependencies (15)

Required by (6)

Sources (4)

Pinned Comments

anlorsp commented on 2024-07-13 17:07 (UTC) (edited on 2024-07-15 04:53 (UTC) by anlorsp)

Adding

scripts/config --disable CONFIG_IMA_ARCH_POLICY

to myconfig does solve the "Failed to insert module 'nvidia': Key was rejected by service" problem.

Anyone who configured secure boot using sbctl and want to load dkms modules can try this solution.

figue commented on 2018-12-14 00:50 (UTC) (edited on 2023-02-27 20:00 (UTC) by figue)

This package have several variables to enable/disable features.

##
## The following variables can be customized at build time. Use env or export to change at your wish
##
##   Example: env _microarchitecture=98 use_numa=n use_tracers=n makepkg -sc
##
## Look inside 'choose-gcc-optimization.sh' to choose your microarchitecture
## Valid numbers between: 0 to 99
## Default is: 0 => generic
## Good option if your package is for one machine: 98 (Intel native) or 99 (AMD native)
if [ -z ${_microarchitecture+x} ]; then
  _microarchitecture=0
fi

## Disable NUMA since most users do not have multiple processors. Breaks CUDA/NvEnc.
## Archlinux and Xanmod enable it by default.
## Set variable "use_numa" to: n to disable (possibly increase performance)
##                             y to enable  (stock default)
if [ -z ${use_numa+x} ]; then
  use_numa=y
fi

## Since upstream disabled CONFIG_STACK_TRACER (limits debugging and analyzing of the kernel)
## you can enable them setting this option. Caution, because they have an impact in performance.
## Stock Archlinux has this enabled. 
## Set variable "use_tracers" to: n to disable (possibly increase performance, XanMod default)
##                                y to enable  (Archlinux default)
if [ -z ${use_tracers+x} ]; then
  use_tracers=n
fi

# Unique compiler supported upstream is GCC
## Choose between GCC and CLANG config (default is GCC)
## Use the environment variable "_compiler=clang"
if [ "${_compiler}" = "clang" ]; then
  _compiler_flags="CC=clang HOSTCC=clang LLVM=1 LLVM_IAS=1"
fi

# Choose between the 4 main configs for stable branch. Default x86-64-v1 which use CONFIG_GENERIC_CPU2:
# Possible values: config_x86-64-v1 (default) / config_x86-64-v2 / config_x86-64-v3 / config_x86-64-v4
# This will be overwritten by selecting any option in microarchitecture script
# Source files: https://github.com/xanmod/linux/tree/5.17/CONFIGS/xanmod/gcc
if [ -z ${_config+x} ]; then
  _config=config_x86-64-v1
fi

# Compress modules with ZSTD (to save disk space)
if [ -z ${_compress_modules+x} ]; then
  _compress_modules=n
fi

# Compile ONLY used modules to VASTLY reduce the number of modules built
# and the build time.
#
# To keep track of which modules are needed for your specific system/hardware,
# give module_db script a try: https://aur.archlinux.org/packages/modprobed-db
# This PKGBUILD read the database kept if it exists
#
# More at this wiki page ---> https://wiki.archlinux.org/index.php/Modprobed-db
if [ -z ${_localmodcfg} ]; then
  _localmodcfg=n
fi

# Tweak kernel options prior to a build via nconfig
if [ -z ${_makenconfig} ]; then
  _makenconfig=n
fi

Personally I'm running now xanmod kernel compiled with this:

env _microarchitecture=98 use_tracers=n use_numa=n _localmodcfg=y _compress_modules=y makepkg -sic

Also, you can now create the file myconfig in your local repo to build this package with a custom config or use ${XDG_CONFIG_HOME}/linux-xanmod/myconfig. This file can be a full kernel config or be a script with several entries to add/remove options (you have several examples in PKGBUILD by using scripts/config):

Code involved:

  for _myconfig in "${SRCDEST}/myconfig" "${HOME}/.config/linux-xanmod/myconfig" "${XDG_CONFIG_HOME}/linux-xanmod/myconfig" ; do
    if [ -f "${_myconfig}" ] && [ "$(wc -l <"${_myconfig}")" -gt "0" ]; then
      if grep -q 'scripts/config' "${_myconfig}"; then
        # myconfig is a partial file. Executing as a script
        msg2 "Applying myconfig..."
        bash -x "${_myconfig}"
      else
        # myconfig is a full config file. Replacing default .config
        msg2 "Using user CUSTOM config..."
        cp -f "${_myconfig}" .config
      fi
      echo
      break
    fi
  done

Latest Comments

« First ‹ Previous 1 .. 28 29 30 31 32 33 34 35 36 37 38 .. 52 Next › Last »

Netl0tUz commented on 2020-09-27 18:14 (UTC) (edited on 2020-09-27 18:28 (UTC) by Netl0tUz)

already tried with different build combination but i get this error every time,and system fails to boot. changing compression method didn't help either.

==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-linux-xanmod-fallback.img
==> WARNING: errors were encountered during the build. The image may not be complete.
error: command failed to execute correctly

jachymb commented on 2020-09-21 18:49 (UTC)

My build crashes.

The last couple lines are

patching file tools/testing/selftests/x86/test_vsyscall.c
patching file usr/Kconfig
patching file usr/Makefile
patching file virt/kvm/kvm_main.c
==> ERROR: A failure occurred in prepare().
    Aborting...

figue commented on 2020-09-21 13:16 (UTC) (edited on 2020-09-21 20:35 (UTC) by figue)

@mabod PDS is not merged to XanMod as far as I know. I will replace this setting by Cachy (CONFIG_CACHY_SCHED):

https://github.com/xanmod/linux/blob/5.8/Documentation/scheduler/sched-Cachy.rst

Edit: Cachy done.

mabod commented on 2020-09-21 08:39 (UTC) (edited on 2020-09-21 09:03 (UTC) by mabod)

I can not get PDS scheduler to be included.

I create the package with :

use_pds=y makepkg -f

it shows the output:

-> Enabling PDS CPU scheduler by default...

But the .config does not contain the CONFIG_SCHED_PDS option

28# grep PDS config.last
CONFIG_APDS9802ALS=m
CONFIG_SENSORS_APDS990X=m
CONFIG_APDS9300=m
CONFIG_APDS9960=m

figue commented on 2020-09-11 10:37 (UTC)

@Sourav you can compile this package using "env use_ns=y makepkg" or "env use_ns=no makepkg". See PKGBUILD for more information

Sourav commented on 2020-09-11 04:20 (UTC)

By default "CONFIG_USER_NS_UNPRIVILEGED" is disabled in this kernel. So Nautilus's thumbnailer won't work with bubblewrap. Follow here:

https://wiki.archlinux.org/index.php/GNOME/Files#Thumbnails

figue commented on 2020-09-07 21:21 (UTC)

@IsNoGood you have to import GPG key to verify the sources. Open a shell with the build user, and import it, for example:

$ gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 38DBBDC86092693E

IsNoGood commented on 2020-09-07 16:41 (UTC)

Get pgp verification error on build Building linux-xanmod... ==> Making package: linux-xanmod 5.8.6-1 (Пн 07 сен 2020 21:31:42) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Retrieving sources... -> Found linux-5.8.tar.xz -> Found linux-5.8.tar.sign -> Found patch-5.8.6-xanmod1.xz -> Found choose-gcc-optimization.sh -> Found 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-CLONE_NEWUSER.patch ==> Validating source files with sha256sums... linux-5.8.tar.xz ... Passed linux-5.8.tar.sign ... Skipped patch-5.8.6-xanmod1.xz ... Passed choose-gcc-optimization.sh ... Passed 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-CLONE_NEWUSER.patch ... Passed ==> Verifying source file signatures with gpg... linux-5.8.tar ... FAILED (unknown public key 38DBBDC86092693E) ==> ERROR: One or more PGP signatures could not be verified! Failed to build linux-xanmod

figue commented on 2020-09-04 19:00 (UTC)

@rdslw done 7d26f7d99bc6

rdslw commented on 2020-09-04 16:56 (UTC)

yeah @figue, "5.8.5-xanmod1-1" would be perfect.

I'm not sure how PKGBASE being for now "linux-xanmod" during prep phase, later translates in adding just 'xanmod' inside of "5.8.5-xanmod1-xanmod-1", but if this change results in 5.8.5-xanmod1-1 I think would be perfect :)