Package Details: linux-xanmod-headers 5.10.7-1

Git Clone URL: https://aur.archlinux.org/linux-xanmod.git (read-only, click to copy)
Package Base: linux-xanmod
Description: Header files and scripts for building modules for Xanmod Linux kernel
Upstream URL: http://www.xanmod.org/
Licenses: GPL2
Submitter: Yoshi2889
Maintainer: figue (figuepluto, jfigueras)
Last Packager: figue
Votes: 62
Popularity: 3.72
First Submitted: 2017-02-14 09:40
Last Updated: 2021-01-13 08:22

Pinned Comments

figue commented on 2018-12-14 00:50

Please, check new release. You have now several variables to enable/disable features.

References:

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

## For performance you can disable FUNCTION_TRACER/GRAPH_TRACER. Limits debugging and analyzing of the kernel.
## Stock Archlinux and Xanmod have this enabled. 
## Set variable "use_tracers" to: n to disable (possibly increase performance)
##                                y to enable  (stock default)
if [ -z ${use_tracers+x} ]; then
  use_tracers=y
fi

## Enable Cachy CPU scheduler by default https://github.com/xanmod/linux/blob/5.8/Documentation/scheduler/sched-Cachy.rst
## Set variable "use_cachy" to: n to disable (stock Xanmod)
##                              y to enable
if [ -z ${use_cachy+x} ]; then
  use_cachy=n
fi

## Enable CONFIG_USER_NS_UNPRIVILEGED flag https://aur.archlinux.org/cgit/aur.git/tree/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch?h=linux-ck
## Set variable "use_ns" to: n to disable (stock Xanmod)
##                           y to enable (stock Archlinux)
if [ -z ${use_ns+x} ]; then
  use_ns=n
fi

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

env use_tracers=n use_numa=n use_cachy=y use_ns=y makepkg -si

Also, you can now put a file in your local repo to build this package with a custom config. You have to call this file myconfig.

Reference:

  # Put the file "myconfig" at the package folder to use this feature
  if [ -f "${startdir}/myconfig" ]; then
    msg2 "Using user CUSTOM config..."
    cp -f "${startdir}"/myconfig .config
  fi

Latest Comments

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

figue commented on 2021-01-15 09:15

@Teddo IDK about pikaur... Use regular git clone and makepkg to build the package and we see where is the issue.

Teddo commented on 2021-01-15 08:12

@figue I don't know. I'm using pikaur and I can install other packages

figue commented on 2021-01-14 12:54

@Singularity great! If nobody has any objection, I'll implement it in all xanmod packages I maintain. Thank you!

Answering your question, "myconfig" idea was born here, in XanMod's AUR package as far as I know and implemented only here by myself... But I don't know if others have taken this idea for their packages too.

Singularity commented on 2021-01-14 12:37

@figue Good idea, and it works. I adjusted it a bit farther:


-        if echo "$_linec" | grep "scripts/config" ; then
-          set -- $_linec
-          "$@"
+        if echo "$_linec" | grep -e "scripts/config" -e "^#" ; then
+          bash -c '$_linec'

Example config (but nothing special here):


scripts/config --enable  CONFIG_SATA_AHCI
scripts/config --module  CONFIG_ASHMEM
scripts/config --enable  "CONFIG_ANDROID_BINDER_IPC"
# Btw, scripts/config will use by default CONFIG_ as prefix
scripts/config --enable  ANDROID_BINDERFS
scripts/config --set-str CONFIG_ANDROID_BINDER_DEVICES ''
   # leading / trailing whitespaces are trimmed by bash due to the IFS, so that line is matched by grep ^# too

Btw, are there other packages which also allow for a "myconfig"?

figue commented on 2021-01-13 17:50

@Teddo ??? maybe some odd issue with AUR? This package is working fine.

Teddo commented on 2021-01-13 15:09

I can't download the package. fatal: branch name not valid: init.defaultBranch =

figue commented on 2021-01-11 18:50

@Singularity can you upload myconfig somewhere?

Edit: you can try to execute directly myconfig as a script:

Maybe something like this?

--- PKGBUILD    2021-01-09 23:54:32.306194466 +0100
+++ /tmp/PKGBUILD   2021-01-12 00:01:05.930930894 +0100
@@ -182,15 +182,8 @@
       cp -f "${startdir}"/myconfig .config
     else
       # myconfig is a partial file. Applying every line
-      msg2 "Applying configs..."
-      cat "${startdir}"/myconfig | while read -r _linec ; do
-        if echo "$_linec" | grep "scripts/config" ; then
-          set -- $_linec
-          "$@"
-        else
-          warning "Line format incorrect, ignoring..."
-        fi
-      done
+      msg2 "Applying configs as a script..."
+      sh "${startdir}"/myconfig
     fi
     echo
   fi

Singularity commented on 2021-01-11 17:53

@figue Thanks. Didn't make a difference. I also tried the shell built-in "command". I'm think that it happens already at the time of reading the file.

figue commented on 2021-01-10 22:00

@Singularity it seems that bash parse this line as:

scripts/config --set-str CONFIG_ANDROID_BINDER_DEVICES '""'

and then scripts/config doesn't like it...

Can you try to modify PKGBUILD and add the following line:

set -- scripts/config

before this?

set -- $_linec

So the final code will be:

      cat "${startdir}"/myconfig | while read -r _linec ; do
        if echo "$_linec" | grep "scripts/config" ; then
          set -- scripts/config
          set -- $_linec
          "$@"
        else
          warning "Line format incorrect, ignoring..."
        fi
      done

figue commented on 2021-01-10 21:36

@MithicSpirit I don't use Grub since 0.97... So I don't know. If you know the way, I can modify the sources. Anyway, this package is based on linux in core/linux