| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
Apart from an evaluation error (because ["nixos" "keymap"] results in an
attrset rather than a plain derivation), checking for the active keymap
explicitly makes more sense here. For example a user of a Neo keyboard
layout won't care about a failure of the Dvorak keyboard layout and vice
versa.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds the following missing tests which were missing for our
machine-based checks:
* Taskserver
* bridging, IPv4 and IPv6 for containers
* dnscrypt-proxy
* imperative containers
* keymap (only runs if not on qwerty)
* netbooting
These are the tests which were missing in Vuizvui as of current nixpkgs
revision NixOS/nixpkgs@bf8130684878747be7b1cc393f8aa147c500f14f.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
| |
With NixOS/nixpkgs#13585 landing (NixOS/nixpkgs@f70ec0d) in master, the
tests are now named differently, so we need to fix it.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In NixOS/nixpkgs@d4636fa, the nixosPinVersion got removed, so we need to
avoid evaluating it.
Some other tests were added in the meantime, namely:
* PostgreSQL (NixOS/nixpkgs@109ba4c)
* Grsecurity (NixOS/nixpkgs@dd18447)
* initrd-network (NixOS/nixpkgs@cc925d0)
* Mathics (NixOS/nixpkgs@fe8498f)
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
| |
This reverts commit 71d24b28c16fbae58d1ecfeaecf5a26c7ec015da.
Evaluation has been fixed upstream at NixOS/nixpkgs@c4de45b and the test
should succeed after NixOS/nixpkgs@5caa8ab as well.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Quake 3 demo data have been marked as "unfreeRedistributable" in
NixOS/nixpkgs@6b447a3, which causes this test to not evaluate unless we
set config.allowUnfree to true.
I guess the best solution to fix this upstream is to use something like
OpenArena for the Quake 3 tests, because I didn't manage to find
anything regarding the demo files and/or whether those are
redistributable or not.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
I've added that test in NixOS/nixpkgs@4c61faa and it fails at the
moment, still leaving the channels in a broken state in regards to
networkd.
The reason I'm doing this anyway is to ensure I won't forget to add that
test here as well. We can't easily go back to the "not broken" state
anymore, except if we roll back to a version with systemd < 228.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
| |
This was just pushed a few minutes ago as commit
NixOS/nixpkgs@565707c57abc6ee9e81d4f6c9bd5fed5bbac2d40.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Using an equality test on an attribute set is actually a very bad idea,
because it forces strict evaluation.
In this case a simple test on the kernel version between the defined one
and the available one should be sufficient.
And if we have a false-positive in test inclusions it doesn't hurt
anyway.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
| |
This time I've gone through the hoops of almost running out of memory,
because evaluating the channel expression now eats lots of RAM.
Meaning: I've now actually tested it on my system without just throwing
it at the Hydra box which has lots of RAM... unlike my local machine :-(
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
| |
Forgot to include pkgs to module args.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
| |
I've added all tests that are not related to packages in
environment.systemPackages or are otherwise tricky to include or to
distinguish (for example NFSv3 vs. NFSv4).
So we now should have a pretty good test coverage for all of our
machines.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
| |
That way we have everything regarding the vuizvui testing system in one
module instead of two.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
| |
We should emit the actual derivations but instead just the main
attribute "nixos.networking" was added to vuizvui.requiredTests.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
| |
Unfortunately, we went into trouble and the Hydra machine not only
consumed lots of ram during evaluation but it also triggered a bunch of
evaluation errors because the available tests were strictly evaluated.
Using attribute paths consisting of plain strings doesn't have the same
problem, even though they look a bit uglier.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
| |
So my gut feeling in 90c080e was't wrong after all, so we need to create
jobs for all the tests the machines include.
In order to make this easier, we're going to re-use the collection of
all test attributes from release.nix so putting it in lib/ makes sense.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
| |
This is basically just to get started and for testing whether our idea
will actually work out as planned. My gut feeling is that Hydra
explicitly needs jobs for these tests, but we'll see.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is going to be used in modules or configurations to include tests
specific to the module, for example let's say you have a foo.nix module
that defines a foo service and you have a test named "foo" in the
tests.vuizvui namespace.
You can use it like this:
{ config, tests, lib, ... }:
{
... other options of the foo service module ...
config = lib.mkIf config.foo.enable {
vuizvui.requiresTests = [ tests.vuizvui.foo ];
};
}
If a machine config enables the module foo (foo.enable = true) then the
"foo" test is also a constituent of the machine channel for the machine.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
| |
The idea is that modules can define a list of test jobs which need to
succeed whenever the module is used.
In the end this should make channel updates a bit less frightening for
people not already confident in using NixOS.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Having <nixpkgs-config> in PATH doesn't help in anything if we actually
forget to add the right environment variable where we import the
<nixpkgs-config> from NIX_PATH.
The reason why I choose to use <nixpkgs-config> instead of directly
specifying the config in NIXPKGS_CONFIG is that we now have _one_
environment variable (NIX_PATH) to override everything from the
<nixpkgs> version to its config.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This should make creating ~/.nixpkgs/config.nix obsolete and we can
solely decide whether we actually want these overrides by modifying
NIX_PATH alone.
The option isn't enabled by default, because this doesn't work if for
example /etc/nixos/configuration.nix is not readable by the user using
nix-env or importing <nixpkgs> by other means.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I was glad that the issues because of the longstanding GHC determinism
bug (https://ghc.haskell.org/trac/ghc/ticket/4012) happened less
frequently with GHC 7.10.
Unfortunately, they still happen, as reported by @Profpatsch at
headcounter/deployment#19 so we're going to override the GHC derivation
with an additional attribute that is exported into the environment of
the builder.
This attribute causes GHC and all dependant packages to be rebuilt on
the Headcounter Hydra. The original issue was because we're using the
official NixOS binary cache as well as building everything from source.
It's helpful for not needing to rebuild the entire world, but for
Haskell packages it's harmful until the mentioned GHC bug has been
fixed.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We were using environment.sessionVariables before, but
NixOS/nixpkgs@3f1354a added an option exclusively for this. It
internally still sets environment.sessionVariables, so it doesn't change
anything for us because we're overriding the full list anyway.
But should we switch from overriding to appending/prepending someday, we
could get unexpected behaviour, so that's why I'm switching to
nix.nixPath here.
Thanks to @devhell for bringing this to my attention.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
| |
Since NixOS/nixpkgs@e3a5bca, signed binary caches are mandatory, so
let's set it in our default profile for vuizvui.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ugh... I must have been quite distracted while writing this.
Of course, doing a mkOverride on environment.sessionVariables instead of
environment.sessionVariables.NIX_PATH is going to clear *all*
sessionVariables instead of just replacing NIX_PATH.
This time however, I did a short test with:
nix-instantiate --eval --strict -E '
(import <nixpkgs/nixos/lib/eval-config.nix> {
modules = [ ./modules/profiles/common.nix ];
}).config.environment.sessionVariables
'
... to make sure I just didn't break it *again*.
Also, I'm going to immediately test this after the next evaluation, as
my current system is lacking quite a lot of necessary sessionVariables.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
| |
That way we no longer need to rewrite anything from <nixpkgs> anymore,
because we only need to build one generation of the system and have the
right system-wide NIX_PATH for vuizvui.
For now however, let's test this properly before we can drop the rewrite
of nixos-rebuild and friends.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For packageOverrides, we only want to return the vuizvui attribute set
and nothing more. But if we want to import <vuizvui/pkgs>, we want to
have access to <nixpkgs> as well, which is especially useful when using
the <vuizvui> channel.
However, in callPackageWith we're explicitely using the vuizvui
attribute which should override the whole set of <nixpkgs>, so that
references to vuizvui packages don't need to be explicitly namespaced
within vuizvui itself and we can easily override existing packages with
this method as well (like just define a vuizvui package and it overrides
the dependency for all of vuizvui's packages).
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
|
Just moving the overrides into the base profile isn't enough here,
as we wouldn't be able to refer to packages anymore, because the global
nixpkgs.config override is now gone.
Instead, we're now putting pkgs.vuizvui.* into the NixOS module system
by a new profiles/common.nix, which is used unconditionally for all
machines.
Of course, the result of this is that we now need to change all
references to vuizvui-related packages, which also is a good thing,
because we will no longer shadow existing packages from upstream
nixpkgs.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|