diff options
86 files changed, 1431 insertions, 595 deletions
diff --git a/.github/ISSUE_TEMPLATE/security.md b/.github/ISSUE_TEMPLATE/security.md deleted file mode 100644 index 59e7b64cc669b..0000000000000 --- a/.github/ISSUE_TEMPLATE/security.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -name: Security report -about: Report security issues -title: '' -labels: '1.severity: security' -assignees: '' - ---- - -To privately report a security issue with NixOS, Nix, and its ecosystem, -please email a member of the NixOS Security Team and we will ensure the issue -is handled. Our responses will be signed with our GPG keys: -https://nixos.org/nixos/security.html - -**Report** - -CVE: - -**Metadata** - -Maintainer information: -```yaml -# a list of nixpkgs attributes affected by the problem -attribute: -# a list of nixos modules affected by the problem -module: -``` diff --git a/lib/systems/doubles.nix b/lib/systems/doubles.nix index f096a0b17fc63..823f6a915d6e7 100644 --- a/lib/systems/doubles.nix +++ b/lib/systems/doubles.nix @@ -26,7 +26,7 @@ let "riscv32-linux" "riscv64-linux" - "aarch64-none" "avr-none" "arm-none" "i686-none" "x86_64-none" "powerpc-none" "msp430-none" + "aarch64-none" "avr-none" "arm-none" "i686-none" "x86_64-none" "powerpc-none" "msp430-none" "riscv64-none" "riscv32-none" ]; allParsed = map parse.mkSystemFromString all; diff --git a/lib/systems/examples.nix b/lib/systems/examples.nix index d17af9fcc1488..aa55438de082e 100644 --- a/lib/systems/examples.nix +++ b/lib/systems/examples.nix @@ -97,6 +97,18 @@ rec { riscv64 = riscv "64"; riscv32 = riscv "32"; + riscv64-embedded = { + config = "riscv64-none-elf"; + libc = "newlib"; + platform = platforms.riscv-multiplatform "64"; + }; + + riscv32-embedded = { + config = "riscv32-none-elf"; + libc = "newlib"; + platform = platforms.riscv-multiplatform "32"; + }; + msp430 = { config = "msp430-elf"; libc = "newlib"; diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 5e9c4c5c11678..ee279d0429a79 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -5001,6 +5001,15 @@ github = "sternenseemann"; name = "Lukas Epple"; }; + steshaw = { + name = "Steven Shaw"; + email = "steven@steshaw.org"; + github = "steshaw"; + keys = [{ + longkeyid = "rsa4096/0x1D9A17DFD23DCB91"; + fingerprint = "0AFE 77F7 474D 1596 EE55 7A29 1D9A 17DF D23D CB91"; + }]; + }; stesie = { email = "stesie@brokenpipe.de"; github = "stesie"; @@ -5926,4 +5935,9 @@ github = "mattmelling"; name = "Matt Melling"; }; + wd15 = { + email = "daniel.wheeler2@gmail.com"; + github = "wd15"; + name = "Daniel Wheeler"; + }; } diff --git a/nixos/doc/manual/configuration/x-windows.xml b/nixos/doc/manual/configuration/x-windows.xml index 798d1fbdfd857..7cdc5196e0d2e 100644 --- a/nixos/doc/manual/configuration/x-windows.xml +++ b/nixos/doc/manual/configuration/x-windows.xml @@ -125,10 +125,12 @@ You will need to reboot after enabling this driver to prevent a clash with other kernel modules. </para> + <note> <para> - Note: for recent AMD GPUs you most likely want to keep either the defaults + For recent AMD GPUs you most likely want to keep either the defaults or <literal>"amdgpu"</literal> (both free). </para> + </note> </simplesect> <simplesect xml:id="sec-x11-touchpads"> <title>Touchpads</title> @@ -157,4 +159,134 @@ versions. </para> </simplesect> + <simplesect xml:id="custom-xkb-layouts"> + <title>Custom XKB layouts</title> + <para> + It is possible to install custom + <link xlink:href="https://en.wikipedia.org/wiki/X_keyboard_extension"> + XKB + </link> + keyboard layouts using the option + <option> + <link linkend="opt-services.xserver.extraLayouts"> + services.xserver.extraLayouts + </link> + </option>. + As a first example, we are going to create a layout based on the basic US + layout, with an additional layer to type some greek symbols by pressing the + right-alt key. + </para> + <para> + To do this we are going to create a <literal>us-greek</literal> file + with a <literal>xkb_symbols</literal> section. + </para> +<programlisting> +xkb_symbols "us-greek" +{ + include "us(basic)" // includes the base US keys + include "level3(ralt_switch)" // configures right alt as a third level switch + + key <LatA> { [ a, A, Greek_alpha ] }; + key <LatB> { [ b, B, Greek_beta ] }; + key <LatG> { [ g, G, Greek_gamma ] }; + key <LatD> { [ d, D, Greek_delta ] }; + key <LatZ> { [ z, Z, Greek_zeta ] }; +}; +</programlisting> + <para> + To install the layout, the filepath, a description and the list of + languages must be given: + </para> +<programlisting> +<xref linkend="opt-services.xserver.extraLayouts"/>.us-greek = { + description = "US layout with alt-gr greek"; + languages = [ "eng" ]; + symbolsFile = /path/to/us-greek; +} +</programlisting> + <note> + <para> + The name should match the one given to the + <literal>xkb_symbols</literal> block. + </para> + </note> + <para> + The layout should now be installed and ready to use: try it by + running <literal>setxkbmap us-greek</literal> and type + <literal><alt>+a</literal>. To change the default the usual + <option> + <link linkend="opt-services.xserver.layout"> + services.xserver.layout + </link> + </option> + option can still be used. + </para> + <para> + A layout can have several other components besides + <literal>xkb_symbols</literal>, for example we will define new + keycodes for some multimedia key and bind these to some symbol. + </para> + <para> + Use the <emphasis>xev</emphasis> utility from + <literal>pkgs.xorg.xev</literal> to find the codes of the keys of + interest, then create a <literal>media-key</literal> file to hold + the keycodes definitions + </para> +<programlisting> +xkb_keycodes "media" +{ + <volUp> = 123; + <volDown> = 456; +} +</programlisting> + <para> + Now use the newly define keycodes in <literal>media-sym</literal>: + </para> +<programlisting> +xkb_symbols "media" +{ + key.type = "ONE_LEVEL"; + key <volUp> { [ XF86AudioLowerVolume ] }; + key <volDown> { [ XF86AudioRaiseVolume ] }; +} +</programlisting> + <para> + As before, to install the layout do + </para> +<programlisting> +<xref linkend="opt-services.xserver.extraLayouts"/>.media = { + description = "Multimedia keys remapping"; + languages = [ "eng" ]; + symbolsFile = /path/to/media-key; + keycodesFile = /path/to/media-sym; +}; +</programlisting> + <note> + <para> + The function <literal>pkgs.writeText <filename> <content> + </literal> can be useful if you prefer to keep the layout definitions + inside the NixOS configuration. + </para> + </note> + <para> + Unfortunately, the Xorg server does not (currently) support setting a + keymap directly but relies instead on XKB rules to select the matching + components (keycodes, types, ...) of a layout. This means that components + other than symbols won't be loaded by default. As a workaround, you + can set the keymap using <literal>setxkbmap</literal> at the start of the + session with: + </para> +<programlisting> +<xref linkend="opt-services.xserver.displayManager.sessionCommands"/> = "setxkbmap -keycodes media"; +</programlisting> + <para> + To learn how to write layouts take a look at the XKB + <link xlink:href="https://www.x.org/releases/current/doc/xorg-docs/input/XKB-Enhancing.html#Defining_New_Layouts"> + documentation + </link>. More example layouts can also be found + <link xlink:href="https://wiki.archlinux.org/index.php/X_KeyBoard_extension#Basic_examples"> + here + </link>. + </para> +</simplesect> </chapter> diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 8d63a03dd0577..8c6bc47df2518 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -815,6 +815,7 @@ ./services/web-servers/uwsgi.nix ./services/web-servers/varnish/default.nix ./services/web-servers/zope2.nix + ./services/x11/extra-layouts.nix ./services/x11/colord.nix ./services/x11/compton.nix ./services/x11/unclutter.nix diff --git a/nixos/modules/services/monitoring/zabbix-proxy.nix b/nixos/modules/services/monitoring/zabbix-proxy.nix index c1a45fba4af38..9cfcd1697c111 100644 --- a/nixos/modules/services/monitoring/zabbix-proxy.nix +++ b/nixos/modules/services/monitoring/zabbix-proxy.nix @@ -23,6 +23,7 @@ let LogType = console ListenIP = ${cfg.listen.ip} ListenPort = ${toString cfg.listen.port} + Server = ${cfg.server} # TODO: set to cfg.database.socket if database type is pgsql? DBHost = ${optionalString (cfg.database.createLocally != true) cfg.database.host} ${optionalString (cfg.database.createLocally != true) "DBPort = ${cfg.database.port}"} @@ -50,6 +51,13 @@ in services.zabbixProxy = { enable = mkEnableOption "the Zabbix Proxy"; + server = mkOption { + type = types.str; + description = '' + The IP address or hostname of the Zabbix server to connect to. + ''; + }; + package = mkOption { type = types.package; default = diff --git a/nixos/modules/services/x11/extra-layouts.nix b/nixos/modules/services/x11/extra-layouts.nix new file mode 100644 index 0000000000000..5523dd2bf0235 --- /dev/null +++ b/nixos/modules/services/x11/extra-layouts.nix @@ -0,0 +1,165 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + layouts = config.services.xserver.extraLayouts; + + layoutOpts = { + options = { + description = mkOption { + type = types.str; + description = "A short description of the layout."; + }; + + languages = mkOption { + type = types.listOf types.str; + description = + '' + A list of languages provided by the layout. + (Use ISO 639-2 codes, for example: "eng" for english) + ''; + }; + + compatFile = mkOption { + type = types.nullOr types.path; + default = null; + description = '' + The path to the xkb compat file. + This file sets the compatibility state, used to preserve + compatibility with xkb-unaware programs. + It must contain a <literal>xkb_compat "name" { ... }</literal> block. + ''; + }; + + geometryFile = mkOption { + type = types.nullOr types.path; + default = null; + description = '' + The path to the xkb geometry file. + This (completely optional) file describes the physical layout of + keyboard, which maybe be used by programs to depict it. + It must contain a <literal>xkb_geometry "name" { ... }</literal> block. + ''; + }; + + keycodesFile = mkOption { + type = types.nullOr types.path; + default = null; + description = '' + The path to the xkb keycodes file. + This file specifies the range and the interpretation of the raw + keycodes sent by the keyboard. + It must contain a <literal>xkb_keycodes "name" { ... }</literal> block. + ''; + }; + + symbolsFile = mkOption { + type = types.nullOr types.path; + default = null; + description = '' + The path to the xkb symbols file. + This is the most important file: it defines which symbol or action + maps to each key and must contain a + <literal>xkb_symbols "name" { ... }</literal> block. + ''; + }; + + typesFile = mkOption { + type = types.nullOr types.path; + default = null; + description = '' + The path to the xkb types file. + This file specifies the key types that can be associated with + the various keyboard keys. + It must contain a <literal>xkb_types "name" { ... }</literal> block. + ''; + }; + + }; + }; + +in + +{ + + ###### interface + + options.services.xserver = { + extraLayouts = mkOption { + type = types.attrsOf (types.submodule layoutOpts); + default = {}; + example = literalExample + '' + { + mine = { + description = "My custom xkb layout."; + languages = [ "eng" ]; + symbolsFile = /path/to/my/layout; + }; + } + ''; + description = '' + Extra custom layouts that will be included in the xkb configuration. + Information on how to create a new layout can be found here: + <link xlink:href="https://www.x.org/releases/current/doc/xorg-docs/input/XKB-Enhancing.html#Defining_New_Layouts"></link>. + For more examples see + <link xlink:href="https://wiki.archlinux.org/index.php/X_KeyBoard_extension#Basic_examples"></link> + ''; + }; + + }; + + ###### implementation + + config = mkIf (layouts != { }) { + + # We don't override xkeyboard_config directly to + # reduce the amount of packages to be recompiled. + # Only the following packages are necessary to set + # a custom layout anyway: + nixpkgs.overlays = lib.singleton (self: super: { + + xkb_patched = self.xorg.xkeyboardconfig_custom { + layouts = config.services.xserver.extraLayouts; + }; + + xorg = super.xorg // { + xorgserver = super.xorg.xorgserver.overrideAttrs (old: { + configureFlags = old.configureFlags ++ [ + "--with-xkb-bin-directory=${self.xorg.xkbcomp}/bin" + "--with-xkb-path=${self.xkb_patched}/share/X11/xkb" + ]; + }); + + setxkbmap = super.xorg.setxkbmap.overrideAttrs (old: { + postInstall = + '' + mkdir -p $out/share + ln -sfn ${self.xkb_patched}/etc/X11 $out/share/X11 + ''; + }); + + xkbcomp = super.xorg.xkbcomp.overrideAttrs (old: { + configureFlags = "--with-xkb-config-root=${self.xkb_patched}/share/X11/xkb"; + }); + + }; + + ckbcomp = super.ckbcomp.override { + xkeyboard_config = self.xkb_patched; + }; + + xkbvalidate = super.xkbvalidate.override { + libxkbcommon = self.libxkbcommon.override { + xkeyboard_config = self.xkb_patched; + }; + }; + + }); + + services.xserver.xkbDir = "${pkgs.xkb_patched}/etc/X11/xkb"; + + }; + +} diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix index f7f07bad95223..ac06b6caee30c 100644 --- a/nixos/modules/tasks/filesystems/zfs.nix +++ b/nixos/modules/tasks/filesystems/zfs.nix @@ -1,8 +1,6 @@ { config, lib, pkgs, utils, ... }: # -# todo: -# - crontab for scrubs, etc -# - zfs tunables +# TODO: zfs tunables with utils; with lib; @@ -13,6 +11,7 @@ let cfgSnapshots = config.services.zfs.autoSnapshot; cfgSnapFlags = cfgSnapshots.flags; cfgScrub = config.services.zfs.autoScrub; + cfgTrim = config.services.zfs.trim; inInitrd = any (fs: fs == "zfs") config.boot.initrd.supportedFilesystems; inSystem = any (fs: fs == "zfs") config.boot.supportedFilesystems; @@ -268,14 +267,26 @@ in }; }; - services.zfs.autoScrub = { - enable = mkOption { - default = false; - type = types.bool; + services.zfs.trim = { + enable = mkEnableOption "Enables periodic TRIM on all ZFS pools."; + + interval = mkOption { + default = "weekly"; + type = types.str; + example = "daily"; description = '' - Enables periodic scrubbing of ZFS pools. + How often we run trim. For most desktop and server systems + a sufficient trimming frequency is once a week. + + The format is described in + <citerefentry><refentrytitle>systemd.time</refentrytitle> + <manvolnum>7</manvolnum></citerefentry>. ''; }; + }; + + services.zfs.autoScrub = { + enable = mkEnableOption "Enables periodic scrubbing of ZFS pools."; interval = mkOption { default = "Sun, 02:00"; @@ -535,5 +546,17 @@ in }; }; }) + + (mkIf cfgTrim.enable { + systemd.services.zpool-trim = { + description = "ZFS pools trim"; + after = [ "zfs-import.target" ]; + path = [ packages.zfsUser ]; + startAt = cfgTrim.interval; + script = '' + zpool list -H -o name | xargs -n1 zpool trim + ''; + }; + }) ]; } diff --git a/pkgs/applications/audio/ladspa-sdk/default.nix b/pkgs/applications/audio/ladspa-sdk/default.nix index 296a4f86a8481..72bb7010b6275 100644 --- a/pkgs/applications/audio/ladspa-sdk/default.nix +++ b/pkgs/applications/audio/ladspa-sdk/default.nix @@ -1,16 +1,16 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { name = "ladspa-sdk-${version}"; - version = "1.13"; + version = "1.15"; src = fetchurl { url = "https://www.ladspa.org/download/ladspa_sdk_${version}.tgz"; - sha256 = "0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm"; + sha256 = "1vgx54cgsnc3ncl9qbgjbmq12c444xjafjkgr348h36j16draaa2"; }; patchPhase = '' cd src - sed -i 's@/usr/@$(out)/@g' makefile - sed -i 's@-mkdirhier@mkdir -p@g' makefile + sed -i 's@/usr/@$(out)/@g' Makefile + sed -i 's@-mkdirhier@mkdir -p@g' Makefile ''; meta = { diff --git a/pkgs/applications/audio/ladspa-sdk/ladspah.nix b/pkgs/applications/audio/ladspa-sdk/ladspah.nix index 01acc0d01f7ec..b57b7283b8505 100644 --- a/pkgs/applications/audio/ladspa-sdk/ladspah.nix +++ b/pkgs/applications/audio/ladspa-sdk/ladspah.nix @@ -1,10 +1,10 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { name = "ladspa.h-${version}"; - version = "1.13"; + version = "1.15"; src = fetchurl { url = "https://www.ladspa.org/download/ladspa_sdk_${version}.tgz"; - sha256 = "0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm"; + sha256 = "1vgx54cgsnc3ncl9qbgjbmq12c444xjafjkgr348h36j16draaa2"; }; installPhase = '' diff --git a/pkgs/applications/audio/synthv1/default.nix b/pkgs/applications/audio/synthv1/default.nix index 837a08fa331dc..d28329b011710 100644 --- a/pkgs/applications/audio/synthv1/default.nix +++ b/pkgs/applications/audio/synthv1/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "synthv1-${version}"; - version = "0.9.8"; + version = "0.9.9"; src = fetchurl { url = "mirror://sourceforge/synthv1/${name}.tar.gz"; - sha256 = "15kabmxp38wqvavs5hr1dqasjjf1j977kzqggxfmzyi3y5fan3hj"; + sha256 = "0cvamqzg74qfr7kzk3skimskmv0j3d1rmmpbpsmfcrg8srvyx9r2"; }; buildInputs = [ qt5.qtbase qt5.qttools libjack2 alsaLib liblo lv2 ]; diff --git a/pkgs/applications/audio/wolf-shaper/default.nix b/pkgs/applications/audio/wolf-shaper/default.nix index 562fdc1be8b64..735e4eb632c2f 100644 --- a/pkgs/applications/audio/wolf-shaper/default.nix +++ b/pkgs/applications/audio/wolf-shaper/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "wolf-shaper-${version}"; - version = "0.1.6"; + version = "0.1.7"; src = fetchFromGitHub { owner = "pdesaulniers"; repo = "wolf-shaper"; rev = "v${version}"; - sha256 = "01h5dm1nrr0i54ancwznr7wn4vpw08dw0b69v3axy32r5j7plw6s"; + sha256 = "0lllgcbnnh1m95bp29hh17x170hl7170zizjrvy892qfkn36830d"; fetchSubmodules = true; }; diff --git a/pkgs/applications/misc/cool-retro-term/default.nix b/pkgs/applications/misc/cool-retro-term/default.nix index f2372aa51e68b..bd49323b03f14 100644 --- a/pkgs/applications/misc/cool-retro-term/default.nix +++ b/pkgs/applications/misc/cool-retro-term/default.nix @@ -1,7 +1,7 @@ -{ stdenv, fetchFromGitHub, qtbase, qtquick1, qmltermwidget +{ stdenv, fetchFromGitHub, mkDerivation, qtbase, qtquick1, qmltermwidget , qtquickcontrols, qtgraphicaleffects, qmake }: -stdenv.mkDerivation rec { +mkDerivation rec { version = "1.1.1"; name = "cool-retro-term-${version}"; diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix index 77a25f2755f0c..3e1a87a641b42 100644 --- a/pkgs/applications/misc/dbeaver/default.nix +++ b/pkgs/applications/misc/dbeaver/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation rec { name = "dbeaver-ce-${version}"; - version = "6.1.0"; + version = "6.1.3"; desktopItem = makeDesktopItem { name = "dbeaver"; @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz"; - sha256 = "0ngfv5pcj8hs7zcddwk0jw0l7hnm768wp76yrfyk38wkijk9f412"; + sha256 = "1ngfypx0wbq98rv791zls07h46rnj69qixpslw0xn9bb3ky4snbf"; }; installPhase = '' diff --git a/pkgs/applications/misc/hubstaff/revision.json b/pkgs/applications/misc/hubstaff/revision.json index f39860fac5834..513e5bef442a3 100644 --- a/pkgs/applications/misc/hubstaff/revision.json +++ b/pkgs/applications/misc/hubstaff/revision.json @@ -1,5 +1,5 @@ { - "url": "https://hubstaff-production.s3.amazonaws.com/downloads/HubstaffClient/Builds/Release/1.4.6-4aba8ab5/Hubstaff-1.4.6-4aba8ab5.sh", - "version": "1.4.6-4aba8ab5", - "sha256": "14js4d7wazn5r5p9n3iic9kwqrinm079jj1k7r00v684jrgq62fc" + "url": "https://hubstaff-production.s3.amazonaws.com/downloads/HubstaffClient/Builds/Release/1.4.9-86828309/Hubstaff-1.4.9-86828309.sh", + "version": "1.4.9-86828309", + "sha256": "0p9b7s2damzxmbrm8m97bj06g0faslbjw51dmxq8icz6ldbqsspx" } diff --git a/pkgs/applications/misc/termdown/default.nix b/pkgs/applications/misc/termdown/default.nix index dc23443489ffb..7edb8dd5d1ef5 100644 --- a/pkgs/applications/misc/termdown/default.nix +++ b/pkgs/applications/misc/termdown/default.nix @@ -6,11 +6,11 @@ with stdenv.lib; buildPythonApplication rec { name = "termdown-${version}"; - version = "1.15.0"; + version = "1.16.0"; src = fetchFromGitHub { rev = version; - sha256 = "08l03yk5jc1g0gps789q1s2knnaqzlidy4s5q5nhwg9g25la19nr"; + sha256 = "0k429ss1xifm9vbgyzpp71r79byn9jclvr0rm77bai2r8nz3s2vf"; repo = "termdown"; owner = "trehn"; }; diff --git a/pkgs/applications/misc/web-media-controller/default.nix b/pkgs/applications/misc/web-media-controller/default.nix new file mode 100644 index 0000000000000..6ed2ff10aaa77 --- /dev/null +++ b/pkgs/applications/misc/web-media-controller/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchFromGitHub, cmake, pkgconfig, glib, pcre, json-glib }: + +stdenv.mkDerivation rec { + pname = "wmc-mpris"; + version = "unstable-2019-07-24"; + + src = fetchFromGitHub { + owner = "f1u77y"; + repo = pname; + rev = "3b92847c576662732984ad791d6c7899a39f7787"; + sha256 = "0q19z0zx53pd237x529rif21kliklwzjrdddx8jfr9hgghjv9giq"; + }; + + nativeBuildInputs = [ cmake pkgconfig ]; + buildInputs = [ glib pcre json-glib ]; + cmakeFlags = [ + "-DCHROMIUM_MANIFEST_DESTINATION=${placeholder ''out''}/etc/chromium/native-messaging-hosts" + "-DCHROME_MANIFEST_DESTINATION=${placeholder ''out''}/etc/opt/chrome/native-messaging-hosts" + "-DFIREFOX_MANIFEST_DESTINATION=${placeholder ''out''}/lib/mozilla/native-messaging-hosts" + ]; + + meta = with stdenv.lib; { + homepage = "https://github.com/f1u77y/wmc-mpris"; + description = "MPRIS proxy for usage with 'Web Media Controller' web extension"; + license = licenses.unlicense; + maintainers = with maintainers; [ doronbehar ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/applications/networking/cluster/fluxctl/default.nix b/pkgs/applications/networking/cluster/fluxctl/default.nix new file mode 100644 index 0000000000000..29ec50ce36241 --- /dev/null +++ b/pkgs/applications/networking/cluster/fluxctl/default.nix @@ -0,0 +1,24 @@ +{ stdenv, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "fluxctl"; + version = "1.13.1"; + + src = fetchFromGitHub { + owner = "weaveworks"; + repo = "flux"; + rev = version; + sha256 = "0g8yfvwh6hjh70a0i4ssbb6hq3i9f75wj8yqy1aaafycq598zbdx"; + }; + + modSha256 = "1q5g9hd0ansdc2acpysf6wi74q50w0psrpyhk4y6mm6kjvhlcn87"; + + subPackages = [ "cmd/fluxctl" ]; + + meta = with stdenv.lib; { + description = "CLI client for Flux, the GitOps Kubernetes operator"; + homepage = https://github.com/weaveworks/flux; + license = licenses.asl20; + maintainers = with maintainers; [ Gonzih ]; + }; +} diff --git a/pkgs/applications/networking/cluster/k9s/default.nix b/pkgs/applications/networking/cluster/k9s/default.nix new file mode 100644 index 0000000000000..5c0adbdc548a6 --- /dev/null +++ b/pkgs/applications/networking/cluster/k9s/default.nix @@ -0,0 +1,23 @@ +{ stdenv, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "k9s"; + version = "0.7.13"; + + src = fetchFromGitHub { + owner = "derailed"; + repo = "k9s"; + rev = version; + sha256 = "0wsj6wc2qi5708cg47l2qblq1cg8fcwxdygpkayib9hapx6lc6f8"; + }; + + modSha256 = "1ia9wx6yd9mdr981lcw58xv39iqzz25r03bmn1c6byxmq2xpcjq8"; + + + meta = with stdenv.lib; { + description = "Kubernetes CLI To Manage Your Clusters In Style."; + homepage = https://github.com/derailed/k9s; + license = licenses.asl20; + maintainers = with maintainers; [ Gonzih ]; + }; +} diff --git a/pkgs/applications/networking/cluster/linkerd/default.nix b/pkgs/applications/networking/cluster/linkerd/default.nix new file mode 100644 index 0000000000000..256bce9b6ec24 --- /dev/null +++ b/pkgs/applications/networking/cluster/linkerd/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchFromGitHub, buildGoModule }: + +buildGoModule rec { + pname = "linkerd-unstablle"; + version = "2019-07-26"; + + src = fetchFromGitHub { + owner = "linkerd"; + repo = "linkerd2"; + rev = "065dd3ec9d4b84c90383b31be16ccadd34a8ab0d"; + sha256 = "01m8g627sd126as0a74fy9svmymwd41sifd897nhn6kz78a21gq8"; + }; + + modSha256 = "0gahhywpcj16ww4l8s3wjwvavq24fpy258snhyf94ipy6lb797sl"; + + subPackages = [ "cli/cmd" ]; + + meta = with stdenv.lib; { + description = "A service mesh for Kubernetes and beyond."; + homepage = https://linkerd.io/; + license = licenses.asl20; + maintainers = with maintainers; [ Gonzih ]; + }; +} diff --git a/pkgs/applications/networking/cluster/terraform-providers/ansible/default.nix b/pkgs/applications/networking/cluster/terraform-providers/ansible/default.nix new file mode 100644 index 0000000000000..2b2c3caba8626 --- /dev/null +++ b/pkgs/applications/networking/cluster/terraform-providers/ansible/default.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchFromGitHub, buildGoPackage }: +buildGoPackage rec { + name = "terraform-provider-ansible-${version}"; + version = "1.0.3"; + + goPackagePath = "github.com/nbering/terraform-provider-ansible"; + goDeps = ./deps.nix; + + src = fetchFromGitHub { + owner = "nbering"; + repo = "terraform-provider-ansible"; + rev = "v${version}"; + sha256 = "0dqi9ym0xvnz3h73cmd1vf6k2qwfhxvj1mcakkpmsd4cpxq4l6pr"; + }; + + # Terraform allow checking the provider versions, but this breaks + # if the versions are not provided via file paths. + postBuild = "mv go/bin/terraform-provider-ansible{,_v${version}}"; + + meta = with stdenv.lib; { + description = "A Terraform provider serving as an interop layer for an Ansible dynamic inventory script."; + homepage = "https://github.com/nbering/terraform-provider-ansible"; + license = licenses.mpl20; + maintainers = with maintainers; [ uskudnik ]; + }; +} diff --git a/pkgs/applications/networking/cluster/terraform-providers/ansible/deps.nix b/pkgs/applications/networking/cluster/terraform-providers/ansible/deps.nix new file mode 100644 index 0000000000000..dc49f24afa590 --- /dev/null +++ b/pkgs/applications/networking/cluster/terraform-providers/ansible/deps.nix @@ -0,0 +1,11 @@ +[ + { + goPackagePath = "github.com/hashicorp/terraform"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/terraform"; + rev = "v0.12.5"; + sha256 = "0p064rhaanwx4szs8hv6mdqad8d2bgfd94h2la11j58xbsxc7hap"; + }; + } +] diff --git a/pkgs/applications/networking/cluster/terraform-providers/data.nix b/pkgs/applications/networking/cluster/terraform-providers/data.nix index b0a1d91ce6e0a..a6749083c2452 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/data.nix +++ b/pkgs/applications/networking/cluster/terraform-providers/data.nix @@ -11,8 +11,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-alicloud"; - version = "1.47.0"; - sha256 = "0w2shy850lp63y036xzhznr94dpyf5b369cddz7laycapknyzd39"; + version = "1.52.2"; + sha256 = "1s127p6rm3kmrxjk9kr02rgjk58rs864c0b46i8lmaj7x5yznaz5"; }; archive = { @@ -39,29 +39,29 @@ { owner = "terraform-providers"; repo = "terraform-provider-aws"; - version = "2.15.0"; - sha256 = "0ms4x6ri4zi25jnp47f5vg6xj9xmz7jya0y0gbc4kdmy0nwdw8f9"; + version = "2.21.0"; + sha256 = "18aw0fz3pzd7wci3z19nain499rfr9npb3sm0k34nkajjjryqngc"; }; azuread = { owner = "terraform-providers"; repo = "terraform-provider-azuread"; - version = "0.4.0"; - sha256 = "01s2qrabmydgnilkwis76ccx1sv8bkna3nbxn6ra75jvgh3q7d5d"; + version = "0.5.1"; + sha256 = "0bjy6wdfzsxchqclgp7c06b49b5h60nips69hcpwd45564iql5fh"; }; azurerm = { owner = "terraform-providers"; repo = "terraform-provider-azurerm"; - version = "1.30.1"; - sha256 = "0zxvj6k1xs151dik8yhjl31r563dsc7iykv32g10w5szyigvxqfd"; + version = "1.32.0"; + sha256 = "01287yknd2bp2yqzyn2221mkv2hz4xd5dghps5pzrkdv0m1w4p35"; }; azurestack = { owner = "terraform-providers"; repo = "terraform-provider-azurestack"; - version = "0.7.0"; - sha256 = "0vlppfnwl0r4xf2fl405d93s0kxanh52h1chz04a95x2dcclvx69"; + version = "0.8.1"; + sha256 = "1sbmjrqzzn8rf9xhaax2ykyg199sggx80apx0xvd4ab82c3ldyfw"; }; bigip = { @@ -74,22 +74,22 @@ { owner = "terraform-providers"; repo = "terraform-provider-bitbucket"; - version = "1.0.0"; - sha256 = "0gi8p1q0y8x5y8lqihijkpqs3v152h0q7icv7ixk33xsdcvb418y"; + version = "1.1.0"; + sha256 = "06bjagbgpgfphwym015wl00wx6qf7lsdig0fhpxqaykvlkn3sg49"; }; brightbox = { owner = "terraform-providers"; repo = "terraform-provider-brightbox"; - version = "1.1.2"; - sha256 = "0k9qs7kpjznascads5llajzx2xkm4hdil2n4wl0fqy43s6dkvbbf"; + version = "1.2.0"; + sha256 = "0s1b2k58r2kmjrdqrkw2dlfpby79i81gml9rpa10y372bwq314zd"; }; chef = { owner = "terraform-providers"; repo = "terraform-provider-chef"; - version = "0.1.0"; - sha256 = "17fppyhxi0rd5v8khw2psdn2hdv5j79hxhinwkzrq5s4iccqk5dw"; + version = "0.2.0"; + sha256 = "0ihn4706fflmf0585w22l7arzxsa9biq4cgh8nlhlp5y0zy934ns"; }; circonus = { @@ -109,15 +109,15 @@ { owner = "terraform-providers"; repo = "terraform-provider-cloudflare"; - version = "1.15.0"; - sha256 = "0mb771dw5fw2s6jd63sybwza49axyj9967fl454m3sznhpl96y8z"; + version = "1.16.1"; + sha256 = "0lxx7wkvmi6zpql7g33bg12gx67i4xm2v885j70b9vf8brj40h2j"; }; cloudscale = { owner = "terraform-providers"; repo = "terraform-provider-cloudscale"; - version = "1.1.0"; - sha256 = "09b1cq0vyyag8aaiwmhnwrgigmxvxk3qsk31h4hshm7ddk7db9qn"; + version = "2.0.0"; + sha256 = "145hj4pbi5zrkgamicy3m1n3380fpd2ndd6ym7mwd65d95g39vwb"; }; cloudstack = { @@ -144,15 +144,15 @@ { owner = "terraform-providers"; repo = "terraform-provider-datadog"; - version = "1.9.0"; - sha256 = "0c5s9ywd6p4qjd964y33rcqcgfqz225x5rp0jlsqxbv9i2r91fb0"; + version = "2.1.0"; + sha256 = "0k7apad2r07gw9kf0zzqc8wa2wcmxihi3x8sdssl32qjib20qwv1"; }; digitalocean = { owner = "terraform-providers"; repo = "terraform-provider-digitalocean"; - version = "1.4.0"; - sha256 = "0a01768ncgmk1vrh2ir86s9iab1s5x8ciaz3fysgcgp9snh8yz4w"; + version = "1.5.0"; + sha256 = "14kqyp4j4ld8gla8rn3an6wpjh942h5bn39d68nnf4y7nx3vvbfs"; }; dme = { @@ -165,43 +165,43 @@ { owner = "terraform-providers"; repo = "terraform-provider-dns"; - version = "2.1.1"; - sha256 = "1iyfsx1fbpvp3zjrkq8c46nr6d80z40mzkfc4axfpqyrp9xqiy8j"; + version = "2.2.0"; + sha256 = "11xdxj6hfclaq9glbh14nihmrsk220crm9ld8bdv77w0bppmrrch"; }; dnsimple = { owner = "terraform-providers"; repo = "terraform-provider-dnsimple"; - version = "0.1.0"; - sha256 = "0gkd5i69ldm5zn34p3k68aqk798g6g0d60gw7yp316l7mskvrx7h"; + version = "0.2.0"; + sha256 = "0jj82fffqaz7gramj5d4avx7vka6w190yz4r9q7628qh8ih2pfhz"; }; docker = { owner = "terraform-providers"; repo = "terraform-provider-docker"; - version = "1.2.0"; - sha256 = "1w69kjlrgy4397c9nz3llqsqcjzchwqw1ksw4wg34xnnq20pd4ql"; + version = "2.1.0"; + sha256 = "183pkjf6x8xk84sij2w2v3sms8pjv7hzwricamd2sf3n0fkqvjiq"; }; dyn = { owner = "terraform-providers"; repo = "terraform-provider-dyn"; - version = "1.1.0"; - sha256 = "0sx4h3drb230m69lsmafyfd2cfvwnb9gld8s6ky54115kd3nckml"; + version = "1.2.0"; + sha256 = "1a3kxmbib2y0nl7gnxknbhsflj5kfknxnm3gjxxrb2h5d2kvqy48"; }; external = { owner = "terraform-providers"; repo = "terraform-provider-external"; - version = "1.1.2"; - sha256 = "12wdzm3y0fd840bdf0dczvvmdmfwpfwfwnf0j4g6n9asdcvjaqlh"; + version = "1.2.0"; + sha256 = "1kx28bffhd1pg3m0cbldclc8l9zic16mqrk7gybcls9vyds5gbvc"; }; fastly = { owner = "terraform-providers"; repo = "terraform-provider-fastly"; - version = "0.6.1"; - sha256 = "1p4j1n2x2y0n1kslfx62fx60v8b1acqv78gns1a5i0vgnnmmqcaj"; + version = "0.8.1"; + sha256 = "1ghvf7nwj02r31zgnrnmhagqbbq696ll39b2wjzlimb6c3fw7ik0"; }; flexibleengine = { @@ -214,8 +214,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-github"; - version = "2.1.0"; - sha256 = "05ca0vw6s7q40zcs50mr6k2swwx3a3njd4dxdz00qki58hgb87y6"; + version = "2.2.0"; + sha256 = "1h44v7428z3v3hv6ywi3n0yhnvgx9cr6vgqb1n2w1qf7k2f0jkzx"; }; gitlab = { @@ -228,29 +228,29 @@ { owner = "terraform-providers"; repo = "terraform-provider-google"; - version = "2.8.0"; - sha256 = "1r4x7l20w8wb6a356vx71lra466p7hfww1jyv0bg7z1f015qs91l"; + version = "2.11.0"; + sha256 = "16577pkp3m5pqqqhvxq1rvx99p1230pmqksm6wplh25ry5yp5v7w"; }; google-beta = { owner = "terraform-providers"; repo = "terraform-provider-google-beta"; - version = "2.8.0"; - sha256 = "16ml6sd3g4wzcgm5qaphfyq3lcy33p8nmcahxrhrcvwnwl0kw5bs"; + version = "2.11.0"; + sha256 = "0hj2c17kb6k4zy1630fvmyniln5m1ncpyys4wl8v1j0arb8vg2wz"; }; grafana = { owner = "terraform-providers"; repo = "terraform-provider-grafana"; - version = "1.4.0"; - sha256 = "1y41yhp82phgw83frkgrjzpymsys2abvdwa1n905rz7i15ybasqc"; + version = "1.5.0"; + sha256 = "0zy3bqgpxymp2zygaxzllk1ysdankwxa1sy1djfgr4fs2nlggkwi"; }; hcloud = { owner = "terraform-providers"; repo = "terraform-provider-hcloud"; - version = "1.10.0"; - sha256 = "18m2smpwcjp49wnylplrnlhfjrmim1qpvn1z70lwvb49liv8ldwf"; + version = "1.11.0"; + sha256 = "037hbwp10h57cj74ja6c4wjgfrfggbpd4glbc81xpp22rxij40j9"; }; hedvig = { @@ -270,8 +270,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-heroku"; - version = "2.0.0"; - sha256 = "161pc6s4ifzi58cx32sdk9nan4kz6gn3mch1pnmp03f6390s2pcm"; + version = "2.1.0"; + sha256 = "17gb8lpcp7fwgv6mv3sw5was571pa0pp00izrrkyhbcddw5p84mc"; }; http = { @@ -312,8 +312,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-kubernetes"; - version = "1.7.0"; - sha256 = "0chr6v47398a3cvff9lwx4ffahcwv7fmzs6kjjqaidb1cv60d039"; + version = "1.8.1"; + sha256 = "1c69p7rqijinzr0lqh4iwa0g89w2hjm2csadbxkfha0a8iqq73r1"; }; librato = { @@ -326,15 +326,15 @@ { owner = "terraform-providers"; repo = "terraform-provider-linode"; - version = "1.6.0"; - sha256 = "0i2x0jd26qanziihlc38s7rxiab66ld2s5gz18rrmrbwhcl95fwj"; + version = "1.8.0"; + sha256 = "1jgh2ij58a5mr6ns604cfpvfvr19qr0q51j57gvchz53iv683m9q"; }; local = { owner = "terraform-providers"; repo = "terraform-provider-local"; - version = "1.2.2"; - sha256 = "0azrw62clki002nlv7ws3kzfsbqkadm713534i4xgvix2m08d1cx"; + version = "1.3.0"; + sha256 = "1z6b52vdq7wzzipldys28z45glwgj9k15ighjix1dy78mzi0p99n"; }; logentries = { @@ -347,8 +347,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-logicmonitor"; - version = "1.2.0"; - sha256 = "1zir35i8j5w7ra4i7f9k0ghac9b3bar0dy16sqy1kqwbh4ikmhb8"; + version = "1.2.1"; + sha256 = "1fcv5g92l6xr4x69h9rg48zazjr99wrz9mkmr122fyq9s7kdd98y"; }; mailgun = { @@ -361,8 +361,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-mysql"; - version = "1.6.0"; - sha256 = "1kgldnrdz0mr99arxf85n8xbbxm96b5mg732c6zs38dgcq63mypx"; + version = "1.7.0"; + sha256 = "19l1ihp5jlaahm8zncjlrnfw8d8gcpnq3z6pn421j1x0d5v5vw9b"; }; netlify = { @@ -375,8 +375,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-newrelic"; - version = "1.5.0"; - sha256 = "1if8i435v4nf18hdvwwz3nvlkaf8yjzcxi300blri2xfx95chsxw"; + version = "1.5.1"; + sha256 = "1xrwh9m1sig4hd2vvb7apy2gh8rz15wdrajggzmmpc1z1rlhf90p"; }; nomad = { @@ -389,8 +389,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-ns1"; - version = "1.4.0"; - sha256 = "1zkmc6flmy48qawaf0l5r72xfwp46c842gd7kg35r06cihc9gavy"; + version = "1.4.1"; + sha256 = "1zcl7yda0rqj76d9slm92kvj5ry3v5va48l8i5vlxa1znnf8d89d"; }; nsxt = { @@ -417,8 +417,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-oci"; - version = "3.29.0-rc1"; - sha256 = "1rz61qndrrgknkd7bjbgvy28znllipr1v92cn1im43rzsmnz64y3"; + version = "3.35.0-rc1"; + sha256 = "1728zap32iabsa2a6762caf9h7fgspi1z8gnq03269qhy7jsknv8"; }; oneandone = { @@ -438,15 +438,15 @@ { owner = "terraform-providers"; repo = "terraform-provider-openstack"; - version = "1.19.0"; - sha256 = "1y9b9h523zflq4z9cwjgfa0l92j4ac5pc1r6vja1aw3gg2ln80x9"; + version = "1.20.0"; + sha256 = "0hfcypz95aj1wwhybpkc74k8g2iqax724qdm11s2iyjmq5c7iz2z"; }; opentelekomcloud = { owner = "terraform-providers"; repo = "terraform-provider-opentelekomcloud"; - version = "1.9.0"; - sha256 = "1nq6h6ds2fvxrmyf2v7w8prprl7pp6va8568jf0f775sag51wpl8"; + version = "1.10.0"; + sha256 = "12c7qjlmvsxd4nv0k2vsvlnl1iq2k0b8xx29q5a6h98dnhrnpfic"; }; opsgenie = { @@ -494,8 +494,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-postgresql"; - version = "0.4.0"; - sha256 = "0fywq1vzm8fcd0jcvzx1n3jilrk0r6ylqz9r4dwsyc64iqvmrpps"; + version = "1.1.0"; + sha256 = "1dxspqajfy8dmplasazi4s34f47n1qz7qg2dr9ypdvd3jp63072w"; }; powerdns = { @@ -515,8 +515,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-rabbitmq"; - version = "1.0.0"; - sha256 = "1md928243r4c46ihjnavz2375nxnfyhknyc86r9853hwhhyhsx5d"; + version = "1.1.0"; + sha256 = "0xihc44923kx8c3v6wrvczzbhmbjkhy7dhgx3sy5sqhmm22y0gys"; }; rancher = { @@ -536,8 +536,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-rightscale"; - version = "1.3.0"; - sha256 = "1brzxyd5hg99x75qh0p707lr9cvqpzx2az1swr624w3rzhjl2ygm"; + version = "1.3.1"; + sha256 = "0abwxaghrxpahpsk6kd02fjh0rhck4xsdrzcpv629yh8ip9rzcaj"; }; rundeck = { @@ -550,8 +550,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-runscope"; - version = "0.5.0"; - sha256 = "0n0m39gaiwhqigjny51a7g36ldik33alimkqqbv6hqyzrhk0qs8h"; + version = "0.6.0"; + sha256 = "1fsph2cnyvzdwa5hwdjabfk4azmc3x8a7afpwpawxfdvqhgpr595"; }; scaleway = { @@ -564,15 +564,15 @@ { owner = "terraform-providers"; repo = "terraform-provider-selectel"; - version = "2.2.0"; - sha256 = "1vw49ckcavzq8igc3091mzsqv9garzh1npwdwsyqb9367z5ib39m"; + version = "2.3.0"; + sha256 = "0n0nqlajcx44zxbc2k58lv3jy2y6p9zqkby2vy5a2856kcksm7pf"; }; skytap = { owner = "terraform-providers"; repo = "terraform-provider-skytap"; - version = "0.10.0"; - sha256 = "1rfyaf8zhcr74mhcjdsm659rzlncyaxvqqqrc1630a3bk4h8p3i1"; + version = "0.11.1"; + sha256 = "1mlv6jp6lp47chcnsmx8dzy01bxpb9jx1wl122lxd88app9nxq1k"; }; softlayer = { @@ -592,8 +592,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-statuscake"; - version = "0.2.0"; - sha256 = "065izach0hq04664hz7rc3gd0r3l06lzwcbj5800zjfv1inp6pxs"; + version = "1.0.0"; + sha256 = "1x295va6c72465cxps0kx3rrb7s9aip2cniy6icsg1b2yrsb9b26"; }; telefonicaopencloud = { @@ -613,8 +613,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-tencentcloud"; - version = "1.9.0"; - sha256 = "0zgn3ndbcs6dgmz2y8qcns08rbwbfq633rbk6zgfck8pzqw2d2lr"; + version = "1.13.0"; + sha256 = "0mdgpkzv1gfyvpndvv195f6nxmvpv4wvssxlqvmccf8vvmb32nyn"; }; terraform = { @@ -627,8 +627,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-tfe"; - version = "0.9.1"; - sha256 = "0ww3fm8mgpqmv0ra0zbv560avcla76dkj2qxz9bdwzg7iz8vsj4s"; + version = "0.10.1"; + sha256 = "09hrdschgydnziq1sv6ql7gc4qwx8j4dnmx4fdw8452qpszk17n2"; }; tls = { @@ -648,8 +648,8 @@ { owner = "terraform-providers"; repo = "terraform-provider-ucloud"; - version = "1.10.1"; - sha256 = "1c5w2816rf55khs534z780j0r8i6n8gqhkda21i32n9rj8y5clv1"; + version = "1.11.1"; + sha256 = "1la5kapdwpd2f6x00yc9j25rl8qkrndgqpzp2jp6mcbj5zif82ns"; }; ultradns = { @@ -662,36 +662,36 @@ { owner = "terraform-providers"; repo = "terraform-provider-vault"; - version = "1.8.0"; - sha256 = "1g9cw14mzslb445yhj04dzs0s4cbhi4cxycd50vc3f9yyg6sz1rr"; + version = "2.1.0"; + sha256 = "1nbiz2mnknaimfvh1zmmsp1crrhcpy4q6maaakqybqzabkn9wibr"; }; vcd = { owner = "terraform-providers"; repo = "terraform-provider-vcd"; - version = "2.1.0"; - sha256 = "0azmjddysl38n58vk94zhm2g7s5aw71gvn83h4n7amf2j7p7ks9j"; + version = "2.3.0"; + sha256 = "1x9ydp6kscgj0m7vkf4ly0y80016qcfbshgmlydrvq7dbw44qlr9"; }; vsphere = { owner = "terraform-providers"; repo = "terraform-provider-vsphere"; - version = "1.10.0"; - sha256 = "039s95afqrcpf6jiprqsqnvlsnxbs5vcqrsgg6pbs52rlwp1ixgw"; + version = "1.12.0"; + sha256 = "0g3pnk2b4dmz5bkr7xjpp45dwy767k6a02rjva38xls185qs7i7c"; }; yandex = { owner = "terraform-providers"; repo = "terraform-provider-yandex"; - version = "0.5.2"; - sha256 = "1fa1jicirww0zxg5kw4343ndzq86x0m7gkfj8yx7l6lb6gcrkbic"; + version = "0.8.2"; + sha256 = "07p88asjcjndpv36dhvfazb440k2f2v4j7rpvqqmfccwyyqkwwjr"; }; matchbox = { - owner = "coreos"; + owner = "poseidon"; repo = "terraform-provider-matchbox"; - version = "0.2.3"; - sha256 = "12vf8krzx79yrsk3lk2k6vwwk1f18617ky7g2yf60bf2x836lg09"; + version = "0.3.0"; + sha256 = "1nq7k8qa7rv8xyryjigwpwcwvj1sw85c4j46rkfdv70b6js25jz3"; }; nixos = { @@ -714,11 +714,4 @@ version = "0.2.0"; sha256 = "0ic5b9djhnb1bs2bz3zdprgy3r55dng09xgc4d9l9fyp85g2amaz"; }; - ansible = - { - owner = "nbering"; - repo = "terraform-provider-ansible"; - version = "0.0.4"; - sha256 = "125a8vbpnahaxxrxj3mp0kj6ajssxnfb6l0spgnf118wg3bvlmw5"; - }; } diff --git a/pkgs/applications/networking/cluster/terraform-providers/default.nix b/pkgs/applications/networking/cluster/terraform-providers/default.nix index c542de912f346..fc6b713138565 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/default.nix +++ b/pkgs/applications/networking/cluster/terraform-providers/default.nix @@ -28,4 +28,5 @@ in gandi = callPackage ./gandi {}; ibm = callPackage ./ibm {}; libvirt = callPackage ./libvirt {}; + ansible = callPackage ./ansible {}; } // lib.mapAttrs (n: v: toDrv v) list diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.txt b/pkgs/applications/networking/cluster/terraform-providers/providers.txt index c5d6fda16514a..286e3d6efe041 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.txt +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.txt @@ -10,7 +10,7 @@ terraform-providers terraform-provider- terraform-provider-\\(azure-classic\\|scaffolding\\) # include terraform-provider-matchbox -coreos/terraform-provider-matchbox +poseidon/terraform-provider-matchbox # include terraform-provider-nixos tweag/terraform-provider-nixos @@ -20,6 +20,3 @@ tweag/terraform-provider-secret # include terraform-provider-segment ajbosco/terraform-provider-segment - -# include terraform-provider-ansible -nbering/terraform-provider-ansible diff --git a/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix b/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix index 4e6028621976c..d815f0aff2ddc 100644 --- a/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix +++ b/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix @@ -1,9 +1,9 @@ { stdenv, fetchurl }: let - rev = "5cdbb97898d727d2b35c25a3117e9a79e474d97b"; - sha256 = "14qikp91l2aj8j9i0nh0nf9ibz65b8bpd3lbyarqshhrpvb5jp79"; - version = "2019-06-04"; + rev = "e2a6a9cd9da70175881ab991220c86aa87179509"; + sha256 = "1gw0kpszgflk3vqjlm5igd2rznh36mb2j1iqrcqi6pzxlpccv1lg"; + version = "2019-07-25"; in stdenv.mkDerivation { inherit version; diff --git a/pkgs/applications/networking/remote/x2goclient/default.nix b/pkgs/applications/networking/remote/x2goclient/default.nix index 87fe60c7740cc..2cfbfb1b201ee 100644 --- a/pkgs/applications/networking/remote/x2goclient/default.nix +++ b/pkgs/applications/networking/remote/x2goclient/default.nix @@ -1,19 +1,18 @@ { stdenv, fetchgit, cups, libssh, libXpm, nx-libs, openldap, openssh -, makeWrapper, qtbase, qtsvg, qtx11extras, qttools, phonon, pkgconfig }: +, mkDerivation, qtbase, qtsvg, qtx11extras, qttools, phonon, pkgconfig }: -stdenv.mkDerivation rec { +mkDerivation rec { pname = "x2goclient"; - version = "unstable-2018-11-30"; + version = "unstable-2019-07-24"; src = fetchgit { url = "git://code.x2go.org/x2goclient.git"; - rev = "659655675f11ffd361ab9fb48fa77a01a1536fe8"; - sha256 = "05gfs11m259bchy3k0ihqpwg9wf8lp94rbca5dzla9fjzrb7pyy4"; + rev = "704c4ab92d20070dd160824c9b66a6d1c56dcc49"; + sha256 = "1pndp3lfzwifyxqq0gps3p1bwakw06clbk6n8viv020l4bsfmq5f"; }; buildInputs = [ cups libssh libXpm nx-libs openldap openssh qtbase qtsvg qtx11extras qttools phonon pkgconfig ]; - nativeBuildInputs = [ makeWrapper ]; postPatch = '' substituteInPlace Makefile \ @@ -28,9 +27,8 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; installTargets = [ "install_client" "install_man" ]; - postInstall = '' - wrapProgram "$out/bin/x2goclient" --suffix PATH : "${nx-libs}/bin:${openssh}/libexec"; - ''; + + qtWrapperArgs = [ ''--suffix PATH : ${nx-libs}/bin:${openssh}/libexec'' ]; meta = with stdenv.lib; { description = "Graphical NoMachine NX3 remote desktop client"; diff --git a/pkgs/applications/version-management/git-repo/default.nix b/pkgs/applications/version-management/git-repo/default.nix index 04ae45f75b397..2c427bb182420 100644 --- a/pkgs/applications/version-management/git-repo/default.nix +++ b/pkgs/applications/version-management/git-repo/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { name = "git-repo-${version}"; - version = "1.13.3"; + version = "1.13.4"; src = fetchFromGitHub { owner = "android"; repo = "tools_repo"; rev = "v${version}"; - sha256 = "0wyr6fyc9kzzw6y2cxvri35ib1sh156n6lnv119j5r1rzvc2lg6r"; + sha256 = "0p55mx1ry0r3bb8nja09cfpiv1jjxf98r41vrqba1b5hm8hbzfhj"; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/applications/video/ccextractor/default.nix b/pkgs/applications/video/ccextractor/default.nix new file mode 100644 index 0000000000000..91c47516521ed --- /dev/null +++ b/pkgs/applications/video/ccextractor/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchFromGitHub, pkgconfig, cmake +, glew, glfw3, leptonica, libiconv, tesseract3, zlib }: + +with stdenv.lib; +stdenv.mkDerivation rec { + pname = "ccextractor"; + version = "0.88"; + + src = fetchFromGitHub { + owner = "CCExtractor"; + repo = pname; + rev = "v${version}"; + sha256 = "1sya45hvv4d46bk7541yimmafgvgyhkpsvwfz9kv6pm4yi1lz6nb"; + }; + + sourceRoot = "source/src"; + + nativeBuildInputs = [ pkgconfig cmake ]; + + buildInputs = [ glew glfw3 leptonica tesseract3 zlib ] ++ stdenv.lib.optional (!stdenv.isLinux) libiconv; + + meta = { + homepage = "https://www.ccextractor.org"; + description = "Tool that produces subtitles from closed caption data in videos"; + longDescription = '' + A tool that analyzes video files and produces independent subtitle files from + closed captions data. CCExtractor is portable, small, and very fast. + It works on Linux, Windows, and OSX. + ''; + platforms = platforms.unix; + license = licenses.gpl2; + maintainers = with maintainers; [ titanous ]; + }; +} diff --git a/pkgs/applications/video/plex-media-player/default.nix b/pkgs/applications/video/plex-media-player/default.nix index 9f5401fc69c39..4bd4d5fdaadd5 100644 --- a/pkgs/applications/video/plex-media-player/default.nix +++ b/pkgs/applications/video/plex-media-player/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, fetchurl, pkgconfig, cmake, python3 +{ stdenv, fetchFromGitHub, fetchurl, pkgconfig, cmake, python3, mkDerivation , libX11, libXrandr, qtbase, qtwebchannel, qtwebengine, qtx11extras , libvdpau, SDL2, mpv, libGL }: let @@ -34,7 +34,7 @@ let sha256 = "0yssii01nx6ixg3mikqjn8hz34dalma0rfr8spj115xwr7aq8ixk"; }; }; -in stdenv.mkDerivation rec { +in mkDerivation rec { name = "plex-media-player-${version}"; version = "2.36.0.988"; vsnHash = "0150ae52"; diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix index 384ab8f30473b..a1125f25e816a 100644 --- a/pkgs/applications/virtualization/docker/default.nix +++ b/pkgs/applications/virtualization/docker/default.nix @@ -201,9 +201,21 @@ rec { # https://github.com/docker/docker-ce/tree/v${version}/components/engine/hack/dockerfile/install/* docker_18_09 = makeOverridable dockerGen { - version = "18.09.7"; - rev = "2d0083d657f82c47044c8d3948ba434b622fe2fd"; - sha256 = "1f7q99pay7mmy925ap95p935y9xslxpmgha397db7x2w008rfl9k"; + version = "18.09.8"; + rev = "0dd43dd87fd530113bf44c9bba9ad8b20ce4637f"; + sha256 = "07ljxdqylbfbq1939hqyaav966ga7ds5b38dn7af1h0aks86y2s3"; + runcRev = "425e105d5a03fabd737a126ad93d62a9eeede87f"; + runcSha256 = "05s4p12mgmdcy7gjralh41wlgds6m69zdgwbpdn1xjj2487dmhxf"; + containerdRev = "894b81a4b802e4eb2a91d1ce216b8817763c29fb"; + containerdSha256 = "0sp5mn5wd3xma4svm6hf67hyhiixzkzz6ijhyjkwdrc4alk81357"; + tiniRev = "fec3683b971d9c3ef73f284f176672c44b448662"; + tiniSha256 = "1h20i3wwlbd8x4jr2gz68hgklh0lb0jj7y5xk1wvr8y58fip1rdn"; + }; + + docker_19_03 = makeOverridable dockerGen { + version = "19.03.1"; + rev = "74b1e89e8ac68948be88fe0aa1e2767ae28659fe"; + sha256 = "1m7bq7la29d8piwiq5whzcyrm7g3lv497wnri0lh6gxi10nwv06h"; runcRev = "425e105d5a03fabd737a126ad93d62a9eeede87f"; runcSha256 = "05s4p12mgmdcy7gjralh41wlgds6m69zdgwbpdn1xjj2487dmhxf"; containerdRev = "894b81a4b802e4eb2a91d1ce216b8817763c29fb"; diff --git a/pkgs/applications/window-managers/orbment/bemenu.nix b/pkgs/applications/window-managers/orbment/bemenu.nix deleted file mode 100644 index 065b81948c2d0..0000000000000 --- a/pkgs/applications/window-managers/orbment/bemenu.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ stdenv, fetchFromGitHub, cmake, pkgconfig -, pango, wayland, libxkbcommon }: - -stdenv.mkDerivation rec { - name = "bemenu-2017-02-14"; - - src = fetchFromGitHub { - owner = "Cloudef"; - repo = "bemenu"; - rev = "d6261274cf0b3aa51ce8ea7418a79495b20ad558"; - sha256 = "08bc623y5yjbz7q83lhl6rb0xs6ji17z79c260bx0fgin8sfj5x8"; - }; - - nativeBuildInputs = [ cmake pkgconfig ]; - - buildInputs = [ pango wayland libxkbcommon ]; - - enableParallelBuilding = true; - - meta = with stdenv.lib; { - description = "A dynamic menu library and client program inspired by dmenu"; - homepage = src.meta.homepage; - license = with licenses; [ gpl3 lgpl3 ]; - platforms = platforms.linux; - }; -} diff --git a/pkgs/applications/window-managers/orbment/default.nix b/pkgs/applications/window-managers/orbment/default.nix deleted file mode 100644 index 6bf6f44d42346..0000000000000 --- a/pkgs/applications/window-managers/orbment/default.nix +++ /dev/null @@ -1,41 +0,0 @@ -{ lib, stdenv, fetchgit, cmake, pkgconfig, makeWrapper, callPackage -, wlc, dbus, wayland, libxkbcommon, pixman, libinput, udev, zlib, libpng -, libdrm, libX11 -, westonLite -}: - -let - bemenu = callPackage ./bemenu.nix {}; -in stdenv.mkDerivation rec { - name = "orbment-${version}"; - version = "git-2016-08-13"; - - src = fetchgit { - url = "https://github.com/Cloudef/orbment"; - rev = "01dcfff9719e20261a6d8c761c0cc2f8fa0d0de5"; - sha256 = "04mv9nh847vijr01zrs47fzmnwfhdx09vi3ddv843mx10yx7lqdb"; - fetchSubmodules = true; - }; - - nativeBuildInputs = [ cmake pkgconfig makeWrapper ]; - - buildInputs = [ - wlc dbus wayland libxkbcommon pixman libinput udev zlib libpng libX11 - libdrm - ]; - - postFixup = '' - wrapProgram $out/bin/orbment \ - --prefix PATH : "${stdenv.lib.makeBinPath [ bemenu westonLite ]}" - ''; - - enableParallelBuilding = true; - - meta = { - description = "Modular Wayland compositor"; - homepage = src.url; - license = lib.licenses.mit; - platforms = lib.platforms.linux; - maintainers = with lib.maintainers; [ ]; - }; -} diff --git a/pkgs/applications/window-managers/velox/default.nix b/pkgs/applications/window-managers/velox/default.nix deleted file mode 100644 index f8cb6c266839c..0000000000000 --- a/pkgs/applications/window-managers/velox/default.nix +++ /dev/null @@ -1,59 +0,0 @@ -{ lib, stdenv, fetchFromGitHub, pkgconfig, makeWrapper, newScope -, libxkbcommon -, wayland, pixman, fontconfig -, stConf ? null, stPatches ? [] -}: - -let - callPackage = newScope self; - self = { - swc = callPackage ./swc.nix {}; - wld = callPackage ./wld.nix {}; - dmenu-velox = callPackage ./dmenu.nix {}; - st-velox = callPackage ./st.nix { - conf = stConf; - patches = stPatches; - }; - }; -in with self; stdenv.mkDerivation rec { - name = "velox-${version}"; - version = "git-2017-07-04"; - - src = fetchFromGitHub { - owner = "michaelforney"; - repo = "velox"; - rev = "0b1d3d62861653d92d0a1056855a84fcef661bc0"; - sha256 = "0p5ra5p5w21wl696rmv0vdnl7jnri5iwnxfs6nl6miwydhq2dmci"; - }; - - nativeBuildInputs = [ pkgconfig makeWrapper ]; - - buildInputs = [ swc libxkbcommon wld wayland pixman fontconfig ]; - - propagatedUserEnvPkgs = [ swc ]; - - makeFlags = "PREFIX=$(out)"; - preBuild = '' - substituteInPlace config.c \ - --replace /etc/velox.conf $out/etc/velox.conf - ''; - installPhase = '' - PREFIX=$out make install - mkdir -p $out/etc - cp velox.conf.sample $out/etc/velox.conf - ''; - postFixup = '' - wrapProgram $out/bin/velox \ - --prefix PATH : "${stdenv.lib.makeBinPath [ dmenu-velox st-velox ]}" - ''; - - enableParallelBuilding = false; # https://hydra.nixos.org/build/79799608 - - meta = { - description = "velox window manager"; - homepage = "https://github.com/michaelforney/velox"; - license = lib.licenses.mit; - platforms = lib.platforms.linux; - maintainers = with lib.maintainers; [ ]; - }; -} diff --git a/pkgs/applications/window-managers/velox/dmenu.nix b/pkgs/applications/window-managers/velox/dmenu.nix deleted file mode 100644 index 01360e5af0b35..0000000000000 --- a/pkgs/applications/window-managers/velox/dmenu.nix +++ /dev/null @@ -1,37 +0,0 @@ -{stdenv, fetchFromGitHub #, libX11, libXinerama, enableXft, libXft, zlib -, swc, wld, wayland, libxkbcommon, pixman, fontconfig -}: - -with stdenv.lib; - -stdenv.mkDerivation rec { - name = "dmenu-velox-${version}"; - version = "git-2017-04-07"; - - src = fetchFromGitHub { - owner = "michaelforney"; - repo = "dmenu"; - rev = "f385d9d18813071b4b4257bf8d4d572daeda0e70"; - sha256 = "14j8jv0nlybinhzkgd6dplvng9zy8p292prlx39w0k4fm6x5nv6y"; - }; - - buildInputs = [ swc wld wayland libxkbcommon pixman fontconfig ]; - - postPatch = '' - sed -ri -e 's!\<(dmenu|dmenu_path)\>!'"$out/bin"'/&!g' dmenu_run - ''; - - preConfigure = [ - ''sed -i "s@PREFIX = /usr/local@PREFIX = $out@g; s@/usr/share/swc@${swc}/share/swc@g" config.mk'' - ]; - - enableParallelBuilding = true; - - meta = { - description = "A generic, highly customizable, and efficient menu for the X Window System"; - homepage = https://tools.suckless.org/dmenu; - license = stdenv.lib.licenses.mit; - maintainers = with stdenv.lib.maintainers; [ ]; - platforms = with stdenv.lib.platforms; all; - }; -} diff --git a/pkgs/applications/window-managers/velox/st.nix b/pkgs/applications/window-managers/velox/st.nix deleted file mode 100644 index 2d73df6504632..0000000000000 --- a/pkgs/applications/window-managers/velox/st.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ stdenv, fetchFromGitHub, pkgconfig, writeText -, ncurses, wayland, wayland-protocols, wld, libxkbcommon, fontconfig, pixman -, conf, patches }: - -with stdenv.lib; - -stdenv.mkDerivation rec { - name = "st-velox-${version}"; - version = "git-2016-12-22"; - - src = fetchFromGitHub { - owner = "michaelforney"; - repo = "st"; - rev = "b27f17da65f74b0a923952601873524e03b4d047"; - sha256 = "17aa4bz5g14jvqghk2c8mw77hb8786s07pv814rmlk7nnsavmp3i"; - }; - - inherit patches; - - configFile = optionalString (conf!=null) (writeText "config.def.h" conf); - preBuild = optionalString (conf!=null) "cp ${configFile} config.def.h"; - - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ ncurses wayland wayland-protocols wld libxkbcommon fontconfig pixman ]; - - NIX_LDFLAGS = "-lfontconfig"; - - installPhase = '' - TERMINFO=$out/share/terminfo make install PREFIX=$out - ''; - - enableParallelBuilding = true; - - meta = { - homepage = https://st.suckless.org/; - license = licenses.mit; - maintainers = with maintainers; [ ]; - platforms = with platforms; linux; - }; -} diff --git a/pkgs/applications/window-managers/velox/swc.nix b/pkgs/applications/window-managers/velox/swc.nix deleted file mode 100644 index a2f98b8b65e71..0000000000000 --- a/pkgs/applications/window-managers/velox/swc.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ lib, stdenv, fetchFromGitHub, pkgconfig -, wld, wayland, wayland-protocols, fontconfig, pixman, libdrm, libinput, libevdev, libxkbcommon, libxcb, xcbutilwm -}: - -stdenv.mkDerivation rec { - name = "swc-${version}"; - version = "git-2017-06-28"; - - src = fetchFromGitHub { - owner = "michaelforney"; - repo = "swc"; - rev = "5b20050872f8ad29cfc97729f8af47b6b3df5393"; - sha256 = "1lxpm17v5d8png6ixc0zn0w00xgrhz2n5b8by9vx6800b18246z8"; - }; - - nativeBuildInputs = [ pkgconfig ]; - - buildInputs = [ wld wayland wayland-protocols fontconfig pixman libdrm libinput libevdev libxkbcommon libxcb xcbutilwm ]; - - prePatch = '' - substituteInPlace launch/local.mk --replace 4755 755 - ''; - - makeFlags = "PREFIX=$(out)"; - installPhase = "PREFIX=$out make install"; - - enableParallelBuilding = true; - - meta = { - description = "A library for making a simple Wayland compositor"; - homepage = src.meta.homepage; - license = lib.licenses.mit; - platforms = lib.platforms.linux; - maintainers = with lib.maintainers; [ ]; - }; -} diff --git a/pkgs/applications/window-managers/velox/wld.nix b/pkgs/applications/window-managers/velox/wld.nix deleted file mode 100644 index d85f8212ec478..0000000000000 --- a/pkgs/applications/window-managers/velox/wld.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ lib, stdenv, fetchFromGitHub, pkgconfig -, wayland, fontconfig, pixman, freetype, libdrm -}: - -stdenv.mkDerivation rec { - name = "wld-${version}"; - version = "git-2017-10-31"; - - src = fetchFromGitHub { - owner = "michaelforney"; - repo = "wld"; - rev = "b4e902bbecb678c45485b52c3aa183cbc932c595"; - sha256 = "0j2n776flnzyw3vhxl0r8h1c48wrihi4g6bs2z8j4hbw5pnwq1k6"; - }; - - nativeBuildInputs = [ pkgconfig ]; - - buildInputs = [ wayland fontconfig pixman freetype libdrm ]; - - makeFlags = "PREFIX=$(out)"; - installPhase = "PREFIX=$out make install"; - - enableParallelBuilding = true; - - meta = { - description = "A primitive drawing library targeted at Wayland"; - homepage = src.meta.homepage; - license = lib.licenses.mit; - platforms = lib.platforms.linux; - maintainers = with lib.maintainers; [ ]; - }; -} diff --git a/pkgs/applications/window-managers/way-cooler/default.nix b/pkgs/applications/window-managers/way-cooler/default.nix index f06020143d787..160b872fd48d4 100644 --- a/pkgs/applications/window-managers/way-cooler/default.nix +++ b/pkgs/applications/window-managers/way-cooler/default.nix @@ -3,6 +3,8 @@ }: let + wlc = callPackage ./wlc.nix {}; + # refer to # https://github.com/way-cooler/way-cooler.github.io/blob/master/way-cooler-release-i3-default.sh # for version numbers diff --git a/pkgs/development/libraries/wlc/default.nix b/pkgs/applications/window-managers/way-cooler/wlc.nix index 3f2891ffd510c..3f2891ffd510c 100644 --- a/pkgs/development/libraries/wlc/default.nix +++ b/pkgs/applications/window-managers/way-cooler/wlc.nix diff --git a/pkgs/development/idris-modules/sdl2.nix b/pkgs/development/idris-modules/sdl2.nix index b0306040d730b..e4a1fbae562c0 100644 --- a/pkgs/development/idris-modules/sdl2.nix +++ b/pkgs/development/idris-modules/sdl2.nix @@ -6,26 +6,33 @@ , SDL2 , SDL2_gfx }: -build-idris-package { +build-idris-package rec { name = "sdl2"; - version = "2018-01-19"; + version = "0.1.1"; idrisDeps = [ effects ]; - extraBuildInputs = [ pkgconfig SDL2 SDL2_gfx ]; + extraBuildInputs = [ + pkgconfig + SDL2 + SDL2_gfx + ]; + + prePatch = "patchShebangs ."; src = fetchFromGitHub { owner = "steshaw"; repo = "idris-sdl2"; - rev = "ebc36a0efb3e8086f2999120e7a8a8ac4952c6f6"; - sha256 = "060k0i1pjilrc4pcz7v70hbipaw2crz14yxjlyjlhn6qm03131q0"; + rev = version; + sha256 = sha256:1jslnlzyw04dcvcd7xsdjqa7waxzkm5znddv76sv291jc94xhl4a; }; meta = { description = "SDL2 binding for Idris"; homepage = https://github.com/steshaw/idris-sdl2; - maintainers = [ lib.maintainers.brainrape ]; - # Can't find file sdl2.o - broken = true; + maintainers = with lib.maintainers; [ + brainrape + steshaw + ]; }; } diff --git a/pkgs/development/interpreters/python/sitecustomize.py b/pkgs/development/interpreters/python/sitecustomize.py index 7e43be5614766..e03b244dbc044 100644 --- a/pkgs/development/interpreters/python/sitecustomize.py +++ b/pkgs/development/interpreters/python/sitecustomize.py @@ -8,11 +8,19 @@ The paths listed in `PYTHONPATH` are added to `sys.path` afterwards, but they will be added before the entries we add here and thus take precedence. Note the `NIX_PYTHONPATH` environment variable is unset in order to prevent leakage. + +Similarly, this module listens to the environment variable `NIX_PYTHONEXECUTABLE` +and sets `sys.executable` to its value. """ import site +import sys import os import functools paths = os.environ.pop('NIX_PYTHONPATH', None) if paths: functools.reduce(lambda k, p: site.addsitedir(p, k), paths.split(':'), site._init_pathinfo()) + +executable = os.environ.pop('NIX_PYTHONEXECUTABLE', None) +if 'PYTHONEXECUTABLE' not in os.environ and executable: + sys.executable = executable diff --git a/pkgs/development/interpreters/python/wrapper.nix b/pkgs/development/interpreters/python/wrapper.nix index d97bef222a1e1..b437584024fee 100644 --- a/pkgs/development/interpreters/python/wrapper.nix +++ b/pkgs/development/interpreters/python/wrapper.nix @@ -14,6 +14,7 @@ let env = let paths = requiredPythonModules (extraLibs ++ [ python ] ) ; pythonPath = "${placeholder "out"}/${python.sitePackages}"; + pythonExecutable = "${placeholder "out"}/bin/${python.executable}"; in buildEnv { name = "${python.name}-env"; @@ -36,7 +37,7 @@ let if [ -f "$prg" ]; then rm -f "$out/bin/$prg" if [ -x "$prg" ]; then - makeWrapper "$path/bin/$prg" "$out/bin/$prg" --set NIX_PYTHONPATH ${pythonPath} ${if permitUserSite then "" else ''--set PYTHONNOUSERSITE "true"''} ${stdenv.lib.concatStringsSep " " makeWrapperArgs} + makeWrapper "$path/bin/$prg" "$out/bin/$prg" --set NIX_PYTHONEXECUTABLE ${pythonExecutable} --set NIX_PYTHONPATH ${pythonPath} ${if permitUserSite then "" else ''--set PYTHONNOUSERSITE "true"''} ${stdenv.lib.concatStringsSep " " makeWrapperArgs} fi fi done diff --git a/pkgs/development/libraries/liburing/default.nix b/pkgs/development/libraries/liburing/default.nix index 95644e2682ed7..ff88bdcaafd65 100644 --- a/pkgs/development/libraries/liburing/default.nix +++ b/pkgs/development/libraries/liburing/default.nix @@ -3,12 +3,12 @@ stdenv.mkDerivation rec { name = "liburing-${version}"; - version = "1.0.0pre150_${builtins.substring 0 7 src.rev}"; + version = "1.0.0pre156_${builtins.substring 0 7 src.rev}"; src = fetchgit { url = "http://git.kernel.dk/liburing"; - rev = "93f3e8d511e53133a4367afe04b5f256073082a0"; - sha256 = "14ndx3z0q6gynkmlwiah6775ss0p1xmjgn428gqgbsganiyhkwgp"; + rev = "c31c7ec4bcd7bb0d7b28897d730431c02b9d4ea1"; + sha256 = "17d6s03fyajcrijca9d2d6llbf8cl8dyalpxnl39az3452p04s11"; }; separateDebugInfo = true; diff --git a/pkgs/development/libraries/opencv/3.x.nix b/pkgs/development/libraries/opencv/3.x.nix index 7055645fe89fa..d5dc716c4a8ff 100644 --- a/pkgs/development/libraries/opencv/3.x.nix +++ b/pkgs/development/libraries/opencv/3.x.nix @@ -35,20 +35,20 @@ }: let - version = "3.4.6"; + version = "3.4.7"; src = fetchFromGitHub { owner = "opencv"; repo = "opencv"; rev = version; - sha256 = "1gf0rbgd5s13q46bdna0bqn4yz9rxfhvlhbp5ds9hs326q8zprg8"; + sha256 = "0r5rrcnqx2lsnr1ja5ij2chb7yk9kkamr4p0ik52sqxydwkv3z50"; }; contribSrc = fetchFromGitHub { owner = "opencv"; repo = "opencv_contrib"; rev = version; - sha256 = "115qcq0k2wmvhxw5lyv14yrd8m6xq3qy0pdby90ml2yl1caymbfy"; + sha256 = "1ik6acsmgrx66awf19r2y3ijqvv9xg43gaphwszbiyi0jq3r43yw"; }; # Contrib must be built in order to enable Tesseract support: @@ -61,16 +61,16 @@ let src = fetchFromGitHub { owner = "opencv"; repo = "opencv_3rdparty"; - rev = "bdb7bb85f34a8cb0d35e40a81f58da431aa1557a"; - sha256 = "1ys9mshfpm8iy8h4ml792gnqrq959dsrcv26axx14niivxyjbji8"; + rev = "32e315a5b106a7b89dbed51c28f8120a48b368b4"; + sha256 = "19w9f0r16072s59diqxsr5q6nmwyz9gnxjs49nglzhd66p3ddbkp"; } + "/ippicv"; - files = let name = platform : "ippicv_2017u3_${platform}_general_20180518.tgz"; in + files = let name = platform : "ippicv_2019_${platform}_general_20180723.tgz"; in if stdenv.hostPlatform.system == "x86_64-linux" then - { ${name "lnx_intel64"} = "b7cc351267db2d34b9efa1cd22ff0572"; } + { ${name "lnx_intel64"} = "c0bd78adb4156bbf552c1dfe90599607"; } else if stdenv.hostPlatform.system == "i686-linux" then - { ${name "lnx_ia32"} = "ea72de74dae3c604eb6348395366e78e"; } + { ${name "lnx_ia32"} = "4f38432c30bfd6423164b7a24bbc98a0"; } else if stdenv.hostPlatform.system == "x86_64-darwin" then - { ${name "mac_intel64"} = "3ae52b9be0fe73dd45bc5e9429cd3732"; } + { ${name "mac_intel64"} = "fe6b2bb75ae0e3f19ad3ae1a31dfa4a2"; } else throw "ICV is not available for this platform (or not yet supported by this package)"; dst = ".cache/ippicv"; @@ -147,12 +147,6 @@ stdenv.mkDerivation rec { cp --no-preserve=mode -r "${contribSrc}/modules" "$NIX_BUILD_TOP/opencv_contrib" ''; - patches = lib.optional stdenv.isDarwin - (fetchpatch { - url = "https://github.com/opencv/opencv/commit/7621b91769098359e893e68ad474040ca7940fa1.patch"; - sha256 = "12qb14yd5934ig61lzs4pg29gak9wjyhnj7nmfx5r213jj1a4m21"; - }); - # This prevents cmake from using libraries in impure paths (which # causes build failure on non NixOS) # Also, work around https://github.com/NixOS/nixpkgs/issues/26304 with @@ -246,6 +240,9 @@ stdenv.mkDerivation rec { "-DBUILD_opencv_videoio=OFF" ] ++ lib.optionals enablePython [ "-DOPENCV_SKIP_PYTHON_LOADER=ON" + ] ++ lib.optional enableEigen [ + # Autodetection broken by https://github.com/opencv/opencv/pull/13337 + "-DEIGEN_INCLUDE_PATH=${eigen}/include/eigen3" ]; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/openjpeg/1.x.nix b/pkgs/development/libraries/openjpeg/1.x.nix index dfa5605dec8be..2a625f32e7ff6 100644 --- a/pkgs/development/libraries/openjpeg/1.x.nix +++ b/pkgs/development/libraries/openjpeg/1.x.nix @@ -5,4 +5,5 @@ callPackage ./generic.nix (args // rec { branch = "1.5"; revision = "version.1.5.2"; sha256 = "1dvvpvb597i5z8srz2v4c5dsbxb966h125jx3m2z0r2gd2wvpfkp"; + testsSupport = false; }) diff --git a/pkgs/development/libraries/openscenegraph/default.nix b/pkgs/development/libraries/openscenegraph/default.nix index 9f5ef3ff68c85..1398e829dd5c1 100644 --- a/pkgs/development/libraries/openscenegraph/default.nix +++ b/pkgs/development/libraries/openscenegraph/default.nix @@ -26,14 +26,14 @@ }: stdenv.mkDerivation rec { - name = "openscenegraph-${version}"; - version = "3.6.3"; + pname = "openscenegraph"; + version = "3.6.4"; src = fetchFromGitHub { owner = "openscenegraph"; repo = "OpenSceneGraph"; - rev = "d011ca4e8d83549a3688bf6bb8cd468dd9684822"; - sha256 = "0h32z15sa8sbq276j0iib0n707m8bs4p5ji9z2ah411446paad9q"; + rev = "OpenSceneGraph-${version}"; + sha256 = "0x8hdbzw0b71j91fzp9cwmy9a7ava8v8wwyj8nxijq942vdx1785"; }; nativeBuildInputs = [ pkgconfig cmake doxygen ]; @@ -64,14 +64,12 @@ stdenv.mkDerivation rec { ++ lib.optionals withExamples [ fltk wxGTK ] ; - enableParallelBuilding = true; - cmakeFlags = lib.optional (!withApps) "-DBUILD_OSG_APPLICATIONS=OFF" ++ lib.optional withExamples "-DBUILD_OSG_EXAMPLES=ON"; meta = with stdenv.lib; { description = "A 3D graphics toolkit"; homepage = http://www.openscenegraph.org/; - maintainers = [ maintainers.raskin ]; + maintainers = with maintainers; [ aanderse raskin ]; platforms = platforms.linux; license = "OpenSceneGraph Public License - free LGPL-based license"; }; diff --git a/pkgs/development/python-modules/aplpy/default.nix b/pkgs/development/python-modules/aplpy/default.nix index a173a58032d9e..9710dc9f9a65e 100644 --- a/pkgs/development/python-modules/aplpy/default.nix +++ b/pkgs/development/python-modules/aplpy/default.nix @@ -11,14 +11,14 @@ , pillow , scikitimage , shapely +, pytest +, pytest-astropy }: buildPythonPackage rec { pname = "aplpy"; version = "2.0.3"; - doCheck = false; # tests require pytest-astropy - src = fetchPypi { pname = "APLpy"; inherit version; @@ -28,7 +28,6 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy astropy - astropy-helpers matplotlib reproject pyavm @@ -38,11 +37,21 @@ buildPythonPackage rec { shapely ]; + nativeBuildInputs = [ astropy-helpers ]; + + checkInputs = [ pytest pytest-astropy ]; + # Disable automatic update of the astropy-helper module postPatch = '' substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False" ''; + # Tests must be run in the build directory + checkPhase = '' + cd build/lib + pytest + ''; + meta = with lib; { description = "The Astronomical Plotting Library in Python"; homepage = http://aplpy.github.io; diff --git a/pkgs/development/python-modules/astropy/default.nix b/pkgs/development/python-modules/astropy/default.nix index 06716929575ab..f46ca274f2e1f 100644 --- a/pkgs/development/python-modules/astropy/default.nix +++ b/pkgs/development/python-modules/astropy/default.nix @@ -3,7 +3,10 @@ , buildPythonPackage , isPy3k , numpy -, pytest }: +, pytest +, pytest-astropy +, astropy-helpers +}: buildPythonPackage rec { pname = "astropy"; @@ -11,14 +14,30 @@ buildPythonPackage rec { disabled = !isPy3k; # according to setup.py - doCheck = false; #Some tests are failing. More importantly setup.py hangs on completion. Needs fixing with a proper shellhook. - src = fetchPypi { inherit pname version; sha256 = "706c0457789c78285e5464a5a336f5f0b058d646d60f4e5f5ba1f7d5bf424b28"; }; - propagatedBuildInputs = [ pytest numpy ]; # yes it really has pytest in install_requires + nativeBuildInputs = [ astropy-helpers ]; + + propagatedBuildInputs = [ numpy pytest ]; # yes it really has pytest in install_requires + + checkInputs = [ pytest pytest-astropy ]; + + # Disable automatic update of the astropy-helper module + postPatch = '' + substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False" + ''; + + # Tests must be run from the build directory. astropy/samp tests + # require a network connection, so we ignore them. For some reason + # pytest --ignore does not work, so we delete the tests instead. + checkPhase = '' + cd build/lib.* + rm -f astropy/samp/tests/* + pytest + ''; meta = { description = "Astronomy/Astrophysics library for Python"; diff --git a/pkgs/development/python-modules/astroquery/conftest-astropy-3-fix.patch b/pkgs/development/python-modules/astroquery/conftest-astropy-3-fix.patch new file mode 100644 index 0000000000000..0b1c7973b59bc --- /dev/null +++ b/pkgs/development/python-modules/astroquery/conftest-astropy-3-fix.patch @@ -0,0 +1,54 @@ +diff -ruN astroquery-0.3.9.orig/astroquery/conftest.py astroquery-0.3.9/astroquery/conftest.py +--- astroquery-0.3.9.orig/astroquery/conftest.py 2018-11-27 14:51:16.000000000 +0100 ++++ astroquery-0.3.9/astroquery/conftest.py 2019-07-23 18:19:17.000000000 +0200 +@@ -5,15 +5,20 @@ + # by importing them here in conftest.py they are discoverable by py.test + # no matter how it is invoked within the source tree. + +-from astropy.tests.pytest_plugins import (PYTEST_HEADER_MODULES, +- enable_deprecations_as_exceptions, +- TESTED_VERSIONS) ++from astropy.version import version as astropy_version + +-try: +- packagename = os.path.basename(os.path.dirname(__file__)) +- TESTED_VERSIONS[packagename] = version.version +-except NameError: +- pass ++if astropy_version < '3.0': ++ # With older versions of Astropy, we actually need to import the pytest ++ # plugins themselves in order to make them discoverable by pytest. ++ from astropy.tests.pytest_plugins import * ++else: ++ # As of Astropy 3.0, the pytest plugins provided by Astropy are ++ # automatically made available when Astropy is installed. This means it's ++ # not necessary to import them here, but we still need to import global ++ # variables that are used for configuration. ++ from astropy.tests.plugins.display import PYTEST_HEADER_MODULES, TESTED_VERSIONS ++ ++from astropy.tests.helper import enable_deprecations_as_exceptions + + # Add astropy to test header information and remove unused packages. + # Pytest header customisation was introduced in astropy 1.0. +@@ -36,12 +41,17 @@ + # The warnings_to_ignore_by_pyver parameter was added in astropy 2.0 + enable_deprecations_as_exceptions(modules_to_ignore_on_import=['requests']) + ++# add '_testrun' to the version name so that the user-agent indicates that ++# it's being run in a test ++from . import version ++version.version += '_testrun' ++ ++ + # This is to figure out the affiliated package version, rather than + # using Astropy's +-try: +- from .version import version +-except ImportError: +- version = 'dev' ++from .version import version, astropy_helpers_version ++ + + packagename = os.path.basename(os.path.dirname(__file__)) + TESTED_VERSIONS[packagename] = version ++TESTED_VERSIONS['astropy_helpers'] = astropy_helpers_version diff --git a/pkgs/development/python-modules/astroquery/default.nix b/pkgs/development/python-modules/astroquery/default.nix index b2771505a6637..7245b5662080a 100644 --- a/pkgs/development/python-modules/astroquery/default.nix +++ b/pkgs/development/python-modules/astroquery/default.nix @@ -6,21 +6,42 @@ , keyring , beautifulsoup4 , html5lib +, pytest +, pytest-astropy +, astropy-helpers }: buildPythonPackage rec { pname = "astroquery"; version = "0.3.9"; - doCheck = false; # Tests require the pytest-astropy package - src = fetchPypi { inherit pname version; sha256 = "0zw3xp2rfc6h2v569iqsyvzhfnzp7bfjb7jrj61is1hrqw1cqjrb"; }; + # Fix tests using conftest.py from HEAD in the upstream GitHub + # repository. + patches = [ ./conftest-astropy-3-fix.patch ]; + propagatedBuildInputs = [ astropy requests keyring beautifulsoup4 html5lib ]; + nativeBuildInputs = [ astropy-helpers ]; + + checkInputs = [ pytest pytest-astropy ]; + + # Disable automatic update of the astropy-helper module + postPatch = '' + substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False" + ''; + + # Tests must be run in the build directory. The tests create files + # in $HOME/.astropy so we need to set HOME to $TMPDIR. + checkPhase = '' + cd build/lib + HOME=$TMPDIR pytest + ''; + meta = with pkgs.lib; { description = "Functions and classes to access online data resources"; homepage = "https://astroquery.readthedocs.io/"; diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix new file mode 100644 index 0000000000000..89431d8b52f84 --- /dev/null +++ b/pkgs/development/python-modules/fastapi/default.nix @@ -0,0 +1,40 @@ +{ lib +, buildPythonPackage +, fetchPypi +, uvicorn +, starlette +, pydantic +, python +, isPy3k +, which +}: + +buildPythonPackage rec { + pname = "fastapi"; + version = "0.33.0"; + disabled = !isPy3k; + + src = fetchPypi { + inherit pname version; + sha256 = "1mc8ljfk6xyn2cq725s8hgapp62z5mylzw9akvkhwwz3bh8m5a7f"; + }; + + propagatedBuildInputs = [ + uvicorn + starlette + pydantic + ]; + + patches = [ ./setup.py.patch ]; + + checkPhase = '' + ${python.interpreter} -c "from fastapi import FastAPI; app = FastAPI()" + ''; + + meta = with lib; { + homepage = "https://github.com/tiangolo/fastapi"; + description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production"; + license = licenses.mit; + maintainers = with maintainers; [ wd15 ]; + }; +} diff --git a/pkgs/development/python-modules/fastapi/setup.py.patch b/pkgs/development/python-modules/fastapi/setup.py.patch new file mode 100644 index 0000000000000..43661343d7445 --- /dev/null +++ b/pkgs/development/python-modules/fastapi/setup.py.patch @@ -0,0 +1,13 @@ +diff --git a/setup.py b/setup.py +index ccc3d2b..77ce446 100644 +--- a/setup.py ++++ b/setup.py +@@ -10,7 +10,7 @@ package_data = \ + {'': ['*']} + + install_requires = \ +-['starlette >=0.11.1,<=0.12.0', 'pydantic >=0.30,<=0.30.0'] ++['starlette >=0.11.1', 'pydantic >=0.30'] + + extras_require = \ + {'all': ['requests', diff --git a/pkgs/development/python-modules/pydantic/default.nix b/pkgs/development/python-modules/pydantic/default.nix new file mode 100644 index 0000000000000..9b713827199b5 --- /dev/null +++ b/pkgs/development/python-modules/pydantic/default.nix @@ -0,0 +1,51 @@ +{ lib +, buildPythonPackage +, fetchPypi +, ujson +, email_validator +, typing-extensions +, python +, isPy3k +}: + +buildPythonPackage rec { + pname = "pydantic"; + version = "0.31"; + disabled = !isPy3k; + + src = fetchPypi { + inherit pname version; + sha256 = "0x9xc5hpyrlf05dc4bx9f7v51fahxcahkvh0ij8ibay15nwli53d"; + }; + + propagatedBuildInputs = [ + ujson + email_validator + typing-extensions + ]; + + checkPhase = '' + ${python.interpreter} -c """ +from datetime import datetime +from typing import List +from pydantic import BaseModel + +class User(BaseModel): + id: int + name = 'John Doe' + signup_ts: datetime = None + friends: List[int] = [] + +external_data = {'id': '123', 'signup_ts': '2017-06-01 12:22', 'friends': [1, '2', b'3']} +user = User(**external_data) +assert user.id is "123" +""" + ''; + + meta = with lib; { + homepage = "https://github.com/samuelcolvin/pydantic"; + description = "Data validation and settings management using Python type hinting"; + license = licenses.mit; + maintainers = with maintainers; [ wd15 ]; + }; +} diff --git a/pkgs/development/python-modules/pyregion/default.nix b/pkgs/development/python-modules/pyregion/default.nix index dda3a3cd161a7..a2b0423e55842 100644 --- a/pkgs/development/python-modules/pyregion/default.nix +++ b/pkgs/development/python-modules/pyregion/default.nix @@ -1,18 +1,20 @@ { lib , buildPythonPackage , fetchPypi +, fetchpatch , pyparsing , numpy , cython , astropy +, astropy-helpers +, pytest +, pytest-astropy }: buildPythonPackage rec { pname = "pyregion"; version = "2.0"; - doCheck = false; # tests require pytest-astropy - src = fetchPypi { inherit pname version; sha256 = "a8ac5f764b53ec332f6bc43f6f2193ca13e8b7d5a3fb2e20ced6b2ea42a9d094"; @@ -25,6 +27,30 @@ buildPythonPackage rec { astropy ]; + # Upstream patch needed for the test to pass + patches = [ + (fetchpatch { + name = "conftest-astropy-3-fix.patch"; + url = "https://github.com/astropy/pyregion/pull/136.patch"; + sha256 = "13yxjxiqnhjy9gh24hvv6pnwx7qic2mcx3ccr1igjrc3f881d59m"; + }) + ]; + + nativeBuildInputs = [ astropy-helpers ]; + + checkInputs = [ pytest pytest-astropy ]; + + # Disable automatic update of the astropy-helper module + postPatch = '' + substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False" + ''; + + # Tests must be run in the build directory + checkPhase = '' + cd build/lib.* + pytest + ''; + meta = with lib; { description = "Python parser for ds9 region files"; homepage = https://github.com/astropy/pyregion; diff --git a/pkgs/development/python-modules/pytest-arraydiff/default.nix b/pkgs/development/python-modules/pytest-arraydiff/default.nix index 4a59e22d13652..e01d26b530ecb 100644 --- a/pkgs/development/python-modules/pytest-arraydiff/default.nix +++ b/pkgs/development/python-modules/pytest-arraydiff/default.nix @@ -22,14 +22,10 @@ buildPythonPackage rec { pytest ]; - checkInputs = [ - pytest - astropy - ]; - - checkPhase = '' - pytest - ''; + # The tests requires astropy, which itself requires + # pytest-arraydiff. This causes an infinite recursion if the tests + # are enabled. + doCheck = false; meta = with lib; { description = "Pytest plugin to help with comparing array output from tests"; diff --git a/pkgs/development/python-modules/radio_beam/default.nix b/pkgs/development/python-modules/radio_beam/default.nix index 8b2fdc90f0493..09d815134ef4e 100644 --- a/pkgs/development/python-modules/radio_beam/default.nix +++ b/pkgs/development/python-modules/radio_beam/default.nix @@ -1,14 +1,17 @@ { lib , fetchPypi , buildPythonPackage -, astropy }: +, astropy +, pytest +, pytest-astropy +, astropy-helpers +, scipy +}: buildPythonPackage rec { pname = "radio_beam"; version = "0.3.1"; - doCheck = false; # the tests requires several pytest plugins that are not in nixpkgs - src = fetchPypi { inherit pname version; sha256 = "1wgd9dyz3pcc9ighkclb6qfyshwbg35s57lz6k62jhcxpvp8r5zb"; @@ -16,6 +19,21 @@ buildPythonPackage rec { propagatedBuildInputs = [ astropy ]; + nativeBuildInputs = [ astropy-helpers ]; + + # Disable automatic update of the astropy-helper module + postPatch = '' + substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False" + ''; + + checkInputs = [ pytest pytest-astropy scipy ]; + + # Tests must be run in the build directory + checkPhase = '' + cd build/lib + pytest + ''; + meta = { description = "Tools for Beam IO and Manipulation"; homepage = http://radio-astro-tools.github.io; diff --git a/pkgs/development/python-modules/rq/default.nix b/pkgs/development/python-modules/rq/default.nix new file mode 100644 index 0000000000000..8c91579d241a9 --- /dev/null +++ b/pkgs/development/python-modules/rq/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchPypi, buildPythonPackage, click, redis }: + +buildPythonPackage rec { + pname = "rq"; + version = "1.1.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "1fs03g1n1l8k03zwhkhckhsrnnsm3645sqby2nwh5gfij2kcc9sg"; + }; + + # test require a running redis rerver, which is something we can't do yet + doCheck = false; + + propagatedBuildInputs = [ click redis ]; + + meta = with stdenv.lib; { + description = "A simple, lightweight library for creating background jobs, and processing them"; + homepage = "https://github.com/nvie/rq/"; + maintainers = with maintainers; [ mrmebelman ]; + license = licenses.bsd2; + }; +} + diff --git a/pkgs/development/python-modules/simple-salesforce/default.nix b/pkgs/development/python-modules/simple-salesforce/default.nix new file mode 100644 index 0000000000000..1eacd25bededd --- /dev/null +++ b/pkgs/development/python-modules/simple-salesforce/default.nix @@ -0,0 +1,51 @@ +{ lib +, fetchFromGitHub +, buildPythonPackage +, requests +, pyopenssl +, cryptography +, idna +, mock +, isPy27 +, nose +, pytz +, responses +}: + +buildPythonPackage rec { + pname = "simple-salesforce"; + version = "0.74.3"; + + src = fetchFromGitHub { + owner = pname; + repo = pname; + rev = "v${version}"; + sha256 = "1n960xgrnmv20l31nm0im7pb4nfa83bmx4x4clqrh2jkpzq3ric0"; + }; + + propagatedBuildInputs = [ + requests + pyopenssl + cryptography + idna + ]; + + checkInputs = [ + nose + pytz + responses + ] ++ lib.optionals isPy27 [ mock ]; + + postPatch = '' + substituteInPlace setup.py \ + --replace "mock==1.0.1" "mock" + ''; + + meta = with lib; { + description = "A very simple Salesforce.com REST API client for Python"; + homepage = https://github.com/simple-salesforce/simple-salesforce; + license = licenses.asl20; + maintainers = with maintainers; [ costrouc ]; + }; + +} diff --git a/pkgs/development/python-modules/spectral-cube/default.nix b/pkgs/development/python-modules/spectral-cube/default.nix index 661bc6363f4f4..c28b249d192cd 100644 --- a/pkgs/development/python-modules/spectral-cube/default.nix +++ b/pkgs/development/python-modules/spectral-cube/default.nix @@ -3,20 +3,36 @@ , buildPythonPackage , astropy , radio_beam -, pytest }: +, pytest +, pytest-astropy +, astropy-helpers +}: buildPythonPackage rec { pname = "spectral-cube"; version = "0.4.4"; - doCheck = false; # the tests requires several pytest plugins that are not in nixpkgs - src = fetchPypi { inherit pname version; sha256 = "9051ede204b1e25b6358b5e0e573b624ec0e208c24eb03a7ed4925b745c93b5e"; }; - propagatedBuildInputs = [ astropy radio_beam pytest ]; + propagatedBuildInputs = [ astropy radio_beam ]; + + nativeBuildInputs = [ astropy-helpers ]; + + checkInputs = [ pytest pytest-astropy ]; + + # Disable automatic update of the astropy-helper module + postPatch = '' + substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False" + ''; + + # Tests must be run in the build directory + checkPhase = '' + cd build/lib + pytest + ''; meta = { description = "Library for reading and analyzing astrophysical spectral data cubes"; diff --git a/pkgs/development/python-modules/starlette/default.nix b/pkgs/development/python-modules/starlette/default.nix new file mode 100644 index 0000000000000..6e2bd8250b66c --- /dev/null +++ b/pkgs/development/python-modules/starlette/default.nix @@ -0,0 +1,51 @@ +{ lib +, buildPythonPackage +, fetchPypi +, aiofiles +, graphene +, itsdangerous +, jinja2 +, pyyaml +, requests +, ujson +, pytest +, python +, uvicorn +, isPy27 +}: + +buildPythonPackage rec { + pname = "starlette"; + version = "0.12.4"; + disabled = isPy27; + + src = fetchPypi { + inherit pname version; + sha256 = "1m7qf4g5dn7n36406zbqsag71nmwp2dz91yxpplm7h7wiw2xxw93"; + }; + + propagatedBuildInputs = [ + aiofiles + graphene + itsdangerous + jinja2 + pyyaml + requests + ujson + uvicorn + ]; + + checkPhase = '' + ${python.interpreter} -c """ +from starlette.applications import Starlette +app = Starlette(debug=True) +""" + ''; + + meta = with lib; { + homepage = https://www.starlette.io/; + description = "The little ASGI framework that shines"; + license = licenses.bsd3; + maintainers = with maintainers; [ wd15 ]; + }; +} diff --git a/pkgs/development/python-modules/uvicorn/default.nix b/pkgs/development/python-modules/uvicorn/default.nix new file mode 100644 index 0000000000000..1bf0d1c54f069 --- /dev/null +++ b/pkgs/development/python-modules/uvicorn/default.nix @@ -0,0 +1,44 @@ +{ lib +, buildPythonPackage +, fetchPypi +, click +, h11 +, httptools +, uvloop +, websockets +, wsproto +, isPy27 +}: + +buildPythonPackage rec { + pname = "uvicorn"; + version = "0.8.4"; + disabled = isPy27; + + src = fetchPypi { + inherit pname version; + sha256 = "1l8rfm30inx9pma893i7sby9h7y910k58841zqaajksn563b882k"; + }; + + propagatedBuildInputs = [ + click + h11 + httptools + uvloop + websockets + wsproto + ]; + + checkPhase = '' + $out/bin/uvicorn --help + ''; + + patches = [ ./setup.patch ]; + + meta = with lib; { + homepage = https://www.uvicorn.org/; + description = "The lightning-fast ASGI server"; + license = licenses.bsd3; + maintainers = with maintainers; [ wd15 ]; + }; +} diff --git a/pkgs/development/python-modules/uvicorn/setup.patch b/pkgs/development/python-modules/uvicorn/setup.patch new file mode 100644 index 0000000000000..f1d974b42d93a --- /dev/null +++ b/pkgs/development/python-modules/uvicorn/setup.patch @@ -0,0 +1,13 @@ +diff --git a/setup.py b/setup.py +index 802cda4..561abf4 100755 +--- a/setup.py ++++ b/setup.py +@@ -42,7 +42,7 @@ env_marker = ( + + requirements = [ + "click==7.*", +- "h11==0.8.*", ++ "h11", + "websockets==7.*", + "httptools==0.0.13 ;" + env_marker, + "uvloop==0.12.* ;" + env_marker, diff --git a/pkgs/development/tools/misc/linuxkit/default.nix b/pkgs/development/tools/misc/linuxkit/default.nix index 27f49ebcf38ca..5dd6f422713ba 100644 --- a/pkgs/development/tools/misc/linuxkit/default.nix +++ b/pkgs/development/tools/misc/linuxkit/default.nix @@ -1,29 +1,29 @@ { lib, buildGoPackage, fetchFromGitHub }: buildGoPackage rec { - name = "linuxkit-${version}"; - version = "2017-07-08"; - rev = "8ca19a84d5281b1b15c7a48c21e5786943b47f1c"; + pname = "linuxkit"; + version = "0.7"; goPackagePath = "github.com/linuxkit/linuxkit"; src = fetchFromGitHub { owner = "linuxkit"; repo = "linuxkit"; - inherit rev; - sha256 = "150y7hnjhi81iik7np27y5466ldaackq72mpi7vmybbl7vr1wgw4"; + rev = "v${version}"; + sha256 = "1mnaqzd4r0fdgjhjvbi4p0wwvz69i82b33iizz81wvkr1mkakgl2"; }; subPackages = [ "src/cmd/linuxkit" ]; preBuild = '' - buildFlagsArray+=("-ldflags" "-X main.GitCommit=${builtins.substring 0 7 rev} -X main.Version=0.0.0") + buildFlagsArray+=("-ldflags" "-X github.com/linuxkit/linuxkit/src/cmd/linuxkit/version.Version=${src.rev}") ''; - meta = { + meta = with lib; { description = "A toolkit for building secure, portable and lean operating systems for containers"; - license = lib.licenses.asl20; + license = licenses.asl20; homepage = https://github.com/linuxkit/linuxkit; - platforms = lib.platforms.unix; + maintainers = [ maintainers.nicknovitski ]; + platforms = platforms.unix; }; } diff --git a/pkgs/development/tools/rust/bindgen/default.nix b/pkgs/development/tools/rust/bindgen/default.nix index 2f23cbba6950f..df782d935157f 100644 --- a/pkgs/development/tools/rust/bindgen/default.nix +++ b/pkgs/development/tools/rust/bindgen/default.nix @@ -3,13 +3,13 @@ rustPlatform.buildRustPackage rec { pname = "rust-bindgen"; - version = "0.50.0"; + version = "0.51.0"; src = fetchFromGitHub { owner = "rust-lang"; repo = pname; rev = "v${version}"; - sha256 = "1vm7g7z15kmk7jkhhkb3477snwcww5dgdy349b52fgjjzp75h7z7"; + sha256 = "1hlak8b57pndmdfkpfl17xxc91a6b239698bcm4yzlvliyscjgz1"; }; cargoSha256 = "1311d0wjjj99m59zd2n6r4aq6lwbbpyj54ha2z9g4yd1hn344r91"; diff --git a/pkgs/development/tools/vagrant/default.nix b/pkgs/development/tools/vagrant/default.nix index 7b47cf0aa0891..324e22d491e2c 100644 --- a/pkgs/development/tools/vagrant/default.nix +++ b/pkgs/development/tools/vagrant/default.nix @@ -68,6 +68,9 @@ in buildRubyGem rec { mkdir -p "$out/vagrant-plugins/plugins.d" echo '{}' > "$out/vagrant-plugins/plugins.json" + + mkdir -p $out/share/bash-completion/completions/ + cp -av contrib/bash/completion.sh $out/share/bash-completion/completions/vagrant '' + lib.optionalString withLibvirt '' substitute ${./vagrant-libvirt.json.in} $out/vagrant-plugins/plugins.d/vagrant-libvirt.json \ diff --git a/pkgs/games/harmonist/default.nix b/pkgs/games/harmonist/default.nix index cca17ceee5af5..a391a73069a6a 100644 --- a/pkgs/games/harmonist/default.nix +++ b/pkgs/games/harmonist/default.nix @@ -3,13 +3,13 @@ buildGoPackage rec { pname = "harmonist"; - version = "0.1"; + version = "0.2"; goPackagePath = "git.tuxfamily.org/harmonist/harmonist.git"; src = fetchurl { url = "https://download.tuxfamily.org/harmonist/releases/${pname}-${version}.tar.gz"; - sha256 = "1cvhfvscd80qz95pqkblnyjhz1l87k7y6vmzyzap893mpjk9a3pm"; + sha256 = "1r78v312x2k1v9rkxkxffs5vxn9sc0dcszm66yw10p7qy9lyvicd"; }; goDeps = ./deps.nix; diff --git a/pkgs/games/harmonist/deps.nix b/pkgs/games/harmonist/deps.nix index a785567adddf8..c65c0e3399841 100644 --- a/pkgs/games/harmonist/deps.nix +++ b/pkgs/games/harmonist/deps.nix @@ -4,8 +4,8 @@ fetch = { type = "git"; url = "https://github.com/nsf/termbox-go"; - rev = "288510b9734e30e7966ec2f22b87c5f8e67345e3"; - sha256 = "0hdyisfaf8yb55h3p03p4sbq19546mp9fy28f2kn659mycmhxqk4"; + rev = "eeb6cd0a176293eeb2c69270d83835972e3567bc"; + sha256 = "14695dk07dj41s5f74l3wdf3xjj2flq4fq016i98f5xijh5f64i3"; }; } { diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix index 6891b6ce2c25a..9ab4de7bf85b1 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.19.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix @@ -3,7 +3,7 @@ with stdenv.lib; buildLinux (args // rec { - version = "4.19.60"; + version = "4.19.61"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "0ibayrvrnw2lw7si78vdqnr20mm1d3z0g6a0ykndvgn5vdax5x9a"; + sha256 = "1scwb6ynr93k4a1vzpw2x1hzafhfs06ckf9v6fk1zvkh8jw1rc5c"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-5.1.nix b/pkgs/os-specific/linux/kernel/linux-5.1.nix index 1f4663452dd53..6ff9f5163d309 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.1.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.1.nix @@ -3,7 +3,7 @@ with stdenv.lib; buildLinux (args // rec { - version = "5.1.19"; + version = "5.1.20"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "1hk8dhp402vr74wq22j66yqr7iik0mcrahpmmq3dcl657vw1n8qf"; + sha256 = "039i5b41dv930kmq8jwskcwjc6r26h9xy7jgbi6aggn0ycyig21d"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-5.2.nix b/pkgs/os-specific/linux/kernel/linux-5.2.nix index 0b44c6adfe910..3585a52311985 100644 --- a/pkgs/os-specific/linux/kernel/linux-5.2.nix +++ b/pkgs/os-specific/linux/kernel/linux-5.2.nix @@ -3,7 +3,7 @@ with stdenv.lib; buildLinux (args // rec { - version = "5.2.2"; + version = "5.2.3"; # modDirVersion needs to be x.y.z, will automatically add .0 if needed modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "173da67d51qcjwrczqsfd6g9phzazqzr11xfxwlf54ckd6117ng5"; + sha256 = "018fiz8bycglh5b031b710zllv2s5w017ylq0j30923p744n0g3m"; }; } // (args.argsOverride or {})) diff --git a/pkgs/servers/blockbook/default.nix b/pkgs/servers/blockbook/default.nix index 6a1d8a75cc1ac..b95c3d41b3964 100644 --- a/pkgs/servers/blockbook/default.nix +++ b/pkgs/servers/blockbook/default.nix @@ -1,4 +1,5 @@ -{ buildGoPackage +{ stdenv +, buildGoPackage , lib , fetchFromGitHub , rocksdb @@ -30,7 +31,9 @@ buildGoPackage rec { nativeBuildInputs = [ pkg-config packr ]; - preBuild = '' + preBuild = lib.optionalString stdenv.isDarwin '' + ulimit -n 8192 + '' + '' export CGO_CFLAGS="-I${rocksdb}/include" export CGO_LDFLAGS="-L${rocksdb}/lib -lrocksdb -lstdc++ -lm -lz -lbz2 -lsnappy -llz4" packr clean && packr diff --git a/pkgs/servers/mail/dovecot/2.2.x-module_dir.patch b/pkgs/servers/mail/dovecot/2.2.x-module_dir.patch index 1914933c558c8..422bfad92e6ac 100644 --- a/pkgs/servers/mail/dovecot/2.2.x-module_dir.patch +++ b/pkgs/servers/mail/dovecot/2.2.x-module_dir.patch @@ -1,8 +1,8 @@ diff --git a/src/auth/main.c b/src/auth/main.c -index 5a87c57..74bff52 100644 +index 2dbf9e1..b1e778a 100644 --- a/src/auth/main.c +++ b/src/auth/main.c -@@ -194,7 +194,7 @@ static void main_preinit(void) +@@ -192,7 +192,7 @@ static void main_preinit(void) mod_set.debug = global_auth_settings->debug; mod_set.filter_callback = auth_module_filter; @@ -11,7 +11,7 @@ index 5a87c57..74bff52 100644 module_dir_init(modules); if (!worker) -@@ -225,7 +225,7 @@ void auth_module_load(const char *names) +@@ -223,7 +223,7 @@ void auth_module_load(const char *names) mod_set.debug = global_auth_settings->debug; mod_set.ignore_missing = TRUE; @@ -21,19 +21,19 @@ index 5a87c57..74bff52 100644 module_dir_init(modules); } diff --git a/src/config/all-settings.c b/src/config/all-settings.c -index de223a5..2df2d21 100644 +index 4a2ab53..5057d63 100644 --- a/src/config/all-settings.c +++ b/src/config/all-settings.c -@@ -836,7 +836,7 @@ static const struct mail_user_settings mail_user_default_settings = { +@@ -1079,7 +1079,7 @@ static const struct mail_user_settings mail_user_default_settings = { .last_valid_gid = 0, .mail_plugins = "", - .mail_plugin_dir = MODULEDIR, + .mail_plugin_dir = "/etc/dovecot/modules", - .mail_log_prefix = "%s(%u): ", + .mail_log_prefix = "%s(%u)<%{pid}><%{session}>: ", -@@ -3545,7 +3545,7 @@ const struct doveadm_settings doveadm_default_settings = { +@@ -4723,7 +4723,7 @@ const struct doveadm_settings doveadm_default_settings = { .base_dir = PKG_RUNDIR, .libexec_dir = PKG_LIBEXECDIR, .mail_plugins = "", @@ -43,12 +43,12 @@ index de223a5..2df2d21 100644 .auth_socket_path = "auth-userdb", .doveadm_socket_path = "doveadm-server", diff --git a/src/config/config-parser.c b/src/config/config-parser.c -index 2a5009a..134f92b 100644 +index 6894123..07e9fec 100644 --- a/src/config/config-parser.c +++ b/src/config/config-parser.c -@@ -1047,7 +1047,7 @@ void config_parse_load_modules(void) +@@ -1077,7 +1077,7 @@ void config_parse_load_modules(void) - memset(&mod_set, 0, sizeof(mod_set)); + i_zero(&mod_set); mod_set.abi_version = DOVECOT_ABI_VERSION; - modules = module_dir_load(CONFIG_MODULE_DIR, NULL, &mod_set); + modules = module_dir_load("/etc/dovecot/modules/settings", NULL, &mod_set); @@ -56,10 +56,10 @@ index 2a5009a..134f92b 100644 i_array_init(&new_roots, 64); diff --git a/src/dict/main.c b/src/dict/main.c -index e6c945e..06ad6c5 100644 +index 722ed02..4ed12ae 100644 --- a/src/dict/main.c +++ b/src/dict/main.c -@@ -62,7 +62,7 @@ static void main_init(void) +@@ -104,7 +104,7 @@ static void main_init(void) mod_set.abi_version = DOVECOT_ABI_VERSION; mod_set.require_init_funcs = TRUE; @@ -69,10 +69,10 @@ index e6c945e..06ad6c5 100644 /* Register only after loading modules. They may contain SQL drivers, diff --git a/src/doveadm/doveadm-settings.c b/src/doveadm/doveadm-settings.c -index df12284..19c18da 100644 +index 88da40c..141ed05 100644 --- a/src/doveadm/doveadm-settings.c +++ b/src/doveadm/doveadm-settings.c -@@ -81,7 +81,7 @@ const struct doveadm_settings doveadm_default_settings = { +@@ -86,7 +86,7 @@ const struct doveadm_settings doveadm_default_settings = { .base_dir = PKG_RUNDIR, .libexec_dir = PKG_LIBEXECDIR, .mail_plugins = "", @@ -82,7 +82,7 @@ index df12284..19c18da 100644 .auth_socket_path = "auth-userdb", .doveadm_socket_path = "doveadm-server", diff --git a/src/lib-fs/fs-api.c b/src/lib-fs/fs-api.c -index b50fbe0..ace3aff 100644 +index a939f61..846cf86 100644 --- a/src/lib-fs/fs-api.c +++ b/src/lib-fs/fs-api.c @@ -114,7 +114,7 @@ static void fs_class_try_load_plugin(const char *driver) @@ -95,10 +95,10 @@ index b50fbe0..ace3aff 100644 module_dir_init(fs_modules); diff --git a/src/lib-ssl-iostream/iostream-ssl.c b/src/lib-ssl-iostream/iostream-ssl.c -index a0659ab..dba3729 100644 +index f857ec9..0d1023b 100644 --- a/src/lib-ssl-iostream/iostream-ssl.c +++ b/src/lib-ssl-iostream/iostream-ssl.c -@@ -34,7 +34,7 @@ static int ssl_module_load(const char **error_r) +@@ -53,7 +53,7 @@ int ssl_module_load(const char **error_r) mod_set.abi_version = DOVECOT_ABI_VERSION; mod_set.setting_name = "<built-in lib-ssl-iostream lookup>"; mod_set.require_init_funcs = TRUE; @@ -108,15 +108,28 @@ index a0659ab..dba3729 100644 &mod_set, error_r) < 0) return -1; diff --git a/src/lib-storage/mail-storage-settings.c b/src/lib-storage/mail-storage-settings.c -index e2233bf..bbf981e 100644 +index b314b52..7055094 100644 --- a/src/lib-storage/mail-storage-settings.c +++ b/src/lib-storage/mail-storage-settings.c -@@ -274,7 +274,7 @@ static const struct mail_user_settings mail_user_default_settings = { +@@ -337,7 +337,7 @@ static const struct mail_user_settings mail_user_default_settings = { .last_valid_gid = 0, .mail_plugins = "", - .mail_plugin_dir = MODULEDIR, + .mail_plugin_dir = "/etc/dovecot/modules", - .mail_log_prefix = "%s(%u): ", + .mail_log_prefix = "%s(%u)<%{pid}><%{session}>: ", +diff --git a/src/lmtp/lmtp-settings.c b/src/lmtp/lmtp-settings.c +index 1666ec9..8a27200 100644 +--- a/src/lmtp/lmtp-settings.c ++++ b/src/lmtp/lmtp-settings.c +@@ -89,7 +89,7 @@ static const struct lmtp_settings lmtp_default_settings = { + .login_trusted_networks = "", + + .mail_plugins = "", +- .mail_plugin_dir = MODULEDIR, ++ .mail_plugin_dir = "/etc/dovecot/modules", + }; + + static const struct setting_parser_info *lmtp_setting_dependencies[] = { diff --git a/pkgs/servers/mail/dovecot/default.nix b/pkgs/servers/mail/dovecot/default.nix index 17286f8ec2410..69c1a85760bcc 100644 --- a/pkgs/servers/mail/dovecot/default.nix +++ b/pkgs/servers/mail/dovecot/default.nix @@ -9,7 +9,7 @@ }: stdenv.mkDerivation rec { - name = "dovecot-2.3.7"; + name = "dovecot-2.3.7.1"; nativeBuildInputs = [ perl pkgconfig ]; buildInputs = @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "https://dovecot.org/releases/2.3/${name}.tar.gz"; - sha256 = "1al382ykm94if5agasb9h2442a8s7wn43hlwh292ir1rhnp5dq8i"; + sha256 = "1hq333vj4px4xa9djl8c1v3c8rac98v2mrb9vx1wisg6frpiv9f5"; }; enableParallelBuilding = true; diff --git a/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix b/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix index 6a812863f0523..30c6f2f44dd55 100644 --- a/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix +++ b/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "dovecot-pigeonhole-${version}"; - version = "0.5.6"; + version = "0.5.7.1"; src = fetchurl { url = "https://pigeonhole.dovecot.org/releases/2.3/dovecot-2.3-pigeonhole-${version}.tar.gz"; - sha256 = "1f7m2213w4hvqr3lvr03bv4lh92k35gxl01c2x8q8akk7viffbvw"; + sha256 = "0a10mam68pmdh3fw8fnv5jff6xj1k770hvadym2c39vm3x6b4w1j"; }; buildInputs = [ dovecot openssl ]; diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix index 41357f6655075..07c7f52071717 100644 --- a/pkgs/servers/matrix-synapse/default.nix +++ b/pkgs/servers/matrix-synapse/default.nix @@ -23,11 +23,11 @@ let in buildPythonApplication rec { pname = "matrix-synapse"; - version = "1.1.0"; + version = "1.2.1"; src = fetchPypi { inherit pname version; - sha256 = "0bmcpk3b6hlix2dzkwzlqy97ypljipr4bw8rnxm8rlihpd6scrjq"; + sha256 = "0pr17n52vdq490q6c282nqnn51j5k0lf7mzaazpxjy4q86pxdfy5"; }; patches = [ diff --git a/pkgs/servers/serviio/default.nix b/pkgs/servers/serviio/default.nix index 5c4a354314367..2ab3bf6668571 100644 --- a/pkgs/servers/serviio/default.nix +++ b/pkgs/servers/serviio/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "serviio-${version}"; - version = "1.10.1"; + version = "2.0"; src = fetchurl { url = "http://download.serviio.org/releases/${name}-linux.tar.gz"; - sha256 = "0gxa29mzwvr0xvvi2qizyvf68ma5s3405q58f1pcgadbb68jwx6q"; + sha256 = "1zq1ax0pdxfn0nw0vm7s23ik47w8nwh1n83a7yka8dnknxjf5nng"; }; phases = ["unpackPhase" "installPhase"]; diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 1da5c31c25f6a..80b0addd6ec8b 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -1,7 +1,7 @@ { abiCompat ? null, stdenv, makeWrapper, fetchurl, fetchpatch, buildPackages, automake, autoconf, gettext, libiconv, libtool, intltool, - freetype, tradcpp, fontconfig, meson, ninja, + freetype, tradcpp, fontconfig, meson, ninja, ed, libGL, spice-protocol, zlib, libGLU, dbus, libunwind, libdrm, mesa, udev, bootstrap_cmds, bison, flex, clangStdenv, autoreconfHook, mcpp, epoxy, openssl, pkgconfig, llvm_6, @@ -423,6 +423,85 @@ self: super: ''; }); + # xkeyboardconfig variant extensible with custom layouts. + # See nixos/modules/services/x11/extra-layouts.nix + xkeyboardconfig_custom = { layouts ? { } }: + let + patchIn = name: layout: + with layout; + with lib; + '' + # install layout files + ${optionalString (compatFile != null) "cp '${compatFile}' 'compat/${name}'"} + ${optionalString (geometryFile != null) "cp '${geometryFile}' 'geometry/${name}'"} + ${optionalString (keycodesFile != null) "cp '${keycodesFile}' 'keycodes/${name}'"} + ${optionalString (symbolsFile != null) "cp '${symbolsFile}' 'symbols/${name}'"} + ${optionalString (typesFile != null) "cp '${typesFile}' 'types/${name}'"} + + # patch makefiles + for type in compat geometry keycodes symbols types; do + if ! test -f "$type/${name}"; then + continue + fi + test "$type" = geometry && type_name=geom || type_name=$type + ${ed}/bin/ed -v $type/Makefile.am <<EOF + /''${type_name}_DATA = + a + ${name} \\ + . + w + EOF + ${ed}/bin/ed -v $type/Makefile.in <<EOF + /''${type_name}_DATA = + a + ${name} \\ + . + w + EOF + done + + # add model description + ${ed}/bin/ed -v rules/base.xml <<EOF + /<\/modelList> + - + a + <model> + <configItem> + <name>${name}</name> + <_description>${layout.description}</_description> + <vendor>${layout.description}</vendor> + </configItem> + </model> + . + w + EOF + + # add layout description + ${ed}/bin/ed -v rules/base.xml <<EOF + /<\/layoutList> + - + a + <layout> + <configItem> + <name>${name}</name> + <_shortDescription>${name}</_shortDescription> + <_description>${layout.description}</_description> + <languageList> + ${concatMapStrings (lang: "<iso639Id>${lang}</iso639Id>\n") layout.languages} + </languageList> + </configItem> + <variantList/> + </layout> + . + w + EOF + ''; + in + self.xkeyboardconfig.overrideAttrs (old: { + buildInputs = old.buildInputs ++ [ automake ]; + postPatch = with lib; concatStrings (mapAttrsToList patchIn layouts); + }); + xload = super.xload.overrideAttrs (attrs: { nativeBuildInputs = attrs.nativeBuildInputs ++ [ gettext ]; }); diff --git a/pkgs/tools/X11/dragon-drop/default.nix b/pkgs/tools/X11/dragon-drop/default.nix index 232c4a636fb83..28f7edcfd043e 100644 --- a/pkgs/tools/X11/dragon-drop/default.nix +++ b/pkgs/tools/X11/dragon-drop/default.nix @@ -1,15 +1,14 @@ - { stdenv, gtk, pkgconfig, fetchFromGitHub }: stdenv.mkDerivation rec { name = "dragon-drop-${version}"; - version = "git-2014-08-14"; + version = "1.1.0"; src = fetchFromGitHub { owner = "mwh"; repo = "dragon"; - rev = "a49d775dd9d43bd22cee4c1fd3e32ede0dc2e9c2"; - sha256 = "03vdbmqlbmk3j2ay1wy6snrm2y27faxz7qv81vyzjzngj345095a"; + rev = "v${version}"; + sha256 = "0iwlrcqvbjshpwvg0gsqdqcjv48q1ary59pm74zzjnr8v9470smr"; }; nativeBuildInputs = [ pkgconfig ]; @@ -23,7 +22,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "Simple drag-and-drop source/sink for X"; homepage = https://github.com/mwh/dragon; - maintainers = with maintainers; [ jb55 ]; + maintainers = with maintainers; [ jb55 markus1189 ]; license = licenses.gpl3; platforms = with platforms; unix; }; diff --git a/pkgs/tools/audio/mpd-mpris/default.nix b/pkgs/tools/audio/mpd-mpris/default.nix new file mode 100644 index 0000000000000..a4cea2b07ed61 --- /dev/null +++ b/pkgs/tools/audio/mpd-mpris/default.nix @@ -0,0 +1,33 @@ +{ stdenv, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "mpd-mpris"; + version = "0.2.3"; + + src = fetchFromGitHub { + owner = "natsukagami"; + repo = pname; + rev = "v${version}"; + sha256 = "19sz1ykdzradhpdwdvvxh9scp5sv2i072qircs0q4374cdgccfbb"; + }; + + modSha256 = "1a95kfy8w952269x4llbl0afyxr5fjkg30mxsn81zdh5wr8gabwh"; + + subPackages = [ "cmd/${pname}" ]; + + postInstall = '' + substituteInPlace mpd-mpris.service \ + --replace /usr/bin $out/bin + mkdir -p $out/lib/systemd/user + cp mpd-mpris.service $out/lib/systemd/user + ''; + + meta = with stdenv.lib; { + description = "An implementation of the MPRIS protocol for MPD"; + homepage = "https://github.com/natsukagami/mpd-mpris"; + license = licenses.mit; + maintainers = with maintainers; [ doronbehar ]; + platforms = platforms.linux; + }; +} + diff --git a/pkgs/tools/misc/ethtool/default.nix b/pkgs/tools/misc/ethtool/default.nix index 963086b717a83..a6afa03a3f150 100644 --- a/pkgs/tools/misc/ethtool/default.nix +++ b/pkgs/tools/misc/ethtool/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "ethtool-${version}"; - version = "5.1"; + version = "5.2"; src = fetchurl { url = "mirror://kernel/software/network/ethtool/${name}.tar.xz"; - sha256 = "11rkvb1nga9hdiycw0hjn6lh1sfy4p4yzcl4fw5jjrb5xhgsrzk5"; + sha256 = "01bq2g7amycfp4syzcswz52pgphdgswklziqfjwnq3c6844dfpv6"; }; meta = with stdenv.lib; { diff --git a/pkgs/tools/networking/amass/default.nix b/pkgs/tools/networking/amass/default.nix index bd9cae1622444..73f54f7dbff71 100644 --- a/pkgs/tools/networking/amass/default.nix +++ b/pkgs/tools/networking/amass/default.nix @@ -5,16 +5,16 @@ buildGoModule rec { pname = "amass"; - version = "2.9.11"; + version = "3.0.25"; src = fetchFromGitHub { owner = "OWASP"; repo = "Amass"; - rev = version; - sha256 = "1mbxxj7cjypxdn80svgmq9yvzaj2x0y1lcbglzzmlqj3r0j265mr"; + rev = "v${version}"; + sha256 = "04vsahqmbs9rysdwyjq0zgwcn6dgdvkyz8lsp1g1p9d3amrgbqjy"; }; - modSha256 = "028ln760xaxlsk074x1i5fqi1334rw2bpz7fg520q6m13d9w86hw"; + modSha256 = "0kwi4pys08kszrh5kz64gs68k20y00v2zqh5hyrgpy9nivqrlj62"; outputs = [ "out" "wordlists" ]; @@ -37,9 +37,8 @@ buildGoModule rec { Amass ships with a set of wordlist (to be used with the amass -w flag) that are found under the wordlists output. ''; - homepage = https://www.owasp.org/index.php/OWASP_Amass_Project; + homepage = "https://www.owasp.org/index.php/OWASP_Amass_Project"; license = licenses.asl20; maintainers = with maintainers; [ kalbasit ]; - platforms = platforms.linux ++ platforms.darwin; }; } diff --git a/pkgs/tools/security/gopass/default.nix b/pkgs/tools/security/gopass/default.nix index b8be17e49967d..a0b1f28854b98 100644 --- a/pkgs/tools/security/gopass/default.nix +++ b/pkgs/tools/security/gopass/default.nix @@ -1,8 +1,8 @@ -{ stdenv, buildGoPackage, fetchFromGitHub, git, gnupg, xclip, makeWrapper }: +{ stdenv, buildGoPackage, fetchFromGitHub, git, gnupg, xclip, wl-clipboard, makeWrapper }: buildGoPackage rec { pname = "gopass"; - version = "1.8.5"; + version = "1.8.6"; goPackagePath = "github.com/gopasspw/gopass"; @@ -12,13 +12,14 @@ buildGoPackage rec { owner = "gopasspw"; repo = pname; rev = "v${version}"; - sha256 = "1mgc77j5b9pjf2ayd5c09ym6d8n1yia8yg87zw0b8fsh5wac41sl"; + sha256 = "0v3sx9hb03bdn4rvsv2r0jzif6p1rx47hrkpsbnwva31k396mck2"; }; wrapperPath = with stdenv.lib; makeBinPath ([ git gnupg xclip + wl-clipboard ]); postInstall = '' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 562600143b437..d9932678a9819 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -736,6 +736,8 @@ in container-linux-config-transpiler = callPackage ../development/tools/container-linux-config-transpiler { }; + ccextractor = callPackage ../applications/video/ccextractor { }; + cconv = callPackage ../tools/text/cconv { }; go-check = callPackage ../development/tools/check { }; @@ -1760,6 +1762,8 @@ in mpdris2 = callPackage ../tools/audio/mpdris2 { }; + mpd-mpris = callPackage ../tools/audio/mpd-mpris { }; + mq-cli = callPackage ../tools/system/mq-cli { }; nfdump = callPackage ../tools/networking/nfdump { }; @@ -6882,6 +6886,8 @@ in wml = callPackage ../development/web/wml { }; + wmc-mpris = callPackage ../applications/misc/web-media-controller { }; + wol = callPackage ../tools/networking/wol { }; wolf-shaper = callPackage ../applications/audio/wolf-shaper { }; @@ -17517,10 +17523,11 @@ in }; inherit (callPackage ../applications/virtualization/docker {}) - docker_18_09; + docker_18_09 + docker_19_03; - docker = docker_18_09; - docker-edge = docker_18_09; + docker = docker_19_03; + docker-edge = docker_19_03; docker-proxy = callPackage ../applications/virtualization/docker/proxy.nix { }; @@ -18574,11 +18581,8 @@ in super-productivity = callPackage ../applications/networking/super-productivity { }; - wlc = callPackage ../development/libraries/wlc { }; wlroots = callPackage ../development/libraries/wlroots { }; - orbment = callPackage ../applications/window-managers/orbment { }; - sway = callPackage ../applications/window-managers/sway { }; swaybg = callPackage ../applications/window-managers/sway/bg.nix { }; swayidle = callPackage ../applications/window-managers/sway/idle.nix { }; @@ -18588,11 +18592,6 @@ in pulseSupport = config.pulseaudio or false; }; - velox = callPackage ../applications/window-managers/velox { - stConf = config.st.conf or null; - stPatches = config.st.patches or null; - }; - i3 = callPackage ../applications/window-managers/i3 { xcb-util-cursor = if stdenv.isDarwin then xcb-util-cursor-HEAD else xcb-util-cursor; }; @@ -18924,6 +18923,12 @@ in kubectl = callPackage ../applications/networking/cluster/kubectl { }; + k9s = callPackage ../applications/networking/cluster/k9s { }; + + fluxctl = callPackage ../applications/networking/cluster/fluxctl { }; + + linkerd = callPackage ../applications/networking/cluster/linkerd { }; + kubernetes-helm = callPackage ../applications/networking/cluster/helm { }; kubetail = callPackage ../applications/networking/cluster/kubetail { } ; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d34aae045293d..9bb23598232aa 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1079,6 +1079,8 @@ in { rlp = callPackage ../development/python-modules/rlp { }; + rq = callPackage ../development/python-modules/rq { }; + rx = callPackage ../development/python-modules/rx { }; sabyenc = callPackage ../development/python-modules/sabyenc { }; @@ -1101,6 +1103,8 @@ in { simpleeval = callPackage ../development/python-modules/simpleeval { }; + simple-salesforce = callPackage ../development/python-modules/simple-salesforce { }; + singledispatch = callPackage ../development/python-modules/singledispatch { }; sip = callPackage ../development/python-modules/sip { }; @@ -6047,6 +6051,14 @@ in { aioesphomeapi = callPackage ../development/python-modules/aioesphomeapi { }; mwparserfromhell = callPackage ../development/python-modules/mwparserfromhell { }; + + starlette = callPackage ../development/python-modules/starlette { }; + + uvicorn = callPackage ../development/python-modules/uvicorn { }; + + pydantic = callPackage ../development/python-modules/pydantic { }; + + fastapi = callPackage ../development/python-modules/fastapi { }; }); in fix' (extends overrides packages) |