I have a number .deb packages I create and install:
- pkg1_1.0_all.deb
- pkg2_1.0_all.deb
- pkg3_1.0_all.deb
I'm able to install them using sudo dpkg -i pkg1_1.0_all.deb
.
Now I want to create a meta package that will depend on all of them, allowing me to only install sudo dpkg -i meta_1.0_all.deb
.
I used equivs
to create a control file:
Section: misc
Priority: optional
Standards-Version: 3.6.2
Package: bla
Version: 1.0
Depends:
Description:
long description and info
.
second paragraph
and install it.
Then I modified the Depends:
to depend on a known package: Depends: tmux
and installed it.
Next, I tried to depend on my custom packages: Depends: pkg1
and now installation broke:
dpkg: dependency problems prevent configuration of bla:
bla depends on pkg1; however:
Package pkg1 is not installed.
which is understandable, as pkg1
is indeed not installed.
I have added my local directory as a debian source following this guide (changed one thing - added [trusted=yes]
to the sources list deb [trusted=yes] file:...
so it would work)
I hoped this would allow me to sudo apt install ./meta_1.0_all.deb
and it would find the dependent package in my current dir, but it failed again with the same error.
What can I do to allow user to install one .deb and to make it install several local .deb packages?
You can glob (use a wildcard
*
) the install command:This will select all the packages to install, the same as it would select these packages from a repository. Since all the dependencies are satisfied with a single command, you will have no dependency issues.