Hello, I would appreciate advice on how to add a NUR package (pyrosm-from-nur
in the example below) to the flake:
{
description = "Flake with NUR package";
inputs = {
flake-utils.url = "github:numtide/flake-utils";
nixpkgs.url = "nixpkgs/nixos-21.11";
nur.url = github:nix-community/NUR;
};
outputs = { self, nixpkgs, flake-utils, nur }:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = import nixpkgs { inherit system; };
proj-name = "baz";
method-one-name = "method-one-${proj-name}";
method-one-buildInputs = with pkgs; [ cowsay coreutils ];
# method-one-buildInputs = with pkgs; [ cowsay coreutils pyrosm-from-nur ];
method-one-script = (pkgs.writeScriptBin method-one-name ''
#!/usr/bin/env bash
cowsay "one!"
'').overrideAttrs(old: {
buildCommand = "${old.buildCommand}\n patchShebangs $out";
});
in rec {
defaultPackage = packages.${proj-name};
packages.${proj-name} = pkgs.symlinkJoin {
name = "${proj-name}";
paths = [ method-one-script ] ;
buildInputs = [ pkgs.makeWrapper ];
postBuild = ''
wrapProgram $out/bin/${method-one-name} --prefix PATH : ${pkgs.lib.makeBinPath method-one-buildInputs}
'';
};
apps.method-one = {
type = "app";
program = "${packages.${proj-name}}/bin/${method-one-name}";
};
devShell = pkgs.mkShell {
buildInputs = [ self.packages.${system}.${proj-name} ]
++ method-one-buildInputs;
};
}
);
}
Try with
nix develop
method-one-baz
______
< one! >
------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
Many thanks.