On 22 September 2014 11:52, Wout Mertens <[email protected]> wrote: > Isn't the whole point of the fixed-output derivations that the means of > getting there doesn't matter? So if you change the build script but leave > the output hash the same, you're basically saying that the build script will > generate the same output.
Right. So I guess what I want isn't really a "fixed-output" derivation, but more of a "checked-output" derivation. In my use case, I don't have direct control over buildCommand. I run "grails -Duser.home=$out refresh-dependencies" in the source tree and grails downloads a bunch of stuff according to what's specified in $src/.../BuildConfig.groovy. (I've written a fetchGrailsAppDeps function for that.) 1) The derivation must be fixed-output to allow internet access 2) The output isn't _really_ fixed, because it can change if $src changes (new application source may have different deps) > I think what you want is to remove a build product from the store when you > change the build scripts? That feels hackish and not something I want to be doing on a regular basis. > As for this use case, handbrake also downloads a bunch of things as part of > the build and I made the expression just patch that away, moving all the > extra building and patches into other expressions. I considered doing that. But the solution / workaround by adding the source hash to derivation name (to force rebuild if changed) works so well :-) Best regards, Bjørn Forsman _______________________________________________ nix-dev mailing list [email protected] http://lists.science.uu.nl/mailman/listinfo/nix-dev
