diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e3a18c6e7eb4..f0d1ecf5aa32 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -11,6 +11,10 @@ under the terms of [COPYING](COPYING), which is an MIT-like license. ## Submitting changes +Read the ["Submitting changes"](https://nixos.org/nixpkgs/manual/#chap-submitting-changes) section of the nixpkgs manual. It explains how to write, test, and iterate on your change, and which branch to base your pull request against. + +Below is a short excerpt of some points in there: + * Format the commit messages in the following way: ``` @@ -40,7 +44,7 @@ under the terms of [COPYING](COPYING), which is an MIT-like license. * If there is no upstream license, `meta.license` should default to `lib.licenses.unfree`. * `meta.maintainers` must be set. -See the nixpkgs manual for more details on [standard meta-attributes](https://nixos.org/nixpkgs/manual/#sec-standard-meta-attributes) and on how to [submit changes to nixpkgs](https://nixos.org/nixpkgs/manual/#chap-submitting-changes). +See the nixpkgs manual for more details on [standard meta-attributes](https://nixos.org/nixpkgs/manual/#sec-standard-meta-attributes). ## Writing good commit messages diff --git a/nixos/modules/hardware/cpu/intel-sgx.nix b/nixos/modules/hardware/cpu/intel-sgx.nix index 046479400587..1355ee753f0d 100644 --- a/nixos/modules/hardware/cpu/intel-sgx.nix +++ b/nixos/modules/hardware/cpu/intel-sgx.nix @@ -1,10 +1,24 @@ { config, lib, ... }: with lib; let - cfg = config.hardware.cpu.intel.sgx.provision; - defaultGroup = "sgx_prv"; + cfg = config.hardware.cpu.intel.sgx; + defaultPrvGroup = "sgx_prv"; in { + options.hardware.cpu.intel.sgx.enableDcapCompat = mkOption { + description = '' + Whether to enable backward compatibility for SGX software build for the + out-of-tree Intel SGX DCAP driver. + + Creates symbolic links for the SGX devices /dev/sgx_enclave + and /dev/sgx_provision to make them available as + /dev/sgx/enclave and /dev/sgx/provision, + respectively. + ''; + type = types.bool; + default = true; + }; + options.hardware.cpu.intel.sgx.provision = { enable = mkEnableOption "access to the Intel SGX provisioning device"; user = mkOption { @@ -15,7 +29,7 @@ in group = mkOption { description = "Group to assign to the SGX provisioning device."; type = types.str; - default = defaultGroup; + default = defaultPrvGroup; }; mode = mkOption { description = "Mode to set for the SGX provisioning device."; @@ -24,24 +38,32 @@ in }; }; - config = mkIf cfg.enable { - assertions = [ - { - assertion = hasAttr cfg.user config.users.users; - message = "Given user does not exist"; - } - { - assertion = (cfg.group == defaultGroup) || (hasAttr cfg.group config.users.groups); - message = "Given group does not exist"; - } - ]; + config = mkMerge [ + (mkIf cfg.provision.enable { + assertions = [ + { + assertion = hasAttr cfg.provision.user config.users.users; + message = "Given user does not exist"; + } + { + assertion = (cfg.provision.group == defaultPrvGroup) || (hasAttr cfg.provision.group config.users.groups); + message = "Given group does not exist"; + } + ]; - users.groups = optionalAttrs (cfg.group == defaultGroup) { - "${cfg.group}" = { }; - }; + users.groups = optionalAttrs (cfg.provision.group == defaultPrvGroup) { + "${cfg.provision.group}" = { }; + }; - services.udev.extraRules = '' - SUBSYSTEM=="misc", KERNEL=="sgx_provision", OWNER="${cfg.user}", GROUP="${cfg.group}", MODE="${cfg.mode}" - ''; - }; + services.udev.extraRules = with cfg.provision; '' + SUBSYSTEM=="misc", KERNEL=="sgx_provision", OWNER="${user}", GROUP="${group}", MODE="${mode}" + ''; + }) + (mkIf cfg.enableDcapCompat { + services.udev.extraRules = '' + SUBSYSTEM=="misc", KERNEL=="sgx_enclave", SYMLINK+="sgx/enclave" + SUBSYSTEM=="misc", KERNEL=="sgx_provision", SYMLINK+="sgx/provision" + ''; + }) + ]; } diff --git a/nixos/modules/installer/tools/nixos-enter.sh b/nixos/modules/installer/tools/nixos-enter.sh index 6469d9faa038..115b3d7a7c5e 100644 --- a/nixos/modules/installer/tools/nixos-enter.sh +++ b/nixos/modules/installer/tools/nixos-enter.sh @@ -104,4 +104,6 @@ chroot_add_resolv_conf "$mountPoint" || print "ERROR: failed to set up resolv.co chroot "$mountPoint" systemd-tmpfiles --create --remove --exclude-prefix=/dev 1>&2 || true ) +unset TMPDIR + exec chroot "$mountPoint" "${command[@]}" diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index e710d4282dd6..db3646b28497 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -544,6 +544,7 @@ ./services/misc/gollum.nix ./services/misc/gpsd.nix ./services/misc/headphones.nix + ./services/misc/heisenbridge.nix ./services/misc/greenclip.nix ./services/misc/home-assistant.nix ./services/misc/ihaskell.nix diff --git a/nixos/modules/services/audio/mpd.nix b/nixos/modules/services/audio/mpd.nix index 560264e249d0..586b9ffa6888 100644 --- a/nixos/modules/services/audio/mpd.nix +++ b/nixos/modules/services/audio/mpd.nix @@ -209,62 +209,42 @@ in { config = mkIf cfg.enable { + # install mpd units + systemd.packages = [ pkgs.mpd ]; + systemd.sockets.mpd = mkIf cfg.startWhenNeeded { - description = "Music Player Daemon Socket"; wantedBy = [ "sockets.target" ]; listenStreams = [ (if pkgs.lib.hasPrefix "/" cfg.network.listenAddress then cfg.network.listenAddress else "${optionalString (cfg.network.listenAddress != "any") "${cfg.network.listenAddress}:"}${toString cfg.network.port}") ]; - socketConfig = { - Backlog = 5; - KeepAlive = true; - PassCredentials = true; - }; }; systemd.services.mpd = { - after = [ "network.target" "sound.target" ]; - description = "Music Player Daemon"; wantedBy = optional (!cfg.startWhenNeeded) "multi-user.target"; - serviceConfig = mkMerge [ + preStart = + '' + set -euo pipefail + install -m 600 ${mpdConf} /run/mpd/mpd.conf + '' + optionalString (cfg.credentials != []) + (concatStringsSep "\n" + (imap0 + (i: c: ''${pkgs.replace-secret}/bin/replace-secret '{{password-${toString i}}}' '${c.passwordFile}' /run/mpd/mpd.conf'') + cfg.credentials)); + + serviceConfig = { User = "${cfg.user}"; - ExecStart = "${pkgs.mpd}/bin/mpd --no-daemon /run/mpd/mpd.conf"; - ExecStartPre = pkgs.writeShellScript "mpd-start-pre" ('' - set -euo pipefail - install -m 600 ${mpdConf} /run/mpd/mpd.conf - '' + optionalString (cfg.credentials != []) - (concatStringsSep "\n" - (imap0 - (i: c: ''${pkgs.replace-secret}/bin/replace-secret '{{password-${toString i}}}' '${c.passwordFile}' /run/mpd/mpd.conf'') - cfg.credentials)) - ); + # Note: the first "" overrides the ExecStart from the upstream unit + ExecStart = [ "" "${pkgs.mpd}/bin/mpd --systemd /run/mpd/mpd.conf" ]; RuntimeDirectory = "mpd"; - Type = "notify"; - LimitRTPRIO = 50; - LimitRTTIME = "infinity"; - ProtectSystem = true; - NoNewPrivileges = true; - ProtectKernelTunables = true; - ProtectControlGroups = true; - ProtectKernelModules = true; - RestrictAddressFamilies = "AF_INET AF_INET6 AF_UNIX AF_NETLINK"; - RestrictNamespaces = true; - Restart = "always"; - } - (mkIf (cfg.dataDir == "/var/lib/${name}") { - StateDirectory = [ name ]; - }) - (mkIf (cfg.playlistDirectory == "/var/lib/${name}/playlists") { - StateDirectory = [ name "${name}/playlists" ]; - }) - (mkIf (cfg.musicDirectory == "/var/lib/${name}/music") { - StateDirectory = [ name "${name}/music" ]; - }) - ]; + StateDirectory = [] + ++ optionals (cfg.dataDir == "/var/lib/${name}") [ name ] + ++ optionals (cfg.playlistDirectory == "/var/lib/${name}/playlists") [ name "${name}/playlists" ] + ++ optionals (cfg.musicDirectory == "/var/lib/${name}/music") [ name "${name}/music" ]; + }; }; users.users = optionalAttrs (cfg.user == name) { diff --git a/nixos/modules/services/misc/heisenbridge.nix b/nixos/modules/services/misc/heisenbridge.nix index c008c4b3999e..353a2781d28b 100644 --- a/nixos/modules/services/misc/heisenbridge.nix +++ b/nixos/modules/services/misc/heisenbridge.nix @@ -23,7 +23,7 @@ let in { options.services.heisenbridge = { - enable = mkEnableOption "the Matrix<->IRC bridge"; + enable = mkEnableOption "A bouncer-style Matrix IRC bridge"; package = mkOption { type = types.package; diff --git a/nixos/modules/services/security/aesmd.nix b/nixos/modules/services/security/aesmd.nix index 924d614e4717..8268b034a15e 100644 --- a/nixos/modules/services/security/aesmd.nix +++ b/nixos/modules/services/security/aesmd.nix @@ -73,6 +73,11 @@ in hardware.cpu.intel.sgx.provision.enable = true; + # Make sure the AESM service can find the SGX devices until + # https://github.com/intel/linux-sgx/issues/772 is resolved + # and updated in nixpkgs. + hardware.cpu.intel.sgx.enableDcapCompat = mkForce true; + systemd.services.aesmd = let storeAesmFolder = "${sgx-psw}/aesm"; diff --git a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py index e9697b5f0e64..2980b4ba6857 100644 --- a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py +++ b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py @@ -45,16 +45,6 @@ initrd {initrd} options {kernel_params} """ -# The boot loader entry for memtest86. -# -# TODO: This is hard-coded to use the 64-bit EFI app, but it could probably -# be updated to use the 32-bit EFI app on 32-bit systems. The 32-bit EFI -# app filename is BOOTIA32.efi. -MEMTEST_BOOT_ENTRY = """title MemTest86 -efi /efi/memtest86/BOOTX64.efi -""" - - def generation_conf_filename(profile: Optional[str], generation: int, specialisation: Optional[str]) -> str: pieces = [ "nixos", @@ -283,23 +273,24 @@ def main() -> None: except OSError as e: print("ignoring profile '{}' in the list of boot entries because of the following error:\n{}".format(profile, e), file=sys.stderr) - memtest_entry_file = "@efiSysMountPoint@/loader/entries/memtest86.conf" - if os.path.exists(memtest_entry_file): - os.unlink(memtest_entry_file) - shutil.rmtree("@efiSysMountPoint@/efi/memtest86", ignore_errors=True) - if "@memtest86@" != "": - mkdir_p("@efiSysMountPoint@/efi/memtest86") - for path in glob.iglob("@memtest86@/*"): - if os.path.isdir(path): - shutil.copytree(path, os.path.join("@efiSysMountPoint@/efi/memtest86", os.path.basename(path))) - else: - shutil.copy(path, "@efiSysMountPoint@/efi/memtest86/") + for root, _, files in os.walk('@efiSysMountPoint@/efi/nixos/.extra-files', topdown=False): + relative_root = root.removeprefix("@efiSysMountPoint@/efi/nixos/.extra-files").removeprefix("/") + actual_root = os.path.join("@efiSysMountPoint@", relative_root) - memtest_entry_file = "@efiSysMountPoint@/loader/entries/memtest86.conf" - memtest_entry_file_tmp_path = "%s.tmp" % memtest_entry_file - with open(memtest_entry_file_tmp_path, 'w') as f: - f.write(MEMTEST_BOOT_ENTRY) - os.rename(memtest_entry_file_tmp_path, memtest_entry_file) + for file in files: + actual_file = os.path.join(actual_root, file) + + if os.path.exists(actual_file): + os.unlink(actual_file) + os.unlink(os.path.join(root, file)) + + if not len(os.listdir(actual_root)): + os.rmdir(actual_root) + os.rmdir(root) + + mkdir_p("@efiSysMountPoint@/efi/nixos/.extra-files") + + subprocess.check_call("@copyExtraFiles@") # Since fat32 provides little recovery facilities after a crash, # it can leave the system in an unbootable state, when a crash/outage diff --git a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix index 0f76d7d6b24a..c07567ec82ea 100644 --- a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix +++ b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix @@ -29,6 +29,22 @@ let inherit (efi) efiSysMountPoint canTouchEfiVariables; memtest86 = if cfg.memtest86.enable then pkgs.memtest86-efi else ""; + + netbootxyz = if cfg.netbootxyz.enable then pkgs.netbootxyz-efi else ""; + + copyExtraFiles = pkgs.writeShellScript "copy-extra-files" '' + empty_file=$(mktemp) + + ${concatStrings (mapAttrsToList (n: v: '' + ${pkgs.coreutils}/bin/install -Dp "${v}" "${efi.efiSysMountPoint}/"${escapeShellArg n} + ${pkgs.coreutils}/bin/install -D $empty_file "${efi.efiSysMountPoint}/efi/nixos/.extra-files/"${escapeShellArg n} + '') cfg.extraFiles)} + + ${concatStrings (mapAttrsToList (n: v: '' + ${pkgs.coreutils}/bin/install -Dp "${pkgs.writeText n v}" "${efi.efiSysMountPoint}/loader/entries/"${escapeShellArg n} + ${pkgs.coreutils}/bin/install -D $empty_file "${efi.efiSysMountPoint}/efi/nixos/.extra-files/loader/entries/"${escapeShellArg n} + '') cfg.extraEntries)} + ''; }; checkedSystemdBootBuilder = pkgs.runCommand "systemd-boot" { @@ -125,6 +141,74 @@ in { true. ''; }; + + entryFilename = mkOption { + default = "memtest86.conf"; + type = types.str; + description = '' + systemd-boot orders the menu entries by the config file names, + so if you want something to appear after all the NixOS entries, + it should start with o or onwards. + ''; + }; + }; + + netbootxyz = { + enable = mkOption { + default = false; + type = types.bool; + description = '' + Make netboot.xyz available from the + systemd-boot menu. netboot.xyz + is a menu system that allows you to boot OS installers and + utilities over the network. + ''; + }; + + entryFilename = mkOption { + default = "o_netbootxyz.conf"; + type = types.str; + description = '' + systemd-boot orders the menu entries by the config file names, + so if you want something to appear after all the NixOS entries, + it should start with o or onwards. + ''; + }; + }; + + extraEntries = mkOption { + type = types.attrsOf types.lines; + default = {}; + example = literalExpression '' + { "memtest86.conf" = ''' + title MemTest86 + efi /efi/memtest86/memtest86.efi + '''; } + ''; + description = '' + Any additional entries you want added to the systemd-boot menu. + These entries will be copied to /boot/loader/entries. + Each attribute name denotes the destination file name, + and the corresponding attribute value is the contents of the entry. + + systemd-boot orders the menu entries by the config file names, + so if you want something to appear after all the NixOS entries, + it should start with o or onwards. + ''; + }; + + extraFiles = mkOption { + type = types.attrsOf types.path; + default = {}; + example = literalExpression '' + { "efi/memtest86/memtest86.efi" = "''${pkgs.memtest86-efi}/BOOTX64.efi"; } + ''; + description = '' + A set of files to be copied to /boot. + Each attribute name denotes the destination file name in + /boot, while the corresponding + attribute value specifies the source file. + ''; }; graceful = mkOption { @@ -148,15 +232,64 @@ in { assertions = [ { assertion = (config.boot.kernelPackages.kernel.features or { efiBootStub = true; }) ? efiBootStub; - message = "This kernel does not support the EFI boot stub"; } - ]; + ] ++ concatMap (filename: [ + { + assertion = !(hasInfix "/" filename); + message = "boot.loader.systemd-boot.extraEntries.${lib.strings.escapeNixIdentifier filename} is invalid: entries within folders are not supported"; + } + { + assertion = hasSuffix ".conf" filename; + message = "boot.loader.systemd-boot.extraEntries.${lib.strings.escapeNixIdentifier filename} is invalid: entries must have a .conf file extension"; + } + ]) (builtins.attrNames cfg.extraEntries) + ++ concatMap (filename: [ + { + assertion = !(hasPrefix "/" filename); + message = "boot.loader.systemd-boot.extraFiles.${lib.strings.escapeNixIdentifier filename} is invalid: paths must not begin with a slash"; + } + { + assertion = !(hasInfix ".." filename); + message = "boot.loader.systemd-boot.extraFiles.${lib.strings.escapeNixIdentifier filename} is invalid: paths must not reference the parent directory"; + } + { + assertion = !(hasInfix "nixos/.extra-files" (toLower filename)); + message = "boot.loader.systemd-boot.extraFiles.${lib.strings.escapeNixIdentifier filename} is invalid: files cannot be placed in the nixos/.extra-files directory"; + } + ]) (builtins.attrNames cfg.extraFiles); boot.loader.grub.enable = mkDefault false; boot.loader.supportsInitrdSecrets = true; + boot.loader.systemd-boot.extraFiles = mkMerge [ + # TODO: This is hard-coded to use the 64-bit EFI app, but it could probably + # be updated to use the 32-bit EFI app on 32-bit systems. The 32-bit EFI + # app filename is BOOTIA32.efi. + (mkIf cfg.memtest86.enable { + "efi/memtest86/BOOTX64.efi" = "${pkgs.memtest86-efi}/BOOTX64.efi"; + }) + (mkIf cfg.netbootxyz.enable { + "efi/netbootxyz/netboot.xyz.efi" = "${pkgs.netbootxyz-efi}"; + }) + ]; + + boot.loader.systemd-boot.extraEntries = mkMerge [ + (mkIf cfg.memtest86.enable { + "${cfg.memtest86.entryFilename}" = '' + title MemTest86 + efi /efi/memtest86/BOOTX64.efi + ''; + }) + (mkIf cfg.netbootxyz.enable { + "${cfg.netbootxyz.entryFilename}" = '' + title netboot.xyz + efi /efi/netbootxyz/netboot.xyz.efi + ''; + }) + ]; + system = { build.installBootLoader = checkedSystemdBootBuilder; diff --git a/nixos/tests/starship.nix b/nixos/tests/starship.nix index f21da1e6e255..33e9a72f7000 100644 --- a/nixos/tests/starship.nix +++ b/nixos/tests/starship.nix @@ -13,19 +13,30 @@ import ./make-test-python.nix ({ pkgs, ... }: { }; }; - services.getty.autologinUser = "root"; + environment.systemPackages = map + (shell: pkgs.writeScriptBin "expect-${shell}" '' + #!${pkgs.expect}/bin/expect -f + + spawn env TERM=xterm ${shell} -i + + expect "" { + send "exit\n" + } timeout { + send_user "\n${shell} failed to display Starship\n" + exit 1 + } + + expect eof + '') + [ "bash" "fish" "zsh" ]; }; testScript = '' start_all() machine.wait_for_unit("default.target") - for shell in ["bash", "fish", "zsh"]: - machine.send_chars(f"script -c {shell} /tmp/{shell}.txt\n") - machine.wait_until_tty_matches(1, f"Script started.*{shell}.txt") - machine.send_chars("exit\n") - machine.wait_until_tty_matches(1, "Script done") - machine.sleep(1) - machine.succeed(f"grep -q '' /tmp/{shell}.txt") + machine.succeed("expect-bash") + machine.succeed("expect-fish") + machine.succeed("expect-zsh") ''; }) diff --git a/nixos/tests/systemd-boot.nix b/nixos/tests/systemd-boot.nix index c3899b58d6b3..51cfd82e6c4b 100644 --- a/nixos/tests/systemd-boot.nix +++ b/nixos/tests/systemd-boot.nix @@ -110,4 +110,145 @@ in assert "updating systemd-boot from (000.0-1-notnixos) to " in output ''; }; + + memtest86 = makeTest { + name = "systemd-boot-memtest86"; + meta.maintainers = with pkgs.lib.maintainers; [ Enzime ]; + + machine = { pkgs, lib, ... }: { + imports = [ common ]; + boot.loader.systemd-boot.memtest86.enable = true; + nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ + "memtest86-efi" + ]; + }; + + testScript = '' + machine.succeed("test -e /boot/loader/entries/memtest86.conf") + machine.succeed("test -e /boot/efi/memtest86/BOOTX64.efi") + ''; + }; + + netbootxyz = makeTest { + name = "systemd-boot-netbootxyz"; + meta.maintainers = with pkgs.lib.maintainers; [ Enzime ]; + + machine = { pkgs, lib, ... }: { + imports = [ common ]; + boot.loader.systemd-boot.netbootxyz.enable = true; + }; + + testScript = '' + machine.succeed("test -e /boot/loader/entries/o_netbootxyz.conf") + machine.succeed("test -e /boot/efi/netbootxyz/netboot.xyz.efi") + ''; + }; + + entryFilename = makeTest { + name = "systemd-boot-entry-filename"; + meta.maintainers = with pkgs.lib.maintainers; [ Enzime ]; + + machine = { pkgs, lib, ... }: { + imports = [ common ]; + boot.loader.systemd-boot.memtest86.enable = true; + boot.loader.systemd-boot.memtest86.entryFilename = "apple.conf"; + nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ + "memtest86-efi" + ]; + }; + + testScript = '' + machine.fail("test -e /boot/loader/entries/memtest86.conf") + machine.succeed("test -e /boot/loader/entries/apple.conf") + machine.succeed("test -e /boot/efi/memtest86/BOOTX64.efi") + ''; + }; + + extraEntries = makeTest { + name = "systemd-boot-extra-entries"; + meta.maintainers = with pkgs.lib.maintainers; [ Enzime ]; + + machine = { pkgs, lib, ... }: { + imports = [ common ]; + boot.loader.systemd-boot.extraEntries = { + "banana.conf" = '' + title banana + ''; + }; + }; + + testScript = '' + machine.succeed("test -e /boot/loader/entries/banana.conf") + machine.succeed("test -e /boot/efi/nixos/.extra-files/loader/entries/banana.conf") + ''; + }; + + extraFiles = makeTest { + name = "systemd-boot-extra-files"; + meta.maintainers = with pkgs.lib.maintainers; [ Enzime ]; + + machine = { pkgs, lib, ... }: { + imports = [ common ]; + boot.loader.systemd-boot.extraFiles = { + "efi/fruits/tomato.efi" = pkgs.netbootxyz-efi; + }; + }; + + testScript = '' + machine.succeed("test -e /boot/efi/fruits/tomato.efi") + machine.succeed("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi") + ''; + }; + + switch-test = makeTest { + name = "systemd-boot-switch-test"; + meta.maintainers = with pkgs.lib.maintainers; [ Enzime ]; + + nodes = { + inherit common; + + machine = { pkgs, ... }: { + imports = [ common ]; + boot.loader.systemd-boot.extraFiles = { + "efi/fruits/tomato.efi" = pkgs.netbootxyz-efi; + }; + }; + + with_netbootxyz = { pkgs, ... }: { + imports = [ common ]; + boot.loader.systemd-boot.netbootxyz.enable = true; + }; + }; + + testScript = { nodes, ... }: let + originalSystem = nodes.machine.config.system.build.toplevel; + baseSystem = nodes.common.config.system.build.toplevel; + finalSystem = nodes.with_netbootxyz.config.system.build.toplevel; + in '' + machine.succeed("test -e /boot/efi/fruits/tomato.efi") + machine.succeed("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi") + + with subtest("remove files when no longer needed"): + machine.succeed("${baseSystem}/bin/switch-to-configuration boot") + machine.fail("test -e /boot/efi/fruits/tomato.efi") + machine.fail("test -d /boot/efi/fruits") + machine.succeed("test -d /boot/efi/nixos/.extra-files") + machine.fail("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi") + machine.fail("test -d /boot/efi/nixos/.extra-files/efi/fruits") + + with subtest("files are added back when needed again"): + machine.succeed("${originalSystem}/bin/switch-to-configuration boot") + machine.succeed("test -e /boot/efi/fruits/tomato.efi") + machine.succeed("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi") + + with subtest("simultaneously removing and adding files works"): + machine.succeed("${finalSystem}/bin/switch-to-configuration boot") + machine.fail("test -e /boot/efi/fruits/tomato.efi") + machine.fail("test -e /boot/efi/nixos/.extra-files/efi/fruits/tomato.efi") + machine.succeed("test -e /boot/loader/entries/o_netbootxyz.conf") + machine.succeed("test -e /boot/efi/netbootxyz/netboot.xyz.efi") + machine.succeed("test -e /boot/efi/nixos/.extra-files/loader/entries/o_netbootxyz.conf") + machine.succeed("test -e /boot/efi/nixos/.extra-files/efi/netbootxyz/netboot.xyz.efi") + ''; + }; } diff --git a/pkgs/applications/audio/strawberry/default.nix b/pkgs/applications/audio/strawberry/default.nix index fd75a4a8e5d7..e3200d8e43f1 100644 --- a/pkgs/applications/audio/strawberry/default.nix +++ b/pkgs/applications/audio/strawberry/default.nix @@ -36,13 +36,13 @@ mkDerivation rec { pname = "strawberry"; - version = "1.0.0"; + version = "1.0.1"; src = fetchFromGitHub { owner = "jonaski"; repo = pname; rev = version; - sha256 = "sha256-m1BB5OIeCIQuJpxEO1xmb/Z8tzeHF31jYg67OpVWWRM="; + sha256 = "sha256-MlS1ShRXfsTMs97MeExW6sfpv40OcQLDIzIzOYGk7Rw="; }; buildInputs = [ diff --git a/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix index 60fac91839a1..fd658aac5f44 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/elpa-packages.nix @@ -52,6 +52,11 @@ self: let super = removeAttrs imported [ "dash" ]; overrides = { + # upstream issue: Wrong type argument: arrayp, nil + org-transclusion = + if super.org-transclusion.version == "1.2.0" + then markBroken super.org-transclusion + else super.org-transclusion; rcirc-menu = markBroken super.rcirc-menu; # Missing file header cl-lib = null; # builtin tle = null; # builtin diff --git a/pkgs/applications/editors/emacs/elisp-packages/ement/default.nix b/pkgs/applications/editors/emacs/elisp-packages/ement/default.nix index 73fd2f4a0a92..caf7bbf24d28 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/ement/default.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/ement/default.nix @@ -9,13 +9,13 @@ trivialBuild { pname = "ement"; - version = "unstable-2021-09-16"; + version = "unstable-2021-10-08"; src = fetchFromGitHub { owner = "alphapapa"; repo = "ement.el"; - rev = "c07e914f077199c95b0e7941a421675c95d4687e"; - sha256 = "sha256-kYVb2NrHYC87mY/hFUMAjb4TLJ9A2L2RrHoiAXvRaGg="; + rev = "c951737dc855604aba389166bb0e7366afadc533"; + sha256 = "00iwwz4hzg4g59wrb5df6snqz3ppvrsadhfp61w1pa8gvg2z9bvy"; }; packageRequires = [ diff --git a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix index 59583e4d6e15..9a81f25ec1b3 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix @@ -72,6 +72,15 @@ let overrides = lib.optionalAttrs (variant == "stable") { + # upstream issue: missing file header + abridge-diff = + if super.abridge-diff.version == "0.1" + then markBroken super.abridge-diff + else super.abridge-diff; + + # upstream issue: missing file header + bufshow = markBroken super.bufshow; + # upstream issue: missing file header speech-tagger = markBroken super.speech-tagger; @@ -99,11 +108,38 @@ let # upstream issue: missing file header dictionary = markBroken super.dictionary; + # upstream issue: missing file header + fold-dwim = + if super.fold-dwim.version == "1.2" + then markBroken super.fold-dwim + else super.fold-dwim; + + # upstream issue: missing file header + gl-conf-mode = + if super.gl-conf-mode.version == "0.3" + then markBroken super.gl-conf-mode + else super.gl-conf-mode; + + # upstream issue: missing file header + ligo-mode = + if super.ligo-mode.version == "0.3" + then markBroken super.ligo-mode + else super.ligo-mode; + # upstream issue: missing file header link = markBroken super.link; # upstream issue: missing file header - bufshow = markBroken super.bufshow; + org-dp = + if super.org-dp.version == "1" + then markBroken super.org-dp + else super.org-dp; + + # upstream issue: missing file header + revbufs = + if super.revbufs.version == "1.2" + then markBroken super.revbufs + else super.revbufs; # upstream issue: missing file header elmine = markBroken super.elmine; diff --git a/pkgs/applications/editors/texstudio/default.nix b/pkgs/applications/editors/texstudio/default.nix index 9d1a04128c00..06876d37eee0 100644 --- a/pkgs/applications/editors/texstudio/default.nix +++ b/pkgs/applications/editors/texstudio/default.nix @@ -3,13 +3,13 @@ mkDerivation rec { pname = "texstudio"; - version = "4.1.2"; + version = "4.2.0"; src = fetchFromGitHub { owner = "${pname}-org"; repo = pname; rev = version; - sha256 = "sha256-+HEA0IvWy0jvjFdU0sG9CzOKzysERMZBs/yHoE0I8B4="; + sha256 = "sha256-L3r71srvdSsCc1HZcu6lsH+oTJQ7TatVd2Oy3meAVYk="; }; nativeBuildInputs = [ qmake wrapQtAppsHook pkg-config ]; diff --git a/pkgs/applications/graphics/blockbench-electron/default.nix b/pkgs/applications/graphics/blockbench-electron/default.nix index a9c258ce925d..1968756496bb 100644 --- a/pkgs/applications/graphics/blockbench-electron/default.nix +++ b/pkgs/applications/graphics/blockbench-electron/default.nix @@ -1,12 +1,12 @@ -{ lib, stdenv, fetchurl, appimageTools, makeWrapper, electron_8 }: +{ lib, stdenv, fetchurl, appimageTools, makeWrapper, electron_16 }: stdenv.mkDerivation rec { pname = "blockbench-electron"; - version = "3.7.5"; + version = "4.1.1"; src = fetchurl { url = "https://github.com/JannisX11/blockbench/releases/download/v${version}/Blockbench_${version}.AppImage"; - sha256 = "0qqklhncd4khqmgp7jg7wap2rzkrg8b6dflmz0wmm5zxxp5vcy1c"; + sha256 = "0mqdkjhmylrjjfrm05jv1967qqka5263fgcn9qzax08gcq93s18f"; name = "${pname}-${version}.AppImage"; }; @@ -33,7 +33,7 @@ stdenv.mkDerivation rec { ''; postFixup = '' - makeWrapper ${electron_8}/bin/electron $out/bin/${pname} \ + makeWrapper ${electron_16}/bin/electron $out/bin/${pname} \ --add-flags $out/share/${pname}/resources/app.asar \ --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc ]}" ''; diff --git a/pkgs/applications/graphics/hydrus/default.nix b/pkgs/applications/graphics/hydrus/default.nix index 0e202a92d23b..d4664f7e997d 100644 --- a/pkgs/applications/graphics/hydrus/default.nix +++ b/pkgs/applications/graphics/hydrus/default.nix @@ -10,14 +10,14 @@ python3Packages.buildPythonPackage rec { pname = "hydrus"; - version = "467"; + version = "469"; format = "other"; src = fetchFromGitHub { owner = "hydrusnetwork"; repo = "hydrus"; rev = "v${version}"; - sha256 = "sha256-ijIOCabpnaK9ww1cR+HNpCOn8uSwSEuyLWwnT2ypdD4="; + sha256 = "sha256-1E85SIsLXeG+AUqQYCJxOlSwiT26OG+n/d9GbyryGCE="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/graphics/imgbrd-grabber/default.nix b/pkgs/applications/graphics/imgbrd-grabber/default.nix index 561e41d1de14..59d1e6817bd9 100644 --- a/pkgs/applications/graphics/imgbrd-grabber/default.nix +++ b/pkgs/applications/graphics/imgbrd-grabber/default.nix @@ -21,13 +21,13 @@ stdenv.mkDerivation rec { pname = "imgbrd-grabber"; - version = "7.7.0"; + version = "7.7.1"; src = fetchFromGitHub { owner = "Bionus"; repo = "imgbrd-grabber"; rev = "v${version}"; - sha256 = "sha256-Mym/fuV9YVyj5w8U9KlZ/wuwnnC3K5TGNo9RrAFHI5g="; + sha256 = "sha256-3qE3mdtlIlReIkUf0oH2/qmunE8nvdB0EaD7EOqaEj0="; fetchSubmodules = true; }; diff --git a/pkgs/applications/misc/archivebox/default.nix b/pkgs/applications/misc/archivebox/default.nix index bd1a98ef9cce..c5c7187f0139 100644 --- a/pkgs/applications/misc/archivebox/default.nix +++ b/pkgs/applications/misc/archivebox/default.nix @@ -4,7 +4,7 @@ , requests , mypy-extensions , django_3 -, django_extensions +, django-extensions , dateparser , youtube-dl , python-crontab @@ -37,7 +37,7 @@ buildPythonApplication rec { requests mypy-extensions django_3' - django_extensions + django-extensions dateparser youtube-dl python-crontab diff --git a/pkgs/applications/misc/avizo/default.nix b/pkgs/applications/misc/avizo/default.nix index 407dd7040637..7325e29f682b 100644 --- a/pkgs/applications/misc/avizo/default.nix +++ b/pkgs/applications/misc/avizo/default.nix @@ -5,21 +5,28 @@ , gobject-introspection, gdk-pixbuf, wrapGAppsHook }: -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "avizo"; - version = "unstable-2021-07-21"; + # Note: remove the 'use-sysconfig' patch on the next update + version = "1.1"; src = fetchFromGitHub { owner = "misterdanb"; repo = "avizo"; - rev = "7b3874e5ee25c80800b3c61c8ea30612aaa6e8d1"; - sha256 = "sha256-ixAdiAH22Nh19uK5GoAXtAZJeAfCGSWTcGbrvCczWYc="; + rev = version; + sha256 = "sha256-0BJodJ6WaHhuSph2D1AC+DMafctgiSCyaZ8MFn89AA8="; }; nativeBuildInputs = [ meson ninja pkg-config vala gobject-introspection wrapGAppsHook ]; buildInputs = [ dbus dbus-glib gdk-pixbuf glib gtk-layer-shell gtk3 librsvg ]; + patches = [ + # Remove on next update + # See https://github.com/misterdanb/avizo/pull/30 + ./use-sysconfdir-instead-of-etc.patch + ]; + postInstall = '' substituteInPlace "$out"/bin/volumectl \ --replace 'avizo-client' "$out/bin/avizo-client" diff --git a/pkgs/applications/misc/avizo/use-sysconfdir-instead-of-etc.patch b/pkgs/applications/misc/avizo/use-sysconfdir-instead-of-etc.patch new file mode 100644 index 000000000000..947559760cbc --- /dev/null +++ b/pkgs/applications/misc/avizo/use-sysconfdir-instead-of-etc.patch @@ -0,0 +1,15 @@ +diff --git a/meson.build b/meson.build +index 1c789be..cd4b07a 100644 +--- a/meson.build ++++ b/meson.build +@@ -12,7 +12,9 @@ app_resources_service = gnome.compile_resources( + source_dir : '.', + c_name : 'avizo_resources') + +-install_data('config.ini', install_dir: '/etc/xdg/avizo') ++sysconfdir = get_option('sysconfdir') ++ ++install_data('config.ini', install_dir: join_paths(sysconfdir, 'xdg/avizo')) + install_data('volumectl', install_dir: 'bin') + install_data('lightctl', install_dir: 'bin') + diff --git a/pkgs/applications/misc/blender/wrapper.nix b/pkgs/applications/misc/blender/wrapper.nix new file mode 100644 index 000000000000..24ff72e14f6c --- /dev/null +++ b/pkgs/applications/misc/blender/wrapper.nix @@ -0,0 +1,39 @@ +{ stdenv +, lib +, blender +, makeWrapper +, python39Packages +}: +{ name ? "wrapped" +, packages ? [] +}: +stdenv.mkDerivation { + pname = "blender-${name}"; + inherit (blender) version; + src = blender; + + nativeBuildInputs = [ python39Packages.wrapPython makeWrapper ]; + installPhase = '' + mkdir $out/{share/applications,bin} -p + sed 's/Exec=blender/Exec=blender-${name}/g' $src/share/applications/blender.desktop > $out/share/applications/blender-${name}.desktop + cp -r $src/share/blender $out/share + cp -r $src/share/doc $out/share + cp -r $src/share/icons $out/share + + buildPythonPath "$pythonPath" + + echo '#!/usr/bin/env bash ' >> $out/bin/blender-${name} + for p in $program_PATH; do + echo "export PATH=\$PATH:$p " >> $out/bin/blender-${name} + done + for p in $program_PYTHONPATH; do + echo "export PYTHONPATH=\$PYTHONPATH:$p " >> $out/bin/blender-${name} + done + echo 'exec ${blender}/bin/blender "$@"' >> $out/bin/blender-${name} + chmod +x $out/bin/blender-${name} + ''; + + pythonPath = packages; + + meta = blender.meta; +} diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix index ba3de9a63aac..1d6af843e2fd 100644 --- a/pkgs/applications/misc/calibre/default.nix +++ b/pkgs/applications/misc/calibre/default.nix @@ -111,6 +111,7 @@ mkDerivation rec { setuptools zeroconf jeepney + pycryptodome # the following are distributed with calibre, but we use upstream instead odfpy ] ++ lib.optional (unrarSupport) unrardll diff --git a/pkgs/applications/misc/octoprint/default.nix b/pkgs/applications/misc/octoprint/default.nix index 716b750948b5..a38421b31789 100644 --- a/pkgs/applications/misc/octoprint/default.nix +++ b/pkgs/applications/misc/octoprint/default.nix @@ -129,9 +129,11 @@ let version = "5.0.0"; src = oldAttrs.src.override { inherit version; - sha256 = "sha256-MTkw/d3nA9jjcCmjBL+RQpzRGu72PFfebayp2Vjh8lU="; + hash = "sha256-MTkw/d3nA9jjcCmjBL+RQpzRGu72PFfebayp2Vjh8lU="; }; - doCheck = false; + disabledTestPaths = [ + "t/unit/backends/test_mongodb.py" + ]; }); } ) diff --git a/pkgs/applications/misc/pdfstudio/default.nix b/pkgs/applications/misc/pdfstudio/default.nix index dcb35c41da76..16ded8e2e8aa 100644 --- a/pkgs/applications/misc/pdfstudio/default.nix +++ b/pkgs/applications/misc/pdfstudio/default.nix @@ -18,7 +18,7 @@ let year = "2021"; major = "1"; - minor = "1"; + minor = "2"; in stdenv.mkDerivation rec { pname = "pdfstudio"; version = "${year}.${major}.${minor}"; @@ -26,7 +26,7 @@ in stdenv.mkDerivation rec { src = fetchurl { url = "https://download.qoppa.com/${pname}/v${year}/PDFStudio_v${year}_${major}_${minor}_linux64.deb"; - sha256 = "089jfpbsxwjhx245g8svlmg213kny3z5nl6ra1flishnrsfjjcxb"; + sha256 = "1188ll2qz58rr2slavqxisbz4q3fdzidpasb1p33926z0ym3rk45"; }; nativeBuildInputs = [ diff --git a/pkgs/applications/misc/pwsafe/default.nix b/pkgs/applications/misc/pwsafe/default.nix index 3549fead8e28..fb12bcad3441 100644 --- a/pkgs/applications/misc/pwsafe/default.nix +++ b/pkgs/applications/misc/pwsafe/default.nix @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { done # Fix hard coded paths. - for f in $(grep -Rl /usr/share/ src) ; do + for f in $(grep -Rl /usr/share/ src install/desktop) ; do substituteInPlace $f --replace /usr/share/ $out/share/ done diff --git a/pkgs/applications/misc/qpdfview/default.nix b/pkgs/applications/misc/qpdfview/default.nix index 954c17097618..db5995149c08 100644 --- a/pkgs/applications/misc/qpdfview/default.nix +++ b/pkgs/applications/misc/qpdfview/default.nix @@ -1,30 +1,40 @@ -{lib, mkDerivation, fetchurl, qmake, qtbase, qtsvg, pkg-config, poppler, djvulibre, libspectre, cups -, file, ghostscript +{ lib +, mkDerivation +, fetchurl +, qmake +, qtbase +, qtsvg +, pkg-config +, poppler +, djvulibre +, libspectre +, cups +, file +, ghostscript }: -let - s = # Generated upstream information - rec { - baseName="qpdfview"; - version = "0.4.18"; - name="${baseName}-${version}"; - url="https://launchpad.net/qpdfview/trunk/${version}/+download/qpdfview-${version}.tar.gz"; +mkDerivation rec { + pname = "qpdfview"; + version = "0.4.18"; + + src = fetchurl { + url = "https://launchpad.net/qpdfview/trunk/${version}/+download/qpdfview-${version}.tar.gz"; sha256 = "0v1rl126hvblajnph2hkansgi0s8vjdc5yxrm4y3faa0lxzjwr6c"; }; - nativeBuildInputs = [ qmake pkg-config ]; - buildInputs = [ - qtbase qtsvg poppler djvulibre libspectre cups file ghostscript - ]; + # apply upstream fix for qt5.15 https://bazaar.launchpad.net/~adamreichold/qpdfview/trunk/revision/2104 patches = [ ./qpdfview-qt515-compat.patch ]; -in -mkDerivation { - pname = s.baseName; - inherit (s) version; - inherit nativeBuildInputs buildInputs patches; - src = fetchurl { - inherit (s) url sha256; - }; + nativeBuildInputs = [ qmake pkg-config ]; + buildInputs = [ + qtbase + qtsvg + poppler + djvulibre + libspectre + cups + file + ghostscript + ]; preConfigure = '' qmakeFlags+=(*.pro) ''; @@ -39,13 +49,11 @@ mkDerivation { "APPDATA_INSTALL_PATH=${placeholder "out"}/share/appdata" ]; - meta = { - inherit (s) version; + meta = with lib; { description = "A tabbed document viewer"; - license = lib.licenses.gpl2Plus; - maintainers = [lib.maintainers.raskin]; - platforms = lib.platforms.linux; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ raskin ]; + platforms = platforms.linux; homepage = "https://launchpad.net/qpdfview"; - updateWalker = true; }; } diff --git a/pkgs/applications/misc/snapmaker-luban/default.nix b/pkgs/applications/misc/snapmaker-luban/default.nix index c6b178d75b03..b8f8684e4209 100644 --- a/pkgs/applications/misc/snapmaker-luban/default.nix +++ b/pkgs/applications/misc/snapmaker-luban/default.nix @@ -8,11 +8,11 @@ stdenv.mkDerivation rec { pname = "snapmaker-luban"; - version = "4.1.2"; + version = "4.1.3"; src = fetchurl { url = "https://github.com/Snapmaker/Luban/releases/download/v${version}/snapmaker-luban-${version}-linux-x64.tar.gz"; - sha256 = "sha256-gS3MyXD5B9YQ+EXmIPZ+rDUE5H1AjRL64yXQX+5TM2Q="; + sha256 = "sha256-GXpM5dJ3JPf2HgrgTONyeCG6JjK4JhbcGP5ck7v4cqk="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/misc/variety/default.nix b/pkgs/applications/misc/variety/default.nix index 948719aae762..3d5b99eb1713 100644 --- a/pkgs/applications/misc/variety/default.nix +++ b/pkgs/applications/misc/variety/default.nix @@ -1,21 +1,21 @@ -{ stdenv, lib, fetchFromGitHub -, python3Packages +{ lib +, stdenv +, fetchFromGitHub +, gexiv2 +, gobject-introspection +, gtk3 +, hicolor-icon-theme +, intltool +, libnotify +, librsvg +, python3 +, runtimeShell +, wrapGAppsHook , fehSupport ? false, feh , imagemagickSupport ? true, imagemagick -, intltool -, gtk3 -, gexiv2 -, libnotify -, gobject-introspection -, hicolor-icon-theme -, librsvg -, wrapGAppsHook -, makeWrapper }: -with python3Packages; - -buildPythonApplication rec { +python3.pkgs.buildPythonApplication rec { pname = "variety"; version = "0.8.5"; @@ -26,9 +26,34 @@ buildPythonApplication rec { sha256 = "sha256-6dLz4KXavXwnk5GizBH46d2EHMHPjRo0WnnUuVMtI1M="; }; - nativeBuildInputs = [ makeWrapper intltool wrapGAppsHook ]; + nativeBuildInputs = [ + intltool + wrapGAppsHook + ]; - buildInputs = [ distutils_extra ]; + propagatedBuildInputs = [ + gexiv2 + gobject-introspection + gtk3 + hicolor-icon-theme + libnotify + librsvg + ] + ++ (with python3.pkgs; [ + beautifulsoup4 + configobj + dbus-python + distutils_extra + httplib2 + lxml + pillow + pycairo + pygobject3 + requests + setuptools + ]) + ++ lib.optional fehSupport feh + ++ lib.optional imagemagickSupport imagemagick; doCheck = false; @@ -38,33 +63,14 @@ buildPythonApplication rec { prePatch = '' substituteInPlace variety_lib/varietyconfig.py \ - --replace "__variety_data_directory__ = \"../data\"" "__variety_data_directory__ = \"$out/share/variety\"" + --replace "__variety_data_directory__ = \"../data\"" \ + "__variety_data_directory__ = \"$out/share/variety\"" substituteInPlace data/scripts/set_wallpaper \ - --replace /bin/bash ${stdenv.shell} + --replace /bin/bash ${runtimeShell} substituteInPlace data/scripts/get_wallpaper \ - --replace /bin/bash ${stdenv.shell} + --replace /bin/bash ${runtimeShell} ''; - propagatedBuildInputs = [ - beautifulsoup4 - configobj - dbus-python - gexiv2 - gobject-introspection - gtk3 - hicolor-icon-theme - httplib2 - libnotify - librsvg - lxml - pillow - pycairo - pygobject3 - requests - setuptools - ] ++ lib.optional fehSupport feh - ++ lib.optional imagemagickSupport imagemagick; - meta = with lib; { homepage = "https://github.com/varietywalls/variety"; description = "A wallpaper manager for Linux systems"; @@ -80,8 +86,7 @@ buildPythonApplication rec { Variety also includes a range of image effects, such as oil painting and blur, as well as options to layer quotes and a clock onto the background. ''; - license = licenses.gpl3; + license = licenses.gpl3Plus; maintainers = with maintainers; [ p3psi AndersonTorres zfnmxt ]; - platforms = with platforms; linux; }; } diff --git a/pkgs/applications/misc/whalebird/default.nix b/pkgs/applications/misc/whalebird/default.nix index b2475bf1d837..bb1b9213fde5 100644 --- a/pkgs/applications/misc/whalebird/default.nix +++ b/pkgs/applications/misc/whalebird/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "whalebird"; - version = "4.4.6"; + version = "4.5.0"; src = fetchurl { url = "https://github.com/h3poteto/whalebird-desktop/releases/download/${version}/Whalebird-${version}-linux-x64.deb"; - sha256 = "sha256-Q67y6VO7U8EatMNWyJo4f9IHKylQSX7bNR0DH4bnH+A="; + sha256 = "sha256-yl4R/1flm2Lfvyh9PXlJcZ1VtnP8nBQC0i7zs4U+g7g="; }; nativeBuildInputs = [ @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { # Necessary steps to find the tray icon asar extract opt/Whalebird/resources/app.asar "$TMP/work" substituteInPlace $TMP/work/dist/electron/main.js \ - --replace "Mo,\"tray_icon.png\"" "\"$out/opt/Whalebird/resources/build/icons/tray_icon.png\"" + --replace "jo,\"tray_icon.png\"" "\"$out/opt/Whalebird/resources/build/icons/tray_icon.png\"" asar pack --unpack='{*.node,*.ftz,rect-overlay}' "$TMP/work" opt/Whalebird/resources/app.asar runHook postBuild diff --git a/pkgs/applications/misc/xiphos/default.nix b/pkgs/applications/misc/xiphos/default.nix index 01706011e2d5..87656db5e5f9 100644 --- a/pkgs/applications/misc/xiphos/default.nix +++ b/pkgs/applications/misc/xiphos/default.nix @@ -1,43 +1,143 @@ -{ lib, stdenv, fetchFromGitHub, pkg-config -, python -, intltool -, docbook2x, docbook_xml_dtd_412, libxslt -, sword, clucene_core, biblesync +{ lib +, stdenv +, fetchFromGitHub +, fetchpatch +, appstream-glib +, at-spi2-core +, biblesync +, brotli +, clucene_core +, cmake +, dbus +, dbus-glib +, desktop-file-utils +, docbook2x +, docbook_xml_dtd_412 +, enchant +, gconf +, glib , gnome-doc-utils -, libgsf, gconf -, gtkhtml, libglade, scrollkeeper +, gtk2 +, gtkhtml +, icu +, intltool +, isocodes +, itstool +, libdatrie +, libepoxy +, libglade +, libgsf +, libpsl +, libselinux +, libsepol +, libsysprof-capture +, libthai +, libuuid +, libxkbcommon +, libxslt +, minizip +, pcre +, pkg-config +, python +, scrollkeeper +, sqlite +, sword , webkitgtk -, dbus-glib, enchant, isocodes, libuuid, icu , wrapGAppsHook -, wafHook +, xorg +, yelp-tools +, zip }: stdenv.mkDerivation rec { pname = "xiphos"; - version = "4.1.0"; + version = "4.2.1"; src = fetchFromGitHub { owner = "crosswire"; repo = "xiphos"; rev = version; - sha256 = "14il9k4i58qbc78hcadw3gqy21sb9q661d75vlj6fwpczbzj7x1a"; + hash = "sha256-H5Q+azE2t3fgu77C9DxrkeUCJ7iJz3Cc91Ln4dqLvD8="; }; - nativeBuildInputs = [ pkg-config wrapGAppsHook wafHook ]; - buildInputs = [ python intltool docbook2x docbook_xml_dtd_412 libxslt - sword clucene_core biblesync gnome-doc-utils libgsf gconf gtkhtml - libglade scrollkeeper webkitgtk dbus-glib enchant isocodes libuuid icu ]; + nativeBuildInputs = [ + appstream-glib + cmake + desktop-file-utils + itstool + pkg-config + wrapGAppsHook + yelp-tools + ]; - prePatch = '' - patchShebangs .; - ''; + buildInputs = [ + at-spi2-core + biblesync + brotli + clucene_core + dbus + dbus-glib + docbook2x + docbook_xml_dtd_412 + enchant + gconf + glib + gnome-doc-utils + gtk2 + gtkhtml + icu + intltool + isocodes + libdatrie + libepoxy + libglade + libgsf + libpsl + libselinux + libsepol + libsysprof-capture + libthai + libuuid + libxkbcommon + libxslt + minizip + pcre + python + scrollkeeper + sqlite + sword + webkitgtk + zip + ] + ++ (with xorg; [ + libXdmcp + libXtst + ]); + + cmakeFlags = [ + "-DDBUS=OFF" + "-DGTKHTML=ON" + ]; preConfigure = '' + # The build script won't continue without the version saved locally. + echo "${version}" > cmake/source_version.txt + export CLUCENE_HOME=${clucene_core}; export SWORD_HOME=${sword}; ''; - wafConfigureFlags = [ "--enable-webkit2" ]; + patchFlags = [ "-p0" ]; + + patches = [ + # GLIB_VERSION_MIN_REQUIRED is not defined. + # https://github.com/crosswire/xiphos/issues/1083#issuecomment-820304874 + (fetchpatch { + name ="xiphos-glibc.patch"; + url = "https://aur.archlinux.org/cgit/aur.git/plain/xiphos-glibc.patch?h=xiphos"; + sha256 = "sha256-0WadztJKXW2adqsDP8iSAYVShbdqHoDvP+aVJC0cQB0="; + }) + ]; meta = with lib; { description = "A GTK Bible study tool"; diff --git a/pkgs/applications/networking/appgate-sdp/default.nix b/pkgs/applications/networking/appgate-sdp/default.nix index e795e71554ef..bfe71ce72155 100644 --- a/pkgs/applications/networking/appgate-sdp/default.nix +++ b/pkgs/applications/networking/appgate-sdp/default.nix @@ -87,11 +87,11 @@ let in stdenv.mkDerivation rec { pname = "appgate-sdp"; - version = "5.5.1"; + version = "5.5.2"; src = fetchurl { url = "https://bin.appgate-sdp.com/${versions.majorMinor version}/client/appgate-sdp_${version}_amd64.deb"; - sha256 = "sha256-gN9UAdn61qUZBJLi/9QiHjNRohbQQDV1uVHgcpuXq+Y="; + sha256 = "sha256-8K7RqkxpyRsQ3QHGIfTchLaZ7/+k0hbiJdl7uc++vYs="; }; # just patch interpreter diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json index 7358c1e3ab31..4fa284a107ee 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.json +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.json @@ -19,9 +19,9 @@ } }, "beta": { - "version": "98.0.4758.48", - "sha256": "0c6lxmr8xxjhifm28v9ri05v5al9ph6infksx9qgd045svmfynxs", - "sha256bin64": "0m7vbd7fy4wrbk28hw3hy6x8yb8vyyyisnicdhkp6j0xq9ni5jhj", + "version": "98.0.4758.54", + "sha256": "0w3pvp23y0vyj9p7j6nfxgnnzc5jyjn65k1khx0i333hs97vidbc", + "sha256bin64": "1qxkqw45jzcrg2ziqh4npg19a52b5j1hvag4n5qlrq4bfblsbwwh", "deps": { "gn": { "version": "2021-12-07", diff --git a/pkgs/applications/networking/cluster/argo/default.nix b/pkgs/applications/networking/cluster/argo/default.nix index b57181ce4a25..766f9b9292c0 100644 --- a/pkgs/applications/networking/cluster/argo/default.nix +++ b/pkgs/applications/networking/cluster/argo/default.nix @@ -19,16 +19,16 @@ let in buildGoModule rec { pname = "argo"; - version = "3.2.4"; + version = "3.2.6"; src = fetchFromGitHub { owner = "argoproj"; repo = "argo"; rev = "v${version}"; - sha256 = "sha256-uymE+Eq4jsqWIhDsbALzV+xAKF22DddPFzKtn3tV2EA="; + sha256 = "sha256-QyjG+/zXbZ7AS/+yXNV0PocXJaSKeJNN+1F7EMv1LOI="; }; - vendorSha256 = "sha256-2b+PvD5IKgobBzFrubjRl2NvFxw91dXYpnWO8dqDG+U="; + vendorSha256 = "sha256-hxSr0sNlz93JxOxnE2SnR6/OgCGK8DrJZxqQtSxfbj8="; doCheck = false; diff --git a/pkgs/applications/networking/cluster/kube-capacity/default.nix b/pkgs/applications/networking/cluster/kube-capacity/default.nix index 9e04a7197082..596a71251b2d 100644 --- a/pkgs/applications/networking/cluster/kube-capacity/default.nix +++ b/pkgs/applications/networking/cluster/kube-capacity/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "kube-capacity"; - version = "0.6.2"; + version = "0.7.0"; src = fetchFromGitHub { rev = "v${version}"; owner = "robscott"; repo = pname; - sha256 = "sha256-rpCocokLj1iJonOt3rP+n1BpijjWlTie/a7vT2dMYnA="; + sha256 = "sha256-jop1dn+D0A6BkR1UCMrU9qcbZ1AHVth430cTd+kUYJw="; }; vendorSha256 = "sha256-1D+nQ6WrHwJwcszCvoZ08SHX0anksdI69Jra5b9jPCY="; diff --git a/pkgs/applications/networking/cluster/kubectl-example/default.nix b/pkgs/applications/networking/cluster/kubectl-example/default.nix index 228f12075c4e..ed74f2f102e9 100644 --- a/pkgs/applications/networking/cluster/kubectl-example/default.nix +++ b/pkgs/applications/networking/cluster/kubectl-example/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "kubectl-example"; - version = "1.0.1"; + version = "1.1.0"; src = fetchFromGitHub { owner = "seredot"; repo = pname; rev = "v${version}"; - sha256 = "18vp53cda93qjssxygwqp55yc80a93781839gf3138awngf731yq"; + sha256 = "sha256-7tqeIE6Ds8MrLH9k8cdzpeJP9pXVptduoEFE0zdrLlo="; }; vendorSha256 = null; diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix index b3ecb27dfb29..893473ff15fb 100644 --- a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix +++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix @@ -1,655 +1,655 @@ { - version = "91.4.1"; + version = "91.5.0"; sources = [ - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/af/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/af/thunderbird-91.5.0.tar.bz2"; locale = "af"; arch = "linux-x86_64"; - sha256 = "7af2c19b46daf1869af49289c1ab080559f8640c6dfc21cdae1ff48cdc26bf1f"; + sha256 = "20272a9fbf08651ca804f324aca1c0c7b6b04351b0a773790510a69d56ef19fb"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/ar/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/ar/thunderbird-91.5.0.tar.bz2"; locale = "ar"; arch = "linux-x86_64"; - sha256 = "dfabb7336f9b5929041c43997ad7ac34fca0750d70293dacdc32f9048de2fc7d"; + sha256 = "208937e2b22db6a159b2c744d9ad6d9e96fddf21f753673d9006b2576e5ddd24"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/ast/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/ast/thunderbird-91.5.0.tar.bz2"; locale = "ast"; arch = "linux-x86_64"; - sha256 = "3aade12867be4da3fb890214a7cd8551e12e962fb2a66b7e76da20a06755d045"; + sha256 = "a8b078c5699d174db89c4adbcce45c4add38d88561d1154dcaff56be4731b29d"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/be/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/be/thunderbird-91.5.0.tar.bz2"; locale = "be"; arch = "linux-x86_64"; - sha256 = "8bb288330b957d8361880738b7d5e5833602dd81aad580a96f1031e88bd963f4"; + sha256 = "91be973a0658dc7a284cde429b537bc70db88143abe42fd6ce6c4a0a450353ca"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/bg/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/bg/thunderbird-91.5.0.tar.bz2"; locale = "bg"; arch = "linux-x86_64"; - sha256 = "fcd8bbef82a24b146f4473da351cbd5262f8286d5b7ea78265516e815c7c84da"; + sha256 = "bdb25d9c1e3ed725d667b9b613a425a3f1c18bd6ff78417a32f04fc6257c7b66"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/br/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/br/thunderbird-91.5.0.tar.bz2"; locale = "br"; arch = "linux-x86_64"; - sha256 = "c1d331f6621fc120076d49015046f22ff898b089af8cac5226491bbe82391b9a"; + sha256 = "b8cf6f6f490a3f7a06a036bf84d71cdcdfb21e4e253190d2c8c648df8f7af931"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/ca/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/ca/thunderbird-91.5.0.tar.bz2"; locale = "ca"; arch = "linux-x86_64"; - sha256 = "7b2a63bd30d1e47db16f64ea077623dfca965d71b2aa7f7ce56f8940a2f59301"; + sha256 = "5a55055b5eb29e209e02b2980895719883bfc9929910d0f336e431ebea870856"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/cak/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/cak/thunderbird-91.5.0.tar.bz2"; locale = "cak"; arch = "linux-x86_64"; - sha256 = "f22de3c4bc4237610e7826ed6d46f84f8a02d5370e7d0675932abd98ee24256e"; + sha256 = "fe192c81dd6f04d37c4f603c3e0367d462c5dc6effe7c8a07a030d5584118c58"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/cs/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/cs/thunderbird-91.5.0.tar.bz2"; locale = "cs"; arch = "linux-x86_64"; - sha256 = "8dd685427622c1bc710d8056e527d5766f7e5f0c47ca7e170b8e48ed01e8c5a5"; + sha256 = "bce9c7bd093631e2f0096ac3c8c2cdb19d9567d5233d912169c238e33372da1e"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/cy/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/cy/thunderbird-91.5.0.tar.bz2"; locale = "cy"; arch = "linux-x86_64"; - sha256 = "d98ebd1787b29a6ee785a4b7cfaa2283b836f23214c3c27d4fbb3e7154c1e9e5"; + sha256 = "4128f704289b9267316eb373a3142305096897b37a2daa79a84f4448aea54b14"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/da/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/da/thunderbird-91.5.0.tar.bz2"; locale = "da"; arch = "linux-x86_64"; - sha256 = "202729a6f4813bb3760a5ae834731a019593dbcd5d66173999f5cbbedf277f00"; + sha256 = "39e5239860b450079cc10179e215bef63d77957c47bc3690c16c086a30e01317"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/de/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/de/thunderbird-91.5.0.tar.bz2"; locale = "de"; arch = "linux-x86_64"; - sha256 = "c035ce2cb81b7083d0c6fc859ee259afce5440bc8f2c8e1ca1db02ce97f0b237"; + sha256 = "0bc2cabac439734fdddfcfc1426696559ac1ee3e9a7bad1182329d83fb47d8cb"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/dsb/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/dsb/thunderbird-91.5.0.tar.bz2"; locale = "dsb"; arch = "linux-x86_64"; - sha256 = "413eda01d4390e41f6d859def75c5972c4595b453fc9da948415e8e38f4766c0"; + sha256 = "2c4d8fc6ae4c9a2adabe0a1593d7289596b97dd7b9e39b44da926f925f754ef2"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/el/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/el/thunderbird-91.5.0.tar.bz2"; locale = "el"; arch = "linux-x86_64"; - sha256 = "b238ee1b8dbf54ab0aa4c6f23a646e037a48e31d77749698744dc122bf38608a"; + sha256 = "07e10b923d0829e6cddc35bd56fe51afd07b35664b4feb725dfedbd51e99029a"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/en-CA/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/en-CA/thunderbird-91.5.0.tar.bz2"; locale = "en-CA"; arch = "linux-x86_64"; - sha256 = "4ef51ab9fdcd3c6ab1323a402253f5cd8682fa100f3b05fa62bf1153bbc04c28"; + sha256 = "7f583ea36dc9d8a1a2136343773a8e7434d466f31ddf50f5f7da7675a08dbd03"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/en-GB/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/en-GB/thunderbird-91.5.0.tar.bz2"; locale = "en-GB"; arch = "linux-x86_64"; - sha256 = "3ee22d3b5c23bfba703d36e58185ef139ccfa923c1877f983fed90419e7fdf8b"; + sha256 = "46bd4e13d215bd9be875ebe3f999da3927a480401aa4a2e51f0388d3cf28a3a0"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/en-US/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/en-US/thunderbird-91.5.0.tar.bz2"; locale = "en-US"; arch = "linux-x86_64"; - sha256 = "6bd3bbcf3d92efe04b19bb45c0d9ac3abe8dd68fc84e255b76467b37ea5918b1"; + sha256 = "f6d62b3161d1b7cf665fdb965526632fc4eefcaf1727ece7986e956c7575cf0d"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/es-AR/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/es-AR/thunderbird-91.5.0.tar.bz2"; locale = "es-AR"; arch = "linux-x86_64"; - sha256 = "14b7fac461e90c4dd1790f6095e291e1ba510561d51655b16bda4ad7050dca8e"; + sha256 = "4f190b4d64db8fe9accafe1941e3f949ba21488b4411a506f6f61d437f17d61e"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/es-ES/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/es-ES/thunderbird-91.5.0.tar.bz2"; locale = "es-ES"; arch = "linux-x86_64"; - sha256 = "ee910bc3415e314d5f3b072608d61089ae55e969a138ee446377edf0e5ba710a"; + sha256 = "61065d0c72451cebbf5d83c92e460e240e7f477322531a3f4d082b3c0e6c213e"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/et/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/et/thunderbird-91.5.0.tar.bz2"; locale = "et"; arch = "linux-x86_64"; - sha256 = "a643d96e71123c554a8af69bc875515113ffd30ab621d5f3b5678c33931cfab0"; + sha256 = "cba4afe259ccd7c6619f4ee0adf167659eb4f80e9355b25138d9f370ecbcf932"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/eu/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/eu/thunderbird-91.5.0.tar.bz2"; locale = "eu"; arch = "linux-x86_64"; - sha256 = "b910976d8e940331d46ac92f82f56aff61f8d91137bae9c869715cb371309f9e"; + sha256 = "4e8569190b2702ad6e10156b434100cdf879dfb3a5ee798c876fc46871e1abf3"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/fi/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/fi/thunderbird-91.5.0.tar.bz2"; locale = "fi"; arch = "linux-x86_64"; - sha256 = "a8dd93299fde700cf1419187da06405093b3f010e7fdd327742fbddcef1721a0"; + sha256 = "93e3b7624d6de0b77f87bb192384437e006530abd03bdc5589dc0dc47e0af304"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/fr/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/fr/thunderbird-91.5.0.tar.bz2"; locale = "fr"; arch = "linux-x86_64"; - sha256 = "526f4f4feae5f6a0b9f1d80b0f76a7f26af7456e1eb09e36eadd51fc8d4115ed"; + sha256 = "a35c370b69a977160a83ffc4d24f5a9a9f1000e1012c71fcd1e7adc6c16c68b8"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/fy-NL/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/fy-NL/thunderbird-91.5.0.tar.bz2"; locale = "fy-NL"; arch = "linux-x86_64"; - sha256 = "df5320f98ecd32439273b18237a742c34590e5b533a7da9471cfd37921725108"; + sha256 = "c392fb2f59d13f912e757be716a4bfc464a0cb2f69f8af780bbaec8e6bbcdf0f"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/ga-IE/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/ga-IE/thunderbird-91.5.0.tar.bz2"; locale = "ga-IE"; arch = "linux-x86_64"; - sha256 = "c13529036ec2186e0e3088f63e351086bee21b0f8a3479586420c6a2701ee8f1"; + sha256 = "210aeb0fe2c3214f82948ef39205416e4c50750be0226fa56b2c5548ed06a182"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/gd/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/gd/thunderbird-91.5.0.tar.bz2"; locale = "gd"; arch = "linux-x86_64"; - sha256 = "f6c2c7cf6c8a39997e272d9aae5c7ab4620f426e2be96b4e90c3641db672a6ea"; + sha256 = "c02818558da950caa540cc73597bb2ba1cbfcf02240b085856776df5155b59eb"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/gl/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/gl/thunderbird-91.5.0.tar.bz2"; locale = "gl"; arch = "linux-x86_64"; - sha256 = "ba0d17f99ca15bc81631201057509694c5dc656176a03e67d5f89371a4200eda"; + sha256 = "5704fa5d4efb470e516c23a6f15d238ebaeaa7ad1ce14f49b7a5a3bd19524f92"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/he/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/he/thunderbird-91.5.0.tar.bz2"; locale = "he"; arch = "linux-x86_64"; - sha256 = "c71bf27c55ad5b6c7981a434d598eeab8a927dbfc0510d4d68df357cb1abff9f"; + sha256 = "c366556e481757da8f48b89f1ef54492e5d5e41a45d9ec55f5e81081de4d8b58"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/hr/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/hr/thunderbird-91.5.0.tar.bz2"; locale = "hr"; arch = "linux-x86_64"; - sha256 = "9cf92e922329ec46ed68f352284de30c78aa2d25f040da4e1289d5ea0226bc3a"; + sha256 = "47a713172ea17582ec988fdef33cab24f3245274badefbefee7f665af7e9e917"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/hsb/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/hsb/thunderbird-91.5.0.tar.bz2"; locale = "hsb"; arch = "linux-x86_64"; - sha256 = "e4d6baa0d92fbe7f40071045fcdb20f59944a0c1422c1095b946019461013242"; + sha256 = "019271fd8d9343581783dcd6a59698de726fdeca39e4e71226b7361a42e7478b"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/hu/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/hu/thunderbird-91.5.0.tar.bz2"; locale = "hu"; arch = "linux-x86_64"; - sha256 = "cea2f9b614e0b7cec709947ff75b9eb6abe6600b76d642b60910e2de1788f09b"; + sha256 = "bbdd56ba0a2f1079d2dfe63f2cbf56dc98f5f0675c73413880aba147d797d1c2"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/hy-AM/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/hy-AM/thunderbird-91.5.0.tar.bz2"; locale = "hy-AM"; arch = "linux-x86_64"; - sha256 = "8708acca6f1e4088f10f94f8c26a7790913fe55acbf0ab555e22b1256b74a866"; + sha256 = "8393fdba3c2d7024c1ad5d017853c1a13fec47a29e31db4ba0f38c5ee49843ec"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/id/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/id/thunderbird-91.5.0.tar.bz2"; locale = "id"; arch = "linux-x86_64"; - sha256 = "745ecb2038a84b1571e326ed0e6d38e7519bcf5b7f2bacf6ef053c9a88926c77"; + sha256 = "51ff83923eda81e69d5c74bd49878c17eb3552072b196e2fc933b3dbf89a7513"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/is/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/is/thunderbird-91.5.0.tar.bz2"; locale = "is"; arch = "linux-x86_64"; - sha256 = "e04b6fc88ddd46e6e6cbe47eb681acce91b47df355847f65e793d92419dc4204"; + sha256 = "9f6bdf8f9a97788137e698464e391f6942e3cbff5870e8b4f534597f0b582f5d"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/it/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/it/thunderbird-91.5.0.tar.bz2"; locale = "it"; arch = "linux-x86_64"; - sha256 = "e23eb2075bcac5abc195b1abffe64b8e1a409c855699c6d5bcbd102c19a2ad4b"; + sha256 = "33b0169fec2ba8822c086837fce0ed59d77676f6fe804948dfd0ad0c328e1cc7"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/ja/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/ja/thunderbird-91.5.0.tar.bz2"; locale = "ja"; arch = "linux-x86_64"; - sha256 = "a79711803c46b6ab95f654d5b9dffafe85733b6c839238de8f76d30f9757553c"; + sha256 = "bf93f1e234aa13edb416912377a23ffb370de5a249cc66ec13587632493f0efc"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/ka/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/ka/thunderbird-91.5.0.tar.bz2"; locale = "ka"; arch = "linux-x86_64"; - sha256 = "3076defee6dadfad4560800ecf2b3556fcf8f4dd5a8795bb578ee73bbbccf72f"; + sha256 = "dee6e5c984c0dafa66476bd4342385beedeb826a947991b2b4bc3a0e1d7bafd4"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/kab/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/kab/thunderbird-91.5.0.tar.bz2"; locale = "kab"; arch = "linux-x86_64"; - sha256 = "65f796d71d02118794b79d5460ef9db06e3d172e5d15ff350eff52cc214587dc"; + sha256 = "fcf175d175327f8a6c76d0e81062a967813f486e8005aafa7998fa682542e5db"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/kk/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/kk/thunderbird-91.5.0.tar.bz2"; locale = "kk"; arch = "linux-x86_64"; - sha256 = "f8df25990df8b577e224551f1af44fb87c867b7d7622931214bbceeec3699646"; + sha256 = "22e2bff84795a512eaa486acb11440afa51afddd5feb6828c025bfdd796cc5e8"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/ko/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/ko/thunderbird-91.5.0.tar.bz2"; locale = "ko"; arch = "linux-x86_64"; - sha256 = "77d6e16972f9ddb553d9bd19627a0725d25d42a0ad6d1e665d249b094b137dc9"; + sha256 = "a3c8fb1b1cfc7e68ad177fce78a8751c86cb4d95965d05abeff384c19f470bce"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/lt/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/lt/thunderbird-91.5.0.tar.bz2"; locale = "lt"; arch = "linux-x86_64"; - sha256 = "208eb06ba9e8b1cd391a7694552af6e7ba3ead33567d51fda82d70e024378f56"; + sha256 = "5aaa95d61662a69d3d92cad9d5cbf24a348a7c6d7db1440412a324799167bd7d"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/lv/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/lv/thunderbird-91.5.0.tar.bz2"; locale = "lv"; arch = "linux-x86_64"; - sha256 = "a4a85c3f969dc40149ad82d0dbc4e1089de67ba3c6d7495f5c45196e8c7083a8"; + sha256 = "ec61d867216b50649e2900e8922603f38ebd4c67596b29984c60c1933f1f00a6"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/ms/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/ms/thunderbird-91.5.0.tar.bz2"; locale = "ms"; arch = "linux-x86_64"; - sha256 = "e5f3259e002b31d9a2738ad81826d59dd464aa34532441e9092e976efe8be7b4"; + sha256 = "27bf8b301dc1c05a22c413559f833d522fb42934c136be126de90d3519df7c1d"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/nb-NO/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/nb-NO/thunderbird-91.5.0.tar.bz2"; locale = "nb-NO"; arch = "linux-x86_64"; - sha256 = "33fa29d2490c7618d1f9bbaceb34b898d150e57fc9b96b957a5b348b6fe47cfc"; + sha256 = "587b27872162ac8e7580183b362192f7c2439a4a7a783aa4fc6ae81e87e7b4bd"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/nl/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/nl/thunderbird-91.5.0.tar.bz2"; locale = "nl"; arch = "linux-x86_64"; - sha256 = "726962fd26948726230b49736f2d1e6c6daa562a4389e0fa0069ab737304cbac"; + sha256 = "be970367d664bcc2a5e6a0805d0b63fc991221c41497ccfa1a1ce5102b20450a"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/nn-NO/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/nn-NO/thunderbird-91.5.0.tar.bz2"; locale = "nn-NO"; arch = "linux-x86_64"; - sha256 = "09bab6f8061400413e7167693e4c2f14caa4aba0ac68c7cfeaf9ed2dfa44ea0a"; + sha256 = "92e168f3db1bef0c2fd33dd8da8f2ba8732e63c1b36aeb0e01f3478e67dafba2"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/pa-IN/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/pa-IN/thunderbird-91.5.0.tar.bz2"; locale = "pa-IN"; arch = "linux-x86_64"; - sha256 = "2203476872b140a1fec867435bf1a006b63a7ffc018eb466ea164597474a2083"; + sha256 = "485d231b5153fde23d9a35154c713b97dbcf96a8f1058399b09796210c831391"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/pl/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/pl/thunderbird-91.5.0.tar.bz2"; locale = "pl"; arch = "linux-x86_64"; - sha256 = "3cc4fa964b4deaef9d901fd9fba597059f638b1b8322515ac02cbb97f5a5c28b"; + sha256 = "112240a352a3d833de9df127ab0118841b88e67c4496a17c8cc63abbd19f1166"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/pt-BR/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/pt-BR/thunderbird-91.5.0.tar.bz2"; locale = "pt-BR"; arch = "linux-x86_64"; - sha256 = "c68055c96551a1b529bdf81659231ec5244c4c68255d88f581c378046bbb5e84"; + sha256 = "7388f54dc99de6498af19f0a6e7b80bf2c7465c68d94c4e04ca5038a2e087960"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/pt-PT/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/pt-PT/thunderbird-91.5.0.tar.bz2"; locale = "pt-PT"; arch = "linux-x86_64"; - sha256 = "36c9b2170aff5e6f58377efd53f679e9e823f45b67d7407cb3c34d72f676625a"; + sha256 = "1ca7c9a460e8603d0daadbc07fd12fe6d0d07ef288144ba5da389fdbb5ccf4e2"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/rm/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/rm/thunderbird-91.5.0.tar.bz2"; locale = "rm"; arch = "linux-x86_64"; - sha256 = "2f00df17c29128e2b135136fe700930ff0078e8896e1cb4f7c34b44af0cfd8f2"; + sha256 = "954516da6b44ad4dfc56f3b837e45bc0816498fe426ae3aa4d3363621cb2c289"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/ro/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/ro/thunderbird-91.5.0.tar.bz2"; locale = "ro"; arch = "linux-x86_64"; - sha256 = "ed93041b32a711e04de6737c5d6fbcf6b598ca9eccefe5ab0e02cf3cacba5ffa"; + sha256 = "e5d83482c7381d89445d49b5c85b5645533dae173010f2ebfcf706c01337f4e2"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/ru/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/ru/thunderbird-91.5.0.tar.bz2"; locale = "ru"; arch = "linux-x86_64"; - sha256 = "206ccfcb5d6a9d70f4258ddeff0cc79c38e801d860a05bf6214c03b24e2f9057"; + sha256 = "51db5bfaca6c9404eddb71cc6559c7c83534fbe57bf27da14c35b4b268cdfc98"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/sk/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/sk/thunderbird-91.5.0.tar.bz2"; locale = "sk"; arch = "linux-x86_64"; - sha256 = "aa8e6dd53d5b741bee345d1f7a5b03866121619f54993233cb4239c6107eb3e6"; + sha256 = "5803d8547bddaffa6a9532eb6abd2f66f6936c6614a1c322a8065a01e6c831c9"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/sl/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/sl/thunderbird-91.5.0.tar.bz2"; locale = "sl"; arch = "linux-x86_64"; - sha256 = "95f3a97adc32abb33c0a7579c19247595f6f27c7da0cf06bf1fa9d8270b41996"; + sha256 = "2837b957b89184978c0ead48e7a2d58a7ee140ed280be8d744fac929d66cfd0a"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/sq/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/sq/thunderbird-91.5.0.tar.bz2"; locale = "sq"; arch = "linux-x86_64"; - sha256 = "fe8255e55081a6cae15085cfcf793c4094de55a2b12d3732c7e75ce567b85716"; + sha256 = "fd98ce5bb9bccfc8c9ae022cdf0416848e3564b59ccaf3ce8888eb7d4d02f0ce"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/sr/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/sr/thunderbird-91.5.0.tar.bz2"; locale = "sr"; arch = "linux-x86_64"; - sha256 = "f889e1ff38542aae19d6ebaf827a2c6d6f8dbd6e16a80966bc311588e4e10ffc"; + sha256 = "d9c1ec7df7e66e1b4e28a68c9ed74e8ea17a166dee2d2aaf7c9be616bfde97a0"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/sv-SE/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/sv-SE/thunderbird-91.5.0.tar.bz2"; locale = "sv-SE"; arch = "linux-x86_64"; - sha256 = "2f90c95bbdcb6bfd59cee40013cc1c498e50f5cc0209799dfe1dfc57afbc37ad"; + sha256 = "e9e8ea82bf5fdb900c36ef22afda90d518ac52a4fadff5a3f1afbb09b4d1ebe4"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/th/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/th/thunderbird-91.5.0.tar.bz2"; locale = "th"; arch = "linux-x86_64"; - sha256 = "3fa19fef25c76f49f9e6ee9edc2f24cd02c2b589b8e2cea270f4aa71f1a1a621"; + sha256 = "4a58f3d88283cbe83bc6f9ff26c5b621bde3a52a8e5cda283f9bac6fa329e2a1"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/tr/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/tr/thunderbird-91.5.0.tar.bz2"; locale = "tr"; arch = "linux-x86_64"; - sha256 = "7de3ccbe109401dab260ed1c8ae9fc360e5392c81111df930d0c7f7d46211f83"; + sha256 = "489e5d4448c25310ae14c6a74405d582b50113a73c394aa51776c2c3b37104ec"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/uk/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/uk/thunderbird-91.5.0.tar.bz2"; locale = "uk"; arch = "linux-x86_64"; - sha256 = "967020d05810d1514be84635cb56162b83f7f28a2bea221ad21ecb4ebd960968"; + sha256 = "cefeaf9df2e5fab13cf131d597393b83c1101d83b6dda04207c4428abbb62d15"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/uz/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/uz/thunderbird-91.5.0.tar.bz2"; locale = "uz"; arch = "linux-x86_64"; - sha256 = "371d60bc164552f04cf680a29af5992f1ac353e8bb30af62a5cdadf744576c71"; + sha256 = "7a330fa612f09f1337c3c775d0c0447dd2878e79c2555c7e1a13f611e2712720"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/vi/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/vi/thunderbird-91.5.0.tar.bz2"; locale = "vi"; arch = "linux-x86_64"; - sha256 = "600cc9d18a18ebc13bd8371140b573723b913e100937b3bb22ab04cf7846e1e7"; + sha256 = "c1c11ce007f1e8cdfd039c8b9dbc73e879adafc40d6ef11dbf82134ff76c8d48"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/zh-CN/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/zh-CN/thunderbird-91.5.0.tar.bz2"; locale = "zh-CN"; arch = "linux-x86_64"; - sha256 = "ae59930a4c609e4ce0562338019db1202c3eafc2e3dabd90888076ece4fe8ee5"; + sha256 = "041aa19e78aad8be563bf4466572deb8bbd16f3a74c24f297da0667dfc65739f"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-x86_64/zh-TW/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-x86_64/zh-TW/thunderbird-91.5.0.tar.bz2"; locale = "zh-TW"; arch = "linux-x86_64"; - sha256 = "2cd58c1fb54b572e6a2f63b9881f53ee65d9992d75c0905ea2e1047afabd08a9"; + sha256 = "dee8d2dea78128f250054d5f8aaf948b19d3e43acc228a0c751df84d601ce76c"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/af/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/af/thunderbird-91.5.0.tar.bz2"; locale = "af"; arch = "linux-i686"; - sha256 = "bbf9e3a8856f66ed2d263b05d5520a9be26719f45380a5f29e6cf27c891c3e23"; + sha256 = "6e19fa5338b63c3aa163cbb9d84953a0f1bc4bb593cbc685cf4e59249425f948"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/ar/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/ar/thunderbird-91.5.0.tar.bz2"; locale = "ar"; arch = "linux-i686"; - sha256 = "0df457c90aedef53adca7dafe34dc95847b77603362b27f814f4e88d40311ccb"; + sha256 = "2b35a83198c30bc9838849260477b4846dbd35b82607261534e05336911129c5"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/ast/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/ast/thunderbird-91.5.0.tar.bz2"; locale = "ast"; arch = "linux-i686"; - sha256 = "b97a3fc046dcd75e2703629e01abbe2c7a81bc98746fdd96ac195b2508e396b7"; + sha256 = "01712e869983cb089f9e98449ae215c95aa59e70ad2a7e61a17788f74c50c905"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/be/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/be/thunderbird-91.5.0.tar.bz2"; locale = "be"; arch = "linux-i686"; - sha256 = "158495d87e2bc8c2b257d055fc9096580bbb7dcc126b3b83a4aa0f3deaae9cf7"; + sha256 = "e7cfd5b52f0a809c514ac17f29bf30d2aa1959193020f742b8e907fc4772eb8b"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/bg/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/bg/thunderbird-91.5.0.tar.bz2"; locale = "bg"; arch = "linux-i686"; - sha256 = "77497a922cd441a3ed791d6f497586b2d3b286a64cf057cf34b07e38b6c1f5f2"; + sha256 = "e74a5073ec17e2ac75c81e9dbe418167932d53d47fb1449a919b7a6824f7ace3"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/br/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/br/thunderbird-91.5.0.tar.bz2"; locale = "br"; arch = "linux-i686"; - sha256 = "862629fb07c7743a2bc909883ebe19347fea71fc91b8df927d846054ce2b1b08"; + sha256 = "a8b13e933e1767d6f42fa4e02892d99ef5d8da14c9aad51e2089d16c2b935c6b"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/ca/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/ca/thunderbird-91.5.0.tar.bz2"; locale = "ca"; arch = "linux-i686"; - sha256 = "33ab06809f5982036b849aed5ec46d7271c217cb7330149f4783fd308c19ef46"; + sha256 = "047e158f5b81c5c5837c583e63f1852e94ab65365e7551dc14dee4e91711ee89"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/cak/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/cak/thunderbird-91.5.0.tar.bz2"; locale = "cak"; arch = "linux-i686"; - sha256 = "6bd1cd49eb18ce7bb88e4e023063bf03e2c2078f7c3ccf0f1c477d712b4e67fb"; + sha256 = "1175e2c893f720fd128de26ff7832367e2e8792d1a0fb968c23cf0c2971d87a5"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/cs/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/cs/thunderbird-91.5.0.tar.bz2"; locale = "cs"; arch = "linux-i686"; - sha256 = "528aba25c407f52e728361e5174cb232f2583ef5ff62bf47386d4766f776566d"; + sha256 = "9c80c6afa31ed73ccb2e1c813acabc3be484e00f6c498dece19e095d5fc7e1ab"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/cy/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/cy/thunderbird-91.5.0.tar.bz2"; locale = "cy"; arch = "linux-i686"; - sha256 = "efd1490cd2a357c1d61d5225a8d1b1b9a61be5c25805b26496ea3ad946d4cbcc"; + sha256 = "79418720066cdeca5abee231952b3b26f1209eaf59ceab0882f798ba86305aee"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/da/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/da/thunderbird-91.5.0.tar.bz2"; locale = "da"; arch = "linux-i686"; - sha256 = "00e9e787a8bf21caebcd1b21889c5534d38d14d8eb2e10b297b320e71455910f"; + sha256 = "4797af3b1d72199565fafe269d5514042420d3ffd276fb94b3bdda5cea2191f2"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/de/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/de/thunderbird-91.5.0.tar.bz2"; locale = "de"; arch = "linux-i686"; - sha256 = "1c93e59e8d55ff671e630dc86091b1503b73e8b92f7bf0b6726d3b9829bfa8d1"; + sha256 = "c15470c0a61190749d88c857d1a4490e331fc0046cd7aa18fffa5d23b33c1460"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/dsb/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/dsb/thunderbird-91.5.0.tar.bz2"; locale = "dsb"; arch = "linux-i686"; - sha256 = "d8de15bf2699fa44b82aab0872b966d20dae733b46404b03a1e8c41e28b2c4dd"; + sha256 = "64c176f0c64d877a505006b03eb0d685042b7120293b733de029868a3ae562ec"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/el/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/el/thunderbird-91.5.0.tar.bz2"; locale = "el"; arch = "linux-i686"; - sha256 = "1ecb81092cd8bdae878792f2be7a32edc378d3691ca696bcfe3899e81ace7cd7"; + sha256 = "b220e7f82cbd674b5e98d082766b06a52bc69e18c7d1c91bb0a9dc6d2f129c99"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/en-CA/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/en-CA/thunderbird-91.5.0.tar.bz2"; locale = "en-CA"; arch = "linux-i686"; - sha256 = "68836e09adf5f9d2b5c9f3b96ed5b05f56931faa33bbb17c578436c13c5cc4ee"; + sha256 = "0cc5344d19e62fc86843d71792a59b310be9604ba2bc1ea633d71d6f54ea7eae"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/en-GB/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/en-GB/thunderbird-91.5.0.tar.bz2"; locale = "en-GB"; arch = "linux-i686"; - sha256 = "b20a74cc35abd3d066384f57b5d2f7a6a1dd24193b720fedce693d8b864058b6"; + sha256 = "04285f839530ce6917a1918d557cc86448debbd8910d54ca051b9f1b63749b7d"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/en-US/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/en-US/thunderbird-91.5.0.tar.bz2"; locale = "en-US"; arch = "linux-i686"; - sha256 = "8f3bffb289081a898f9e77c291ef1ce63af8c0e966894b54a3c533741b655aa9"; + sha256 = "fa96eb80909cc7f485abda8fdc093f0ef1e2e5fe69f4919bdeeea27651fa264c"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/es-AR/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/es-AR/thunderbird-91.5.0.tar.bz2"; locale = "es-AR"; arch = "linux-i686"; - sha256 = "b1c26f4dd600995a88ad960f55fbf6026ad2ff93b94ac12af991440ada44a54a"; + sha256 = "5affd961efe6b8d6b7616ef1103095c068627f6d3c571aaf71924bc8f8bc58ec"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/es-ES/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/es-ES/thunderbird-91.5.0.tar.bz2"; locale = "es-ES"; arch = "linux-i686"; - sha256 = "a28fb5020e2e5a577958f4702cd3f15dadf4fcc62c3bfc954d5df3777ef4152a"; + sha256 = "1dae610383b6dd35e4d6e7d0f8a757b98ab98c6b587940818c239c95f7829e24"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/et/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/et/thunderbird-91.5.0.tar.bz2"; locale = "et"; arch = "linux-i686"; - sha256 = "9a8fc8ba9df9aa179ca6b18d412ee0395c54ed3e2394d951c1cb85d4cb656808"; + sha256 = "3b2979496032f3f140460295fcae7ff6b08b7970c18eff6bd83df6f582c20651"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/eu/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/eu/thunderbird-91.5.0.tar.bz2"; locale = "eu"; arch = "linux-i686"; - sha256 = "56b10b3f9a824fbd91d1107db46e085b45d2c7d78a67a9eb8554afa7aab881a9"; + sha256 = "a10fddb7405cb311d0a8c69dafca4dce66084c64f68fc7dabbdd7292d265d528"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/fi/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/fi/thunderbird-91.5.0.tar.bz2"; locale = "fi"; arch = "linux-i686"; - sha256 = "ef41d1f5a985f1bf98790f76cd9dc9cf8d02614b0d780c59f95fe30224678f02"; + sha256 = "edc8f3c7368126e3678f8ea6c22e8e575cd34054a94e21b1eac0a44f44689790"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/fr/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/fr/thunderbird-91.5.0.tar.bz2"; locale = "fr"; arch = "linux-i686"; - sha256 = "2af9a88a1bf2bc0932ef0131a53b2ab3fda256ceaf3e8f256e41f648153eea8f"; + sha256 = "bae7f4e7cd6d72c3e8270f12483f382c939f3012df6597bb3233af9a3d0bab03"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/fy-NL/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/fy-NL/thunderbird-91.5.0.tar.bz2"; locale = "fy-NL"; arch = "linux-i686"; - sha256 = "3406057ce9f70c9f1a2efce979fd9b1bffa2ad7fe63bb90e541ea539a2eb071f"; + sha256 = "dd38566e30d30d1a15283ef1c4382d350cfd4afe8cdaeefc38b995cc82045964"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/ga-IE/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/ga-IE/thunderbird-91.5.0.tar.bz2"; locale = "ga-IE"; arch = "linux-i686"; - sha256 = "ee6a8941da6093a7b342da1f124ab5d82cfc9ed288a7385c2ce33e5d95370fb6"; + sha256 = "7b16826113f3c46601465dbc3b44a24b5e62d9a6a0639d4f74b6314250f24224"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/gd/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/gd/thunderbird-91.5.0.tar.bz2"; locale = "gd"; arch = "linux-i686"; - sha256 = "9b57c51af6dbdb9c654e0fc96fe086c04f4dc482fa3528c9658261b9710bc229"; + sha256 = "4287667e5ff7a6ff39c74066a7c22229736ce503fad749293710a25cf74b5836"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/gl/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/gl/thunderbird-91.5.0.tar.bz2"; locale = "gl"; arch = "linux-i686"; - sha256 = "d2d12a17334c0b74904fd5a64294c0ca86430d79ebd765d7118b3451cb361819"; + sha256 = "bcca84aaab4c48e8842f1c921ac398f56eaa569cda6ffa6b5aa3cd0ec709e42e"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/he/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/he/thunderbird-91.5.0.tar.bz2"; locale = "he"; arch = "linux-i686"; - sha256 = "da8791864ea612b37839075a85ed446aecd4be941c4f624ed212fa1e4d322768"; + sha256 = "fd9be0e774dde17d5c2b5d1887c9e9ab75fcb7c797f5b6d59c991679eeb870a7"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/hr/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/hr/thunderbird-91.5.0.tar.bz2"; locale = "hr"; arch = "linux-i686"; - sha256 = "11ef3a9c2b7555ef144cc0689265f928c29b01fccded781d76a3f2105d15ed67"; + sha256 = "4dbc9d9a2d9409688c2f67f5c73fbb31fd1027ee787527f437f95582103c728a"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/hsb/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/hsb/thunderbird-91.5.0.tar.bz2"; locale = "hsb"; arch = "linux-i686"; - sha256 = "bce0ebbaa3e19912d74e5a9754a45a93948f41d5fa9dfab77aea03856ea70ef4"; + sha256 = "5cf4fc68d7d9464d55686dbac2dba4a38ca50bb36e6661ed4d58b91726f0b312"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/hu/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/hu/thunderbird-91.5.0.tar.bz2"; locale = "hu"; arch = "linux-i686"; - sha256 = "dd1b5a48fb175be82967f3b9ca72ea86b2797ebb68285fee143c77ae72a9e659"; + sha256 = "dd1b4a5f2498eb2e3a3956fdf6379cdde04f0eb60efc201c86237f07dfc01a2f"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/hy-AM/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/hy-AM/thunderbird-91.5.0.tar.bz2"; locale = "hy-AM"; arch = "linux-i686"; - sha256 = "cc172a84b6c586a786a7691eb728e8bce5af253316cec64b989fe2f10f253f95"; + sha256 = "4e717d157784d865f4de4dd8b14718d39103ce24be1d72c5720629c74d74ae94"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/id/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/id/thunderbird-91.5.0.tar.bz2"; locale = "id"; arch = "linux-i686"; - sha256 = "6ac4c494569bb7d5a9948d1e19cb273135638b3b0fa487a535d36f2b70c86bfa"; + sha256 = "a705929998084e28016cc60df3b7ae6a1f70929270be16307e9be89f1324de2c"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/is/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/is/thunderbird-91.5.0.tar.bz2"; locale = "is"; arch = "linux-i686"; - sha256 = "e98642ccc27cc77180a83b34a55a59f9b653beb993e80647b76b1c2d1fec003a"; + sha256 = "48d7eb8c949e9590699031c45bcdd746d1e86ed8dd893bb3afa7025f7bc4c247"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/it/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/it/thunderbird-91.5.0.tar.bz2"; locale = "it"; arch = "linux-i686"; - sha256 = "bada535c73a41318650acb3e744771beea09bf192b3f88e6e8be0de0f9c15b4f"; + sha256 = "0278a174914da7f874a974847a30bc52851496e79690a8ccde2c3a0a24e9aa39"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/ja/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/ja/thunderbird-91.5.0.tar.bz2"; locale = "ja"; arch = "linux-i686"; - sha256 = "dc30bc5943518dbde7b213df3fdd0b454550612d741e167003efc0463b3fd2ae"; + sha256 = "243e610020c892cf44de3d76b27539e57c5c9eeaef6c5d8298af59ee4be8b448"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/ka/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/ka/thunderbird-91.5.0.tar.bz2"; locale = "ka"; arch = "linux-i686"; - sha256 = "747b850fdb8cad7607b807bf402e2b6d9b58006c9d8323947c2c991d3d775d1e"; + sha256 = "c641e2f92c87a7454603d059dc34dd2719aefe9b10548dba9e4b95e728583181"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/kab/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/kab/thunderbird-91.5.0.tar.bz2"; locale = "kab"; arch = "linux-i686"; - sha256 = "fd063bc5e41bec78ad7d006370ecc0be0644a63bb0f5d6cfdda7148790113059"; + sha256 = "a47675e0ec44e8bb94dd950e5282f26f0ee878be90a87c0cffe50fe74adc754a"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/kk/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/kk/thunderbird-91.5.0.tar.bz2"; locale = "kk"; arch = "linux-i686"; - sha256 = "f853aeb878ed181070b192f1b27dd985a6f0b2318500373b23358c53a56c3d97"; + sha256 = "1a4cc1087fd9fd0f9cb303c1a0de438d95ec9a665360d9c9915af4269af6f5e9"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/ko/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/ko/thunderbird-91.5.0.tar.bz2"; locale = "ko"; arch = "linux-i686"; - sha256 = "7444d40c6db9b592d3831115e981208567311a58d47606da6947217e58650e90"; + sha256 = "f45540f54fab28b107c2938b91191a65f2051fbf435e00530d343f076cb84373"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/lt/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/lt/thunderbird-91.5.0.tar.bz2"; locale = "lt"; arch = "linux-i686"; - sha256 = "c7f1cf8b583e6659ec84a0546a3e7828626bae3664de35bc9bcd9fbbb97b56ba"; + sha256 = "be4d02c3b07aab05e82de8d167ae22269ca5c5ee020a6d8cad0e53a433135160"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/lv/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/lv/thunderbird-91.5.0.tar.bz2"; locale = "lv"; arch = "linux-i686"; - sha256 = "30671983c35bb5c112b2b9755e56a1c36afe5bd03c0f09ba930095880b7ab25a"; + sha256 = "76e3c3c943d4f3598f6f49b51ab9c8625322ad78b6809418905e8d0c7d586ee7"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/ms/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/ms/thunderbird-91.5.0.tar.bz2"; locale = "ms"; arch = "linux-i686"; - sha256 = "233464fc722e9deba822c3cec0c7ebf5b1b72295a6847a3203410784e8e33f0f"; + sha256 = "e125a89ea9d9f013ddd2f816ab10c6916b514ff329011f54e517e2d6e5edb865"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/nb-NO/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/nb-NO/thunderbird-91.5.0.tar.bz2"; locale = "nb-NO"; arch = "linux-i686"; - sha256 = "299f50b9d2077ea8300959cd90aaf3113b5fc5da77fa66617533d2b6d4a11f72"; + sha256 = "f1645ab9430323efefff6751696e1fe601063eef5c5ac70b90889620f6bd9680"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/nl/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/nl/thunderbird-91.5.0.tar.bz2"; locale = "nl"; arch = "linux-i686"; - sha256 = "4374b5d175d4c990d706241083886e9459f9aa51b1c9862dc02c5134df6a8523"; + sha256 = "2c1cc1a8ed006e45d4649fa89d5446a9df2e95e2656e9a18130556c42ee0db78"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/nn-NO/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/nn-NO/thunderbird-91.5.0.tar.bz2"; locale = "nn-NO"; arch = "linux-i686"; - sha256 = "786c23053df9dedb177bd22ab3cf78e3083b73b9bd11b45c17bae35921f8c762"; + sha256 = "089e6cb230da93b30aac8a81d22f6ac97233d20f6a0e50e96ef8675acfcc407c"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/pa-IN/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/pa-IN/thunderbird-91.5.0.tar.bz2"; locale = "pa-IN"; arch = "linux-i686"; - sha256 = "cc3df207d658cdc6b13e8d67dec598afa477520d81d6c4bda23bfa0a3bdfe9f7"; + sha256 = "6ca6b68ac5ab40966b8bc13d6a8f1ef26730d8065cad27f93bd3139295b5fcbc"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/pl/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/pl/thunderbird-91.5.0.tar.bz2"; locale = "pl"; arch = "linux-i686"; - sha256 = "9471ddfc7086cf21222eb1de8c5de76f61f0d9479d6691fa4cce16ea4a481361"; + sha256 = "93f94b83a17569b5b626277af71651a607d74c32fa17fc35896ac42556075d2d"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/pt-BR/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/pt-BR/thunderbird-91.5.0.tar.bz2"; locale = "pt-BR"; arch = "linux-i686"; - sha256 = "0e466b0a1a0e258b9d3b5288902dcf4fc114a192ba156d956d8be9bbcea1a42a"; + sha256 = "9c7e02da587136eebf6111fe4e25687f904b8db7629be251c84ab25b6adfd2e5"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/pt-PT/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/pt-PT/thunderbird-91.5.0.tar.bz2"; locale = "pt-PT"; arch = "linux-i686"; - sha256 = "83b0e2bfe657f16b88906f2a70a0d954b73d053c01b545812e40d02f343b50ef"; + sha256 = "8666b71ac2fa83da6175c8c26ab73a957f19dcc6b36cca7f980407aa7a42111d"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/rm/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/rm/thunderbird-91.5.0.tar.bz2"; locale = "rm"; arch = "linux-i686"; - sha256 = "507059e7cad7c0665c0468436e334a3c2cef258751fe97e90a731d067e0cc672"; + sha256 = "f278f045fe7c941b4545ea452152859960d952704f2d666d39bb6a91175c7027"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/ro/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/ro/thunderbird-91.5.0.tar.bz2"; locale = "ro"; arch = "linux-i686"; - sha256 = "61e4d4652ecbce03421dab02aa15f49e4a782cf63380d76207173afd07dc6183"; + sha256 = "2c43f39a8fcd557efde852eb7f859eff048672806ec23620037a28d4d98da99a"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/ru/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/ru/thunderbird-91.5.0.tar.bz2"; locale = "ru"; arch = "linux-i686"; - sha256 = "b3c1d07ace631bc8117d1003029216a5579a64f7e83a4289877fe5101c0b261b"; + sha256 = "63041d68d0072699dfc7e3fa448ac9a3bf065795c455dd3f5671cae97d5d121a"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/sk/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/sk/thunderbird-91.5.0.tar.bz2"; locale = "sk"; arch = "linux-i686"; - sha256 = "ec8949eec7a001e075888500749f7b0211996afe4d25dc081df34e20a214e835"; + sha256 = "be1cdf0cd47f788d736c9bfae340b6cf9edd661293e5ce5b5bca6b2aa169438c"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/sl/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/sl/thunderbird-91.5.0.tar.bz2"; locale = "sl"; arch = "linux-i686"; - sha256 = "026a55fbb143621ba98d2218ff72c5eea2491ea74e3abbf46dc4d8405a7df327"; + sha256 = "128a46d7df356375536a432d7bd13bdea8d4932b105cdf4b8288af3dfa878b7d"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/sq/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/sq/thunderbird-91.5.0.tar.bz2"; locale = "sq"; arch = "linux-i686"; - sha256 = "0a22abf8961874edc88fb7654d8b66694050f98ed4440eb7aabbf7a4969bd993"; + sha256 = "6a8fa0c4806240a886393c51f63992e567524264c821ccf4f12e202f4f30e7ce"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/sr/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/sr/thunderbird-91.5.0.tar.bz2"; locale = "sr"; arch = "linux-i686"; - sha256 = "4304ac8a1283065aabc63b39734cd7d023a82b590cc1d255093d73cc1155e30c"; + sha256 = "e2639022166d0be0d30846a269c08940652475e77ef114089e22c9d5ddf61f98"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/sv-SE/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/sv-SE/thunderbird-91.5.0.tar.bz2"; locale = "sv-SE"; arch = "linux-i686"; - sha256 = "b2196727748a1d42bc67fcde4df47e7e1661a446e0620e11c64dcc1a7db0da06"; + sha256 = "d8a419a6c8105fbf6ee29a38cba3e40729ef8f12743d87ce2a623e8707ba0414"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/th/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/th/thunderbird-91.5.0.tar.bz2"; locale = "th"; arch = "linux-i686"; - sha256 = "de52a8a1a64b26d29721be3843c12df6bdb732354c9263782f989918a51dee2a"; + sha256 = "ac2926a73937c0789ba63d6ecce8a17dcf5a65a7fca5dd439618384588c0dce5"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/tr/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/tr/thunderbird-91.5.0.tar.bz2"; locale = "tr"; arch = "linux-i686"; - sha256 = "bba119fb7749350c06760d6885a89efa0632098e593f22a23451a592dbea9e1d"; + sha256 = "efcf840a32ab0264484c7f1fa2b3a0961cdd1e8ff37f4f83126ab0626c19834b"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/uk/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/uk/thunderbird-91.5.0.tar.bz2"; locale = "uk"; arch = "linux-i686"; - sha256 = "34198ab171b0783d0ac592e0a72ea355aae75b950f2569d2e6ed30a9b1a5d2f8"; + sha256 = "e1fabb41564ebd683cf298bb3bc13e3478dfef6522f6524a7c2ab69c64d59251"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/uz/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/uz/thunderbird-91.5.0.tar.bz2"; locale = "uz"; arch = "linux-i686"; - sha256 = "1adcedb12bb9485da32b47558352d5fa9182fd8411450386d9ac8a528b40cca4"; + sha256 = "2dac221764006b5db352416159311849cfa62c67894ec40a2914caf3191c79d9"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/vi/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/vi/thunderbird-91.5.0.tar.bz2"; locale = "vi"; arch = "linux-i686"; - sha256 = "c22cd41206fd7e4d80c6855c7217071be3890e84460cd030f4029a910c672bb2"; + sha256 = "fb482c3579b6bde18214ca68fa731d50ac254152dc51c5d13e283f16559f0886"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/zh-CN/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/zh-CN/thunderbird-91.5.0.tar.bz2"; locale = "zh-CN"; arch = "linux-i686"; - sha256 = "744515522d16884b4067a75412977243753baece132c4d5c815ac60d5a26bd7b"; + sha256 = "4e596742711f72eae50621fbc0b329bdf736267c753c51ab8dd1713cc0860285"; } - { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.4.1/linux-i686/zh-TW/thunderbird-91.4.1.tar.bz2"; + { url = "http://archive.mozilla.org/pub/thunderbird/releases/91.5.0/linux-i686/zh-TW/thunderbird-91.5.0.tar.bz2"; locale = "zh-TW"; arch = "linux-i686"; - sha256 = "21fcb4c30b76c607e215363688966ea92ae1f3cd658ce7c9118f3d0f2cfff729"; + sha256 = "c97873b840540297f08ad866479789f2f7cc8baa48de6bdf9eb4b945a5c135c4"; } ]; } diff --git a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix index 1ba3c40ea98b..c9cc9f901a33 100644 --- a/pkgs/applications/networking/mailreaders/thunderbird/packages.nix +++ b/pkgs/applications/networking/mailreaders/thunderbird/packages.nix @@ -10,12 +10,12 @@ in rec { thunderbird = common rec { pname = "thunderbird"; - version = "91.4.1"; + version = "91.5.0"; application = "comm/mail"; binaryName = pname; src = fetchurl { url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz"; - sha512 = "aa442ef886277f5091ebadff907a29451a0ee6542f24adb5c1fb4223193d719c2cb01474d3ccd96067695b19ce3cbf042893b0beaaeb7c65e0660ab5072bf82e"; + sha512 = "e1cafbd99e67e8fef346e936890a22aeadded4aa8be604607535ae933251bc1b2a3b56c2b62045b3d37ecb09999adb746157df188d1a32dfe75685f3af959b7d"; }; patches = [ # The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`. diff --git a/pkgs/applications/office/paperless-ng/default.nix b/pkgs/applications/office/paperless-ng/default.nix index 64ef525cfc84..2fcb2388b8c8 100644 --- a/pkgs/applications/office/paperless-ng/default.nix +++ b/pkgs/applications/office/paperless-ng/default.nix @@ -83,7 +83,7 @@ py.pkgs.pythonPackages.buildPythonApplication rec { daphne dateparser django-cors-headers - django_extensions + django-extensions django-filter django-picklefield django-q diff --git a/pkgs/applications/office/super-productivity/default.nix b/pkgs/applications/office/super-productivity/default.nix index 73a6b7b457ec..6b06dcf43702 100644 --- a/pkgs/applications/office/super-productivity/default.nix +++ b/pkgs/applications/office/super-productivity/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "super-productivity"; - version = "7.9.1"; + version = "7.9.2"; src = fetchurl { url = "https://github.com/johannesjo/super-productivity/releases/download/v${version}/superProductivity-${version}.AppImage"; - sha256 = "sha256:0lxnl5ai23dwfsyrkpi9l1a0gl0qn6vp7hzmca77nyx974d6j8m4"; + sha256 = "sha256-qeHFFG1Y8qZwFvo3CFIs1+BKQo287HJfOnKKguUOlu8="; name = "${pname}-${version}.AppImage"; }; diff --git a/pkgs/applications/office/trilium/default.nix b/pkgs/applications/office/trilium/default.nix index 8782b2288e68..fc4605911ddb 100644 --- a/pkgs/applications/office/trilium/default.nix +++ b/pkgs/applications/office/trilium/default.nix @@ -19,16 +19,16 @@ let maintainers = with maintainers; [ fliegendewurst ]; }; - version = "0.48.8"; + version = "0.49.4"; desktopSource = { url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz"; - sha256 = "1dz4wdx3d1pmm3yrvipqa929f6gqilhfc3sp6xcgbn9faypp6qra"; + sha256 = "078w7jjkn8af3i0y0s236ky54h08b2wgzcaiakqiqx4gxdpf6jrq"; }; serverSource = { url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-server-${version}.tar.xz"; - sha256 = "0jp1hj51x5wz27f7739nwwli119pzpskg269cxk4i04xxbhr145j"; + sha256 = "0hygdxb97373z5cn3s4wr66wc41w7a55kxjyb8alck1fl9l6agn1"; }; in { diff --git a/pkgs/applications/radio/dablin/default.nix b/pkgs/applications/radio/dablin/default.nix index a9f5fc991fff..46b0714bd445 100644 --- a/pkgs/applications/radio/dablin/default.nix +++ b/pkgs/applications/radio/dablin/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { pname = "dablin"; - version = "1.13.0"; + version = "1.14.0"; src = fetchFromGitHub { owner = "Opendigitalradio"; repo = "dablin"; rev = version; - sha256 = "0143jnhwwh4din6mlrkbm8m2wm8vnrlk0yk9r5qcvj70r2314bgq"; + sha256 = "02mhxaqpj0094sbb3c28r5xznw9z8ayvlkczknizlk75ag895zz2"; }; nativeBuildInputs = [ cmake pkg-config ]; diff --git a/pkgs/applications/radio/wsjtx/default.nix b/pkgs/applications/radio/wsjtx/default.nix index 165ddfe8b372..c3e591aec07b 100644 --- a/pkgs/applications/radio/wsjtx/default.nix +++ b/pkgs/applications/radio/wsjtx/default.nix @@ -4,12 +4,12 @@ stdenv.mkDerivation rec { pname = "wsjtx"; - version = "2.5.3"; + version = "2.5.4"; # This is a "superbuild" tarball containing both wsjtx and a hamlib fork src = fetchurl { url = "http://physics.princeton.edu/pulsar/k1jt/wsjtx-${version}.tgz"; - sha256 = "sha256-Dd99JBPn1TgPF8Yvqk+AZX8ZUuQjYS0Tx3y5A3VZsHw="; + sha256 = "sha256-Gz84Rq0sCl9BAXi2YSdl1Z7mPbJJ62z8MyrOF/CjCJg="; }; # Hamlib builds with autotools, wsjtx builds with cmake diff --git a/pkgs/applications/terminal-emulators/syncterm/default.nix b/pkgs/applications/terminal-emulators/syncterm/default.nix new file mode 100644 index 000000000000..d1f0ab5e8cf1 --- /dev/null +++ b/pkgs/applications/terminal-emulators/syncterm/default.nix @@ -0,0 +1,39 @@ +{ lib, stdenv, fetchurl, pkg-config, perl, unzip, autoPatchelfHook, ncurses, SDL2, alsa-lib }: + +stdenv.mkDerivation rec { + pname = "syncterm"; + version = "1.1"; + + src = fetchurl { + url = "mirror://sourceforge/${pname}/${pname}-${version}-src.tgz"; + sha256 = "19m76bisipp1h3bc8mbq83b851rx3lbysxb0azpbr5nbqr2f8xyi"; + }; + sourceRoot = "${pname}-${version}/src/syncterm"; + + CFLAGS = [ + "-DHAS_INTTYPES_H" + "-DXPDEV_DONT_DEFINE_INTTYPES" + + "-Wno-unused-result" + "-Wformat-overflow=0" + ] ++ (lib.optionals stdenv.isLinux [ + "-DUSE_ALSA_SOUND" # Don't use OSS for beeps. + ]); + makeFlags = [ + "PREFIX=$(out)" + "RELEASE=1" + "USE_SDL_AUDIO=1" + ]; + + nativeBuildInputs = [ autoPatchelfHook pkg-config SDL2 perl unzip ]; # SDL2 for `sdl2-config`. + buildInputs = [ ncurses SDL2 ] + ++ (lib.optional stdenv.isLinux alsa-lib); + runtimeDependencies = [ ncurses SDL2 ]; # Both of these are dlopen()'ed at runtime. + + meta = with lib; { + homepage = "https://syncterm.bbsdev.net/"; + description = "BBS terminal emulator"; + maintainers = with maintainers; [ embr ]; + license = licenses.gpl2Plus; + }; +} diff --git a/pkgs/applications/version-management/git-and-tools/git-hub/default.nix b/pkgs/applications/version-management/git-and-tools/git-hub/default.nix index 83397d1934e1..be1fd992a9da 100644 --- a/pkgs/applications/version-management/git-and-tools/git-hub/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git-hub/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "git-hub"; - version = "2.1.1"; + version = "2.1.2"; src = fetchFromGitHub { owner = "sociomantic-tsunami"; repo = "git-hub"; rev = "v${version}"; - sha256 = "sha256-k8sGgDhQn9e0lxM604Wz2sy4lrX5o82xAgWbqscOmQw="; + sha256 = "sha256-Iq6IrW2gAGqq56b2gXpEkg+I/5FcmsESWBJQiG1XWWA="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/version-management/git-and-tools/tig/default.nix b/pkgs/applications/version-management/git-and-tools/tig/default.nix index fd57eb22186f..e81bf81dd3cd 100644 --- a/pkgs/applications/version-management/git-and-tools/tig/default.nix +++ b/pkgs/applications/version-management/git-and-tools/tig/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { pname = "tig"; - version = "2.5.4"; + version = "2.5.5"; src = fetchFromGitHub { owner = "jonas"; repo = pname; rev = "${pname}-${version}"; - sha256 = "sha256-dZqqUydZ4q/mDEjtojpMGfzAmW3yCNDvT9oCEmhq1hg="; + sha256 = "1yx63jfbaa5h0d3lfqlczs9l7j2rnhp5jpa8qcjn4z1n415ay2x5"; }; nativeBuildInputs = [ makeWrapper autoreconfHook asciidoc xmlto docbook_xsl docbook_xml_dtd_45 findXMLCatalogs pkg-config ]; diff --git a/pkgs/applications/version-management/git-repo/default.nix b/pkgs/applications/version-management/git-repo/default.nix index bc496cbbaaee..03ca6111e341 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 { pname = "git-repo"; - version = "2.19"; + version = "2.20"; src = fetchFromGitHub { owner = "android"; repo = "tools_repo"; rev = "v${version}"; - sha256 = "sha256-aJnerKeZobgw3e4s7D7de7/nP6vwymLpeKnrLmPzDow="; + sha256 = "sha256-5yyiQMIoAtaNh9H1pjU1gXAbmU3/VdXGt7AL4wmJC28="; }; # Fix 'NameError: name 'ssl' is not defined' diff --git a/pkgs/applications/video/mpv/scripts/sponsorblock.nix b/pkgs/applications/video/mpv/scripts/sponsorblock.nix index 5d33bfd92a48..9a4060e59330 100644 --- a/pkgs/applications/video/mpv/scripts/sponsorblock.nix +++ b/pkgs/applications/video/mpv/scripts/sponsorblock.nix @@ -3,13 +3,13 @@ # Usage: `pkgs.mpv.override { scripts = [ pkgs.mpvScripts.sponsorblock ]; }` stdenvNoCC.mkDerivation { pname = "mpv_sponsorblock"; - version = "unstable-2020-07-05"; + version = "unstable-2021-12-23"; src = fetchFromGitHub { owner = "po5"; repo = "mpv_sponsorblock"; - rev = "f71e49e0531350339134502e095721fdc66eac20"; - sha256 = "1fr4cagzs26ygxyk8dxqvjw4n85fzv6is6cb1jhr2qnsjg6pa0p8"; + rev = "6743bd47d4cfce3ae3d5dd4f587f3193bd4fb9b2"; + sha256 = "06c37f33cdpz1w1jacjf1wnbh4f9b1xpipxzkg5ixf46cbwssmsj"; }; dontBuild = true; @@ -39,10 +39,13 @@ stdenvNoCC.mkDerivation { cp -r sponsorblock.lua sponsorblock_shared $out/share/mpv/scripts/ ''; - passthru.scriptName = "sponsorblock.lua"; + passthru = { + scriptName = "sponsorblock.lua"; + updateScript = ./update-sponsorblock.sh; + }; meta = with lib; { - description = "mpv script to skip sponsored segments of YouTube videos"; + description = "Script for mpv to skip sponsored segments of YouTube videos"; homepage = "https://github.com/po5/mpv_sponsorblock"; license = licenses.gpl3; platforms = platforms.all; diff --git a/pkgs/applications/video/mpv/scripts/update-sponsorblock.sh b/pkgs/applications/video/mpv/scripts/update-sponsorblock.sh new file mode 100755 index 000000000000..b4888365a6f3 --- /dev/null +++ b/pkgs/applications/video/mpv/scripts/update-sponsorblock.sh @@ -0,0 +1,49 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p common-updater-scripts git jq nix nix-prefetch-git +git_url='https://github.com/po5/mpv_sponsorblock.git' +git_branch='master' +git_dir='/var/tmp/mpv_sponsorblock.git' +nix_file="$(dirname "${BASH_SOURCE[0]}")/sponsorblock.nix" +pkg='mpvScripts.sponsorblock' + +set -euo pipefail + +info() { + if [ -t 2 ]; then + set -- '\033[32m%s\033[39m\n' "$@" + else + set -- '%s\n' "$@" + fi + printf "$@" >&2 +} + +old_rev=$(nix-instantiate --eval --strict --json -A "$pkg.src.rev" | jq -r) +old_version=$(nix-instantiate --eval --strict --json -A "$pkg.version" | jq -r) +today=$(LANG=C date -u +'%Y-%m-%d') + +info "fetching $git_url..." +if [ ! -d "$git_dir" ]; then + git init --initial-branch="$git_branch" "$git_dir" + git -C "$git_dir" remote add origin "$git_url" +fi +git -C "$git_dir" fetch origin "$git_branch" + +# use latest commit before today, we should not call the version *today* +# because there might still be commits coming +# use the day of the latest commit we picked as version +new_rev=$(git -C "$git_dir" log -n 1 --format='format:%H' --before="${today}T00:00:00Z" "origin/$git_branch") +new_version="unstable-$(git -C "$git_dir" log -n 1 --format='format:%cs' "$new_rev")" +info "latest commit before $today: $new_rev" + +if [ "$new_rev" = "$old_rev" ]; then + info "$pkg is up-to-date." + exit +fi + +new_sha256=$(nix-prefetch-git --rev "$new_rev" "$git_dir" | jq -r .sha256) +update-source-version "$pkg" \ + "$new_version" \ + "$new_sha256" \ + --rev="$new_rev" +git add "$nix_file" +git commit --verbose --message "$pkg: $old_version -> $new_version" diff --git a/pkgs/data/fonts/victor-mono/default.nix b/pkgs/data/fonts/victor-mono/default.nix index 68f437a8fc8d..45873e1b7f96 100644 --- a/pkgs/data/fonts/victor-mono/default.nix +++ b/pkgs/data/fonts/victor-mono/default.nix @@ -1,7 +1,7 @@ { lib, fetchzip }: let - version = "1.5.1"; + version = "1.5.2"; in fetchzip { name = "victor-mono-${version}"; @@ -21,7 +21,7 @@ fetchzip { unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype ''; - sha256 = "sha256-FHahUp/Ghjv6fwsjj1giVPlAIXRMSZCSLcVMiMHvV3A="; + sha256 = "sha256-cNDZh0P/enmoKL/6eHzkgl5ghtai2K9cTgWMVmm8GIA="; meta = with lib; { description = "Free programming font with cursive italics and ligatures"; diff --git a/pkgs/data/icons/qogir-icon-theme/default.nix b/pkgs/data/icons/qogir-icon-theme/default.nix index c0f65ab7eadc..24ad687834e3 100644 --- a/pkgs/data/icons/qogir-icon-theme/default.nix +++ b/pkgs/data/icons/qogir-icon-theme/default.nix @@ -1,14 +1,20 @@ -{ lib, stdenv, fetchFromGitHub, gtk3, hicolor-icon-theme, jdupes }: +{ lib +, stdenvNoCC +, fetchFromGitHub +, gtk3 +, hicolor-icon-theme +, jdupes +}: -stdenv.mkDerivation rec { +stdenvNoCC.mkDerivation rec { pname = "qogir-icon-theme"; - version = "2021-10-14"; + version = "2022-01-12"; src = fetchFromGitHub { owner = "vinceliuice"; repo = pname; rev = version; - sha256 = "0qbbg0hcdda7apk892b8nhbrsvji12nv97ss7lv412xwcmxsj9fp"; + sha256 = "1daayxsqh7di3bvfnl39h1arsj1fypd3ba30mas6dl1d0qy17z1p"; }; nativeBuildInputs = [ gtk3 jdupes ]; @@ -26,7 +32,7 @@ stdenv.mkDerivation rec { patchShebangs install.sh mkdir -p $out/share/icons name= ./install.sh -d $out/share/icons - jdupes -l -r $out/share/icons + jdupes -L -r $out/share/icons runHook postInstall ''; diff --git a/pkgs/desktops/gnome-2/default.nix b/pkgs/desktops/gnome-2/default.nix index 722168632062..5ef6026f2ff0 100644 --- a/pkgs/desktops/gnome-2/default.nix +++ b/pkgs/desktops/gnome-2/default.nix @@ -49,7 +49,7 @@ lib.makeScope pkgs.newScope (self: with self; { gtkhtml = callPackage ./platform/gtkhtml { enchant = pkgs.enchant1; }; - gtkhtml4 = callPackage ./platform/gtkhtml/4.x.nix { enchant = pkgs.enchant1; }; + gtkhtml4 = callPackage ./platform/gtkhtml/4.x.nix { enchant = pkgs.enchant2; }; gtkglext = callPackage ./platform/gtkglext { }; diff --git a/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix b/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix index d8e1ea7108ee..9447a381a3fb 100644 --- a/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix +++ b/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix @@ -1,16 +1,30 @@ -{ stdenv, fetchurl, pkg-config, gtk3, intltool +{ stdenv, fetchFromGitLab, pkg-config, gtk3, intltool, autoreconfHook, fetchpatch , GConf, enchant, isocodes, gnome-icon-theme, gsettings-desktop-schemas }: stdenv.mkDerivation rec { version = "4.10.0"; pname = "gtkhtml"; - src = fetchurl { - url = "mirror://gnome/sources/gtkhtml/4.10/${pname}-${version}.tar.xz"; - sha256 = "1hq6asgb5n9q3ryx2vngr4jyi8lg65lzpnlgrgcwayiczcj68fya"; + src = fetchFromGitLab { + domain = "gitlab.gnome.org"; + owner = "Archive"; + repo = "gtkhtml"; + rev = "master"; + sha256 = "sha256-jL8YADvhW0o6I/2Uo5FNARMAnSbvtmFp+zWH1yCVvQk="; }; - propagatedBuildInputs = [ gsettings-desktop-schemas gtk3 gnome-icon-theme GConf ]; nativeBuildInputs = [ pkg-config ]; - buildInputs = [ intltool enchant isocodes ]; + buildInputs = [ intltool enchant isocodes autoreconfHook ]; + + patchFlags = [ "-p0" ]; + + patches = [ + # Enables enchant2 support. + # Upstream is dead, no further releases are coming. + (fetchpatch { + name ="enchant-2.patch"; + url = "https://aur.archlinux.org/cgit/aur.git/plain/enchant-2.patch?h=gtkhtml4&id=0218303a63d64c04d6483a6fe9bb55063fcfaa43"; + sha256 = "sha256-jkA/GgIiJZmxkbcBGQ26OZ1nuI502BMPwbPhsZkbgbY="; + }) + ]; } diff --git a/pkgs/development/beam-modules/erlang-ls/default.nix b/pkgs/development/beam-modules/erlang-ls/default.nix index cec3336dcb4c..f8e6f423bdae 100644 --- a/pkgs/development/beam-modules/erlang-ls/default.nix +++ b/pkgs/development/beam-modules/erlang-ls/default.nix @@ -1,7 +1,7 @@ { fetchFromGitHub, fetchgit, fetchHex, rebar3Relx, buildRebar3, rebar3-proper , stdenv, writeScript, lib }: let - version = "0.20.0"; + version = "0.21.2"; owner = "erlang-ls"; repo = "erlang_ls"; deps = import ./rebar-deps.nix { @@ -19,7 +19,7 @@ rebar3Relx { inherit version; src = fetchFromGitHub { inherit owner repo; - sha256 = "sha256-XBCauvPalIPjVOYlMfWC+5mKku28b/qqKhp9NgSkoyA="; + sha256 = "sha256-CiA71mvmq3HrJvgrEDMwp3CQ4Dl05BpTO5HusAL5FAQ="; rev = version; }; releaseType = "escript"; diff --git a/pkgs/development/beam-modules/erlang-ls/rebar-deps.nix b/pkgs/development/beam-modules/erlang-ls/rebar-deps.nix index 75d033a13d58..2bc8b18a003b 100644 --- a/pkgs/development/beam-modules/erlang-ls/rebar-deps.nix +++ b/pkgs/development/beam-modules/erlang-ls/rebar-deps.nix @@ -114,16 +114,6 @@ let }; beamDeps = [ katana_code ]; }; - ranch = builder { - name = "ranch"; - version = "2.0.0"; - src = fetchHex { - pkg = "ranch"; - version = "2.0.0"; - sha256 = "sha256-wgpIQMfWYjwZgS06fIKLLxvRU+8PEky2nFT+UdikKuA="; - }; - beamDeps = [ ]; - }; jsx = builder { name = "jsx"; version = "3.0.0"; @@ -134,14 +124,24 @@ let }; beamDeps = [ ]; }; - erlfmt = builder { - name = "erlfmt"; + gradualizer = builder { + name = "gradualizer"; version = "git"; src = fetchFromGitHub { - owner = "whatsapp"; - repo = "erlfmt"; - rev = "2e93fc4a646111357642b0179a2a63151868d890"; - sha256 = "0n7kygycn05aqdp5dyj192mja89l4nxv2wg16qg2c0bmw9s7j2mr"; + owner = "josefs"; + repo = "gradualizer"; + rev = "e93db1c6725760def005c69d72f53b1a889b4c2f"; + sha256 = "0i1mh0dw2qknrjwpbxhgpwspqv12bznylv17sznid3kbb31pslay"; + }; + beamDeps = [ ]; + }; + erlfmt = builder { + name = "erlfmt"; + version = "1.0.0"; + src = fetchHex { + pkg = "erlfmt"; + version = "1.0.0"; + sha256 = "sha256-RL4L4DzmmQLcbc2PZeezre1qr10L5wlkGIyr1K0k8E4="; }; beamDeps = [ ]; }; diff --git a/pkgs/development/compilers/scala/2.x.nix b/pkgs/development/compilers/scala/2.x.nix index f39ab7ed68b6..bac99fd79ac8 100644 --- a/pkgs/development/compilers/scala/2.x.nix +++ b/pkgs/development/compilers/scala/2.x.nix @@ -26,8 +26,8 @@ let }; "2.13" = { - version = "2.13.7"; - sha256 = "FO8WAIeGvHs3E1soS+YkUHcB9lE5bRb9ikijWkvOqU4="; + version = "2.13.8"; + sha256 = "LLMdhGnGUYOfDpyDehqwZVDQMXJnUvVJBr4bneATFM8="; pname = "scala_2_13"; }; }; diff --git a/pkgs/development/embedded/stm32/stm32cubemx/default.nix b/pkgs/development/embedded/stm32/stm32cubemx/default.nix index bca4f87f9a55..9652a95ee27f 100644 --- a/pkgs/development/embedded/stm32/stm32cubemx/default.nix +++ b/pkgs/development/embedded/stm32/stm32cubemx/default.nix @@ -9,11 +9,11 @@ let in stdenv.mkDerivation rec { pname = "stm32cubemx"; - version = "6.2.1"; + version = "6.4.0"; src = fetchzip { url = "https://sw-center.st.com/packs/resource/library/stm32cube_mx_v${builtins.replaceStrings ["."] [""] version}-lin.zip"; - sha256 = "0m5h01iq0mgrr9svj4gmykfi9lsyjpqzrkvlizff26c8dqad59c5"; + sha256 = "sha256-5qotjAyaNFtYUjHlNKwywmBJGAzS/IM9bF+dmONE4bk="; stripRoot = false; }; diff --git a/pkgs/development/interpreters/erlang/R22.nix b/pkgs/development/interpreters/erlang/R22.nix index 9236ea428948..968583543406 100644 --- a/pkgs/development/interpreters/erlang/R22.nix +++ b/pkgs/development/interpreters/erlang/R22.nix @@ -3,6 +3,6 @@ # How to obtain `sha256`: # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz mkDerivation { - version = "22.3.4.20"; - sha256 = "sha256-EUErOCW16eUb/p5dLpFV7sQ3mXlCF/OgOvGAAyYEvLo="; + version = "22.3.4.24"; + sha256 = "0c9713xa8sjw7nr55hysgcnbvj7gzbrpzdl94y1nqn7vw4ni8is3"; } diff --git a/pkgs/development/interpreters/erlang/R23.nix b/pkgs/development/interpreters/erlang/R23.nix index 3d0a2b160065..a0d831d631f4 100644 --- a/pkgs/development/interpreters/erlang/R23.nix +++ b/pkgs/development/interpreters/erlang/R23.nix @@ -3,6 +3,6 @@ # How to obtain `sha256`: # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz mkDerivation { - version = "23.3.4.5"; - sha256 = "2u/w8IPKHEZ+rZ3T7Wn9+Ggxe6JY8cHz8q/N0RjbrNU="; + version = "23.3.4.10"; + sha256 = "0sfz7n748hvhmcygnvb6h31ag35p59aaa9h8gdpqsh6p4hnjh1mf"; } diff --git a/pkgs/development/interpreters/erlang/R24.nix b/pkgs/development/interpreters/erlang/R24.nix index b59626e70671..b86667ec1e76 100644 --- a/pkgs/development/interpreters/erlang/R24.nix +++ b/pkgs/development/interpreters/erlang/R24.nix @@ -3,6 +3,6 @@ # How to obtain `sha256`: # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz mkDerivation { - version = "24.1.7"; - sha256 = "sha256-R4rZVMn9AGvOy31eA1dsz2CFMKOG/cXkbLaJtT7zBrU="; + version = "24.2"; + sha256 = "10s57v2i2qqyg3gddm85n3crzrkikl4zfwgzqmxjzdynsyb4xg68"; } diff --git a/pkgs/development/interpreters/spidermonkey/91.nix b/pkgs/development/interpreters/spidermonkey/91.nix index 57e62e319d11..61b340ac185f 100644 --- a/pkgs/development/interpreters/spidermonkey/91.nix +++ b/pkgs/development/interpreters/spidermonkey/91.nix @@ -20,11 +20,11 @@ stdenv.mkDerivation rec { pname = "spidermonkey"; - version = "91.4.0"; + version = "91.5.0"; src = fetchurl { url = "mirror://mozilla/firefox/releases/${version}esr/source/firefox-${version}esr.source.tar.xz"; - sha256 = "09xkzk27krzyj1qx8cjjn2zpnws1cncka75828kk7ychnjfq48p7"; + sha256 = "04y8nj1f065b3dn354f1ns3cm9xp4kljr5ippvmfdqr7cb4xjp7l"; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/development/libraries/audio/libkeyfinder/default.nix b/pkgs/development/libraries/audio/libkeyfinder/default.nix index 8265cd0ba7c1..cb34f24ced8d 100644 --- a/pkgs/development/libraries/audio/libkeyfinder/default.nix +++ b/pkgs/development/libraries/audio/libkeyfinder/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libkeyfinder"; - version = "2.2.5"; + version = "2.2.6"; src = fetchFromGitHub { owner = "mixxxdj"; repo = "libkeyfinder"; rev = "v${version}"; - sha256 = "sha256-4jbnsKMGJKUIRfRPymGGgqPgwPyLInc6rLvCXnOcQ5g="; + sha256 = "sha256-7w/Wc9ncLinbnM2q3yv5DBtFoJFAM2e9xAUTsqvE9mg="; }; # needed for finding libkeyfinder.so to link it into keyfinder-tests executable diff --git a/pkgs/development/libraries/gdk-pixbuf/xlib.nix b/pkgs/development/libraries/gdk-pixbuf/xlib.nix index bc4c14beb458..dd498bb9aeac 100644 --- a/pkgs/development/libraries/gdk-pixbuf/xlib.nix +++ b/pkgs/development/libraries/gdk-pixbuf/xlib.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { pname = "gdk-pixbuf-xlib"; - version = "2020-06-11-unstable"; + version = "2.40.2"; outputs = [ "out" "dev" "devdoc" ]; @@ -20,8 +20,8 @@ stdenv.mkDerivation rec { domain = "gitlab.gnome.org"; owner = "Archive"; repo = "gdk-pixbuf-xlib"; - rev = "3116b8ae55501cf48d16970aa2b50a5530e15223"; - sha256 = "15wisf2xld3cr7lprnic8fvwpcmww4rydwc1bn2zilyi52vzl2zd"; + rev = version; + hash = "sha256-b4EUaYzg2NlBMU90dGQivOvkv9KKSzES/ymPqzrelu8="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/igraph/default.nix b/pkgs/development/libraries/igraph/default.nix index 159943d8db4b..06aad781bc73 100644 --- a/pkgs/development/libraries/igraph/default.nix +++ b/pkgs/development/libraries/igraph/default.nix @@ -21,13 +21,13 @@ stdenv.mkDerivation rec { pname = "igraph"; - version = "0.9.5"; + version = "0.9.6"; src = fetchFromGitHub { owner = "igraph"; repo = pname; rev = version; - sha256 = "sha256-R5v1nbfYyIOzdw7LmkGQE4yVxpTVs6YF62jkfFrA1z8="; + sha256 = "sha256-nMM4ZQLIth9QHlLu+sXE4AXoDlq1UP20+YuBi+Op+go="; }; # Normally, igraph wants us to call bootstrap.sh, which will call diff --git a/pkgs/development/libraries/stfl/default.nix b/pkgs/development/libraries/stfl/default.nix index 48c5edd13bf3..1ed1a05004b6 100644 --- a/pkgs/development/libraries/stfl/default.nix +++ b/pkgs/development/libraries/stfl/default.nix @@ -11,13 +11,11 @@ stdenv.mkDerivation rec { buildInputs = [ ncurses libiconv ]; - buildPhase = '' + preBuild = '' sed -i s/gcc/cc/g Makefile sed -i s%ncursesw/ncurses.h%ncurses.h% stfl_internals.h - '' + (lib.optionalString stdenv.isDarwin '' + '' + lib.optionalString stdenv.isDarwin '' sed -i s/-soname/-install_name/ Makefile - '') + '' - make ''; installPhase = '' diff --git a/pkgs/development/python-modules/aioresponses/default.nix b/pkgs/development/python-modules/aioresponses/default.nix index 2a3a2e60be79..a23b1eca77ca 100644 --- a/pkgs/development/python-modules/aioresponses/default.nix +++ b/pkgs/development/python-modules/aioresponses/default.nix @@ -11,12 +11,14 @@ buildPythonPackage rec { pname = "aioresponses"; - version = "0.7.2"; + version = "0.7.3"; + format = "setuptools"; + disabled = pythonOlder "3.5"; src = fetchPypi { inherit pname version; - sha256 = "sha256-guSV0Ri3SJaqW01H4X7/teLMeD5RCuOVzq3l6Hyr6Jo="; + sha256 = "sha256-LGTtVxDujLTpWMVpGE2tEvTJzVk5E1yzj4jGqCYczrM="; }; nativeBuildInputs = [ @@ -39,7 +41,9 @@ buildPythonPackage rec { "test_pass_through_with_origin_params" ]; - pythonImportsCheck = [ "aioresponses" ]; + pythonImportsCheck = [ + "aioresponses" + ]; meta = { description = "A helper to mock/fake web requests in python aiohttp package"; diff --git a/pkgs/development/python-modules/amqp/default.nix b/pkgs/development/python-modules/amqp/default.nix index 6156472896ad..c23c1d012da4 100644 --- a/pkgs/development/python-modules/amqp/default.nix +++ b/pkgs/development/python-modules/amqp/default.nix @@ -1,24 +1,46 @@ -{ lib, buildPythonPackage, fetchPypi, pytestCheckHook, case, vine }: +{ lib +, buildPythonPackage +, case +, fetchPypi +, pytestCheckHook +, pythonOlder +, vine +}: buildPythonPackage rec { pname = "amqp"; - version = "5.0.6"; + version = "5.0.9"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "03e16e94f2b34c31f8bf1206d8ddd3ccaa4c315f7f6a1879b7b1210d229568c2"; + hash = "sha256-Hl9wdCTlRAeMoZbnKuahSIfOdOAr0Sa+VLfAPJcb7xg="; }; - propagatedBuildInputs = [ vine ]; + propagatedBuildInputs = [ + vine + ]; + + checkInputs = [ + case + pytestCheckHook + ]; - checkInputs = [ pytestCheckHook case ]; disabledTests = [ - "test_rmq.py" # requires network access + # Requires network access + "test_rmq.py" + ]; + + pythonImportsCheck = [ + "amqp" ]; meta = with lib; { homepage = "https://github.com/celery/py-amqp"; description = "Python client for the Advanced Message Queuing Procotol (AMQP). This is a fork of amqplib which is maintained by the Celery project"; - license = licenses.lgpl21; + license = licenses.bsd3; + maintainers = with maintainers; [ fab ]; }; } diff --git a/pkgs/development/python-modules/apptools/default.nix b/pkgs/development/python-modules/apptools/default.nix index 4ee3add12b13..1b67f4921e26 100644 --- a/pkgs/development/python-modules/apptools/default.nix +++ b/pkgs/development/python-modules/apptools/default.nix @@ -1,12 +1,24 @@ -{ lib, fetchPypi, buildPythonPackage -, fetchpatch, configobj, six, traitsui -, pytestCheckHook, tables, pandas -, pythonOlder, importlib-resources +{ lib +, buildPythonPackage +, configobj +, fetchpatch +, fetchPypi +, importlib-resources +, pandas +, pytestCheckHook +, pythonAtLeast +, pythonOlder +, tables +, traits +, traitsui }: buildPythonPackage rec { pname = "apptools"; version = "5.1.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; @@ -24,7 +36,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ configobj - six + traits traitsui ] ++ lib.optionals (pythonOlder "3.9") [ importlib-resources @@ -40,10 +52,22 @@ buildPythonPackage rec { export HOME=$TMP ''; + disabledTestPaths = lib.optionals (pythonAtLeast "3.10") [ + # https://github.com/enthought/apptools/issues/303 + "apptools/io/h5/tests/test_dict_node.py" + "apptools/io/h5/tests/test_file.py" + "apptools/io/h5/tests/test_table_node.py" + ]; + + + pythonImportsCheck = [ + "apptools" + ]; + meta = with lib; { - description = "Set of packages that Enthought has found useful in creating a number of applications."; + description = "Set of packages that Enthought has found useful in creating a number of applications"; homepage = "https://github.com/enthought/apptools"; - maintainers = with maintainers; [ knedlsepp ]; license = licenses.bsdOriginal; + maintainers = with maintainers; [ knedlsepp ]; }; } diff --git a/pkgs/development/python-modules/aspell-python/default.nix b/pkgs/development/python-modules/aspell-python/default.nix index 1d6c7b45d15b..7c5c113dbd80 100644 --- a/pkgs/development/python-modules/aspell-python/default.nix +++ b/pkgs/development/python-modules/aspell-python/default.nix @@ -1,29 +1,57 @@ -{ lib, buildPythonPackage, fetchPypi, isPy27, aspell, aspellDicts, python }: +{ lib +, aspell +, aspellDicts +, buildPythonPackage +, fetchPypi +, isPy27 +, pytestCheckHook +, pythonAtLeast +}: buildPythonPackage rec { pname = "aspell-python"; version = "1.15"; + format = "setuptools"; + disabled = isPy27; src = fetchPypi { - inherit version; pname = "aspell-python-py3"; + inherit version; extension = "tar.bz2"; - sha256 = "13dk3jrvqmfvf2w9b8afj37d8bh32kcx295lyn3z7r8qch792hi0"; + hash = "sha256-IEKRDmQY5fOH9bQk0dkUAy7UzpBOoZW4cNtVvLMcs40="; }; - buildInputs = [ aspell ]; + buildInputs = [ + aspell + ]; - checkPhase = '' + checkInputs = [ + pytestCheckHook + ]; + + preCheck = '' export ASPELL_CONF="dict-dir ${aspellDicts.en}/lib/aspell" export HOME=$(mktemp -d) - ${python.interpreter} test/unittests.py ''; - pythonImportsCheck = [ "aspell" ]; + pytestFlagsArray = [ + "test/unittests.py" + ]; + + disabledTests = lib.optionals (pythonAtLeast "3.10") [ + # https://github.com/WojciechMula/aspell-python/issues/22 + "test_add" + "test_get" + "test_saveall" + ]; + + pythonImportsCheck = [ + "aspell" + ]; meta = with lib; { - description = "Python wrapper for aspell (C extension and python version)"; + description = "Python wrapper for aspell (C extension and Python version)"; homepage = "https://github.com/WojciechMula/aspell-python"; license = licenses.bsd3; maintainers = with maintainers; [ SuperSandro2000 ]; diff --git a/pkgs/development/python-modules/bbox/default.nix b/pkgs/development/python-modules/bbox/default.nix new file mode 100644 index 000000000000..a07551197b84 --- /dev/null +++ b/pkgs/development/python-modules/bbox/default.nix @@ -0,0 +1,30 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +, pyquaternion +, numpy +}: + +buildPythonPackage rec { + pname = "bbox"; + version = "0.9.2"; + + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-ucR7mg9eubEefjC7ratEgrb9h++a26z8KV38n3N2kcw="; + }; + + propagatedBuildInputs = [ pyquaternion numpy ]; + + pythonImportsCheck = [ "bbox" ]; + + meta = with lib; { + description = "Python library for 2D/3D bounding boxes"; + homepage = "https://github.com/varunagrawal/bbox"; + license = licenses.mit; + maintainers = with maintainers; [ lucasew ]; + }; +} diff --git a/pkgs/development/python-modules/boltons/default.nix b/pkgs/development/python-modules/boltons/default.nix index 0986a5dc7c43..f884e164d639 100644 --- a/pkgs/development/python-modules/boltons/default.nix +++ b/pkgs/development/python-modules/boltons/default.nix @@ -3,40 +3,53 @@ , fetchFromGitHub , fetchpatch , pytestCheckHook +, pythonAtLeast +, pythonOlder }: buildPythonPackage rec { pname = "boltons"; version = "20.2.1"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; - # No tests in PyPi Tarball src = fetchFromGitHub { owner = "mahmoud"; repo = "boltons"; rev = version; - sha256 = "0vw0h0z81gfxgjfijqiza92ic0siv9xy65mklgj5d0dzr1k9waw8"; + hash = "sha256-iCueZsi/gVbko7MW43vaUQMWRVI/YhmdfN29gD6AgG8="; }; - patches = [ + checkInputs = [ + pytestCheckHook + ]; + + patches = lib.optionals (pythonAtLeast "3.10") [ + # pprint has no attribute _safe_repr, https://github.com/mahmoud/boltons/issues/294 (fetchpatch { - url = "https://github.com/mahmoud/boltons/commit/754afddf141ea26956c88c7e13fe5e7ca7942654.patch"; - sha256 = "14kcq8pl4pmgcnlnmj1sh1yrksgym0kn0kgz2648g192svqkbpz8"; + name = "fix-pprint-attribute.patch"; + url = "https://github.com/mahmoud/boltons/commit/270e974975984f662f998c8f6eb0ebebd964de82.patch"; + sha256 = "sha256-pZLfr6SRCw2aLwZeYaX7bzfJeZC4cFUILEmnVsKR6zc="; }) ]; - checkInputs = [ pytestCheckHook ]; disabledTests = [ - # This test is broken without this PR, which has not yet been merged + # This test is broken without this PR. Merged but not released # https://github.com/mahmoud/boltons/pull/283 - "test_frozendict_ior" + "test_frozendict" + ]; + + pythonImportsCheck = [ + "boltons" ]; meta = with lib; { homepage = "https://github.com/mahmoud/boltons"; - description = "220+ constructs, recipes, and snippets extending (and relying on nothing but) the Python standard library"; + description = "Constructs, recipes, and snippets extending the Python standard library"; longDescription = '' - Boltons is a set of over 220 BSD-licensed, pure-Python utilities - in the same spirit as — and yet conspicuously missing from — the + Boltons is a set of over 200 BSD-licensed, pure-Python utilities + in the same spirit as - and yet conspicuously missing from - the standard library, including: - Atomic file saving, bolted on with fileutils diff --git a/pkgs/development/python-modules/boxx/default.nix b/pkgs/development/python-modules/boxx/default.nix new file mode 100644 index 000000000000..a3f0db80fafe --- /dev/null +++ b/pkgs/development/python-modules/boxx/default.nix @@ -0,0 +1,57 @@ +{ lib +, buildPythonPackage +, fetchPypi +, python +, xvfb-run +, matplotlib +, scikitimage +, numpy +, pandas +, imageio +, snakeviz +, fn +, pyopengl +, seaborn +, pytorch +, torchvision +}: + +buildPythonPackage rec { + pname = "boxx"; + version = "0.9.9"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-Mc6R6ruUVhFs2D0CTJsAiM9aGOusS973hRS5r2kQsy4="; + }; + + propagatedBuildInputs = [ + matplotlib + scikitimage + numpy + pandas + imageio + snakeviz + fn + pyopengl + seaborn + ]; + + pythonImportsCheck = [ "boxx" ]; + checkInputs = [ + xvfb-run + pytorch + torchvision + ]; + + checkPhase = '' + xvfb-run ${python.interpreter} -m unittest + ''; + + meta = with lib; { + description = "Tool-box for efficient build and debug in Python. Especially for Scientific Computing and Computer Vision."; + homepage = "https://github.com/DIYer22/boxx"; + license = licenses.mit; + maintainers = with maintainers; [ lucasew ]; + }; +} diff --git a/pkgs/development/python-modules/bpycv/bpycv-test.py b/pkgs/development/python-modules/bpycv/bpycv-test.py new file mode 100644 index 000000000000..94e1bb122c77 --- /dev/null +++ b/pkgs/development/python-modules/bpycv/bpycv-test.py @@ -0,0 +1,76 @@ +# based on https://github.com/DIYer22/bpycv/blob/c576e01622d87eb3534f73bf1a5686bd2463de97/example/ycb_demo.py +import bpy +import bpycv + +import os +import glob +import random + +example_data_dir = os.environ['BPY_EXAMPLE_DATA'] + +models = sorted(glob.glob(os.path.join(example_data_dir, "model", "*", "*.obj"))) +cat_id_to_model_path = dict(enumerate(sorted(models), 1)) + +distractors = sorted(glob.glob(os.path.join(example_data_dir, "distractor", "*.obj"))) + +bpycv.clear_all() +bpy.context.scene.frame_set(1) +bpy.context.scene.render.engine = "CYCLES" +bpy.context.scene.cycles.samples = 32 +bpy.context.scene.render.resolution_y = 1024 +bpy.context.scene.render.resolution_x = 1024 + +# A transparency stage for holding rigid body +stage = bpycv.add_stage(transparency=True) + +bpycv.set_cam_pose(cam_radius=1, cam_deg=45) + +hdri_dir = os.path.join(example_data_dir, "background_and_light") +hdri_manager = bpycv.HdriManager( + hdri_dir=hdri_dir, download=False +) # if download is True, will auto download .hdr file from HDRI Haven +hdri_path = hdri_manager.sample() +bpycv.load_hdri_world(hdri_path, random_rotate_z=True) + +# load 5 objects +for index in range(5): + cat_id = random.choice(list(cat_id_to_model_path)) + model_path = cat_id_to_model_path[cat_id] + obj = bpycv.load_obj(model_path) + obj.location = ( + random.uniform(-0.2, 0.2), + random.uniform(-0.2, 0.2), + random.uniform(0.1, 0.3), + ) + obj.rotation_euler = [random.uniform(-3.1415, 3.1415) for _ in range(3)] + # set each instance a unique inst_id, which is used to generate instance annotation. + obj["inst_id"] = cat_id * 1000 + index + with bpycv.activate_obj(obj): + bpy.ops.rigidbody.object_add() + +# load 6 distractors +for index in range(6): + distractor_path = random.choice(distractors) + target_size = random.uniform(0.1, 0.3) + distractor = bpycv.load_distractor(distractor_path, target_size=target_size) + distractor.location = ( + random.uniform(-0.2, 0.2), + random.uniform(-0.2, 0.2), + random.uniform(0.1, 0.3), + ) + distractor.rotation_euler = [random.uniform(-3.1415, 3.1415) for _ in range(3)] + with bpycv.activate_obj(distractor): + bpy.ops.rigidbody.object_add() + +# run pyhsic engine for 20 frames +for i in range(20): + bpy.context.scene.frame_set(bpy.context.scene.frame_current + 1) + +# render image, instance annoatation and depth in one line code +result = bpycv.render_data() + +dataset_dir = "./dataset" +result.save(dataset_dir=dataset_dir, fname="0", save_blend=True) +print(f'Save to "{dataset_dir}"') +print(f'Open "{dataset_dir}/vis/" to see visualize result.') + diff --git a/pkgs/development/python-modules/bpycv/default.nix b/pkgs/development/python-modules/bpycv/default.nix new file mode 100644 index 000000000000..7a88a4078f0b --- /dev/null +++ b/pkgs/development/python-modules/bpycv/default.nix @@ -0,0 +1,62 @@ +{ lib +, buildPythonPackage +, fetchPypi +, fetchFromGitHub +, fetchurl +, writeText +, blender +, minexr +, beautifulsoup4 +, zcs +, requests +, opencv3 +, boxx +}: + +buildPythonPackage rec { + pname = "bpycv"; + version = "0.2.43"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-6LXhKuNkX3yKeZARLXmOVNAUQhJghtzKhnszJ1G/a8U="; + }; + + propagatedBuildInputs = [ + beautifulsoup4 + minexr + zcs + requests + opencv3 + boxx + ]; + + postPatch = '' + sed -i 's/opencv-python//g' requirements.txt + ''; + + # pythonImportsCheck = [ "bpycv" ]; # this import depends on bpy that is only available inside blender + checkInputs = [ blender ]; + checkPhase = let + bpycv_example_data = fetchFromGitHub { + owner = "DIYer22"; + repo = "bpycv_example_data"; + sha256 = "sha256-dGb6KvbXTGTu5f4AqhA+i4AwTqBoR5SdXk0vsMEcD3Q="; + rev = "6ce0e65c107d572011394da16ffdf851e988dbb4"; + }; + in '' + TEMPDIR=$(mktemp -d) + pushd $TEMPDIR + cp -r ${bpycv_example_data} example_data + chmod +w -R example_data + BPY_EXAMPLE_DATA=${bpycv_example_data} blender -b -P ${./bpycv-test.py} + popd + ''; + + meta = with lib; { + description = "Computer vision utils for Blender"; + homepage = "https://github.com/DIYer22/bpycv"; + license = licenses.mit; + maintainers = with maintainers; [ lucasew ]; + }; +} diff --git a/pkgs/development/python-modules/celery/default.nix b/pkgs/development/python-modules/celery/default.nix index cdd646fed147..eabb3521416e 100644 --- a/pkgs/development/python-modules/celery/default.nix +++ b/pkgs/development/python-modules/celery/default.nix @@ -7,6 +7,7 @@ , click-didyoumean , click-plugins , click-repl +, dnspython , fetchPypi , kombu , moto @@ -22,14 +23,14 @@ buildPythonPackage rec { pname = "celery"; - version = "5.2.1"; + version = "5.2.3"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "b41a590b49caf8e6498a57db628e580d5f8dc6febda0f42de5d783aed5b7f808"; + hash = "sha256-4s1BZnrZfU9qL0Zy0cam662hlMYZJTBYtfI3BKqtqoI="; }; propagatedBuildInputs = [ @@ -46,6 +47,7 @@ buildPythonPackage rec { checkInputs = [ boto3 case + dnspython moto pymongo pytest-celery @@ -54,6 +56,11 @@ buildPythonPackage rec { pytestCheckHook ]; + postPatch = '' + substituteInPlace requirements/default.txt \ + --replace "setuptools>=59.1.1,<59.7.0" "setuptools" + ''; + disabledTestPaths = [ # test_eventlet touches network "t/unit/concurrency/test_eventlet.py" @@ -75,6 +82,6 @@ buildPythonPackage rec { description = "Distributed task queue"; homepage = "https://github.com/celery/celery/"; license = licenses.bsd3; - maintainers = with maintainers; [ ]; + maintainers = with maintainers; [ fab ]; }; } diff --git a/pkgs/development/python-modules/cloudsplaining/default.nix b/pkgs/development/python-modules/cloudsplaining/default.nix index 23c911f8e4a6..13720f9d88bc 100644 --- a/pkgs/development/python-modules/cloudsplaining/default.nix +++ b/pkgs/development/python-modules/cloudsplaining/default.nix @@ -17,7 +17,8 @@ buildPythonPackage rec { pname = "cloudsplaining"; - version = "0.4.9"; + version = "0.4.10"; + format = "setuptools"; disabled = pythonOlder "3.6"; @@ -25,7 +26,7 @@ buildPythonPackage rec { owner = "salesforce"; repo = pname; rev = version; - sha256 = "sha256-87ZUYHN64gnbF2g9BjPFNbwMaGFxAy3Yb8UdT3BUqC0="; + hash = "sha256-zTsqrHu8eQsQ4ZFocvHdVsgCjWE6JVrlyaztFNir2fk="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/contextlib2/default.nix b/pkgs/development/python-modules/contextlib2/default.nix index 1387e786e7b7..6aea2570cb87 100644 --- a/pkgs/development/python-modules/contextlib2/default.nix +++ b/pkgs/development/python-modules/contextlib2/default.nix @@ -1,23 +1,36 @@ { lib , buildPythonPackage , fetchPypi -, unittest2 +, python +, pythonOlder }: buildPythonPackage rec { pname = "contextlib2"; version = "21.6.0"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869"; + hash = "sha256-qx4r/h0B2Wjht+jZAjvFHvNQm7ohe7cwzuOCfh7oKGk="; }; - checkInputs = [ unittest2 ]; + checkPhase = '' + runHook preCheck + ${python.interpreter} -m unittest discover + runHook postCheck + ''; - meta = { + pythonImportsCheck = [ + "contextlib2" + ]; + + meta = with lib; { description = "Backports and enhancements for the contextlib module"; homepage = "https://contextlib2.readthedocs.org/"; - license = lib.licenses.psfl; + license = licenses.psfl; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/python-modules/cyclonedx-python-lib/default.nix b/pkgs/development/python-modules/cyclonedx-python-lib/default.nix index 75f9c29607da..4c3d9cd4f195 100644 --- a/pkgs/development/python-modules/cyclonedx-python-lib/default.nix +++ b/pkgs/development/python-modules/cyclonedx-python-lib/default.nix @@ -2,6 +2,8 @@ , buildPythonPackage , fetchFromGitHub , importlib-metadata +, jsonschema +, lxml , packageurl-python , poetry-core , pytestCheckHook @@ -11,12 +13,11 @@ , toml , types-setuptools , types-toml -, tox }: buildPythonPackage rec { pname = "cyclonedx-python-lib"; - version = "0.12.3"; + version = "1.0.0"; format = "pyproject"; disabled = pythonOlder "3.6"; @@ -25,7 +26,7 @@ buildPythonPackage rec { owner = "CycloneDX"; repo = pname; rev = "v${version}"; - sha256 = "1404wcwjglq025n8ncsrl2h64g1sly83cs9sc6jpiw1g5ay4a1vi"; + hash = "sha256-BEug6F0uerkLoVJbJF19YIF96Xs2vJET2BUJFi9A5Qo="; }; nativeBuildInputs = [ @@ -43,16 +44,11 @@ buildPythonPackage rec { ]; checkInputs = [ + jsonschema + lxml pytestCheckHook - tox ]; - postPatch = '' - substituteInPlace pyproject.toml \ - --replace 'setuptools = "^50.3.2"' 'setuptools = "*"' \ - --replace 'importlib-metadata = "^4.8.1"' 'importlib-metadata = "*"' - ''; - pythonImportsCheck = [ "cyclonedx" ]; diff --git a/pkgs/development/python-modules/debugpy/default.nix b/pkgs/development/python-modules/debugpy/default.nix index bf2ed3628675..dc58d8f7b039 100644 --- a/pkgs/development/python-modules/debugpy/default.nix +++ b/pkgs/development/python-modules/debugpy/default.nix @@ -13,11 +13,13 @@ , pytestCheckHook , requests , isPy3k +, pythonAtLeast }: buildPythonPackage rec { pname = "debugpy"; version = "1.5.1"; + format = "setuptools"; src = fetchFromGitHub { owner = "Microsoft"; @@ -67,6 +69,7 @@ buildPythonPackage rec { )''; doCheck = isPy3k; + checkInputs = [ django flask @@ -79,9 +82,25 @@ buildPythonPackage rec { ]; # Override default arguments in pytest.ini - pytestFlagsArray = [ "--timeout=0" "-n=$NIX_BUILD_CORES" ]; + pytestFlagsArray = [ + "--timeout=0" + "-n=$NIX_BUILD_CORES" + ]; - pythonImportsCheck = [ "debugpy" ]; + disabledTests = lib.optionals (pythonAtLeast "3.10") [ + "test_flask_breakpoint_multiproc" + "test_subprocess[program-launch-None]" + "test_systemexit[0-zero-uncaught-raised-launch(integratedTerminal)-module]" + "test_systemexit[0-zero-uncaught--attach_pid-program]" + "test_success_exitcodes[-break_on_system_exit_zero-0-attach_listen(cli)-module]" + "test_success_exitcodes[--0-attach_connect(api)-program]" + "test_run[code-attach_connect(api)]" + "test_subprocess[program-launch-None]" + ]; + + pythonImportsCheck = [ + "debugpy" + ]; meta = with lib; { description = "An implementation of the Debug Adapter Protocol for Python"; diff --git a/pkgs/development/python-modules/deemix/default.nix b/pkgs/development/python-modules/deemix/default.nix index e9bbb8a63773..c12bdac5fd0b 100644 --- a/pkgs/development/python-modules/deemix/default.nix +++ b/pkgs/development/python-modules/deemix/default.nix @@ -12,12 +12,14 @@ buildPythonPackage rec { pname = "deemix"; - version = "3.6.5"; + version = "3.6.6"; + format = "setuptools"; + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "c56245b2a2142dafb0658d60919ccf34e04e5d87720d5909e0e030521349a65a"; + sha256 = "sha256-xEahzA1PIrGPfnnOcuXQLVQpSVOUFk6/0v9ViLgWCwk="; }; propagatedBuildInputs = [ @@ -31,18 +33,14 @@ buildPythonPackage rec { # Project has no tests doCheck = false; + pythonImportsCheck = [ - "spotipy" - "click" - "Cryptodome" - "mutagen" - "requests" "deezer" ]; meta = with lib; { - homepage = "https://git.freezer.life/RemixDev/deemix-py"; description = "Deezer downloader built from the ashes of Deezloader Remix"; + homepage = "https://git.freezerapp.xyz/RemixDev/deemix-py"; license = licenses.gpl3Plus; maintainers = with maintainers; [ natto1784 ]; }; diff --git a/pkgs/development/python-modules/django-extensions/default.nix b/pkgs/development/python-modules/django-extensions/default.nix index 541f0434ec00..c4b023886935 100644 --- a/pkgs/development/python-modules/django-extensions/default.nix +++ b/pkgs/development/python-modules/django-extensions/default.nix @@ -1,59 +1,54 @@ -{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder, django +{ lib +, buildPythonPackage +, fetchFromGitHub +, django , factory_boy -, glibcLocales , mock , pygments -, pytest -, pytest-cov , pytest-django -, python-dateutil +, pytestCheckHook , shortuuid -, six -, tox -, typing ? null , vobject , werkzeug }: buildPythonPackage rec { pname = "django-extensions"; - version = "3.1.3"; + version = "3.1.5"; src = fetchFromGitHub { owner = pname; repo = pname; rev = version; - sha256 = "03mhikhh49z8bxajbjf1j790b9c9vl4zf4f86iwz7g0zrd7jqlvm"; + sha256 = "sha256-NAMa78KhAuoJfp0Cb0Codz84sRfRQ1JhSLNYRI4GBPM="; }; - LC_ALL = "en_US.UTF-8"; + postPatch = '' + substituteInPlace setup.cfg \ + --replace "--cov=django_extensions --cov-report html --cov-report term" "" + ''; + + propagatedBuildInputs = [ + django + ]; + __darwinAllowLocalNetworking = true; - propagatedBuildInputs = [ six ] - ++ lib.optional (pythonOlder "3.5") typing; - checkInputs = [ - django factory_boy - glibcLocales mock pygments # not explicitly declared in setup.py, but some tests require it - pytest - pytest-cov pytest-django - python-dateutil + pytestCheckHook shortuuid - tox vobject werkzeug ]; - # remove tests that need network access - checkPhase = '' - rm tests/management/commands/test_pipchecker.py - DJANGO_SETTINGS_MODULE=tests.testapp.settings \ - pytest django_extensions tests - ''; + disabledTestPaths = [ + # requires network access + "tests/management/commands/test_pipchecker.py" + ]; meta = with lib; { description = "A collection of custom extensions for the Django Framework"; diff --git a/pkgs/development/python-modules/envisage/default.nix b/pkgs/development/python-modules/envisage/default.nix index b8513fd1d9ae..f40ab66baabd 100644 --- a/pkgs/development/python-modules/envisage/default.nix +++ b/pkgs/development/python-modules/envisage/default.nix @@ -1,19 +1,21 @@ { lib -, fetchPypi -, isPy27 -, buildPythonPackage -, traits , apptools -, pytestCheckHook +, buildPythonPackage +, fetchPypi , ipython +, pytestCheckHook +, pythonAtLeast +, pythonOlder , setuptools +, traits }: buildPythonPackage rec { pname = "envisage"; version = "6.0.1"; + format = "setuptools"; - disabled = isPy27; + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; @@ -22,7 +24,11 @@ buildPythonPackage rec { # for the optional dependency ipykernel, only versions < 6 are # supported, so it's not included in the tests, and not propagated - propagatedBuildInputs = [ traits apptools setuptools ]; + propagatedBuildInputs = [ + traits + apptools + setuptools + ]; preCheck = '' export HOME=$PWD/HOME @@ -33,10 +39,20 @@ buildPythonPackage rec { pytestCheckHook ]; + disabledTestPaths = lib.optionals (pythonAtLeast "3.10") [ + # https://github.com/enthought/envisage/issues/455 + "envisage/tests/test_egg_basket_plugin_manager.py" + "envisage/tests/test_egg_plugin_manager.py" + ]; + + pythonImportsCheck = [ + "envisage" + ]; + meta = with lib; { - description = "Framework for building applications whose functionalities can be extended by adding 'plug-ins'"; + description = "Framework for building applications whose functionalities can be extended by adding plug-ins"; homepage = "https://github.com/enthought/envisage"; - maintainers = with lib.maintainers; [ knedlsepp ]; license = licenses.bsdOriginal; + maintainers = with lib.maintainers; [ knedlsepp ]; }; } diff --git a/pkgs/development/python-modules/eventlet/default.nix b/pkgs/development/python-modules/eventlet/default.nix index 038b66a8efed..7c8f520647ee 100644 --- a/pkgs/development/python-modules/eventlet/default.nix +++ b/pkgs/development/python-modules/eventlet/default.nix @@ -1,7 +1,7 @@ { lib , stdenv , buildPythonPackage -, fetchPypi +, fetchFromGitHub , pythonOlder , dnspython , greenlet @@ -10,22 +10,35 @@ , nose , pyopenssl , iana-etc +, pytestCheckHook , libredirect }: buildPythonPackage rec { pname = "eventlet"; version = "0.33.0"; + format = "setuptools"; - src = fetchPypi { - inherit pname version; - sha256 = "80144f489c1bb273a51b6f96ff9785a382d2866b9bab1f5bd748385019f4141f"; + src = fetchFromGitHub { + owner = "eventlet"; + repo = pname; + rev = "v${version}"; + hash = "sha256-kE/eYBbaTt1mPGoUIMhonvFBlQOdAfPU5GvCvPaRHvs="; }; - propagatedBuildInputs = [ dnspython greenlet pyopenssl six ] - ++ lib.optional (pythonOlder "3.5") monotonic; + propagatedBuildInputs = [ + dnspython + greenlet + pyopenssl + six + ] ++ lib.optional (pythonOlder "3.5") [ + monotonic + ]; - checkInputs = [ nose ]; + checkInputs = [ + pytestCheckHook + nose + ]; doCheck = !stdenv.isDarwin; @@ -37,23 +50,48 @@ buildPythonPackage rec { export EVENTLET_IMPORT_VERSION_ONLY=0 ''; - checkPhase = '' - runHook preCheck + disabledTests = [ + # Tests requires network access + "test_017_ssl_zeroreturnerror" + "test_getaddrinfo" + "test_hosts_no_network" + "test_leakage_from_tracebacks" + "test_patcher_existing_locks_locked" + ]; - # test_fork-after_monkey_patch fails on aarch64 on hydra only - # AssertionError: Expected single line "pass" in stdout - nosetests --exclude test_getaddrinfo --exclude test_hosts_no_network --exclude test_fork_after_monkey_patch - - runHook postCheck - ''; + disabledTestPaths = [ + # Tests are out-dated + "tests/stdlib/test_asynchat.py" + "tests/stdlib/test_asyncore.py" + "tests/stdlib/test_ftplib.py" + "tests/stdlib/test_httplib.py" + "tests/stdlib/test_httpservers.py" + "tests/stdlib/test_os.py" + "tests/stdlib/test_queue.py" + "tests/stdlib/test_select.py" + "tests/stdlib/test_SimpleHTTPServer.py" + "tests/stdlib/test_socket_ssl.py" + "tests/stdlib/test_socket.py" + "tests/stdlib/test_socketserver.py" + "tests/stdlib/test_ssl.py" + "tests/stdlib/test_subprocess.py" + "tests/stdlib/test_thread__boundedsem.py" + "tests/stdlib/test_thread.py" + "tests/stdlib/test_threading_local.py" + "tests/stdlib/test_threading.py" + "tests/stdlib/test_timeout.py" + "tests/stdlib/test_urllib.py" + "tests/stdlib/test_urllib2_localnet.py" + "tests/stdlib/test_urllib2.py" + ]; # unfortunately, it needs /etc/protocol to be present to not fail # pythonImportsCheck = [ "eventlet" ]; meta = with lib; { - homepage = "https://github.com/eventlet/eventlet/"; description = "A concurrent networking library for Python"; - maintainers = with maintainers; [ SuperSandro2000 ]; + homepage = "https://github.com/eventlet/eventlet/"; license = licenses.mit; + maintainers = with maintainers; [ SuperSandro2000 ]; }; } diff --git a/pkgs/development/python-modules/flux-led/default.nix b/pkgs/development/python-modules/flux-led/default.nix index 6fce800fdcc9..b68dd6fd4d76 100644 --- a/pkgs/development/python-modules/flux-led/default.nix +++ b/pkgs/development/python-modules/flux-led/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "flux-led"; - version = "0.28.0"; + version = "0.28.1"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "Danielhiversen"; repo = "flux_led"; rev = version; - sha256 = "sha256-6IJxOQIRUfmf+tE5CxIlu7EZBp6j8BeVO2mKKW0VWBY="; + sha256 = "sha256-4Er9n3dx2j4/dAmNiQVGh7vwbjtKk8+KOFClyDrLOsk="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/glom/default.nix b/pkgs/development/python-modules/glom/default.nix index d30a0c7eb1cb..ccef9ece3781 100644 --- a/pkgs/development/python-modules/glom/default.nix +++ b/pkgs/development/python-modules/glom/default.nix @@ -4,24 +4,47 @@ , boltons , attrs , face -, pytest +, pytestCheckHook , pyyaml +, pythonOlder }: buildPythonPackage rec { pname = "glom"; version = "20.11.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "54051072bccc9cdb3ebbd8af0559195137a61d308f04bff19678e4b61350eb12"; + hash = "sha256-VAUQcrzMnNs+u9ivBVkZUTemHTCPBL/xlnjkthNQ6xI="; }; - propagatedBuildInputs = [ boltons attrs face ]; + propagatedBuildInputs = [ + boltons + attrs + face + ]; - checkInputs = [ pytest pyyaml ]; - # test_cli.py checks the output of running "glom" - checkPhase = "PATH=$out/bin:$PATH pytest glom/test"; + checkInputs = [ + pytestCheckHook + pyyaml + ]; + + preCheck = '' + # test_cli.py checks the output of running "glom" + export PATH=$out/bin:$PATH + ''; + + disabledTests = [ + # Test is outdated (was made for PyYAML 3.x) + "test_main_yaml_target" + ]; + + pythonImportsCheck = [ + "glom" + ]; meta = with lib; { homepage = "https://github.com/mahmoud/glom"; diff --git a/pkgs/development/python-modules/igraph/default.nix b/pkgs/development/python-modules/igraph/default.nix index f5b21d58866a..f7409dc08236 100644 --- a/pkgs/development/python-modules/igraph/default.nix +++ b/pkgs/development/python-modules/igraph/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "igraph"; - version = "0.9.8"; + version = "0.9.9"; disabled = pythonOlder "3.6"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "igraph"; repo = "python-igraph"; rev = version; - sha256 = "sha256-RtvT5/LZ/xP68yBB7DDKJGeNCiX4HyPTCuk+Ijd2nFs="; + hash = "sha256-jHK8whCg+WitRSL5LmkqfdqiAdi9vZPicygzKThnW2U="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/kombu/default.nix b/pkgs/development/python-modules/kombu/default.nix index 319461b98344..bb39b29c0d51 100644 --- a/pkgs/development/python-modules/kombu/default.nix +++ b/pkgs/development/python-modules/kombu/default.nix @@ -1,27 +1,28 @@ { lib -, buildPythonPackage -, pythonOlder -, fetchPypi , amqp -, vine -, cached-property -, importlib-metadata , azure-servicebus +, buildPythonPackage +, cached-property , case +, fetchPypi +, importlib-metadata , Pyro4 , pytestCheckHook +, pythonOlder , pytz +, vine }: buildPythonPackage rec { pname = "kombu"; - version = "5.2.2"; + version = "5.2.3"; + format = "setuptools"; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "0f5d0763fb916808f617b886697b2be28e6bc35026f08e679697fc814b48a608"; + hash = "sha256-gakMHel+CNPbN9vxY+qvZnRF4QaMmL/YnwUaQOn2270="; }; propagatedBuildInputs = [ @@ -40,9 +41,14 @@ buildPythonPackage rec { pytz ]; + pythonImportsCheck = [ + "kombu" + ]; + meta = with lib; { description = "Messaging library for Python"; - homepage = "https://github.com/celery/kombu"; - license = licenses.bsd3; + homepage = "https://github.com/celery/kombu"; + license = licenses.bsd3; + maintainers = with maintainers; [ fab ]; }; } diff --git a/pkgs/development/python-modules/marshmallow-dataclass/default.nix b/pkgs/development/python-modules/marshmallow-dataclass/default.nix index 145005fd5e39..4b36ee9b74ef 100644 --- a/pkgs/development/python-modules/marshmallow-dataclass/default.nix +++ b/pkgs/development/python-modules/marshmallow-dataclass/default.nix @@ -4,6 +4,7 @@ , marshmallow , marshmallow-enum , pytestCheckHook +, pythonAtLeast , pythonOlder , typeguard , typing-inspect @@ -34,7 +35,20 @@ buildPythonPackage rec { typeguard ]; - pythonImportsCheck = [ "marshmallow_dataclass" ]; + pytestFlagsArray = [ + # DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. + "-W" + "ignore::DeprecationWarning" + ]; + + disabledTests = lib.optionals (pythonAtLeast "3.10") [ + # TypeError: UserId is not a dataclass and cannot be turned into one. + "test_newtype" + ]; + + pythonImportsCheck = [ + "marshmallow_dataclass" + ]; meta = with lib; { description = "Automatic generation of marshmallow schemas from dataclasses"; diff --git a/pkgs/development/python-modules/mayavi/default.nix b/pkgs/development/python-modules/mayavi/default.nix index 6f13e63b9341..7ffbbf888f34 100644 --- a/pkgs/development/python-modules/mayavi/default.nix +++ b/pkgs/development/python-modules/mayavi/default.nix @@ -1,16 +1,27 @@ -{ lib, buildPythonPackage, pythonOlder, fetchPypi, wrapQtAppsHook -, pyface, pygments, numpy, vtk, traitsui, envisage, apptools, pyqt5 +{ lib +, apptools +, buildPythonPackage +, envisage +, fetchPypi +, numpy +, pyface +, pygments +, pyqt5 +, pythonOlder +, traitsui +, vtk +, wrapQtAppsHook }: buildPythonPackage rec { pname = "mayavi"; version = "4.7.4"; + format = "setuptools"; disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - extension = "tar.gz"; sha256 = "ec50e7ec6afb0f9224ad1863d104a0d1ded6c8deb13e720652007aaca2303332"; }; @@ -24,14 +35,27 @@ buildPythonPackage rec { --replace "build.build.run(self)" "build.build.run(self); return" ''; - nativeBuildInputs = [ wrapQtAppsHook ]; - - propagatedBuildInputs = [ - pyface pygments numpy vtk traitsui envisage apptools pyqt5 + nativeBuildInputs = [ + wrapQtAppsHook ]; - doCheck = false; # Needs X server - pythonImportsCheck = [ "mayavi" ]; + propagatedBuildInputs = [ + apptools + envisage + numpy + pyface + pygments + pyqt5 + traitsui + vtk + ]; + + # Needs X server + doCheck = false; + + pythonImportsCheck = [ + "mayavi" + ]; preFixup = '' makeWrapperArgs+=("''${qtWrapperArgs[@]}") @@ -40,7 +64,7 @@ buildPythonPackage rec { meta = with lib; { description = "3D visualization of scientific data in Python"; homepage = "https://github.com/enthought/mayavi"; - maintainers = with maintainers; [ knedlsepp ]; license = licenses.bsdOriginal; + maintainers = with maintainers; [ knedlsepp ]; }; } diff --git a/pkgs/development/python-modules/minexr/default.nix b/pkgs/development/python-modules/minexr/default.nix new file mode 100644 index 000000000000..0417fe7594fd --- /dev/null +++ b/pkgs/development/python-modules/minexr/default.nix @@ -0,0 +1,31 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pytestCheckHook +, numpy +, pillow +}: + +buildPythonPackage rec { + pname = "minexr"; + version = "1.0.1"; + + src = fetchFromGitHub { + owner = "cheind"; + repo = "py-minexr"; + rev = "v${version}"; + sha256 = "sha256-Om67ttAHxu7C3IwPB+JHYi78E9qBi1E6layMVg4+S3M="; + }; + + propagatedBuildInputs = [ numpy ]; + + pythonImportsCheck = [ "minexr" ]; + checkInputs = [ pytestCheckHook pillow ]; + + meta = with lib; { + description = "Minimal, standalone OpenEXR reader for single-part, uncompressed scan line files."; + homepage = "https://github.com/cheind/py-minexr"; + license = licenses.mit; + maintainers = with maintainers; [ lucasew ]; + }; +} diff --git a/pkgs/development/python-modules/pijuice/default.nix b/pkgs/development/python-modules/pijuice/default.nix new file mode 100644 index 000000000000..f46ddfca1be2 --- /dev/null +++ b/pkgs/development/python-modules/pijuice/default.nix @@ -0,0 +1,61 @@ +{ lib +, fetchFromGitHub +, buildPythonPackage +, pythonOlder +, smbus-cffi +, urwid +}: + +buildPythonPackage rec { + pname = "pijuice"; + version = "1.7"; + disabled = pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "PiSupply"; + repo = "PiJuice"; + # rev hash retrieved from the latest modification on file Software/Source/VERSION, as this project + # does not use Github tags facility + rev = "3ba6719ab614a3dc7495d5d9c900dd4ea977c7e3"; + sha256 = "GoNN07YgVaktpeY5iYDbfpy5fxkU1x0V3Sb1hgGAQt4="; + }; + + patches = [ + # The pijuice_cli.cli file doesn't have a shebang as the first line of the + # script. Without it, the pythonWrapPrograms hook will not wrap the program. + # Add a python shebang here so that the the hook is triggered. + ./patch-shebang.diff + ]; + + PIJUICE_BUILD_BASE = 1; + + preBuild = '' + cd Software/Source + ''; + + propagatedBuildInputs = [ smbus-cffi urwid ]; + + # Remove the following files from the package: + # + # pijuice_cli - A precompiled ELF binary that is a setuid wrapper for calling + # pijuice_cli.py + # + # pijuiceboot - a precompiled ELF binary for flashing firmware. Not needed for + # the python library. + # + # pijuice_sys.py - A program that acts as a system daemon for monitoring the + # pijuice. + preFixup = '' + rm $out/bin/pijuice_cli + rm $out/bin/pijuice_sys.py + rm $out/bin/pijuiceboot + mv $out/bin/pijuice_cli.py $out/bin/pijuice_cli + ''; + + meta = with lib; { + description = "Library and resources for PiJuice HAT for Raspberry Pi"; + homepage = "https://github.com/PiSupply/PiJuice"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ hexagonal-sun ]; + }; +} diff --git a/pkgs/development/python-modules/pijuice/patch-shebang.diff b/pkgs/development/python-modules/pijuice/patch-shebang.diff new file mode 100644 index 000000000000..eb899c9a5bde --- /dev/null +++ b/pkgs/development/python-modules/pijuice/patch-shebang.diff @@ -0,0 +1,9 @@ +diff --git a/Software/Source/src/pijuice_cli.py b/Software/Source/src/pijuice_cli.py +index c366fee..37af383 100644 +--- a/Software/Source/src/pijuice_cli.py ++++ b/Software/Source/src/pijuice_cli.py +@@ -1,3 +1,4 @@ ++#!/usr/bin/python3 + # This python script to be executed as user pijuice by the setuid program pijuice_cli + # Python 3 only + # diff --git a/pkgs/development/python-modules/pontos/default.nix b/pkgs/development/python-modules/pontos/default.nix index df98da582f8e..dda98f7a8b78 100644 --- a/pkgs/development/python-modules/pontos/default.nix +++ b/pkgs/development/python-modules/pontos/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "pontos"; - version = "22.1.0"; + version = "22.1.1"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -21,7 +21,7 @@ buildPythonPackage rec { owner = "greenbone"; repo = pname; rev = "v${version}"; - sha256 = "sha256-/C7BiKWdMcUuKXxPTdttT79YjBDmwj9CG5W38YZHw2c="; + sha256 = "sha256-p7E86McHeijsXpaByD5qLHYQLnSImLwHn15INyxWiZc="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/pynetdicom/default.nix b/pkgs/development/python-modules/pynetdicom/default.nix index 3afa8fcf8651..fa2b369aa2ba 100644 --- a/pkgs/development/python-modules/pynetdicom/default.nix +++ b/pkgs/development/python-modules/pynetdicom/default.nix @@ -48,11 +48,12 @@ buildPythonPackage rec { "TestMoveSCPCLI" "TestQRGetServiceClass" "TestQRMoveServiceClass" + "TestState" + "TestStorageServiceClass" "TestStoreSCP" "TestStoreSCPCLI" "TestStoreSCU" "TestStoreSCUCLI" - "TestState" ]; pythonImportsCheck = [ diff --git a/pkgs/development/python-modules/pyquaternion/default.nix b/pkgs/development/python-modules/pyquaternion/default.nix new file mode 100644 index 000000000000..48c8d991175f --- /dev/null +++ b/pkgs/development/python-modules/pyquaternion/default.nix @@ -0,0 +1,34 @@ +{ lib +, buildPythonPackage +, fetchPypi +, numpy +, nose +}: + +buildPythonPackage rec { + pname = "pyquaternion"; + version = "0.9.9"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-sfYa8hnLL+lmtft5oZISTy5jo/end6w8rfKVexqBvqg="; + }; + + # The VERSION.txt file is required for setup.py + # See: https://github.com/KieranWynn/pyquaternion/blob/master/setup.py#L14-L15 + postPatch = '' + echo "${version}" > VERSION.txt + ''; + + propagatedBuildInputs = [ numpy ]; + + checkInputs = [ nose ]; + pythonImportsCheck = [ "pyquaternion" ]; + + meta = with lib; { + description = "Library for representing and using quaternions."; + homepage = "http://kieranwynn.github.io/pyquaternion/"; + license = licenses.mit; + maintainers = with maintainers; [ lucasew ]; + }; +} diff --git a/pkgs/development/python-modules/python-http-client/default.nix b/pkgs/development/python-modules/python-http-client/default.nix index 02faf4db4d63..3a8ad2188fc1 100644 --- a/pkgs/development/python-modules/python-http-client/default.nix +++ b/pkgs/development/python-modules/python-http-client/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "python_http_client"; - version = "3.3.4"; + version = "3.3.5"; format = "setuptools"; disabled = pythonOlder "3.8"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "sendgrid"; repo = "python-http-client"; rev = version; - sha256 = "sha256-wTXHq+tC+rfvmDZIWvcGhQZqm6DxOmx50BsX0c6asec="; + sha256 = "sha256-VSrh6t9p7Xb8HqAwcuDSUD2Pj3NcXeg7ygKLG2MHFxk="; }; checkInputs = [ @@ -25,12 +25,6 @@ buildPythonPackage rec { pytestCheckHook ]; - disabledTests = [ - # Test is failing as the test is dynamic - # https://github.com/sendgrid/python-http-client/issues/153 - "test__daterange" - ]; - pythonImportsCheck = [ "python_http_client" ]; diff --git a/pkgs/development/python-modules/restfly/default.nix b/pkgs/development/python-modules/restfly/default.nix index 8b47183dcfd3..83d50cf1346c 100644 --- a/pkgs/development/python-modules/restfly/default.nix +++ b/pkgs/development/python-modules/restfly/default.nix @@ -11,13 +11,13 @@ buildPythonPackage rec { pname = "restfly"; - version = "1.4.4"; + version = "1.4.5"; src = fetchFromGitHub { owner = "stevemcgrath"; repo = pname; rev = version; - sha256 = "sha256-T5NfG+Vuguh6xZ/Rdx3a1vMDgXPcl/OYhOkxb76yEXg="; + sha256 = "sha256-wWFf8LFZkwzbHX545tA5w2sB3ClL7eFuF+jGX0fSiSc="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/schema/default.nix b/pkgs/development/python-modules/schema/default.nix index 3ace46489db5..dabe046e4861 100644 --- a/pkgs/development/python-modules/schema/default.nix +++ b/pkgs/development/python-modules/schema/default.nix @@ -1,28 +1,41 @@ -{ lib, buildPythonPackage, fetchPypi, contextlib2, pytest, mock }: +{ lib +, buildPythonPackage +, contextlib2 +, fetchPypi +, mock +, pytestCheckHook +, pythonOlder +}: buildPythonPackage rec { - pname = "schema"; version = "0.7.5"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "f06717112c61895cabc4707752b88716e8420a8819d71404501e114f91043197"; + hash = "sha256-8GcXESxhiVyrxHB3UriHFuhCCogZ1xQEUB4RT5EEMZc="; }; - preConfigure = '' - substituteInPlace requirements.txt --replace '==' '>=' - ''; + propagatedBuildInputs = [ + contextlib2 + ]; - propagatedBuildInputs = [ contextlib2 ]; + checkInputs = [ + mock + pytestCheckHook + ]; - checkInputs = [ pytest mock ]; - checkPhase = "pytest ./test_schema.py"; + pythonImportsCheck = [ + "schema" + ]; meta = with lib; { description = "Library for validating Python data structures"; homepage = "https://github.com/keleshev/schema"; license = licenses.mit; - maintainers = [ maintainers.tobim ]; + maintainers = with maintainers; [ tobim ]; }; } diff --git a/pkgs/development/python-modules/sendgrid/default.nix b/pkgs/development/python-modules/sendgrid/default.nix index b71c25a283d0..2ba415adda0d 100644 --- a/pkgs/development/python-modules/sendgrid/default.nix +++ b/pkgs/development/python-modules/sendgrid/default.nix @@ -4,6 +4,7 @@ , flask , pytestCheckHook , python-http-client +, pythonOlder , pyyaml , starkbank-ecdsa , werkzeug @@ -11,14 +12,16 @@ buildPythonPackage rec { pname = "sendgrid"; - version = "6.9.3"; + version = "6.9.4"; format = "setuptools"; + disabled = pythonOlder "3.6"; + src = fetchFromGitHub { owner = pname; repo = "sendgrid-python"; rev = version; - sha256 = "sha256-/4Wk+1zAFwK+FxRhABQBha43/zapgPDfTFGrPJjXA7s="; + sha256 = "sha256-xNd0IPhaVw4X6URsg6hrDJhxmBRWam4bqgLN0uvMUxI="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/serverlessrepo/default.nix b/pkgs/development/python-modules/serverlessrepo/default.nix index 2a8267710a09..d3cc7e9c633b 100644 --- a/pkgs/development/python-modules/serverlessrepo/default.nix +++ b/pkgs/development/python-modules/serverlessrepo/default.nix @@ -1,16 +1,20 @@ { lib , buildPythonPackage , fetchPypi -, pytest +, pytestCheckHook , boto3 , six , pyyaml , mock +, pythonOlder }: buildPythonPackage rec { pname = "serverlessrepo"; version = "0.1.10"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; @@ -23,12 +27,25 @@ buildPythonPackage rec { pyyaml ]; - checkInputs = [ pytest mock ]; + checkInputs = [ + pytestCheckHook + mock + ]; - checkPhase = '' - pytest tests/unit + postPatch = '' + substituteInPlace setup.py \ + --replace "pyyaml~=5.1" "pyyaml" \ + --replace "boto3~=1.9, >=1.9.56" "boto3" ''; + pytestFlagsArray = [ + "tests/unit" + ]; + + pythonImportsCheck = [ + "serverlessrepo" + ]; + meta = with lib; { homepage = "https://github.com/awslabs/aws-serverlessrepo-python"; description = "Helpers for working with the AWS Serverless Application Repository"; @@ -36,7 +53,7 @@ buildPythonPackage rec { A Python library with convenience helpers for working with the AWS Serverless Application Repository. ''; - license = lib.licenses.asl20; + license = licenses.asl20; maintainers = with maintainers; [ dhkl ]; }; } diff --git a/pkgs/development/python-modules/time-machine/default.nix b/pkgs/development/python-modules/time-machine/default.nix index 240a8ac0c37e..8ac7f66565b7 100644 --- a/pkgs/development/python-modules/time-machine/default.nix +++ b/pkgs/development/python-modules/time-machine/default.nix @@ -10,16 +10,16 @@ buildPythonPackage rec { pname = "time-machine"; - version = "2.5.0"; + version = "2.6.0"; format = "setuptools"; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "adamchainz"; repo = pname; rev = version; - sha256 = "sha256-U/OgkwRgZMdEkMIQuN9bWXWeeMHiduy1C1xOBUl8NsQ="; + sha256 = "sha256-D3cbArF09b5+LkkdosNbYMfndnzCPWwNqzIww23pOtk="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/traits/default.nix b/pkgs/development/python-modules/traits/default.nix index 4e93f1369dd3..9e6b1a5056da 100644 --- a/pkgs/development/python-modules/traits/default.nix +++ b/pkgs/development/python-modules/traits/default.nix @@ -1,29 +1,30 @@ { lib , buildPythonPackage , fetchPypi -, isPy27 -, python +, pythonOlder , numpy +, pytestCheckHook }: buildPythonPackage rec { pname = "traits"; version = "6.3.2"; - disabled = isPy27; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; sha256 = "4520ef4a675181f38be4a5bab1b1d5472691597fe2cfe4faf91023e89407e2c6"; }; - propagatedBuildInputs = [ numpy ]; - - # Test suite is broken for 3.x on latest release - # https://github.com/enthought/traits/issues/187 - # https://github.com/enthought/traits/pull/188 - # Furthermore, some tests fail due to being in a chroot + # Circular dependency doCheck = false; + pythonImportsCheck = [ + "traits" + ]; + meta = with lib; { description = "Explicitly typed attributes for Python"; homepage = "https://pypi.python.org/pypi/traits"; diff --git a/pkgs/development/python-modules/vine/default.nix b/pkgs/development/python-modules/vine/default.nix index 8fc895cfa44c..3f272a84b89b 100644 --- a/pkgs/development/python-modules/vine/default.nix +++ b/pkgs/development/python-modules/vine/default.nix @@ -1,22 +1,36 @@ -{ lib, buildPythonPackage, fetchPypi -, case, pytest, pythonOlder }: +{ lib +, buildPythonPackage +, case +, fetchPypi +, pytestCheckHook +, pythonOlder +}: buildPythonPackage rec { pname = "vine"; version = "5.0.0"; + format = "setuptools"; - disable = pythonOlder "2.7"; + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "7d3b1624a953da82ef63462013bbd271d3eb75751489f9807598e8f340bd637e"; + hash = "sha256-fTsWJKlT2oLvY0YgE7vScdPrdXUUifmAdZjo80C9Y34="; }; - buildInputs = [ case pytest ]; + checkInputs = [ + case + pytestCheckHook + ]; + + pythonImportsCheck = [ + "vine" + ]; meta = with lib; { description = "Python promises"; homepage = "https://github.com/celery/vine"; license = licenses.bsd3; + maintainers = with maintainers; [ fab ]; }; } diff --git a/pkgs/development/python-modules/yacs/default.nix b/pkgs/development/python-modules/yacs/default.nix new file mode 100644 index 000000000000..7abf151a08f7 --- /dev/null +++ b/pkgs/development/python-modules/yacs/default.nix @@ -0,0 +1,32 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, python +, pyyaml +}: + +buildPythonPackage rec { + pname = "yacs"; + version = "0.1.8"; + + src = fetchFromGitHub { + owner = "rbgirshick"; + repo = "yacs"; + rev = "v${version}"; + sha256 = "sha256-nO8FL4tTkfTthXYXxXORLieFwvn780DDxfrxC9EUUJ0="; + }; + + propagatedBuildInputs = [ pyyaml ]; + + pythonImportsCheck = [ "yacs" ]; + checkPhase = '' + ${python.interpreter} yacs/tests.py + ''; + + meta = with lib; { + description = "Yet Another Configuration System"; + homepage = "https://github.com/rbgirshick/yacs"; + license = licenses.apsl20; + maintainers = with maintainers; [ lucasew ]; + }; +} diff --git a/pkgs/development/python-modules/zcs/default.nix b/pkgs/development/python-modules/zcs/default.nix new file mode 100644 index 000000000000..9f22cd1dfc86 --- /dev/null +++ b/pkgs/development/python-modules/zcs/default.nix @@ -0,0 +1,33 @@ +{ lib +, buildPythonPackage +, fetchPypi +, python +, yacs +, boxx +}: + +buildPythonPackage rec { + pname = "zcs"; + version = "0.1.17"; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-ZoQgAaJy3kKHLljyKA0Oo/D1kefE8X9FlsGDSNt1nPw="; + }; + + propagatedBuildInputs = [ yacs ]; + + pythonImportsCheck = [ "zcs" ]; + + checkInputs = [ boxx ]; + checkPhase = '' + ${python.interpreter} test/test_zcs.py + ''; + + meta = with lib; { + description = "A flexible powerful configuration system which takes advantage of both argparse and yacs"; + homepage = "https://github.com/DIYer22/zcs"; + license = licenses.mit; + maintainers = with maintainers; [ lucasew ]; + }; +} diff --git a/pkgs/development/tools/analysis/checkov/default.nix b/pkgs/development/tools/analysis/checkov/default.nix index b785dd50900d..3ddde0c282f9 100644 --- a/pkgs/development/tools/analysis/checkov/default.nix +++ b/pkgs/development/tools/analysis/checkov/default.nix @@ -22,13 +22,13 @@ with py.pkgs; buildPythonApplication rec { pname = "checkov"; - version = "2.0.710"; + version = "2.0.712"; src = fetchFromGitHub { owner = "bridgecrewio"; repo = pname; rev = version; - hash = "sha256-8cvnCGqfS4ToDhjMsCpMf+d6V8gSmSJeGsoL4Q5hgFM="; + hash = "sha256-iUplSd4/OcJtfby2bn7b6GwCbXnBMqUSuLjkkh+7W9Y="; }; nativeBuildInputs = with py.pkgs; [ @@ -89,6 +89,8 @@ buildPythonApplication rec { "api_key" # Requires network access "TestSarifReport" + # Will probably be fixed in one of the next releases + "test_valid_cyclonedx_bom" ]; disabledTestPaths = [ diff --git a/pkgs/development/tools/aws-sam-cli/default.nix b/pkgs/development/tools/aws-sam-cli/default.nix index d38ac9ba88c9..444bc39bddd0 100644 --- a/pkgs/development/tools/aws-sam-cli/default.nix +++ b/pkgs/development/tools/aws-sam-cli/default.nix @@ -5,16 +5,13 @@ python3.pkgs.buildPythonApplication rec { pname = "aws-sam-cli"; - version = "1.36.0"; + version = "1.37.0"; src = python3.pkgs.fetchPypi { inherit pname version; - sha256 = "sha256-GJbBhe1l25ZHGWVu1o2oJvd/BNv8dv7aIYor/ebFl9U="; + hash = "sha256-XE3g2mKwAiaJvi0ShVScnCKrmz7ujaQgOeFXuYwtP4g="; }; - # Tests are not included in the PyPI package - doCheck = false; - propagatedBuildInputs = with python3.pkgs; [ aws-lambda-builders aws-sam-translator @@ -42,18 +39,22 @@ python3.pkgs.buildPythonApplication rec { # fix over-restrictive version bounds postPatch = '' substituteInPlace requirements/base.txt \ + --replace "aws_lambda_builders==" "aws-lambda-builders #" \ --replace "click~=7.1" "click~=8.0" \ - --replace "Flask~=1.1.2" "Flask~=2.0" \ --replace "dateparser~=1.0" "dateparser>=0.7" \ --replace "docker~=4.2.0" "docker>=4.2.0" \ - --replace "requests==" "requests #" \ - --replace "watchdog==" "watchdog #" \ - --replace "aws_lambda_builders==" "aws-lambda-builders #" \ - --replace "typing_extensions==" "typing-extensions #" \ + --replace "Flask~=1.1.2" "Flask~=2.0" \ + --replace "PyYAML~=5.3" "PyYAML" \ --replace "regex==" "regex #" \ - --replace "tzlocal==3.0" "tzlocal" + --replace "requests==" "requests #" \ + --replace "typing_extensions==" "typing-extensions #" \ + --replace "tzlocal==3.0" "tzlocal" \ + --replace "watchdog==" "watchdog #" ''; + # Tests are not included in the PyPI package + doCheck = false; + meta = with lib; { homepage = "https://github.com/awslabs/aws-sam-cli"; description = "CLI tool for local development and testing of Serverless applications"; diff --git a/pkgs/development/tools/build-managers/bloop/default.nix b/pkgs/development/tools/build-managers/bloop/default.nix index ebb4bb5f36c3..10d3dca84123 100644 --- a/pkgs/development/tools/build-managers/bloop/default.nix +++ b/pkgs/development/tools/build-managers/bloop/default.nix @@ -11,11 +11,11 @@ stdenv.mkDerivation rec { pname = "bloop"; - version = "1.4.11"; + version = "1.4.12"; bloop-coursier-channel = fetchurl { url = "https://github.com/scalacenter/bloop/releases/download/v${version}/bloop-coursier.json"; - sha256 = "CoF/1nggjaL17SWmWDcKicfgoyqpOSZUse8f+3TgD0E="; + sha256 = "bf3uHuGfmJukf0Qeudv8ZXz/9Uql/qsmvPS0XBb7oTQ="; }; bloop-bash = fetchurl { @@ -25,7 +25,7 @@ stdenv.mkDerivation rec { bloop-fish = fetchurl { url = "https://github.com/scalacenter/bloop/releases/download/v${version}/fish-completions"; - sha256 = "oBKlzHa1fbzhf60jfzuXvqaUb/xuoLYawigRQQOCSN0="; + sha256 = "eFESR6iPHRDViGv+Fk3sCvPgVAhk2L1gCG4LnfXO/v4="; }; bloop-zsh = fetchurl { @@ -60,8 +60,8 @@ stdenv.mkDerivation rec { outputHashMode = "recursive"; outputHashAlgo = "sha256"; - outputHash = if stdenv.isLinux && stdenv.isx86_64 then "0c02n779z4l7blzla5820bzfhblbp5nlizx9f8wns4miwnph357f" - else if stdenv.isDarwin && stdenv.isx86_64 then "1gy5k9ii86rxyv2v9if4n1clvmb1hi4ym32mp6miwgcjla10sv30" + outputHash = if stdenv.isLinux && stdenv.isx86_64 then "jqcecAM51qEDmTim2VBNm8IO8wQmwU19R57Zk4pxwSA=" + else if stdenv.isDarwin && stdenv.isx86_64 then "15m2rahf9kihw29hp6bwd9xqav6dcr17w5c2rsw0ijpchr2av72q" else throw "unsupported platform"; }; diff --git a/pkgs/development/tools/database/pgcli/default.nix b/pkgs/development/tools/database/pgcli/default.nix index 9fa8685734e8..d4e2f4d049e5 100644 --- a/pkgs/development/tools/database/pgcli/default.nix +++ b/pkgs/development/tools/database/pgcli/default.nix @@ -20,13 +20,13 @@ buildPythonApplication rec { pname = "pgcli"; - version = "3.2.0"; + version = "3.3.0"; disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "6cde97e71996bf910a40b579e5285483c10ea04962a08def01c12433d5f7c6b7"; + sha256 = "sha256-PQ7UDfaR1gJUzLTVZUpSwcY3P3fSs89qkK6m7pn+pDk="; }; propagatedBuildInputs = [ @@ -46,11 +46,7 @@ buildPythonApplication rec { checkInputs = [ pytestCheckHook mock ]; - disabledTests = [ - # tests that expect output from an older version of cli-helpers - "test_format_output" - "test_format_output_auto_expand" - ] ++ lib.optionals stdenv.isDarwin [ "test_application_name_db_uri" ]; + disabledTests = lib.optionals stdenv.isDarwin [ "test_application_name_db_uri" ]; meta = with lib; { description = "Command-line interface for PostgreSQL"; diff --git a/pkgs/development/tools/fnm/default.nix b/pkgs/development/tools/fnm/default.nix index efbdce1e592f..68725a16c090 100644 --- a/pkgs/development/tools/fnm/default.nix +++ b/pkgs/development/tools/fnm/default.nix @@ -10,20 +10,20 @@ rustPlatform.buildRustPackage rec { pname = "fnm"; - version = "1.28.2"; + version = "1.29.2"; src = fetchFromGitHub { owner = "Schniz"; repo = pname; rev = "v${version}"; - sha256 = "sha256-8/J7LfSk2a0Bq9v6CH63BIyUkT56EY+4UcEUdwkbZ4U="; + sha256 = "sha256-9U0AOFlD7SROTditW/lv12BtvfstCkU5QOMA/19KG+k="; }; nativeBuildInputs = [ installShellFiles ]; buildInputs = lib.optionals stdenv.isDarwin [ DiskArbitration Foundation Security ]; - cargoSha256 = "sha256-k3WZpN6DSbFFKLilFEN2lDMbJH5q1KgfE12OoGv+eGk="; + cargoSha256 = "sha256-l5H8O0OLnnv3kku/e6yK0Ps1VcIY5YoR5yFTk5w3h4k="; doCheck = false; diff --git a/pkgs/development/tools/metals/default.nix b/pkgs/development/tools/metals/default.nix index a5b8540db45a..c70438039055 100644 --- a/pkgs/development/tools/metals/default.nix +++ b/pkgs/development/tools/metals/default.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { pname = "metals"; - version = "0.10.9"; + version = "0.11.0"; deps = stdenv.mkDerivation { name = "${pname}-deps-${version}"; @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { ''; outputHashMode = "recursive"; outputHashAlgo = "sha256"; - outputHash = "sha256-Z0wngo7FP5sHpmPkTwitqTvNL0IEqqWwccy3mZpTIKU="; + outputHash = "sha256-sxm4xh4INXz1wtgVkuJ9sJG2k+9OC4ck6wFJjhD37XY=="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/tools/parsing/tree-sitter/default.nix b/pkgs/development/tools/parsing/tree-sitter/default.nix index 9495e331bd13..29fafb6493c8 100644 --- a/pkgs/development/tools/parsing/tree-sitter/default.nix +++ b/pkgs/development/tools/parsing/tree-sitter/default.nix @@ -29,9 +29,9 @@ let # 2) nix-build -A tree-sitter.updater.update-all-grammars # 3) OPTIONAL: Set GITHUB_TOKEN env variable to avoid api rate limit # 4) run the ./result script that is output by that (it updates ./grammars) - version = "0.20.1"; - sha256 = "sha256-JKbL05hFWI0jhAnRT9D0SWCoRPFqoMD4+LQQ1zyWc7g="; - cargoSha256 = "sha256-64O+3GrDqhRGth20B2/+jNDYSnwvT3SqYVqYNthiCB0="; + version = "0.20.2"; + sha256 = "sha256-XCTS58q1XCl7XH6SLTZDZv22nUPBK8d4oqk063ZObkg="; + cargoSha256 = "sha256-fKS9Q3BFGzyMnbNH6ItYnPj4dybeX7ucQfzYiOxVvhA="; src = fetchFromGitHub { owner = "tree-sitter"; diff --git a/pkgs/games/ace-of-penguins/default.nix b/pkgs/games/ace-of-penguins/default.nix new file mode 100644 index 000000000000..fb15aedc1df8 --- /dev/null +++ b/pkgs/games/ace-of-penguins/default.nix @@ -0,0 +1,78 @@ +{ lib +, stdenv +, fetchurl +, copyDesktopItems +, libX11 +, libXpm +, libpng +, makeDesktopItem +, zlib +}: + +stdenv.mkDerivation rec { + pname = "ace-of-penguins"; + version = "1.4"; + + src = fetchurl { + url = "http://www.delorie.com/store/ace/ace-${version}.tar.gz"; + hash = "sha256-H+47BTOSGkKHPAYj8z2HOgZ7HuxY8scMAUSRRueaTM4="; + }; + + patches = [ + # Fixes a bunch of miscompilations in modern environments + ./fixup-miscompilations.patch + ]; + + nativeBuildInputs = [ + copyDesktopItems + ]; + + buildInputs = [ + libX11 + libXpm + libpng + zlib + ]; + + desktopItems = let + generateItem = gameName: { + name = "${pname}-${gameName}"; + exec = "${placeholder "out"}/bin/${gameName}"; + comment = "Ace of Penguins ${gameName} Card Game"; + desktopName = gameName; + genericName = gameName; + }; + in + map (x: makeDesktopItem (generateItem x)) [ + "canfield" + "freecell" + "golf" + "mastermind" + "merlin" + "minesweeper" + "pegged" + "penguins" + "solitaire" + "spider" + "taipedit" + "taipei" + "thornq" + ]; + + meta = with lib; { + homepage = "http://www.delorie.com/store/ace/"; + description = "Solitaire games in X11"; + longDescription = '' + The Ace of Penguins is a set of Unix/X solitaire games based on the ones + available for Windows(tm) but with a number of enhancements that my wife + says make my versions better :-) + + The latest version includes clones of freecell, golf, mastermind, merlin, + minesweeper, pegged, solitaire, taipei (with editor!), and thornq (by + Martin Thornquist). + ''; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ AndersonTorres ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/games/ace-of-penguins/fixup-miscompilations.patch b/pkgs/games/ace-of-penguins/fixup-miscompilations.patch new file mode 100644 index 000000000000..599b4a137d79 --- /dev/null +++ b/pkgs/games/ace-of-penguins/fixup-miscompilations.patch @@ -0,0 +1,80 @@ +--- ace-1.4/lib/xwin.c ++++ ace-1.4/lib/xwin.c +@@ -89,10 +89,10 @@ + /* Motif window hints */ + typedef struct + { +- unsigned flags; +- unsigned functions; +- unsigned decorations; +- int inputMode; ++ unsigned long flags; ++ unsigned long functions; ++ unsigned long decorations; ++ long inputMode; + } PropMotifWmHints; + + typedef PropMotifWmHints PropMwmHints; +@@ -841,13 +841,13 @@ + png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING, 0, 0, 0); + info_ptr = png_create_info_struct (png_ptr); + +- if (setjmp (png_ptr->jmpbuf)) { ++ if (setjmp (png_jmpbuf (png_ptr))) { + fprintf(stderr, "Invalid PNG image!\n"); + return; + } + + file_bytes = src->file_data; +- png_set_read_fn (png_ptr, (voidp)&file_bytes, (png_rw_ptr)png_reader); ++ png_set_read_fn (png_ptr, (void *)&file_bytes, (png_rw_ptr)png_reader); + + png_read_info (png_ptr, info_ptr); + +--- ace-1.4/lib/make-imglib.c ++++ ace-1.4/lib/make-imglib.c +@@ -86,7 +86,7 @@ + png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING, 0, 0, 0); + info_ptr = png_create_info_struct (png_ptr); + +- if (setjmp (png_ptr->jmpbuf)) { ++ if (setjmp (png_jmpbuf (png_ptr))) { + fclose (f); + continue; + } + +--- ace-1.4/lib/Makefile.am ++++ ace-1.4/lib/Makefile.am +@@ -6,7 +6,7 @@ + CLEANFILES = images.c images.d + + INCLUDES = $(X_CFLAGS) @PDA@ +-AM_LDFLAGS = $(X_LIBS) ++AM_LDFLAGS = $(X_LIBS) -lpng -lz -lm + + BUILD_CC = @BUILD_CC@ + AR = @AR@ + +--- ace-1.4/lib/xwin.c 2020-10-07 02:07:59.000000000 +0300 ++++ ace-1.4/lib/xwin.c 2020-10-07 02:15:05.941784967 +0300 +@@ -55,7 +55,6 @@ + { "-visual", OPTION_INTEGER, &visual_id }, + { 0, 0, 0 } + }; +-OptionDesc *xwin_options = xwin_options_list; + + Display *display=0; + int screen=0; +--- ace-1.4/config.guess 2012-03-24 19:00:49.000000000 +0100 ++++ ace-1.4/config.guess 2021-07-05 11:02:16.685843793 +0200 +@@ -882,6 +882,9 @@ + echo ${UNAME_MACHINE}-unknown-linux-gnueabi + fi + exit ;; ++ aarch64*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-gnu ++ exit ;; + avr32*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + diff --git a/pkgs/misc/screensavers/electricsheep/default.nix b/pkgs/misc/screensavers/electricsheep/default.nix index d1aa7d9911b2..ff1736c09425 100644 --- a/pkgs/misc/screensavers/electricsheep/default.nix +++ b/pkgs/misc/screensavers/electricsheep/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { owner = "scottdraves"; repo = pname; rev = "37ba0fd692d6581f8fe009ed11c9650cd8174123"; - sha256 = "1z49l53j1lhk7ahdy96lm9r0pklwpf2i5s6y2l2rn6l4z8dxkjmk"; + sha256 = "sha256-v/+2dxOY/p6wNAywcFHUAfsZEJw31Syu2MacN/KeyWg="; }; nativeBuildInputs = [ autoreconfHook pkg-config ]; diff --git a/pkgs/misc/vscode-extensions/default.nix b/pkgs/misc/vscode-extensions/default.nix index 0f0327db7c1d..954af1706fe8 100644 --- a/pkgs/misc/vscode-extensions/default.nix +++ b/pkgs/misc/vscode-extensions/default.nix @@ -1472,8 +1472,8 @@ let mktplcRef = { name = "metals"; publisher = "scalameta"; - version = "1.10.15"; - sha256 = "1yzvwdxipilxpg50sh1glm6p2mmn75pzq8kadk7cyl1kqlqd40ii"; + version = "1.11.0"; + sha256 = "0a4agm0g16cxhvhvsmbsvvicfsjr53330rsab5xdi7gcpx9a1dff"; }; meta = { license = lib.licenses.asl20; diff --git a/pkgs/misc/wiki-tui/default.nix b/pkgs/misc/wiki-tui/default.nix index aa58483ecb28..3885da4cbeba 100644 --- a/pkgs/misc/wiki-tui/default.nix +++ b/pkgs/misc/wiki-tui/default.nix @@ -2,34 +2,25 @@ rustPlatform.buildRustPackage rec { pname = "wiki-tui"; - version = "0.4.3"; + version = "0.4.4"; src = fetchFromGitHub { owner = "Builditluc"; repo = pname; rev = "v${version}"; - sha256 = "sha256-maN/0lJx6/lj3Zn+IZcPJFPPFVLbnpwxeMSTyzKYX6s="; + sha256 = "sha256-IkPv6oPdwfuIQrqQGqZAJ0b9OPRiA3GWDQuPXM/+fY4="; }; - # latest update forgot to include cargo.lock update - cargoPatches = [ - (fetchpatch { - url = "https://github.com/Builditluc/wiki-tui/commit/87993eaca35a14afc1fb557482b099a6dd2da911.patch"; - sha256 = "sha256-n04FCZwQ9pPanz9QQY/7Apyoy6lG0t/23S40p4c/TXw="; - }) - ]; - buildInputs = [ ncurses openssl ] ++ lib.optional stdenv.isDarwin Security; nativeBuildInputs = [ pkg-config ]; - cargoSha256 = "sha256-x4oS9IBF2GMcilv9Oi/IeFaCM3sxWn7PpkKcaeSqIog="; + cargoSha256 = "sha256-/56KsEg6deeROERWLd9lX+7v6n5Dx1VCzdr/GtPFuGo="; meta = with lib; { description = "A simple and easy to use Wikipedia Text User Interface"; homepage = "https://github.com/builditluc/wiki-tui"; license = licenses.mit; maintainers = with maintainers; [ lom ]; - mainProgram = "wiki-tui"; }; } diff --git a/pkgs/os-specific/darwin/maloader/default.nix b/pkgs/os-specific/darwin/maloader/default.nix index bcd9fe6488d2..1313c1897043 100644 --- a/pkgs/os-specific/darwin/maloader/default.nix +++ b/pkgs/os-specific/darwin/maloader/default.nix @@ -1,11 +1,12 @@ -{ lib, stdenv, fetchgit, opencflite, clang, libcxx }: +{ lib, stdenv, fetchFromGitHub, opencflite, clang, libcxx }: stdenv.mkDerivation { pname = "maloader"; version = "unstable-2014-02-25"; - src = fetchgit { - url = "git://github.com/shinh/maloader.git"; + src = fetchFromGitHub { + owner = "shinh"; + repo = "maloader"; rev = "5f220393e0b7b9ad0cf1aba0e89df2b42a1f0442"; sha256 = "0dd1pn07x1y8pyn5wz8qcl1c1xwghyya4d060m3y9vx5dhv9xmzw"; }; diff --git a/pkgs/os-specific/linux/cryptsetup/default.nix b/pkgs/os-specific/linux/cryptsetup/default.nix index a66147dd22e7..9bbd6ddafedf 100644 --- a/pkgs/os-specific/linux/cryptsetup/default.nix +++ b/pkgs/os-specific/linux/cryptsetup/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "cryptsetup"; - version = "2.4.2"; + version = "2.4.3"; outputs = [ "out" "dev" "man" ]; src = fetchurl { url = "mirror://kernel/linux/utils/cryptsetup/v2.4/${pname}-${version}.tar.xz"; - sha256 = "sha256-FwzCMmqdru61eFeRdr0Q1KYO5cT8W8aQGM5n2vxUC5w="; + sha256 = "sha256-/A35RRiBciZOxb8dC9oIJk+tyKP4VtR+upHzH+NUtQc="; }; # Disable 4 test cases that fail in a sandbox diff --git a/pkgs/servers/bazarr/default.nix b/pkgs/servers/bazarr/default.nix index 5448898c5900..79f17f96b5d9 100644 --- a/pkgs/servers/bazarr/default.nix +++ b/pkgs/servers/bazarr/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "bazarr"; - version = "1.0.0"; + version = "1.0.2"; sourceRoot = "."; src = fetchurl { url = "https://github.com/morpheus65535/bazarr/releases/download/v${version}/bazarr.zip"; - sha256 = "sha256-DDisK8friN3u+kNmjc9TjU0cZ/H0wf/Fu6JqZZkLdPU="; + sha256 = "sha256-aI5uxfMR+UpwxbUsJNNYYjqVX2epk60JbqWHRhB4v7I="; }; nativeBuildInputs = [ unzip makeWrapper ]; diff --git a/pkgs/servers/code-server/default.nix b/pkgs/servers/code-server/default.nix index d6e39f8cdb1f..4a8d19687f7f 100644 --- a/pkgs/servers/code-server/default.nix +++ b/pkgs/servers/code-server/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchFromGitHub, buildGoModule, makeWrapper, runCommand -, moreutils, jq, git, cacert, zip, rsync, pkg-config, yarn, python3 -, esbuild, nodejs-14_x, libsecret, xorg, ripgrep -, AppKit, Cocoa, Security, cctools }: +, cacert, moreutils, jq, git, rsync, pkg-config, yarn, python3 +, esbuild, nodejs-14_x, node-gyp, libsecret, xorg, ripgrep +, AppKit, Cocoa, CoreServices, Security, cctools, xcbuild }: let system = stdenv.hostPlatform.system; @@ -11,16 +11,24 @@ let yarn' = yarn.override { inherit nodejs; }; defaultYarnOpts = [ "frozen-lockfile" "non-interactive" "no-progress"]; + # replaces esbuild's download script with a binary from nixpkgs + patchEsbuild = path : version : '' + mkdir -p ${path}/node_modules/esbuild/bin + jq "del(.scripts.postinstall)" ${path}/node_modules/esbuild/package.json | sponge ${path}/node_modules/esbuild/package.json + sed -i 's/${version}/${esbuild.version}/g' ${path}/node_modules/esbuild/lib/main.js + ln -s -f ${esbuild}/bin/esbuild ${path}/node_modules/esbuild/bin/esbuild + ''; + in stdenv.mkDerivation rec { pname = "code-server"; - version = "3.12.0"; - commit = "798dc0baf284416dbbf951e4ef596beeab6cb6c4"; + version = "4.0.1"; + commit = "7fe23daf009e5234eaa54a1ea5ff26df384c47ac"; src = fetchFromGitHub { owner = "cdr"; repo = "code-server"; rev = "v${version}"; - sha256 = "17v3sz0wjrmikmzyh9xswr4kf1vcj9njlibqb4wwj0pq0d72wdvl"; + sha256 = "1s3dcmzlkyh7qfs3ai1p7dlp45iys0ax1fbxxz17p395pw9anrrl"; }; cloudAgent = buildGoModule rec { @@ -63,27 +71,16 @@ in stdenv.mkDerivation rec { outputHashAlgo = "sha256"; # to get hash values use nix-build -A code-server.prefetchYarnCache - outputHash = { - x86_64-linux = "1clfdl9hy5j2dj6jj6a9vgq0wzllfj0h2hbb73959k3w85y4ad2w"; - aarch64-linux = "1clfdl9hy5j2dj6jj6a9vgq0wzllfj0h2hbb73959k3w85y4ad2w"; - x86_64-darwin = "1clfdl9hy5j2dj6jj6a9vgq0wzllfj0h2hbb73959k3w85y4ad2w"; - }.${system} or (throw "Unsupported system ${system}"); + outputHash = "0qmfsirld1qfl2s26rxbpmvxsyj2pvzkgk8w89zlrgbhgc5fj8p9"; }; - # Extract the Node.js source code which is used to compile packages with - # native bindings - nodeSources = runCommand "node-sources" {} '' - tar --no-same-owner --no-same-permissions -xf ${nodejs.src} - mv node-* $out - ''; - nativeBuildInputs = [ - nodejs yarn' python pkg-config zip makeWrapper git rsync jq moreutils + nodejs yarn' python pkg-config makeWrapper git rsync jq moreutils ]; buildInputs = lib.optionals (!stdenv.isDarwin) [ libsecret ] ++ (with xorg; [ libX11 libxkbfile ]) ++ lib.optionals stdenv.isDarwin [ - AppKit Cocoa Security cctools + AppKit Cocoa CoreServices Security cctools xcbuild ]; patches = [ @@ -119,9 +116,17 @@ in stdenv.mkDerivation rec { # skip unnecessary electron download export ELECTRON_SKIP_BINARY_DOWNLOAD=1 - '' + lib.optionalString stdenv.isLinux '' - # set nodedir, so we can build binaries later - npm config set nodedir "${nodeSources}" + + # set nodedir to prevent node-gyp from downloading headers + # taken from https://nixos.org/manual/nixpkgs/stable/#javascript-tool-specific + mkdir -p $HOME/.node-gyp/${nodejs.version} + echo 9 > $HOME/.node-gyp/${nodejs.version}/installVersion + ln -sfv ${nodejs}/include $HOME/.node-gyp/${nodejs.version} + export npm_config_nodedir=${nodejs} + + # use updated node-gyp. fixes the following error on Darwin: + # PermissionError: [Errno 1] Operation not permitted: '/usr/sbin/pkgutil' + export npm_config_node_gyp=${node-gyp}/lib/node_modules/node-gyp/bin/node-gyp.js ''; buildPhase = '' @@ -169,6 +174,9 @@ in stdenv.mkDerivation rec { # sw_vers before that variable is checked. patch -p1 -i ${./playwright.patch} + # Patch out remote download of nodejs from build script + patch -p1 -i ${./remove-node-download.patch} + # Replicate install vscode dependencies without running script for all vscode packages # that require patching for postinstall scripts to succeed find ./vendor/modules/code-oss-dev -path "*node_modules" -prune -o \ @@ -176,21 +184,21 @@ in stdenv.mkDerivation rec { xargs -I {} yarn --cwd {} \ --frozen-lockfile --offline --ignore-scripts --ignore-engines + # patch shebangs of everything to allow binary packages to build patchShebangs . - # patch build esbuild - mkdir -p vendor/modules/code-oss-dev/build/node_modules/esbuild/bin - jq "del(.scripts.postinstall)" vendor/modules/code-oss-dev/build/node_modules/esbuild/package.json | sponge vendor/modules/code-oss-dev/build/node_modules/esbuild/package.json - sed -i 's/0.12.6/${esbuild.version}/g' vendor/modules/code-oss-dev/build/node_modules/esbuild/lib/main.js - ln -s -f ${esbuild}/bin/esbuild vendor/modules/code-oss-dev/build/node_modules/esbuild/bin/esbuild - - # patch extensions esbuild - mkdir -p vendor/modules/code-oss-dev/extensions/node_modules/esbuild/bin - jq "del(.scripts.postinstall)" vendor/modules/code-oss-dev/extensions/node_modules/esbuild/package.json | sponge vendor/modules/code-oss-dev/extensions/node_modules/esbuild/package.json - sed -i 's/0.11.12/${esbuild.version}/g' vendor/modules/code-oss-dev/extensions/node_modules/esbuild/lib/main.js - ln -s -f ${esbuild}/bin/esbuild vendor/modules/code-oss-dev/extensions/node_modules/esbuild/bin/esbuild - + ${patchEsbuild "./vendor/modules/code-oss-dev/build" "0.12.6"} + ${patchEsbuild "./vendor/modules/code-oss-dev/extensions" "0.11.23"} + '' + lib.optionalString stdenv.isDarwin '' + # use prebuilt binary for @parcel/watcher, which requires macOS SDK 10.13+ + # (see issue #101229) + pushd ./vendor/modules/code-oss-dev/remote/node_modules/@parcel/watcher + mkdir -p ./build/Release + mv ./prebuilds/darwin-x64/node.napi.glibc.node ./build/Release/watcher.node + jq "del(.scripts) | .gypfile = false" ./package.json | sponge ./package.json + popd + '' + '' # rebuild binaries, we use npm here, as yarn does not provide an alternative # that would not attempt to try to reinstall everything and break our # patching attempts diff --git a/pkgs/servers/code-server/playwright.patch b/pkgs/servers/code-server/playwright.patch index e03d7f82184a..95a74748189d 100644 --- a/pkgs/servers/code-server/playwright.patch +++ b/pkgs/servers/code-server/playwright.patch @@ -4,7 +4,7 @@ * limitations under the License. */ --const { installBrowsersWithProgressBar } = require('./lib/install/installer'); +-const { installDefaultBrowsersForNpmInstall } = require('playwright-core/lib/utils/registry'); - --installBrowsersWithProgressBar(); +-installDefaultBrowsersForNpmInstall(); +process.stdout.write('Browser install disabled by Nix build script\n'); diff --git a/pkgs/servers/code-server/remove-cloud-agent-download.patch b/pkgs/servers/code-server/remove-cloud-agent-download.patch index dd8f6fccb5b9..0b16e16aec8b 100644 --- a/pkgs/servers/code-server/remove-cloud-agent-download.patch +++ b/pkgs/servers/code-server/remove-cloud-agent-download.patch @@ -1,10 +1,11 @@ --- ./ci/build/npm-postinstall.sh +++ ./ci/build/npm-postinstall.sh -@@ -56,13 +56,6 @@ - ;; - esac - -- OS="$(uname | tr '[:upper:]' '[:lower:]')" +@@ -58,14 +58,6 @@ + + OS="$(uname | tr '[:upper:]' '[:lower:]')" + +- mkdir -p ./lib +- - if curl -fsSL "https://github.com/cdr/cloud-agent/releases/latest/download/cloud-agent-$OS-$ARCH" -o ./lib/coder-cloud-agent; then - chmod +x ./lib/coder-cloud-agent - else diff --git a/pkgs/servers/code-server/remove-node-download.patch b/pkgs/servers/code-server/remove-node-download.patch new file mode 100644 index 000000000000..282d716752f2 --- /dev/null +++ b/pkgs/servers/code-server/remove-node-download.patch @@ -0,0 +1,27 @@ +--- ./vendor/modules/code-oss-dev/build/gulpfile.reh.js ++++ ./vendor/modules/code-oss-dev/build/gulpfile.reh.js +@@ -277,8 +277,6 @@ + .pipe(util.stripSourceMappingURL()) + .pipe(jsFilter.restore); + +- const nodePath = `.build/node/v${nodeVersion}/${platform}-${platform === 'darwin' ? 'x64' : arch}`; +- const node = gulp.src(`${nodePath}/**`, { base: nodePath, dot: true }); + + let web = []; + if (type === 'reh-web') { +@@ -296,7 +294,6 @@ + license, + sources, + deps, +- node, + ...web + ); + +@@ -376,7 +373,6 @@ + const destinationFolderName = `vscode-${type}${dashed(platform)}${dashed(arch)}`; + + const serverTaskCI = task.define(`vscode-${type}${dashed(platform)}${dashed(arch)}${dashed(minified)}-ci`, task.series( +- gulp.task(`node-${platform}-${platform === 'darwin' ? 'x64' : arch}`), + util.rimraf(path.join(BUILD_ROOT, destinationFolderName)), + packageTask(type, platform, arch, sourceFolderName, destinationFolderName) + )); diff --git a/pkgs/servers/headscale/default.nix b/pkgs/servers/headscale/default.nix index d3133a86c719..8057b56e9f39 100644 --- a/pkgs/servers/headscale/default.nix +++ b/pkgs/servers/headscale/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "headscale"; - version = "0.11.0"; + version = "0.12.2"; src = fetchFromGitHub { owner = "juanfont"; repo = "headscale"; rev = "v${version}"; - sha256 = "sha256-grLYyVYlvqBNO5CVRVDTJKEi45Nsc6Bgs8I3pY7pZfg="; + sha256 = "sha256-PgSjxDmPahGd2o3QBfvytMva+LHWeLPm500DsNdB77Q="; }; - vendorSha256 = "sha256-t7S1jE76AFFIePrFtvrIQcId7hLeNIAm/eA9AVoFy5E="; + vendorSha256 = "sha256-gD4jGaR4KQiYL6+yA8g2u6cTEbfySTMErNqerw76Ook="; ldflags = [ "-s" "-w" "-X github.com/juanfont/headscale/cmd/headscale/cli.Version=v${version}" ]; diff --git a/pkgs/servers/http/nginx/quic.nix b/pkgs/servers/http/nginx/quic.nix index 5173b4c68902..f0a7a3675558 100644 --- a/pkgs/servers/http/nginx/quic.nix +++ b/pkgs/servers/http/nginx/quic.nix @@ -6,8 +6,8 @@ callPackage ./generic.nix args { src = fetchhg { url = "https://hg.nginx.org/nginx-quic"; - rev = "10522e8dea41"; # branch=quic - sha256 = "sha256-BnAhnJKq2uHAp0WqVWIk+Hw0GXF/rAOxKCTwwsiiZdo="; + rev = "6f8253673669"; # branch=quic + sha256 = "sha256:0zl4rws07vr8z7ml7sqlb70v3cx1cms7iablndqd38iqcx0bvjrq"; }; preConfigure = '' diff --git a/pkgs/servers/mail/mailman/hyperkitty.nix b/pkgs/servers/mail/mailman/hyperkitty.nix index 4d4f714e7487..f66b0a9f6b03 100644 --- a/pkgs/servers/mail/mailman/hyperkitty.nix +++ b/pkgs/servers/mail/mailman/hyperkitty.nix @@ -12,7 +12,7 @@ , django-paintstore , django-q , django_compressor -, django_extensions +, django-extensions , djangorestframework , flufl_lock , mistune_2_0 @@ -52,7 +52,7 @@ buildPythonPackage rec { django-mailman3 django-q django_compressor - django_extensions + django-extensions djangorestframework flufl_lock mistune_2_0 diff --git a/pkgs/tools/X11/ratmen/default.nix b/pkgs/tools/X11/ratmen/default.nix index 9c662a638e8a..8a07b41ac371 100644 --- a/pkgs/tools/X11/ratmen/default.nix +++ b/pkgs/tools/X11/ratmen/default.nix @@ -1,35 +1,26 @@ -{lib, stdenv, fetchurl, perl, xorgproto, libX11}: -let - s = # Generated upstream information - rec { - baseName="ratmen"; - version="2.2.3"; - name="${baseName}-${version}"; - hash="0gnfqhnch9x8jhr87gvdjcp1wsqhchfjilpnqcwx5j0nlqyz6wi6"; - url="http://www.update.uu.se/~zrajm/programs/ratmen/ratmen-2.2.3.tar.gz"; - sha256="0gnfqhnch9x8jhr87gvdjcp1wsqhchfjilpnqcwx5j0nlqyz6wi6"; +{ lib, stdenv, fetchurl, perl, xorgproto, libX11 }: + +stdenv.mkDerivation rec { + pname = "ratmen"; + version = "2.2.3"; + src = fetchurl { + url = "http://www.update.uu.se/~zrajm/programs/ratmen/ratmen-${version}.tar.gz"; + sha256 = "0gnfqhnch9x8jhr87gvdjcp1wsqhchfjilpnqcwx5j0nlqyz6wi6"; }; buildInputs = [ - perl xorgproto libX11 + perl + xorgproto + libX11 ]; -in -stdenv.mkDerivation { - inherit (s) name version; - inherit buildInputs; - src = fetchurl { - inherit (s) url sha256; - }; makeFlags = [ "PREFIX=$(out)" ]; - meta = { - inherit (s) version; + meta = with lib; { description = "A minimalistic X11 menu creator"; - license = lib.licenses.free ; # 9menu derivative with 9menu license - maintainers = [lib.maintainers.raskin]; - platforms = lib.platforms.linux; + license = licenses.free; # 9menu derivative with 9menu license + maintainers = with maintainers; [ raskin ]; + platforms = platforms.linux; homepage = "http://www.update.uu.se/~zrajm/programs/"; downloadPage = "http://www.update.uu.se/~zrajm/programs/ratmen/"; - updateWalker = true; }; } diff --git a/pkgs/tools/admin/mycli/default.nix b/pkgs/tools/admin/mycli/default.nix index e128b9803c20..83dc7214928b 100644 --- a/pkgs/tools/admin/mycli/default.nix +++ b/pkgs/tools/admin/mycli/default.nix @@ -7,11 +7,11 @@ with python3.pkgs; buildPythonApplication rec { pname = "mycli"; - version = "1.24.1"; + version = "1.24.2"; src = fetchPypi { inherit pname version; - sha256 = "sha256-dI2Yvj2llI9TlMFbs35ijYeFuGqoTovZyRh+ILhNMmY="; + sha256 = "sha256-XrPho+bPjyzj2d6W4KR4P09T1/FXkrQvhGPotgooIB4="; }; propagatedBuildInputs = [ @@ -29,7 +29,7 @@ buildPythonApplication rec { sqlparse ]; - checkInputs = [ pytest mock glibcLocales ]; + checkInputs = [ pytest glibcLocales ]; checkPhase = '' export HOME=. diff --git a/pkgs/tools/misc/anystyle-cli/default.nix b/pkgs/tools/misc/anystyle-cli/default.nix index 7a437cafc281..379ed14f8ef6 100644 --- a/pkgs/tools/misc/anystyle-cli/default.nix +++ b/pkgs/tools/misc/anystyle-cli/default.nix @@ -30,7 +30,7 @@ buildRubyGem rec { propagatedBuildInputs = [ deps ]; preFixup = '' - wrapProgram $out/bin/anystyle --prefix PATH ${poppler_utils}/bin + wrapProgram $out/bin/anystyle --prefix PATH : ${poppler_utils}/bin ''; meta = with lib; { diff --git a/pkgs/tools/misc/netbootxyz-efi/default.nix b/pkgs/tools/misc/netbootxyz-efi/default.nix new file mode 100644 index 000000000000..1394a8e745cb --- /dev/null +++ b/pkgs/tools/misc/netbootxyz-efi/default.nix @@ -0,0 +1,21 @@ +{ lib +, fetchurl +}: + +let + pname = "netboot.xyz-efi"; + version = "2.0.53"; +in fetchurl { + name = "${pname}-${version}"; + + url = "https://github.com/netbootxyz/netboot.xyz/releases/download/${version}/netboot.xyz.efi"; + sha256 = "sha256-v7XqrhG94BLTpDHDazTiowQUXu/ITEcgVMmhlqgmSQE="; + + meta = with lib; { + homepage = "https://netboot.xyz/"; + description = "A tool to boot OS installers and utilities over the network, to be run from a bootloader"; + license = licenses.asl20; + maintainers = with maintainers; [ Enzime ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/misc/pandoc-drawio-filter/default.nix b/pkgs/tools/misc/pandoc-drawio-filter/default.nix new file mode 100644 index 000000000000..1279296143cc --- /dev/null +++ b/pkgs/tools/misc/pandoc-drawio-filter/default.nix @@ -0,0 +1,78 @@ +{ buildPythonApplication +, drawio +, fetchFromGitHub +, lib +, pandoc +, pandocfilters +, runCommand +, runtimeShell +, texlive +, writeScriptBin +, xvfb-run +}: + +let + version = "1.1"; + + src = fetchFromGitHub { + owner = "tfc"; + repo = "pandoc-drawio-filter"; + rev = version; + sha256 = "sha256-2XJSAfxqEmmamWIAM3vZqi0mZjUUugmR3zWw8Imjadk="; + }; + + wrappedDrawio = writeScriptBin "drawio" '' + #!${runtimeShell} + + # Electron really wants a configuration directory to not die with: + # "Error: Failed to get 'appData' path" + # so we give it some temp dir as XDG_CONFIG_HOME + tmpdir=$(mktemp -d) + + function cleanup { + rm -rf "$tmpdir" + } + trap cleanup EXIT + + # Drawio needs to run in a virtual X session, because Electron + # refuses to work and dies with an unhelpful error message otherwise: + # "The futex facility returned an unexpected error code." + XDG_CONFIG_HOME="$tmpdir" ${xvfb-run}/bin/xvfb-run ${drawio}/bin/drawio $@ + ''; + + pandoc-drawio-filter = buildPythonApplication { + pname = "pandoc-drawio-filter"; + + inherit src version; + + propagatedBuildInputs = [ + wrappedDrawio + pandocfilters + ]; + + passthru.tests.example-doc = + let + env = { + nativeBuildInputs = [ + pandoc + pandoc-drawio-filter + texlive.combined.scheme-tetex + ]; + }; + in + runCommand "$pandoc-drawio-filter-example-doc.pdf" env '' + cp -r ${src}/example/* . + pandoc -F pandoc-drawio example.md -T pdf -o $out + ''; + + meta = with lib; { + homepage = "https://github.com/tfc/pandoc-drawio-filter"; + description = "Pandoc filter which converts draw.io diagrams to PDF"; + license = licenses.mit; + maintainers = with maintainers; [ tfc ]; + }; + }; + +in + +pandoc-drawio-filter diff --git a/pkgs/tools/misc/synth/default.nix b/pkgs/tools/misc/synth/default.nix index 8bfca884f1f8..1d922a218433 100644 --- a/pkgs/tools/misc/synth/default.nix +++ b/pkgs/tools/misc/synth/default.nix @@ -10,16 +10,16 @@ rustPlatform.buildRustPackage rec { pname = "synth"; - version = "0.6.2"; + version = "0.6.4"; src = fetchFromGitHub { owner = "getsynth"; repo = pname; rev = "v${version}"; - sha256 = "sha256-MeZ5bkOMTJVvaBfGahKsXvaYhfMKcYzPFsBp/p2dPQQ="; + sha256 = "sha256-TtIZwGHSfY7Xz6hmrsmaB7dXfjSPcBD4yDyC27TJ4B4="; }; - cargoSha256 = "sha256-lNeDpUla/PfGd/AogdcOtrmL1Jp+0Ji9LH1CF7uOEe0="; + cargoSha256 = "sha256-V5GA5XR3wkcBdbxRjO8PkF7Q3yg1NVUjXsdAHVip4Bc="; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/tools/misc/ttygif/default.nix b/pkgs/tools/misc/ttygif/default.nix index 226109ab20c0..d9a97f6c2350 100644 --- a/pkgs/tools/misc/ttygif/default.nix +++ b/pkgs/tools/misc/ttygif/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "ttygif"; - version = "1.5.0"; + version = "1.6.0"; src = fetchFromGitHub { owner = "icholy"; repo = pname; rev = version; - sha256 = "1w9c3h6hik2gglwsw8ww63piy66i4zqr3273wh5rc9r2awiwh643"; + sha256 = "sha256-GsMeVR2wNivQguZ6B/0v39Td9VGHg+m3RtAG9DYkNmU="; }; makeFlags = [ "CC:=$(CC)" "PREFIX=${placeholder "out"}" ]; diff --git a/pkgs/tools/misc/yubikey-manager/default.nix b/pkgs/tools/misc/yubikey-manager/default.nix index adcc2bd9b042..f5722ba029e5 100644 --- a/pkgs/tools/misc/yubikey-manager/default.nix +++ b/pkgs/tools/misc/yubikey-manager/default.nix @@ -61,6 +61,6 @@ python3Packages.buildPythonPackage rec { license = licenses.bsd2; platforms = platforms.unix; - maintainers = with maintainers; [ benley mic92 ]; + maintainers = with maintainers; [ benley lassulus pinpox ]; }; } diff --git a/pkgs/tools/networking/dnsproxy/default.nix b/pkgs/tools/networking/dnsproxy/default.nix index 8a98600f0dcf..6e1977531ea8 100644 --- a/pkgs/tools/networking/dnsproxy/default.nix +++ b/pkgs/tools/networking/dnsproxy/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "dnsproxy"; - version = "0.40.1"; + version = "0.40.3"; src = fetchFromGitHub { owner = "AdguardTeam"; repo = pname; rev = "v${version}"; - sha256 = "sha256-tvYurE+/ZPJeV/ZKMIC0yrwzomxd/3y0KtChei/HO6c="; + sha256 = "sha256-OkicEDu2sMEpvBbb7JFRGusMKJeQoVe3ShsbuNCoIis="; }; vendorSha256 = null; diff --git a/pkgs/tools/networking/inadyn/default.nix b/pkgs/tools/networking/inadyn/default.nix index 359c13435942..3d5a54c41f5c 100644 --- a/pkgs/tools/networking/inadyn/default.nix +++ b/pkgs/tools/networking/inadyn/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "inadyn"; - version = "2.9.0"; + version = "2.9.1"; src = fetchFromGitHub { owner = "troglobit"; repo = "inadyn"; rev = "v${version}"; - sha256 = "sha256-WYl602gDcPKxjQAlBedPHEOCNtaGgcaVZ/KbxcP2El4="; + sha256 = "sha256-mHqy/cBw+pwJwzMzAmqIQcLkpc87dtYD11TMRXeWdUg="; }; nativeBuildInputs = [ autoreconfHook pkg-config ]; @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; meta = with lib; { - homepage = "https://troglobit.com/project/inadyn/"; + homepage = "https://troglobit.com/projects/inadyn/"; description = "Free dynamic DNS client"; license = licenses.gpl2Plus; maintainers = with maintainers; [ ]; diff --git a/pkgs/tools/networking/mtr/default.nix b/pkgs/tools/networking/mtr/default.nix index 177fdee99b37..9ce71df109e0 100644 --- a/pkgs/tools/networking/mtr/default.nix +++ b/pkgs/tools/networking/mtr/default.nix @@ -1,28 +1,27 @@ -{ stdenv, lib, fetchFromGitHub, fetchpatch, autoreconfHook, pkg-config -, libcap, ncurses, jansson -, withGtk ? false, gtk3 }: +{ stdenv +, lib +, fetchFromGitHub +, fetchpatch +, autoreconfHook +, pkg-config +, libcap +, ncurses +, jansson +, withGtk ? false +, gtk3 +}: stdenv.mkDerivation rec { pname = "mtr${lib.optionalString withGtk "-gui"}"; - version = "0.94"; + version = "0.95"; src = fetchFromGitHub { owner = "traviscross"; repo = "mtr"; rev = "v${version}"; - sha256 = "0wnz87cr2lcl74bj8qxq9xgai40az3pk9k0z893scyc8svd61xz6"; + sha256 = "sha256-f5bL3IdXibIc1xXCuZHwcEV5vhypRE2mLsS3A8HW2QM="; }; - patches = [ - # pull patch to fix build failure against ncurses-6.3: - # https://github.com/traviscross/mtr/pull/411 - (fetchpatch { - name = "ncurses-6.3.patch"; - url = "https://github.com/traviscross/mtr/commit/aeb493e08eabcb4e6178bda0bb84e9cd01c9f213.patch"; - sha256 = "1qk8lf4sha18g36mr84vbdvll2s8khgbzyyq0as3ifx44lv0qlf2"; - }) - ]; - # we need this before autoreconfHook does its thing postPatch = '' echo ${version} > .tarball-version diff --git a/pkgs/tools/networking/tinyssh/default.nix b/pkgs/tools/networking/tinyssh/default.nix index 9bfa8aa3ab53..e09a181d0076 100644 --- a/pkgs/tools/networking/tinyssh/default.nix +++ b/pkgs/tools/networking/tinyssh/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "tinyssh"; - version = "20210601"; + version = "20220101"; src = fetchFromGitHub { owner = "janmojzis"; repo = "tinyssh"; rev = version; - sha256 = "sha256-+THoPiD6dW5ZuiQmmLckOJGyjhzdF3qF0DgC51zjGY8="; + sha256 = "sha256-3GW7WNUy7539dN2ckd/0PejzsiaCXcOIMR5FlZKBkMo="; }; preConfigure = '' diff --git a/pkgs/tools/security/maigret/default.nix b/pkgs/tools/security/maigret/default.nix index 08ef82ff9d6e..cf8a03e8123e 100644 --- a/pkgs/tools/security/maigret/default.nix +++ b/pkgs/tools/security/maigret/default.nix @@ -5,13 +5,13 @@ python3.pkgs.buildPythonApplication rec { pname = "maigret"; - version = "0.3.1"; + version = "0.4.0"; src = fetchFromGitHub { owner = "soxoj"; repo = pname; rev = "v${version}"; - sha256 = "cq7pATICVQa2yTx2uiP58OBTn4B6iCjIB6LMmpaQfx0="; + sha256 = "1jvfi3d7b1x4x1h0hz193n541fa0qgp7lynd6j0w050cgg753hpz"; }; propagatedBuildInputs = with python3.pkgs; [ diff --git a/pkgs/tools/security/wprecon/default.nix b/pkgs/tools/security/wprecon/default.nix index 401692bdf67d..bd343a5f1b12 100644 --- a/pkgs/tools/security/wprecon/default.nix +++ b/pkgs/tools/security/wprecon/default.nix @@ -23,5 +23,6 @@ buildGoModule rec { # https://github.com/blackbinn/wprecon/blob/master/LICENSE license = with licenses; [ unfree ]; maintainers = with maintainers; [ fab ]; + broken = true; # build fails, missing tag }; } diff --git a/pkgs/tools/typesetting/sile/default.nix b/pkgs/tools/typesetting/sile/default.nix index 27c8aada14c9..9e9e818bb530 100644 --- a/pkgs/tools/typesetting/sile/default.nix +++ b/pkgs/tools/typesetting/sile/default.nix @@ -38,11 +38,11 @@ in stdenv.mkDerivation rec { pname = "sile"; - version = "0.12.0"; + version = "0.12.1"; src = fetchurl { url = "https://github.com/sile-typesetter/sile/releases/download/v${version}/${pname}-${version}.tar.xz"; - sha256 = "1rkdzf4khyvsn5qg455mdhnlacxlqgi9vchy369a66qp5nrs50y9"; + sha256 = "1dw8qs5y2m90vhjsxpnvnr8blq0ld2fvny5ir8zjharja7wny24i"; }; configureFlags = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 617d876165cb..99b7b76fb7a7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2077,7 +2077,7 @@ with pkgs; avro-c = callPackage ../development/libraries/avro-c { }; - avro-cpp = callPackage ../development/libraries/avro-c++ { boost = boost160; }; + avro-cpp = callPackage ../development/libraries/avro-c++ { }; aws = callPackage ../tools/virtualization/aws { }; @@ -6346,7 +6346,9 @@ with pkgs; heimdall-gui = heimdall.override { enableGUI = true; }; - headscale = callPackage ../servers/headscale { }; + headscale = callPackage ../servers/headscale { + buildGoModule = buildGo117Module; + }; heisenbridge = callPackage ../servers/heisenbridge { }; @@ -6602,7 +6604,9 @@ with pkgs; ipfs = callPackage ../applications/networking/ipfs { }; ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { }; - ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { }; + ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { + buildGoModule = buildGo116Module; + }; ipget = callPackage ../applications/networking/ipget { }; @@ -7957,6 +7961,8 @@ with pkgs; netboot = callPackage ../tools/networking/netboot {}; + netbootxyz-efi = callPackage ../tools/misc/netbootxyz-efi { }; + netcat = libressl.nc; netcat-gnu = callPackage ../tools/networking/netcat { }; @@ -8096,6 +8102,8 @@ with pkgs; pandoc-imagine = python3Packages.callPackage ../tools/misc/pandoc-imagine { }; + pandoc-drawio-filter = python3Packages.callPackage ../tools/misc/pandoc-drawio-filter { }; + pandoc-plantuml-filter = python3Packages.callPackage ../tools/misc/pandoc-plantuml-filter { }; patray = callPackage ../tools/audio/patray { }; @@ -10094,7 +10102,9 @@ with pkgs; pythonPackages = python3Packages; }; - telepresence2 = callPackage ../tools/networking/telepresence2 { }; + telepresence2 = callPackage ../tools/networking/telepresence2 { + buildGoModule = buildGo116Module; + }; teler = callPackage ../tools/security/teler { }; @@ -21230,7 +21240,9 @@ with pkgs; unit = callPackage ../servers/http/unit { }; - ncdns = callPackage ../servers/dns/ncdns { }; + ncdns = callPackage ../servers/dns/ncdns { + buildGoModule = buildGo116Module; + }; nginx = nginxStable; @@ -24495,6 +24507,8 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics ForceFeedback OpenAL OpenGL; }; + blender-with-packages = callPackage ../applications/misc/blender/wrapper.nix {}; + blflash = callPackage ../tools/misc/blflash { }; blogc = callPackage ../applications/misc/blogc { }; @@ -27450,6 +27464,8 @@ with pkgs; pijul = callPackage ../applications/version-management/pijul { }; + pijuice = with python3Packages; toPythonApplication pijuice; + ping = callPackage ../applications/networking/ping { }; piper = callPackage ../os-specific/linux/piper { }; @@ -28764,6 +28780,8 @@ with pkgs; syncplay = python3.pkgs.callPackage ../applications/networking/syncplay { }; + syncterm = callPackage ../applications/terminal-emulators/syncterm { }; + inherit (callPackages ../applications/networking/syncthing { }) syncthing syncthing-discovery @@ -28873,7 +28891,9 @@ with pkgs; tenacity = callPackage ../applications/audio/tenacity { wxGTK = wxGTK31-gtk3; }; - tendermint = callPackage ../tools/networking/tendermint { }; + tendermint = callPackage ../tools/networking/tendermint { + buildGoModule = buildGo116Module; + }; termdbms = callPackage ../development/tools/database/termdbms { }; @@ -29379,8 +29399,9 @@ with pkgs; }; code-server = callPackage ../servers/code-server { - inherit (darwin.apple_sdk.frameworks) AppKit Cocoa Security; + inherit (darwin.apple_sdk.frameworks) AppKit Cocoa CoreServices Security; inherit (darwin) cctools; + inherit (nodePackages) node-gyp; }; vue = callPackage ../applications/misc/vue { }; @@ -29727,7 +29748,7 @@ with pkgs; inherit (gnome2) libglade scrollkeeper; gtkhtml = gnome2.gtkhtml4; python = python27; - enchant = enchant1; + enchant = enchant2; }; xournal = callPackage ../applications/graphics/xournal { @@ -30244,6 +30265,8 @@ with pkgs; _90secondportraits = callPackage ../games/90secondportraits { love = love_0_10; }; + ace-of-penguins = callPackage ../games/ace-of-penguins { }; + among-sus = callPackage ../games/among-sus { }; antsimulator = callPackage ../games/antsimulator { }; diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index 1bccb391084a..5d19c70f03d6 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -45,6 +45,7 @@ mapAliases ({ discogs_client = discogs-client; # added 2021-07-02 djangorestframework-jwt = drf-jwt; # added 2021-07-20 django_environ = django-environ; # added 2021-12-25 + django_extensions = django-extensions; # added 2022-01-09 django_redis = django-redis; # added 2021-10-11 django_taggit = django-taggit; # added 2021-10-11 dns = dnspython; # added 2017-12-10 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 8d70a2b95665..cf58483ebdeb 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1132,6 +1132,8 @@ in { bayespy = callPackage ../development/python-modules/bayespy { }; + bbox = callPackage ../development/python-modules/bbox { }; + bc-python-hcl2 = callPackage ../development/python-modules/bc-python-hcl2 { }; bcdoc = callPackage ../development/python-modules/bcdoc { }; @@ -1304,6 +1306,10 @@ in { bottleneck = callPackage ../development/python-modules/bottleneck { }; + boxx = callPackage ../development/python-modules/boxx { }; + + bpycv = callPackage ../development/python-modules/bpycv {}; + bpython = callPackage ../development/python-modules/bpython { }; braceexpand = callPackage ../development/python-modules/braceexpand { }; @@ -2212,7 +2218,7 @@ in { django-environ = callPackage ../development/python-modules/django_environ { }; - django_extensions = callPackage ../development/python-modules/django-extensions { }; + django-extensions = callPackage ../development/python-modules/django-extensions { }; django-filter = callPackage ../development/python-modules/django-filter { }; @@ -4975,6 +4981,8 @@ in { millheater = callPackage ../development/python-modules/millheater { }; + minexr = callPackage ../development/python-modules/minexr { }; + miniaudio = callPackage ../development/python-modules/miniaudio { }; minidb = callPackage ../development/python-modules/minidb { }; @@ -5945,6 +5953,8 @@ in { piexif = callPackage ../development/python-modules/piexif { }; + pijuice = callPackage ../development/python-modules/pijuice { }; + pika = callPackage ../development/python-modules/pika { }; pika-pool = callPackage ../development/python-modules/pika-pool { }; @@ -7251,6 +7261,8 @@ in { pyquery = callPackage ../development/python-modules/pyquery { }; + pyquaternion = callPackage ../development/python-modules/pyquaternion { }; + pyquil = callPackage ../development/python-modules/pyquil { }; pyrabbit2 = callPackage ../development/python-modules/pyrabbit2 { }; @@ -10562,6 +10574,8 @@ in { yattag = callPackage ../development/python-modules/yattag { }; + yacs = callPackage ../development/python-modules/yacs { }; + ydiff = callPackage ../development/python-modules/ydiff { }; yeelight = callPackage ../development/python-modules/yeelight { }; @@ -10618,6 +10632,8 @@ in { zconfig = callPackage ../development/python-modules/zconfig { }; + zcs = callPackage ../development/python-modules/zcs { }; + zdaemon = callPackage ../development/python-modules/zdaemon { }; zeek = toPythonModule (pkgs.zeek.override {