NETGEAR is aware of a growing number of phone and online scams. To learn how to stay safe click here.

Forum Discussion

NN_Dave's avatar
NN_Dave
Aspirant
Feb 24, 2014

Issues installing packages as dependency of addon

Hi All,

I'm developing an addon for ROS6 and have run into a really strange problem. My addon depends on PHP, Rsync, OpenVPN and Sudo. I've added all of these to the control file for the .deb build as follows:
Depends: readynasos (>= 6.1.4), php5 (>= 5.0.0), libapache2-mod-php5 (>=5.0.0), php5-cli (>=5.0.0), php5-curl (>=5.0.0), rsync(>= 3.0.9), sudo (>= 1.0), openvpn(>= 2.2.1)


When I install the addon by uploading it to the GUI on the ReadyNAS, the following shows up in /var/log/dpkg.log:

2014-02-24 17:15:09 startup packages configure
2014-02-24 17:15:26 startup archives unpack
2014-02-24 17:15:26 upgrade libapache2-mod-php5:amd64 5.4.4-14+deb7u5 5.4.4-14+deb7u7
2014-02-24 17:15:26 status half-configured libapache2-mod-php5:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:26 status unpacked libapache2-mod-php5:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:26 status half-installed libapache2-mod-php5:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:27 status half-installed libapache2-mod-php5:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:27 status unpacked libapache2-mod-php5:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:27 status unpacked libapache2-mod-php5:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:27 upgrade php5-cli:amd64 5.4.4-14+deb7u5 5.4.4-14+deb7u7
2014-02-24 17:15:27 status half-configured php5-cli:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:27 status unpacked php5-cli:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:27 status half-installed php5-cli:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:28 status triggers-pending man-db:amd64 2.6.2-1
2014-02-24 17:15:28 status half-installed php5-cli:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:28 status half-installed php5-cli:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:28 status unpacked php5-cli:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:28 status unpacked php5-cli:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:29 upgrade php5-curl:amd64 5.4.4-14+deb7u5 5.4.4-14+deb7u7
2014-02-24 17:15:29 status half-configured php5-curl:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:29 status unpacked php5-curl:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:29 status half-installed php5-curl:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:29 status half-installed php5-curl:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:29 status unpacked php5-curl:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:29 status unpacked php5-curl:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:30 upgrade php5-common:amd64 5.4.4-14+deb7u5 5.4.4-14+deb7u7
2014-02-24 17:15:30 status half-configured php5-common:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:30 status unpacked php5-common:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:30 status half-installed php5-common:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:30 status half-installed php5-common:amd64 5.4.4-14+deb7u5
2014-02-24 17:15:31 status unpacked php5-common:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:31 status unpacked php5-common:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:31 install php5:all <none> 5.4.4-14+deb7u7
2014-02-24 17:15:31 status half-installed php5:all 5.4.4-14+deb7u7
2014-02-24 17:15:31 status unpacked php5:all 5.4.4-14+deb7u7
2014-02-24 17:15:31 status unpacked php5:all 5.4.4-14+deb7u7
2014-02-24 17:15:31 trigproc man-db:amd64 2.6.2-1 2.6.2-1
2014-02-24 17:15:31 status half-configured man-db:amd64 2.6.2-1
2014-02-24 17:15:32 status installed man-db:amd64 2.6.2-1
2014-02-24 17:15:32 startup packages configure
2014-02-24 17:15:32 configure php5-common:amd64 5.4.4-14+deb7u7 <none>
2014-02-24 17:15:32 status unpacked php5-common:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:32 status unpacked php5-common:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:32 status half-configured php5-common:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:33 status installed php5-common:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:33 configure libapache2-mod-php5:amd64 5.4.4-14+deb7u7 <none>
2014-02-24 17:15:33 status unpacked libapache2-mod-php5:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:34 status unpacked libapache2-mod-php5:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:34 status unpacked libapache2-mod-php5:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:34 status half-configured libapache2-mod-php5:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:35 status installed libapache2-mod-php5:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:35 configure php5-cli:amd64 5.4.4-14+deb7u7 <none>
2014-02-24 17:15:35 status unpacked php5-cli:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:35 status half-configured php5-cli:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:36 status installed php5-cli:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:36 configure php5-curl:amd64 5.4.4-14+deb7u7 <none>
2014-02-24 17:15:36 status triggers-pending libapache2-mod-php5:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:36 status unpacked php5-curl:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:36 status unpacked php5-curl:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:36 status half-configured php5-curl:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:37 status triggers-awaited php5-curl:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:37 configure php5:all 5.4.4-14+deb7u7 <none>
2014-02-24 17:15:37 status unpacked php5:all 5.4.4-14+deb7u7
2014-02-24 17:15:37 status half-configured php5:all 5.4.4-14+deb7u7
2014-02-24 17:15:37 status installed php5:all 5.4.4-14+deb7u7
2014-02-24 17:15:37 trigproc libapache2-mod-php5:amd64 5.4.4-14+deb7u7 <none>
2014-02-24 17:15:37 status half-configured libapache2-mod-php5:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:37 status installed php5-curl:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:37 status installed libapache2-mod-php5:amd64 5.4.4-14+deb7u7
2014-02-24 17:15:39 startup archives install
2014-02-24 17:15:39 install cb:all 2.0.7 2.0.7
2014-02-24 17:15:39 status half-installed cb:all 2.0.7
2014-02-24 17:15:44 status unpacked cb:all 2.0.7
2014-02-24 17:15:44 status unpacked cb:all 2.0.7


It seems to go and fetch PHP, rsync is already part of ROS, but sudo and openvpn just don't get installed. At this point the addon is in a half-installed state and doesn't work due to lack of dependencies.
If I "apt-get install" the missing packages everything works fine - however this won't work for distribution of the addon.

Shouldn't the dependencies all be downloaded automatically, or am I missing something here?

Thanks in advance! :)

5 Replies

Replies have been turned off for this discussion
  • Can you post the relevant parts of your control file? The problem is that although I reported this as a bug in the beta phase of RNOS6, the script that determines what dependencies should get installed never got fixed. Thus it still chokes on some conditions like >= "version number" and the like.

    -Stefan
  • WhoCares? wrote:
    Can you post the relevant parts of your control file? The problem is that although I reported this as a bug in the beta phase of RNOS6, the script that determines what dependencies should get installed never got fixed. Thus it still chokes on some conditions like >= "version number" and the like.

    -Stefan



    Hi Stefan,

    Thanks for your reply!

    The control file I'm testing with now is:
    Depends: readynasos (>= 6.1.4), php5 (>= 5.0.0), libapache2-mod-php5 (>=5.0.0), php5-cli (>=5.0.0), php5-curl (>=5.0.0), rsync(>= 3.0.9), sudo (>= 1.0), openvpn(>= 2.2.1)


    I've also tried sudo and openvpn without the version numbers:
    Depends: readynasos (>= 6.1.4), php5 (>= 5.0.0), libapache2-mod-php5 (>=5.0.0), php5-cli (>=5.0.0), php5-curl (>=5.0.0), rsync(>= 3.0.9), sudo, openvpn


    Is there another way I can get the dependencies installed?

    Thanks!
  • I've just tested with:
    Depends: readynasos, php5, libapache2-mod-php5, php5-cli, php5-curl, rsync, sudo, openvpn


    Same result - sudo and ovpn don't get installed. This is a tricky one!

    dpkg log just shows:
    2014-02-25 10:17:28 startup packages configure
    2014-02-25 10:17:33 startup archives install
    2014-02-25 10:17:33 install cb:all 2.0.7 2.0.7
    2014-02-25 10:17:33 status half-installed cb:all 2.0.7
    2014-02-25 10:17:37 status unpacked cb:all 2.0.7
    2014-02-25 10:17:37 status unpacked cb:all 2.0.7
  • The problem seems to be that the check for installed packages sees you "half-installed" packages as being "fully installed" and thus doesn't try to re-install those again.
    What you can do to fix this manually is to run "apt-get -f install" but that won't tell you whether the dependencies in the control file will now work. So my approach would be to manually remove the half-installed packages and then re-run the add-on installation to see what happens.

    -Stefan