Package Details: linux-xanmod 6.7.6-1

Git Clone URL: (read-only, click to copy)
Package Base: linux-xanmod
Description: The Linux kernel and modules with Xanmod patches
Upstream URL:
Licenses: GPL2
Replaces: virtualbox-guest-modules-arch, wireguard-arch
Submitter: Yoshi2889
Maintainer: figue (figuepluto, jfigueras)
Last Packager: figue
Votes: 127
Popularity: 1.92
First Submitted: 2017-02-14 09:40 (UTC)
Last Updated: 2024-02-23 18:20 (UTC)

Dependencies (14)

Required by (5)

Sources (4)

Pinned Comments

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 '' 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

## 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

## 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

# 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"

# 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:
if [ -z ${_config+x} ]; then

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

# 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:
# This PKGBUILD read the database kept if it exists
# More at this wiki page --->
if [ -z ${_localmodcfg} ]; then

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

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}"
        # myconfig is a full config file. Replacing default .config
        msg2 "Using user CUSTOM config..."
        cp -f "${_myconfig}" .config

Latest Comments

1 2 3 4 5 6 .. 50 Next › Last »

b0o commented on 2024-02-19 21:00 (UTC)

Anyone know why my MAKEFLAGS from /etc/makepkg.conf isn't seeming to affect compilation of this package? It's always using all of my threads.

MAKEFLAGS="-j12" # only use 12/32 threads so system is still usable

figue commented on 2024-01-14 16:03 (UTC)

@xiota thank you.

  1. Will be merged in next release.

  2. Headers package doesn't need it IMHO.

xiota commented on 2024-01-14 14:41 (UTC) (edited on 2024-01-14 14:44 (UTC) by xiota)

In following code block, python should be removed because it is already in the main makedepends:

if [ "${_compiler}" = "clang" ]; then
  makedepends+=(clang llvm lld python)

Also, may be worthwhile to add following to _package-headers() because dkms modules need the compiler originally used to make the kernel, but dkms depends on gcc only.

if [ "${_compiler}" = "clang" ]; then
  depends+=(clang llvm lld)

Same apply to linux-xanmod-lts. They can wait until the next version bump.

xpamych commented on 2023-12-11 17:12 (UTC)

I'm sorry, my stupidity, there wasn't enough disk space

figue commented on 2023-12-11 16:18 (UTC)

@xpamych the key issues in AUR are "typical" if you build with makepkg. You need to import them as described here:

About the issue compiling with clang: can you try with gcc and see if the problem persist?

xpamych commented on 2023-12-11 13:12 (UTC) (edited on 2023-12-11 14:08 (UTC) by xpamych)

I get an error when compiling, export _microarchitecture=99 use_numa=n use_tracers=n _compiler=clang && makepkg -sric:

LD [M]  drivers/gpu/drm/amd/amdgpu/amdgpu.o
make[6]: *** [scripts/ drivers/gpu/drm/amd/amdgpu/amdgpu.o] Ошибка 135
make[5]: *** [scripts/ drivers/gpu/drm/amd/amdgpu] Ошибка 2
make[4]: *** [scripts/ drivers/gpu/drm] Ошибка 2
make[3]: *** [scripts/ drivers/gpu] Ошибка 2
make[2]: *** [scripts/ drivers] Ошибка 2
make[1]: *** [/tmp/linux-xanmod/src/linux-6.6/Makefile:2068: .] Ошибка 2
make: *** [Makefile:234: __sub-make] Ошибка 2
==> ОШИБКА: Произошел сбой в build().

when installing from aur without parameters, there is a problem with the key

==> ВНИМАНИЕ: Пропуск проверки PGP-подписей исходных файлов.
==> Проверка файлов source с использованием sha256sums...
    linux-6.6.tar.xz ... Готово
    linux-6.6.tar.sign ... Пропущено
    patch-6.6.5-xanmod1.xz ... Готово ... Готово
:: (1/1) Анализ SRCINFO: linux-xanmod
gpg: error reading key: Нет открытого ключа
pub   rsa4096 2011-09-23 [SC]
uid         [ неизвестно ] Greg Kroah-Hartman <>
uid         [ неизвестно ] Greg Kroah-Hartman <>
uid         [ неизвестно ] Greg Kroah-Hartman (Linux kernel stable release signing key) <>
sub   rsa4096 2011-09-23 [E]

 :: Ключи PGP, требующие импорта:
 -> ABAF11C65A2970B130ABE3C479BE3E4300411886, требуется пакету: linux-xanmod
:: Импортировать? [Y/n] 
:: Импортирование ключей с помощью gpg...
gpg: сбой при получении с сервера ключей: Нет данных
 -> проблема импортирования ключей

daemonspudguy commented on 2023-12-10 23:10 (UTC)

I got it to compile, using Dracut.

daemonspudguy commented on 2023-12-10 22:56 (UTC) (edited on 2023-12-10 22:56 (UTC) by daemonspudguy)

@figue do you use an AMD GPU? Because I do.

figue commented on 2023-11-25 19:04 (UTC)

@daemonspudguy yes, this, edge and binary.

daemonspudguy commented on 2023-11-25 15:27 (UTC)

That has the same error. Can you do a mkinitcpio with XanMod right now?