tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
treewide: remove lib.meta.enableIfAvailable
Matthew Bauer
7 years ago
c37b93bd
8a98cf97
+10
-9
3 changed files
expand all
collapse all
unified
split
lib
meta.nix
pkgs
os-specific
linux
systemd
default.nix
tools
package-management
nix
default.nix
-2
lib/meta.nix
···
86
86
then { system = elem; }
87
87
else { parsed = elem; };
88
88
in lib.matchAttrs pattern platform;
89
89
-
90
90
-
enableIfAvailable = p: if p.meta.available or true then [ p ] else [];
91
89
}
+7
-5
pkgs/os-specific/linux/systemd/default.nix
···
1
1
{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, intltool, gperf, libcap, kmod
2
2
, zlib, xz, pam, acl, cryptsetup, libuuid, m4, utillinux, libffi
3
3
, glib, kbd, libxslt, coreutils, libgcrypt, libgpgerror, libidn2, libapparmor
4
4
-
, audit, lz4, bzip2, kexectools, libmicrohttpd
4
4
+
, audit, lz4, bzip2, libmicrohttpd
5
5
, linuxHeaders ? stdenv.cc.libc.linuxHeaders
6
6
-
, libseccomp, iptables, gnu-efi
6
6
+
, iptables, gnu-efi
7
7
, autoreconfHook, gettext, docbook_xsl, docbook_xml_dtd_42, docbook_xml_dtd_45
8
8
, ninja, meson, python3Packages, glibcLocales
9
9
, patchelf
···
11
11
, hostPlatform
12
12
, buildPackages
13
13
, withSelinux ? false, libselinux
14
14
+
, withLibseccomp ? libseccomp.meta.available, libseccomp
15
15
+
, withKexectools ? kexectools.meta.available, kexectools
14
16
}:
15
17
16
18
let
···
42
44
[ linuxHeaders libcap kmod xz pam acl
43
45
/* cryptsetup */ libuuid glib libgcrypt libgpgerror libidn2
44
46
libmicrohttpd ] ++
45
45
-
stdenv.lib.meta.enableIfAvailable kexectools ++
46
46
-
stdenv.lib.meta.enableIfAvailable libseccomp ++
47
47
+
stdenv.lib.optional withKexectools kexectools ++
48
48
+
stdenv.lib.optional withLibseccomp libseccomp ++
47
49
[ libffi audit lz4 bzip2 libapparmor
48
50
iptables gnu-efi
49
51
# This is actually native, but we already pull it from buildPackages
50
52
pythonLxmlEnv
51
51
-
] ++ stdenv.lib.optionals withSelinux [ libselinux ];
53
53
+
] ++ stdenv.lib.optional withSelinux libselinux;
52
54
53
55
#dontAddPrefix = true;
54
56
+3
-2
pkgs/tools/package-management/nix/default.nix
···
1
1
{ lib, stdenv, fetchurl, fetchFromGitHub, perl, curl, bzip2, sqlite, openssl ? null, xz
2
2
, pkgconfig, boehmgc, perlPackages, libsodium, aws-sdk-cpp, brotli, boost
3
3
, autoreconfHook, autoconf-archive, bison, flex, libxml2, libxslt, docbook5, docbook5_xsl
4
4
-
, libseccomp, busybox-sandbox-shell
4
4
+
, busybox-sandbox-shell
5
5
, hostPlatform, buildPlatform
6
6
, storeDir ? "/nix/store"
7
7
, stateDir ? "/nix/var"
8
8
, confDir ? "/etc"
9
9
+
, withLibseccomp ? libseccomp.meta.available, libseccomp
9
10
}:
10
11
11
12
let
···
30
31
buildInputs = [ curl openssl sqlite xz bzip2 ]
31
32
++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium
32
33
++ lib.optionals is20 [ brotli ] # Since 1.12
33
33
-
++ lib.meta.enableIfAvailable libseccomp
34
34
+
++ lib.optional withLibseccomp libseccomp
34
35
++ lib.optional ((stdenv.isLinux || stdenv.isDarwin) && is20)
35
36
(aws-sdk-cpp.override {
36
37
apis = ["s3"];