lol

Merge branch 'master' into staging

* master: (28 commits)
go_1_9: skip flaky TestWaitGroupMisuse2
erlangR18: fix patch hashes with fetchpatch
xml2: replace dead links
nixos/pam: fix docs about path to u2f_keys file
cinelerra: add a note about parallel building
msmtp: install docs and examples (#31769)
kernel: Fix out-of-tree modules on aarch64
nixos/tests/acme: update terms of service to fix test
gixy: init at 0.1.8
pythonPackages.ConfigArgParse: 0.9.3 -> 0.12.0, refactor, move to python-modules
mono: init at 4.8
wal-g: fix license so not to break evaluation
wal-g: init at 0.1.2
maintainers: add backuitist
nixos/prometheus: Correct documentation for external_labels
spidermonkey: replace broken links
vagrant: removed custom rake gem
vagrant: 2.0.0 -> 2.0.1
nixos/prometheus: add external_labels option
nixos/prometheus: add scrape_configs.honor_labels
...

+305 -90
+3 -5
doc/languages-frameworks/rust.md
··· 24 24 Rust applications are packaged by using the `buildRustPackage` helper from `rustPlatform`: 25 25 26 26 ``` 27 - with rustPlatform; 28 - 29 - buildRustPackage rec { 27 + rustPlatform.buildRustPackage rec { 30 28 name = "ripgrep-${version}"; 31 29 version = "0.4.0"; 32 30 ··· 40 38 cargoSha256 = "0q68qyl2h6i0qsz82z840myxlnjay8p1w5z7hfyr8fqp7wgwa9cx"; 41 39 42 40 meta = with stdenv.lib; { 43 - description = "A utility that combines the usability of The Silver Searcher with the raw speed of grep"; 41 + description = "A fast line-oriented regex search tool, similar to ag and ack"; 44 42 homepage = https://github.com/BurntSushi/ripgrep; 45 - license = with licenses; [ unlicense ]; 43 + license = licenses.unlicense; 46 44 maintainers = [ maintainers.tailhook ]; 47 45 platforms = platforms.all; 48 46 };
+1
lib/maintainers.nix
··· 67 67 avnik = "Alexander V. Nikolaev <avn@avnik.info>"; 68 68 aycanirican = "Aycan iRiCAN <iricanaycan@gmail.com>"; 69 69 bachp = "Pascal Bach <pascal.bach@nextrem.ch>"; 70 + backuitist = "Bruno Bieth"; 70 71 badi = "Badi' Abdul-Wahid <abdulwahidc@gmail.com>"; 71 72 balajisivaraman = "Balaji Sivaraman <sivaraman.balaji@gmail.com>"; 72 73 barrucadu = "Michael Walker <mike@barrucadu.co.uk>";
+1 -1
nixos/modules/security/pam.nix
··· 41 41 type = types.bool; 42 42 description = '' 43 43 If set, users listed in 44 - <filename>~/.yubico/u2f_keys</filename> are able to log in 44 + <filename>~/.config/Yubico/u2f_keys</filename> are able to log in 45 45 with the associated U2F key. 46 46 ''; 47 47 };
+33
nixos/modules/services/monitoring/prometheus/default.nix
··· 66 66 How frequently to evaluate rules by default. 67 67 ''; 68 68 }; 69 + 70 + external_labels = mkOption { 71 + type = types.attrsOf types.str; 72 + description = '' 73 + The labels to add to any time series or alerts when 74 + communicating with external systems (federation, remote 75 + storage, Alertmanager). 76 + ''; 77 + default = {}; 78 + }; 69 79 }; 70 80 }; 71 81 ··· 98 108 default = "/metrics"; 99 109 description = '' 100 110 The HTTP resource path on which to fetch metrics from targets. 111 + ''; 112 + }; 113 + honor_labels = mkOption { 114 + type = types.bool; 115 + default = false; 116 + description = '' 117 + Controls how Prometheus handles conflicts between labels 118 + that are already present in scraped data and labels that 119 + Prometheus would attach server-side ("job" and "instance" 120 + labels, manually configured target labels, and labels 121 + generated by service discovery implementations). 122 + 123 + If honor_labels is set to "true", label conflicts are 124 + resolved by keeping label values from the scraped data and 125 + ignoring the conflicting server-side labels. 126 + 127 + If honor_labels is set to "false", label conflicts are 128 + resolved by renaming conflicting labels in the scraped data 129 + to "exported_&lt;original-label&gt;" (for example 130 + "exported_instance", "exported_job") and then attaching 131 + server-side labels. This is useful for use cases such as 132 + federation, where all labels specified in the target should 133 + be preserved. 101 134 ''; 102 135 }; 103 136 scheme = mkOption {
+2 -2
nixos/tests/common/letsencrypt.nix
··· 228 228 # Retrieved via: 229 229 # curl -s -I https://acme-v01.api.letsencrypt.org/terms \ 230 230 # | sed -ne 's/^[Ll]ocation: *//p' 231 - tosUrl = "https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf"; 231 + tosUrl = "https://letsencrypt.org/documents/2017.11.15-LE-SA-v1.2.pdf"; 232 232 tosPath = builtins.head (builtins.match "https?://[^/]+(.*)" tosUrl); 233 233 234 234 tosFile = pkgs.fetchurl { 235 235 url = tosUrl; 236 - sha256 = "08b2gacdz23mzji2pjr1pwnk82a84rzvr36isif7mmi9kydl6wv3"; 236 + sha256 = "0yvyckqzj0b1xi61sypcha82nanizzlm8yqy828h2jbza7cxi26c"; 237 237 }; 238 238 239 239 resolver = let
+5 -3
pkgs/applications/misc/octoprint/default.nix
··· 54 54 55 55 in pythonPackages.buildPythonApplication rec { 56 56 name = "OctoPrint-${version}"; 57 - version = "1.3.4"; 57 + version = "1.3.5"; 58 + # 1.3.5, 2017-10-16, 77753ca02602d3a798d6b0a22535e6fd69ff448a 58 59 59 60 src = fetchFromGitHub { 60 61 owner = "foosel"; 61 62 repo = "OctoPrint"; 62 63 rev = version; 63 - sha256 = "1hci8cfmbzcghla1vmrcn6zicm8nj50drm7gp2hkr0drglq5fgr2"; 64 + sha256 = "13krv9i6gm4jn4cb327q4qma4xwwashjnc0dia8vlnbjbbvkrni4"; 64 65 }; 65 66 66 67 # We need old Tornado ··· 69 70 semantic-version flask_principal werkzeug flaskbabel tornado 70 71 psutil pyserial flask_login netaddr markdown sockjs-tornado 71 72 pylru pyyaml sarge feedparser netifaces click websocket_client 72 - scandir chainmap future dateutil 73 + scandir chainmap future dateutil futures wrapt 73 74 ]; 74 75 75 76 buildInputs = with pythonPackages; [ nose mock ddt ]; ··· 93 94 -e 's,future>=[^"]*,future,g' \ 94 95 -e 's,pyserial>=[^"]*,pyserial,g' \ 95 96 -e 's,semantic_version>=[^"]*,semantic_version,g' \ 97 + -e 's,wrapt>=[^"]*,wrapt,g' \ 96 98 setup.py 97 99 ''; 98 100
+1 -7
pkgs/applications/networking/instant-messengers/rambox/bare.nix
··· 1 - { stdenv, fetchFromGitHub, fetchNodeModules, nodejs-8_x, ruby, sencha }: 1 + { stdenv, fetchFromGitHub, fetchNodeModules, nodejs-8_x, ruby, sencha, auth0ClientID, auth0Domain }: 2 2 3 3 stdenv.mkDerivation rec { 4 4 name = "rambox-bare-${version}"; ··· 21 21 }; 22 22 23 23 patches = [ ./hide-check-for-updates.patch ./isDev.patch ]; 24 - 25 - # These credentials are only for this derivation. If you want to get credentials 26 - # for another distribution, go to https://auth0.com. If you want to reuse the same 27 - # domain, drop a line at yegortimoshenko@gmail.com! 28 - auth0ClientID = "0spuNKfIGeLAQ_Iki9t3fGxbfJl3k8SU"; 29 - auth0Domain = "nixpkgs.auth0.com"; 30 24 31 25 configurePhase = '' 32 26 echo 'var auth0Cfg = { clientID: "${auth0ClientID}", domain: "${auth0Domain}" };' > env.js
+9 -2
pkgs/applications/networking/instant-messengers/rambox/default.nix
··· 1 - { stdenv, newScope, makeWrapper, electron, xdg_utils, makeDesktopItem }: 1 + { stdenv, newScope, makeWrapper, electron, xdg_utils, makeDesktopItem 2 + # These credentials are only for this derivation. If you want to get credentials 3 + # for another distribution, go to https://auth0.com. If you want to reuse the same 4 + # domain, drop a line at yegortimoshenko@gmail.com! 5 + , auth0ClientID ? "0spuNKfIGeLAQ_Iki9t3fGxbfJl3k8SU" 6 + , auth0Domain ? "nixpkgs.auth0.com" }: 2 7 3 8 let 4 9 callPackage = newScope self; 5 10 self = { 6 11 fetchNodeModules = callPackage ./fetchNodeModules.nix {}; 7 - rambox-bare = callPackage ./bare.nix {}; 12 + rambox-bare = callPackage ./bare.nix { 13 + inherit auth0ClientID auth0Domain; 14 + }; 8 15 sencha = callPackage ./sencha {}; 9 16 }; 10 17 desktopItem = makeDesktopItem rec {
+6 -1
pkgs/applications/networking/msmtp/default.nix
··· 8 8 journal = if stdenv.isLinux then "y" else "n"; 9 9 10 10 in stdenv.mkDerivation rec { 11 - name = "msmtp-${version}"; 11 + pname = "msmtp"; 12 + name = "${pname}-${version}"; 12 13 version = "1.6.6"; 13 14 14 15 src = fetchurl { ··· 30 31 stdenv.lib.optional stdenv.isDarwin [ "--with-macosx-keyring" ]; 31 32 32 33 postInstall = '' 34 + install -d $out/share/doc/${pname}/scripts 35 + cp -r scripts/{find_alias,msmtpqueue,msmtpq,set_sendmail} $out/share/doc/${pname}/scripts 36 + install -Dm644 doc/*.example $out/share/doc/${pname} 37 + 33 38 substitute scripts/msmtpq/msmtpq $out/bin/msmtpq \ 34 39 --replace @msmtp@ $out/bin/msmtp \ 35 40 --replace @nc@ ${netcat-gnu}/bin/nc \
+4
pkgs/applications/video/cinelerra/default.nix
··· 50 50 fontconfig intltool 51 51 ]; 52 52 53 + # Note: the build may fail with e.g.: 54 + # CXX edl.o 55 + # edl.C:50:25: fatal error: versioninfo.h: No such file or directory 56 + # #include "versioninfo.h" 53 57 enableParallelBuilding = true; 54 58 55 59 meta = {
+27
pkgs/applications/window-managers/i3/status-rust.nix
··· 1 + { stdenv, rustPlatform, fetchFromGitHub, pkgconfig, dbus, gperftools }: 2 + 3 + rustPlatform.buildRustPackage rec { 4 + name = "i3status-rust-${version}"; 5 + version = "0.9.0.2017-11-09"; 6 + 7 + src = fetchFromGitHub { 8 + owner = "greshake"; 9 + repo = "i3status-rust"; 10 + rev = "5daf2cdd611bed3db804d011d5d5af34b558e615"; 11 + sha256 = "0j6h7x5mm3m7wq0if20qxc9z3qw29xgf5qb3sqwdbdpz8ykpqdgk"; 12 + }; 13 + 14 + cargoSha256 = "1197hp6d4z14j0r22bvw9ly294li0ivg6yfql4lgi27hbvzag71h"; 15 + 16 + nativeBuildInputs = [ pkgconfig ]; 17 + 18 + buildInputs = [ dbus gperftools ]; 19 + 20 + meta = with stdenv.lib; { 21 + description = "Very resource-friendly and feature-rich replacement for i3status"; 22 + homepage = https://github.com/greshake/i3status-rust; 23 + license = licenses.gpl3; 24 + maintainers = [ maintainers.backuitist ]; 25 + platforms = platforms.linux; 26 + }; 27 + }
+1
pkgs/development/compilers/go/1.9.nix
··· 119 119 ./creds-test.patch 120 120 ./remove-test-pie-1.9.patch 121 121 ./go-1.9-skip-flaky-19608.patch 122 + ./go-1.9-skip-flaky-20072.patch 122 123 ]; 123 124 124 125 postPatch = optionalString stdenv.isDarwin ''
+20
pkgs/development/compilers/go/go-1.9-skip-flaky-20072.patch
··· 1 + diff --git a/src/sync/waitgroup_test.go b/src/sync/waitgroup_test.go 2 + index e3e3096..f80d1e2 100644 3 + --- a/src/sync/waitgroup_test.go 4 + +++ b/src/sync/waitgroup_test.go 5 + @@ -6,6 +6,7 @@ package sync_test 6 + 7 + import ( 8 + "internal/race" 9 + + "internal/testenv" 10 + "runtime" 11 + . "sync" 12 + "sync/atomic" 13 + @@ -73,6 +74,7 @@ func TestWaitGroupMisuse2(t *testing.T) { 14 + if runtime.NumCPU() <= 4 { 15 + t.Skip("NumCPU<=4, skipping: this test requires parallelism") 16 + } 17 + + testenv.SkipFlaky(t, 20072) 18 + defer func() { 19 + err := recover() 20 + if err != "sync: negative WaitGroup counter" &&
+7
pkgs/development/compilers/mono/4.8.nix
··· 1 + { stdenv, callPackage, Foundation, libobjc }: 2 + 3 + callPackage ./generic-cmake.nix (rec { 4 + inherit Foundation libobjc; 5 + version = "4.8.1.0"; 6 + sha256 = "1vyvp2g28ihcgxgxr8nhzyzdmzicsh5djzk8dk1hj5p5f2k3ijqq"; 7 + })
+11
pkgs/development/compilers/rust/rust-src.nix
··· 1 + { stdenv, rustc }: 2 + 3 + stdenv.mkDerivation { 4 + name = "rust-src"; 5 + src = rustc.src; 6 + phases = [ "unpackPhase" "installPhase" ]; 7 + installPhase = '' 8 + mv src $out 9 + rm -rf $out/{ci,doc,driver,etc,grammar,llvm,rt,rtstartup,rustllvm,test,tools,vendor} 10 + ''; 11 + }
+5 -5
pkgs/development/interpreters/erlang/R18.nix
··· 1 - { mkDerivation, fetchurl }: 1 + { mkDerivation, fetchpatch }: 2 2 3 3 let 4 - rmAndPwdPatch = fetchurl { 4 + rmAndPwdPatch = fetchpatch { 5 5 url = "https://github.com/erlang/otp/commit/98b8650d22e94a5ff839170833f691294f6276d0.patch"; 6 - sha256 = "0cd5pkqrigiqz6cyma5irqwzn0bi17k371k9vlg8ir31h3zmqfip"; 6 + sha256 = "0zjs7as83prgq4d5gaw2cmnajnsprdk8cjl5kklknx0pc2b3hfg5"; 7 7 }; 8 8 9 - envAndCpPatch = fetchurl { 9 + envAndCpPatch = fetchpatch { 10 10 url = "https://github.com/erlang/otp/commit/9f9841eb7327c9fe73e84e197fd2965a97b639cf.patch"; 11 - sha256 = "10h5348p6g279b4q01i5jdqlljww5chcvrx5b4b0dv79pk0p0m9f"; 11 + sha256 = "00fx5wc88ki3z71z5q4xzi9h3whhjw1zblpn09w995ygn07m9qhm"; 12 12 }; 13 13 14 14 in mkDerivation rec {
+1 -1
pkgs/development/interpreters/spidermonkey/31.nix
··· 9 9 # probably it would be more ideal to pull a particular tag/revision 10 10 # from the mercurial repo 11 11 src = fetchurl { 12 - url = "https://people.mozilla.org/~sstangl/mozjs-31.5.0.tar.bz2"; 12 + url = "https://people.freebsd.org/~sunpoet/sunpoet/mozjs-31.5.0.tar.bz2"; 13 13 sha256 = "1q8icql5hh1g3gzg5fp4rl9rfagyhm9gilfn3dgi7qn4i1mrfqsd"; 14 14 }; 15 15
+1 -1
pkgs/development/interpreters/spidermonkey/38.nix
··· 9 9 # probably it would be more ideal to pull a particular tag/revision 10 10 # from the mercurial repo 11 11 src = fetchurl { 12 - url = "https://people.mozilla.org/~sstangl/mozjs-${version}.tar.bz2"; 12 + url = "https://people.freebsd.org/~sunpoet/sunpoet/mozjs-${version}.tar.bz2"; 13 13 sha256 = "0p4bmbpgkfsj54xschcny0a118jdrdgg0q29rwxigg3lh5slr681"; 14 14 }; 15 15
+2
pkgs/development/libraries/gstreamer/core/default.nix
··· 1 1 { stdenv, fetchurl, pkgconfig, perl, bison, flex, python, gobjectIntrospection 2 2 , glib, makeWrapper 3 + , darwin 3 4 }: 4 5 5 6 stdenv.mkDerivation rec { ··· 24 25 nativeBuildInputs = [ 25 26 pkgconfig perl bison flex python gobjectIntrospection makeWrapper 26 27 ]; 28 + buildInputs = stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.CoreServices; 27 29 28 30 propagatedBuildInputs = [ glib ]; 29 31
+21
pkgs/development/python-modules/configargparse/default.nix
··· 1 + { stdenv, lib, buildPythonPackage, fetchPypi }: 2 + 3 + buildPythonPackage rec { 4 + pname = "ConfigArgParse"; 5 + version = "0.12.0"; 6 + 7 + src = fetchPypi { 8 + inherit pname version; 9 + sha256 = "0fgkiqh6r3rbkdq3k8c48m85g52k96686rw3a6jg4lcncrkpvk98"; 10 + }; 11 + 12 + # no tests in tarball 13 + doCheck = false; 14 + 15 + meta = with lib; { 16 + description = "A drop-in replacement for argparse"; 17 + homepage = https://github.com/zorro3/ConfigArgParse; 18 + license = licenses.mit; 19 + maintainer = [ maintainers.willibutz ]; 20 + }; 21 + }
+13 -12
pkgs/development/tools/rust/racer/default.nix
··· 1 - { stdenv, fetchFromGitHub, rustPlatform, makeWrapper }: 1 + { stdenv, fetchFromGitHub, rustPlatform, makeWrapper, rustup, substituteAll }: 2 2 3 3 rustPlatform.buildRustPackage rec { 4 4 name = "racer-${version}"; 5 - version = "2.0.9"; 5 + version = "2.0.12"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "racer-rust"; 9 9 repo = "racer"; 10 10 rev = version; 11 - sha256 = "06k50f2vj2w08afh3nrlhs0amcvw2i45bhfwr70sgs395xicjswp"; 11 + sha256 = "0y1xlpjr8y8gsmmrjlykx4vwzf8akk42g35kg3kc419ry4fli945"; 12 12 }; 13 13 14 - cargoSha256 = "1w5imxyqlyv24dvzncq6dy01zn2x8p1aciyvzh8ac1x1wdjcacjc"; 14 + cargoSha256 = "1h3jv4hajdv6k309kjr6b6298kxmd0faw081i3788sl794k9mp0j"; 15 15 16 - buildInputs = [ makeWrapper ]; 16 + # rustup is required for test 17 + buildInputs = [ makeWrapper rustup ]; 17 18 18 19 preCheck = '' 19 20 export RUST_SRC_PATH="${rustPlatform.rustcSrc}" 20 21 ''; 21 - 22 + patches = [ 23 + (substituteAll { 24 + src = ./rust-src.patch; 25 + inherit (rustPlatform) rustcSrc; 26 + }) 27 + ./ignore-tests.patch 28 + ]; 22 29 doCheck = true; 23 - 24 - installPhase = '' 25 - mkdir -p $out/bin 26 - cp -p target/release/racer $out/bin/ 27 - wrapProgram $out/bin/racer --set RUST_SRC_PATH "${rustPlatform.rustcSrc}" 28 - ''; 29 30 30 31 meta = with stdenv.lib; { 31 32 description = "A utility intended to provide Rust code completion for editors and IDEs";
+22
pkgs/development/tools/rust/racer/ignore-tests.patch
··· 1 + diff -Naur --strip-trailing-cr source.org/src/racer/nameres.rs source/src/racer/nameres.rs 2 + --- source.org/src/racer/nameres.rs 2017-11-15 20:37:38.571644733 +0000 3 + +++ source/src/racer/nameres.rs 2017-11-15 20:23:20.521324031 +0000 4 + @@ -577,6 +577,7 @@ 5 + out.into_iter() 6 + } 7 + 8 + +#[ignore] 9 + #[test] 10 + fn test_do_file_search() { 11 + let cache = core::FileCache::default(); 12 + diff -Naur --strip-trailing-cr source.org/src/racer/util.rs source/src/racer/util.rs 13 + --- source.org/src/racer/util.rs 2017-11-15 19:37:55.095344120 +0000 14 + +++ source/src/racer/util.rs 2017-11-15 20:22:53.746624158 +0000 15 + @@ -475,6 +475,7 @@ 16 + 17 + } 18 + 19 + +#[ignore] 20 + #[test] 21 + fn test_get_rust_src_path_missing() { 22 + use std::env;
+10
pkgs/development/tools/rust/racer/rust-src.patch
··· 1 + --- source.org/src/racer/util.rs 1970-01-01 01:00:01.000000000 +0100 2 + +++ source/src/racer/util.rs 2017-11-15 16:50:12.904216242 +0000 3 + @@ -384,6 +384,7 @@ 4 + debug!("Nope. Trying default paths: /usr/local/src/rust/src and /usr/src/rust/src"); 5 + 6 + let default_paths = [ 7 + + "@rustcSrc@", 8 + "/usr/local/src/rust/src", 9 + "/usr/src/rust/src", 10 + ];
+5 -11
pkgs/development/tools/vagrant/default.nix
··· 1 - { stdenv, fetchurl, fetchpatch, dpkg, curl, libarchive, openssl, ruby, buildRubyGem, libiconv 1 + { stdenv, fetchurl, fetchpatch, dpkg, curl, libarchive, openssl, rake, ruby, buildRubyGem, libiconv 2 2 , libxml2, libxslt, libffi, makeWrapper, p7zip, xar, gzip, cpio }: 3 3 4 4 let 5 - version = "2.0.0"; 6 - rake = buildRubyGem { 7 - inherit ruby; 8 - gemName = "rake"; 9 - version = "10.4.2"; 10 - sha256 = "1rn03rqlf1iv6n87a78hkda2yqparhhaivfjpizblmxvlw2hk5r8"; 11 - }; 5 + version = "2.0.1"; 12 6 13 7 url = if stdenv.isLinux 14 8 then "https://releases.hashicorp.com/vagrant/${version}/vagrant_${version}_${arch}.deb" ··· 17 11 else "system ${stdenv.system} not supported"; 18 12 19 13 sha256 = { 20 - "x86_64-linux" = "184amybyxqlxqr8fk6lyx2znmci1fazsiby90q7d1xx2ihz3hm5x"; 21 - "i686-linux" = "19r1m5jila40x69m1qz2hslz7v1hdg8wwdhcq8d5qjnzwfmlw2qz"; 22 - "x86_64-darwin" = "154400iqs01235bclr8ic7g9jv01lfs766bmv7p8784r3xsblvsr"; 14 + "x86_64-linux" = "0kyqchjsy747vbvhqiynz81kik8g0xqpkv70rz7hyr9x7fl9i51g"; 15 + "i686-linux" = "0p3xhxy6shkd0393wjyj8qycdn3zqv60vnyz1b6zclz0kfah07zs"; 16 + "x86_64-darwin" = "01hr5j9k31hsdlcwv3srzk0lphd8w0n9z95jvfkschdyjm9clpwm"; 23 17 }."${stdenv.system}" or (throw "system ${stdenv.system} not supported"); 24 18 25 19 arch = builtins.replaceStrings ["-linux" "-darwin"] ["" ""] stdenv.system;
+17 -6
pkgs/os-specific/linux/kernel/manual-config.nix
··· 158 158 cp $buildRoot/{.config,Module.symvers} $dev/lib/modules/${modDirVersion}/build 159 159 make modules_prepare $makeFlags "''${makeFlagsArray[@]}" O=$dev/lib/modules/${modDirVersion}/build 160 160 161 + # Keep some extra files on some arches (powerpc, aarch64) 162 + for f in arch/powerpc/lib/crtsavres.o arch/arm64/kernel/ftrace-mod.o; do 163 + if [ -f "$buildRoot/$f" ]; then 164 + cp $buildRoot/$f $dev/lib/modules/${modDirVersion}/build/$f 165 + fi 166 + done 167 + 161 168 # !!! No documentation on how much of the source tree must be kept 162 169 # If/when kernel builds fail due to missing files, you can add 163 170 # them here. Note that we may see packages requiring headers ··· 165 172 # headers on 3.10 though. 166 173 167 174 chmod u+w -R ../source 168 - arch=`cd $dev/lib/modules/${modDirVersion}/build/arch; ls` 175 + arch=$(cd $dev/lib/modules/${modDirVersion}/build/arch; ls) 169 176 170 - # Remove unusued arches 171 - mv arch/$arch . 172 - rm -fR arch 173 - mkdir arch 174 - mv $arch arch 177 + # Remove unused arches 178 + for d in $(cd arch/; ls); do 179 + if [ "$d" = "$arch" ]; then continue; fi 180 + if [ "$arch" = arm64 ] && [ "$d" = arm ]; then continue; fi 181 + rm -rf arch/$d 182 + done 175 183 176 184 # Remove all driver-specific code (50M of which is headers) 177 185 rm -fR drivers 178 186 179 187 # Keep all headers 180 188 find . -type f -name '*.h' -print0 | xargs -0 chmod u-w 189 + 190 + # Keep linker scripts (they are required for out-of-tree modules on aarch64) 191 + find . -type f -name '*.lds' -print0 | xargs -0 chmod u-w 181 192 182 193 # Keep root and arch-specific Makefiles 183 194 chmod u-w Makefile
+4 -3
pkgs/servers/tvheadend/default.nix
··· 3 3 , which, zlib }: 4 4 5 5 let 6 - version = "4.2.1"; 6 + version = "4.2.4"; 7 7 8 8 in stdenv.mkDerivation rec { 9 9 name = "tvheadend-${version}"; ··· 12 12 owner = "tvheadend"; 13 13 repo = "tvheadend"; 14 14 rev = "v${version}"; 15 - sha256 = "1lhk8psvifmn4kjwyfxjj21z0apyr59zizzsfd4j22v7bk66rrl9"; 15 + sha256 = "1kydjmgv0nrllgi2s6aczq4x9ag01c8qm8w962qb52fzdfw7fs6k"; 16 16 }; 17 17 18 18 buildInputs = [ ··· 39 39 preConfigure = '' 40 40 patchShebangs ./configure 41 41 42 - substituteInPlace src/config.c --replace /usr/bin/tar ${gnutar}/bin/tar 42 + substituteInPlace src/config.c \ 43 + --replace /usr/bin/tar ${gnutar}/bin/tar 43 44 44 45 # the version detection script `support/version` reads this file if it 45 46 # exists, so let's just use that
+41
pkgs/tools/admin/gixy/default.nix
··· 1 + { lib, fetchFromGitHub, python }: 2 + 3 + python.pkgs.buildPythonApplication rec { 4 + name = "gixy-${version}"; 5 + version = "0.1.8"; 6 + 7 + # package is only compatible with python 2.7 and 3.5+ 8 + disabled = with python.pkgs; !(pythonAtLeast "3.5" || isPy27); 9 + 10 + src = fetchFromGitHub { 11 + owner = "yandex"; 12 + repo = "gixy"; 13 + rev = "v${version}"; 14 + sha256 = "0dg8j8pqlzdvmyfkphrizfqzggr64npb9mnm1dcwm6c3z6k2b0ii"; 15 + }; 16 + 17 + postPatch = '' 18 + sed -ie '/argparse/d' setup.py 19 + ''; 20 + 21 + propagatedBuildInputs = with python.pkgs; [ 22 + cached-property 23 + ConfigArgParse 24 + pyparsing 25 + jinja2 26 + nose 27 + six 28 + ]; 29 + 30 + meta = with lib; { 31 + description = "Nginx configuration static analyzer"; 32 + longDescription = '' 33 + Gixy is a tool to analyze Nginx configuration. 34 + The main goal of Gixy is to prevent security misconfiguration and automate flaw detection. 35 + ''; 36 + homepage = https://github.com/yandex/gixy; 37 + license = licenses.mpl20; 38 + maintainers = [ maintainers.willibutz ]; 39 + platforms = platforms.linux; 40 + }; 41 + }
+16
pkgs/tools/backup/wal-g/default.nix
··· 1 + { stdenv, buildGoPackage, fetchurl }: 2 + buildGoPackage rec { 3 + name = "wal-g-${version}"; 4 + version = "0.1.2"; 5 + src = fetchurl { 6 + url = https://github.com/wal-g/wal-g/archive/v0.1.2.tar.gz; 7 + sha256 = "0zkjs72gq7sc9cqqzxr6ms1ibk8466zpwmrziq9p4jv9r4iq3bfb"; 8 + }; 9 + goPackagePath = "github.com/wal-g/wal-g"; 10 + meta = { 11 + homepage = https://github.com/wal-g/wal-g; 12 + license = stdenv.lib.licenses.asl20; 13 + description = "An archival restoration tool for Postgres"; 14 + maintainers = [ stdenv.lib.maintainers.ocharles ]; 15 + }; 16 + }
+2 -2
pkgs/tools/text/xml/xml2/default.nix
··· 4 4 name = "xml2-0.5"; 5 5 6 6 src = fetchurl { 7 - url = "http://download.ofb.net/gale/${name}.tar.gz"; 7 + url = https://web.archive.org/web/20160427221603/http://download.ofb.net/gale/xml2-0.5.tar.gz; 8 8 sha256 = "01cps980m99y99cnmvydihga9zh3pvdsqag2fi1n6k2x7rfkl873"; 9 9 }; 10 10 ··· 12 12 buildInputs = [ libxml2 ]; 13 13 14 14 meta = with stdenv.lib; { 15 - homepage = http://ofb.net/~egnor/xml2/; 15 + homepage = https://web.archive.org/web/20160515005047/http://dan.egnor.name:80/xml2; 16 16 description = "Tools for command line processing of XML, HTML, and CSV"; 17 17 license = licenses.gpl2Plus; 18 18 platforms = platforms.all;
+13 -6
pkgs/top-level/all-packages.nix
··· 1100 1100 1101 1101 gist = callPackage ../tools/text/gist { }; 1102 1102 1103 + gixy = callPackage ../tools/admin/gixy { }; 1104 + 1103 1105 glide = callPackage ../development/tools/glide { }; 1104 1106 1105 1107 glock = callPackage ../development/tools/glock { }; ··· 6181 6183 inherit (darwin.apple_sdk.frameworks) Foundation; 6182 6184 }); 6183 6185 6186 + mono48 = lowPrio (callPackage ../development/compilers/mono/4.8.nix { 6187 + inherit (darwin) libobjc; 6188 + inherit (darwin.apple_sdk.frameworks) Foundation; 6189 + }); 6190 + 6184 6191 mono50 = lowPrio (callPackage ../development/compilers/mono/5.0.nix { 6185 6192 inherit (darwin) libobjc; 6186 6193 inherit (darwin.apple_sdk.frameworks) Foundation; ··· 6257 6264 inherit rust; 6258 6265 }; 6259 6266 6260 - rustcSrc = stdenv.mkDerivation { 6261 - name = "rust-src"; 6262 - src = rust.rustc.src; 6263 - phases = ["unpackPhase" "installPhase"]; 6264 - installPhase = "mv src $out"; 6267 + rustcSrc = callPackage ../development/compilers/rust/rust-src.nix { 6268 + inherit (rust) rustc; 6265 6269 }; 6266 - 6267 6270 }); 6268 6271 6269 6272 cargo-edit = callPackage ../tools/package-management/cargo-edit { }; ··· 15174 15177 15175 15178 i3status = callPackage ../applications/window-managers/i3/status.nix { }; 15176 15179 15180 + i3status-rust = callPackage ../applications/window-managers/i3/status-rust.nix { }; 15181 + 15177 15182 i810switch = callPackage ../os-specific/linux/i810switch { }; 15178 15183 15179 15184 icewm = callPackage ../applications/window-managers/icewm {}; ··· 19948 19953 dnstracer = callPackage ../tools/networking/dnstracer { 19949 19954 inherit (darwin) libresolv; 19950 19955 }; 19956 + 19957 + wal-g = callPackage ../tools/backup/wal-g {}; 19951 19958 }
+1 -22
pkgs/top-level/python-packages.nix
··· 8642 8642 buildInputs = with self; [ nose ]; 8643 8643 }; 8644 8644 8645 - ConfigArgParse = buildPythonPackage rec { 8646 - name = "ConfigArgParse-${version}"; 8647 - version = "0.9.3"; 8648 - 8649 - src = pkgs.fetchurl { 8650 - url = "mirror://pypi/C/ConfigArgParse/ConfigArgParse-${version}.tar.gz"; 8651 - sha256 = "0a984pvv7370yz7zbkl6s6i7yyl9myahx0m9jkjvg3hz5q8mf70l"; 8652 - }; 8653 - 8654 - # no tests in tarball 8655 - doCheck = false; 8656 - propagatedBuildInputs = with self; [ 8657 - 8658 - ]; 8659 - buildInputs = with self; [ 8660 - 8661 - ]; 8662 - 8663 - meta = with stdenv.lib; { 8664 - homepage = "https://github.com/zorro3/ConfigArgParse"; 8665 - }; 8666 - }; 8645 + ConfigArgParse = callPackage ../development/python-modules/configargparse { }; 8667 8646 8668 8647 jsonschema = callPackage ../development/python-modules/jsonschema { }; 8669 8648