From 2ef959d35f7f54cdb35e4194c870c52cf7e7c46f Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 13 Jul 2019 11:41:21 +0200 Subject: add hack to produce functional azure-cli on 19.03 --- default.nix | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/default.nix b/default.nix index c592e4c..4cf8a53 100644 --- a/default.nix +++ b/default.nix @@ -37,6 +37,76 @@ self: super: in { + # XXX hack to produce a functional azure-cli with nixpkgs 19.03 + # without this, running `az` will fail with: + # /nix/store/XXX-python3-3.6.8/bin/python: No module named azure.cli + # + # This issue needs to be bisected + # good: c1427bf45ffd9f738cb811f980a7a4accf342783 (nixpkgs 18.09) + # bad: 9ec7625cee5365c741dee7b45a19aff5d5d56205 (nixpkgs 19.03) + buildPythonPackage = let + needs_cleanup = { + azure-batch = true; + azure-common = true; + azure-graphrbac = true; + azure-mgmt-advisor = true; + azure-mgmt-authorization = true; + azure-mgmt-batch = true; + azure-mgmt-batchai = true; + azure-mgmt-billing = true; + azure-mgmt-cdn = true; + azure-mgmt-cognitiveservices = true; + azure-mgmt-consumption = true; + azure-mgmt-containerinstance = true; + azure-mgmt-containerservice = true; + azure-mgmt-cosmosdb = true; + azure-mgmt-datalake-analytics = true; + azure-mgmt-datalake-store = true; + azure-mgmt-datamigration = true; + azure-mgmt-devtestlabs = true; + azure-mgmt-dns = true; + azure-mgmt-eventgrid = true; + azure-mgmt-eventhub = true; + azure-mgmt-iothub = true; + azure-mgmt-iothubprovisioningservices = true; + azure-mgmt-keyvault = true; + azure-mgmt-loganalytics = true; + azure-mgmt-managementgroups = true; + azure-mgmt-marketplaceordering = true; + azure-mgmt-media = true; + azure-mgmt-monitor = true; + azure-mgmt-msi = true; + azure-mgmt-network = true; + azure-mgmt-rdbms = true; + azure-mgmt-recoveryservices = true; + azure-mgmt-recoveryservicesbackup = true; + azure-mgmt-redis = true; + azure-mgmt-reservations = true; + azure-mgmt-resource = true; + azure-mgmt-search = true; + azure-mgmt-servicebus = true; + azure-mgmt-servicefabric = true; + azure-mgmt-sql = true; + azure-mgmt-storage = true; + azure-mgmt-trafficmanager = true; + azure-mgmt-web = true; + azure-storage-blob = true; + azure-storage-common = true; + }; + in attrs: + with self.lib; + overrideDerivation (python-super.buildPythonPackage attrs) (drv: + optionalAttrs (needs_cleanup.${drv.pname} or false) { + postInstall = '' + ( + cd $out/lib/${python-super.python.libPrefix}/site-packages/azure + if test -e __init__.py; then + rm __init__.py + rm -R __pycache__ + fi + ) + ''; + }); applicationinsights = python-super.callPackage ./pkgs/development/python-modules/applicationinsights {}; -- cgit v1.2.3