Commit graph

345 commits

Author SHA1 Message Date
Andrew Dunham
1db555563b Remap source path prefix 2020-02-18 18:52:59 +01:00
Nicolas Mattia
d6c055717b Set doCheck in test.nix 2020-02-18 15:55:26 +01:00
Nicolas Mattia
d6ba33f942 Forward extra arguments to mkDerivation 2020-02-18 15:55:26 +01:00
Bas van Dijk
1b6b98d74f Fix too big environment variable paths in symlinkJoin
When there are too many crate dependencies the `crates.io` derivation will fail with:

```
while setting up the build environment: executing '/nix/store/rm1hz1lybxangc8sdl7xvzs5dcvigvf7-bash-4.4-p23/bin/bash': Argument list too long
builder for '/nix/store/pbbnw6y6zggqddy244ix5nyysamcgm0j-crates-io.drv' failed with exit code 1
```

This is caused by the [`paths` environment variable of `symlinkJoin`](fc592a52ca/pkgs/build-support/trivial-builders.nix (L250)) exceeding the limit.

This is fixed by having our own version of `symlinkJoin` called `symlinkJoinPassViaFile` which passes `paths` via a file instead of via an environment variable.

I think this should be fixed in the upstream `symlinkJoin` so I'll provide a PR for that in `nixpkgs`. But until that lands we should have this fix here.
2020-02-18 10:08:46 +01:00
Nicolas Mattia
9a71dbed3c Rename workflow and fix badge 2020-02-12 14:46:10 +01:00
Nicolas Mattia
c435f39d6b Fallback to message-format=json for cargo < 1.38 2020-02-12 14:35:11 +01:00
Nicolas Mattia
19bfdcf0d5 Add GitHub Actions badge 2020-02-12 10:47:51 +01:00
Nicolas Mattia
f9e4916ccb Remove CircleCI 2020-02-12 10:47:51 +01:00
Nicolas Mattia
2ad8ea5c1e Don't upload cache if secret isn't set 2020-02-12 10:47:51 +01:00
Nicolas Mattia
5c1b50762f Add GitHub Actions linux check
Add actual bashlib code

Skip bashlib and move straight to install-nix

Install nix in install-nix

Fix install-nix broken string

Run tests on GitHub Actions

Simplify install-nix

Try cachix setup

Parallelize cache upload

Actually run tests

Remove parallel workaround
2020-02-12 10:47:51 +01:00
Nicolas Mattia
360a3d20eb Don't touch lib and main and build except in build.nix 2020-02-11 23:44:42 +01:00
Nicolas Mattia
af439f6830 Make sure all local files are 'touch'ed 2020-02-11 23:44:42 +01:00
Nicolas Mattia
65e8bba46a Add reproduction for workspace build.rs failure 2020-02-11 23:44:42 +01:00
Cole Helbling
11ac47b4cc Fix failure to cat out.json when cargo errors
out.json will never exist because we make a temporary file stored in
`$cargo_build_output_json`.
2020-02-10 23:18:51 +01:00
Nicolas Mattia
206cf17e20 Add copyBinsFilter option for configuring which executables are copied 2020-02-10 14:03:08 +01:00
Nicolas Mattia
7b5659aacd Use --message-format for finding executables
Use message-format for executable list
2020-02-10 14:03:08 +01:00
Nicolas Mattia
fe0e683d1d Only accept function in allowFun params 2020-02-10 12:53:55 +01:00
Nicolas Mattia
222cac5b0d Improve documentation on 'allowFun' parameters 2020-02-10 12:53:55 +01:00
Nicolas Mattia
362405f643 Document environment variables 2020-02-10 12:53:55 +01:00
Nicolas Mattia
a6c2a9515c Log configuration options in build 2020-02-10 12:53:55 +01:00
Nicolas Mattia
6a33730b34 Document and format config.nix 2020-02-10 12:53:55 +01:00
Nicolas Mattia
92432c40d9 Disable --locked by default 2020-02-10 12:53:55 +01:00
Nicolas Mattia
45bee2e6b5 Refactor config.nix for cargo options 2020-02-10 12:53:55 +01:00
Nicolas Mattia
4225dfaff9 Add support for new lockfile format 2020-02-07 17:35:30 +01:00
Nicolas Mattia
8e62f75f9f Indent CODEOWNERS 2020-02-02 18:04:15 +01:00
Nicolas Mattia
99de8049b2 Add CODEOWNERS 2020-02-02 17:59:27 +01:00
Nicolas Mattia
4bf8891948
Merge pull request #59 from nmattia/nm-fix-build-rs
Ensure build.rs is rebuilt if necessary
2020-02-02 14:35:21 +01:00
Nicolas Mattia
81a3ad4bf9 Ensure build.rs is rebuilt if necessary 2020-02-02 13:41:23 +01:00
Nicolas Mattia
52a4a55ba8
Merge pull request #57 from nmattia/nm-build-build-deps
Ensure build-dependencies are built
2020-01-21 14:47:04 +01:00
Nicolas Mattia
6eea568200 Ensure build-dependencies are built
This adds a dummy `build.rs` in `dummy-src` to ensure build dependencies are built.
2020-01-21 14:14:31 +01:00
Nicolas Mattia
b54750c073
Merge pull request #55 from jD91mZM2/flake
Basic flake.nix
2020-01-20 18:03:49 +01:00
jD91mZM2
620d8043ad
Basic flake.nix 2020-01-15 20:41:43 +01:00
Nicolas Mattia
efafcff2c5
Merge pull request #54 from nmattia/nm-rust-analyzer
Add support for wildcard members and int fields in manifests
2020-01-14 20:27:23 +01:00
Nicolas Mattia
32a63fd415
Merge pull request #52 from pikajude/so-copy
Exclude .so files from exe copy
2020-01-14 20:26:25 +01:00
Nicolas Mattia
b0756e84cf Implement toToml for 'int' 2020-01-14 19:52:10 +01:00
Nicolas Mattia
560601e3ab Expand wildcard members in manifests 2020-01-14 19:50:32 +01:00
Jude Taylor
14bde013f1 exclude shared object files from exe copy 2020-01-14 10:26:41 -08:00
Nicolas Mattia
be6d7bfe61
Merge pull request #51 from nmattia/nm-dup-git-deps
Fix failure on duplicate git dependencies
2020-01-10 12:19:00 +01:00
Nicolas Mattia
32b0dd73d9 Fix failure on duplicate git dependencies
The git dependencies were indexed by crate name, which is an issue if a dependency is imported through git at various commits. Moreover, if a crate is imported several time at _the same commit_, it is now unpacked only once.
2020-01-10 11:52:24 +01:00
Nicolas Mattia
548f0aa936
Merge pull request #49 from nmattia/nm-disable-doc
Disable doDoc by default
2019-12-19 12:08:11 +01:00
Nicolas Mattia
f5dce6453d Disable doDoc by default
The documentation building step takes a fair bit of time and most users
won't care about it. By default we turn it off.
2019-12-19 10:59:02 +01:00
Nicolas Mattia
d509c82968
Merge pull request #46 from nmattia/nm-git-dep
Add support for git dependencies.
2019-12-17 18:42:52 +01:00
Nicolas Mattia
34fdc35088 Document git dependency related code 2019-12-17 17:20:47 +01:00
Nicolas Mattia
cfbaf2a6f2 Clean up git dependency code 2019-12-17 17:03:10 +01:00
Nicolas Mattia
e994e8692f Improve git dependency support 2019-12-17 16:55:52 +01:00
Nicolas Mattia
863d0e0f3b Update README 2019-12-16 10:34:38 +01:00
Nicolas Mattia
a0fb5eaa29 Regenerate README 2019-12-16 10:33:10 +01:00
Nicolas Mattia
47b22494d9 Add experimental support for git dependencies 2019-12-16 10:33:10 +01:00
Nicolas Mattia
279fe46216 Regenerate README 2019-12-16 10:32:44 +01:00
Nicolas Mattia
e5315b5372 Set doDoc = doCheck = false for docparse 2019-12-16 10:32:44 +01:00