Commit Graph

1445 Commits

Author SHA1 Message Date
Mateusz Kowalczyk
9bb5c2c488 Merge pull request #8077 from Ericson2314/agda
Interactive `env` for developing Agda packages, and misc cleanup
2015-06-08 14:57:38 +01:00
obadz
d4681bf626 Lay down the foundation for packaging the .NET echosystem
- fetchNuGet can fetch binaries from nuget servers
- buildDotnetPackage can build .NET packages using mono/xbuild
  - Places nuget & paket as they would clash with nix
  - Patch project files because F# targets are expected to be found in
    the mono directory (and we know that's not going to happen on nix)
  - Find DLLs that were copied from buildInputs and replace by symlink
    for sharing
  - Export produced DLL via the pkg-config mechanism
  - Create wrappers for produced EXEs
- Repackaged this new infrastructure: keepass, monodevelop
- Newly packaged: ExtCore, UnionArgParser, FSharp.Data, Paket, and a
  bunch more..

This is a combination of 73 commits.
2015-06-06 09:06:22 -04:00
William A. Kennington III
ffd0539eba cacert: store ca-bundle.crt in $out/etc/ssl/certs instead of $out 2015-06-05 13:00:52 -07:00
Ricardo M. Correia
9176f73cee buildRustPackage: Cosmetic improvement 2015-06-05 19:18:45 +02:00
Eelco Dolstra
99d2e80d97 In VM builds, connect stdin to /dev/null
This prevents programs from hanging while trying to read from stdin.
2015-06-04 20:08:56 +02:00
John Ericson
be2cba690c agda: Remove unused/uneeded abstractions, including postprocess 2015-05-31 01:55:10 +00:00
John Ericson
9b31a07b0d agda: Just with all of the string helper functions 2015-05-31 01:54:09 +00:00
John Ericson
21b10ab44f agda: postprocess and defaults need not be in the scope of args 2015-05-30 19:22:32 +00:00
John Ericson
c1f5748983 agda: Provide a .env like Haskell instead of .extras 2015-05-30 15:10:30 +00:00
William A. Kennington III
14c1e0fa1f Fix ca-bundle paths 2015-05-29 14:03:34 -07:00
Ricardo M. Correia
d7ebe7a4f3 buildRustPackage: Accept srcs attribute as well
Add support for building Rust packages that have multiple sources, i.e.,
that use the `srcs` and `sourceRoot` attributes instead of just `src`.
2015-05-29 19:46:20 +02:00
Benjamin Staffin
1db5bafc94 Typo fix! s/wheezy/jessie/ 2015-05-29 11:16:33 +02:00
Benjamin Staffin
c7ac0ed3eb Add Debian 8.0
Had to add file type logic in debClosureGenerator because Packages.bz2
is not available for Jessie - only Packages.xz is.
2015-05-29 10:49:20 +02:00
vbgl
2857d5d7a8 Merge pull request #7823 from ericbmerritt/ocaml-enhancements
Ocaml enhancements
2015-05-26 23:52:32 +02:00
Arseniy Seroka
89810619ff Merge pull request #7973 from oxij/fetchurl-meta
fetchurl: allow adding meta info; fetchFrom*: add meta.homepage
2015-05-25 21:14:35 +03:00
Vladimír Čunát
f83d12a382 Merge 'master' into staging 2015-05-24 20:39:58 +02:00
Jan Malakhovski
bdf32ed2ab fetchurl: allow adding meta info; fetchFrom*: add meta.homepage
The point of this is to be able to do `meta.homepage = src.meta.homepage;`
instead of the usual copy-paste for the packages that are hosted
on these hosting services.
2015-05-24 14:26:39 +00:00
Mateusz Kowalczyk
177d40f582 Merge branch 'agda' of https://github.com/Ericson2314/nixpkgs into agda 2015-05-23 04:15:50 +01:00
Eric Merritt
d814c50505 add an ocaml specific builder to the system 2015-05-22 10:12:21 -07:00
Eelco Dolstra
178c52e7ad Add Ubuntu 15.04 2015-05-22 13:21:02 +02:00
John Ericson
91ab6c9e89 agda: Wrapper is no longer built by default
Instead it is provided to the user who can choose whether or not
to include it in the final derivati. Example of including would
be:

```nix
callPackage ... (self: { inherit (self.extras) extraThing; })
```

These extras are also available downstream without being built by
default. This is achieved with `passthru`.
2015-05-20 16:01:40 +00:00
John Ericson
33c28bdc83 agda: Agda dependencies are treated seperately
- Only they are added to the optional build path (share/agda)
 - Only they are are passed as an include dir (share/agda)
 - Only they are propigatedBuildInputs
2015-05-20 16:01:04 +00:00
Ricardo M. Correia
9b752fd0e1 buildRustPackage: Don't hardcode registry index hash
Instead, discover it automatically when building the package.

This makes `buildRustPackage` more future-proof with respect to changes
in how `cargo` generates the hash.

Also, it fixes broken builds in i686 because apparently, cargo generates
a different registry index hash in this architecture (compared to
x86-64).
2015-05-19 19:02:38 +02:00
John Ericson
ae444ea4c4 agda: Remove extraBuildFlags
This is unused, future users can just use override `buildFlags`
and extend/replace as needed. `includeDirs` is provided for this
purpose.

We should add `dirOf self.everythingFile` rather than `.`, but
`dirOf` breaks on relative paths so that is not an option.
2015-05-18 12:33:00 -04:00
John Ericson
95c1c686a3 agda: Remove buildTools, it is unused 2015-05-18 04:10:37 +00:00
John Ericson
45052c02a8 agda: Replace eval with runHook
This is what haskell-ng does, so I figure it is the right thing to
do.
2015-05-17 20:15:09 -04:00
John Ericson
705c4d7b49 agda: Remove unnecessary env-var export
Derivation attributes are automatically exported as environment
variables already.
2015-05-17 20:15:09 -04:00
Thomas Tuegel
5583067fd8 emacsWithPackages: install support files
The wrapper needs to link the desktop file, icons, info and man pages
into place so they will appear when emacsWithPackages is installed.
2015-05-17 14:24:34 -05:00
Eric Seidel
67fe5d46d4 Merge pull request #7817 from gridaphobe/cc-wrapper-isgnu-isclang
Add isGNU and isClang attributes to cc-wrapper
2015-05-14 10:09:07 -07:00
Wout Mertens
1f400ea463 Merge pull request #6411 from NixOS/passAsFile
writeTextFile: Use passAsFile if available
2015-05-14 13:57:24 +02:00
Eelco Dolstra
fef86de618 Make module loading work in VMs
Also, execute stage 2 as PID 1.
2015-05-13 17:36:58 +02:00
Eelco Dolstra
b97362989f Provide /run in VMs 2015-05-13 17:36:29 +02:00
Ricardo M. Correia
755df64ee3 Merge pull request #7501 from wizeman/u/upd-rust
Add support for Rust / Cargo packaging
2015-05-12 17:30:11 +02:00
Eric Seidel
395829686d add is{GNU,Clang} attrs to cc-wrapper.
These will be more pleasant to use than the existing

    (cc.cc.isClang or false)

nonsense we currently do.
2015-05-11 14:39:36 -07:00
William A. Kennington III
c9395e1e92 Merge branch 'master' into staging 2015-05-08 05:59:50 -07:00
William A. Kennington III
0e4057b167 kernel: 4.0.1 -> 4.0.2 2015-05-07 20:32:24 -07:00
Eelco Dolstra
c3f6c8c582 Mount /dev/shm in VMs 2015-05-07 15:31:36 +02:00
William A. Kennington III
074c4a7f78 Merge remote-tracking branch 'upstream/master' into staging 2015-05-07 01:44:49 -07:00
Peter Simons
324719a5a6 Drop obsolete pre-NG Haskell builds. 2015-05-05 21:44:47 +02:00
Edward Tjörnhammar
655eed7a93 Merge pull request #7235 from risicle/fetchhgsubrepo
fetchhg: add option to fetch hg subrepos
2015-05-04 18:20:32 +02:00
Robert Scott
366da9e70f fetchhg: add option to fetch hg subrepos 2015-05-04 16:18:26 +01:00
Thomas Tuegel
1fe28a1132 Merge remote-tracking branch 'upstream/master' into staging 2015-04-29 11:33:28 -05:00
Edward Tjörnhammar
4256ab778a fetchhg: pass proxyvars to hg 2015-04-28 22:44:57 +02:00
Vladimír Čunát
30f31c9afc Merge 'master' into staging
(relatively simple conflicts)
2015-04-26 22:52:08 +02:00
Ricardo M. Correia
d6093505cc buildRustPackage: Get rid of /proc/self/cwd hack
This makes buildRustPackage portable to non-Linux platforms.

Additionally, now we also save the `Cargo.lock` file into the fetch output, so
that we don't have to run $cargoUpdateHook again just before building.
2015-04-23 20:22:19 +02:00
Ricardo M. Correia
b993c2113c buildRustPackage: Add a mechanism to patch registry deps
... in a more generic way.

With this commit, if you need to patch a registry package to make it
work with Nix, you just need to add a script to patch-registry-deps
in the same style as the `pkg-config` script.
2015-04-23 16:41:52 +02:00
Ricardo M. Correia
0cde1dc524 cargo: Remove setupHook
Instead, move that code into buildRustPackage.

The setup hook was only doing part of the work anyway, and having it in
a separate place was obscuring what was really going on.
2015-04-23 15:26:23 +02:00
Thomas Tuegel
4887f44d02 emacsWithPackages: don't call package-initialize
Emacs will call package-initialize itself, if required, or the user will
call it in their initialization file. There is no reason to call it in
the wrapper and doing so only increases start-up time.
2015-04-23 08:08:22 -05:00
Ricardo M. Correia
e42c17ee97 buildRustPackage: Fix Cargo.lock being ignored
It turns out that `cargo`, with respect to registry dependencies, was
ignoring the package versions locked in `Cargo.lock` because we changed
the registry index URL.

Therefore, every time `rustRegistry` would be updated, we'd always try
to use the latest version available for every dependency and as a result
the deps' SHA256 hashes would almost always have to be changed.

To fix this, now we do a string substitution in `Cargo.lock` of the
`crates.io` registry URL with our URL. This should be safe because our
registry is just a copy of the `crates.io` registry at a certain point
in time.

Since now we don't always use the latest version of every dependency,
the build of `cargo` actually started to fail because two of the
dependencies specified in its `Cargo.lock` file have build failures.

To fix the latter problem, I've added a `cargoUpdateHook` variable that
gets ran both when fetching dependencies and just before building the
program. The purpose of `cargoUpdateHook` is to do any ad-hoc updating
of dependencies necessary to get the package to build. The use of the
'--precise' flag is needed so that cargo doesn't try to fetch an even
newer version whenever `rustRegistry` is updated (and therefore have to
change depsSha256 as a consequence).
2015-04-23 02:58:07 +02:00
Nikolay Amiantov
19c497050e fhs-userenv: refactor and try to chdir to the current directory
runScript now expects a filename instead of a Bash snippet; thus, "exec" should be
omitted.
2015-04-22 17:50:41 +03:00