Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to add guitarix plugins #3

Open
buscon opened this issue Jun 29, 2020 · 18 comments
Open

How to add guitarix plugins #3

buscon opened this issue Jun 29, 2020 · 18 comments

Comments

@buscon
Copy link

buscon commented Jun 29, 2020

hi,

I tried to add the guitarix plugins with the following step:

  1. adding an extra install_mod-gx.sh
    cd $ZYNTHIAN_PLUGINS_SRC_DIR
    git clone https://github.com/brummer10/guitarix
    cd guitarix/trunk/
    ./waf configure --lv2dir=$ZYNTHIAN_PLUGINS_DIR/lv2
    ./waf build
    ./waf -j1 install
    ./waf clean
    cd ..

  2. in the Docker file I added these lines before postinstall_mod-lv2-data.sh

COPY ./install_mod-gx.sh /home/moduser/install_mod-gx.sh
RUN /home/moduser/install_mod-gx.sh

but when I run the docker (from scratch), no guitarix plugins appear in the mod-ui.
any suggestion on how to do that?

T

@guysoft
Copy link
Owner

guysoft commented Jun 29, 2020

Can you provide by any chance a full `Dockerfile`` and install_mod-gx.sh so I can build and test?
I can't really reproduce otherwise.

@buscon
Copy link
Author

buscon commented Jun 29, 2020

sure, here are the two files

mod-ui-docker-guitarix.tar.gz

@buscon
Copy link
Author

buscon commented Jul 3, 2020

hi,

did you have any luck in reproducing the issue?

@guysoft
Copy link
Owner

guysoft commented Jul 3, 2020 via email

@buscon
Copy link
Author

buscon commented Jul 3, 2020

great, thanks a lot!

@guysoft
Copy link
Owner

guysoft commented Jul 5, 2020

You have two issues which show you are not actually building, please take a close look at the script next time.

moduser@a5fcbefcb6a6:~/src-mod-plugins/guitarix/trunk$ ./waf configure --lv2dir=$ZYNTHIAN_PLUGINS_DIR/lv2
Setting top to                           : /home/moduser/src-mod-plugins/guitarix/trunk 
Setting out to                           : /home/moduser/src-mod-plugins/guitarix/trunk/build 
Checking for program 'msgfmt'            : not found 
Could not find the program ['msgfmt']
(complete log in /home/moduser/src-mod-plugins/guitarix/trunk/build/config.log)

You also get after fixing it:

Checking for program 'intltool-merge'    : not found 
Checking for 'sndfile'                   : not found 
Checking for 'libcurl'                   : not found
Checking for font RobotoCondensed        : not found 
Checking for program 'sassc'             : not found

And many many more

You are missing the build deps

fix is to add (And I hope I got them all):

ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
    intltool \
    gettext \
    libsndfile1-dev \
    libglibmm-2.4-dev \
    libfftw3-dev \
    libcurl4-openssl-dev \
    sassc \
    fonts-roboto \
    libgtk-3-dev \
    gtkmm-3.0-dev \
    ladspa-sdk \
    liblrdf0-dev \
    libboost-system-dev \
    libboost-iostreams-dev \
    libzita-convolver-dev \
    libzita-resampler-dev \
    gperf \
    faust \
    avahi-gobject \
    bluez \
    liblo-dev 
    libeigen3-dev \
  && rm -rf /var/lib/apt/lists/* \
  && apt -qyy clean

Only then run the configure
2.
The install command of guitarix is using update-desktop-database which does not exist, bypass with:

RUN echo '#!/bin/bash' > /usr/bin/update-desktop-database
RUN chmod 777 /usr/bin/update-desktop-database

Also, please post a decent fork of what you are doing. It not straightforward to download clone this repo and then extract over it the zip. Also a build log would have captured this sooner.

The graphics of the pedals is also not there:
Screenshot_20200705_221006

@buscon
Copy link
Author

buscon commented Jul 6, 2020

thanks for your feedback!

I did a fork of your repo and added the edits you suggested here but it did not work.
Can you have a look at my fork and tell me what it is missing or wrong?
https://github.com/buscon/mod-ui-docker

Thanks!

@guysoft
Copy link
Owner

guysoft commented Jul 6, 2020

Yes , you pasted the docker commands in the bash script and not in to the Dockerfile.

Please read: https://linuxhint.com/understand_dockerfile/

@buscon
Copy link
Author

buscon commented Jul 7, 2020

ok, thanks, I got confused.
Now I put the commands in the Dockerfile, still guitarix does not show up.
can you have a look?

@guysoft
Copy link
Owner

guysoft commented Jul 7, 2020

Please post your full build log.

@buscon
Copy link
Author

buscon commented Jul 7, 2020

ok, do you mean this?

$ docker run -p 8888:8888 --user=1000 -v /dev/snd:/dev/snd:rw -v /dev/shm:/dev/shm:rw -v mod-ui-data:/home/moduser/mod-ui/data guysoft/mod-ui
Unable to find image 'guysoft/mod-ui:latest' locally
latest: Pulling from guysoft/mod-ui
f476d66f5408: Pull complete
8882c27f669e: Pull complete
d9af21273955: Pull complete
f5029279ec12: Pull complete
fc5ad4b2f66a: Pull complete
92221514a2c6: Pull complete
7dc5d0714a15: Pull complete
8043b5af7d7a: Pull complete
b9de679acaeb: Pull complete
fdafc0ca6676: Pull complete
143f3bc76a63: Pull complete
ff8686dd207c: Pull complete
0d566ea84b4e: Pull complete
3c4e00841e6b: Pull complete
b590129a7429: Pull complete
a3162504be4a: Pull complete
3e7e0a3b920d: Pull complete
f29f85948639: Pull complete
ec4e023a792e: Pull complete
6a7e83e81c5e: Pull complete
ecb9ecb2b811: Pull complete
555fe2b69fae: Pull complete
ca1510bc5baf: Pull complete
6ca57ac51d4c: Pull complete
add7fd4bd79b: Pull complete
edf0db93cd55: Pull complete
384775077d12: Pull complete
dd0eb62a8cb7: Pull complete
996169f730b4: Pull complete
f750d010543e: Pull complete
Digest: sha256:067668ee5c60446b9e09bb040a346a01e1c8aaecf1de71cdce38f783915e9695
Status: Downloaded newer image for guysoft/mod-ui:latest
~/mod-ui ~

@guysoft
Copy link
Owner

guysoft commented Jul 7, 2020

Dude, you are not even building it.
You need to use docker-compose-build.yml

sudo docker-compose -f docker-compose-build.yml build

That log.

Then run it with
sudo docker-compose -f docker-compose-build.yml up -d.

It sees you never actually did any docker-compose builds. I can help you so much. Other than that you will need to use guides to understand how to use it. Since I can't support understanding how to use docker.

@buscon
Copy link
Author

buscon commented Jul 7, 2020

ok, thanks for the explanation I installed docker-compose, now I understand what you meant with build.

I now get two errors, both seem to be related to permissions. I am on linux mint.
I did run the composer as sudo, but I guess the docker user does not have the permission to do that?
or why do I get such errors?

thanks!

  1. creating the update-desktop-database does not work
    Step 40/50 : RUN echo '#!/bin/bash' > /usr/bin/update-desktop-database ---> Running in 48451193cffb /bin/sh: 1: cannot create /usr/bin/update-desktop-database: Permission denied ERROR: Service 'mod-ui' failed to build: The command '/bin/sh -c echo '#!/bin/bash' > /usr/bin/update-desktop-database' returned a non-zero code: 2

  2. apt does not work either:
    Step 41/48 : RUN apt-get update && apt-get install -y --no-install-recommends intltool gettext libsndfile1-dev libglibmm-2.4-dev libfftw3-dev libcurl4-openssl-dev sassc fonts-roboto libgtk-3-dev gtkmm-3.0-dev ladspa-sdk liblrdf0-dev libboost-system-dev libboost-iostreams-dev libzita-convolver-dev libzita-resampler-dev gperf faust avahi-gobject bluez liblo-dev libeigen3-dev && rm -rf /var/lib/apt/lists/* && apt -qyy clean ---> Running in 8e6e18483ff1 Reading package lists... E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied) E: Unable to lock directory /var/lib/apt/lists/ ERROR: Service 'mod-ui' failed to build: The command '/bin/sh -c apt-get update && apt-get install -y --no-install-recommends intltool gettext libsndfile1-dev libglibmm-2.4-dev libfftw3-dev libcurl4-openssl-dev sassc fonts-roboto libgtk-3-dev gtkmm-3.0-dev ladspa-sdk liblrdf0-dev libboost-system-dev libboost-iostreams-dev libzita-convolver-dev libzita-resampler-dev gperf faust avahi-gobject bluez liblo-dev libeigen3-dev && rm -rf /var/lib/apt/lists/* && apt -qyy clean' returned a non-zero code: 100

@guysoft
Copy link
Owner

guysoft commented Jul 7, 2020 via email

@buscon
Copy link
Author

buscon commented Jul 7, 2020

I read about it, am I supposed to use the commands as root?

@guysoft
Copy link
Owner

guysoft commented Jul 8, 2020

You are using a container system to compile, build and ship software. It has its own scripting language and you are asking me basic questions how to operate it.
Moreover you don't actually understand how it actually works, how it managers users and when I provide a detailed solution you have no idea how to actually use it.

If you know docker, this comment should be all the information you need to add guitarix pedals to the project: #3 (comment)

I really try to help you out, and it took me about an hour to compile the solution above and resolve all the required dependencies for guitarix. I would like to help, but without you knowing how to use docker, which is basically on what this repo is based on, I can't also explain you how it works. If you lack the knowledge either go and learn it or pay someone to do it.

@buscon
Copy link
Author

buscon commented Jul 8, 2020

ok, no problem, I will look into docker and try to understand your suggestions.
I tried to install the needed software as root (inside docker), though some packages cannot be found.

@guysoft
Copy link
Owner

guysoft commented Jul 9, 2020

Ok, waiting here, take your time to understand how it works.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants