diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 5f5c5eab642..93533516660 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -3765,6 +3765,13 @@ githubId = 11006031; name = "Leo Maroni"; }; + emmabastas = { + email = "emma.bastas@protonmail.com"; + matrix = "@emmabastas:matrix.org"; + github = "emmabastas"; + githubId = 22533224; + name = "Emma Bastås"; + }; emmanuelrosa = { email = "emmanuelrosa@protonmail.com"; matrix = "@emmanuelrosa:matrix.org"; diff --git a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml index 810b8e12ac6..15c512bd74e 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml @@ -16,15 +16,8 @@ - - Nix has been updated from 2.3 to 2.8. This mainly brings - experimental support for Flakes, but also marks the - nix command as experimental which now has - to be enabled via the configuration explicitly. For more - information and instructions for upgrades, see the - Release - Notes. - +Nix has been updated from 2.3 to 2.8. This mainly brings experimental support for Flakes, but also marks the nix command as experimental which now has to be enabled via the configuration explicitly. For more information and instructions for upgrades, see the relase notes for nix-2.4, +nix-2.5, nix-2.6, nix-2.7 and nix-2.8 @@ -801,6 +794,13 @@ services.openldap.settings, which represents your cn=config. + + Additionally with 2.5 the argon2 module was included in the + standard distrubtion and renamed from + pw-argon2 to argon2. + Remember to update your olcModuleLoad entry + in cn=config. + diff --git a/nixos/doc/manual/release-notes/rl-2205.section.md b/nixos/doc/manual/release-notes/rl-2205.section.md index 2ae454fe013..152b62cddbf 100644 --- a/nixos/doc/manual/release-notes/rl-2205.section.md +++ b/nixos/doc/manual/release-notes/rl-2205.section.md @@ -7,8 +7,14 @@ In addition to numerous new and upgraded packages, this release has the following highlights: - Nix has been updated from 2.3 to 2.8. This mainly brings experimental support - for Flakes, but also marks the `nix` command as experimental which now has to be enabled via the configuration explicitly. For more - information and instructions for upgrades, see the [Release Notes](https://nixos.org/manual/nix/stable/release-notes/release-notes.html). + for Flakes, but also marks the `nix` command as experimental which now has to + be enabled via the configuration explicitly. For more information and + instructions for upgrades, see the + relase notes for [nix-2.4](https://nixos.org/manual/nix/stable/release-notes/rl-2.4.html), + [nix-2.5](https://nixos.org/manual/nix/stable/release-notes/rl-2.5.html), + [nix-2.6](https://nixos.org/manual/nix/stable/release-notes/rl-2.6.html), + [nix-2.7](https://nixos.org/manual/nix/stable/release-notes/rl-2.7.html) and + [nix-2.8](https://nixos.org/manual/nix/stable/release-notes/rl-2.8.html) - The `firefox` browser on `x86_64-linux` now makes use of profile-guided optimisation, resulting in a much more responsive browsing experience. @@ -270,6 +276,8 @@ In addition to numerous new and upgraded packages, this release has the followin - `openldap` (and therefore the slapd LDAP server) were updated to version 2.6.2. The project introduced backwards-incompatible changes, namely the removal of the bdb, hdb, ndb, and shell backends in slapd. Therefore before updating, dump your database `slapcat -n 1` in LDIF format, and reimport it after updating your `services.openldap.settings`, which represents your `cn=config`. + Additionally with 2.5 the argon2 module was included in the standard distrubtion and renamed from `pw-argon2` to `argon2`. Remember to update your `olcModuleLoad` entry in `cn=config`. + - `openssh` has been update to 8.9p1, changing the FIDO security key middleware interface. - `git` no longer hardcodes the path to openssh' ssh binary to reduce the amount of rebuilds. If you are using git with ssh remotes and do not have a ssh binary in your enviroment consider adding `openssh` to it or switching to `gitFull`. diff --git a/nixos/modules/services/misc/dendrite.nix b/nixos/modules/services/misc/dendrite.nix index ac5df9951b3..54052084b33 100644 --- a/nixos/modules/services/misc/dendrite.nix +++ b/nixos/modules/services/misc/dendrite.nix @@ -74,6 +74,18 @@ in dendrite is running. ''; }; + loadCredential = lib.mkOption { + type = lib.types.listOf lib.types.str; + default = [ ]; + example = [ "private_key:/path/to/my_private_key" ]; + description = '' + This can be used to pass secrets to the systemd service without adding them to + the nix store. + To use the example setting, see the example of + . + See the LoadCredential section of systemd.exec manual for more information. + ''; + }; settings = lib.mkOption { type = lib.types.submodule { freeformType = settingsFormat.type; @@ -88,8 +100,10 @@ in ''; }; private_key = lib.mkOption { - type = lib.types.path; - example = "${workingDir}/matrix_key.pem"; + type = lib.types.either + lib.types.path + (lib.types.strMatching "^\\$CREDENTIALS_DIRECTORY/.+"); + example = "$CREDENTIALS_DIRECTORY/private_key"; description = '' The path to the signing private key file, used to sign requests and events. @@ -256,6 +270,7 @@ in RuntimeDirectoryMode = "0700"; LimitNOFILE = 65535; EnvironmentFile = lib.mkIf (cfg.environmentFile != null) cfg.environmentFile; + LoadCredential = cfg.loadCredential; ExecStartPre = '' ${pkgs.envsubst}/bin/envsubst \ -i ${configurationYaml} \ diff --git a/nixos/modules/virtualisation/libvirtd.nix b/nixos/modules/virtualisation/libvirtd.nix index e0bccb83a97..31d18ae7344 100644 --- a/nixos/modules/virtualisation/libvirtd.nix +++ b/nixos/modules/virtualisation/libvirtd.nix @@ -11,10 +11,9 @@ let auth_unix_rw = "polkit" ${cfg.extraConfig} ''; - ovmfFilePrefix = if pkgs.stdenv.isAarch64 then "AAVMF" else "OVMF"; qemuConfigFile = pkgs.writeText "qemu.conf" '' ${optionalString cfg.qemu.ovmf.enable '' - nvram = [ "/run/libvirt/nix-ovmf/${ovmfFilePrefix}_CODE.fd:/run/libvirt/nix-ovmf/${ovmfFilePrefix}_VARS.fd" ] + nvram = [ "/run/libvirt/nix-ovmf/AAVMF_CODE.fd:/run/libvirt/nix-ovmf/AAVMF_VARS.fd", "/run/libvirt/nix-ovmf/OVMF_CODE.fd:/run/libvirt/nix-ovmf/OVMF_VARS.fd" ] ''} ${optionalString (!cfg.qemu.runAsRoot) '' user = "qemu-libvirtd" @@ -36,13 +35,20 @@ let ''; }; + # mkRemovedOptionModule does not work in submodules, do it manually package = mkOption { - type = types.package; - default = pkgs.OVMF; - defaultText = literalExpression "pkgs.OVMF"; - example = literalExpression "pkgs.OVMFFull"; + type = types.nullOr types.package; + default = null; + internal = true; + }; + + packages = mkOption { + type = types.listOf types.package; + default = [ pkgs.OVMF.fd ]; + defaultText = literalExpression "[ pkgs.OVMF.fd ]"; + example = literalExpression "[ pkgs.OVMFFull.fd pkgs.pkgsCross.aarch64-multiplatform.OVMF.fd ]"; description = '' - OVMF package to use. + List of OVMF packages to use. Each listed package must contain files names FV/OVMF_CODE.fd and FV/OVMF_VARS.fd or FV/AAVMF_CODE.fd and FV/AAVMF_VARS.fd ''; }; }; @@ -141,9 +147,9 @@ in (mkRenamedOptionModule [ "virtualisation" "libvirtd" "qemuOvmf" ] [ "virtualisation" "libvirtd" "qemu" "ovmf" "enable" ]) - (mkRenamedOptionModule + (mkRemovedOptionModule [ "virtualisation" "libvirtd" "qemuOvmfPackage" ] - [ "virtualisation" "libvirtd" "qemu" "ovmf" "package" ]) + "If this option was set to `foo`, set the option `virtualisation.libvirtd.qemu.ovmf.packages' to `[foo.fd]` instead.") (mkRenamedOptionModule [ "virtualisation" "libvirtd" "qemuSwtpm" ] [ "virtualisation" "libvirtd" "qemu" "swtpm" "enable" ]) @@ -238,12 +244,15 @@ in assertions = [ { - assertion = config.security.polkit.enable; - message = "The libvirtd module currently requires Polkit to be enabled ('security.polkit.enable = true')."; + assertion = config.virtualisation.libvirtd.qemu.ovmf.package == null; + message = '' + The option virtualisation.libvirtd.qemu.ovmf.package is superseded by virtualisation.libvirtd.qemu.ovmf.packages. + If this option was set to `foo`, set the option `virtualisation.libvirtd.qemu.ovmf.packages' to `[foo.fd]` instead. + ''; } { - assertion = builtins.elem "fd" cfg.qemu.ovmf.package.outputs; - message = "The option 'virtualisation.libvirtd.qemuOvmfPackage' needs a package that has an 'fd' output."; + assertion = config.security.polkit.enable; + message = "The libvirtd module currently requires Polkit to be enabled ('security.polkit.enable = true')."; } ]; @@ -303,10 +312,18 @@ in ln -s --force ${cfg.qemu.package}/$helper /run/${dirName}/nix-helpers/ done - ${optionalString cfg.qemu.ovmf.enable '' - ln -s --force ${cfg.qemu.ovmf.package.fd}/FV/${ovmfFilePrefix}_CODE.fd /run/${dirName}/nix-ovmf/ - ln -s --force ${cfg.qemu.ovmf.package.fd}/FV/${ovmfFilePrefix}_VARS.fd /run/${dirName}/nix-ovmf/ - ''} + ${optionalString cfg.qemu.ovmf.enable (let + ovmfpackage = pkgs.buildEnv { + name = "qemu-ovmf"; + paths = cfg.qemu.ovmf.packages; + }; + in + '' + ln -s --force ${ovmfpackage}/FV/AAVMF_CODE.fd /run/${dirName}/nix-ovmf/ + ln -s --force ${ovmfpackage}/FV/OVMF_CODE.fd /run/${dirName}/nix-ovmf/ + ln -s --force ${ovmfpackage}/FV/AAVMF_VARS.fd /run/${dirName}/nix-ovmf/ + ln -s --force ${ovmfpackage}/FV/OVMF_VARS.fd /run/${dirName}/nix-ovmf/ + '')} ''; serviceConfig = { diff --git a/nixos/tests/dendrite.nix b/nixos/tests/dendrite.nix index d4a5bb13226..1ff415433b4 100644 --- a/nixos/tests/dendrite.nix +++ b/nixos/tests/dendrite.nix @@ -17,10 +17,11 @@ import ./make-test-python.nix ( homeserver = { pkgs, ... }: { services.dendrite = { enable = true; + loadCredential = [ "test_private_key:${private_key}" ]; openRegistration = true; settings = { global.server_name = "test-dendrite-server.com"; - global.private_key = private_key; + global.private_key = "$CREDENTIALS_DIRECTORY/test_private_key"; client_api.registration_disabled = false; }; }; diff --git a/pkgs/applications/audio/transcode/default.nix b/pkgs/applications/audio/transcode/default.nix index 7a7ec1e4188..112d84a08b1 100644 --- a/pkgs/applications/audio/transcode/default.nix +++ b/pkgs/applications/audio/transcode/default.nix @@ -19,6 +19,12 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; + # Workaround build failure on -fno-common toolchains like upstream + # gcc-10. Otherwise build fails as: + # ld: tcextract-extract_pcm.o:/build/transcode-1.1.7/import/extract_pcm.c:36: multiple definition of + # `audio'; tcextract-extract_ac3.o:/build/transcode-1.1.7/import/extract_ac3.c:337: first defined here + NIX_CFLAGS_COMPILE = "-fcommon"; + meta = with lib; { description = "Suite of command line utilities for transcoding video and audio codecs, and for converting between different container formats"; homepage = "http://www.transcoding.org/"; diff --git a/pkgs/applications/editors/vim/common.nix b/pkgs/applications/editors/vim/common.nix index 8c505865849..551fd9ec2b0 100644 --- a/pkgs/applications/editors/vim/common.nix +++ b/pkgs/applications/editors/vim/common.nix @@ -1,12 +1,12 @@ { lib, fetchFromGitHub }: rec { - version = "8.2.4816"; + version = "8.2.4975"; src = fetchFromGitHub { owner = "vim"; repo = "vim"; rev = "v${version}"; - sha256 = "1lgqr3ki50hwkz4vhdyaryirrs99qq4kgkhmpx7ygvn6aj2wapg5"; + sha256 = "sha256-KkaW1WSX5OB03Dx6xTdbLFMpM7phbXyMpiufYKzAx0k="; }; enableParallelBuilding = true; diff --git a/pkgs/applications/editors/vim/plugins/build-vim-plugin.nix b/pkgs/applications/editors/vim/plugins/build-vim-plugin.nix index 4773cfb9e43..6b4cf674ac5 100644 --- a/pkgs/applications/editors/vim/plugins/build-vim-plugin.nix +++ b/pkgs/applications/editors/vim/plugins/build-vim-plugin.nix @@ -27,8 +27,7 @@ rec { forceShare= [ "man" "info" ]; nativeBuildInputs = attrs.nativeBuildInputs or [] - ++ [ vimCommandCheckHook ] - ++ lib.optional (stdenv.hostPlatform == stdenv.buildPlatform) vimGenDocHook; + ++ lib.optionals (stdenv.hostPlatform == stdenv.buildPlatform) [ vimCommandCheckHook vimGenDocHook ]; inherit unpackPhase configurePhase buildPhase addonInfo preInstall postInstall; installPhase = '' diff --git a/pkgs/applications/editors/vim/plugins/overrides.nix b/pkgs/applications/editors/vim/plugins/overrides.nix index 0c74eb495d8..8546e80047c 100644 --- a/pkgs/applications/editors/vim/plugins/overrides.nix +++ b/pkgs/applications/editors/vim/plugins/overrides.nix @@ -504,7 +504,7 @@ self: super: { }); null-ls-nvim = super.null-ls-nvim.overrideAttrs (old: { - dependencies = with self; [ plenary-nvim nvim-lspconfig ]; + dependencies = with self; [ plenary-nvim ]; }); nvim-lsputils = super.nvim-lsputils.overrideAttrs (old: { @@ -711,7 +711,7 @@ self: super: { }); telescope-nvim = super.telescope-nvim.overrideAttrs (old: { - dependencies = with self; [ plenary-nvim popup-nvim ]; + dependencies = with self; [ plenary-nvim ]; }); telescope-symbols-nvim = super.telescope-symbols-nvim.overrideAttrs (old: { diff --git a/pkgs/applications/editors/vim/plugins/vim-utils.nix b/pkgs/applications/editors/vim/plugins/vim-utils.nix index 9511e4da195..14dbc43d3cd 100644 --- a/pkgs/applications/editors/vim/plugins/vim-utils.nix +++ b/pkgs/applications/editors/vim/plugins/vim-utils.nix @@ -454,8 +454,8 @@ rec { mkdir -p "$out/bin" for exe in ${ - if standalone then "{,g,r,rg,e}vim {,g}vimdiff" - else "{,g,r,rg,e}{vim,view} {,g}vimdiff ex" + if standalone then "{,g,r,rg,e}vim {,g}vimdiff vi" + else "{,g,r,rg,e}{vim,view} {,g}vimdiff ex vi" }; do if [[ -e ${vim}/bin/$exe ]]; then dest="$out/bin/${executableName}" diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix index 21c1187c4ad..80d336fb394 100644 --- a/pkgs/applications/editors/vscode/extensions/default.nix +++ b/pkgs/applications/editors/vscode/extensions/default.nix @@ -131,8 +131,8 @@ let mktplcRef = { name = "ng-template"; publisher = "Angular"; - version = "12.2.0"; - sha256 = "sha256-CChkWKiLi/OcOm268d45pNwiyrKhztqYsQvJV/9z+Ag="; + version = "13.3.4"; + sha256 = "sha256-odFh4Ms60tW+JOEbzzglgKe7BL1ccv3TKGir5NlvIrQ="; }; meta = with lib; { changelog = "https://marketplace.visualstudio.com/items/Angular.ng-template/changelog"; @@ -611,8 +611,8 @@ let mktplcRef = { name = "vscode-deno"; publisher = "denoland"; - version = "3.9.1"; - sha256 = "sha256-OuGTjmJQFAWrYp7YnFpyo0NnnCcXYF8itYjGKMa3FCs="; + version = "3.12.0"; + sha256 = "sha256-ZsHCWQtEQKkdZ3uk072ZBfHFRzk4Owf4h7+szHLgIeo="; }; meta = with lib; { changelog = "https://marketplace.visualstudio.com/items/denoland.vscode-deno/changelog"; @@ -722,8 +722,8 @@ let mktplcRef = { name = "gitlens"; publisher = "eamodio"; - version = "12.0.6"; - sha256 = "sha256-Q8l/GryB9iMhFnu5npUcDjWuImfrmVZF3xvm7nX/77Q="; + version = "12.0.7"; + sha256 = "sha256-gPhiytthf35eDhtzkSK2JZjtj4877la3hB1Cswbrszw="; }; meta = with lib; { changelog = "https://marketplace.visualstudio.com/items/eamodio.gitlens/changelog"; @@ -895,8 +895,8 @@ let mktplcRef = { name = "foam-vscode"; publisher = "foam"; - version = "0.14.1"; - sha256 = "sha256-w9xGkezS3A9z6sTk8WWgW7g8qYX6mJFfRV0lv5cu160="; + version = "0.18.3"; + sha256 = "sha256-qbF4k3GP7UdQrw0x/egVRkv5TYDwYWoycxY/HJSFTkI="; }; meta = with lib; { changelog = "https://marketplace.visualstudio.com/items/foam.foam-vscode/changelog"; @@ -1147,8 +1147,8 @@ let mktplcRef = { name = "Ionide-fsharp"; publisher = "Ionide"; - version = "6.0.4"; - sha256 = "sha256-gdM7mG5ykBiwLHodZ2VyF4uYYuAPhXP2MturNvfQ5iM="; + version = "6.0.5"; + sha256 = "sha256-vlmLr/1rBreqZifzEwAlhyGzHG28oZa+kmMzRl53tOI="; }; meta = with lib; { changelog = "https://marketplace.visualstudio.com/items/Ionide.Ionide-fsharp/changelog"; @@ -1538,8 +1538,8 @@ let mktplcRef = { name = "pyright"; publisher = "ms-pyright"; - version = "1.1.222"; - sha256 = "sha256-QMX/SawDEnG1xVrug8mvN7EvRrRDkJffcXBUFpQi1XE="; + version = "1.1.250"; + sha256 = "sha256-UHSY32F5wzqAHmmBWyCUkLL0z+LMWDwn/YvUOF3q87I="; }; meta = with lib; { description = "VS Code static type checking for Python"; @@ -1715,8 +1715,8 @@ let mktplcRef = { name = "ocaml-platform"; publisher = "ocamllabs"; - version = "1.8.4"; - sha256 = "sha256-T1eYAuYMv4B7rdECxYzNfIpydjzCDjeo7gmb1uhr6VM="; + version = "1.10.4"; + sha256 = "sha256-Qk4wD6gh/xvH6nFBonje4Stz6Y6yaIyxx1TdAXQEycM="; }; }; diff --git a/pkgs/applications/misc/authenticator/default.nix b/pkgs/applications/misc/authenticator/default.nix index d7cf8f34b83..ba410f41bae 100644 --- a/pkgs/applications/misc/authenticator/default.nix +++ b/pkgs/applications/misc/authenticator/default.nix @@ -25,20 +25,20 @@ stdenv.mkDerivation rec { pname = "authenticator"; - version = "4.1.1"; + version = "4.1.2"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "World"; repo = "Authenticator"; rev = version; - hash = "sha256-wl7wyj0vVDkOB7XKQFOEFzCmffTsrUsaM83fWgZ6tG0="; + hash = "sha256-YxmVqL9dseImN3LfkRz+Au+IaKpTepHl3CNx2Ue7N24="; }; cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; - hash = "sha256-3SzemDjLsZUXPPtSlDMBQXQf5P3Sz8caJL73mHRv1js="; + hash = "sha256-ub2PryALI7QXEG0djkPVQQCgZn5M5VoGo6ETSkvEjX0="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/misc/bottles/default.nix b/pkgs/applications/misc/bottles/default.nix index e85af780650..a5514d431de 100644 --- a/pkgs/applications/misc/bottles/default.nix +++ b/pkgs/applications/misc/bottles/default.nix @@ -20,13 +20,13 @@ let in python3Packages.buildPythonApplication rec { pname = "bottles"; - version = "2022.5.28-trento-2"; + version = "2022.5.28-trento-3"; src = fetchFromGitHub { owner = "bottlesdevs"; repo = pname; rev = version; - sha256 = "sha256-q4arUiHcAvkytcxnbLbMRzFVOgWqEXNIZt9Y8l3dAig="; + sha256 = "sha256-KIDLRqDLFTsVAczRpTchnUtKJfVHqbYzf8MhIR5UdYY="; }; postPatch = '' diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json index 6cc8e60a39c..e2c89ed9057 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.json +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.json @@ -19,22 +19,9 @@ } }, "beta": { - "version": "102.0.5005.61", - "sha256": "07vbi3gn9g4n04b2qi2hm34r122snrqaifa46yk3pyh1d79rfdqs", - "sha256bin64": "1cwfpjh060sm56bkgmpmmck0y3vrndrv6cbn8y3p26p3j06f2i3h", - "deps": { - "gn": { - "version": "2022-04-14", - "url": "https://gn.googlesource.com/gn", - "rev": "fd9f2036f26d83f9fcfe93042fb952e5a7fe2167", - "sha256": "0b5xs0chcv3hfhy71rycsmgxnqbm375a333hwav8929k9cbi5p9h" - } - } - }, - "dev": { "version": "103.0.5060.24", "sha256": "1vdnq7vd0jdxkpc00xwvvk1mmyq2hcydms64l16nv3v8jgvizrha", - "sha256bin64": "0590ffrbpnd4v8z1wzn1baqvj59gx2yc3zp3qvhvmfrdmxz9i9b4", + "sha256bin64": "1rnjgb9v8dr74x0lj00xdkpvp2yx8d79h1kdzp7m7nvh4q34s32w", "deps": { "gn": { "version": "2022-05-11", @@ -44,6 +31,19 @@ } } }, + "dev": { + "version": "104.0.5083.0", + "sha256": "02viibc6n77lrlr1vfdyjknzcknnpvp58s4y1g6cbwy4pvajisd9", + "sha256bin64": "0g2kzabbg5g3kb0a6scjxslywrkrgpynws7i4lbw0j2gay40zqar", + "deps": { + "gn": { + "version": "2022-05-17", + "url": "https://gn.googlesource.com/gn", + "rev": "c547ca1497e3ff0dcbc0b2cb036b3d40380cbeeb", + "sha256": "0wk721sqz5s7bnrk1ar7c07ykxpdvwq01qi4na84m4b76nyzakwy" + } + } + }, "ungoogled-chromium": { "version": "102.0.5005.61", "sha256": "07vbi3gn9g4n04b2qi2hm34r122snrqaifa46yk3pyh1d79rfdqs", diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix index 537f78fbcad..972a427c175 100644 --- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix @@ -24,7 +24,7 @@ let in stdenv.mkDerivation rec { pname = "signal-desktop"; - version = "5.43.0"; # Please backport all updates to the stable channel. + version = "5.44.1"; # Please backport all updates to the stable channel. # All releases have a limited lifetime and "expire" 90 days after the release. # When releases "expire" the application becomes unusable until an update is # applied. The expiration date for the current release can be extracted with: @@ -34,7 +34,7 @@ in stdenv.mkDerivation rec { src = fetchurl { url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb"; - sha256 = "sha256-DYJ3WZbaalKhQXhVQO3qhJiGj92Cc+pwRDx/YBIi6gg="; + sha256 = "sha256-r9jCN8amX4ipv8V+i2j1CkZRJXun17EFi3wr8yMfXgQ="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/networking/instant-messengers/telegram/telegram-cli/default.nix b/pkgs/applications/networking/instant-messengers/telegram/telegram-cli/default.nix index 3b69aa5566d..c8e8598c140 100644 --- a/pkgs/applications/networking/instant-messengers/telegram/telegram-cli/default.nix +++ b/pkgs/applications/networking/instant-messengers/telegram/telegram-cli/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, jansson, lib, libconfig, libevent, libgcrypt, lua, lua53Packages +{ stdenv, fetchFromGitHub, fetchpatch, jansson, lib, libconfig, libevent, libgcrypt, lua, lua53Packages , makeWrapper, openssl, pkg-config, python3, readline, zlib }: @@ -14,6 +14,16 @@ stdenv.mkDerivation rec { fetchSubmodules = true; }; + patches = [ + # Pull patch pending upstream upstream inclusion for -fno-common toolchains: + # https://github.com/kenorb-contrib/tg/pull/61 + (fetchpatch { + name = "fno-common.patch"; + url = "https://github.com/kenorb-contrib/tg/commit/aad2e644fffa16066b227741d54de31bddb04ff8.patch"; + sha256 = "sha256-LAa5J4BVj3QCiDSs+p2bynDroMSIqCeexQvrgaDl6OE="; + }) + ]; + buildInputs = [ jansson libconfig diff --git a/pkgs/applications/virtualization/OVMF/default.nix b/pkgs/applications/virtualization/OVMF/default.nix index 843cebe7d6b..82d98274f8a 100644 --- a/pkgs/applications/virtualization/OVMF/default.nix +++ b/pkgs/applications/virtualization/OVMF/default.nix @@ -27,7 +27,8 @@ edk2.mkDerivation projectDscPath { outputs = [ "out" "fd" ]; - buildInputs = [ util-linux nasm acpica-tools ]; + nativeBuildInputs = [ util-linux nasm acpica-tools ]; + strictDeps = true; hardeningDisable = [ "format" "stackprotector" "pic" "fortify" ]; diff --git a/pkgs/applications/virtualization/distrobox/default.nix b/pkgs/applications/virtualization/distrobox/default.nix index e29de7a52fd..d8b106c7576 100644 --- a/pkgs/applications/virtualization/distrobox/default.nix +++ b/pkgs/applications/virtualization/distrobox/default.nix @@ -2,13 +2,13 @@ stdenvNoCC.mkDerivation rec { pname = "distrobox"; - version = "1.2.15"; + version = "1.3.0"; src = fetchFromGitHub { owner = "89luca89"; repo = pname; rev = version; - sha256 = "sha256-9rivXnHyEE1MoGY+CwUeDStLGPVq+4FvwPjV7Nblk60="; + sha256 = "sha256-31SDi9B6Ug6lRDMgaMp6lwdSsmQ7ywEwjG1Ez/jXjBc="; }; dontConfigure = true; diff --git a/pkgs/applications/virtualization/open-vm-tools/default.nix b/pkgs/applications/virtualization/open-vm-tools/default.nix index 6018608a3f1..79dad692e98 100644 --- a/pkgs/applications/virtualization/open-vm-tools/default.nix +++ b/pkgs/applications/virtualization/open-vm-tools/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchFromGitHub, fetchpatch, makeWrapper, autoreconfHook +{ stdenv, lib, fetchFromGitHub, makeWrapper, autoreconfHook , bash, fuse3, libmspack, openssl, pam, xercesc, icu, libdnet, procps, libtirpc, rpcsvc-proto , libX11, libXext, libXinerama, libXi, libXrender, libXrandr, libXtst , pkg-config, glib, gdk-pixbuf-xlib, gtk3, gtkmm3, iproute2, dbus, systemd, which @@ -8,13 +8,13 @@ stdenv.mkDerivation rec { pname = "open-vm-tools"; - version = "12.0.0"; + version = "12.0.5"; src = fetchFromGitHub { owner = "vmware"; repo = "open-vm-tools"; rev = "stable-${version}"; - sha256 = "sha256-agWTGf8x6bxZ7S5bU2scHt8IdLLe/hZdaEMfHIK9d8U="; + sha256 = "sha256-rjYYRh4ZWAd9iELW2/4PZvMOfQfgwtGcrI2icaed2Eg="; }; sourceRoot = "${src.name}/open-vm-tools"; @@ -25,21 +25,7 @@ stdenv.mkDerivation rec { buildInputs = [ fuse3 glib icu libdnet libdrm libmspack libtirpc openssl pam procps rpcsvc-proto udev xercesc ] ++ lib.optionals withX [ gdk-pixbuf-xlib gtk3 gtkmm3 libX11 libXext libXinerama libXi libXrender libXrandr libXtst ]; - patches = [ - # glibc 2.35 and GCC 11 & 12 reporting possible array bounds overflow - # Will be fixed in the release after 12.0.0 - (fetchpatch { - url = "https://github.com/vmware/open-vm-tools/commit/de6d129476724668b8903e2a87654f50ba21b1b2.patch"; - sha256 = "1cqhm868g40kcp8qzzwq10zd4bah9ypaw1qawnli5d240mlkpfhh"; - }) - ]; - - prePatch = '' - cd .. - ''; - postPatch = '' - cd open-vm-tools sed -i 's,etc/vmware-tools,''${prefix}/etc/vmware-tools,' Makefile.am sed -i 's,^confdir = ,confdir = ''${prefix},' scripts/Makefile.am sed -i 's,usr/bin,''${prefix}/usr/bin,' scripts/Makefile.am diff --git a/pkgs/desktops/arcan/durden/default.nix b/pkgs/desktops/arcan/durden/default.nix index 5447105d358..362e2b7082d 100644 --- a/pkgs/desktops/arcan/durden/default.nix +++ b/pkgs/desktops/arcan/durden/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "durden"; - version = "0.6.1+date=2022-04-16"; + version = "0.6.1+date=2022-05-23"; src = fetchFromGitHub { owner = "letoram"; repo = pname; - rev = "b07ba6535addf0d36a64385745cd9595f7d214b1"; - hash = "sha256-nDSuJrJvJOVpRax+AwuNAZ3Ioqfoo10EGCab1EiPbIY="; + rev = "9284182bd8b3b976387cd6494c5f605633a559fc"; + hash = "sha256-K1MjgNyX6qlaHya6Grej0cagORihS35BWECWn2HcRCk="; }; dontConfigure = true; diff --git a/pkgs/development/compilers/edk2/default.nix b/pkgs/development/compilers/edk2/default.nix index 47ea90482b6..e0bcc447684 100644 --- a/pkgs/development/compilers/edk2/default.nix +++ b/pkgs/development/compilers/edk2/default.nix @@ -7,10 +7,11 @@ , bc , llvmPackages_9 , lib +, buildPackages }: let - pythonEnv = python3.withPackages (ps: [ps.tkinter]); + pythonEnv = buildPackages.python3.withPackages (ps: [ps.tkinter]); targetArch = if stdenv.isi686 then "IA32" @@ -35,6 +36,14 @@ edk2 = buildStdenv.mkDerivation { pname = "edk2"; version = "202202"; + patches = [ + # pass targetPrefix as an env var + (fetchpatch { + url = "https://src.fedoraproject.org/rpms/edk2/raw/08f2354cd280b4ce5a7888aa85cf520e042955c3/f/0021-Tweak-the-tools_def-to-support-cross-compiling.patch"; + sha256 = "sha256-E1/fiFNVx0aB1kOej2DJ2DlBIs9tAAcxoedym2Zhjxw="; + }) + ]; + # submodules src = fetchFromGitHub { owner = "tianocore"; @@ -44,7 +53,12 @@ edk2 = buildStdenv.mkDerivation { sha256 = "0srmhi6c27n5vyl01nhh0fq8k4vngbwn79siyjvcacjbj2ivhh8d"; }; - buildInputs = [ libuuid pythonEnv ]; + nativeBuildInputs = [ pythonEnv ]; + depsBuildBuild = [ buildPackages.stdenv.cc buildPackages.util-linux buildPackages.bash ]; + strictDeps = true; + + # trick taken from https://src.fedoraproject.org/rpms/edk2/blob/08f2354cd280b4ce5a7888aa85cf520e042955c3/f/edk2.spec#_319 + ${"GCC5_${targetArch}_PREFIX"}=stdenv.cc.targetPrefix; makeFlags = [ "-C BaseTools" ] ++ lib.optional (stdenv.cc.isClang) [ "BUILD_CC=clang BUILD_CXX=clang++ BUILD_AS=clang" ]; @@ -57,6 +71,10 @@ edk2 = buildStdenv.mkDerivation { mkdir -vp $out mv -v BaseTools $out mv -v edksetup.sh $out + # patchShebangs fails to see these when cross compiling + for i in $out/BaseTools/BinWrappers/PosixLike/*; do + substituteInPlace $i --replace '/usr/bin/env bash' ${buildPackages.bash}/bin/bash + done ''; enableParallelBuilding = true; @@ -72,7 +90,11 @@ edk2 = buildStdenv.mkDerivation { mkDerivation = projectDscPath: attrs: buildStdenv.mkDerivation ({ inherit (edk2) src; - buildInputs = [ bc pythonEnv ] ++ attrs.buildInputs or []; + depsBuildBuild = [ buildPackages.stdenv.cc ] ++ attrs.depsBuildBuild or []; + nativeBuildInputs = [ bc pythonEnv ] ++ attrs.nativeBuildInputs or []; + strictDeps = true; + + ${"GCC5_${targetArch}_PREFIX"}=stdenv.cc.targetPrefix; prePatch = '' rm -rf BaseTools @@ -97,7 +119,7 @@ edk2 = buildStdenv.mkDerivation { mv -v Build/*/* $out runHook postInstall ''; - } // removeAttrs attrs [ "buildInputs" ]); + } // removeAttrs attrs [ "nativeBuildInputs" "depsBuildBuild" ]); }; }; diff --git a/pkgs/development/compilers/firrtl/default.nix b/pkgs/development/compilers/firrtl/default.nix new file mode 100644 index 00000000000..5a59060b6f2 --- /dev/null +++ b/pkgs/development/compilers/firrtl/default.nix @@ -0,0 +1,60 @@ +{ lib, stdenv, jre, setJavaClassPath, coursier, makeWrapper }: + +stdenv.mkDerivation rec { + pname = "firrtl"; + version = "1.5.3"; + scalaVersion = "2.13"; # pin, for determinism + + deps = stdenv.mkDerivation { + pname = "${pname}-deps"; + inherit version; + nativeBuildInputs = [ coursier ]; + buildCommand = '' + export COURSIER_CACHE=$(pwd) + cs fetch edu.berkeley.cs:${pname}_${scalaVersion}:${version} > deps + mkdir -p $out/share/java + cp $(< deps) $out/share/java + ''; + outputHashMode = "recursive"; + outputHash = "sha256-xy3zdJZk6Q2HbEn5tRQ9Z0AjyXEteXepoWDaATjiUUw="; + }; + + nativeBuildInputs = [ makeWrapper setJavaClassPath ]; + buildInputs = [ deps ]; + + dontUnpack = true; + + installPhase = '' + runHook preInstall + + makeWrapper ${jre}/bin/java $out/bin/${pname} \ + --add-flags "-cp $CLASSPATH firrtl.stage.FirrtlMain" + + runHook postInstall + ''; + + doInstallCheck = true; + installCheckPhase = '' + $out/bin/firrtl --firrtl-source "${'' + circuit test: + module test: + input a: UInt<8> + input b: UInt<8> + output o: UInt + o <= add(a, not(b)) + ''}" -o test.v + cat test.v + grep -qFe "module test" -e "endmodule" test.v + ''; + + meta = with lib; { + description = "Flexible Intermediate Representation for RTL"; + longDescription = '' + Firrtl is an intermediate representation (IR) for digital circuits + designed as a platform for writing circuit-level transformations. + ''; + homepage = "https://www.chisel-lang.org/firrtl/"; + license = licenses.asl20; + maintainers = with maintainers; [ dtzWill ]; + }; +} diff --git a/pkgs/development/libraries/fcft/default.nix b/pkgs/development/libraries/fcft/default.nix index f03c24e28cb..9ed4df601d3 100644 --- a/pkgs/development/libraries/fcft/default.nix +++ b/pkgs/development/libraries/fcft/default.nix @@ -20,14 +20,14 @@ in stdenv.mkDerivation rec { pname = "fcft"; - version = "3.1.1"; + version = "3.1.2"; src = fetchFromGitea { domain = "codeberg.org"; owner = "dnkl"; repo = "fcft"; rev = version; - sha256 = "1b43sqp5hah374ns62pcrmbiriqsdisb60hp1nwqz3ny3rfjvn15"; + sha256 = "1m7prc792dsd4mg6iqqwbfbmvs3a2yw2zmj0cd3qrf7h672b8snq"; }; depsBuildBuild = [ pkg-config ]; diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index 91c3d55926a..4b58da1539d 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -201,6 +201,7 @@ stdenv.mkDerivation ({ installFlags = [ "sysconfdir=$(out)/etc" ]; + # out as the first output is an exception exclusive to glibc outputs = [ "out" "bin" "dev" "static" ]; depsBuildBuild = [ buildPackages.stdenv.cc ]; diff --git a/pkgs/development/libraries/glibc/multi.nix b/pkgs/development/libraries/glibc/multi.nix index 5d3626b95cc..be190d77c73 100644 --- a/pkgs/development/libraries/glibc/multi.nix +++ b/pkgs/development/libraries/glibc/multi.nix @@ -6,7 +6,8 @@ let glibc64 = glibc; in runCommand "${nameVersion.name}-multi-${nameVersion.version}" - { outputs = [ "bin" "dev" "out"]; } # TODO: no static version here (yet) + # out as the first output is an exception exclusive to glibc + { outputs = [ "out" "bin" "dev" ]; } # TODO: no static version here (yet) '' mkdir -p "$out/lib" ln -s '${glibc64.out}'/lib/* "$out/lib" diff --git a/pkgs/development/mobile/androidenv/cmake.nix b/pkgs/development/mobile/androidenv/cmake.nix index a284457a7de..3abad6b41f6 100644 --- a/pkgs/development/mobile/androidenv/cmake.nix +++ b/pkgs/development/mobile/androidenv/cmake.nix @@ -1,8 +1,8 @@ -{deployAndroidPackage, lib, package, os, autoPatchelfHook, pkgs}: +{deployAndroidPackage, lib, package, os, autoPatchelfHook, pkgs, stdenv}: deployAndroidPackage { inherit package os; - nativeBuildInputs = [ autoPatchelfHook ]; + nativeBuildInputs = lib.optionals stdenv.isLinux [ autoPatchelfHook ]; buildInputs = lib.optional (os == "linux") [ pkgs.stdenv.cc.libc pkgs.stdenv.cc.cc pkgs.ncurses5 ]; patchInstructions = lib.optionalString (os == "linux") '' autoPatchelf $packageBaseDir/bin diff --git a/pkgs/development/mobile/androidenv/compose-android-packages.nix b/pkgs/development/mobile/androidenv/compose-android-packages.nix index ed4cb4d527b..57f305015ce 100644 --- a/pkgs/development/mobile/androidenv/compose-android-packages.nix +++ b/pkgs/development/mobile/androidenv/compose-android-packages.nix @@ -171,7 +171,7 @@ rec { cmake = map (version: import ./cmake.nix { - inherit deployAndroidPackage os autoPatchelfHook pkgs lib; + inherit deployAndroidPackage os autoPatchelfHook pkgs lib stdenv; package = packages.cmake.${version}; } ) cmakeVersions; @@ -179,7 +179,7 @@ rec { # Creates a NDK bundle. makeNdkBundle = ndkVersion: import ./ndk-bundle { - inherit deployAndroidPackage os autoPatchelfHook makeWrapper pkgs pkgsHostHost lib platform-tools; + inherit deployAndroidPackage os autoPatchelfHook makeWrapper pkgs pkgsHostHost lib platform-tools stdenv; package = packages.ndk-bundle.${ndkVersion}; }; diff --git a/pkgs/development/mobile/androidenv/emulator.nix b/pkgs/development/mobile/androidenv/emulator.nix index eec99498a16..41a2dd70913 100644 --- a/pkgs/development/mobile/androidenv/emulator.nix +++ b/pkgs/development/mobile/androidenv/emulator.nix @@ -2,33 +2,35 @@ deployAndroidPackage { inherit package os; - buildInputs = [ autoPatchelfHook makeWrapper ] - ++ lib.optionals (os == "linux") [ - pkgs.glibc - pkgs.xorg.libX11 - pkgs.xorg.libXext - pkgs.xorg.libXdamage - pkgs.xorg.libXfixes - pkgs.xorg.libxcb - pkgs.xorg.libXcomposite - pkgs.xorg.libXcursor - pkgs.xorg.libXi - pkgs.xorg.libXrender - pkgs.xorg.libXtst - pkgs.libcxx - pkgs.libGL - pkgs.libpulseaudio - pkgs.libuuid - pkgs.zlib - pkgs.ncurses5 - pkgs.stdenv.cc.cc - pkgs_i686.glibc - pkgs.expat - pkgs.freetype - pkgs.nss - pkgs.nspr - pkgs.alsa-lib - ]; + buildInputs = [ makeWrapper ] + ++ lib.optionals (os == "linux") (with pkgs; [ + autoPatchelfHook + glibc + libcxx + libGL + libpulseaudio + libuuid + zlib + ncurses5 + stdenv.cc.cc + i686.glibc + expat + freetype + nss + nspr + alsa-lib + ]) ++ (with pkgs.xorg; [ + libX11 + libXext + libXdamage + libXfixes + libxcb + libXcomposite + libXcursor + libXi + libXrender + libXtst + ]); patchInstructions = lib.optionalString (os == "linux") '' addAutoPatchelfSearchPath $packageBaseDir/lib addAutoPatchelfSearchPath $packageBaseDir/lib64 diff --git a/pkgs/development/mobile/androidenv/ndk-bundle/default.nix b/pkgs/development/mobile/androidenv/ndk-bundle/default.nix index a854069e75a..58cc8f9d570 100644 --- a/pkgs/development/mobile/androidenv/ndk-bundle/default.nix +++ b/pkgs/development/mobile/androidenv/ndk-bundle/default.nix @@ -1,4 +1,4 @@ -{ lib, pkgs, pkgsHostHost, makeWrapper, autoPatchelfHook +{ stdenv, lib, pkgs, pkgsHostHost, makeWrapper, autoPatchelfHook , deployAndroidPackage, package, os, platform-tools }: @@ -9,7 +9,8 @@ let in deployAndroidPackage { inherit package os; - nativeBuildInputs = [ autoPatchelfHook makeWrapper ]; + nativeBuildInputs = [ makeWrapper ] + ++ lib.optionals stdenv.isLinux [ autoPatchelfHook ]; autoPatchelfIgnoreMissingDeps = true; buildInputs = lib.optional (os == "linux") [ pkgs.glibc pkgs.stdenv.cc.cc pkgs.python2 pkgs.ncurses5 pkgs.zlib pkgs.libcxx.out pkgs.libxml2 ]; patchInstructions = lib.optionalString (os == "linux") ('' diff --git a/pkgs/development/mobile/androidenv/tools/26.nix b/pkgs/development/mobile/androidenv/tools/26.nix index a768a120547..7a8f4cd660f 100644 --- a/pkgs/development/mobile/androidenv/tools/26.nix +++ b/pkgs/development/mobile/androidenv/tools/26.nix @@ -3,8 +3,12 @@ deployAndroidPackage { name = "androidsdk"; inherit os package; - buildInputs = [ autoPatchelfHook makeWrapper ] - ++ lib.optional (os == "linux") [ pkgs.glibc pkgs.xorg.libX11 pkgs.xorg.libXrender pkgs.xorg.libXext pkgs.fontconfig pkgs.freetype pkgs_i686.glibc pkgs_i686.xorg.libX11 pkgs_i686.xorg.libXrender pkgs_i686.xorg.libXext pkgs_i686.fontconfig.lib pkgs_i686.freetype pkgs_i686.zlib pkgs.fontconfig.lib ]; + buildInputs = [ makeWrapper ] + ++ lib.optional (os == "linux") ( + (with pkgs; [ autoPatchelfHook glibc freetype fontconfig fontconfig.lib]) + ++ (with pkgs.xorg; [ libX11 libXrender libXext ]) + ++ (with pkgs_i686; [ glibc xorg.libX11 xorg.libXrender xorg.libXext fontconfig.lib freetype zlib ]) + ); patchInstructions = '' ${lib.optionalString (os == "linux") '' diff --git a/pkgs/development/python-modules/aws-lambda-builders/default.nix b/pkgs/development/python-modules/aws-lambda-builders/default.nix index 12d788149e4..01c404ce982 100644 --- a/pkgs/development/python-modules/aws-lambda-builders/default.nix +++ b/pkgs/development/python-modules/aws-lambda-builders/default.nix @@ -49,6 +49,9 @@ buildPythonPackage rec { "TestPipRunner" "TestPythonPipWorkflow" "TestRubyWorkflow" + # Tests which are passing locally but not on Hydra + "test_copy_dependencies_action_1_multiple_files" + "test_move_dependencies_action_1_multiple_files" ]; pythonImportsCheck = [ diff --git a/pkgs/development/python-modules/brother/default.nix b/pkgs/development/python-modules/brother/default.nix index 8cfe7624676..551dffa6541 100644 --- a/pkgs/development/python-modules/brother/default.nix +++ b/pkgs/development/python-modules/brother/default.nix @@ -32,15 +32,6 @@ buildPythonPackage rec { pytestCheckHook ]; - postPatch = '' - substituteInPlace setup.cfg \ - --replace "--cov --cov-report term-missing " "" - substituteInPlace setup.py \ - --replace '"pytest-runner"' "" - substituteInPlace requirements.txt \ - --replace "pysnmplib==" "pysnmplib>=" - ''; - pythonImportsCheck = [ "brother" ]; diff --git a/pkgs/development/python-modules/cnvkit/default.nix b/pkgs/development/python-modules/cnvkit/default.nix index 6347c8552bf..36e4bcf2760 100644 --- a/pkgs/development/python-modules/cnvkit/default.nix +++ b/pkgs/development/python-modules/cnvkit/default.nix @@ -21,22 +21,23 @@ buildPythonPackage rec { pname = "CNVkit"; - version = "0.9.7"; + version = "0.9.9"; src = fetchFromGitHub { owner = "etal"; repo = "cnvkit"; rev = "v${version}"; - sha256 = "022zplgqil5l76vri647cyjx427vnbg5r2gw6lw712d2janvdjm7"; + sha256 = "1q4l7jhr1k135an3n9aa9wsid5lk6fwxb0hcldrr6v6y76zi4gj1"; }; - patches = [ - # Fix: AttributeError: module 'pandas.io.common' has no attribute 'EmptyDataError' - (fetchpatch { - url = "https://github.com/etal/cnvkit/commit/392adfffedfa0415e635b72c5027835b0a8d7ab5.patch"; - sha256 = "0s0gwyy0hybmhc3jij2v9l44b6lkcmclii8bkwsazzj2kc24m2rh"; - }) - ]; + postPatch = '' + # see https://github.com/etal/cnvkit/issues/589 + substituteInPlace setup.py \ + --replace 'joblib < 1.0' 'joblib' + # see https://github.com/etal/cnvkit/issues/680 + substituteInPlace test/test_io.py \ + --replace 'test_read_vcf' 'dont_test_read_vcf' + ''; propagatedBuildInputs = [ biopython @@ -63,8 +64,13 @@ buildPythonPackage rec { ${python.interpreter} test_cnvlib.py ${python.interpreter} test_commands.py ${python.interpreter} test_r.py + popd # test/ ''; + pythonImportsCheck = [ + "cnvlib" + ]; + meta = with lib; { homepage = "https://cnvkit.readthedocs.io"; description = "A Python library and command-line software toolkit to infer and visualize copy number from high-throughput DNA sequencing data"; diff --git a/pkgs/development/python-modules/expecttest/default.nix b/pkgs/development/python-modules/expecttest/default.nix new file mode 100644 index 00000000000..db64b386f24 --- /dev/null +++ b/pkgs/development/python-modules/expecttest/default.nix @@ -0,0 +1,34 @@ +{ buildPythonPackage +, fetchFromGitHub +, hypothesis +, lib +, poetry +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "expecttest"; + version = "0.1.3"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "ezyang"; + repo = pname; + rev = "v${version}"; + hash = "sha256-5CnpVFSbf3FcAa06Y7atG8sxu8uevpfrliB2HuVcrx0="; + }; + + buildInputs = [ poetry ]; + + checkInputs = [ hypothesis pytestCheckHook ]; + + pythonImportsCheck = [ "expecttest" ]; + + meta = { + maintainers = [ lib.maintainers.SomeoneSerge ]; + license = lib.licenses.mit; + description = ''EZ Yang "golden" tests (testing against a reference implementation)''; + homepage = "https://github.com/ezyang/expecttest"; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/development/python-modules/fakeredis/default.nix b/pkgs/development/python-modules/fakeredis/default.nix index a75f2e3da95..b42ecc5bd26 100644 --- a/pkgs/development/python-modules/fakeredis/default.nix +++ b/pkgs/development/python-modules/fakeredis/default.nix @@ -1,13 +1,13 @@ { lib , aioredis -, async_generator , buildPythonPackage -, fetchPypi +, fetchFromGitHub , hypothesis , lupa +, poetry-core , pytest-asyncio -, pytest-mock , pytestCheckHook +, pytest-mock , pythonOlder , redis , six @@ -16,44 +16,51 @@ buildPythonPackage rec { pname = "fakeredis"; - version = "1.7.5"; + version = "1.8"; format = "pyproject"; disabled = pythonOlder "3.7"; - src = fetchPypi { - inherit pname version; - hash = "sha256-STdcYwmB3UBF2akuJwn81Edskfkn4CKEk+76Yl5wUTM="; + src = fetchFromGitHub { + owner = "dsoftwareinc"; + repo = "fakeredis-py"; + rev = "v${version}"; + hash = "sha256-HWt2EE25h8zUarknrNMBJmizP3rNM9W8IEUMxLyUii8="; }; - postPatch = '' - substituteInPlace setup.cfg \ - --replace "redis<4.2.0" "redis" - ''; + nativeBuildInputs = [ + poetry-core + ]; propagatedBuildInputs = [ - aioredis - lupa redis six sortedcontainers ]; checkInputs = [ - async_generator hypothesis pytest-asyncio pytest-mock pytestCheckHook ]; + passthru.optional-dependencies = { + lua = [ + lupa + ]; + aioredis = [ + aioredis + ]; + }; + pythonImportsCheck = [ "fakeredis" ]; meta = with lib; { description = "Fake implementation of Redis API"; - homepage = "https://github.com/jamesls/fakeredis"; + homepage = "https://github.com/dsoftwareinc/fakeredis-py"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; }; diff --git a/pkgs/development/python-modules/functorch/default.nix b/pkgs/development/python-modules/functorch/default.nix new file mode 100644 index 00000000000..05b96077edc --- /dev/null +++ b/pkgs/development/python-modules/functorch/default.nix @@ -0,0 +1,98 @@ +{ buildPythonPackage +, expecttest +, fetchFromGitHub +, lib +, ninja +, pytestCheckHook +, python +, pytorch +, which +}: + +buildPythonPackage rec { + pname = "functorch"; + version = "0.1.1"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "pytorch"; + repo = pname; + rev = "v${version}"; + hash = "sha256-FidM04Q3hkGEDr4dthJv0MWtGiRfnWxJoyzu7Wl3SD8="; + }; + + # Somewhat surprisingly pytorch is actually necessary for the build process. + # `setup.py` imports `torch.utils.cpp_extension`. + nativeBuildInputs = [ + ninja + pytorch + which + ]; + + preCheck = '' + rm -rf functorch/ + ''; + + checkInputs = [ + expecttest + pytestCheckHook + ]; + + # See https://github.com/pytorch/functorch/issues/835. + disabledTests = [ + # RuntimeError: ("('...', '') is in PyTorch's OpInfo db ", "but is not in functorch's OpInfo db. Please regenerate ", '... and add the new tests to ', 'denylists if necessary.') + "test_coverage_bernoulli_cpu_float32" + "test_coverage_column_stack_cpu_float32" + "test_coverage_diagflat_cpu_float32" + "test_coverage_flatten_cpu_float32" + "test_coverage_linalg_lu_factor_cpu_float32" + "test_coverage_linalg_lu_factor_ex_cpu_float32" + "test_coverage_multinomial_cpu_float32" + "test_coverage_nn_functional_dropout2d_cpu_float32" + "test_coverage_nn_functional_feature_alpha_dropout_with_train_cpu_float32" + "test_coverage_nn_functional_feature_alpha_dropout_without_train_cpu_float32" + "test_coverage_nn_functional_kl_div_cpu_float32" + "test_coverage_normal_cpu_float32" + "test_coverage_normal_number_mean_cpu_float32" + "test_coverage_pca_lowrank_cpu_float32" + "test_coverage_round_decimals_0_cpu_float32" + "test_coverage_round_decimals_3_cpu_float32" + "test_coverage_round_decimals_neg_3_cpu_float32" + "test_coverage_scatter_reduce_cpu_float32" + "test_coverage_svd_lowrank_cpu_float32" + + # > self.assertEqual(len(functorch_lagging_op_db), len(op_db)) + # E AssertionError: Scalars are not equal! + # E + # E Absolute difference: 19 + # E Relative difference: 0.03525046382189239 + "test_functorch_lagging_op_db_has_opinfos_cpu" + + # RuntimeError: PyTorch not compiled with LLVM support! + "test_bias_gelu" + "test_binary_ops" + "test_broadcast1" + "test_broadcast2" + "test_float_double" + "test_float_int" + "test_fx_trace" + "test_int_long" + "test_issue57611" + "test_slice1" + "test_slice2" + "test_transposed1" + "test_transposed2" + "test_unary_ops" + ]; + + pythonImportsCheck = [ "functorch" ]; + + meta = with lib; { + description = "JAX-like composable function transforms for PyTorch"; + homepage = "https://pytorch.org/functorch"; + license = licenses.bsd3; + maintainers = with maintainers; [ samuela ]; + # See https://github.com/NixOS/nixpkgs/pull/174248#issuecomment-1139895064. + platforms = platforms.x86_64; + }; +} diff --git a/pkgs/development/python-modules/geocachingapi/default.nix b/pkgs/development/python-modules/geocachingapi/default.nix index 7bc12f10319..df537283efc 100644 --- a/pkgs/development/python-modules/geocachingapi/default.nix +++ b/pkgs/development/python-modules/geocachingapi/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "geocachingapi"; - version = "0.2.2"; + version = "0.2.3"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "Sholofly"; repo = "geocachingapi-python"; rev = "refs/tags/${version}"; - sha256 = "sha256-EoAY3kUFCxQY2Dodwl0TWye5MTjjHvbna5AHha1UzCc="; + sha256 = "sha256-C4nj4KFEwsY5V5f0Q1x+9sD8Ihz5m7b3jg2pOyB/pDg="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/laundrify-aio/default.nix b/pkgs/development/python-modules/laundrify-aio/default.nix new file mode 100644 index 00000000000..9c5e34dbf87 --- /dev/null +++ b/pkgs/development/python-modules/laundrify-aio/default.nix @@ -0,0 +1,41 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, aiohttp +, pyjwt +}: + +buildPythonPackage rec { + pname = "laundrify-aio"; + version = "1.1.2"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "laundrify"; + repo = "laundrify-pypi"; + rev = "v${version}"; + hash = "sha256-+dTvYn4hux3Y19kWZwxhdkBARmfD8SuNlYWM/ET9K2M="; + }; + + propagatedBuildInputs = [ + aiohttp + pyjwt + ]; + + # Module has no tests + doCheck = false; + + pythonImportsCheck = [ + "laundrify_aio" + ]; + + meta = with lib; { + description = "Module to communicate with the laundrify API"; + homepage = "https://github.com/laundrify/laundrify-pypi"; + license = licenses.asl20; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/phonenumbers/default.nix b/pkgs/development/python-modules/phonenumbers/default.nix index 2366d94ed8c..635222917e2 100644 --- a/pkgs/development/python-modules/phonenumbers/default.nix +++ b/pkgs/development/python-modules/phonenumbers/default.nix @@ -6,12 +6,12 @@ buildPythonPackage rec { pname = "phonenumbers"; - version = "8.12.48"; + version = "8.12.49"; format = "setuptools"; src = fetchPypi { inherit pname version; - sha256 = "sha256-rwaB+/6foHITdq2bcp53Ll0gvyz1DZ3Yyi8L3Xjp8M4="; + sha256 = "sha256-xpFmFhXr3JC+/0WPj798C/t48hoKpAolbMK6baQeOTs="; }; checkInputs = [ diff --git a/pkgs/development/python-modules/pomegranate/default.nix b/pkgs/development/python-modules/pomegranate/default.nix index cb87f352154..02b0a340c9e 100644 --- a/pkgs/development/python-modules/pomegranate/default.nix +++ b/pkgs/development/python-modules/pomegranate/default.nix @@ -15,28 +15,16 @@ buildPythonPackage rec { pname = "pomegranate"; - version = "0.13.5"; + version = "0.14.8"; src = fetchFromGitHub { repo = pname; owner = "jmschrei"; - rev = "v${version}"; - sha256 = "1hbxchp3daykkf1fa79a9mh34p78bygqcf1nv4qwkql3gw0pd6l7"; + # no tags for recent versions: https://github.com/jmschrei/pomegranate/issues/974 + rev = "0652e955c400bc56df5661db3298a06854c7cce8"; + sha256 = "16g49nl2bgnh6nh7bd21s393zbksdvgp9l13ww2diwhplj6hlly3"; }; - patches = lib.optionals (lib.versionOlder version "13.6") [ - # Fix compatibility with recent joblib release, will be part of the next - # pomegranate release after 0.13.5 - (fetchpatch { - url = "https://github.com/jmschrei/pomegranate/commit/42d14bebc44ffd4a778b2a6430aa845591b7c3b7.patch"; - sha256 = "0f9cx0fj9xkr3hch7jyrn76zjypilh5bqw734caaw6g2m49lvbff"; - }) - ] ++ [ - # Likely an upstream test bug and not a real problem: - # https://github.com/jmschrei/pomegranate/issues/939 - ./disable-failed-on-nextworkx-2.6.patch - ] ; - propagatedBuildInputs = [ numpy scipy cython networkx joblib pyyaml ]; checkInputs = [ pandas nose ]; # as of 0.13.5, it depends explicitly on nose, rather than pytest. diff --git a/pkgs/development/python-modules/pykka/default.nix b/pkgs/development/python-modules/pykka/default.nix index 95d4597fd57..060a738911d 100644 --- a/pkgs/development/python-modules/pykka/default.nix +++ b/pkgs/development/python-modules/pykka/default.nix @@ -9,15 +9,15 @@ buildPythonPackage rec { pname = "pykka"; - version = "3.0.2"; + version = "3.1.1"; format = "pyproject"; disabled = pythonOlder "3.6.1"; src = fetchFromGitHub { owner = "jodal"; repo = pname; - rev = "v${version}"; - sha256 = "1cy4pr05xlsny9g573q7njsv7jaaysi1qzafm6f82y57jqnmziks"; + rev = "refs/tags/v${version}"; + sha256 = "sha256-bvRjFpXufGygTgPfEOJOCXFbMy3dNlrTHlGoaIG/Fbs="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/rns/default.nix b/pkgs/development/python-modules/rns/default.nix index 26126e92b97..88e94d8927a 100644 --- a/pkgs/development/python-modules/rns/default.nix +++ b/pkgs/development/python-modules/rns/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "rns"; - version = "0.3.6"; + version = "0.3.7"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "markqvist"; repo = "Reticulum"; rev = "refs/tags/${version}"; - hash = "sha256-awVUE5sViaGBne82oAxGeabZSnLn/dzBQTwP7xRdYKE="; + hash = "sha256-fihcDMQzFuQGOrADxjUcEcPqiolpQgPwyFNW0ZVXwhU="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/tools/analysis/checkov/default.nix b/pkgs/development/tools/analysis/checkov/default.nix index 4bf54e22aa6..108faa5221a 100644 --- a/pkgs/development/tools/analysis/checkov/default.nix +++ b/pkgs/development/tools/analysis/checkov/default.nix @@ -32,14 +32,14 @@ with py.pkgs; buildPythonApplication rec { pname = "checkov"; - version = "2.0.1162"; + version = "2.0.1174"; format = "setuptools"; src = fetchFromGitHub { owner = "bridgecrewio"; repo = pname; rev = version; - hash = "sha256-WE0pND22DucKBSY4rtZfPH9AKgBslCoUOj45Rkd9qBc="; + hash = "sha256-gQuMdI4KCLQp52T9z+zxnjmKFPh97NrKSY9dgNm+6/c="; }; nativeBuildInputs = with py.pkgs; [ diff --git a/pkgs/games/polymc/default.nix b/pkgs/games/polymc/default.nix index 2ec92d43851..a0f4abc1e7c 100644 --- a/pkgs/games/polymc/default.nix +++ b/pkgs/games/polymc/default.nix @@ -19,13 +19,13 @@ mkDerivation rec { pname = "polymc"; - version = "1.3.0"; + version = "1.3.1"; src = fetchFromGitHub { owner = "PolyMC"; repo = "PolyMC"; rev = version; - sha256 = "sha256-zXO436MjzcCivM/NqC+QzSxzyL4RqsaujwrIySpgJy0="; + sha256 = "sha256-oTzhKGDi1Kr3JXY9dYQf1rVDPFr52tJ7L+rb5LCbtBE="; fetchSubmodules = true; }; diff --git a/pkgs/games/tinyfugue/default.nix b/pkgs/games/tinyfugue/default.nix index 763241f2909..e75d2f12b94 100644 --- a/pkgs/games/tinyfugue/default.nix +++ b/pkgs/games/tinyfugue/default.nix @@ -23,6 +23,12 @@ stdenv.mkDerivation rec { [ ncurses zlib ] ++ optional sslSupport openssl; + # Workaround build failure on -fno-common toolchains like upstream + # gcc-10. Otherwise build fails as: + # ld: world.o:/build/tf-50b8/src/socket.h:24: multiple definition of + # `world_decl'; command.o:/build/tf-50b8/src/socket.h:24: first defined here + NIX_CFLAGS_COMPILE="-fcommon"; + meta = { homepage = "http://tinyfugue.sourceforge.net/"; description = "A terminal UI, screen-oriented MUD client"; diff --git a/pkgs/servers/miniflux/default.nix b/pkgs/servers/miniflux/default.nix index fa1133b7d53..4747db0b79c 100644 --- a/pkgs/servers/miniflux/default.nix +++ b/pkgs/servers/miniflux/default.nix @@ -2,7 +2,7 @@ let pname = "miniflux"; - version = "2.0.36"; + version = "2.0.37"; in buildGoModule { inherit pname version; @@ -11,10 +11,10 @@ in buildGoModule { owner = pname; repo = "v2"; rev = version; - sha256 = "sha256-Ly4Ep+ZyjEb1ywXO/W1P1ZDvqSAtJY4wuE8n9jbbeuU="; + sha256 = "sha256-cmzPm/kvl+eIQOhGFAqW7dyLcEi836ohJ7sbMNkdXCA="; }; - vendorSha256 = "sha256-ZEIQeN7t9Az1W6T2Z+ZKHqs2O8UNNMl0nANM1mVyiTA="; + vendorSha256 = "sha256-3VlyTYHE1ll2LwNTPKmpdNr1PKxzjhB2TWgr5Gl1RGE="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/tools/admin/acme-sh/default.nix b/pkgs/tools/admin/acme-sh/default.nix index 5c78b0ee212..4a2864f04d9 100644 --- a/pkgs/tools/admin/acme-sh/default.nix +++ b/pkgs/tools/admin/acme-sh/default.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "acme.sh"; - version = "3.0.2"; + version = "3.0.4"; src = fetchFromGitHub { owner = "acmesh-official"; repo = "acme.sh"; rev = version; - sha256 = "sha256-sv67XjNQ/+E7uF7IW+96BeOWm3uonMboehVtBh1l9/E="; + sha256 = "sha256-PHxL48Gj6CJG4r3LXKQCU0KARmTu7DQrC29oLi7gvU8="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/backup/duplicity/default.nix b/pkgs/tools/backup/duplicity/default.nix index 232108d8e9f..4d83b693075 100644 --- a/pkgs/tools/backup/duplicity/default.nix +++ b/pkgs/tools/backup/duplicity/default.nix @@ -70,6 +70,7 @@ pythonPackages.buildPythonApplication rec { pythonPath = with pythonPackages; [ b2sdk + boto boto3 cffi cryptography diff --git a/pkgs/tools/filesystems/djmount/default.nix b/pkgs/tools/filesystems/djmount/default.nix index 3111be5b4d1..b53656a069e 100644 --- a/pkgs/tools/filesystems/djmount/default.nix +++ b/pkgs/tools/filesystems/djmount/default.nix @@ -17,7 +17,13 @@ stdenv.mkDerivation rec { ''; nativeBuildInputs = [ pkg-config ]; - buildInputs = [ fuse]; + buildInputs = [ fuse ]; + + # Workaround build failure on -fno-common toolchains like upstream + # gcc-10. Otherwise build fails as: + # ld: libupnp/upnp/.libs/libupnp.a(libupnp_la-gena_ctrlpt.o):libupnp/upnp/src/inc/upnpapi.h:163: + # multiple definition of `pVirtualDirList'; libupnp/upnp/.libs/libupnp.a(libupnp_la-upnpapi.o):libupnp/upnp/src/inc/upnpapi.h:163: first defined here + NIX_CFLAGS_COMPILE = "-fcommon"; meta = { homepage = "http://djmount.sourceforge.net/"; diff --git a/pkgs/tools/filesystems/genimage/default.nix b/pkgs/tools/filesystems/genimage/default.nix index b3ca1ae8394..e23bb062700 100644 --- a/pkgs/tools/filesystems/genimage/default.nix +++ b/pkgs/tools/filesystems/genimage/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "genimage"; - version = "9"; + version = "15"; src = fetchurl { url = "https://public.pengutronix.de/software/genimage/genimage-${version}.tar.xz"; - sha256 = "0y4h8x8lqxam8m90rdfq8cg5137kvilxr3d1qzddpx7nxpvmmwv9"; + sha256 = "0gh05pkmqn9ck79mwvl2812ssh0fb0xbq72iwh7b641ki2zj9jlv"; }; nativeBuildInputs = [ pkg-config ]; @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { # documentation. docdir="$out/share/doc/genimage" mkdir -p "$docdir" - cp -v README "$docdir" + cp -v README.rst "$docdir" ''; meta = with lib; { diff --git a/pkgs/tools/games/er-patcher/default.nix b/pkgs/tools/games/er-patcher/default.nix new file mode 100644 index 00000000000..0b4ff71c4a2 --- /dev/null +++ b/pkgs/tools/games/er-patcher/default.nix @@ -0,0 +1,38 @@ +{ lib +, runCommandLocal +, fetchFromGitHub +, python3 +}: + +runCommandLocal "er-patcher" rec { + pname = "er-patcher"; + version = "1.04-1"; + + src = fetchFromGitHub { + owner = "gurrgur"; + repo = "er-patcher"; + rev = "v${version}"; + sha256 = "sha256-SnqYGtdtl1KMwUAWvdPK0heHMBtwpH2Jk6lieng6ngw="; + }; + + buildInputs = [ + python3 + ]; + + meta = with lib; { + homepage = "https://github.com/gurrgur/er-patcher"; + changelog = "https://github.com/gurrgur/er-patcher/releases/tag/v${version}"; + description = "Enhancement patches for Elden Ring adding ultrawide support, custom frame rate limits and more"; + longDescription = '' + A tool aimed at enhancing the experience when playing the game on linux through proton or natively on windows. + This tool is based on patching the game executable through hex-edits. However it is done in a safe and non-destructive way, + that ensures the patched executable is never run with EAC enabled (unless explicity told to do so). Use at your own risk! + ''; + license = licenses.mit; + maintainers = [ maintainers.ivar ]; + }; +} '' + mkdir -p $out/bin + install -Dm755 $src/er-patcher $out/bin/er-patcher + patchShebangs $out/bin/er-patcher +'' diff --git a/pkgs/tools/misc/gh-cal/default.nix b/pkgs/tools/misc/gh-cal/default.nix new file mode 100644 index 00000000000..f4f4a66a496 --- /dev/null +++ b/pkgs/tools/misc/gh-cal/default.nix @@ -0,0 +1,29 @@ +{ lib +, stdenv +, fetchCrate +, rustPlatform +, pkgconfig +, openssl +, Security +}: +rustPlatform.buildRustPackage rec { + pname = "gh-cal"; + version = "0.1.3"; + + src = fetchCrate { + inherit pname version; + sha256 = "sha256-x9DekflZoXxH964isWCi6YuV3v/iIyYOuRYVgKaUBx0="; + }; + + cargoSha256 = "sha256-73gqk0DjhaLGIEP5VQQlubPomxHQyg4RnY5XTgE7msQ="; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ]; + + meta = with lib; { + description = "GitHub contributions calender terminal viewer"; + homepage = "https://github.com/mrshmllow/gh-cal"; + license = licenses.mit; + maintainers = with maintainers; [ loicreynier ]; + }; +} diff --git a/pkgs/tools/networking/acme-client/default.nix b/pkgs/tools/networking/acme-client/default.nix index f20d4eefb47..427bcd62233 100644 --- a/pkgs/tools/networking/acme-client/default.nix +++ b/pkgs/tools/networking/acme-client/default.nix @@ -1,31 +1,39 @@ -{ lib, stdenv +{ lib +, stdenv , fetchurl , libbsd , libressl , pkg-config }: -with lib; - stdenv.mkDerivation rec { pname = "acme-client"; - version = "1.2.0"; + version = "1.3.0"; src = fetchurl { - url = "https://data.wolfsden.cz/sources/acme-client-${version}.tar.xz"; - sha256 = "sha256-fRSYwQmyV0WapjUJNG0UGO/tUDNTGUraj/BWq/a1QTo="; + url = "https://data.wolfsden.cz/sources/acme-client-${version}.tar.gz"; + hash = "sha256-rIeWZSOT+nPzLf2mDtOkN/wmCGffG4H6PCQb2Vxbxxk="; }; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [ libbsd libressl ]; + nativeBuildInputs = [ + pkg-config + ]; - makeFlags = [ "PREFIX=${placeholder "out"}" ]; + buildInputs = [ + libbsd + libressl + ]; - meta = { - homepage = "https://sr.ht/~graywolf/acme-client-portable/"; + makeFlags = [ + "PREFIX=${placeholder "out"}" + ]; + + meta = with lib; { description = "Secure ACME/Let's Encrypt client"; + homepage = "https://sr.ht/~graywolf/acme-client-portable/"; platforms = platforms.unix; license = licenses.isc; maintainers = with maintainers; [ pmahoney ]; }; } + diff --git a/pkgs/tools/networking/dibbler/default.nix b/pkgs/tools/networking/dibbler/default.nix index 4175de2e23c..b6e5229a2f2 100644 --- a/pkgs/tools/networking/dibbler/default.nix +++ b/pkgs/tools/networking/dibbler/default.nix @@ -13,7 +13,11 @@ stdenv.mkDerivation rec { "--enable-resolvconf" ]; - NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-D__APPLE_USE_RFC_2292=1"; + # -fcommon: Workaround build failure on -fno-common toolchains like upstream + # gcc-10. Otherwise build fails as: + # ld: ./Port-linux/libLowLevel.a(libLowLevel_a-interface.o):(.bss+0x4): multiple definition of `interface_auto_up'; + # ./Port-linux/libLowLevel.a(libLowLevel_a-lowlevel-linux-link-state.o):(.bss+0x74): first defined here + NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isDarwin "-D__APPLE_USE_RFC_2292=1" + " -fcommon"; meta = with lib; { description = "Portable DHCPv6 implementation"; diff --git a/pkgs/tools/networking/eternal-terminal/default.nix b/pkgs/tools/networking/eternal-terminal/default.nix index 0fb559afc99..fe922a44509 100644 --- a/pkgs/tools/networking/eternal-terminal/default.nix +++ b/pkgs/tools/networking/eternal-terminal/default.nix @@ -12,19 +12,15 @@ stdenv.mkDerivation rec { pname = "eternal-terminal"; - version = "6.1.11"; + version = "6.2.1"; src = fetchFromGitHub { owner = "MisterTea"; repo = "EternalTerminal"; rev = "et-v${version}"; - hash = "sha256-cCZbG0CD5V/FTj1BuVr083EJ+BCgIcKHomNtpJb3lOo="; + hash = "sha256-YQ8Qx6RTmDoNWY8AQlnBJJendQl+tF1QA+Z6h/ar9qs="; }; - preBuild = '' - cp ${catch2}/include/catch2/catch.hpp ../external_imported/Catch2/single_include/catch2/catch.hpp - ''; - nativeBuildInputs = [ cmake ]; @@ -37,6 +33,10 @@ stdenv.mkDerivation rec { zlib ]; + preBuild = '' + cp ${catch2}/include/catch2/catch.hpp ../external_imported/Catch2/single_include/catch2/catch.hpp + ''; + cmakeFlags = [ "-DDISABLE_VCPKG=TRUE" "-DDISABLE_SENTRY=TRUE" diff --git a/pkgs/tools/networking/tftp-hpa/default.nix b/pkgs/tools/networking/tftp-hpa/default.nix index f8e028dc616..987315b8351 100644 --- a/pkgs/tools/networking/tftp-hpa/default.nix +++ b/pkgs/tools/networking/tftp-hpa/default.nix @@ -8,6 +8,12 @@ stdenv.mkDerivation rec { sha256 = "12vidchglhyc20znq5wdsbhi9mqg90jnl7qr9qs8hbvaz4fkdvmg"; }; + # Workaround build failure on -fno-common toolchains like upstream + # gcc-10. Otherwise build fails as: + # ld: main.o:/build/tftp-hpa-5.2/tftp/main.c:98: multiple definition of + # `toplevel'; tftp.o:/build/tftp-hpa-5.2/tftp/tftp.c:51: first defined here + NIX_CFLAGS_COMPILE="-fcommon"; + meta = with lib; { description = "TFTP tools - a lot of fixes on top of BSD TFTP"; maintainers = with maintainers; [ raskin ]; diff --git a/pkgs/tools/package-management/auditwheel/default.nix b/pkgs/tools/package-management/auditwheel/default.nix index ccb85080824..b53ebff9c55 100644 --- a/pkgs/tools/package-management/auditwheel/default.nix +++ b/pkgs/tools/package-management/auditwheel/default.nix @@ -8,13 +8,12 @@ python3.pkgs.buildPythonApplication rec { pname = "auditwheel"; - version = "4.0.0"; - - disabled = python3.pkgs.pythonOlder "3.6"; + version = "5.1.2"; + format = "setuptools"; src = python3.pkgs.fetchPypi { inherit pname version; - sha256 = "03a079fe273f42336acdb5953ff5ce7578f93ca6a832b16c835fe337a1e2bd4a"; + hash = "sha256-PuWDABSTHqhK9c0GXGN7ZhTvoD2biL2Pv8kk5+0B1ro="; }; nativeBuildInputs = with python3.pkgs; [ @@ -26,15 +25,17 @@ python3.pkgs.buildPythonApplication rec { setuptools ]; - # integration tests require docker and networking - disabledTestPaths = [ "tests/integration" ]; - checkInputs = with python3.pkgs; [ pretend pytestCheckHook ]; - # ensure that there are no undeclared deps + # Integration tests require docker and networking + disabledTestPaths = [ + "tests/integration" + ]; + + # Ensure that there are no undeclared deps postCheck = '' PATH= PYTHONPATH= $out/bin/auditwheel --version > /dev/null ''; diff --git a/pkgs/tools/security/gitleaks/default.nix b/pkgs/tools/security/gitleaks/default.nix index cc4f60f1fb3..9569472f2f5 100644 --- a/pkgs/tools/security/gitleaks/default.nix +++ b/pkgs/tools/security/gitleaks/default.nix @@ -5,13 +5,13 @@ buildGoModule rec { pname = "gitleaks"; - version = "8.8.5"; + version = "8.8.6"; src = fetchFromGitHub { owner = "zricethezav"; repo = pname; rev = "v${version}"; - sha256 = "sha256-+vuT60RtynjWNjBPpUzeKstqKrEg7pmZbl6qpGs3H/s="; + sha256 = "sha256-o5pV3+ndMsXsXY21l9CfZQp1nhMsLddBKaf9fTQbw5k="; }; vendorSha256 = "sha256-X8z9iKRR3PptNHwy1clZG8QsClsjbW45nZb2fHGfSYk="; diff --git a/pkgs/tools/security/metasploit/Gemfile b/pkgs/tools/security/metasploit/Gemfile index eefa52e57b9..82458891562 100644 --- a/pkgs/tools/security/metasploit/Gemfile +++ b/pkgs/tools/security/metasploit/Gemfile @@ -1,4 +1,4 @@ # frozen_string_literal: true source "https://rubygems.org" -gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.1.43" +gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.2.0" diff --git a/pkgs/tools/security/metasploit/Gemfile.lock b/pkgs/tools/security/metasploit/Gemfile.lock index 1ee626e7772..6eb5c347df9 100644 --- a/pkgs/tools/security/metasploit/Gemfile.lock +++ b/pkgs/tools/security/metasploit/Gemfile.lock @@ -1,9 +1,9 @@ GIT remote: https://github.com/rapid7/metasploit-framework - revision: c9fe91b3cd4e8738a0da5a23bf8f485d16961751 - ref: refs/tags/6.1.43 + revision: 9c5461dc68eb99283540134cd9d9f3ce6659bd7c + ref: refs/tags/6.2.0 specs: - metasploit-framework (6.1.43) + metasploit-framework (6.2.0) actionpack (~> 6.0) activerecord (~> 6.0) activesupport (~> 6.0) @@ -129,13 +129,13 @@ GEM arel-helpers (2.14.0) activerecord (>= 3.1.0, < 8) aws-eventstream (1.2.0) - aws-partitions (1.589.0) + aws-partitions (1.594.0) aws-sdk-core (3.131.1) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.525.0) aws-sigv4 (~> 1.1) jmespath (~> 1, >= 1.6.1) - aws-sdk-ec2 (1.315.0) + aws-sdk-ec2 (1.317.0) aws-sdk-core (~> 3, >= 3.127.0) aws-sigv4 (~> 1.1) aws-sdk-iam (1.68.0) @@ -177,29 +177,10 @@ GEM eventmachine (1.2.7) faker (2.21.0) i18n (>= 1.8.11, < 2) - faraday (1.10.0) - faraday-em_http (~> 1.0) - faraday-em_synchrony (~> 1.0) - faraday-excon (~> 1.1) - faraday-httpclient (~> 1.0) - faraday-multipart (~> 1.0) - faraday-net_http (~> 1.0) - faraday-net_http_persistent (~> 1.0) - faraday-patron (~> 1.0) - faraday-rack (~> 1.0) - faraday-retry (~> 1.0) + faraday (2.3.0) + faraday-net_http (~> 2.0) ruby2_keywords (>= 0.0.4) - faraday-em_http (1.0.0) - faraday-em_synchrony (1.0.0) - faraday-excon (1.1.0) - faraday-httpclient (1.0.1) - faraday-multipart (1.0.3) - multipart-post (>= 1.2, < 3) - faraday-net_http (1.0.1) - faraday-net_http_persistent (1.2.0) - faraday-patron (1.0.0) - faraday-rack (1.0.0) - faraday-retry (1.0.3) + faraday-net_http (2.0.3) faye-websocket (0.11.1) eventmachine (>= 0.12.0) websocket-driver (>= 0.5.1) @@ -215,7 +196,7 @@ GEM hrr_rb_ssh-ed25519 (0.4.2) ed25519 (~> 1.2) hrr_rb_ssh (>= 0.4) - http-cookie (1.0.4) + http-cookie (1.0.5) domain_name (~> 0.5) http_parser.rb (0.8.0) httpclient (2.8.3) @@ -229,7 +210,7 @@ GEM rkelly-remix json (2.6.2) little-plugger (1.1.4) - logging (2.3.0) + logging (2.3.1) little-plugger (~> 1.1) multi_json (~> 1.14) loofah (2.18.0) @@ -270,9 +251,8 @@ GEM mini_portile2 (2.8.0) minitest (5.15.0) mqtt (0.5.0) - msgpack (1.5.1) + msgpack (1.5.2) multi_json (1.15.0) - multipart-post (2.1.1) mustermann (1.1.1) ruby2_keywords (~> 0.0.1) nessus_rest (0.1.6) @@ -291,9 +271,9 @@ GEM mini_portile2 (~> 2.8.0) racc (~> 1.4) nori (2.6.0) - octokit (4.22.0) - faraday (>= 0.9) - sawyer (~> 0.8.0, >= 0.5.3) + octokit (4.23.0) + faraday (>= 1, < 3) + sawyer (~> 0.9) openssl-ccm (1.2.2) openssl-cmac (2.0.1) openvas-omp (0.0.4) @@ -312,7 +292,7 @@ GEM puma (5.6.4) nio4r (~> 2.0) racc (1.6.0) - rack (2.2.3) + rack (2.2.3.1) rack-protection (2.2.0) rack rack-test (1.1.0) @@ -388,7 +368,7 @@ GEM ruby-macho (3.0.0) ruby-rc4 (0.1.5) ruby2_keywords (0.0.5) - ruby_smb (3.1.2) + ruby_smb (3.1.3) bindata openssl-ccm openssl-cmac @@ -396,9 +376,9 @@ GEM windows_error (>= 0.1.4) rubyntlm (0.6.3) rubyzip (2.3.2) - sawyer (0.8.2) + sawyer (0.9.1) addressable (>= 2.3.5) - faraday (> 0.8, < 2.0) + faraday (>= 0.17.3, < 3) simpleidn (0.2.1) unf (~> 0.1.4) sinatra (2.2.0) @@ -415,7 +395,7 @@ GEM rack (>= 1, < 3) thor (1.2.1) tilt (2.0.10) - timeout (0.2.0) + timeout (0.3.0) ttfunk (1.7.0) tzinfo (2.0.4) concurrent-ruby (~> 1.0) @@ -423,7 +403,7 @@ GEM tzinfo (>= 1.0.0) unf (0.1.4) unf_ext - unf_ext (0.0.8.1) + unf_ext (0.0.8.2) unix-crypt (1.3.0) warden (1.2.9) rack (>= 2.0.9) diff --git a/pkgs/tools/security/metasploit/default.nix b/pkgs/tools/security/metasploit/default.nix index 805ae4839dd..ab1353598b0 100644 --- a/pkgs/tools/security/metasploit/default.nix +++ b/pkgs/tools/security/metasploit/default.nix @@ -15,13 +15,13 @@ let }; in stdenv.mkDerivation rec { pname = "metasploit-framework"; - version = "6.1.43"; + version = "6.2.0"; src = fetchFromGitHub { owner = "rapid7"; repo = "metasploit-framework"; rev = version; - sha256 = "sha256-tw7WuBFSYWDh2saddei6xCQuhKX1O6EiuoKf4sfTYpo="; + sha256 = "sha256-rVev08itscDnJjVrzmISm5X1HzXcF64hI/EEyHcFS4Q="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/tools/security/metasploit/gemset.nix b/pkgs/tools/security/metasploit/gemset.nix index c86fbbf05f6..8b2c65c1a12 100644 --- a/pkgs/tools/security/metasploit/gemset.nix +++ b/pkgs/tools/security/metasploit/gemset.nix @@ -104,10 +104,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1blp6b22w54y7a969pzzsdrkqqfa57h0b9qj79l6l9ywylkx49qq"; + sha256 = "1mxm4m2dh71b6rhcqag78j9iy3zz9yr6rw4zsw0qfxh3gld2vwiq"; type = "gem"; }; - version = "1.589.0"; + version = "1.594.0"; }; aws-sdk-core = { groups = ["default"]; @@ -124,10 +124,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1s87d49r43nwq696ga0n155f8fm96lhhv3vjdc9qsh82li21nwcf"; + sha256 = "0ihv5bbyphpbifviw57nfw733d1mcaf8qy7ws7hfbb462cizgxl0"; type = "gem"; }; - version = "1.315.0"; + version = "1.317.0"; }; aws-sdk-iam = { groups = ["default"]; @@ -354,110 +354,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "00palwawk897p5gypw5wjrh93d4p0xz2yl9w93yicb4kq7amh8d4"; + sha256 = "1rvxs99wvrcw65v8ykppih323kw1qr5pnzgw3daxch1sfj828f2k"; type = "gem"; }; - version = "1.10.0"; - }; - faraday-em_http = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "12cnqpbak4vhikrh2cdn94assh3yxza8rq2p9w2j34bqg5q4qgbs"; - type = "gem"; - }; - version = "1.0.0"; - }; - faraday-em_synchrony = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1vgrbhkp83sngv6k4mii9f2s9v5lmp693hylfxp2ssfc60fas3a6"; - type = "gem"; - }; - version = "1.0.0"; - }; - faraday-excon = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0h09wkb0k0bhm6dqsd47ac601qiaah8qdzjh8gvxfd376x1chmdh"; - type = "gem"; - }; - version = "1.1.0"; - }; - faraday-httpclient = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0fyk0jd3ks7fdn8nv3spnwjpzx2lmxmg2gh4inz3by1zjzqg33sc"; - type = "gem"; - }; - version = "1.0.1"; - }; - faraday-multipart = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "03qfi9020ynf7hkdiaq01sd2mllvw7fg4qiin3pk028b4wv23j3j"; - type = "gem"; - }; - version = "1.0.3"; + version = "2.3.0"; }; faraday-net_http = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1fi8sda5hc54v1w3mqfl5yz09nhx35kglyx72w7b8xxvdr0cwi9j"; + sha256 = "1mbgcnjikbqa5d0pyn6cv30f33p2vaj3rgzkx45gwxw2gmx4wlb6"; type = "gem"; }; - version = "1.0.1"; - }; - faraday-net_http_persistent = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0dc36ih95qw3rlccffcb0vgxjhmipsvxhn6cw71l7ffs0f7vq30b"; - type = "gem"; - }; - version = "1.2.0"; - }; - faraday-patron = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "19wgsgfq0xkski1g7m96snv39la3zxz6x7nbdgiwhg5v82rxfb6w"; - type = "gem"; - }; - version = "1.0.0"; - }; - faraday-rack = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1h184g4vqql5jv9s9im6igy00jp6mrah2h14py6mpf9bkabfqq7g"; - type = "gem"; - }; - version = "1.0.0"; - }; - faraday-retry = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "153i967yrwnswqgvnnajgwp981k9p50ys1h80yz3q94rygs59ldd"; - type = "gem"; - }; - version = "1.0.3"; + version = "2.0.3"; }; faye-websocket = { groups = ["default"]; @@ -544,10 +454,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "19370bc97gsy2j4hanij246hv1ddc85hw0xjb6sj7n1ykqdlx9l9"; + sha256 = "13rilvlv8kwbzqfb644qp6hrbsj82cbqmnzcvqip1p6vqx36sxbk"; type = "gem"; }; - version = "1.0.4"; + version = "1.0.5"; }; "http_parser.rb" = { groups = ["default"]; @@ -644,10 +554,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0pkmhcxi8lp74bq5gz9lxrvaiv5w0745kk7s4bw2b1x07qqri0n9"; + sha256 = "1zflchpx4g8c110gjdcs540bk5a336nq6nmx379rdg56xw0pjd02"; type = "gem"; }; - version = "2.3.0"; + version = "2.3.1"; }; loofah = { groups = ["default"]; @@ -694,12 +604,12 @@ platforms = []; source = { fetchSubmodules = false; - rev = "c9fe91b3cd4e8738a0da5a23bf8f485d16961751"; - sha256 = "16k2sg3y57w2p8ia2fzmln22w964pbl7b7f6vbhn0qaj26wdc3mp"; + rev = "9c5461dc68eb99283540134cd9d9f3ce6659bd7c"; + sha256 = "112b0mvwh17i4chsw5yw6lgzb5cv29icwsrm4vkw1cddr39symxd"; type = "git"; url = "https://github.com/rapid7/metasploit-framework"; }; - version = "6.1.43"; + version = "6.2.0"; }; metasploit-model = { groups = ["default"]; @@ -786,10 +696,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1i0gbypr1yxwfkaxzrk0i1wz4n6v3mw7z24k65jy3q1h5lda5xbw"; + sha256 = "1hpj9mm31a5aw5qys2kglfl8jv74bkwkc5pfrpp3als89hgkznqy"; type = "gem"; }; - version = "1.5.1"; + version = "1.5.2"; }; multi_json = { groups = ["default"]; @@ -801,16 +711,6 @@ }; version = "1.15.0"; }; - multipart-post = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1zgw9zlwh2a6i1yvhhc4a84ry1hv824d6g2iw2chs3k5aylpmpfj"; - type = "gem"; - }; - version = "2.1.1"; - }; mustermann = { groups = ["default"]; platforms = []; @@ -927,10 +827,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1nmdd7klyinvrrv2mggwwmc99ykaq7i379j00i37hvvaqx4giifj"; + sha256 = "1h34b0jcvzkivx1n9vgpmys4rzwgsvmd4zij4xhbzc3pi05602zf"; type = "gem"; }; - version = "4.22.0"; + version = "4.23.0"; }; openssl-ccm = { groups = ["default"]; @@ -1047,10 +947,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0i5vs0dph9i5jn8dfc6aqd6njcafmb20rwqngrf759c9cvmyff16"; + sha256 = "1b1qsg0yfargdhmpapp2d3mlxj82wyygs9nj74w0r03diyi8swlc"; type = "gem"; }; - version = "2.2.3"; + version = "2.2.3.1"; }; rack-protection = { groups = ["default"]; @@ -1387,10 +1287,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1c0qdi787hvf3d8p3ivjlfwnj2cz70cgj656x26wnn0rhrgbad1n"; + sha256 = "0vqj4lb41vkpv0dl65caw7w9h804vzbdw5q6wvkzqv1q0k8nbqbd"; type = "gem"; }; - version = "3.1.2"; + version = "3.1.3"; }; rubyntlm = { groups = ["default"]; @@ -1417,10 +1317,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0yrdchs3psh583rjapkv33mljdivggqn99wkydkjdckcjn43j3cz"; + sha256 = "054913a0v0jwparf4ajk3k7lhbsrq906f2m10429hr7lkhxfxx2a"; type = "gem"; }; - version = "0.8.2"; + version = "0.9.1"; }; simpleidn = { groups = ["default"]; @@ -1507,10 +1407,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "10bx1hcyrjqgq6a848fc1i0cgrvx42gcy8hk4vp90y6zc7k8xzbk"; + sha256 = "00cy93b6803j3aw5nail4l0zdrj54i5n2dlk6j9z998swcjbv3b2"; type = "gem"; }; - version = "0.2.0"; + version = "0.3.0"; }; ttfunk = { groups = ["default"]; @@ -1557,10 +1457,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0bf120xbq23zjyf8zi8h1576d71g58srr8rndig0whn10w72vrxz"; + sha256 = "1yj2nz2l101vr1x9w2k83a0fag1xgnmjwp8w8rw4ik2rwcz65fch"; type = "gem"; }; - version = "0.0.8.1"; + version = "0.0.8.2"; }; unix-crypt = { groups = ["default"]; diff --git a/pkgs/tools/security/spectre-cli/default.nix b/pkgs/tools/security/spectre-cli/default.nix new file mode 100644 index 00000000000..f06365de90b --- /dev/null +++ b/pkgs/tools/security/spectre-cli/default.nix @@ -0,0 +1,73 @@ +{ lib +, stdenv +, fetchFromGitLab +, cmake +, libsodium +, json_c +, ncurses +, libxml2 +, jq +}: + +stdenv.mkDerivation rec { + pname = "spectre-cli"; + version = "unstable-2022-02-05"; + + src = fetchFromGitLab { + owner = "spectre.app"; + repo = "cli"; + rev = "a5e7aab28f44b90e5bd1204126339a81f64942d2"; + sha256 = "1hp4l1rhg7bzgx0hcai08rvcy6l9645sfngy2cr96l1bpypcld5i"; + fetchSubmodules = true; + }; + + nativeBuildInputs = [ + cmake + libxml2 + jq + ]; + + buildInputs = [ + libsodium + json_c + ncurses + ]; + + cmakeFlags = [ + "-DBUILD_SPECTRE_TESTS=ON" + ]; + + preConfigure = '' + echo "${version}" > VERSION + + # The default buildPhase wants to create a ´build´ dir so we rename the build script to stop conflicts. + mv build build.sh + ''; + + # Some tests are expected to fail on ARM64 + # See: https://gitlab.com/spectre.app/cli/-/issues/27#note_962950844 + doCheck = !(stdenv.isLinux && stdenv.isAarch64); + + checkPhase = '' + mv ../spectre-cli-tests ../spectre_tests.xml ./ + patchShebangs spectre-cli-tests + export HOME=$(mktemp -d) + + ./spectre-tests + ./spectre-cli-tests + ''; + + installPhase = '' + mkdir -p $out/bin + mv spectre $out/bin + ''; + + meta = with lib; { + description = "A stateless cryptographic identity algorithm"; + homepage = "https://spectre.app"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ emmabastas ]; + mainProgram = "spectre"; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e63828b1e72..f5d7b5127f4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1132,6 +1132,10 @@ with pkgs; gfshare = callPackage ../tools/security/gfshare { }; + gh-cal = callPackage ../tools/misc/gh-cal { + inherit (darwin.apple_sdk.frameworks) Security; + }; + glooctl = callPackage ../applications/networking/cluster/glooctl { }; gobgp = callPackage ../tools/networking/gobgp { }; @@ -1184,6 +1188,8 @@ with pkgs; sdlookup = callPackage ../tools/security/sdlookup { }; + spectre-cli = callPackage ../tools/security/spectre-cli { }; + sx-go = callPackage ../tools/security/sx-go { }; systeroid = callPackage ../tools/system/systeroid { }; @@ -3454,6 +3460,8 @@ with pkgs; envsubst = callPackage ../tools/misc/envsubst { }; + er-patcher = callPackage ../tools/games/er-patcher { }; + errcheck = callPackage ../development/tools/errcheck { buildGoModule = buildGo118Module; }; @@ -12496,6 +12504,8 @@ with pkgs; fennel = callPackage ../development/compilers/fennel { }; + firrtl = callPackage ../development/compilers/firrtl { }; + flasm = callPackage ../development/compilers/flasm { }; flyctl = callPackage ../development/web/flyctl { }; @@ -32532,7 +32542,7 @@ with pkgs; ### DESKTOP ENVIRONMENTS - arcan = recurseIntoAttrs (callPackage ../desktops/arcan { }); + arcanPackages = recurseIntoAttrs (callPackage ../desktops/arcan { }); cdesktopenv = callPackage ../desktops/cdesktopenv { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 188e6c11b5e..189207368ba 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2841,6 +2841,8 @@ in { expects = callPackage ../development/python-modules/expects { }; + expecttest = callPackage ../development/python-modules/expecttest { }; + expiringdict = callPackage ../development/python-modules/expiringdict { }; explorerscript = callPackage ../development/python-modules/explorerscript { }; @@ -3286,6 +3288,8 @@ in { functools32 = callPackage ../development/python-modules/functools32 { }; + functorch = callPackage ../development/python-modules/functorch { }; + funcy = callPackage ../development/python-modules/funcy { }; furl = callPackage ../development/python-modules/furl { }; @@ -4729,6 +4733,8 @@ in { launchpadlib = callPackage ../development/python-modules/launchpadlib { }; + laundrify-aio = callPackage ../development/python-modules/laundrify-aio { }; + lazr_config = callPackage ../development/python-modules/lazr/config.nix { }; lazr_delegates = callPackage ../development/python-modules/lazr/delegates.nix { };