From b798cf6d60baf5aad5438ba5936259c64d87299c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Isma=C3=ABl=20Bouya?= Date: Sun, 12 May 2019 10:49:32 +0200 Subject: Move buildbot plugin buildslist to pkgs --- nixops/modules/buildbot/bower.nix | 9 ----- nixops/modules/buildbot/buildslist.json | 14 -------- nixops/modules/buildbot/default.nix | 40 +--------------------- overlays/python-packages/apprise/apprise.json | 15 -------- overlays/python-packages/apprise/default.nix | 16 --------- overlays/python-packages/buildbot.nix | 8 +++++ overlays/python-packages/default.nix | 28 +++++++++++++-- overlays/python-packages/wokkel/default.nix | 16 --------- pkgs/default.nix | 5 +++ pkgs/python-packages/apprise/apprise.json | 15 ++++++++ pkgs/python-packages/apprise/default.nix | 11 ++++++ .../buildbot/plugins/buildslist/bower.nix | 9 +++++ .../buildbot/plugins/buildslist/buildslist.json | 14 ++++++++ .../buildbot/plugins/buildslist/default.nix | 40 ++++++++++++++++++++++ pkgs/python-packages/buildbot/plugins/default.nix | 7 ++++ pkgs/python-packages/default.nix | 6 ++++ pkgs/python-packages/wokkel.nix | 11 ++++++ 17 files changed, 153 insertions(+), 111 deletions(-) delete mode 100644 nixops/modules/buildbot/bower.nix delete mode 100644 nixops/modules/buildbot/buildslist.json delete mode 100644 overlays/python-packages/apprise/apprise.json delete mode 100644 overlays/python-packages/apprise/default.nix create mode 100644 overlays/python-packages/buildbot.nix delete mode 100644 overlays/python-packages/wokkel/default.nix create mode 100644 pkgs/python-packages/apprise/apprise.json create mode 100644 pkgs/python-packages/apprise/default.nix create mode 100644 pkgs/python-packages/buildbot/plugins/buildslist/bower.nix create mode 100644 pkgs/python-packages/buildbot/plugins/buildslist/buildslist.json create mode 100644 pkgs/python-packages/buildbot/plugins/buildslist/default.nix create mode 100644 pkgs/python-packages/buildbot/plugins/default.nix create mode 100644 pkgs/python-packages/default.nix create mode 100644 pkgs/python-packages/wokkel.nix diff --git a/nixops/modules/buildbot/bower.nix b/nixops/modules/buildbot/bower.nix deleted file mode 100644 index 8b26e0a..0000000 --- a/nixops/modules/buildbot/bower.nix +++ /dev/null @@ -1,9 +0,0 @@ -# Generated by bower2nix v3.2.0 (https://github.com/rvl/bower2nix) -{ fetchbower, buildEnv }: -buildEnv { name = "bower-env"; ignoreCollisions = true; paths = [ - (fetchbower "jquery" "2.1.1" "2.1.1" "1qir36vi0bppjr9ckm6303vk1f1dkvq5wandpihb7dxl76s832bd") - (fetchbower "angular" "1.5.11" "~1.5.3" "1sw31v3dhmxwgrmncw2f9yl07i9px62ssbj0739zsgi59cq2khl7") - (fetchbower "lodash" "2.4.2" "~2.4.1" "0bhqarlvhlrxfvcgnxgsrsjgi6az4c117ffxyfi7gjwr9cvrzz4q") - (fetchbower "angular-mocks" "1.5.11" "~1.5.3" "0yv0396fw51i6d9lwiwf241rmc28rnxgg2aa9vsc7dnm4qjkn6gx") - (fetchbower "buildbot-data" "2.1.0" "~2.1.0" "0hkmm1byy7d712898lhkxf7i0wshmd1f8cr98iz67679nm6abimk") -]; } diff --git a/nixops/modules/buildbot/buildslist.json b/nixops/modules/buildbot/buildslist.json deleted file mode 100644 index 2418d17..0000000 --- a/nixops/modules/buildbot/buildslist.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "tag": "9e87787-master", - "meta": { - "name": "buildslist", - "url": "gitolite@git.immae.eu:perso/Immae/Projets/Buildbot/buildslist", - "branch": "master" - }, - "git": { - "url": "gitolite@git.immae.eu:perso/Immae/Projets/Buildbot/buildslist", - "rev": "9e87787b40f4d6435218268e516be56eacd8d17b", - "sha256": "0bli9w0xwpij23jblggz2zwhb7y3gkjdvsppcy6ia3m0x0siclpi", - "fetchSubmodules": true - } -} diff --git a/nixops/modules/buildbot/default.nix b/nixops/modules/buildbot/default.nix index 5cf833b..d7dd479 100644 --- a/nixops/modules/buildbot/default.nix +++ b/nixops/modules/buildbot/default.nix @@ -1,44 +1,6 @@ { lib, pkgs, config, myconfig, mylibs, ... }: let varDir = "/var/lib/buildbot"; - buildslist_src = mylibs.fetchedGitPrivate ./buildslist.json; - buildslist_yarn = mylibs.yarn2nixPackage.mkYarnModules rec { - name = "buildslist-yarn-modules"; - pname = name; - inherit (pkgs.buildbot-pkg) version; - packageJSON = "${buildslist_src.src}/package.json"; - yarnLock = "${buildslist_src.src}/yarn.lock"; - pkgConfig = { - all = { buildInputs = [ mylibs.yarn2nixPackage.src ]; }; - }; - }; - buildslist_bower = pkgs.buildBowerComponents { - name = "buildslist"; - generated = ./bower.nix; - src = "${buildslist_src.src}/guanlecoja/"; - }; - - buildslist = pkgs.python3Packages.buildPythonPackage rec { - pname = "buildbot-buildslist"; - inherit (pkgs.buildbot-pkg) version; - - preConfigure = '' - export HOME=$PWD - cp -a ${buildslist_yarn}/node_modules . - chmod -R u+w node_modules - cp -a ${buildslist_bower}/bower_components ./libs - chmod -R u+w libs - ''; - propagatedBuildInputs = with pkgs.python3Packages; [ - (klein.overridePythonAttrs(old: { checkPhase = ""; })) - buildbot-pkg - ]; - nativeBuildInputs = with pkgs; [ yarn nodejs ]; - buildInputs = [ buildslist_yarn buildslist_bower ]; - - doCheck = false; - src = buildslist_src.src; - }; buildbot_common = pkgs.python3Packages.buildPythonPackage rec { name = "buildbot_common"; src = ./common; @@ -48,7 +10,7 @@ let cp -a $src $out/${pkgs.python3.pythonForBuild.sitePackages}/buildbot_common ''; }; - buildbot = pkgs.python3Packages.buildbot-full.withPlugins ([ buildslist ]); + buildbot = pkgs.python3Packages.buildbot-full; in { options = { diff --git a/overlays/python-packages/apprise/apprise.json b/overlays/python-packages/apprise/apprise.json deleted file mode 100644 index b408ea4..0000000 --- a/overlays/python-packages/apprise/apprise.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "tag": "c9b957c-master", - "meta": { - "name": "apprise", - "url": "https://github.com/caronc/apprise", - "branch": "master" - }, - "github": { - "owner": "caronc", - "repo": "apprise", - "rev": "c9b957c4341e7d43e5be6463bd317a7401d083d9", - "sha256": "01zz4mh3xvplrm5xalzrcncnh0jq5y51pmdxkr4hdd6dz9wx0mbg", - "fetchSubmodules": true - } -} diff --git a/overlays/python-packages/apprise/default.nix b/overlays/python-packages/apprise/default.nix deleted file mode 100644 index 99e04ad..0000000 --- a/overlays/python-packages/apprise/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -self: super: { - python3 = super.python3.override { - packageOverrides = python-self: python-super: { - apprise = python-self.buildPythonPackage rec { - pname = "apprise"; - version = "0.7.4"; - src = (self.mylibs.fetchedGithub ./apprise.json).src; - propagatedBuildInputs = with python-self; [ decorator - requests requests_oauthlib oauthlib urllib3 six click - markdown pyyaml sleekxmpp - ]; - doChecks = false; - }; - }; - }; -} diff --git a/overlays/python-packages/buildbot.nix b/overlays/python-packages/buildbot.nix new file mode 100644 index 0000000..ccf2f6a --- /dev/null +++ b/overlays/python-packages/buildbot.nix @@ -0,0 +1,8 @@ +self: super: { + pythonOverrides = self.buildPythonOverrides (pyself: pysuper: { + buildbot-plugins = pysuper.buildbot-plugins // { + buildslist = self.python3PackagesPlus.buildbot-plugins.buildslist; + }; + buildbot-full = pysuper.buildbot-full.withPlugins [ pyself.buildbot-plugins.buildslist ]; + }) super.pythonOverrides; +} diff --git a/overlays/python-packages/default.nix b/overlays/python-packages/default.nix index 7313f9e..8a9949e 100644 --- a/overlays/python-packages/default.nix +++ b/overlays/python-packages/default.nix @@ -1,4 +1,28 @@ +let + fromMyPythonPackages = name: self: super: { + pythonOverrides = self.buildPythonOverrides (pyself: pysuper: { + "${name}" = self."${pyself.python.pname}PackagesPlus"."${name}"; + }) super.pythonOverrides; + }; +in { - wokkel = import ./wokkel; - apprise = import ./apprise; + # https://github.com/NixOS/nixpkgs/issues/44426 + # needs to come before all other in alphabetical order (or make use of + # lib.mkBefore) + __pythonOverlayFix = self: super: let + pyNames = [ "python3" "python36" "python37" ]; + overriddenPython = name: [ + { inherit name; value = super.${name}.override { packageOverrides = self.pythonOverrides; }; } + { name = "${name}Packages"; value = self.recurseIntoAttrs self.${name}.pkgs; } + ]; + overriddenPythons = builtins.concatLists (map overriddenPython pyNames); + in { + pythonOverrides = pyself: pysuper: {}; + buildPythonOverrides = newOverrides: currentOverrides: super.lib.composeExtensions newOverrides currentOverrides; + } // super.lib.attrsets.listToAttrs overriddenPythons; + + + apprise = fromMyPythonPackages "apprise"; + buildbot = import ./buildbot.nix; + wokkel = fromMyPythonPackages "wokkel"; } diff --git a/overlays/python-packages/wokkel/default.nix b/overlays/python-packages/wokkel/default.nix deleted file mode 100644 index 5d0ab4a..0000000 --- a/overlays/python-packages/wokkel/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -self: super: { - python3 = super.python3.override { - packageOverrides = python-self: python-super: { - wokkel = python-self.buildPythonPackage rec { - pname = "wokkel"; - version = "18.0.0"; - src = python-self.fetchPypi { - inherit pname version; - sha256 = "1spq44gg8gsviqx1dvlmjpgfc0wk0jpyx4ap01y2pad1ai9cw016"; - }; - propagatedBuildInputs = with python-self; [ twisted.extras.tls twisted incremental dateutil ]; - doChecks = false; - }; - }; - }; -} diff --git a/pkgs/default.nix b/pkgs/default.nix index 18fc3b3..26b32e1 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -43,4 +43,9 @@ rec { private = if builtins.pathExists (./. + "/private") then import ./private { inherit pkgs; } else { webapps = {}; }; + + python3PackagesPlus = callPackage ./python-packages { + python = python3; + inherit mylibs; + }; } diff --git a/pkgs/python-packages/apprise/apprise.json b/pkgs/python-packages/apprise/apprise.json new file mode 100644 index 0000000..b408ea4 --- /dev/null +++ b/pkgs/python-packages/apprise/apprise.json @@ -0,0 +1,15 @@ +{ + "tag": "c9b957c-master", + "meta": { + "name": "apprise", + "url": "https://github.com/caronc/apprise", + "branch": "master" + }, + "github": { + "owner": "caronc", + "repo": "apprise", + "rev": "c9b957c4341e7d43e5be6463bd317a7401d083d9", + "sha256": "01zz4mh3xvplrm5xalzrcncnh0jq5y51pmdxkr4hdd6dz9wx0mbg", + "fetchSubmodules": true + } +} diff --git a/pkgs/python-packages/apprise/default.nix b/pkgs/python-packages/apprise/default.nix new file mode 100644 index 0000000..d310599 --- /dev/null +++ b/pkgs/python-packages/apprise/default.nix @@ -0,0 +1,11 @@ +{ mylibs, pythonPackages }: with pythonPackages; +buildPythonPackage rec { + pname = "apprise"; + version = "0.7.4"; + src = (mylibs.fetchedGithub ./apprise.json).src; + propagatedBuildInputs = [ decorator requests + requests_oauthlib oauthlib urllib3 six click markdown pyyaml + sleekxmpp + ]; + doChecks = false; +} diff --git a/pkgs/python-packages/buildbot/plugins/buildslist/bower.nix b/pkgs/python-packages/buildbot/plugins/buildslist/bower.nix new file mode 100644 index 0000000..8b26e0a --- /dev/null +++ b/pkgs/python-packages/buildbot/plugins/buildslist/bower.nix @@ -0,0 +1,9 @@ +# Generated by bower2nix v3.2.0 (https://github.com/rvl/bower2nix) +{ fetchbower, buildEnv }: +buildEnv { name = "bower-env"; ignoreCollisions = true; paths = [ + (fetchbower "jquery" "2.1.1" "2.1.1" "1qir36vi0bppjr9ckm6303vk1f1dkvq5wandpihb7dxl76s832bd") + (fetchbower "angular" "1.5.11" "~1.5.3" "1sw31v3dhmxwgrmncw2f9yl07i9px62ssbj0739zsgi59cq2khl7") + (fetchbower "lodash" "2.4.2" "~2.4.1" "0bhqarlvhlrxfvcgnxgsrsjgi6az4c117ffxyfi7gjwr9cvrzz4q") + (fetchbower "angular-mocks" "1.5.11" "~1.5.3" "0yv0396fw51i6d9lwiwf241rmc28rnxgg2aa9vsc7dnm4qjkn6gx") + (fetchbower "buildbot-data" "2.1.0" "~2.1.0" "0hkmm1byy7d712898lhkxf7i0wshmd1f8cr98iz67679nm6abimk") +]; } diff --git a/pkgs/python-packages/buildbot/plugins/buildslist/buildslist.json b/pkgs/python-packages/buildbot/plugins/buildslist/buildslist.json new file mode 100644 index 0000000..27ca94c --- /dev/null +++ b/pkgs/python-packages/buildbot/plugins/buildslist/buildslist.json @@ -0,0 +1,14 @@ +{ + "tag": "9e87787-master", + "meta": { + "name": "buildslist", + "url": "https://git.immae.eu/perso/Immae/Projets/Buildbot/buildslist", + "branch": "master" + }, + "git": { + "url": "https://git.immae.eu/perso/Immae/Projets/Buildbot/buildslist", + "rev": "9e87787b40f4d6435218268e516be56eacd8d17b", + "sha256": "0bli9w0xwpij23jblggz2zwhb7y3gkjdvsppcy6ia3m0x0siclpi", + "fetchSubmodules": true + } +} diff --git a/pkgs/python-packages/buildbot/plugins/buildslist/default.nix b/pkgs/python-packages/buildbot/plugins/buildslist/default.nix new file mode 100644 index 0000000..372968a --- /dev/null +++ b/pkgs/python-packages/buildbot/plugins/buildslist/default.nix @@ -0,0 +1,40 @@ +{ mylibs, buildBowerComponents, pythonPackages, yarn, nodejs }: +let + buildslist_src = mylibs.fetchedGit ./buildslist.json; + buildslist_yarn = mylibs.yarn2nixPackage.mkYarnModules rec { + name = "buildslist-yarn-modules"; + pname = name; + inherit (pythonPackages.buildbot-pkg) version; + packageJSON = "${buildslist_src.src}/package.json"; + yarnLock = "${buildslist_src.src}/yarn.lock"; + pkgConfig = { + all = { buildInputs = [ mylibs.yarn2nixPackage.src ]; }; + }; + }; + buildslist_bower = buildBowerComponents { + name = "buildslist"; + generated = ./bower.nix; + src = "${buildslist_src.src}/guanlecoja/"; + }; +in +pythonPackages.buildPythonPackage rec { + pname = "buildbot-buildslist"; + inherit (pythonPackages.buildbot-pkg) version; + + preConfigure = '' + export HOME=$PWD + cp -a ${buildslist_yarn}/node_modules . + chmod -R u+w node_modules + cp -a ${buildslist_bower}/bower_components ./libs + chmod -R u+w libs + ''; + propagatedBuildInputs = with pythonPackages; [ + (klein.overridePythonAttrs(old: { checkPhase = ""; })) + buildbot-pkg + ]; + nativeBuildInputs = [ yarn nodejs ]; + buildInputs = [ buildslist_yarn buildslist_bower ]; + + doCheck = false; + src = buildslist_src.src; +} diff --git a/pkgs/python-packages/buildbot/plugins/default.nix b/pkgs/python-packages/buildbot/plugins/default.nix new file mode 100644 index 0000000..4952819 --- /dev/null +++ b/pkgs/python-packages/buildbot/plugins/default.nix @@ -0,0 +1,7 @@ +{ mylibs, callPackage, python }: +{ + buildslist = callPackage ./buildslist { + inherit mylibs; + pythonPackages = python.pkgs; + }; +} diff --git a/pkgs/python-packages/default.nix b/pkgs/python-packages/default.nix new file mode 100644 index 0000000..747bbe6 --- /dev/null +++ b/pkgs/python-packages/default.nix @@ -0,0 +1,6 @@ +{ mylibs, callPackage, python }: +{ + apprise = callPackage ./apprise { inherit mylibs; pythonPackages = python.pkgs; }; + buildbot-plugins = callPackage ./buildbot/plugins { inherit mylibs python; }; + wokkel = callPackage ./wokkel.nix { pythonPackages = python.pkgs; }; +} diff --git a/pkgs/python-packages/wokkel.nix b/pkgs/python-packages/wokkel.nix new file mode 100644 index 0000000..b34caec --- /dev/null +++ b/pkgs/python-packages/wokkel.nix @@ -0,0 +1,11 @@ +{ pythonPackages }: with pythonPackages; +buildPythonPackage rec { + pname = "wokkel"; + version = "18.0.0"; + src = fetchPypi { + inherit pname version; + sha256 = "1spq44gg8gsviqx1dvlmjpgfc0wk0jpyx4ap01y2pad1ai9cw016"; + }; + propagatedBuildInputs = [ twisted.extras.tls twisted incremental dateutil ]; + doChecks = false; +} -- cgit v1.2.3