nodesource/distributions

[Issue] debian package pools are no longer browsable

skaes opened this issue · 4 comments

Describe your bug

We have an internal mirror for a subset of the nodejs packages. Once per day we used to sync with upstream by parsing the directory listings like "https://deb.nodesource.com/node_18.x/pool/main/n/nodejs/" to detect packages missing on our mirror and copying them to our internal package server.

But the listings are no longer available and so this doesn't work anymore.

It is my understanding that the packages are still there, it's just that the listing isn't shown anymore. Correct?

We established this rather complicated process because previously only the latest package version for each release branch could be installed and this wasn't acceptable.

Would it be possible to expose the listing again?

If not, is there some other HTTP API endpoint to retrieve the package list?

To Reproduce
Open https://deb.nodesource.com/node_18.x/pool/main/n/nodejs/ in the browser. No directory listing.

Expected behavior
Directory listing shown.

Hi @skaes hope you're doing well today.
As you mentions there is not anymore the option to list the folders, this is because we migrated from a traditional filesystem exposed with Nginx to use an Object Storage.

First thing, I highly suggest you to migrate to our new repo.
How-to-migrate-to-the-new-repository

Second, You don't need anymore download locally some specific version, with our new repository is now possible to install an specific version, follow these instructions.
How-to-select-the-Node.js-version-to-install

Also I understand you may still want to have a mirror of the packages, for this I encourage you to use APTLY to create that mirror.
https://www.aptly.info/doc/aptly/mirror/create/

We have a section in our wiki with this topic, at this moment is only documented for RPM but we're still writing the instructions for DEB, anyway if you follow the APTLY docs you will be ok.
Creating-a-Repository-Mirror

Hi @riosje, thx for the quick answer.

We are already using aptly. We'll adapt.

Hey, is it possible to mirror it using Sonatype Nexus ?

Not an exactly workaround, but you can add the deb repo,
and apt install nodejs --print-uris to get the direct link to the debian packages