lucianodato / noise-repellent

Lv2 suite of plugins for broadband noise reduction
GNU Lesser General Public License v3.0
463 stars 39 forks source link

0.1.5 installs files into a wrong place #68

Closed yurivict closed 4 years ago

yurivict commented 4 years ago

Was correct:

lib/lv2/nrepel.lv2/manifest.ttl
lib/lv2/nrepel.lv2/nrepel.so
lib/lv2/nrepel.lv2/nrepel.ttl

Now wrong:

nrepel.lv2/manifest.ttl
nrepel.lv2/nrepel.so
nrepel.lv2/nrepel.ttl
dvzrv commented 4 years ago

I think install_folder should be lib/lv2/nrepel.lv2: https://github.com/lucianodato/noise-repellent/blob/master/meson.build#L24

dvzrv commented 4 years ago

That being said: prefix should not be used to populate the entire path for the library, but only e.g. /usr (and defaults to /usr/local).

Depending on operating system, it is possible to set the correct install_folder and adhere to prefix.

lucianodato commented 4 years ago

Can I leave setting prefix locations up to packagers? I mean for normal users I am giving the binary now, It's a simple drag and drop operation to install it

yurivict commented 4 years ago

All other LV2 plugins install into proper locations. The location is pretty much standard. noise-repellant was also installing into the right location before the last release.

lucianodato commented 4 years ago

I'm not really following what you need there. I've removed install scripts since that's not needed anymore for users, you can download the binary directly. Now if you are a packager and need to create a package I provide instructions in the README file. In your case you should do the following:

git clone https://github.com/lucianodato/noise-repellent.git
cd noise-repellent
meson build --buildtype release --prefix /lib/lv2/
ninja -v -C build
sudo ninja -C build install

If this is not what you are referring to please let me know and I can happily modify it.

yurivict commented 4 years ago

It installs into a wrong folder:

$ make makeplist
nrepel.lv2/manifest.ttl
nrepel.lv2/nrepel.so
nrepel.lv2/nrepel.ttl

The previous version installed into:

lib/lv2/nrepel.lv2/manifest.ttl
lib/lv2/nrepel.lv2/nrepel.so
lib/lv2/nrepel.lv2/nrepel.ttl

All plugin hosts, like Carla, look in lib/lv2. If I just let the port to install the files that your package installs nobody would ever be able to use them. Why do we need a port that nobody could ever use?

Why did you have to drop lib/lv2/ from the file locations?

lucianodato commented 4 years ago

I didn't do the port for freebsd I'm the author of the software but not the package. Would it be useful if I generate binaries for freebsd?

yurivict commented 4 years ago

Would it be useful if I generate binaries for freebsd?

No. Packages are built from the port.

lucianodato commented 4 years ago

Ok do you know whom to talk or how can I solve it? Maybe a link to see what they did with the port. I want to help you here.

yurivict commented 4 years ago

Here are examples of LV2 plugins that properly install themselves:

lucianodato commented 4 years ago

Ok I'll take a look tomorrow and let you know.

lucianodato commented 4 years ago

@yurivict Sorry for the delay. Can you try the latest master? Should be good now.

yurivict commented 4 years ago

Thank you for fixing it.