Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Dec 10 22:12
    ChrisBarker-NOAA commented #3828
  • Dec 10 20:27
    ChrisBarker-NOAA commented #3828
  • Dec 10 20:25
    marcelotrevisani labeled #3828
  • Dec 10 20:25
    marcelotrevisani commented #3828
  • Dec 10 20:24
    marcelotrevisani commented #3827
  • Dec 10 20:21
    marcelotrevisani labeled #3827
  • Dec 10 20:21
    marcelotrevisani commented #3827
  • Dec 10 18:21
    ChrisBarker-NOAA opened #3828
  • Dec 09 22:50
    katietz commented #3826
  • Dec 09 22:48
    katietz synchronize #3826
  • Dec 09 22:31
    katietz synchronize #3826
  • Dec 09 21:47
    katietz synchronize #3826
  • Dec 09 20:40
    msarahan edited #3826
  • Dec 09 20:40
    msarahan commented #3826
  • Dec 09 20:10
    cla-bot[bot] labeled #3826
  • Dec 09 20:10
    katietz opened #3826
  • Dec 09 19:21

    conda-bot on gh-pages

    docs for pr 3825 (compare)

  • Dec 09 19:21

    conda-bot on gh-pages

    remove docs for pr 3825 (compare)

  • Dec 09 19:20

    conda-bot on gh-pages

    docs for pr 3825 (compare)

  • Dec 09 19:19
    marcelotrevisani closed #3825
Matthew R. Becker
@beckermr
and hence they get set to /usr/bin/env
and thus on mac they trigger SIP behavior
Matthew R. Becker
@beckermr
One way around this would be to map every env to a short random hash.
But I think this is an edge case that doesn’t need to be handled
Douglas Lowe
@douglowe
@mingwandroid thanks for the link. In this case I don't need the gui package to depend on the cli one (though this might change for the linux or windows packages).
Jonathan J. Helmus
@jjhelmus
https://github.com/conda/conda/blob/4.7.12/conda/core/portability.py#L155-L175 is replacing the long shebang lines for portability. Most platforms/distribution have some limit on the length of the shebang and using #!/usr/bin/env python in those cases. Adding a configuration option to override this rewrite would be reasonable.
Matthew R. Becker
@beckermr
yup I found the old github issue where this was discussed
I like the idea of a config override
OTOH, I put in a custom shim in my build that solved this particular issue
Matthew R. Becker
@beckermr
@jjhelmus there does seem to be some interest in a config option to turn off the replacement
should I make an issue?
Matthew R. Becker
@beckermr
I made an issue on this
deepali-c
@deepali-c

I see below error while building a recipe:

Fixing permissions execute(sys.argv[1:]) File "<mypath>/lib/python2.7/site-packages/conda_build/cli/main_build.py", line 430, in execute verify=args.verify, variants=args.variants) File "<mypath>/lib/python2.7/site-packages/conda_build/api.py", line 201, in build notest=notest, need_source_download=need_source_download, variants=variants) File "<mypath>/lib/python2.7/site-packages/conda_build/build.py", line 2275, in build_tree notest=notest, File "<mypath>/lib/python2.7/site-packages/conda_build/build.py", line 1654, in build newly_built_packages = bundlers[output_d.get('type', 'conda')](output_d, m, env, stats) File "<mypath>/lib/python2.7/site-packages/conda_build/build.py", line 972, in bundle_conda output['checksums'] = create_info_files(metadata, files, prefix=metadata.config.host_prefix) File "<mypath>/lib/python2.7/site-packages/conda_build/build.py", line 665, in create_info_files copy_recipe(m) File "<mypath>/lib/python2.7/site-packages/conda_build/build.py", line 301, in copy_recipe _copy_output_recipe(m, recipe_dir) File "<mypath>/lib/python2.7/site-packages/conda_build/build.py", line 270, in _copy_output_recipe _copy_top_level_recipe(src_dir, m.config, dest_dir, 'parent') File "<mypath>/lib/python2.7/site-packages/conda_build/build.py", line 264, in _copy_top_level_recipe locking=config.locking, clobber=True) File "<mypath>/lib/python2.7/site-packages/conda_build/utils.py", line 502, in copy_into _copy_with_shell_fallback(src, dst_fn) File "<mypath>/lib/python2.7/site-packages/conda_build/utils.py", line 435, in _copy_with_shell_fallback raise OSError("Failed to copy {} to {}. Error was: {}".format(src, dst, e)) OSError: Failed to copy <path>/meta.yaml to <envpath>/info/recipe/parent/meta.yaml. Error was: Command 'cp -a <path>/meta.yaml <envpath>/info/recipe/parent/meta.yaml' returned non-zero exit status 1
Any hints on how to get to the cause of this? I have just shortened the paths here.

Duncan Macleod
@duncanmmacleod
should conda-build be adding ${CONDA_PREFIX}/sbin to path, or is there some other recommendation?
Duncan Macleod
@duncanmmacleod
sorry, this is more of a conda question, not a conda build question
deepali-c
@deepali-c
so shall I post in the conda gitter
Duncan Macleod
@duncanmmacleod
@deepali-c, my question was totally unrelated to yours, sorry for any confusion
Nehal J Wani
@nehaljwani
@duncanmmacleod you should build the package in a manner such that all binaries end up in bin. Any particular reason why you want to use sbin ?
Duncan Macleod
@duncanmmacleod
@nehaljwani, I am just building an existing package that includes daemon scripts that naturally belong in sbin
I understand that sbin is mainly for administrator control, I was just wondering if ‘don’t use sbin’ is a conda policy, or just nobody has tried it until now
Nehal J Wani
@nehaljwani
Conda doesn't add sbin to PATH on activation
Duncan Macleod
@duncanmmacleod
Sorry, my original question was badly worded, I am wondering if that very fact is a choice that was long-considered or just an oversight
Nehal J Wani
@nehaljwani

My understanding is that the sbin folder on Linux systems is for segregating binaries meant to be run by privileged users. (generally speaking, sysadmins)

But conda is a generic package manager and doesn't make such distinctions, so the need for segregating binaries doesn't make much sense here.

Anthony Scopatz
@scopatz
Hi All, is missing_dso_whitelist undocumented?
Seems so
Anthony Scopatz
@scopatz
Yeah that is what I was looking for
or at, rather
Nehal J Wani
@nehaljwani
It is definitely supported though. Are you repackaging something?
Anthony Scopatz
@scopatz
yeah, a haskel package
Anthony Scopatz
@scopatz
here is the existing issue: conda/conda-build#3360
Anthony Scopatz
@scopatz
So does rpaths not add entries to the RPATH for things in the bin/ directory?
Nehal J Wani
@nehaljwani
What entries did you list in rpaths? I thought CB used patchelf on binaries in bin for adding those paths.
Anthony Scopatz
@scopatz
x86_64-conda_cos6-linux-gnu/sysroot/lib/ and ../lib
Nehal J Wani
@nehaljwani
It is relative to $PREFIX I think, not $PREFIX/bin
Anthony Scopatz
@scopatz
yeah that is what I thought too
Nehal J Wani
@nehaljwani
Not sure what adding sysroot to the RPATH would achieve?
If you simply want --error-overlinking to pass, just add the C compiler and any links to glibc libs will stop complaining about missing deps
Anthony Scopatz
@scopatz
Right, yes, but there is no need for the compiler, since this is a haskell binary repackage
Nehal J Wani
@nehaljwani
If every component is being repackaged and 0 compilation, you can add '*' in the missing_dso_whitelist section
It allows patterns
Every CDT package recipe has that
Anthony Scopatz
@scopatz
Agreed, but the problem is deeped than just skipping the overlinking check. On the conda-forge CI, it fails the tests because it actually can't find the libraries
Probably because haskell links them to /lib64/
Nehal J Wani
@nehaljwani
Ah, so you need to force the rpath entries. Do you have a link?
Nehal J Wani
@nehaljwani
Oh no elm-format: /lib64/libc.so.6: version GLIBC_2.14 not found (required by elm-format) this is basically saying that it has been built with glibc 2.14 and the system you are running on, is perhaps centos6 based, which is glibc 2.12
Anthony Scopatz
@scopatz
Yeah, it is.
Nehal J Wani
@nehaljwani
So you can't run the tests, sorry.