diff --git a/lib/strings.nix b/lib/strings.nix index e6df7d99cb2e..61babf0b1aa3 100644 --- a/lib/strings.nix +++ b/lib/strings.nix @@ -82,7 +82,7 @@ rec { => "//bin" */ makeSearchPath = subDir: packages: - concatStringsSep ":" (map (path: path + "/" + subDir) packages); + concatStringsSep ":" (map (path: path + "/" + subDir) (builtins.filter (x: x != null) packages)); /* Construct a Unix-style search path, using given package output. If no output is found, fallback to `.out` and then to the default. diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 6b9d2a16c53e..16edaa5632f6 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -3239,6 +3239,11 @@ github = "rushmorem"; name = "Rushmore Mushambi"; }; + ruuda = { + email = "dev+nix@veniogames.com"; + github = "ruuda"; + name = "Ruud van Asseldonk"; + }; rvl = { email = "dev+nix@rodney.id.au"; github = "rvl"; diff --git a/nixos/doc/manual/release-notes/rl-1809.xml b/nixos/doc/manual/release-notes/rl-1809.xml index 01b5e9d77460..e10827d5db22 100644 --- a/nixos/doc/manual/release-notes/rl-1809.xml +++ b/nixos/doc/manual/release-notes/rl-1809.xml @@ -107,6 +107,17 @@ $ nix-instantiate -E '(import <nixpkgsunstable> {}).gitFull' a stable URL for Nixpkgs to use to package this proprietary software. + + + gnucash has changed from version 2.4 to 3.x. + If you've been using gnucash (version 2.4) instead of + gnucash26 (version 2.6) you must open your Gnucash + data file(s) with gnucash26 and then save them to + upgrade the file format. Then you may use your data file(s) with + Gnucash 3.x. See the upgrade documentation. + Gnucash 2.4 is still available under the attribute gnucash24. + + diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 6c4326046ef8..31f504ce556c 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -780,6 +780,7 @@ ./virtualisation/hyperv-guest.nix ./virtualisation/openvswitch.nix ./virtualisation/parallels-guest.nix + ./virtualisation/qemu-guest-agent.nix ./virtualisation/rkt.nix ./virtualisation/virtualbox-guest.nix ./virtualisation/virtualbox-host.nix diff --git a/nixos/modules/services/networking/keepalived/default.nix b/nixos/modules/services/networking/keepalived/default.nix index 378cd9365848..c9ac2ee25990 100644 --- a/nixos/modules/services/networking/keepalived/default.nix +++ b/nixos/modules/services/networking/keepalived/default.nix @@ -8,10 +8,12 @@ let keepalivedConf = pkgs.writeText "keepalived.conf" '' global_defs { + ${optionalString cfg.enableScriptSecurity "enable_script_security"} ${snmpGlobalDefs} ${cfg.extraGlobalDefs} } + ${vrrpScriptStr} ${vrrpInstancesStr} ${cfg.extraConfig} ''; @@ -26,6 +28,22 @@ let + optionalString enableTraps "enable_traps" ); + vrrpScriptStr = concatStringsSep "\n" (map (s: + '' + vrrp_script ${s.name} { + script "${s.script}" + interval ${toString s.interval} + fall ${toString s.fall} + rise ${toString s.rise} + timeout ${toString s.timeout} + weight ${toString s.weight} + user ${s.user} ${optionalString (s.group != null) s.group} + + ${s.extraConfig} + } + '' + ) vrrpScripts); + vrrpInstancesStr = concatStringsSep "\n" (map (i: '' vrrp_instance ${i.name} { @@ -49,6 +67,18 @@ let ${concatMapStringsSep "\n" virtualIpLine i.virtualIps} } + ${optionalString (builtins.length i.trackScripts > 0) '' + track_script { + ${concatStringsSep "\n" i.trackScripts} + } + ''} + + ${optionalString (builtins.length i.trackInterfaces > 0) '' + track_interface { + ${concatStringsSep "\n" i.trackInterfaces} + } + ''} + ${i.extraConfig} } '' @@ -64,6 +94,12 @@ let notNullOrEmpty = s: !(s == null || s == ""); + vrrpScripts = mapAttrsToList (name: config: + { + inherit name; + } // config + ) cfg.vrrpScripts; + vrrpInstances = mapAttrsToList (iName: iConfig: { name = iName; @@ -86,7 +122,8 @@ let { assertion = !i.vmacXmitBase || i.useVmac; message = "services.keepalived.vrrpInstances.${i.name}.vmacXmitBase has no effect when services.keepalived.vrrpInstances.${i.name}.useVmac is not set."; } - ] ++ flatten (map (virtualIpAssertions i.name) i.virtualIps); + ] ++ flatten (map (virtualIpAssertions i.name) i.virtualIps) + ++ flatten (map (vrrpScriptAssertion i.name) i.trackScripts); virtualIpAssertions = vrrpName: ip: [ { assertion = ip.addr != ""; @@ -94,6 +131,11 @@ let } ]; + vrrpScriptAssertion = vrrpName: scriptName: { + assertion = builtins.hasAttr scriptName cfg.vrrpScripts; + message = "services.keepalived.vrrpInstances.${vrrpName} trackscript ${scriptName} is not defined in services.keepalived.vrrpScripts."; + }; + pidFile = "/run/keepalived.pid"; in @@ -110,6 +152,14 @@ in ''; }; + enableScriptSecurity = mkOption { + type = types.bool; + default = false; + description = '' + Don't run scripts configured to be run as root if any part of the path is writable by a non-root user. + ''; + }; + snmp = { enable = mkOption { @@ -181,8 +231,16 @@ in }; + vrrpScripts = mkOption { + type = types.attrsOf (types.submodule (import ./vrrp-script-options.nix { + inherit lib; + })); + default = {}; + description = "Declarative vrrp script config"; + }; + vrrpInstances = mkOption { - type = types.attrsOf (types.submodule (import ./vrrp-options.nix { + type = types.attrsOf (types.submodule (import ./vrrp-instance-options.nix { inherit lib; })); default = {}; diff --git a/nixos/modules/services/networking/keepalived/vrrp-options.nix b/nixos/modules/services/networking/keepalived/vrrp-instance-options.nix similarity index 88% rename from nixos/modules/services/networking/keepalived/vrrp-options.nix rename to nixos/modules/services/networking/keepalived/vrrp-instance-options.nix index 79eff3ae5419..85b9bc337726 100644 --- a/nixos/modules/services/networking/keepalived/vrrp-options.nix +++ b/nixos/modules/services/networking/keepalived/vrrp-instance-options.nix @@ -108,6 +108,20 @@ with lib; description = "Declarative vhost config"; }; + trackScripts = mkOption { + type = types.listOf types.str; + default = []; + example = [ "chk_cmd1" "chk_cmd2" ]; + description = "List of script names to invoke for health tracking."; + }; + + trackInterfaces = mkOption { + type = types.listOf types.str; + default = []; + example = [ "eth0" "eth1" ]; + description = "List of network interfaces to monitor for health tracking."; + }; + extraConfig = mkOption { type = types.lines; default = ""; diff --git a/nixos/modules/services/networking/keepalived/vrrp-script-options.nix b/nixos/modules/services/networking/keepalived/vrrp-script-options.nix new file mode 100644 index 000000000000..a3f794c40a89 --- /dev/null +++ b/nixos/modules/services/networking/keepalived/vrrp-script-options.nix @@ -0,0 +1,64 @@ +{ lib } : + +with lib; +with lib.types; +{ + options = { + + script = mkOption { + type = str; + example = "\${pkgs.curl} -f http://localhost:80"; + description = "(Path of) Script command to execute followed by args, i.e. cmd [args]..."; + }; + + interval = mkOption { + type = int; + default = 1; + description = "Seconds between script invocations."; + }; + + timeout = mkOption { + type = int; + default = 5; + description = "Seconds after which script is considered to have failed."; + }; + + weight = mkOption { + type = int; + default = 0; + description = "Following a failure, adjust the priority by this weight."; + }; + + rise = mkOption { + type = int; + default = 5; + description = "Required number of successes for OK transition."; + }; + + fall = mkOption { + type = int; + default = 3; + description = "Required number of failures for KO transition."; + }; + + user = mkOption { + type = str; + default = "keepalived_script"; + description = "Name of user to run the script under."; + }; + + group = mkOption { + type = nullOr str; + default = null; + description = "Name of group to run the script under. Defaults to user group."; + }; + + extraConfig = mkOption { + type = lines; + default = ""; + description = "Extra lines to be added verbatim to the vrrp_script section."; + }; + + }; + +} diff --git a/nixos/modules/virtualisation/qemu-guest-agent.nix b/nixos/modules/virtualisation/qemu-guest-agent.nix new file mode 100644 index 000000000000..e0d2b3dc509d --- /dev/null +++ b/nixos/modules/virtualisation/qemu-guest-agent.nix @@ -0,0 +1,36 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.services.qemuGuest; +in { + + options.services.qemuGuest = { + enable = mkOption { + type = types.bool; + default = false; + description = "Whether to enable the qemu guest agent."; + }; + }; + + config = mkIf cfg.enable ( + mkMerge [ + { + + services.udev.extraRules = '' + SUBSYSTEM=="virtio-ports", ATTR{name}=="org.qemu.guest_agent.0", TAG+="systemd" ENV{SYSTEMD_WANTS}="qemu-guest-agent.service" + ''; + + systemd.services.qemu-guest-agent = { + description = "Run the QEMU Guest Agent"; + serviceConfig = { + ExecStart = "${pkgs.kvm.ga}/bin/qemu-ga"; + Restart = "always"; + RestartSec = 0; + }; + }; + } + ] + ); +} diff --git a/nixos/modules/virtualisation/qemu-vm.nix b/nixos/modules/virtualisation/qemu-vm.nix index f7ec5b088c1b..d271144af48b 100644 --- a/nixos/modules/virtualisation/qemu-vm.nix +++ b/nixos/modules/virtualisation/qemu-vm.nix @@ -360,6 +360,15 @@ in type = types.enum [ "virtio" "scsi" "ide" ]; description = "The interface used for the virtual hard disks."; }; + + guestAgent.enable = + mkOption { + default = true; + type = types.bool; + description = '' + Enable the Qemu guest agent. + ''; + }; }; virtualisation.useBootLoader = @@ -511,6 +520,8 @@ in # Don't run ntpd in the guest. It should get the correct time from KVM. services.timesyncd.enable = false; + services.qemuGuest.enable = cfg.qemu.guestAgent.enable; + system.build.vm = pkgs.runCommand "nixos-vm" { preferLocalBuild = true; } '' mkdir -p $out/bin diff --git a/nixos/tests/statsd.nix b/nixos/tests/statsd.nix index a9d7dc61cb60..c71949249a4b 100644 --- a/nixos/tests/statsd.nix +++ b/nixos/tests/statsd.nix @@ -35,6 +35,6 @@ with lib; testScript = '' $statsd1->start(); $statsd1->waitForUnit("statsd.service"); - $statsd1->succeed("nc -z 127.0.0.1 8126"); + $statsd1->waitUntilSucceeds("nc -z 127.0.0.1 8126"); ''; }) diff --git a/pkgs/applications/altcoins/monero/default.nix b/pkgs/applications/altcoins/monero/default.nix index 8be24522f564..cbba1ecba145 100644 --- a/pkgs/applications/altcoins/monero/default.nix +++ b/pkgs/applications/altcoins/monero/default.nix @@ -1,4 +1,5 @@ -{ stdenv, fetchFromGitHub, cmake, pkgconfig, git +{ stdenv, fetchFromGitHub, fetchpatch +, cmake, pkgconfig, git , boost, miniupnpc, openssl, unbound, cppzmq , zeromq, pcsclite, readline , CoreData, IOKit, PCSC @@ -21,6 +22,14 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake pkgconfig git ]; + patches = [ + # fix daemon crash, remove with 0.12.1.0 update + (fetchpatch { + url = "https://github.com/monero-project/monero/commit/08343ab.diff"; + sha256 = "0f1snrl2mk2czwk1ysympzr8ismjx39fcqgy13276vcmw0cfqi83"; + }) + ]; + buildInputs = [ boost miniupnpc openssl unbound cppzmq zeromq pcsclite readline diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix index 630f5dd34471..328370c25016 100644 --- a/pkgs/applications/editors/android-studio/default.nix +++ b/pkgs/applications/editors/android-studio/default.nix @@ -13,9 +13,9 @@ let sha256Hash = "1h9f4pkyqxkqxampi8v035czg5d4g6lp4bsrnq5mgpwhjwkr1whk"; }; latestVersion = { - version = "3.2.0.12"; # "Android Studio 3.2 Canary 13" - build = "181.4749738"; - sha256Hash = "0mwsbmxzrs7yavgkckpmfvpz46v7fpa0nxvf8zqa9flmsv8p8l10"; + version = "3.2.0.13"; # "Android Studio 3.2 Canary 14" + build = "181.4763614"; + sha256Hash = "1rx3bip5a7v349whg26kxvj05qlvm7zwacfqnfzfmvvhzbh7xnyh"; }; in rec { # Old alias diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix index ca223803f04d..f646fab86294 100644 --- a/pkgs/applications/editors/atom/default.nix +++ b/pkgs/applications/editors/atom/default.nix @@ -34,6 +34,8 @@ stdenv.mkDerivation rec { rm -f $out/share/atom/resources/app.asar.unpacked/node_modules/dugite/git/bin/git ln -s ${pkgs.git}/bin/git $out/share/atom/resources/app.asar.unpacked/node_modules/dugite/git/bin/git + rm -f $out/share/atom/resources/app.asar.unpacked/node_modules/dugite/git/libexec/git-core/git + ln -s ${pkgs.git}/bin/git $out/share/atom/resources/app.asar.unpacked/node_modules/dugite/git/libexec/git-core/git find $out/share/atom -name "*.node" -exec patchelf --set-rpath "${atomEnv.libPath}:$out/share/atom" {} \; @@ -45,7 +47,7 @@ stdenv.mkDerivation rec { description = "A hackable text editor for the 21st Century"; homepage = https://atom.io/; license = licenses.mit; - maintainers = [ maintainers.offline maintainers.nequissimus ]; + maintainers = [ maintainers.offline maintainers.nequissimus maintainers.ysndr ]; platforms = [ "x86_64-linux" ]; }; } diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix index f984cb712c7a..e4e45dd570bf 100644 --- a/pkgs/applications/misc/hugo/default.nix +++ b/pkgs/applications/misc/hugo/default.nix @@ -2,7 +2,7 @@ buildGoPackage rec { name = "hugo-${version}"; - version = "0.36.1"; + version = "0.40.3"; goPackagePath = "github.com/gohugoio/hugo"; @@ -10,7 +10,7 @@ buildGoPackage rec { owner = "gohugoio"; repo = "hugo"; rev = "v${version}"; - sha256 = "179lzkd6f81rssgcwlngx2mhr9nvbj0rsh6yjbf1fsrpxfzr2q9z"; + sha256 = "08d4y6x19cd4qy9pf80zrqarcyarbzxph0yp8mfb1sp2bvq42308"; }; goDeps = ./deps.nix; diff --git a/pkgs/applications/misc/hugo/deps.nix b/pkgs/applications/misc/hugo/deps.nix index cf55ef4b64b2..a99eb563dc27 100644 --- a/pkgs/applications/misc/hugo/deps.nix +++ b/pkgs/applications/misc/hugo/deps.nix @@ -14,8 +14,8 @@ fetch = { type = "git"; url = "https://github.com/PuerkitoBio/purell"; - rev = "1c4bec281e4bbc75b4f4a1bd923bdf1bd989a969"; - sha256 = "05aif0xf3i6j6r0ivas8ywagkz92iynsa0xnkbrif4w1chzalx0f"; + rev = "975f53781597ed779763b7b65566e74c4004d8de"; + sha256 = "1j5l793zxrjv09z3cdgs05qn45sbhbm9njsw5cfv168x8z88pd3l"; }; } { @@ -32,8 +32,17 @@ fetch = { type = "git"; url = "https://github.com/alecthomas/chroma"; - rev = "df4ec264daccb2ecb17bde9134830100701199c5"; - sha256 = "1snw7byfkfvvw0579jc0yxk79j1v1rb0jdcvivfsalh064zmjdvd"; + rev = "222a1f0fc811afd47471d4a4e32f3aa09b6f9cdf"; + sha256 = "090yb9f9gld4l0r6x8y2a6a3ghiqbyh19fgmjcjfq8qlv0vj5n4s"; + }; + } + { + goPackagePath = "github.com/bep/debounce"; + fetch = { + type = "git"; + url = "https://github.com/bep/debounce"; + rev = "844797fa1dd9ba969d71b62797ff19d1e49d4eac"; + sha256 = "1sh4zv0hv7f454mhzpl2mbv7ar5rm00wyy5qr78x1h84bgph87wy"; }; } { @@ -41,8 +50,8 @@ fetch = { type = "git"; url = "https://github.com/bep/gitmap"; - rev = "de8030ebafb76c6e84d50ee6d143382637c00598"; - sha256 = "0adkv2ghi0zd104akksa9wjzj7s849wpa1rij03mycgxp4si9ami"; + rev = "012701e8669671499fc43e9792335a1dcbfe2afb"; + sha256 = "10ixv4zwmrpxvpchws78yzsjvw1zplljw3iqvwpina2mkwwp71ql"; }; } { @@ -77,8 +86,8 @@ fetch = { type = "git"; url = "https://github.com/disintegration/imaging"; - rev = "1884593a19ddc6f2ea050403430d02c1d0fc1283"; - sha256 = "13wlkidihz7gc36hd1vy7i81d0v1rbnw97118z3slq1kv1j56zll"; + rev = "bbcee2f5c9d5e94ca42c8b50ec847fec64a6c134"; + sha256 = "0dzwqy1xcm0d481z1fa2r60frdlf5fzjligpiqh5g8lhqskk2lx8"; }; } { @@ -113,8 +122,8 @@ fetch = { type = "git"; url = "https://github.com/gobuffalo/envy"; - rev = "50fabbbaf1e65fc9b739f37a00590c396485d84d"; - sha256 = "0js2hggb1gybk28pk3hcsb1m6rswfdzvvr194z4my4za09ly5jax"; + rev = "ef60bfc50c8f92d1ee64674d8ce7a48f1f67625e"; + sha256 = "15qrmw3l2achpd3hz8fkkz7yzpbvldm1pf1vsr250q24nsh6x7iz"; }; } { @@ -122,8 +131,8 @@ fetch = { type = "git"; url = "https://github.com/gobwas/glob"; - rev = "19c076cdf202b3d1c0489bdfa2f2f289f634474b"; - sha256 = "0176psz3m0pks0ka6pb62g7ccq5izzj0i7c0j20lb7dp3kawphxs"; + rev = "f00a7392b43971b2fdb562418faab1f18da2067a"; + sha256 = "1b7jnb7rx99na25lkm9m9jr583mv7y0lwp57w58sv7ir9iiilx29"; }; } { @@ -131,8 +140,8 @@ fetch = { type = "git"; url = "https://github.com/gorilla/websocket"; - rev = "f37d1588608ec036fa9b0b7b8afbde47dc06aea9"; - sha256 = "1y0z7k4yi8aaw6yjm8s92hvbkyc51b5azpiywminjj1a84czvzvq"; + rev = "21ab95fa12b9bdd8fecf5fa3586aad941cc98785"; + sha256 = "1ygg6cr84461d6k3nzbja0dxhcgf5zvry2w10f6i7291ghrcwhyy"; }; } { @@ -158,8 +167,8 @@ fetch = { type = "git"; url = "https://github.com/hashicorp/hcl"; - rev = "23c074d0eceb2b8a5bfdbb271ab780cde70f05a8"; - sha256 = "0db4lpqb5m130rmfy3s3gjjf4dxllypmyrzxv6ggqhkmwmc7w4mc"; + rev = "ef8a98b0bbce4a65b5aa4c368430a80ddc533168"; + sha256 = "1qalfsc31fra7hcw2lc3s20aj7al62fq3j5fn5kga3mg99b82nyr"; }; } { @@ -176,8 +185,8 @@ fetch = { type = "git"; url = "https://github.com/joho/godotenv"; - rev = "6bb08516677f8c8274c557fc801bee9ab564ab2c"; - sha256 = "0jqczq5x5zwgs29vrmq87335c99gi5jrvxkwcpidz98yqg95db4f"; + rev = "1709ab122c988931ad53508747b3c061400c2984"; + sha256 = "1pym5lydb28ggxrz80q9s26bj2bd80ax1igm1zfhyhx9i3060kif"; }; } { @@ -203,8 +212,8 @@ fetch = { type = "git"; url = "https://github.com/markbates/inflect"; - rev = "80fa1ea41b0dc859816314ab0b85f07a6bc57923"; - sha256 = "0fmpfcz8g0qsb6h94yqpcms2bdb68qac706b54x0k1crfzl1d1mj"; + rev = "fbc6b23ce49e2578f572d2e72bb72fa03c7145de"; + sha256 = "10rf7kfqnic8x4z8c29whb76w9v847y63wh5b2kfx6rqhrjfilis"; }; } { @@ -212,8 +221,8 @@ fetch = { type = "git"; url = "https://github.com/mattn/go-runewidth"; - rev = "97311d9f7767e3d6f422ea06661bc2c7a19e8a5d"; - sha256 = "0dxlrzn570xl7gb11hjy1v4p3gw3r41yvqhrffgw95ha3q9p50cg"; + rev = "ce7b0b5c7b45a81508558cd1dba6bb1e4ddb51bb"; + sha256 = "0lc39b6xrxv7h3v3y1kgz49cgi5qxwlygs715aam6ba35m48yi7g"; }; } { @@ -225,15 +234,6 @@ sha256 = "0hlqcwx6qqgy3vs13r10wn0d9x0xmww1v9jm09y2dp1ykgbampnk"; }; } - { - goPackagePath = "github.com/mitchellh/go-homedir"; - fetch = { - type = "git"; - url = "https://github.com/mitchellh/go-homedir"; - rev = "b8bc1bf767474819792c23f32d8286a45736f1c6"; - sha256 = "13ry4lylalkh4g2vny9cxwvryslzyzwp9r92z0b10idhdq3wad1q"; - }; - } { goPackagePath = "github.com/mitchellh/mapstructure"; fetch = { @@ -248,8 +248,8 @@ fetch = { type = "git"; url = "https://github.com/muesli/smartcrop"; - rev = "c2a0373a193bac1daf8b6691e2ece069c5d7ac7f"; - sha256 = "1jv68g9wddm2a1kf838anjnr4w17k7sqzz01h4z2lfashw3nanar"; + rev = "f6ebaa786a12a0fdb2d7c6dee72808e68c296464"; + sha256 = "0xbv5wbn0z36nkw9ay3ly6z23lpsrs0khryl1w54fz85lvwh66gp"; }; } { @@ -257,8 +257,8 @@ fetch = { type = "git"; url = "https://github.com/nicksnyder/go-i18n"; - rev = "ec04da47793482067e2e376d810e1622277368e4"; - sha256 = "1c7ip5jidvssr8d4dbx9nchf99m13wblgaz630f7wm73y99dc3lr"; + rev = "8c6996ea1058153460146b16c341a4ae611f7cf7"; + sha256 = "1k8ai8mdi5cqbcxihzx727z3gg46lpkw0s1byb3lrdnmp31l7p9r"; }; } { @@ -266,8 +266,8 @@ fetch = { type = "git"; url = "https://github.com/olekukonko/tablewriter"; - rev = "b8a9be070da40449e501c3c4730a889e42d87a9e"; - sha256 = "1z9frlk9avqhzjv6zz2rg7mvdhzcr9acdgagblijwwkx01f02hw7"; + rev = "d4647c9c7a84d847478d890b816b7d8b62b0b279"; + sha256 = "1274k5r9ardh1f6gsmadxmdds7zy8rkr55fb9swvnm0vazr3y01l"; }; } { @@ -275,8 +275,8 @@ fetch = { type = "git"; url = "https://github.com/pelletier/go-toml"; - rev = "acdc4509485b587f5e675510c4f2c63e90ff68a8"; - sha256 = "1y5m9pngxhsfzcnxh8ma5nsllx74wn0jr47p2n6i3inrjqxr12xh"; + rev = "66540cf1fcd2c3aee6f6787dfa32a6ae9a870f12"; + sha256 = "1n8na0yg90gm0rpifmzrby5r385vvd62cdam3ls7ssy02bjvfw15"; }; } { @@ -284,8 +284,8 @@ fetch = { type = "git"; url = "https://github.com/russross/blackfriday"; - rev = "55d61fa8aa702f59229e6cff85793c22e580eaf5"; - sha256 = "0qmavm5d14kj6im6sqzpqnlhpy524428vkn4hnfwknndr9rycmn0"; + rev = "11635eb403ff09dbc3a6b5a007ab5ab09151c229"; + sha256 = "14j8ibm6h9rydiwfp9b5c7rwhnx04yqyxv1a7p7rmfwyg4zd714n"; }; } { @@ -302,8 +302,8 @@ fetch = { type = "git"; url = "https://github.com/spf13/afero"; - rev = "bbf41cb36dffe15dff5bf7e18c447801e7ffe163"; - sha256 = "19jgsm6y1yp99h0fr77rhamdsn34r8545if7y9q377l3phrz2s0l"; + rev = "63644898a8da0bc22138abf860edaf5277b6102e"; + sha256 = "13piahaq4vw1y1sklq5scrsflqx0a8hzmdqfz1fy4871kf2gl8qw"; }; } { @@ -320,8 +320,8 @@ fetch = { type = "git"; url = "https://github.com/spf13/cobra"; - rev = "be77323fc05148ef091e83b3866c0d47c8e74a8b"; - sha256 = "0kl0psbdg8cyznwvq13sva6r4ggmhwzfxdjmkl2vqhy83xq3a6yn"; + rev = "ef82de70bb3f60c65fb8eebacbb2d122ef517385"; + sha256 = "1q1nsx05svyv9fv3fy6xv6gs9ffimkyzsfm49flvl3wnvf1ncrkd"; }; } { @@ -356,8 +356,8 @@ fetch = { type = "git"; url = "https://github.com/spf13/pflag"; - rev = "ee5fd03fd6acfd43e44aea0b4135958546ed8e73"; - sha256 = "1fgb1ph3vrqcpdvypp3c1fwj15r587l9yvv5wqcq08shln5rbsnk"; + rev = "583c0c0531f06d5278b7d917446061adc344b5cd"; + sha256 = "0nr4mdpfhhk94hq4ymn5b2sxc47b29p1akxd8b0hx4dvdybmipb5"; }; } { @@ -365,8 +365,8 @@ fetch = { type = "git"; url = "https://github.com/spf13/viper"; - rev = "aafc9e6bc7b7bb53ddaa75a5ef49a17d6e654be5"; - sha256 = "089balmspfs2x68wr4riwh7qvhf0b061wqqqfw8j4p9pxvwrxsdc"; + rev = "15738813a09db5c8e5b60a19d67d3f9bd38da3a4"; + sha256 = "1mjfzg8zvnxckaq6l8gw99i2msrfqn9yr04dc3b7kd5bpxi6zr4v"; }; } { @@ -383,8 +383,8 @@ fetch = { type = "git"; url = "https://go.googlesource.com/image"; - rev = "12117c17ca67ffa1ce22e9409f3b0b0a93ac08c7"; - sha256 = "017xpcshrj1r2w20xvpcx0rklpfmbz6h16msv12l3x0w6vy0800s"; + rev = "f315e440302883054d0c2bd85486878cb4f8572c"; + sha256 = "010pc6qjppqd9c7rramiwz7myvip9vhridfxy7wc2qj1kr92b4dc"; }; } { @@ -392,8 +392,8 @@ fetch = { type = "git"; url = "https://go.googlesource.com/net"; - rev = "cbe0f9307d0156177f9dd5dc85da1a31abc5f2fb"; - sha256 = "1hmpqkxh97ayyy0xcdvf1bwirwja4wyin3sh0fzjlh93aqmqgylf"; + rev = "f73e4c9ed3b7ebdd5f699a16a880c2b1994e50dd"; + sha256 = "1mvnpln6vm0y1i5bb0ycswds49hyapg3jz643lmlw6d183jdcg0q"; }; } { @@ -401,8 +401,8 @@ fetch = { type = "git"; url = "https://go.googlesource.com/sync"; - rev = "fd80eb99c8f653c847d294a001bdf2a3a6f768f5"; - sha256 = "12lzldlj1cqc1babp1hkkn76fglzn5abkqvmbpr4f2j95mf9x836"; + rev = "1d60e4601c6fd243af51cc01ddf169918a5407ca"; + sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6"; }; } { @@ -410,8 +410,8 @@ fetch = { type = "git"; url = "https://go.googlesource.com/sys"; - rev = "37707fdb30a5b38865cfb95e5aab41707daec7fd"; - sha256 = "1abrr2507a737hdqv4q7pw7hv6ls9pdiq9crhdi52r3gcz6hvizg"; + rev = "64746a42f36bf0832f86b76004f1699dbeb33e4f"; + sha256 = "1hbk7cnbywiwxdzbx7lqw6iym9dpwvdyacg06gchxpfw7nfa9r27"; }; } { @@ -419,8 +419,8 @@ fetch = { type = "git"; url = "https://go.googlesource.com/text"; - rev = "9e2b64d659da1afe07ce1c9c1dfefc09d188f21e"; - sha256 = "00ichxdybvs76gj805j828qxg7x4h4v64pq1s56ydaw07ja6lmry"; + rev = "7922cc490dd5a7dbaa7fd5d6196b49db59ac042f"; + sha256 = "06sicjc24hv7v9p1l6psaq87w4lycx3mjixd6gsd1wnd4jhqvlnr"; }; } { @@ -428,8 +428,8 @@ fetch = { type = "git"; url = "https://gopkg.in/yaml.v2"; - rev = "d670f9405373e636a5a2765eea47fac0c9bc91a4"; - sha256 = "1w1xid51n8v1mydn2m3vgggw8qgpd5a5sr62snsc77d99fpjsrs0"; + rev = "5420a8b6744d3b0345ab293f6fcba19c978f1183"; + sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1"; }; } ] diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix index 0e1aecaab1d1..6b37f9b9145d 100644 --- a/pkgs/applications/misc/keepassx/community.nix +++ b/pkgs/applications/misc/keepassx/community.nix @@ -26,13 +26,13 @@ with stdenv.lib; stdenv.mkDerivation rec { name = "keepassxc-${version}"; - version = "2.3.1"; + version = "2.3.3"; src = fetchFromGitHub { owner = "keepassxreboot"; repo = "keepassxc"; rev = "${version}"; - sha256 = "1xlg8zb22c2f1pi2has4f4qwggd0m2z254f0d6jrgz368x4g3p87"; + sha256 = "08cj1nxbjy2m80h3irnra2qha7fc5ahhzcgkyk9jv4zyys9xv998"; }; NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang [ diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix index c47ce04f1f7d..0e2c232e6d21 100644 --- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix @@ -14,5 +14,7 @@ in { stable = mkTelegram stableVersion; preview = mkTelegram (stableVersion // { stable = false; + version = "1.2.19"; + sha256Hash = "0val6lfcg3ghcksflm3jclqly0x8plpn3an8v9bix0s5yll1ka4h"; }); } diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix index db32dd0c23e2..692a43629355 100644 --- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix +++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, system, makeWrapper, makeDesktopItem, alsaLib, dbus, glib, fontconfig, freetype, libpulseaudio, - utillinux, zlib, xorg, udev, sqlite, expat, libv4l, procps }: + utillinux, zlib, xorg, udev, sqlite, expat, libv4l, procps, libGL }: let @@ -24,6 +24,7 @@ in stdenv.mkDerivation { expat glib freetype + libGL libpulseaudio zlib dbus diff --git a/pkgs/applications/networking/owncloud-client/default.nix b/pkgs/applications/networking/owncloud-client/default.nix index 94e3b7d0ba6a..17c5cc86fa6b 100644 --- a/pkgs/applications/networking/owncloud-client/default.nix +++ b/pkgs/applications/networking/owncloud-client/default.nix @@ -2,14 +2,14 @@ stdenv.mkDerivation rec { name = "owncloud-client-${version}"; - version = "2.3.4"; + version = "2.4.1"; src = fetchurl { url = "https://download.owncloud.com/desktop/stable/owncloudclient-${version}.tar.xz"; - sha256 = "1fpi1mlp2b8sx2993b4mava5c6qw794dmlayih430299z1l9wh49"; + sha256 = "4462ae581c281123dc62f3604f1aa54c8f4a60cd8157b982e2d76faac0f7aa23"; }; - patches = [ ../nextcloud-client/find-sql.patch ]; + patches = [ ./find-sql.patch ]; nativeBuildInputs = [ pkgconfig cmake ]; buildInputs = [ qtbase qtwebkit qtkeychain sqlite ]; diff --git a/pkgs/applications/networking/owncloud-client/find-sql.patch b/pkgs/applications/networking/owncloud-client/find-sql.patch new file mode 100644 index 000000000000..44dea6414e92 --- /dev/null +++ b/pkgs/applications/networking/owncloud-client/find-sql.patch @@ -0,0 +1,12 @@ +*** a/cmake/modules/QtVersionAbstraction.cmake +--- b/cmake/modules/QtVersionAbstraction.cmake +*************** +*** 8,13 **** +--- 8,14 ---- + find_package(Qt5Core REQUIRED) + find_package(Qt5Network REQUIRED) + find_package(Qt5Xml REQUIRED) ++ find_package(Qt5Sql REQUIRED) + find_package(Qt5Concurrent REQUIRED) + if(UNIT_TESTING) + find_package(Qt5Test REQUIRED) diff --git a/pkgs/applications/networking/sniffers/wireshark/default.nix b/pkgs/applications/networking/sniffers/wireshark/default.nix index d8ff5f3100ac..8c745a4aa3f8 100644 --- a/pkgs/applications/networking/sniffers/wireshark/default.nix +++ b/pkgs/applications/networking/sniffers/wireshark/default.nix @@ -82,6 +82,11 @@ in stdenv.mkDerivation { enableParallelBuilding = true; + shellHook = '' + # to be able to run the resulting binary + export WIRESHARK_RUN_FROM_BUILD_DIRECTORY=1 + ''; + meta = with stdenv.lib; { homepage = https://www.wireshark.org/; description = "Powerful network protocol analyzer"; diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 45560de984f3..c18c69f9a447 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -422,8 +422,11 @@ self: super: { # https://github.com/evanrinehart/mikmod/issues/1 mikmod = addExtraLibrary super.mikmod pkgs.libmikmod; - # https://github.com/haskell-gi/haskell-gi/pull/163 - haskell-gi = dontCheck super.haskell-gi; + # Version 0.21.2 calls its doctest suite with incorrect paths. + haskell-gi = appendPatch super.haskell-gi (pkgs.fetchpatch { + url = https://github.com/haskell-gi/haskell-gi/pull/163/commits/b876c4f351893370d4ae597aab6ecc0422e7f665.patch; + sha256 = "03vzpvnr3vnz2zgsr504iyf0n9aw6mkz8rkj6zhazfixl3dzfkyd"; + }); # https://github.com/basvandijk/threads/issues/10 threads = dontCheck super.threads; diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix index 4ed59fb66622..70624d1ed6a8 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix @@ -441,7 +441,7 @@ self: super: { }); # Older versions don't compile. - brick = self.brick_0_36_3; + brick = self.brick_0_37; dhall = self.dhall_1_13_0; dhall_1_13_0 = doJailbreak super.dhall_1_13_0; # support ansi-terminal 0.8.x HaTeX = self.HaTeX_3_19_0_0; diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix index acbcb1320e61..9f6959542dfb 100644 --- a/pkgs/development/haskell-modules/configuration-nix.nix +++ b/pkgs/development/haskell-modules/configuration-nix.nix @@ -502,6 +502,7 @@ self: super: builtins.intersectAttrs super { # Tests require a browser: https://github.com/ku-fpg/blank-canvas/issues/73 blank-canvas = dontCheck super.blank-canvas; + blank-canvas_0_6_2 = dontCheck super.blank-canvas_0_6_2; # cabal2nix generates a dependency on base-compat, which is the wrong version base-compat-batteries = super.base-compat-batteries.override { diff --git a/pkgs/development/haskell-modules/generic-stack-builder.nix b/pkgs/development/haskell-modules/generic-stack-builder.nix index 6e43df9aba69..9ea9dae02db1 100644 --- a/pkgs/development/haskell-modules/generic-stack-builder.nix +++ b/pkgs/development/haskell-modules/generic-stack-builder.nix @@ -11,6 +11,18 @@ with stdenv.lib; }@args: let stackCmd = "stack --internal-re-exec-version=${stack.version}"; + + # Add all dependencies in buildInputs including propagated ones to + # STACK_IN_NIX_EXTRA_ARGS. + addStackArgsHook = '' +for pkg in ''${pkgsHostHost[@]} ''${pkgsHostBuild[@]} ''${pkgsHostTarget[@]} +do + [ -d "$pkg/lib" ] && \ + export STACK_IN_NIX_EXTRA_ARGS+=" --extra-lib-dirs=$pkg/lib" + [ -d "$pkg/include" ] && \ + export STACK_IN_NIX_EXTRA_ARGS+=" --extra-include-dirs=$pkg/include" +done + ''; in stdenv.mkDerivation (args // { buildInputs = @@ -20,10 +32,9 @@ in stdenv.mkDerivation (args // { STACK_PLATFORM_VARIANT="nix"; STACK_IN_NIX_SHELL=1; - STACK_IN_NIX_EXTRA_ARGS = - concatMap (pkg: ["--extra-lib-dirs=${getLib pkg}/lib" - "--extra-include-dirs=${getDev pkg}/include"]) buildInputs ++ - extraArgs; + STACK_IN_NIX_EXTRA_ARGS = extraArgs; + shellHook = addStackArgsHook; + # XXX: workaround for https://ghc.haskell.org/trac/ghc/ticket/11042. LD_LIBRARY_PATH = makeLibraryPath (LD_LIBRARY_PATH ++ buildInputs); @@ -39,6 +50,7 @@ in stdenv.mkDerivation (args // { configurePhase = args.configurePhase or '' export STACK_ROOT=$NIX_BUILD_TOP/.stack + ${addStackArgsHook} ''; buildPhase = args.buildPhase or "${stackCmd} build"; diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index 3c6a7949df6c..bad45c3a27e7 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -5957,6 +5957,35 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "Frames_0_4_0" = callPackage + ({ mkDerivation, base, contravariant, criterion, deepseq, directory + , discrimination, ghc-prim, hashable, hspec, htoml, HUnit, pipes + , pipes-bytestring, pipes-group, pipes-parse, pipes-safe + , pipes-text, pretty, primitive, readable, regex-applicative + , template-haskell, temporary, text, transformers + , unordered-containers, vector, vinyl + }: + mkDerivation { + pname = "Frames"; + version = "0.4.0"; + sha256 = "06yh8vl3s5543nxhndjd2wsbclka4in4nsbjqzbpcg9g8s8x3z20"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + base contravariant deepseq discrimination ghc-prim hashable pipes + pipes-bytestring pipes-group pipes-parse pipes-safe pipes-text + primitive readable template-haskell text transformers vector vinyl + ]; + testHaskellDepends = [ + base directory hspec htoml HUnit pipes pretty regex-applicative + template-haskell temporary text unordered-containers vinyl + ]; + benchmarkHaskellDepends = [ base criterion pipes transformers ]; + description = "Data frames For working with tabular data files"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "Frank" = callPackage ({ mkDerivation, base, mtl, newtype, she, void }: mkDerivation { @@ -16498,17 +16527,17 @@ self: { ({ mkDerivation, attoparsec, base, blaze-markup, blaze-svg , bytestring, cereal, cereal-vector, containers, data-default-class , diagrams-core, diagrams-lib, directory, parsec, split, text - , tuple, vector, xml + , vector, xml }: mkDerivation { pname = "SVGFonts"; - version = "1.6.0.3"; - sha256 = "11sqycvvsg9avxqh3z82x3wllhy6a9c0d36qzm2w6w4hg5iqi3xw"; + version = "1.7"; + sha256 = "1k9ili7l9pp5a009jh55vigb917wdnsl6iaz0ggp6d4nw1jwsg6s"; enableSeparateDataOutput = true; libraryHaskellDepends = [ attoparsec base blaze-markup blaze-svg bytestring cereal cereal-vector containers data-default-class diagrams-core - diagrams-lib directory parsec split text tuple vector xml + diagrams-lib directory parsec split text vector xml ]; description = "Fonts from the SVG-Font format"; license = stdenv.lib.licenses.bsd3; @@ -17727,8 +17756,8 @@ self: { ({ mkDerivation, base }: mkDerivation { pname = "StringUtils"; - version = "0.2.0.1"; - sha256 = "1sxqcc17949kn9xbspyz4npbnqzsz05di22g3qdqc78b8mxi2psg"; + version = "0.2.0.2"; + sha256 = "1wbixjgzad3s9jj16kl0gvwg82g3hqvkag9wr5j58w98a4qyqw8i"; libraryHaskellDepends = [ base ]; description = "String manipulation utilities"; license = stdenv.lib.licenses.lgpl3; @@ -23755,8 +23784,8 @@ self: { ({ mkDerivation, base, util }: mkDerivation { pname = "alg"; - version = "0.2.4.0"; - sha256 = "1brpqs6xxi7vlpa7230n7910j2zq3w79kw6hfs2xi07kaz0f2lyd"; + version = "0.2.4.1"; + sha256 = "0fx3q5ivd942yly212k0qdrhwbjpx0y4sj1r2r9lbhxb2941rg4n"; libraryHaskellDepends = [ base util ]; description = "Algebraic structures"; license = stdenv.lib.licenses.bsd3; @@ -31518,8 +31547,8 @@ self: { }: mkDerivation { pname = "avro"; - version = "0.3.0.1"; - sha256 = "1day4zpypk1jirkn0zfvmfwy0pnsvggibi9k2gk23kqnn904sv77"; + version = "0.3.0.2"; + sha256 = "0kfw8srq675hinf1gajkngbpx15xc5w74vvf76yarmaal1vaavm4"; libraryHaskellDepends = [ aeson array base base16-bytestring binary bytestring containers data-binary-ieee754 entropy fail hashable mtl pure-zlib scientific @@ -32543,7 +32572,7 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; - "backprop_0_2_0_0" = callPackage + "backprop_0_2_1_0" = callPackage ({ mkDerivation, base, bifunctors, containers, criterion, deepseq , directory, hmatrix, lens, microlens, mnist-idx, mwc-random , primitive, reflection, time, transformers, type-combinators @@ -32551,8 +32580,8 @@ self: { }: mkDerivation { pname = "backprop"; - version = "0.2.0.0"; - sha256 = "1h2cb3birbcgm0fyqr4i2d85dkwrpbqkd67a6imh3z9nsc7zy66y"; + version = "0.2.1.0"; + sha256 = "0qm352klwjv1fy2gpsr8xhd9byaydps6fwhwrr9fldmj2bn1220m"; libraryHaskellDepends = [ base containers deepseq microlens primitive reflection transformers type-combinators vector @@ -33599,8 +33628,8 @@ self: { }: mkDerivation { pname = "battleplace"; - version = "0.1.0.3"; - sha256 = "0kvw69br5nrx4nnrp0r00wr55w15wq5kh68df2r89yrd8l5vp02x"; + version = "0.1.0.4"; + sha256 = "0n3fw4z48hz188i4f02ya2wcaicl0l5nhb2w1r8hsvvgf0cixsxl"; libraryHaskellDepends = [ aeson base bytestring cereal data-default hashable memory servant text vector @@ -39229,7 +39258,7 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; - "brick_0_36_3" = callPackage + "brick_0_37" = callPackage ({ mkDerivation, base, config-ini, containers, contravariant , data-clist, deepseq, dlist, microlens, microlens-mtl , microlens-th, QuickCheck, stm, template-haskell, text @@ -39237,8 +39266,8 @@ self: { }: mkDerivation { pname = "brick"; - version = "0.36.3"; - sha256 = "1j53pj4axgyah3qj9zkaicbccmypm8cjfrpdjzarpcnb1za9y60n"; + version = "0.37"; + sha256 = "1v9ydqwaq116n8f4q9ln4zf9jr28y730y7l7m1r2ipjfjassxfq2"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ @@ -52146,6 +52175,17 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "constraint-reflection" = callPackage + ({ mkDerivation, base, category, constraint, reflection }: + mkDerivation { + pname = "constraint-reflection"; + version = "0.1.0.0"; + sha256 = "1v1m5vvicjmmz7mdp6fqf75fi2vf0hy25fyxgxpd4d7fbbyjvnh1"; + libraryHaskellDepends = [ base category constraint reflection ]; + description = "Constraint reflection"; + license = stdenv.lib.licenses.bsd3; + }) {}; + "constraints" = callPackage ({ mkDerivation, base, binary, deepseq, ghc-prim, hashable, hspec , hspec-discover, mtl, semigroups, transformers @@ -52275,20 +52315,13 @@ self: { }) {}; "container" = callPackage - ({ mkDerivation, base, containers, data-default, data-layer - , functor-utils, lens, lens-utils, mtl, template-haskell, text - , transformers, transformers-base, typelevel, vector - }: + ({ mkDerivation, base, containers, convert, lens, text }: mkDerivation { pname = "container"; - version = "1.0.2"; - sha256 = "0y8vyh9a3fv3jpjal22fg1r7ms7f2vc3ax2lhnxci6cg9zgz4gj1"; - libraryHaskellDepends = [ - base containers data-default data-layer functor-utils lens - lens-utils mtl template-haskell text transformers transformers-base - typelevel vector - ]; - homepage = "https://github.com/wdanilo/containers"; + version = "1.1.0"; + sha256 = "19x7jvzc499y4349gallwwy4wpw4pf4azbsp4gr8ly4j0flfgk6g"; + libraryHaskellDepends = [ base containers convert lens text ]; + homepage = "https://github.com/luna/container"; description = "Containers abstraction and utilities"; license = stdenv.lib.licenses.asl20; hydraPlatforms = stdenv.lib.platforms.none; @@ -53694,6 +53727,20 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "cppfilt" = callPackage + ({ mkDerivation, base, bytestring, criterion, hspec }: + mkDerivation { + pname = "cppfilt"; + version = "0.1.0.0"; + sha256 = "0ls98z5bswcsayqday350b90m256dscr2li14dnlkfckynpnqqzk"; + libraryHaskellDepends = [ base bytestring ]; + testHaskellDepends = [ base bytestring hspec ]; + benchmarkHaskellDepends = [ base bytestring criterion ]; + homepage = "https://github.com/0xd34df00d/cppfilt#readme"; + description = "Bindings for C++ demangling routines"; + license = stdenv.lib.licenses.bsd3; + }) {}; + "cpphs" = callPackage ({ mkDerivation, base, directory, old-locale, old-time, polyparse }: @@ -61965,8 +62012,8 @@ self: { }: mkDerivation { pname = "di"; - version = "1.0"; - sha256 = "1bsgq1x4xc1nhfx2wkzmhy3hfy11xkdic35x0lxdc282k2iw7f4i"; + version = "1.0.1"; + sha256 = "0h7c6s18vj60higi23icjsf1ky756l553v3a18bdkf4dgcxfs4r9"; libraryHaskellDepends = [ base df1 di-core di-df1 di-handle di-monad exceptions ]; @@ -61999,8 +62046,8 @@ self: { }: mkDerivation { pname = "di-df1"; - version = "1.0.1"; - sha256 = "1l83xl2ljql615h33h2l3ckqdx8r0wqjfpygd4xhx975lm3gllck"; + version = "1.0.2"; + sha256 = "1imk26njmr7hj56227yxgshjh4dicgr2c9bpc2m9nvsw2qbqslfh"; libraryHaskellDepends = [ base df1 di-core di-handle di-monad stm ]; @@ -62373,8 +62420,8 @@ self: { }: mkDerivation { pname = "diagrams-lib"; - version = "1.4.2.1"; - sha256 = "17vmjcshq6kdpy4qvwabrd7yp7is7zrs6lf3zn25l2ya8a3m0a17"; + version = "1.4.2.2"; + sha256 = "1rfn1fk251n84bxfn6p82p62gdjiq4yp4dwqmspp7ha2x6abn2s7"; libraryHaskellDepends = [ active adjunctions array base bytestring cereal colour containers data-default-class diagrams-core diagrams-solve directory @@ -65113,14 +65160,14 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; - "docker-build-cacher_1_9_3" = callPackage + "docker-build-cacher_1_9_4" = callPackage ({ mkDerivation, base, containers, foldl, language-docker , system-filepath, text, turtle }: mkDerivation { pname = "docker-build-cacher"; - version = "1.9.3"; - sha256 = "12x91w3wq0hndssz48xka0cb7ajmlrvdv2ysc0pv333smkmclsw1"; + version = "1.9.4"; + sha256 = "1p62q8hq19zgjwaqgclkjqh6ylpbr5jxw82f36xzqximws1jsmkp"; isLibrary = false; isExecutable = true; executableHaskellDepends = [ @@ -71670,8 +71717,8 @@ self: { ({ mkDerivation, base, template-haskell }: mkDerivation { pname = "exception-hierarchy"; - version = "0.0.0.2"; - sha256 = "1lk73pmz2qhzmsj29vc8c1xsq0rcn7gqv4yik7av7iscrq49r2cc"; + version = "0.1.0.1"; + sha256 = "1zk06z8fwr4g701c79vvsqmagjcm2h850d9m96zrig08kz3lshm9"; libraryHaskellDepends = [ base template-haskell ]; homepage = "yet"; description = "Exception type hierarchy with TemplateHaskell"; @@ -73035,6 +73082,17 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "familiar-reflection" = callPackage + ({ mkDerivation, base }: + mkDerivation { + pname = "familiar-reflection"; + version = "0.1.0.0"; + sha256 = "1yqbq038axx9a2j3kbdm11w3fgvkix2w7dqhrbf353r2n8vigxg8"; + libraryHaskellDepends = [ base ]; + description = "Reifies arbitrary terms into types that can be reflected back into terms"; + license = stdenv.lib.licenses.bsd3; + }) {}; + "family-tree" = callPackage ({ mkDerivation, base, binary, containers, hashable, intervals , lens, tables, text, time, unordered-containers @@ -74369,8 +74427,8 @@ self: { }: mkDerivation { pname = "ffmpeg-light"; - version = "0.12.0.1"; - sha256 = "1ikyhdkr3pvkpmqw7j4xgz07bnxnvckld8kd06191kgqlvr2k764"; + version = "0.12.1.0"; + sha256 = "081qrvf3hpnn7mgj6i7z8lh1jfmz0ndawc7ya9x3nx7kx3d35crp"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ @@ -77219,8 +77277,8 @@ self: { pname = "force-layout"; version = "0.4.0.6"; sha256 = "17956k3mab2xhrmfy7fj5gh08h43yjlsryi5acjhnkmin5arhwpp"; - revision = "2"; - editedCabalFile = "1dj785ih5bla68yzxkpsilwj1p1xv6a8rh76rz799aap5injda0z"; + revision = "3"; + editedCabalFile = "0rp5ggzdqy9i8bsjz7i36l8l2b04vjy6sqm6gxmb4pqmakj1x8q6"; libraryHaskellDepends = [ base containers data-default-class lens linear ]; @@ -79547,6 +79605,45 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "funflow" = callPackage + ({ mkDerivation, aeson, async, base, bytestring, clock, constraints + , containers, contravariant, cryptonite, data-default, directory + , exceptions, filepath, ghc-prim, hashable, hedis, hinotify + , hostname, integer-gmp, katip, lens, lifted-async, memory + , monad-control, mtl, optparse-applicative, path, path-io, pretty + , process, random, safe-exceptions, scientific, sqlite-simple, stm + , store, tasty, tasty-hunit, template-haskell, temporary, text + , time, transformers, unix, unordered-containers, vector, yaml + }: + mkDerivation { + pname = "funflow"; + version = "1.0.0"; + sha256 = "1lcww83dzhbmml5l4yrypbw18l8x1m3pzblcnmgd90a9874gmq0f"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + aeson async base bytestring clock constraints containers + contravariant cryptonite data-default directory exceptions filepath + ghc-prim hashable hedis hinotify hostname integer-gmp katip lens + lifted-async memory monad-control mtl path path-io pretty process + random safe-exceptions scientific sqlite-simple stm store + template-haskell text time transformers unix unordered-containers + vector yaml + ]; + executableHaskellDepends = [ + base bytestring clock hedis optparse-applicative path + safe-exceptions text unix + ]; + testHaskellDepends = [ + async base containers data-default directory filepath hedis path + path-io process random safe-exceptions tasty tasty-hunit temporary + text unix + ]; + homepage = "https://github.com/tweag/funflow"; + description = "Workflows with arrows"; + license = stdenv.lib.licenses.mit; + }) {}; + "funion" = callPackage ({ mkDerivation, base, bytestring, directory, filepath, haskell98 , HFuse, unix @@ -83238,6 +83335,19 @@ self: { license = stdenv.lib.licenses.bsd2; }) {}; + "ghc-tcplugins-extra_0_3" = callPackage + ({ mkDerivation, base, ghc }: + mkDerivation { + pname = "ghc-tcplugins-extra"; + version = "0.3"; + sha256 = "0k1ph8za52mx6f146xhaakn630xrzk42ylchv4b9r04hslhzvb1h"; + libraryHaskellDepends = [ base ghc ]; + homepage = "http://github.com/clash-lang/ghc-tcplugins-extra"; + description = "Utilities for writing GHC type-checker plugins"; + license = stdenv.lib.licenses.bsd2; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "ghc-time-alloc-prof" = callPackage ({ mkDerivation, attoparsec, base, containers, directory, filepath , process, tasty, tasty-hunit, temporary, text, time @@ -83293,6 +83403,29 @@ self: { license = stdenv.lib.licenses.bsd2; }) {}; + "ghc-typelits-extra_0_2_5" = callPackage + ({ mkDerivation, base, ghc, ghc-prim, ghc-tcplugins-extra + , ghc-typelits-knownnat, ghc-typelits-natnormalise, integer-gmp + , tasty, tasty-hunit, template-haskell, transformers + }: + mkDerivation { + pname = "ghc-typelits-extra"; + version = "0.2.5"; + sha256 = "0waznf99wryc0sjyk9xb5c0vsalmmhx0v5vbqsyf5q7r6cjcig4s"; + libraryHaskellDepends = [ + base ghc ghc-prim ghc-tcplugins-extra ghc-typelits-knownnat + ghc-typelits-natnormalise integer-gmp transformers + ]; + testHaskellDepends = [ + base ghc-typelits-knownnat ghc-typelits-natnormalise tasty + tasty-hunit template-haskell + ]; + homepage = "http://www.clash-lang.org/"; + description = "Additional type-level operations on GHC.TypeLits.Nat"; + license = stdenv.lib.licenses.bsd2; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "ghc-typelits-knownnat" = callPackage ({ mkDerivation, base, ghc, ghc-tcplugins-extra , ghc-typelits-natnormalise, tasty, tasty-hunit, tasty-quickcheck @@ -83314,6 +83447,28 @@ self: { license = stdenv.lib.licenses.bsd2; }) {}; + "ghc-typelits-knownnat_0_5" = callPackage + ({ mkDerivation, base, ghc, ghc-tcplugins-extra + , ghc-typelits-natnormalise, tasty, tasty-hunit, tasty-quickcheck + , template-haskell, transformers + }: + mkDerivation { + pname = "ghc-typelits-knownnat"; + version = "0.5"; + sha256 = "0mix7zgbnyc3216ykcrjl09rpidq5n2y886k03g8r5pziq1xki00"; + libraryHaskellDepends = [ + base ghc ghc-tcplugins-extra ghc-typelits-natnormalise + template-haskell transformers + ]; + testHaskellDepends = [ + base ghc-typelits-natnormalise tasty tasty-hunit tasty-quickcheck + ]; + homepage = "http://clash-lang.org/"; + description = "Derive KnownNat constraints from other KnownNat constraints"; + license = stdenv.lib.licenses.bsd2; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "ghc-typelits-natnormalise" = callPackage ({ mkDerivation, base, ghc, ghc-tcplugins-extra, integer-gmp, tasty , tasty-hunit, template-haskell @@ -83331,14 +83486,14 @@ self: { license = stdenv.lib.licenses.bsd2; }) {}; - "ghc-typelits-natnormalise_0_6" = callPackage + "ghc-typelits-natnormalise_0_6_1" = callPackage ({ mkDerivation, base, ghc, ghc-tcplugins-extra, integer-gmp, tasty , tasty-hunit, template-haskell, transformers }: mkDerivation { pname = "ghc-typelits-natnormalise"; - version = "0.6"; - sha256 = "0xs5d7bsyp53nzg509gs2qyfrj5fjp7bpyw3pjnnqk8d4xcgmf2w"; + version = "0.6.1"; + sha256 = "0xzwlxcmd3vll86mdjk8pph6f0nw3vq0h3airzv7jagc4j3x9c7x"; libraryHaskellDepends = [ base ghc ghc-tcplugins-extra integer-gmp transformers ]; @@ -83926,9 +84081,9 @@ self: { }) {inherit (pkgs) cairo;}; "gi-dbusmenu" = callPackage - ({ mkDerivation, base, bytestring, Cabal, containers, dbusmenu-glib - , gi-glib, gi-gobject, haskell-gi, haskell-gi-base - , haskell-gi-overloading, text, transformers + ({ mkDerivation, base, bytestring, Cabal, containers, gi-glib + , gi-gobject, haskell-gi, haskell-gi-base, haskell-gi-overloading + , libdbusmenu-glib, text, transformers }: mkDerivation { pname = "gi-dbusmenu"; @@ -83939,19 +84094,19 @@ self: { base bytestring containers gi-glib gi-gobject haskell-gi haskell-gi-base haskell-gi-overloading text transformers ]; - libraryPkgconfigDepends = [ dbusmenu-glib ]; + libraryPkgconfigDepends = [ libdbusmenu-glib ]; doHaddock = false; homepage = "https://github.com/haskell-gi/haskell-gi"; description = "Dbusmenu bindings"; license = stdenv.lib.licenses.lgpl21; hydraPlatforms = stdenv.lib.platforms.none; - }) {dbusmenu-glib = null;}; + }) {inherit (pkgs) libdbusmenu-glib;}; "gi-dbusmenugtk3" = callPackage - ({ mkDerivation, base, bytestring, Cabal, containers, dbusmenu-gtk3 - , gi-atk, gi-dbusmenu, gi-gdk, gi-gdkpixbuf, gi-glib, gi-gobject - , gi-gtk, haskell-gi, haskell-gi-base, haskell-gi-overloading, text - , transformers + ({ mkDerivation, base, bytestring, Cabal, containers, gi-atk + , gi-dbusmenu, gi-gdk, gi-gdkpixbuf, gi-glib, gi-gobject, gi-gtk + , haskell-gi, haskell-gi-base, haskell-gi-overloading + , libdbusmenu-gtk3, text, transformers }: mkDerivation { pname = "gi-dbusmenugtk3"; @@ -83963,13 +84118,13 @@ self: { gi-glib gi-gobject gi-gtk haskell-gi haskell-gi-base haskell-gi-overloading text transformers ]; - libraryPkgconfigDepends = [ dbusmenu-gtk3 ]; + libraryPkgconfigDepends = [ libdbusmenu-gtk3 ]; doHaddock = false; homepage = "https://github.com/haskell-gi/haskell-gi"; description = "DbusmenuGtk bindings"; license = stdenv.lib.licenses.lgpl21; hydraPlatforms = stdenv.lib.platforms.none; - }) {dbusmenu-gtk3 = null;}; + }) {inherit (pkgs) libdbusmenu-gtk3;}; "gi-gdk" = callPackage ({ mkDerivation, base, bytestring, Cabal, containers, gi-cairo @@ -102061,8 +102216,8 @@ self: { }: mkDerivation { pname = "hedgehog-gen-json"; - version = "0.3.0"; - sha256 = "09b362v9cdl9jwrx0hyb7hhf2krg3rhrsgssz4dl3sjz3y2a8i1h"; + version = "0.5.1"; + sha256 = "0cc46l1ls4dzlchwcd6cqmsa66qffjq01dhcj2k84gjw8gg4wnnx"; libraryHaskellDepends = [ aeson base bytestring containers exceptions hedgehog lens protolude regex-genex scientific text time timerep tz unordered-containers @@ -104321,24 +104476,24 @@ self: { "hierarchy" = callPackage ({ mkDerivation, base, directory, doctest, exceptions, filepath - , free, hspec, hspec-expectations, mmorph, monad-control, mtl - , pipes, semigroups, transformers, transformers-base + , free, mmorph, monad-control, mtl, transformers, transformers-base , transformers-compat }: mkDerivation { pname = "hierarchy"; - version = "0.3.1.4"; - sha256 = "0bli7mv2d6lmxc89fysmkhb9kamhzs2rqx75rn4mbcw61il1cznq"; + version = "1.0.1"; + sha256 = "11xnqf5s0vda2wjgdazkgkmjp46jyl9zcaia5r01szfwjihj5ldg"; libraryHaskellDepends = [ - base exceptions free mmorph monad-control mtl pipes semigroups - transformers transformers-base transformers-compat + base exceptions free mmorph monad-control mtl transformers + transformers-base transformers-compat ]; testHaskellDepends = [ - base directory doctest filepath hspec hspec-expectations mtl pipes - semigroups transformers + base directory doctest exceptions filepath free mmorph + monad-control mtl transformers transformers-base + transformers-compat ]; - homepage = "https://github.com/jwiegley/hierarchy"; - description = "Pipes-based library for predicated traversal of generated trees"; + homepage = "https://github.com/jwiegley/hierarchy#readme"; + description = "Predicated traversal of generated trees"; license = stdenv.lib.licenses.bsd3; hydraPlatforms = stdenv.lib.platforms.none; }) {}; @@ -107040,30 +107195,61 @@ self: { }) {inherit (pkgs) netcdf;}; "hnix" = callPackage - ({ mkDerivation, ansi-wl-pprint, base, containers, criterion - , data-fix, deepseq, deriving-compat, parsers, regex-tdfa - , regex-tdfa-text, semigroups, tasty, tasty-hunit, tasty-th, text - , transformers, trifecta, unordered-containers + ({ mkDerivation, aeson, ansi-wl-pprint, array, base + , base16-bytestring, binary, bytestring, containers, criterion + , cryptohash-md5, cryptohash-sha1, cryptohash-sha256 + , cryptohash-sha512, data-fix, deepseq, deriving-compat, Diff + , directory, exceptions, filepath, generic-random, Glob, hashable + , hashing, haskeline, http-client, http-client-tls, http-types + , interpolate, lens-family, lens-family-core, lens-family-th + , logict, megaparsec, monadlist, mtl, optparse-applicative + , pretty-show, process, QuickCheck, quickcheck-instances + , regex-tdfa, regex-tdfa-text, repline, scientific, semigroups + , serialise, split, syb, tasty, tasty-hunit, tasty-quickcheck + , tasty-th, template-haskell, text, these, time, transformers, unix + , unordered-containers, vector, xml }: mkDerivation { pname = "hnix"; - version = "0.4.0"; - sha256 = "0rgx97ckv5zvly6x76h7nncswfw0ik4bhnlj8n5bpl4rqzd7d4fd"; + version = "0.5.1"; + sha256 = "1rhbx7ixzg4147j3pcqvfzn1k2b1xcn8428z98cq6ghnrmgss9al"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ - ansi-wl-pprint base containers data-fix deepseq deriving-compat - parsers regex-tdfa regex-tdfa-text semigroups text transformers - trifecta unordered-containers + aeson ansi-wl-pprint array base base16-bytestring binary bytestring + containers cryptohash-md5 cryptohash-sha1 cryptohash-sha256 + cryptohash-sha512 data-fix deepseq deriving-compat directory + exceptions filepath hashable hashing haskeline http-client + http-client-tls http-types lens-family lens-family-core + lens-family-th logict megaparsec monadlist mtl optparse-applicative + pretty-show process regex-tdfa regex-tdfa-text scientific + semigroups serialise split syb template-haskell text these time + transformers unix unordered-containers vector xml ]; executableHaskellDepends = [ - ansi-wl-pprint base containers data-fix deepseq + aeson ansi-wl-pprint base base16-bytestring bytestring containers + cryptohash-md5 cryptohash-sha1 cryptohash-sha256 cryptohash-sha512 + data-fix deepseq exceptions filepath hashing haskeline mtl + optparse-applicative pretty-show repline serialise template-haskell + text time transformers unordered-containers ]; testHaskellDepends = [ - base containers data-fix tasty tasty-hunit tasty-th text + ansi-wl-pprint base base16-bytestring bytestring containers + cryptohash-md5 cryptohash-sha1 cryptohash-sha256 cryptohash-sha512 + data-fix deepseq Diff directory exceptions filepath generic-random + Glob hashing interpolate megaparsec mtl optparse-applicative + pretty-show process QuickCheck quickcheck-instances serialise split + tasty tasty-hunit tasty-quickcheck tasty-th template-haskell text + time transformers unix unordered-containers ]; - benchmarkHaskellDepends = [ base containers criterion text ]; - homepage = "http://github.com/jwiegley/hnix"; + benchmarkHaskellDepends = [ + ansi-wl-pprint base base16-bytestring bytestring containers + criterion cryptohash-md5 cryptohash-sha1 cryptohash-sha256 + cryptohash-sha512 data-fix deepseq exceptions filepath hashing mtl + optparse-applicative serialise template-haskell text time + transformers unordered-containers + ]; + homepage = "https://github.com/jwiegley/hnix#readme"; description = "Haskell implementation of the Nix language"; license = stdenv.lib.licenses.bsd3; hydraPlatforms = stdenv.lib.platforms.none; @@ -109801,6 +109987,27 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "hs-conllu" = callPackage + ({ mkDerivation, base, containers, directory, filepath, megaparsec + , void + }: + mkDerivation { + pname = "hs-conllu"; + version = "0.1.2"; + sha256 = "1dvayafvf14gbir7cafhzlscqlffaws5ajilm5h520ji449jh2aa"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + base containers directory filepath megaparsec void + ]; + executableHaskellDepends = [ + base containers directory filepath megaparsec + ]; + homepage = "https://github.com/odanoburu/hs-conllu"; + description = "Conllu validating parser and utils"; + license = stdenv.lib.licenses.lgpl3; + }) {}; + "hs-di" = callPackage ({ mkDerivation, base, compose-ltr, containers, deepseq , foreign-store, ghcid, haskell-src-meta, hspec, hspec-core @@ -123914,6 +124121,24 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "javascript-extras_0_4_0_0" = callPackage + ({ mkDerivation, base, deepseq, ghcjs-base-stub, parallel, text }: + mkDerivation { + pname = "javascript-extras"; + version = "0.4.0.0"; + sha256 = "0qpz8q5pr939y35y3r8x83irb2nl9vmh50wzjii824kr25z5wipd"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + base deepseq ghcjs-base-stub parallel text + ]; + executableHaskellDepends = [ base ghcjs-base-stub ]; + homepage = "https://github.com/louispan/javascript-extras#readme"; + description = "Extra javascript functions when using GHCJS"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "javasf" = callPackage ({ mkDerivation, base, binary, bytestring, directory, doctest , filepath, language-java-classfile, QuickCheck @@ -126597,20 +126822,21 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; - "katydid_0_3_0_0" = callPackage + "katydid_0_3_0_1" = callPackage ({ mkDerivation, base, bytestring, containers, criterion, deepseq , directory, either, extra, filepath, HUnit, hxt, ilist, json, mtl , parsec, primes, regex-tdfa, tasty, tasty-hunit, text + , transformers-either }: mkDerivation { pname = "katydid"; - version = "0.3.0.0"; - sha256 = "1r95yxhrsw0ghv55xlq987yzhly69ihiy4bz6k3k41mfj8d7kj8v"; + version = "0.3.0.1"; + sha256 = "08q8qmvxc47y8rxs8vam31xwjgwyjga4bdd65m1n4plpndi0zhyg"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ base bytestring containers deepseq either extra hxt ilist json mtl - parsec regex-tdfa text + parsec regex-tdfa text transformers-either ]; executableHaskellDepends = [ base mtl ]; testHaskellDepends = [ @@ -129244,15 +129470,15 @@ self: { license = stdenv.lib.licenses.gpl3; }) {}; - "language-docker_5_0_0" = callPackage + "language-docker_5_0_1" = callPackage ({ mkDerivation, base, bytestring, directory, filepath, free, Glob , hspec, HUnit, mtl, parsec, pretty, process, QuickCheck, split , template-haskell, text, th-lift, time }: mkDerivation { pname = "language-docker"; - version = "5.0.0"; - sha256 = "16shdy1dh0bsalj0ciwg7h9dkjfjgkrfmq7g81z3k8fgy1w2y81n"; + version = "5.0.1"; + sha256 = "0y2kb2g9w34p3yw8cdjr4f0xkq9j065khlk1mbk7061gg2rhpykv"; libraryHaskellDepends = [ base bytestring free mtl parsec pretty split template-haskell text th-lift time @@ -130585,8 +130811,8 @@ self: { }: mkDerivation { pname = "layouting"; - version = "1.1.2"; - sha256 = "1j3bki62ldi5gbl3asa31rjjlah2842rhgylxwab13c3r50a7p85"; + version = "1.1.3"; + sha256 = "1ji0hmfa87n3pl61gmgk4phmpir29j5r81ack95s3h7nxh0q5qh7"; libraryHaskellDepends = [ base container layered-state prologue terminal-text text ]; @@ -134789,7 +135015,7 @@ self: { license = stdenv.lib.licenses.bsd3; }) {llvm-config = null;}; - "llvm-hs_6_1_1" = callPackage + "llvm-hs_6_2_0" = callPackage ({ mkDerivation, array, attoparsec, base, bytestring, Cabal , containers, exceptions, llvm-config, llvm-hs-pure, mtl , pretty-show, QuickCheck, tasty, tasty-hunit, tasty-quickcheck @@ -134797,8 +135023,8 @@ self: { }: mkDerivation { pname = "llvm-hs"; - version = "6.1.1"; - sha256 = "0vlp1rgddgavs4kg0s1qmny6mlx4rpz12ybcrqg6vmv68w1qyr5r"; + version = "6.2.0"; + sha256 = "1s7n0sansq1mhs6dibp3ikkpn3n0h6cw2ja5m36nphjmzn47dvrk"; setupHaskellDepends = [ base Cabal containers ]; libraryHaskellDepends = [ array attoparsec base bytestring containers exceptions llvm-hs-pure @@ -134859,15 +135085,15 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; - "llvm-hs-pure_6_1_0" = callPackage + "llvm-hs-pure_6_2_0" = callPackage ({ mkDerivation, attoparsec, base, bytestring, containers, fail , mtl, tasty, tasty-hunit, tasty-quickcheck, template-haskell , transformers, unordered-containers }: mkDerivation { pname = "llvm-hs-pure"; - version = "6.1.0"; - sha256 = "12fivm5w4nz306p7w0bxsmgb2cnbkp06dyrdfi64vrsgm9kgbqmw"; + version = "6.2.0"; + sha256 = "1qqwhq9mjlgpyy5h8wnk1zg8y16c229397fslxyyz3bjqg5a0ghv"; libraryHaskellDepends = [ attoparsec base bytestring containers fail mtl template-haskell transformers unordered-containers @@ -144602,16 +144828,19 @@ self: { }) {}; "monadiccp" = callPackage - ({ mkDerivation, base, containers, mtl, parsec, pretty, random }: + ({ mkDerivation, base, containers, mtl, parsec, pretty, random + , semigroups + }: mkDerivation { pname = "monadiccp"; - version = "0.7.6"; - sha256 = "083ppr53ac85r5ybndngsfwxgalj63giz32aa7wpcm629b9g4lxc"; + version = "0.7.7"; + sha256 = "1l6g2gbxmw0avyr7mfjadhads6raz6cwvmg57vb7ssryd9j21vp4"; enableSeparateDataOutput = true; libraryHaskellDepends = [ - base containers mtl parsec pretty random + base containers mtl parsec pretty random semigroups ]; - homepage = "http://users.ugent.be/~tschrijv/MCP/"; + testHaskellDepends = [ base ]; + homepage = "https://people.cs.kuleuven.be/~tom.schrijvers/MCP/"; description = "Constraint Programming"; license = stdenv.lib.licenses.bsd3; hydraPlatforms = stdenv.lib.platforms.none; @@ -152602,12 +152831,12 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; - "numhask_0_2_0_0" = callPackage + "numhask_0_2_1_0" = callPackage ({ mkDerivation, base }: mkDerivation { pname = "numhask"; - version = "0.2.0.0"; - sha256 = "1n465rjgmpwjixnnwn054323rg55abbj98brqzw4ff17hrvy97g0"; + version = "0.2.1.0"; + sha256 = "04bz8ddip48fiszjqc6km9xg63sn26jrnjxswc3qfls37jqzk2c3"; libraryHaskellDepends = [ base ]; homepage = "https://github.com/tonyday567/numhask#readme"; description = "numeric classes"; @@ -152622,8 +152851,8 @@ self: { }: mkDerivation { pname = "numhask-array"; - version = "0.2.0.1"; - sha256 = "05y41d8xnrzgrb5w6skkac5hr6c7npwzmryx308cd0lp4nbfmvql"; + version = "0.2.1.0"; + sha256 = "0d800ghafzfyz6afnaqza6b44pmjh8zq0gbxvxg2ach2wfcknd0h"; libraryHaskellDepends = [ adjunctions base deepseq dimensions distributive numhask-prelude protolude QuickCheck singletons vector @@ -152661,12 +152890,12 @@ self: { }: mkDerivation { pname = "numhask-prelude"; - version = "0.0.3.0"; - sha256 = "128hnq32826d2rmrlik4p0c72jnsy586gz9lgfk7hnx0fqpr94gy"; + version = "0.0.4.0"; + sha256 = "11kwszs98c00bcjr318rm7yfc0h304s6vnrmh97mp4xp4bk7fqq1"; libraryHaskellDepends = [ base numhask protolude QuickCheck tasty tasty-quickcheck ]; - testHaskellDepends = [ base doctest tasty ]; + testHaskellDepends = [ base doctest QuickCheck tasty ]; homepage = "https://github.com/tonyday567/numhask#readme"; description = "A numeric prelude"; license = stdenv.lib.licenses.bsd3; @@ -152779,6 +153008,21 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "nuxeo" = callPackage + ({ mkDerivation, attoparsec, base, bytestring, conduit + , conduit-extra, text, time + }: + mkDerivation { + pname = "nuxeo"; + version = "0.2.0.1"; + sha256 = "046vwj0p53pzrdmni08gqyzrr0mhz8qrf5zn09plgzjadq3yp2p2"; + libraryHaskellDepends = [ + attoparsec base bytestring conduit conduit-extra text time + ]; + description = "Nuxeo"; + license = stdenv.lib.licenses.bsd3; + }) {}; + "nvim-hs" = callPackage ({ mkDerivation, base, bytestring, cereal, cereal-conduit, conduit , containers, data-default, deepseq, directory, dyre, filepath @@ -156403,12 +156647,12 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; - "palette_0_3" = callPackage + "palette_0_3_0_1" = callPackage ({ mkDerivation, array, base, colour, containers, MonadRandom }: mkDerivation { pname = "palette"; - version = "0.3"; - sha256 = "1wpzrhr3b9psa7b56ys34vnaag6z12xam2rymld2g8fd13jlkxh6"; + version = "0.3.0.1"; + sha256 = "0ylwgb7a0mhffz00hmhx93y4kyjb9xgm96jrfcxl464x8cjka5gi"; libraryHaskellDepends = [ array base colour containers MonadRandom ]; @@ -158594,8 +158838,8 @@ self: { }: mkDerivation { pname = "patat"; - version = "0.7.0.0"; - sha256 = "0w7k1s8nma0bp4cvacmpa3fxxslarcijpxvbvasjyik3inazqhsd"; + version = "0.7.2.0"; + sha256 = "1kn739dywchvvvcp972yyxg7r4n81s3qbrni684ag7493nck12iw"; isLibrary = false; isExecutable = true; executableHaskellDepends = [ @@ -167935,8 +168179,8 @@ self: { }: mkDerivation { pname = "profiteur"; - version = "0.4.4.0"; - sha256 = "08pnybyr6l39h7lxvgxi014wb7cf6i8qfygx4xkfzkj9p23mp3h9"; + version = "0.4.5.0"; + sha256 = "18wyq1czj99zxgqmv6v2qpwlax3a4r7d93pc24ihzg5v8ps6iz89"; isLibrary = false; isExecutable = true; enableSeparateDataOutput = true; @@ -173811,12 +174055,16 @@ self: { }) {}; "reactive-banana-automation" = callPackage - ({ mkDerivation, base, doctest, reactive-banana, stm, time }: + ({ mkDerivation, base, doctest, reactive-banana, stm, time + , transformers + }: mkDerivation { pname = "reactive-banana-automation"; - version = "0.3.0"; - sha256 = "1f752kmfmgdx9mhvzljm37vrn18jn7wgz0m4byl3v4npcv502cyr"; - libraryHaskellDepends = [ base reactive-banana stm time ]; + version = "0.4.0"; + sha256 = "1zc24p1jqild85k049ixbfcdhxdy66l4m5ddr1g3bkxq8apilnrr"; + libraryHaskellDepends = [ + base reactive-banana stm time transformers + ]; testHaskellDepends = [ base doctest ]; description = "home (etc) automation using reactive-banana"; license = stdenv.lib.licenses.agpl3; @@ -174536,8 +174784,8 @@ self: { }: mkDerivation { pname = "recursion-schemes-ext"; - version = "1.0.0.3"; - sha256 = "00yj7h46pmy76iqsx1n0mlg04gzdrhyq10xm1xcl28y13jcjx9lc"; + version = "1.0.0.4"; + sha256 = "0n25cz8w48p8fxjnv83raxrvn7v892z8ip3jklgxj1vgh4rms3xx"; libraryHaskellDepends = [ base composition-prelude lens recursion-schemes ]; @@ -189738,8 +189986,8 @@ self: { }: mkDerivation { pname = "simplest-sqlite"; - version = "0.0.0.14"; - sha256 = "063x0s7klp510v9gz2qffpwnrsrfh5kady5n0j0cl1x65kis0d2m"; + version = "0.1.0.0"; + sha256 = "0vjx01bls2z99hmynqhxm4j2cq17334wz3pz0gm5saxslkldw2sz"; libraryHaskellDepends = [ base bytestring exception-hierarchy template-haskell text ]; @@ -202244,6 +202492,8 @@ self: { pname = "taffybar"; version = "2.0.0"; sha256 = "1s3nqvsivi4wgi6hi7b3f83r75sl5qp0hsqr0cdwd7s8fqai3wia"; + revision = "1"; + editedCabalFile = "1sqgzjv0nhp5nmzn4qh80ghq38p5q7c8nvm1v1wh1dx2j7lkjnzc"; isLibrary = true; isExecutable = true; enableSeparateDataOutput = true; @@ -217726,12 +217976,12 @@ self: { license = stdenv.lib.licenses.mit; }) {}; - "validity_0_5_0_0" = callPackage + "validity_0_6_0_0" = callPackage ({ mkDerivation, base, hspec }: mkDerivation { pname = "validity"; - version = "0.5.0.0"; - sha256 = "0hpdj3ckp2r8dklpjdrrbfd02maskxw2vrjnqnxsgi8s3j8avqsv"; + version = "0.6.0.0"; + sha256 = "1ba7dvxz2x3ng4k221xawp0bz4gk4lz5gklklgypavp1fdrhf27q"; libraryHaskellDepends = [ base ]; testHaskellDepends = [ base hspec ]; homepage = "https://github.com/NorfairKing/validity#readme"; @@ -219228,8 +219478,8 @@ self: { }: mkDerivation { pname = "viewprof"; - version = "0.0.0.16"; - sha256 = "123dqm0rardrvvvrj8sjjs9z8yysk9qzwvrs3skqzxrq5pffyarp"; + version = "0.0.0.17"; + sha256 = "0wj0y6dyyy11flkywv96m95nq0qlmj4wykfwj4xw8fwjjmsmg91f"; isLibrary = false; isExecutable = true; executableHaskellDepends = [ @@ -219825,6 +220075,8 @@ self: { pname = "vpq"; version = "0.1.0.0"; sha256 = "1qa3l71ch96slan8s2zx9wc4ljsl4jgl83m7h0rfb9nd9cawflf7"; + revision = "1"; + editedCabalFile = "16wnqvfblg8gimixc9pjdii4anbqjlkn12xrb6aw3sqk26pq7khb"; libraryHaskellDepends = [ base primitive util vector ]; testHaskellDepends = [ base smallcheck tasty tasty-smallcheck ]; description = "Priority queue based on vector"; @@ -220048,8 +220300,8 @@ self: { ({ mkDerivation, base }: mkDerivation { pname = "vulkan-api"; - version = "1.1.2.0"; - sha256 = "0l52494zi9r3fq3nx21r8pkbb7zkynz1gbrn58k8pramx7nhksb1"; + version = "1.1.2.1"; + sha256 = "0iwzjr2w6ifsj6lah8viahsxcqxiqy0dk1v6lnzi77nb05sjpr6d"; libraryHaskellDepends = [ base ]; homepage = "https://github.com/achirkin/vulkan#readme"; description = "Low-level low-overhead vulkan api bindings"; diff --git a/pkgs/development/idris-modules/default.nix b/pkgs/development/idris-modules/default.nix index 12fbc8dfd17a..1dfa4e48899a 100644 --- a/pkgs/development/idris-modules/default.nix +++ b/pkgs/development/idris-modules/default.nix @@ -194,6 +194,8 @@ union_type = callPackage ./union_type.nix {}; + vdom = callPackage ./vdom.nix {}; + vecspace = callPackage ./vecspace.nix {}; webgl = callPackage ./webgl.nix {}; diff --git a/pkgs/development/idris-modules/vdom.nix b/pkgs/development/idris-modules/vdom.nix new file mode 100644 index 000000000000..034bda583dbc --- /dev/null +++ b/pkgs/development/idris-modules/vdom.nix @@ -0,0 +1,28 @@ +{ build-idris-package +, fetchFromGitHub +, prelude +, base +, lib +, idris +}: +build-idris-package { + name = "vdom"; + version = "0.6.0"; + + idrisDeps = [ prelude base ]; + + src = fetchFromGitHub { + owner = "brandondyck"; + repo = "idris-vdom"; + rev = "ff32c14feeac937f7418830a9a3463cd9582be8a"; + sha256 = "0aila1qdpmhrp556dzaxk7yn7vgkwcnbp9jhw8f8pl51xs3s2kvf"; + }; + + meta = { + description = "Virtual DOM in pure Idris"; + homepage = https://github.com/brandondyck/idris-vdom; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.brainrape ]; + inherit (idris.meta) platforms; + }; +} diff --git a/pkgs/development/libraries/kpmcore/default.nix b/pkgs/development/libraries/kpmcore/default.nix index 2a2f0c79490e..c6c3ba53d2c3 100644 --- a/pkgs/development/libraries/kpmcore/default.nix +++ b/pkgs/development/libraries/kpmcore/default.nix @@ -1,6 +1,7 @@ { stdenv, lib, fetchurl, extra-cmake-modules, pkgconfig , qtbase, kdeFrameworks -, eject, libatasmart, parted }: +, libatasmart, parted +, utillinux }: let pname = "kpmcore"; @@ -16,11 +17,12 @@ in stdenv.mkDerivation rec { buildInputs = [ qtbase - eject # this is to get libblkid libatasmart parted # we only need the library kdeFrameworks.kio + + utillinux # needs blkid (note that this is not provided by utillinux-compat) ]; nativeBuildInputs = [ extra-cmake-modules ]; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/libminc/default.nix b/pkgs/development/libraries/libminc/default.nix index 704c73284ae1..ddab3439f02a 100644 --- a/pkgs/development/libraries/libminc/default.nix +++ b/pkgs/development/libraries/libminc/default.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { pname = "libminc"; - name = "${pname}-2017-09-14"; + name = "${pname}-2018-01-17"; owner = "BIC-MNI"; @@ -10,8 +10,8 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { inherit owner; repo = pname; - rev = "e11c6df9321b4061bf87a7d43171ec55e9e3908f"; - sha256 = "0lmd0js3jgni2mw1zfvd4qg6byxiv3ndgv2z3nm7975i83zw48xk"; + rev = "a9cbe1353eae9791b7d5b03af16e0f86922ce40b"; + sha256 = "0mn4n3ihzcr1jw2g1vy6c8p4lkc88jwljk04argmj7k4djrgpxpa"; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/development/libraries/simpleitk/default.nix b/pkgs/development/libraries/simpleitk/default.nix new file mode 100644 index 000000000000..4802683079d1 --- /dev/null +++ b/pkgs/development/libraries/simpleitk/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl, cmake, git, swig, lua, itk }: + +stdenv.mkDerivation rec { + pname = "simpleitk"; + version = "1.0.0"; + name = "${pname}-${version}"; + + src = fetchurl { + url = "https://sourceforge.net/projects/${pname}/files/SimpleITK/${version}/Source/SimpleITK-${version}.tar.gz"; + sha256 = "0554j0zp314zhs8isfg31fi6gvsl7xq3xjyyxkx1b1mjkn5qx673"; + }; + + nativeBuildInputs = [ cmake git swig ]; + buildInputs = [ lua itk ]; + + cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" "-DCMAKE_CXX_FLAGS='-Wno-attributes'" ]; + + checkPhase = "ctest"; + + enableParallelBuilding = true; + + meta = with stdenv.lib; { + homepage = http://www.simpleitk.org; + description = "Simplified interface to ITK"; + maintainers = with maintainers; [ bcdarwin ]; + platforms = platforms.unix; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/python-modules/twine/default.nix b/pkgs/development/python-modules/twine/default.nix index 63f8c3b90554..9cb3a09d363e 100644 --- a/pkgs/development/python-modules/twine/default.nix +++ b/pkgs/development/python-modules/twine/default.nix @@ -10,12 +10,12 @@ buildPythonPackage rec { pname = "twine"; - version = "1.9.1"; + version = "1.11.0"; name = "${pname}-${version}"; src = fetchPypi { inherit pname version; - sha256 = "caa45b7987fc96321258cd7668e3be2ff34064f5c66d2d975b641adca659c1ab"; + sha256 = "09cz9v63f8mrs4znbjapjj2z3wdfryq8q364zm0wzjhbzzcs9n9g"; }; propagatedBuildInputs = [ pkginfo requests requests_toolbelt tqdm pyblake2 ]; diff --git a/pkgs/misc/themes/plano/default.nix b/pkgs/misc/themes/plano/default.nix index 64d4e807e425..2d10ff7c607d 100644 --- a/pkgs/misc/themes/plano/default.nix +++ b/pkgs/misc/themes/plano/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "plano-theme-${version}"; - version = "3.24-3"; + version = "3.28-1"; src = fetchFromGitHub { owner = "lassekongo83"; repo = "plano-theme"; rev = "v${version}"; - sha256 = "079gj3kgsim01r7yb9dcxvrci3my1y0zkn86igdlspxcnjzmxkq0"; + sha256 = "1862nx7c8786vfa0qdg4aqa13whsk3j5n93v9m91wpccv19n0ryn"; }; buildInputs = [ gdk_pixbuf gtk_engines ]; diff --git a/pkgs/os-specific/linux/input-utils/default.nix b/pkgs/os-specific/linux/input-utils/default.nix new file mode 100644 index 000000000000..cd0fc01384bc --- /dev/null +++ b/pkgs/os-specific/linux/input-utils/default.nix @@ -0,0 +1,30 @@ +{ stdenv, fetchurl, linuxHeaders }: + +stdenv.mkDerivation rec { + name = "input-utils-${version}"; + version = "1.3"; + + src = fetchurl { + url = "https://www.kraxel.org/releases/input/input-${version}.tar.gz"; + sha256 = "11w0pp20knx6qpgzmawdbk1nj2z3fzp8yd6nag6s8bcga16w6hli"; + }; + + prePatch = '' + # Use proper include path for kernel include files. + substituteInPlace ./name.sh --replace "/usr/include/linux/" "${linuxHeaders}/include/linux/" + substituteInPlace ./lirc.sh --replace "/usr/include/linux/" "${linuxHeaders}/include/linux/" + ''; + + makeFlags = [ + "prefix=$(out)" + "STRIP=-s" + ]; + + meta = with stdenv.lib; { + description = "Input layer utilities, includes lsinput"; + homepage = https://www.kraxel.org/blog/linux/input/; + license = licenses.gpl2; + maintainers = with maintainers; [ samueldr ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/servers/monitoring/grafana/default.nix b/pkgs/servers/monitoring/grafana/default.nix index bcae836cbf21..f9fb4efa04be 100644 --- a/pkgs/servers/monitoring/grafana/default.nix +++ b/pkgs/servers/monitoring/grafana/default.nix @@ -1,7 +1,7 @@ { lib, buildGoPackage, fetchurl, fetchFromGitHub, phantomjs2 }: buildGoPackage rec { - version = "5.1.1"; + version = "5.1.2"; name = "grafana-${version}"; goPackagePath = "github.com/grafana/grafana"; @@ -9,12 +9,12 @@ buildGoPackage rec { rev = "v${version}"; owner = "grafana"; repo = "grafana"; - sha256 = "0b8i293bfxyblfqwxpb1dkgva95f0bljpvp27j4l4hmjm2g8bpd9"; + sha256 = "0iw0mr6m99z6vy9mz9fdhmn4fxi359n3ns71bm5a71np8lf4qs36"; }; srcStatic = fetchurl { url = "https://grafana-releases.s3.amazonaws.com/release/grafana-${version}.linux-x64.tar.gz"; - sha256 = "0kyfyxcj2yy9v1in6h6kh6sl5p7m03g643qpjriplwwa93bdmk8k"; + sha256 = "18bqmvyfjkvkrdbxa989aa6c7ri3b4wdb7ai543hiaz00s9mnpzm"; }; preBuild = "export GOPATH=$GOPATH:$NIX_BUILD_TOP/go/src/${goPackagePath}/Godeps/_workspace"; diff --git a/pkgs/tools/filesystems/squashfs/0001-If-SOURCE_DATE_EPOCH-is-set-override-timestamps-with.patch b/pkgs/tools/filesystems/squashfs/0001-If-SOURCE_DATE_EPOCH-is-set-override-timestamps-with.patch new file mode 100644 index 000000000000..5626800e723c --- /dev/null +++ b/pkgs/tools/filesystems/squashfs/0001-If-SOURCE_DATE_EPOCH-is-set-override-timestamps-with.patch @@ -0,0 +1,90 @@ +From 0ab12a8585373be2de5129e14d979c62e7a90d82 Mon Sep 17 00:00:00 2001 +From: Chris Lamb +Date: Mon, 21 Nov 2016 09:33:05 +0100 +Subject: [PATCH] If SOURCE_DATE_EPOCH is set, override timestamps with that + value. + +See https://reproducible-builds.org/specs/source-date-epoch/ for more +information about this environment variable. + +Based on a patch by Alexander Couzens posted on +https://sourceforge.net/p/squashfs/mailman/message/34673610/ + +Signed-off-by: Chris Lamb +--- + squashfs-tools/mksquashfs.c | 38 ++++++++++++++++++++++++++++++++++++- + 1 file changed, 37 insertions(+), 1 deletion(-) + +diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c +index c2098bd..b49e956 100644 +--- a/squashfs-tools/mksquashfs.c ++++ b/squashfs-tools/mksquashfs.c +@@ -137,6 +137,9 @@ unsigned int cache_bytes = 0, cache_size = 0, inode_count = 0; + /* inode lookup table */ + squashfs_inode *inode_lookup_table = NULL; + ++/* override filesystem creation time */ ++time_t mkfs_fixed_time = -1; ++ + /* in memory directory data */ + #define I_COUNT_SIZE 128 + #define DIR_ENTRIES 32 +@@ -5104,6 +5107,9 @@ int main(int argc, char *argv[]) + int total_mem = get_default_phys_mem(); + int progress = TRUE; + int force_progress = FALSE; ++ char *source_date_epoch, *endptr; ++ unsigned long long epoch; ++ + struct file_buffer **fragment = NULL; + + if(argc > 1 && strcmp(argv[1], "-version") == 0) { +@@ -5641,6 +5647,36 @@ printOptions: + } + } + ++ /* if SOURCE_DATE_EPOCH is set, use that timestamp for the mkfs time */ ++ source_date_epoch = getenv("SOURCE_DATE_EPOCH"); ++ if(source_date_epoch) { ++ errno = 0; ++ epoch = strtoull(source_date_epoch, &endptr, 10); ++ if((errno == ERANGE && (epoch == ULLONG_MAX || epoch == 0)) ++ || (errno != 0 && epoch == 0)) { ++ ERROR("Environment variable $SOURCE_DATE_EPOCH: " ++ "strtoull: %s\n", strerror(errno)); ++ EXIT_MKSQUASHFS(); ++ } ++ if(endptr == source_date_epoch) { ++ ERROR("Environment variable $SOURCE_DATE_EPOCH: " ++ "No digits were found: %s\n", endptr); ++ EXIT_MKSQUASHFS(); ++ } ++ if(*endptr != '\0') { ++ ERROR("Environment variable $SOURCE_DATE_EPOCH: " ++ "Trailing garbage: %s\n", endptr); ++ EXIT_MKSQUASHFS(); ++ } ++ if(epoch > ULONG_MAX) { ++ ERROR("Environment variable $SOURCE_DATE_EPOCH: " ++ "value must be smaller than or equal to " ++ "%lu but was found to be: %llu \n", ULONG_MAX, epoch); ++ EXIT_MKSQUASHFS(); ++ } ++ mkfs_fixed_time = (time_t)epoch; ++ } ++ + /* + * Some compressors may need the options to be checked for validity + * once all the options have been processed +@@ -5993,7 +6029,7 @@ printOptions: + sBlk.flags = SQUASHFS_MKFLAGS(noI, noD, noF, noX, no_fragments, + always_use_fragments, duplicate_checking, exportable, + no_xattrs, comp_opts); +- sBlk.mkfs_time = time(NULL); ++ sBlk.mkfs_time = mkfs_fixed_time != -1 ? mkfs_fixed_time : time(NULL); + + disable_info(); + +-- +2.17.0 + diff --git a/pkgs/tools/filesystems/squashfs/0002-If-SOURCE_DATE_EPOCH-is-set-also-clamp-content-times.patch b/pkgs/tools/filesystems/squashfs/0002-If-SOURCE_DATE_EPOCH-is-set-also-clamp-content-times.patch new file mode 100644 index 000000000000..5002375887fb --- /dev/null +++ b/pkgs/tools/filesystems/squashfs/0002-If-SOURCE_DATE_EPOCH-is-set-also-clamp-content-times.patch @@ -0,0 +1,83 @@ +From 32a07d4156a281084c90a4b78affc8b0b32a26fc Mon Sep 17 00:00:00 2001 +From: intrigeri +Date: Mon, 21 Nov 2016 11:41:28 +0000 +Subject: [PATCH] If SOURCE_DATE_EPOCH is set, also clamp content timestamps + with that value. + +Based on a patch by Alexander Couzens posted on +https://sourceforge.net/p/squashfs/mailman/message/34673610/ +--- + squashfs-tools/mksquashfs.c | 15 ++++++++++++--- + 1 file changed, 12 insertions(+), 3 deletions(-) + +diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c +index b49e956..9f020bf 100644 +--- a/squashfs-tools/mksquashfs.c ++++ b/squashfs-tools/mksquashfs.c +@@ -137,6 +137,9 @@ unsigned int cache_bytes = 0, cache_size = 0, inode_count = 0; + /* inode lookup table */ + squashfs_inode *inode_lookup_table = NULL; + ++/* clamp all timestamps to SOURCE_DATE_EPOCH */ ++time_t content_clamp_time = -1; ++ + /* override filesystem creation time */ + time_t mkfs_fixed_time = -1; + +@@ -2246,6 +2249,8 @@ restat: + pathname_reader(dir_ent), strerror(errno)); + goto read_err; + } ++ if(content_clamp_time != -1 && buf2.st_mtime >= content_clamp_time) ++ buf2.st_mtime = content_clamp_time; + + if(read_size != buf2.st_size) { + close(file); +@@ -3101,7 +3106,7 @@ void dir_scan(squashfs_inode *inode, char *pathname, + buf.st_mode = S_IRWXU | S_IRWXG | S_IRWXO | S_IFDIR; + buf.st_uid = getuid(); + buf.st_gid = getgid(); +- buf.st_mtime = time(NULL); ++ buf.st_mtime = content_clamp_time != -1 ? content_clamp_time : time(NULL); + buf.st_dev = 0; + buf.st_ino = 0; + dir_ent->inode = lookup_inode2(&buf, PSEUDO_FILE_OTHER, 0); +@@ -3127,6 +3115,8 @@ void dir_scan(squashfs_inode *inode, char *pathname, + /* source directory has disappeared? */ + BAD_ERROR("Cannot stat source directory %s because %s\n", + pathname, strerror(errno)); ++ if(content_clamp_time != -1 && buf.st_mtime >= content_clamp_time) ++ buf.st_mtime = content_clamp_time; + dir_ent->inode = lookup_inode(&buf); + } + +@@ -3365,6 +3372,8 @@ struct dir_info *dir_scan1(char *filename, char *subpath, + free_dir_entry(dir_ent); + continue; + } ++ if(content_clamp_time != -1 && buf.st_mtime >= content_clamp_time) ++ buf.st_mtime = content_clamp_time; + + if((buf.st_mode & S_IFMT) != S_IFREG && + (buf.st_mode & S_IFMT) != S_IFDIR && +@@ -3544,7 +3553,7 @@ void dir_scan2(struct dir_info *dir, struct pseudo *pseudo) + buf.st_gid = pseudo_ent->dev->gid; + buf.st_rdev = makedev(pseudo_ent->dev->major, + pseudo_ent->dev->minor); +- buf.st_mtime = time(NULL); ++ buf.st_mtime = content_clamp_time != -1 ? content_clamp_time : time(NULL); + buf.st_ino = pseudo_ino ++; + + if(pseudo_ent->dev->type == 'd') { +@@ -5674,7 +5683,7 @@ printOptions: + "%lu but was found to be: %llu \n", ULONG_MAX, epoch); + EXIT_MKSQUASHFS(); + } +- mkfs_fixed_time = (time_t)epoch; ++ mkfs_fixed_time = content_clamp_time = (time_t)epoch; + } + + /* +-- +2.17.0 + diff --git a/pkgs/tools/filesystems/squashfs/0003-remove-frag-deflator-thread.patch b/pkgs/tools/filesystems/squashfs/0003-remove-frag-deflator-thread.patch new file mode 100644 index 000000000000..4be4b96369a8 --- /dev/null +++ b/pkgs/tools/filesystems/squashfs/0003-remove-frag-deflator-thread.patch @@ -0,0 +1,220 @@ +From afc0c76a170bd17cbd29bbec6ae6d2227e398570 Mon Sep 17 00:00:00 2001 +From: Alexander Couzens +Date: Fri, 13 Jan 2017 22:00:37 +0100 +Subject: [PATCH] remove frag_deflator_thread + +frag_deflator_thread compress fragments. +Replace the deflator_thread with a function and +use the function instead of the to_frag queue. +--- + squashfs-tools/info.c | 5 --- + squashfs-tools/mksquashfs.c | 76 +++++++++++++------------------------ + squashfs-tools/mksquashfs.h | 2 +- + squashfs-tools/restore.c | 15 +------- + 4 files changed, 30 insertions(+), 68 deletions(-) + +diff --git a/squashfs-tools/info.c b/squashfs-tools/info.c +index 7968c77..028d578 100644 +--- a/squashfs-tools/info.c ++++ b/squashfs-tools/info.c +@@ -96,11 +96,6 @@ void dump_state() + printf("compressed block queue (deflate thread(s) -> main thread)\n"); + dump_seq_queue(to_main, 0); + +- printf("uncompressed packed fragment queue (main thread -> fragment" +- " deflate thread(s))\n"); +- dump_queue(to_frag); +- +- + printf("locked frag queue (compressed frags waiting while multi-block" + " file is written)\n"); + dump_queue(locked_fragment); +diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c +index cf48e40..cacf14c 100644 +--- a/squashfs-tools/mksquashfs.c ++++ b/squashfs-tools/mksquashfs.c +@@ -270,10 +270,10 @@ unsigned int sid_count = 0, suid_count = 0, sguid_count = 0; + struct cache *reader_buffer, *fragment_buffer, *reserve_cache; + struct cache *bwriter_buffer, *fwriter_buffer; + struct queue *to_reader, *to_deflate, *to_writer, *from_writer, +- *to_frag, *locked_fragment, *to_process_frag; ++ *locked_fragment, *to_process_frag; + struct seq_queue *to_main; + pthread_t reader_thread, writer_thread, main_thread; +-pthread_t *deflator_thread, *frag_deflator_thread, *frag_thread; ++pthread_t *deflator_thread, *frag_thread; + pthread_t *restore_thread = NULL; + pthread_mutex_t fragment_mutex = PTHREAD_MUTEX_INITIALIZER; + pthread_mutex_t pos_mutex = PTHREAD_MUTEX_INITIALIZER; +@@ -323,7 +323,7 @@ struct dir_info *scan1_opendir(char *pathname, char *subpath, int depth); + void write_filesystem_tables(struct squashfs_super_block *sBlk, int nopad); + unsigned short get_checksum_mem(char *buff, int bytes); + void check_usable_phys_mem(int total_mem); +- ++void frag_deflator(struct file_buffer *file_buffer); + + void prep_exit() + { +@@ -1540,7 +1540,7 @@ void write_fragment(struct file_buffer *fragment) + pthread_mutex_lock(&fragment_mutex); + fragment_table[fragment->block].unused = 0; + fragments_outstanding ++; +- queue_put(to_frag, fragment); ++ frag_deflator(fragment); + pthread_cleanup_pop(1); + } + +@@ -2412,51 +2412,34 @@ void *deflator(void *arg) + } + + +-void *frag_deflator(void *arg) ++void frag_deflator(struct file_buffer *file_buffer) + { +- void *stream = NULL; +- int res; + +- res = compressor_init(comp, &stream, block_size, 1); +- if(res) +- BAD_ERROR("frag_deflator:: compressor_init failed\n"); +- +- pthread_cleanup_push((void *) pthread_mutex_unlock, &fragment_mutex); +- +- while(1) { +- int c_byte, compressed_size; +- struct file_buffer *file_buffer = queue_get(to_frag); +- struct file_buffer *write_buffer = ++ int c_byte, compressed_size; ++ struct file_buffer *write_buffer = + cache_get(fwriter_buffer, file_buffer->block); + +- c_byte = mangle2(stream, write_buffer->data, file_buffer->data, +- file_buffer->size, block_size, noF, 1); +- compressed_size = SQUASHFS_COMPRESSED_SIZE_BLOCK(c_byte); +- write_buffer->size = compressed_size; +- pthread_mutex_lock(&fragment_mutex); +- if(fragments_locked == FALSE) { +- fragment_table[file_buffer->block].size = c_byte; +- fragment_table[file_buffer->block].start_block = bytes; +- write_buffer->block = bytes; +- bytes += compressed_size; +- fragments_outstanding --; +- queue_put(to_writer, write_buffer); +- pthread_mutex_unlock(&fragment_mutex); +- TRACE("Writing fragment %lld, uncompressed size %d, " +- "compressed size %d\n", file_buffer->block, +- file_buffer->size, compressed_size); +- } else { +- add_pending_fragment(write_buffer, c_byte, +- file_buffer->block); +- pthread_mutex_unlock(&fragment_mutex); +- } +- cache_block_put(file_buffer); ++ c_byte = mangle2(stream, write_buffer->data, file_buffer->data, ++ file_buffer->size, block_size, noF, 1); ++ compressed_size = SQUASHFS_COMPRESSED_SIZE_BLOCK(c_byte); ++ write_buffer->size = compressed_size; ++ if(fragments_locked == FALSE) { ++ fragment_table[file_buffer->block].size = c_byte; ++ fragment_table[file_buffer->block].start_block = bytes; ++ write_buffer->block = bytes; ++ bytes += compressed_size; ++ fragments_outstanding --; ++ queue_put(to_writer, write_buffer); ++ TRACE("Writing fragment %lld, uncompressed size %d, " ++ "compressed size %d\n", file_buffer->block, ++ file_buffer->size, compressed_size); ++ } else { ++ add_pending_fragment(write_buffer, c_byte, ++ file_buffer->block); + } +- +- pthread_cleanup_pop(0); ++ cache_block_put(file_buffer); + } + +- + struct file_buffer *get_file_buffer() + { + struct file_buffer *file_buffer = seq_queue_get(to_main); +@@ -4257,19 +4240,17 @@ void initialise_threads(int readq, int fragq, int bwriteq, int fwriteq, + multiply_overflow(processors * 3, sizeof(pthread_t))) + BAD_ERROR("Processors too large\n"); + +- deflator_thread = malloc(processors * 3 * sizeof(pthread_t)); ++ deflator_thread = malloc(processors * 2 * sizeof(pthread_t)); + if(deflator_thread == NULL) + MEM_ERROR(); + +- frag_deflator_thread = &deflator_thread[processors]; +- frag_thread = &frag_deflator_thread[processors]; ++ frag_thread = &deflator_thread[processors]; + + to_reader = queue_init(1); + to_deflate = queue_init(reader_size); + to_process_frag = queue_init(reader_size); + to_writer = queue_init(bwriter_size + fwriter_size); + from_writer = queue_init(1); +- to_frag = queue_init(fragment_size); + locked_fragment = queue_init(fragment_size); + to_main = seq_queue_init(); + reader_buffer = cache_init(block_size, reader_size, 0, 0); +@@ -4285,9 +4266,6 @@ void initialise_threads(int readq, int fragq, int bwriteq, int fwriteq, + for(i = 0; i < processors; i++) { + if(pthread_create(&deflator_thread[i], NULL, deflator, NULL)) + BAD_ERROR("Failed to create thread\n"); +- if(pthread_create(&frag_deflator_thread[i], NULL, frag_deflator, +- NULL) != 0) +- BAD_ERROR("Failed to create thread\n"); + if(pthread_create(&frag_thread[i], NULL, frag_thrd, + (void *) destination_file) != 0) + BAD_ERROR("Failed to create thread\n"); +diff --git a/squashfs-tools/mksquashfs.h b/squashfs-tools/mksquashfs.h +index 55708a3..dc5bde4 100644 +--- a/squashfs-tools/mksquashfs.h ++++ b/squashfs-tools/mksquashfs.h +@@ -135,7 +135,7 @@ struct append_file { + extern struct cache *reader_buffer, *fragment_buffer, *reserve_cache; + struct cache *bwriter_buffer, *fwriter_buffer; + extern struct queue *to_reader, *to_deflate, *to_writer, *from_writer, +- *to_frag, *locked_fragment, *to_process_frag; ++ *locked_fragment, *to_process_frag; + extern struct append_file **file_mapping; + extern struct seq_queue *to_main; + extern pthread_mutex_t fragment_mutex, dup_mutex; +diff --git a/squashfs-tools/restore.c b/squashfs-tools/restore.c +index 5e336b3..a7aaf2e 100644 +--- a/squashfs-tools/restore.c ++++ b/squashfs-tools/restore.c +@@ -47,8 +47,8 @@ + #define TRUE 1 + + extern pthread_t reader_thread, writer_thread, main_thread; +-extern pthread_t *deflator_thread, *frag_deflator_thread, *frag_thread; +-extern struct queue *to_deflate, *to_writer, *to_frag, *to_process_frag; ++extern pthread_t *deflator_thread, *frag_thread; ++extern struct queue *to_deflate, *to_writer, *to_process_frag; + extern struct seq_queue *to_main; + extern void restorefs(); + extern int processors; +@@ -120,17 +120,6 @@ void *restore_thrd(void *arg) + pthread_cancel(main_thread); + pthread_join(main_thread, NULL); + +- /* then flush the main thread to fragment deflator thread(s) +- * queue. The fragment deflator thread(s) will idle +- */ +- queue_flush(to_frag); +- +- /* now kill the fragment deflator thread(s) */ +- for(i = 0; i < processors; i++) +- pthread_cancel(frag_deflator_thread[i]); +- for(i = 0; i < processors; i++) +- pthread_join(frag_deflator_thread[i], NULL); +- + /* + * then flush the main thread/fragment deflator thread(s) + * to writer thread queue. The writer thread will idle +-- +2.17.0 + diff --git a/pkgs/tools/filesystems/squashfs/default.nix b/pkgs/tools/filesystems/squashfs/default.nix index a2fc5bc3d40b..a7f4e85eb34f 100644 --- a/pkgs/tools/filesystems/squashfs/default.nix +++ b/pkgs/tools/filesystems/squashfs/default.nix @@ -15,6 +15,15 @@ stdenv.mkDerivation rec { rev = "9c1db6d13a51a2e009f0027ef336ce03624eac0d"; }; + # These patches ensures that mksquashfs output is reproducible. + # See also https://reproducible-builds.org/docs/system-images/ + # and https://github.com/NixOS/nixpkgs/issues/40144. + patches = [ + ./0001-If-SOURCE_DATE_EPOCH-is-set-override-timestamps-with.patch + ./0002-If-SOURCE_DATE_EPOCH-is-set-also-clamp-content-times.patch + ./0003-remove-frag-deflator-thread.patch + ]; + buildInputs = [ zlib xz ] ++ stdenv.lib.optional lz4Support lz4; @@ -29,5 +38,7 @@ stdenv.mkDerivation rec { homepage = http://squashfs.sourceforge.net/; description = "Tool for creating and unpacking squashfs filesystems"; platforms = stdenv.lib.platforms.linux; + license = stdenv.lib.licenses.gpl2Plus; + maintainers = with stdenv.lib.maintainers; [ ruuda ]; }; } diff --git a/pkgs/tools/misc/cloud-sql-proxy/default.nix b/pkgs/tools/misc/cloud-sql-proxy/default.nix new file mode 100644 index 000000000000..5059b395610d --- /dev/null +++ b/pkgs/tools/misc/cloud-sql-proxy/default.nix @@ -0,0 +1,28 @@ +{ stdenv, buildGoPackage, fetchgit }: + +buildGoPackage rec { + name = "cloud-sql-proxy-${version}"; + version = "1.11"; + + goPackagePath = "github.com/GoogleCloudPlatform/cloudsql-proxy"; + + subPackages = [ "cmd/cloud_sql_proxy" ]; + + src = fetchgit { + rev = version; + url = "https://${goPackagePath}"; + sha256 = "13g68i51f03xdh7a1qjmj8j5ljn4drd3n44fn348xfdxqclnx90l"; + }; + + goDeps = ./deps.nix; + + buildFlagsArray = [ "-ldflags=" "-X main.versionString=${version}" ]; + + meta = with stdenv.lib; { + description = "An authenticating proxy for Second Generation Google Cloud SQL databases"; + homepage = https://github.com/GoogleCloudPlatform/cloudsql-proxy; + license = licenses.asl20; + maintainers = [ maintainers.nicknovitski ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/tools/misc/cloud-sql-proxy/deps.nix b/pkgs/tools/misc/cloud-sql-proxy/deps.nix new file mode 100644 index 000000000000..7021b4b05b23 --- /dev/null +++ b/pkgs/tools/misc/cloud-sql-proxy/deps.nix @@ -0,0 +1,48 @@ +# This file was generated by https://github.com/kamilchm/go2nix v1.2.1 +[ + { + goPackagePath = "bazil.org/fuse"; + fetch = { + type = "git"; + url = "https://github.com/bazil/fuse"; + rev = "65cc252bf6691cb3c7014bcb2c8dc29de91e3a7e"; + sha256 = "0qjm9yrhc5h632wwhklqzhalid4lxcm9iwsqs3jahp303rm27vpk"; + }; + } + { + goPackagePath = "cloud.google.com/go"; + fetch = { + type = "git"; + url = "https://code.googlesource.com/gocloud"; + rev = "e9284bade4f43071dac5ec56c73a03a3c9fa7772"; + sha256 = "0qm0s97bj21m04a07yni09hdh0aycgmklm5mg6flx17lrp2av9j8"; + }; + } + { + goPackagePath = "golang.org/x/net"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/net"; + rev = "3a7846fea0afe8cc88deb31d8cfb1fa15a3615ef"; + sha256 = "1dxvliqc79bl0waczzy8ajm7jpbnn2bszwfcd71zjjxph8jz75kg"; + }; + } + { + goPackagePath = "golang.org/x/oauth2"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/oauth2"; + rev = "cdc340f7c179dbbfa4afd43b7614e8fcadde4269"; + sha256 = "182is558nfvk4x1cm8sqzaym8kfcaaxaga9ggqhvzqrs8mncbj22"; + }; + } + { + goPackagePath = "google.golang.org/api"; + fetch = { + type = "git"; + url = "https://code.googlesource.com/google-api-go-client"; + rev = "20530fd5d65ad2caee87891f9896d7547cb400c9"; + sha256 = "06fsnml2kfzifxp2d5anb6vxjlgpkwl82xcddf0cg0v1bnx5mnrd"; + }; + } +] diff --git a/pkgs/tools/package-management/nix-pin/default.nix b/pkgs/tools/package-management/nix-pin/default.nix index 6f109cd9f413..893429537050 100644 --- a/pkgs/tools/package-management/nix-pin/default.nix +++ b/pkgs/tools/package-management/nix-pin/default.nix @@ -1,15 +1,15 @@ { lib, pkgs, stdenv, fetchFromGitHub, mypy, python3, nix, git, makeWrapper }: let self = stdenv.mkDerivation rec { name = "nix-pin-${version}"; - version = "0.3.0"; + version = "0.3.1"; src = fetchFromGitHub { owner = "timbertson"; repo = "nix-pin"; - rev = "version-0.3.0"; - sha256 = "1kq50v8m8y1wji63b7y3wh6nv3ahvdxvvbsb07day2zzf5ysy8kj"; + rev = "version-0.3.1"; + sha256 = "1sldbrz33wz30d3vv3d2clyqyd6x1y6h6xjz1xv55fa97ig1h481"; }; buildInputs = [ python3 mypy makeWrapper ]; - buildPhase = '' + checkPhase = '' mypy bin/* ''; installPhase = '' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 71ef037ab9dd..9d381af0af91 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -611,6 +611,8 @@ with pkgs; bonfire = callPackage ../tools/misc/bonfire { }; + cloud-sql-proxy = callPackage ../tools/misc/cloud-sql-proxy { }; + container-linux-config-transpiler = callPackage ../development/tools/container-linux-config-transpiler { }; cconv = callPackage ../tools/text/cconv { }; @@ -3053,6 +3055,8 @@ with pkgs; innoextract = callPackage ../tools/archivers/innoextract { }; + input-utils = callPackage ../os-specific/linux/input-utils { }; + intecture-agent = callPackage ../tools/admin/intecture/agent.nix { }; intecture-auth = callPackage ../tools/admin/intecture/auth.nix { }; @@ -11501,6 +11505,8 @@ with pkgs; simp_le = callPackage ../tools/admin/simp_le { }; + simpleitk = callPackage ../development/libraries/simpleitk { lua = lua51Packages.lua; }; + sfml = callPackage ../development/libraries/sfml { }; csfml = callPackage ../development/libraries/csfml { }; diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index 3278311f25c0..22733443ed19 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -450,20 +450,6 @@ let self = _self // overrides; _self = with self; { }; }; - ListCompare = buildPerlPackage rec { - name = "List-Compare-0.53"; - src = fetchurl { - url = "mirror://cpan/authors/id/J/JK/JKEENAN/${name}.tar.gz"; - sha256 = "fdbf4ff67b3135d44475fef7fcac0cd4706407d5720d26dca914860eb10f8550"; - }; - buildInputs = [ IOCaptureOutput ]; - meta = { - homepage = http://thenceforward.net/perl/modules/List-Compare/; - description = "Compare elements of two or more lists"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; - }; - }; - ArchiveCpio = buildPerlPackage rec { name = "Archive-Cpio-0.10"; src = fetchurl { @@ -8524,6 +8510,21 @@ let self = _self // overrides; _self = with self; { doCheck = false; }; + LinuxACL = buildPerlPackage rec { + name = "Linux-ACL-0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/N/NA/NAZAROV/${name}.tar.gz"; + sha256 = "312940c1f60f47c4fc93fa0a9d2a626425faa837040c8c2f1ad58ee09f62f371"; + }; + buildInputs = [ pkgs.acl ]; + NIX_CFLAGS_LINK = "-L${pkgs.acl.out}/lib -lacl"; + meta = { + maintainers = [ maintainers.limeytexan ]; + description = "Perl extension for reading and setting Access Control Lists for files by libacl linux library"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + LinuxDistribution = buildPerlModule { name = "Linux-Distribution-0.23"; src = fetchurl { @@ -8571,6 +8572,20 @@ let self = _self // overrides; _self = with self; { }; }; + ListCompare = buildPerlPackage rec { + name = "List-Compare-0.53"; + src = fetchurl { + url = "mirror://cpan/authors/id/J/JK/JKEENAN/${name}.tar.gz"; + sha256 = "fdbf4ff67b3135d44475fef7fcac0cd4706407d5720d26dca914860eb10f8550"; + }; + buildInputs = [ IOCaptureOutput ]; + meta = { + homepage = http://thenceforward.net/perl/modules/List-Compare/; + description = "Compare elements of two or more lists"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + ListMoreUtils = buildPerlPackage rec { name = "List-MoreUtils-0.428"; src = fetchurl { @@ -11758,6 +11773,22 @@ let self = _self // overrides; _self = with self; { }; }; + NetZooKeeper = buildPerlPackage rec { + name = "Net-ZooKeeper-0.41"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MA/MAF/${name}.tar.gz"; + sha256 = "91c177f30f82302eaf3173356eef05c21bc82163df752acb469177bd14a72db9"; + }; + buildInputs = [ pkgs.zookeeper_mt ]; + NIX_CFLAGS_COMPILE = "-I${pkgs.zookeeper_mt}/include"; + NIX_CFLAGS_LINK = "-L${pkgs.zookeeper_mt.out}/lib -lzookeeper_mt"; + meta = { + maintainers = [ maintainers.limeytexan ]; + homepage = https://github.com/mark-5/p5-net-zookeeper; + license = stdenv.lib.licenses.asl20; + }; + }; + PackageConstants = buildPerlPackage { name = "Package-Constants-0.06"; src = fetchurl {