Problem Summary:
reprepro list stretch doesn't list any packages in my apt repository and reprepro remove stretch <package> doesn't delete any packages from my repository. How can I:
- Add packages so that
reprepro list stretchfinds them, or - Use
repreproto delete packages from my repo
The Environment:
I have a build machine with an apt repository on it. When I finish building, I install my package:
sudo reprepro -Vb /var/www/html/apt/debian \
includedeb stretch \
${build_dir}/a320-latest-0.0.${SVN_REVISION}-Linux.deb
Everything seems to work really well. I can apt-get install a320-latest from any client which has added my repository to their /etc/apt/sources.list.d/.
When I inspect further, I can confirm that I have several packages installed:
bob@apollo:/var/www/html/apt/debian$ tree pool
pool
└── main
├── a
│ ├── a320
│ │ └── a320_0.0.571_amd64.deb
│ └── a320-latest
│ └── a320-latest_0.0.575_amd64.deb
├── h
│ └── helloworld
│ └── helloworld_0.2_amd64.deb
└── s
├── sim-dev
│ └── sim-dev_1.0_amd64.deb
├── sim-devenv
│ └── sim-devenv_1.0_amd64.deb
├── sim-runtime
│ └── sim-runtime_1.1_amd64.deb
└── sim-workstation
└── sim-workstation_1.0_amd64.deb
11 directories, 7 files
These also seem to be present in the repository registry:
bob@apollo:/var/www/html/apt/debian$ cat dists/stretch/main/binary-amd64/Packages | grep Package:
Package: a320
Package: a320-latest
Package: helloworld
Package: sim-dev
Package: sim-devenv
Package: sim-runtime
Package: sim-workstation
Expected workflow:
I would like to delete pool/main/a/a320 and pool/main/h/helloworld.
I've tried:
bob@apollo:/var/www/html/apt/debian$ sudo reprepro list stretch
bob@apollo:/var/www/html/apt/debian$ sudo reprepro remove stretch a320
Not removed as not found: a320
Exporting indices...
I expected reprepro list stretch would list my packages, and reprepro remove stretch a320 would remove the a320 package. But that doesn't seem to do anything.
I was tempted to just delete the *.deb files, and the entries in ./dists/.../Packages manually, but I suspect that this will destroy some checksums and destroy the repository. It would probably also put ./dists out of sync with ./db which contains some binary objects (SQLite?).
I also tried reprepro export stretch and reprepro update stretch but they didn't seem to do anything.
At least something is working
Everything is great for the client right now.
Also, I can confrm that reprepro finds the stretch repository, otherwise it would give one of these errors:
bob@apollo:/var/www/html/apt$ sudo reprepro list stretch
Error opening config file './conf/distributions': No such file or directory(2)
There have been errors!
bob@apollo:/var/www/html/apt/debian$ sudo reprepro list wheezy
Cannot find definition of distribution 'wheezy'!
There have been errors!