Skip to content

Commit

Permalink
Add hydra package and its NixOS module.
Browse files Browse the repository at this point in the history
This was originally removed in d4d0e44.
The intent was not to maintain hydra expression at two places.

Nowadays we have enough devs to maintain this despite copy/pasta.

This should encourage more people to use Hydra, which is a really
great piece of software together with Nix.

Tested a deploy using https://github.com/peti/hydra-tutorial
  • Loading branch information
domenkozar committed Jun 1, 2016
1 parent 344225c commit 3e63180
Show file tree
Hide file tree
Showing 5 changed files with 575 additions and 0 deletions.
1 change: 1 addition & 0 deletions nixos/modules/module-list.nix
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@
./services/continuous-integration/jenkins/default.nix
./services/continuous-integration/jenkins/slave.nix
./services/continuous-integration/jenkins/job-builder.nix
./services/continuous-integration/hydra/default.nix
./services/databases/4store-endpoint.nix
./services/databases/4store.nix
./services/databases/couchdb.nix
Expand Down
Loading

9 comments on commit 3e63180

@bjornfor
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1. Now I might finally have my own hydra! (Tried once, had trouble, didn't try again.)

@zimbatm
Copy link
Member

@zimbatm zimbatm commented on 3e63180 Jun 1, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would is be possible to de-duplicate using something like this for the package ?:

let
  repo = pkgs.fetchFromGitHub { owner = "NixOS"; repo = "hydra"; };
in
  pkgs.callPackage "${repo}/default.nix" { }

@Ericson2314
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^I wish I could do a plus 2! Yeah that whole "newcomers wonder why -q causes downloads" argument doesn't really apply to people installing hydra, I'd think! Plus, the new nix command will be here soon.

@domenkozar
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's possible to use that, but it means it's downloading package at evaluation time. Something we don't want in nixpkgs. It won't be really that hard to maintain this, I believe.

@Ericson2314
Copy link
Member

@Ericson2314 Ericson2314 commented on 3e63180 Jun 1, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is certainly better than nothing as we had before, and true that is the policy. I am just forever extremely pessimist about putting any principle above DRY. And so far things like buildenv and various setup scripts shared between nix- and nixos have gotten out of sync, IIRC.

@domenkozar
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I strongly believe one day we'll fix NixOS/nix#13

@Ericson2314
Copy link
Member

@Ericson2314 Ericson2314 commented on 3e63180 Jun 1, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd hope so too, but for this and most other situations I believe import-from-derivation is the most elegant solution, moreso than recursive nix.

@copumpkin
Copy link
Member

@copumpkin copumpkin commented on 3e63180 Jun 2, 2016

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I'm with @Ericson2314 here in case it wasn't obvious. I don't think recursive nix is the solution to this problem, but we need tooling that better supports IFD. Once the new Nix UI starts using attribute paths more, perhaps we can start IFD more often.

@Ericson2314
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the meantime, might be good to have a could-use-import-from-derivation issue tag or something, to keep track of these.

Please sign in to comment.