lol
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v206 84 lines 2.3 kB view raw
1/* A Hydra jobset to test Guile-using applications and libraries with the 2 Guile 2.x pre-releases. 3 4 -- ludo@gnu.org */ 5 6let 7 allPackages = import ./all-packages.nix; 8 9 pkgsFun = { system ? builtins.currentSystem }: 10 allPackages { 11 inherit system; 12 config.packageOverrides = pkgs: { 13 guile = pkgs.guile_2_0; 14 }; 15 }; 16 17 pkgs = pkgsFun {}; 18 19 toJob = x: if builtins.isAttrs x then x else 20 { type = "job"; systems = x; schedulingPriority = 10; }; 21 22 /* Perform a job on the given set of platforms. The function `f' is 23 called by Hydra for each platform, and should return some job 24 to build on that platform. `f' is passed the Nixpkgs collection 25 for the platform in question. */ 26 testOn = systems: f: {system ? builtins.currentSystem}: 27 if pkgs.lib.elem system systems 28 then f (pkgsFun {inherit system;}) 29 else {}; 30 31 /* Map an attribute of the form `foo = [platforms...]' to `testOn 32 [platforms...] (pkgs: pkgs.foo)'. */ 33 mapTestOn = pkgs.lib.mapAttrsRecursiveCond 34 (as: !(as ? type && as.type == "job")) 35 (path: value: 36 let 37 job = toJob value; 38 getPkg = pkgs: 39 pkgs.lib.addMetaAttrs { schedulingPriority = toString job.schedulingPriority; } 40 (pkgs.lib.getAttrFromPath path pkgs); 41 in testOn job.systems getPkg); 42 43 inherit (pkgs.lib.platforms) linux darwin cygwin allBut all; 44 45in (mapTestOn { 46 /* The package list below was obtained with: 47 48 cat top-level/all-packages.nix \ 49 | grep -B3 'guile[^=]*$' \ 50 | grep '^[[:blank:]]*[a-zA-Z0-9_]\+[[:blank:]]*=' \ 51 | sed -es'/^[[:blank:]]*\(.\+\)[[:blank:]]*=.*$/\1= linux;/g' 52 53 with some minor edits. 54 */ 55 56 guile = linux; 57 58 autogen = linux; 59 lsh = linux; 60 mailutils = linux; 61 mcron = linux; 62 texmacs = linux; 63 guileCairo = linux; 64 guileGnome = linux; 65 guile_lib = linux; 66 guileLint = linux; 67 guile_ncurses = linux; 68 gwrap = linux; 69 swig = linux; 70 gnutls = linux; 71 slibGuile = linux; 72 dico = linux; 73 trackballs = linux; 74 beast = linux; 75 elinks = linux; 76 gnucash = linux; 77 gnunet = linux; 78 snd = linux; 79 ballAndPaddle = linux; 80 drgeo = linux; 81 lilypond = linux; 82 liquidwar = linux; 83 freetalk = linux; 84})