neurodocker icon indicating copy to clipboard operation
neurodocker copied to clipboard

[wishlist] apt build-dep and source support

Open yarikoptic opened this issue 6 years ago • 5 comments

For me as a (Debian) developer I would love to be able to quickly get an environment (Dockerfile) given specification of not actual packages to be installed, but build-dependency packages and probably package sources to be installed. Immediate use cases:

  • give others a recipe to reproduce my build-environment if there is some bug to troubleshoot
  • quickly test building of a package while varying a set of installed packages

What it would entail is to

  • provide syntax to describe that for this package either use apt-get build-dep pkg or apt-get source pkg (would need some configuration option to decide where to dump those, default could be $HOME). Could be done via
    • a new value for -p: e.g. apt-bdep and apt-src to say for the following pkgs bdep or src are assumed.
    • or prefix before pkg name: e.g. "bdep:" and "src:" . I think this one is better since usually you do not need build-dependencies or sources for more than a single pkg, but you would like additional pkgs to get installed to ease troubleshooting. So I could say something like -p apt vim strace ncdu bdep:datalad src:datalad to install my helper tools, build-dependencies and sources of datalad pkg.
  • note that asking for build-dep requires apt-src, i.e. deb-src entries should be configured

Other managers could in principle/eventually acquire similar super powers (e.g. getting feedstock recipes for pkgs from conda-forge?)

yarikoptic avatar Nov 09 '18 16:11 yarikoptic

again ran into this use case. Could not "pip install" linkchecker from a tarball failing with mysterious

    running build_ext
    error: [Errno 2] No such file or directory

which is all due to missing build dependencies for externals (e.g, gcc ;) ). Being able to enable apt sources and say to install bdep:linkchecker would have saved my day!

yarikoptic avatar Aug 02 '19 15:08 yarikoptic

@yarikoptic - is it still a problem or could we close it?

djarecka avatar Feb 03 '23 20:02 djarecka

@yarikoptic - I will close it now, but feel free to reopen if you still have the issue

djarecka avatar Mar 14 '23 18:03 djarecka