mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-26 08:53:21 +00:00
Allow packages to be marked as "broken" by setting meta.broken
The effect is that they won't show up in "nix-env -qa" anymore.
This commit is contained in:
parent
01087750ba
commit
754704ea18
@ -118,6 +118,15 @@ interpretation:</para>
|
||||
package).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>broken</varname></term>
|
||||
<listitem><para>If set to <literal>true</literal>, the package is
|
||||
marked as “broken”, meaning that it won’t show up in
|
||||
<literal>nix-env -qa</literal>, and cannot be built or installed.
|
||||
Sush packages should be removed from Nixpkgs eventually unless
|
||||
they are fixed.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
|
||||
|
@ -279,5 +279,5 @@
|
||||
./virtualisation/libvirtd.nix
|
||||
#./virtualisation/nova.nix
|
||||
./virtualisation/virtualbox-guest.nix
|
||||
./virtualisation/xen-dom0.nix
|
||||
#./virtualisation/xen-dom0.nix
|
||||
]
|
||||
|
@ -16,5 +16,6 @@ pythonPackages.buildPythonPackage rec {
|
||||
meta = {
|
||||
homepage = https://github.com/rackspace/python-novaclient;
|
||||
description = "Client library and command line tool for the OpenStack Nova API";
|
||||
broken = true;
|
||||
};
|
||||
}
|
||||
|
@ -90,5 +90,6 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
homepage = http://nova.openstack.org/;
|
||||
description = "OpenStack Compute (a.k.a. Nova), a cloud computing fabric controller";
|
||||
broken = true;
|
||||
};
|
||||
}
|
||||
|
@ -136,5 +136,6 @@ stdenv.mkDerivation {
|
||||
description = "Xen hypervisor and management tools for Dom0";
|
||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||
maintainers = [ stdenv.lib.maintainers.eelco ];
|
||||
broken = true;
|
||||
};
|
||||
}
|
||||
|
@ -18,6 +18,8 @@ let
|
||||
|
||||
allowUnfree = config.allowUnfree or true && builtins.getEnv "HYDRA_DISALLOW_UNFREE" != "1";
|
||||
|
||||
allowBroken = builtins.getEnv "NIXPKGS_ALLOW_BROKEN" == "1";
|
||||
|
||||
stdenvGenerator = setupScript: rec {
|
||||
|
||||
# The stdenv that we are producing.
|
||||
@ -51,6 +53,8 @@ let
|
||||
mkDerivation = attrs:
|
||||
if !allowUnfree && (let l = lib.lists.toList attrs.meta.license or []; in lib.lists.elem "unfree" l || lib.lists.elem "unfree-redistributable" l) then
|
||||
throw "package ‘${attrs.name}’ has an unfree license, refusing to evaluate"
|
||||
else if !allowBroken && attrs.meta.broken or false then
|
||||
throw "you can't use package ‘${attrs.name}’ because it has been marked as broken"
|
||||
else
|
||||
lib.addPassthru (derivation (
|
||||
(removeAttrs attrs ["meta" "passthru" "crossAttrs"])
|
||||
|
Loading…
Reference in New Issue
Block a user