debianartifactoryapt

Can't install packages from Debian local repository in JFrog Artifactory: APT says unable to locate package


I am trying to set up a local repository for binary Debian packages (.deb files) in JFrog's Artifactory to host some internal Debian packages of our company.

On my PC I can install the packages perfectly using dpkg -i <package filename>.deb. So I doubt there is anything inherently broken about my specific packages. But when I reportedly successfully deploy the package to Artifactory using the web interface and update the package index on my PC (by running sudo apt update -y successfully), I can't actually install the package using sudo apt install. I always get the error E: Unable to locate package <package name>.

To clarify: I am using Ubuntu 24.04 LTS Noble Numbat on x86-64. While deploying the package I entered "noble" as the distribution, "multiverse" as the component and "amd64" as the architecture. I can see in the Repository Browser that the upload succeeded and in the repository's raw directory structure the .deb files end up in the root of the folder hierarchy (instead of under pool/ as I'd personally expect). The local repository should be properly configured as a source for APT (especially given I can fetch the package index with no issues). Finally, I have repeatedly tried recalculating the repository's index inside of the Artifactory web interface.

I am at a loss as to how I troubleshoot this. Does anyone know what might be the most likely cause of this issue? Thank you in advance!


Solution

  • The root cause of my problem seems to be that I am running a version of Artifactory that does not handle .deb packages compressed with zstd, which seems to have become the standard.

    Explicitly instructing dpkg-deb to use GZip compression using dpkg-deb -Zgzip -b foo/ while building my custom packages solved my problem.