I created an account to report here a problem I had with the Raspbian provided by the foundation. I am not sure this is the right place. If it's not, could someone please show me the right door?
I am running the latest Raspbian Stretch Lite (foundation image dated June 2018) on a Pi 3 model B. I noticed that a recent "apt upgrade" upgraded the package nodejs from version 4.8.2 to version 8.11.1. Having a newer Node.js seems all nice. Unfortunately, there are quite a few packages that worked before but are now uninstallable. For example:
Code: Select all
[email protected]:~ $ sudo apt install node-iconv Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: node-iconv : Depends: nodejs-abi-46 E: Unable to correct problems, you have held broken packages.
Interestingly, it appears that the upgraded nodejs was uploaded to archive.raspberrypi.org which, if I understand correctly, holds only software provided by the Raspberry Pi foundation specifically for the Raspberry Pi. Both raspbian.raspberrypi.org and archive.raspbian.org (the official Raspbian archive) only distribute version 4.8.2. Debian does provide a nodejs 8.11.1, but it does so in its stretch-backports archive, not in the regular stretch archive.
It looks to me like the decision to provide nodejs 8.11.1 as a regular upgrade was an error of the Raspberry Pi foundation. Using backports always carries the risk of hitting this kind of incompatibilities, that's why the backports repos are never enabled by default: using them is a decision a user can only make at his own risk.
So my questions are: Is the Raspberry Pi foundation aware of this problem? Are they going to try to fix it? How?
- I am not asking for personal help (I can work around the issue on my own), I am reporting what, to my eyes, seems like a packaging bug.
- I first discussed this issue on raspberrypi.stackexchange.com: Why does 'apt install node-body-parser' fail?
- I tried to establish the list of affected packages (I may have missed some): groovebasin, libjs-jssip, libjs-websocket, node-body-parser, node-flashproxy, node-groove, node-iconv, node-jssip, node-leveldown, node-mapnik, node-mbtiles, node-millstone, node-node-expat, node-node-stringprep, node-raw-body, node-sqlite3, node-srs, node-tilejson, node-tilelive-bridge, node-tilelive-mapnik, node-tilelive-vector, node-websocket, node-ws, node-zmq.