How to modify ncspot AUR package with alsa backend support2020-08-24
How to modify ncspot AUR package with alsa-backend support
Update 2020-08-25: I suggested to the maintainer some changes to avoid this post. I hope he accepts. More details here
English is not my mother tongue and I will make grammar mistakes for sure. In any way I hope you forgive me for that. If you think I am making a mistake you should contact me here
Hello, I want to say I hate Pulseaudio. It is not personal. It is just when Pulseaudio works it is amazing but when it does not it could be something like a nightmare. So I decided to uninstall pulseaudio from my computer.
However when I tried to use ncspot, previously installed from AUR, it did not work because it was compiled with pulseaudio by default.
So I will show you, which parts from the ncspot AUR package you should modify to use Alsa instead of Pulseaudio.
I tried this process in Artixlinux but It should work in ArchLinux or any Arch based distro.
Clone the package from AUR.
git clone https://aur.archlinux.org/ncspot.git
Edit the PKGBUILD file.
Change the line cargo build --release --locked for cargo build --release --no-default-features --features share_clipboard,alsa_backend,mpris,cursive/pancurses-backend --locked
Change the line cargo test --release --locked for cargo test --release --no-default-features --features share_clipboard,alsa_backend,mpris,cursive/pancurses-backend --locked
Save the file.
What the fuck! Explain yourself!!
Yes, you are right and I don’t like to write without explaining what is going on.
If you read the file “config.toml” you will find what are the default settings when you compile:
[features] share_clipboard = ["clipboard"] alsa_backend = ["librespot-playback/alsa-backend"] pulseaudio_backend = ["librespot-playback/pulseaudio-backend"] rodio_backend = ["librespot-playback/rodio-backend"] portaudio_backend = ["librespot-playback/portaudio-backend"] termion_backend = ["cursive/termion-backend"] mpris = ["dbus"] default = ["share_clipboard", "pulseaudio_backend", "mpris", "cursive/pancurses-backend"]
I want to highlight “default” and “pulseaudio-backend”. That is mean ncspot will compile with pulseaudio by default. I tried to change the “pulseaudio_backend” with “alsa_backend” in the “config.toml” and I compile but it did not work in my case. So, I decided to change the PKGBUILD.
If you see cargo manual the argument “--no-default-features” ignores default features and the “--features” argument allows me to choose the features I want. In short words I changed “pulseaudio_backend” with “alsa_backend”.
Pulseaudio sucks. I am joking, I do not have conclusions at all. I just want to thanks ncspot community because they have alsa support. I want to thank alevalv too for maintaining the package in AUR.
Switched to ArtixLinux, I am sharing my personal experience Next Why I recommend using Searx?