Saturday, 2026-03-28

T42<nc1x72> I take it back, the droid-system package is not incomplete. LineageOS 21 vendor image simply doesn’t have audio.primary.lahaina.so in lib64/hw. Only in lib/hw (32 bit). Which is weird. However, fp5 lineageos 21 vendor has it in both lib|lib64/hw. On stock vendor for spacewar, lib64/hw also has lib64/hw/audio.primary.lahaina.so06:25
T42<nc1x72> strace logs : https://hasteb.in/4qSKBt2Ub3X5EgZ09:10
T42<elros34> err according to hadk-hot: "Take a look at /usr/lib/systemd/user/pulseaudio.service and /etc/sysconfig/pulseaudio and make sure you run it as user." Also do not remove command prompt because right know nobody knows how do you start it: as user or root. If your intention was to check whether hidl is used then use 'strace -f -e file'10:22
*** amccarthy is now known as Guest604911:31
*** amccarthy_ is now known as amccarthy11:31
*** xmn_ is now known as xmn15:23
T42<nc1x72> I didn't pay attention to the command prompt when copying the output. Running pulseaudion with -vvv command shows it tries to load the libs from /vendor/lib/hw.20:20
T42<nc1x72> 20:20
T42<nc1x72> By the way, what's the use of this "sink_format=s24le" in https://github.com/mlehtima/droid-config-fp5/blob/master/sparse/etc/pulse/arm_droid_card_custom.pa ?20:20
T42<nc1x72> 20:20
T42<nc1x72> Is it relevant anyhow?20:20
maldid you have proper env var when starting pulseaudio from terminal?20:21
malHYBRIS_USE_VENDOR_NAMESPACE=yes20:22
T42<nc1x72> Yes20:22
malyou can find out the correct format audio policy configuration xml in /vendor/etc/20:22
T42<nc1x72> I have HYBRIS_USE_VENDOR_NAMESPACE=yes set in /etc/sysconfig/pulseaudio file20:27
T42<nc1x72> 20:27
T42<nc1x72> Checking the xml for the correct format now20:27
malI mean how do you start pulseaudio from terminal? show the whole command you use20:27
T42<nc1x72> https://paste.opensuse.org/pastes/762abca2cd1420:34
T42<nc1x72> Command + full log20:34
T42<adampigg> probably the XML uses an unsuppored separator in values, in the past ive had to bind-mount over an edit that changes space to , or vice-versa.... need to check...20:42
T42<adampigg> though, i think there is a pa-modules-droid that supports the new format20:42
mal@nc1x72 for testing check /vendor/etc/audio_policy_configuration.xml and if it has line with bluetooth_qti_hearing_aid_audio_policy_configuration.xml then comment out the line20:45
malcommenting out a line in xml is done with <!-- something -->20:45
malalso did you actually export the env var somehow?20:46
malI would suggest you prepend the pulseaudio command with HYBRIS_USE_VENDOR_NAMESPACE=yes when you run it from terminal20:46
T42<adampigg> can you paste that file?20:47
mal@adampigg the error in quite clear in the log, it fails to find that file20:47
T42<adampigg> ah, was looking at all the other warnings20:49
T42<nc1x72> Ok I commented out that line and run it with HYBRIS_USE_VENDOR_NAMESPACE=yes20:55
T42<nc1x72> 20:55
T42<nc1x72> Getting new type of error about namespace I believe20:55
T42<nc1x72> 20:55
T42<nc1x72> https://paste.opensuse.org/pastes/6b7be0589bb320:55
malcan you show the audio_policy_configuration.xml20:58
T42<nc1x72> https://paste.opensuse.org/pastes/5a9285c4ff7721:00
malwhat do you have in arm_droid_card_custom.pa now?21:00
T42<nc1x72> [defaultuser@phone1 ~]$ cat /etc/pulse/arm_droid_card_custom.pa21:01
T42<nc1x72> load-module module-droid-card rate=48000 unload_call_exit=true21:01
T42<nc1x72> load-module module-udev-detect21:01
T42<nc1x72> [defaultuser@phone1 ~]$21:01
malok21:02
maldoes it fail if you try without HYBRIS_USE_VENDOR_NAMESPACE=yes21:06
T42<nc1x72> No, but this line "library "/usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so" needed or dlopened by "/usr/libexec/droid-hybris/system/lib64/libvndksupport.so" is not accessible for the namespace "(default)"" doesn't show in the output21:07
malhmm21:08
T42<nc1x72> Sorry21:08
malshow the file ned by "/usr/libexec/droid-hybris/system/lib64/libvndksupport.so" is not accessible for the namespace "(default)"21:08
T42<nc1x72> It's here21:08
mallibrary "/usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so" ("/usr/libexec/droid-hybris/system/lib64/hw/audio.hidl_compat.default.so") needed or dlopened by "/usr/libexec/droid-hybris/system/lib64/libvndksupport.so" is not accessible for the namespace: [name="(default)", ld_library_paths="/usr/libexec/droid-hybris/system/lib64:/system/lib64:/vendor/lib64",21:08
T42<nc1x72> Just different21:08
maldefault_library_paths="/vendor/lib64:/vendor/lib64/hw:/vendor/lib64/egl", permitted_paths="/odm:/vendor:/system/vendor"]21:08
maloops21:08
mal/vendor/etc/audio/audio_policy_configuration.xml21:08
T42<nc1x72> Running it without, I get this : "library "/usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so" needed or dlopened by "/usr/libexec/droid-hybris/system/lib64/libvndksupport.so" is not accessible for the namespace "sphal""21:09
malshow that  /vendor/etc/audio/audio_policy_configuration.xml21:12
malI'm a bit confused, I checked that droid-system repo you have in your github project and it doesn't match what showed me now21:12
malthat one https://github.com/SailfishOSSpacewar/droid-system-Spacewar/tree/main21:12
T42<nc1x72> Yes I tried using the policy configuration that worked on UT when I had audio issue. I will reflash if that was a bad move.21:15
maljust copy back the original from that repo21:16
malI assume you copied it to /vendor/etc/audio_policy_configuration.xml ?21:16
malor also to /vendor/etc/audio/audio_policy_configuration.xml21:16
Mister_Magistermal: you doing good?21:17
malanyway just copy the files from your repo and remove the wrong one, your repo only has /vendor/etc/audio/audio_policy_configuration.xml21:17
malMister_Magister: ?21:17
Mister_MagisterJust asking about a wellbeing of an aquintance :)21:18
Mister_Magisterwe've been talking on this channel for over a decade now so maybe even fren <321:18
T42<nc1x72> Yes, in /vendor/etc/audio too. Along with other xml files. I also copied audio.primary.lahaina.so from stock firmware over to /vendor/lib64/hw/ because LineageOS vendor image doesn't have it (only in /vendor/lib/hw).21:19
mal@nc1x72 you should not need to copy audio hal21:20
T42<nc1x72> Ok then. I just found it a bit strange21:21
T42<nc1x72> Reflashing rootfs now21:21
malsince we use the hidl_compat which doesn't care if device uses 32-bit or 64-bit hal21:21
malMister_Magister: ok-ish, too many things to do21:22
Mister_Magisterahh that's the classic :D21:22
T42<nc1x72> OK. Reflashed now. Everything is as it's on git repos.21:34
malcheck the /etc/pulse/arm_droid_card_custom.pa first, then make sure the symlink is in /usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so21:35
T42<nc1x72> ```21:40
T42<nc1x72> [defaultuser@phone1 ~]$ cat /etc/pulse/arm_droid_card_custom.pa21:40
T42<nc1x72> load-module module-droid-card sink_format=s24le rate=48000 unload_call_exit=true21:40
T42<nc1x72> load-module module-udev-detect21:40
T42<nc1x72> [defaultuser@phone1 ~]$ ls -l /usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so21:40
T42<nc1x72> lrwxrwxrwx    1 root     root            28 Mar 21 05:35 /usr/libexec/droid-hybris/system/lib64/hw/audio.primary.lahaina.so -> audio.hidl_compat.default.so21:40
T42<nc1x72> [defaultuser@phone1 ~]$ ls -l /usr/libexec/droid-hybris/system/lib64/hw/21:40
T42<nc1x72> total 2821:40
T42<nc1x72> -rw-r--r--    1 root     root         24600 Mar 20 01:19 audio.hidl_compat.default.so21:40
T42<nc1x72> lrwxrwxrwx    1 root     root            28 Mar 21 05:35 audio.primary.lahaina.so -> audio.hidl_compat.default.so21:40
T42<nc1x72> [defaultuser@phone1 ~]$```21:40
T42<nc1x72> The symlink is OK21:40
malremove that sink_format=s24le21:42
malthen try running pulseaudio from terminal like before21:46
T42<nc1x72> https://paste.opensuse.org/pastes/3a368a456a0a21:48
T42<nc1x72> 21:48
T42<nc1x72> Now it crashes21:48
malshow content of /sys/class/sound/card0/id and /lib/udev/rules.d/99-pulseaudio-ignore-builtin-card.rules21:50
malalso it seems that it still failed to load that droid module21:50
malalso you again didn't add HYBRIS_USE_VENDOR_NAMESPACE=yes21:51
T42<nc1x72> I did, it just crashed the same way21:52
T42<nc1x72> [defaultuser@phone1 ~]$ cat /sys/class/sound/card0/id21:52
T42<nc1x72> lahainayupikqrd21:52
T42<nc1x72> 21:52
T42<nc1x72> [defaultuser@phone1 ~]$ cat /lib/udev/rules.d/99-pulseaudio-ignore-builtin-card.rules21:52
T42<nc1x72> KERNEL=="card0", SUBSYSTEM=="sound", ATTR{id}=="lahainayupikidp", ENV{PULSE_IGNORE}="1"21:52
T42<nc1x72> [defaultuser@phone1 ~]$21:52
malyou need to fix that 99-pulseaudio-ignore-builtin-card.rules, the id part needs to be that one from /sys/class/sound/card0/id21:53
malok, it seems some change is missing from adaptation side, I had hacked in different way21:57
T42<nc1x72> Done. Still crashes with the same error (droid module not loaded). What if I pass /etc/pulse/arm_droid_card_custom.pa to the command directly?21:59
malneeds some changes, a moment21:59
malin hybris-hal part21:59
T42<nc1x72> Ok21:59
malin couple of places22:00
malfirst go to hybris-patches folder in ANDROID_ROOT in your build environment22:07
malthen run "repo sync hybris-patches"22:08
T42<nc1x72> Ok. So, need to rebuild everything afterward?22:08
malthen build hybris-hal22:10
malbut you need more changes before packaging droid-hal rpm again22:10
malwait22:10
malbefore you build hybris-hal you need to apply some patches22:11
malgo to system/linkerconfig and there run "git am ../../hybris-patches/system/linkerconfig/*"22:11
malthen back to ANDROID_ROOT and the to system/core folder and there run "git am ../../hybris-patches/system/core/0043*.patch"22:12
malthen build hybris-hal22:16
T42<nc1x72> Alright. I'll do that and let you know. Thank you for all your help, mal. Much appreciated22:22
malbefore packaging droid-hal go to folder rpm/dhd and there run "git fetch origin" and then "git checkout linkerconfig"22:23
maland before building new image fix the needed things in droid-config repo, the udev rule at least22:24
maland of course rebuild droid-config packages after fixing that22:24
maland also before doing that fix arm_droid_card_custom.pa22:25
T42<nc1x72> Made the changes regarding udev rule and arm_droid_card_custom.pa for now22:39
T42<nc1x72> Rebuilding22:39

Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!