mirror of
https://github.com/urbit/shrub.git
synced 2024-12-22 10:21:31 +03:00
ce3cbf0857
This also removes nixcrpkgs and OSX cross compilation in favour of compiling on the target. x86_64/musl targets are still supported on Linux. All sources are now managed via niv (see nix/sources.json) and Haskell package sets are provided/organised via IOHK's haskell.nix. Some effort has been made to expose similar top-level attributes for development, but in some cases there have been changes. Please see the comments in the top-level default.nix and ci.nix files for usage.
30 lines
801 B
Nix
30 lines
801 B
Nix
{ lib, stdenvNoCC, python }:
|
|
|
|
# Avoid using `python.withPackages` as it creates a wrapper script to set
|
|
# PYTHONPATH, and the script is used verbatim as a python shebang.
|
|
#
|
|
# Unfortunately Darwin does not allow scripts as a shebang - so to get a
|
|
# cross platform python interpreter with appropriate site-packages setup
|
|
# we use `wrapPython/Packages` which handles these cases correctly.
|
|
|
|
stdenvNoCC.mkDerivation {
|
|
name = "herb";
|
|
src = ../../../pkg/herb/herb;
|
|
|
|
nativeBuildInputs = [ python.pkgs.wrapPython ];
|
|
buildInputs = [ python python.pkgs.requests ];
|
|
pythonPath = [ python.pkgs.requests ];
|
|
|
|
phases = [ "installPhase" "fixupPhase" ];
|
|
|
|
installPhase = ''
|
|
mkdir -p $out/bin
|
|
cp $src $out/bin/herb
|
|
chmod +x $out/bin/herb
|
|
'';
|
|
|
|
postFixup = ''
|
|
wrapPythonPrograms
|
|
'';
|
|
}
|