1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
workspace(name = "io_tweag_rules_nixpkgs")
load(
"//nixpkgs:nixpkgs.bzl",
"nixpkgs_cc_configure",
"nixpkgs_git_repository",
"nixpkgs_local_repository",
"nixpkgs_package",
)
# For tests
nixpkgs_git_repository(
name = "remote_nixpkgs",
remote = "https://github.com/NixOS/nixpkgs",
revision = "18.09",
sha256 = "6451af4083485e13daa427f745cbf859bc23cb8b70454c017887c006a13bd65e",
)
nixpkgs_local_repository(
name = "nixpkgs",
nix_file = "//:nixpkgs.nix",
)
nixpkgs_package(
name = "nixpkgs-git-repository-test",
attribute_path = "hello",
repositories = {"nixpkgs": "@remote_nixpkgs"},
)
nixpkgs_package(
name = "hello",
# Deliberately not repository, to test whether repositories works.
repositories = {"nixpkgs": "@nixpkgs"},
)
nixpkgs_package(
name = "expr-test",
nix_file_content = "let pkgs = import <nixpkgs> {}; in pkgs.hello",
# Deliberately not @nixpkgs, to test whether explict file works.
repositories = {"nixpkgs": "//:nixpkgs.nix"},
)
nixpkgs_package(
name = "attribute-test",
attribute_path = "hello",
repository = "@nixpkgs",
)
nixpkgs_package(
name = "expr-attribute-test",
attribute_path = "hello",
nix_file_content = "import <nixpkgs> {}",
repository = "@nixpkgs",
)
nixpkgs_package(
name = "nix-file-test",
attribute_path = "hello",
nix_file = "//tests:nixpkgs.nix",
repository = "@nixpkgs",
)
nixpkgs_package(
name = "nix-file-deps-test",
nix_file = "//tests:hello.nix",
nix_file_deps = ["//tests:pkgname.nix"],
repository = "@nixpkgs",
)
nixpkgs_package(
name = "output-filegroup-test",
nix_file = "//tests:output.nix",
repository = "@nixpkgs",
)
nixpkgs_package(
name = "extra-args-test",
nix_file_content = """
{ packagePath }: (import <nixpkgs> {}).${packagePath}
""",
repository = "@nixpkgs",
nixopts = ["--argstr", "packagePath", "hello"],
)
nixpkgs_package(
name = "output-filegroup-manual-test",
build_file_content = """
package(default_visibility = [ "//visibility:public" ])
filegroup(
name = "manual-filegroup",
srcs = glob(["hi-i-exist", "hi-i-exist-too", "bin/*"]),
)
""",
nix_file = "//tests:output.nix",
repository = "@nixpkgs",
)
nixpkgs_cc_configure(repository = "@remote_nixpkgs")
|