Thanks Tobia, > You're not matching numbers here: ‘number’ is your chosen variable name, not > magic. It could be ‘foo’. It could be anything, without changing the effect > of this code. > > > ((option . string) > > (string-append option "=\\"" string > > > "\\""))) > > > > This will never be reached. > > I'm almost certain that this is, at least in part, why your BINDER > configuration isn't taking effect. > > Here's mine: > > (define option->string > > (match-lambda ((option . #f) > > (format #f "# ~a is not set" option)) > > ((option . #t) > > (format #f "~a=y" option)) > > ((option . 'm) > > (format #f "~a=m" option)) > > ((option . (? number? value)) > > (format #f "~a=~a" option value)) > > ((option . (? string? value)) > > (format #f "~a=\"~a\"" option value)))) > > Kind regards, > > T G-R
I took your changes and applied them to the code: (define (config->string options) (string-join (map (match-lambda ((option . #f) (format #f "# ~a is not set" option)) ((option . #t) (format #f "~a=y" option)) ((option . 'm) (format #f "~a=m" option)) ((option . (? number? value)) (format #f "~a=~a" option value)) ((option . (? string? value)) (format #f "~a=\"~a\"" option value))) options) "\n")) However, the CONFIG_ANDROID_BINDER_IPC is still not part of the config :-/ $ grep BINDER .config # CONFIG_ANDROID_BINDER_IPC is not set The Guix part of generating the code is fine though. Thanks. So I digged little deeper and it seems that they have to be compiled into the kernel. $ tar xf $(guix build linux-libre --source) $ cd linux-5.14.17 $ guix environment linux --ad-hoc ncurses pkg-config -- make MENUCONFIG_COLOR=mono menuconfig $ grep ANDROID .config CONFIG_ANDROID=y CONFIG_ANDROID_BINDER_IPC=y CONFIG_ANDROID_BINDERFS=y CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder" # CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set Though the issue seems to come from the Archlinux Wiki[1] where they supply wrong CONFIG options. Kind regards Petr [1] https://wiki.archlinux.org/title/Waydroid