about summary refs log tree commit diff
path: root/release.nix
Commit message (Collapse)AuthorAgeFilesLines
...
* release.nix: Also patch vuizvui itself.aszlig2015-04-291-16/+29
| | | | | | | | | | | | | This is needed because we're relying on nixpkgs-path.nix to point to a valid nixpkgs tree, which we deliberately don't have anymore because we wanted to avoid references to <nixpkgs>. So providing vuizvuiSrc instead of vuizvui has another advantage that we now are no longer dependant on the channel name and also have a safety net (Hydra) to inform us of references to <vuizvui> in the form of failed builds and/or evaluations. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Provide a name to patchedNixpkgs.aszlig2015-04-291-2/+4
| | | | | | Yeah, probably will work a bit better without evaluation errors ;-) Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Refactor to use patched nixpkgs.aszlig2015-04-291-13/+20
| | | | | | | | | | | | | | We now use nixpkgsSrc to make sure that Hydra builds will fail as soon as we hit a reference of <nixpkgs> in either vuizvui of nixpkgs. This also means, that we don't rewrite all of vuizvui and nixpkgs anymore and we only really need to rewrite nixos-rebuild.sh. Although we're using patched nixpkgs for Hydra builds, the release.nix still has a fallback to <nixpkgs> to make development easier (patching nixpkgs on every tiny change will take a long time otherwise). Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Handle all <nixpkgs> paths with nixpkgs-path.nix.aszlig2015-04-291-7/+13
| | | | | | | | | This file is just defaulting to <nixpkgs>, but we're going to substitue it by the channel generator. We also need to make sure that we don't have any other references to <nixpkgs>, but the latter can best be done on Hydra's side if we don't make <nixpkgs> available to vuizvui builds. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Add ".update-on-nixos-rebuild".aszlig2015-04-281-0/+1
| | | | | | | | | | We want to update the vuizvui channel alongside of the nixos channel in "nixos-rebuild subcommand --upgrade", because we include machines and NixOS modules. Might be splitted off into the machine-specific channels later. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Include nixpkgs tarball in channel.aszlig2015-04-281-19/+8
| | | | | | | | | | | | | | | Symlinking is actually a pretty bad idea, because we can only have one channel expression tarball. Evaluation however doesn't realize the referenced store paths, so we need to include them directly in the channel tarball. This also simplifies rewriting of the NIX_PATH references, because we need to recurse the directory structure only once. In order to be correctly recognized by nixos-rebuild and display useful version info, we generate .git-version and .version-suffix now as well. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Use vuizvui/nixpkgs in nixos-rebuild.aszlig2015-04-281-2/+7
| | | | | | | | | | We're now symlinking the nixpkgs store path into vuizvui/nixpkgs and reference it from within nixos-rebuild. Unfortunately we can't simply patch it with the hardcoded store path because we'll end up having the *previous* version on every nixos-rebuild instead of the new version delivered by the channel. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Provide src attr to patchedNixpkgs.aszlig2015-04-281-0/+1
| | | | | | Well, it won't work without it, duh! Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Tie nixpkgs to channel tarball.aszlig2015-04-281-0/+15
| | | | | | | | | | | Right now, this is done by replacing all NIX_PATH references with <nixpkgs...> by the path from Hydra input and silently hope that we won't replace the wrong reference ;-) Of course we're only replacing it in files that end with a .nix suffix, so we shouldn't accidentally replace documentation. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Generate channels for all machines.aszlig2015-04-151-4/+14
| | | | | | | | | | | Those channels only depend on whether the build of the particular machine succeed and currently don't include any VM tests. Also, this is quite repetitious, because we're recursing through the whole set of machines again instead of re-using the corresponding Hydra jobs. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* mkChannel: Remove channelName attribute.aszlig2015-04-151-1/+0
| | | | | | | The third argument in hydra-build-products is actually the base directory and not a name, Alzheimer's near! Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Fix evaluation of manual.aszlig2015-04-151-3/+3
| | | | | | Regression introduced by a610560bb4b5a05eb480a4dbab3e24c553727047. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Switch channel over to mkChannel.aszlig2015-04-151-10/+3
| | | | | | | | The channel now serves more or less as a generic channel, which has no constituents and thus should always be the most up-to-date channel for vuizvui. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Add a default.nix which servers as vuizvui root.aszlig2015-04-151-3/+1
| | | | | | | | | In the end we want to have something like (import <vuizvui> {}), which exports all stuff we need for building machines, packages, providing custom helper functions and much more. And all that by using a channel instead of setting NIX_PATH directly :-) Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Rename upstream pkgs to pkgsUpstream.aszlig2015-04-151-4/+4
| | | | | | | | Mainly to make it a bit easier to distinguish, but also because we want to make the release attribute set recursive, so we don't run into weird evaluation errors. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Remove unnecessary double slash.aszlig2015-04-131-1/+1
| | | | | | | Forgot to remove the slash from the end of the replacement of the transformation expression in tar. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Fix Hydra product file name.aszlig2015-04-131-1/+1
| | | | | | | DUH! Finger fart, as I was writing a tar.bz2 in the first place and later changed it to tar.xz. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Put channel exprs into a tarball.aszlig2015-04-131-1/+10
| | | | | | | | | | With my previous implementation (NixOS/hydra#203) the tarball was created by Hydra itself on the fly. Our new implementation actually generates the tarball via Nix and Hydra only picks up the build product. And exactly that's what we're doing here. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Add channel expression files.aszlig2015-04-011-1/+10
| | | | | | | | This is actually a store path consisting of the vuizvui sources themselves and currently doesn't depend on anything else, so it usually won't fail when mandatory tests or builds fail. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release.nix: Rename packagesWithMetaPlatform.aszlig2015-03-291-1/+1
| | | | | | | Since NixOS/nixpkgs@738cf42, the attribute is now simply called "packagePlatforms". Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release: Constrain set of packages to build.aszlig2015-03-181-4/+8
| | | | | | | | | We don't want to build non-free stuff on our Hydra and also we want to have builds for all supported systems. In addition, this should get rid of a few evaluation errors that happen because Hydra tries to create jobs out of attributes which are not derivations. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Incorporate labernix's release.nix into vuizvui's.aszlig2015-03-181-0/+6
| | | | | | The only thing that was missing was the pkgs attribute. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* tests: Refactor to something similar as machines/.aszlig2015-03-181-4/+3
| | | | | | | | | Similar to callMachine, we now have callTest. The latter uses make-test.nix, so we don't need to import the file explicitly anymore and can just write our VM test by using either an attrset or a lambda function which also gets our own packages in a vuizvui namespace. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* tests: Properly namespace the VM tests.aszlig2015-03-181-2/+2
| | | | | | | We're going to write much more tests and don't want to clutter up the tests/ directory. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* tests: Integrate heinrich VM test from labernix.aszlig2015-03-181-0/+1
| | | | | | | | Using "import ../machines" is a bit ugly here, so we might want to integrate this into make-test.nix, but other than that it should work nevertheless. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* machines: Move own machines into machines/aszlig.aszlig2015-03-181-3/+3
| | | | | | | | | | | Introduces callMachine in machines/default.nix, which returns an attribute set containing the (input) configuration and also a build attribute containing the output configuration and thus also the builds. However, we still have references to ../../common-workstation.nix which we need to refactor very soon. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release: Add manual for Vuizvui-specific options.aszlig2014-10-211-3/+59
| | | | Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Move all aszligEnv packages to systemPackages.aszlig2014-08-041-4/+0
| | | | | | | | | As we have a build farm at our disposal, it really makes sense to put the whole set of packages + overrides into systemPackages. The new packages list is now sorted by name rather than category so it's easier to spot duplicates. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Revert "release: Drop envs attribute."aszlig2014-08-021-0/+4
| | | | | | | | | | | | This reverts commit 886cf96f68172021d0ac9f8fbe32e4085b7487bb. Right now, this is still needed for aszligEnv until we have refactored it to be a proper module. Signed-off-by: aszlig <aszlig@redmoonstudios.org> Conflicts: release.nix
* release: Add preliminary test for i3 module.aszlig2014-08-011-0/+4
| | | | Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release: Drop envs attribute.aszlig2014-08-011-4/+0
| | | | | | | | I'm not using them anymore, except for the kernel env. And the latter has so few dependencies that even the slowest machine shouldn't need very long to compile. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release: Fix import of nixpkgs.config.aszlig2013-10-301-1/+1
| | | | Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release: Add nixpkgs/config.nix to envs.aszlig2013-10-301-1/+3
| | | | | | | This is to incorporate overrides into the environments, as I'm using some custom packages. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* release: Add environments in addition to machines.aszlig2013-10-301-3/+7
| | | | Signed-off-by: aszlig <aszlig@redmoonstudios.org>
* Add basic Hydra recipe for prebuilding machines.aszlig2013-10-291-0/+5
Signed-off-by: aszlig <aszlig@redmoonstudios.org>