From b4e89fc316e064cfe07d9462569a6d52060d19a1 Mon Sep 17 00:00:00 2001 From: Default email Date: Thu, 7 Oct 2021 22:46:35 +0800 Subject: [PATCH] Project import generated by Copybara. GitOrigin-RevId: 70088dc29994c32f8520150e34c6e57e8453f895 --- .../nixpkgs/doc/stdenv/stdenv.chapter.md | 4 +- third_party/nixpkgs/lib/systems/supported.nix | 1 + .../nixpkgs/maintainers/maintainer-list.nix | 6 + .../from_md/release-notes/rl-2111.section.xml | 8 + .../manual/release-notes/rl-2111.section.md | 2 + .../nixos/lib/test-driver/test-driver.py | 802 +++++++++++------- .../nixpkgs/nixos/lib/testing-python.nix | 11 +- .../tools/nixos-build-vms/build-vms.nix | 20 +- .../nixpkgs/nixos/modules/module-list.nix | 2 + .../modules/services/hardware/joycond.nix | 40 + .../services/misc/mautrix-facebook.nix | 195 +++++ .../modules/services/misc/nix-daemon.nix | 11 +- .../monitoring/prometheus/exporters.nix | 22 + .../monitoring/prometheus/exporters/bird.nix | 4 + .../prometheus/exporters/dovecot.nix | 4 + .../monitoring/prometheus/exporters/kea.nix | 4 + .../monitoring/prometheus/exporters/knot.nix | 4 + .../prometheus/exporters/modemmanager.nix | 4 + .../prometheus/exporters/postgres.nix | 4 + .../prometheus/exporters/smokeping.nix | 1 + .../monitoring/prometheus/exporters/sql.nix | 4 + .../prometheus/exporters/systemd.nix | 4 + .../prometheus/exporters/unbound.nix | 4 + .../prometheus/exporters/wireguard.nix | 5 + .../nixos/modules/virtualisation/qemu-vm.nix | 2 +- third_party/nixpkgs/nixos/tests/all-tests.nix | 1 + .../nixpkgs/nixos/tests/calibre-web.nix | 10 - third_party/nixpkgs/nixos/tests/udisks2.nix | 2 +- third_party/nixpkgs/nixos/tests/usbguard.nix | 2 +- .../nixpkgs/nixos/tests/without-nix.nix | 23 + .../applications/audio/picard/default.nix | 4 +- .../applications/editors/rstudio/default.nix | 2 +- .../nixpkgs/pkgs/applications/kde/marble.nix | 11 +- .../misc/eureka-ideas/default.nix | 35 + .../applications/misc/foxtrotgps/default.nix | 20 +- .../networking/cluster/k3s/default.nix | 2 +- .../networking/cluster/k3s/update.sh | 20 +- .../instant-messengers/bluejeans/update.sh | 8 +- .../signal-desktop/default.nix | 12 +- .../applications/science/math/R/default.nix | 1 - .../terminal-emulators/foot/default.nix | 32 +- .../pkgs/build-support/agda/default.nix | 4 +- .../rust/build-rust-crate/build-crate.nix | 3 +- .../rust/build-rust-crate/configure-crate.nix | 4 +- .../rust/build-rust-crate/default.nix | 13 +- .../apps/switchboard-plugs/power/default.nix | 2 + .../pkgs/development/compilers/sbcl/2.0.8.nix | 4 +- .../haskell-modules/configuration-nix.nix | 2 - .../interpreters/bqn/cbqn/default.nix | 21 +- .../interpreters/bqn/dzaima-bqn/default.nix | 19 +- .../bqn/mlochbaum-bqn/default.nix | 8 +- .../libraries/agda/agda-prelude/default.nix | 6 +- .../libraries/agda/agdarsec/default.nix | 28 + .../development/libraries/libnsl/default.nix | 4 +- .../python-modules/Theano/default.nix | 2 +- .../python-modules/aiodiscover/default.nix | 4 +- .../python-modules/aiohomekit/default.nix | 4 +- .../python-modules/aiohue/default.nix | 4 +- .../python-modules/aioshelly/default.nix | 4 +- .../python-modules/airthings/default.nix | 39 + .../python-modules/bellows/default.nix | 4 +- .../python-modules/ciso8601/default.nix | 12 +- .../python-modules/clifford/default.nix | 38 +- .../python-modules/dask-jobqueue/default.nix | 35 +- .../python-modules/dask/default.nix | 4 +- .../python-modules/demjson3/default.nix | 31 + .../python-modules/distributed/default.nix | 4 +- .../python-modules/fsspec/default.nix | 4 +- .../python-modules/gcsfs/default.nix | 4 +- .../python-modules/graspologic/default.nix | 2 +- .../gtfs-realtime-bindings/default.nix | 36 + .../python-modules/hass-nabucasa/default.nix | 4 +- .../python-modules/iso4217/default.nix | 52 ++ .../python-modules/mypy-boto3-s3/default.nix | 4 +- .../python-modules/netdisco/default.nix | 9 +- .../python-modules/ocrmypdf/default.nix | 8 +- .../python-modules/pikepdf/default.nix | 4 +- .../python-modules/pubnub/default.nix | 4 +- .../python-modules/pyatmo/default.nix | 38 +- .../python-modules/pycarwings2/default.nix | 7 +- .../python-modules/pydeconz/default.nix | 4 +- .../python-modules/pyefergy/default.nix | 42 + .../python-modules/pypinyin/default.nix | 4 +- .../python-modules/pypoint/default.nix | 4 +- .../python-modules/pysyncthru/default.nix | 8 +- .../python-smarttub/default.nix | 5 +- .../python-modules/python-tado/default.nix | 4 +- .../python-modules/pytransportnsw/default.nix | 36 + .../pytransportnswv2/default.nix | 38 + .../python-modules/pyvicare/default.nix | 4 +- .../python-modules/s3fs/default.nix | 4 +- .../python-modules/sqlite-utils/default.nix | 4 +- .../streamlabswater/default.nix | 12 +- .../python-modules/surepy/default.nix | 4 +- .../python-modules/transitions/default.nix | 4 +- .../python-modules/twilio/default.nix | 4 +- .../python-modules/urlextract/default.nix | 4 +- .../python-modules/zha-quirks/default.nix | 4 +- .../python-modules/zigpy/default.nix | 4 +- .../zwave-js-server-python/default.nix | 4 +- .../pkgs/development/r-modules/default.nix | 2 +- .../tools/database/prisma-engines/default.nix | 2 +- .../development/tools/electron/default.nix | 16 +- .../tools/jd-diff-patch/default.nix | 27 + .../pkgs/development/tools/rslint/default.nix | 6 +- .../pkgs/development/tools/skopeo/default.nix | 4 +- .../sumneko-lua-language-server/default.nix | 11 +- .../nixpkgs/pkgs/misc/emulators/wine/base.nix | 2 +- .../pkgs/misc/vim-plugins/generated.nix | 180 ++-- .../pkgs/misc/vim-plugins/vim-plugin-names | 2 +- .../pkgs/misc/vscode-extensions/default.nix | 12 + .../os-specific/linux/joycond/default.nix | 11 +- .../linux/kernel/linux-testing-bcachefs.nix | 1 + .../pkgs/servers/calibre-web/default.nix | 5 +- .../home-assistant/component-packages.nix | 43 +- .../pkgs/servers/home-assistant/default.nix | 42 +- .../pkgs/servers/home-assistant/frontend.nix | 4 +- .../prometheus/openvpn-exporter.nix | 1 + .../nixpkgs/pkgs/servers/ser2net/default.nix | 4 +- .../pkgs/shells/zsh/oh-my-zsh/default.nix | 6 +- .../compression/ouch/add-Cargo.lock.patch | 434 ---------- .../pkgs/tools/compression/ouch/default.nix | 18 +- .../filesystems/bcachefs-tools/default.nix | 9 +- .../nixpkgs/pkgs/tools/misc/vsh/default.nix | 4 +- .../pkgs/tools/networking/godns/default.nix | 27 + .../tools/package-management/nix/default.nix | 6 +- .../pkgs/tools/security/exploitdb/default.nix | 4 +- .../nixpkgs/pkgs/top-level/agda-packages.nix | 2 + .../nixpkgs/pkgs/top-level/all-packages.nix | 26 +- .../pkgs/top-level/python-packages.nix | 14 + .../nixpkgs/pkgs/top-level/release-r.nix | 13 + 131 files changed, 1773 insertions(+), 1194 deletions(-) create mode 100644 third_party/nixpkgs/nixos/modules/services/hardware/joycond.nix create mode 100644 third_party/nixpkgs/nixos/modules/services/misc/mautrix-facebook.nix create mode 100644 third_party/nixpkgs/nixos/tests/without-nix.nix create mode 100644 third_party/nixpkgs/pkgs/applications/misc/eureka-ideas/default.nix create mode 100644 third_party/nixpkgs/pkgs/development/libraries/agda/agdarsec/default.nix create mode 100644 third_party/nixpkgs/pkgs/development/python-modules/airthings/default.nix create mode 100644 third_party/nixpkgs/pkgs/development/python-modules/demjson3/default.nix create mode 100644 third_party/nixpkgs/pkgs/development/python-modules/gtfs-realtime-bindings/default.nix create mode 100644 third_party/nixpkgs/pkgs/development/python-modules/iso4217/default.nix create mode 100644 third_party/nixpkgs/pkgs/development/python-modules/pyefergy/default.nix create mode 100644 third_party/nixpkgs/pkgs/development/python-modules/pytransportnsw/default.nix create mode 100644 third_party/nixpkgs/pkgs/development/python-modules/pytransportnswv2/default.nix create mode 100644 third_party/nixpkgs/pkgs/development/tools/jd-diff-patch/default.nix delete mode 100644 third_party/nixpkgs/pkgs/tools/compression/ouch/add-Cargo.lock.patch create mode 100644 third_party/nixpkgs/pkgs/tools/networking/godns/default.nix create mode 100644 third_party/nixpkgs/pkgs/top-level/release-r.nix diff --git a/third_party/nixpkgs/doc/stdenv/stdenv.chapter.md b/third_party/nixpkgs/doc/stdenv/stdenv.chapter.md index 9befcaa51a..02042407f6 100644 --- a/third_party/nixpkgs/doc/stdenv/stdenv.chapter.md +++ b/third_party/nixpkgs/doc/stdenv/stdenv.chapter.md @@ -373,11 +373,11 @@ Additional file types can be supported by setting the `unpackCmd` variable (see ##### `srcs` / `src` {#var-stdenv-src} -The list of source files or directories to be unpacked or copied. One of these must be set. +The list of source files or directories to be unpacked or copied. One of these must be set. Note that if you use `srcs`, you should also set `sourceRoot` or `setSourceRoot`. ##### `sourceRoot` {#var-stdenv-sourceRoot} -After running `unpackPhase`, the generic builder changes the current directory to the directory created by unpacking the sources. If there are multiple source directories, you should set `sourceRoot` to the name of the intended directory. +After running `unpackPhase`, the generic builder changes the current directory to the directory created by unpacking the sources. If there are multiple source directories, you should set `sourceRoot` to the name of the intended directory. Set `sourceRoot = ".";` if you use `srcs` and control the unpack phase yourself. ##### `setSourceRoot` {#var-stdenv-setSourceRoot} diff --git a/third_party/nixpkgs/lib/systems/supported.nix b/third_party/nixpkgs/lib/systems/supported.nix index 60bf307413..ef429454f0 100644 --- a/third_party/nixpkgs/lib/systems/supported.nix +++ b/third_party/nixpkgs/lib/systems/supported.nix @@ -16,6 +16,7 @@ rec { ]; tier3 = [ + "aarch64-darwin" "armv6l-linux" "armv7l-linux" "i686-linux" diff --git a/third_party/nixpkgs/maintainers/maintainer-list.nix b/third_party/nixpkgs/maintainers/maintainer-list.nix index e34f9e823e..2e4da00480 100644 --- a/third_party/nixpkgs/maintainers/maintainer-list.nix +++ b/third_party/nixpkgs/maintainers/maintainer-list.nix @@ -12245,6 +12245,12 @@ githubId = 4113027; name = "Jesper Geertsen Jonsson"; }; + yinfeng = { + email = "lin.yinfeng@outlook.com"; + github = "linyinfeng"; + githubId = 11229748; + name = "Lin Yinfeng"; + }; ylwghst = { email = "ylwghst@onionmail.info"; github = "ylwghst"; diff --git a/third_party/nixpkgs/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml b/third_party/nixpkgs/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml index 98fe3513e2..25f984f937 100644 --- a/third_party/nixpkgs/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml +++ b/third_party/nixpkgs/nixos/doc/manual/from_md/release-notes/rl-2111.section.xml @@ -321,6 +321,14 @@ programs.pantheon-tweaks. + + + joycond, + a service that uses hid-nintendo to provide + nintendo joycond pairing and better nintendo switch pro + controller support. + +
diff --git a/third_party/nixpkgs/nixos/doc/manual/release-notes/rl-2111.section.md b/third_party/nixpkgs/nixos/doc/manual/release-notes/rl-2111.section.md index fef42ec52c..40a671e3ef 100644 --- a/third_party/nixpkgs/nixos/doc/manual/release-notes/rl-2111.section.md +++ b/third_party/nixpkgs/nixos/doc/manual/release-notes/rl-2111.section.md @@ -99,6 +99,8 @@ In addition to numerous new and upgraded packages, this release has the followin - [pantheon-tweaks](https://github.com/pantheon-tweaks/pantheon-tweaks), an unofficial system settings panel for Pantheon. Available as [programs.pantheon-tweaks](#opt-programs.pantheon-tweaks.enable). +- [joycond](https://github.com/DanielOgorchock/joycond), a service that uses `hid-nintendo` to provide nintendo joycond pairing and better nintendo switch pro controller support. + ## Backward Incompatibilities {#sec-release-21.11-incompatibilities} - The `security.wrappers` option now requires to always specify an owner, group and whether the setuid/setgid bit should be set. diff --git a/third_party/nixpkgs/nixos/lib/test-driver/test-driver.py b/third_party/nixpkgs/nixos/lib/test-driver/test-driver.py index f8502188bd..56c510c4e6 100755 --- a/third_party/nixpkgs/nixos/lib/test-driver/test-driver.py +++ b/third_party/nixpkgs/nixos/lib/test-driver/test-driver.py @@ -21,7 +21,6 @@ import shutil import socket import subprocess import sys -import telnetlib import tempfile import time import unicodedata @@ -89,55 +88,6 @@ CHAR_TO_KEY = { ")": "shift-0x0B", } -global log, machines, test_script - - -def eprint(*args: object, **kwargs: Any) -> None: - print(*args, file=sys.stderr, **kwargs) - - -def make_command(args: list) -> str: - return " ".join(map(shlex.quote, (map(str, args)))) - - -def create_vlan(vlan_nr: str) -> Tuple[str, str, "subprocess.Popen[bytes]", Any]: - log.log("starting VDE switch for network {}".format(vlan_nr)) - vde_socket = tempfile.mkdtemp( - prefix="nixos-test-vde-", suffix="-vde{}.ctl".format(vlan_nr) - ) - pty_master, pty_slave = pty.openpty() - vde_process = subprocess.Popen( - ["vde_switch", "-s", vde_socket, "--dirmode", "0700"], - stdin=pty_slave, - stdout=subprocess.PIPE, - stderr=subprocess.PIPE, - shell=False, - ) - fd = os.fdopen(pty_master, "w") - fd.write("version\n") - # TODO: perl version checks if this can be read from - # an if not, dies. we could hang here forever. Fix it. - assert vde_process.stdout is not None - vde_process.stdout.readline() - if not os.path.exists(os.path.join(vde_socket, "ctl")): - raise Exception("cannot start vde_switch") - - return (vlan_nr, vde_socket, vde_process, fd) - - -def retry(fn: Callable, timeout: int = 900) -> None: - """Call the given function repeatedly, with 1 second intervals, - until it returns True or a timeout is reached. - """ - - for _ in range(timeout): - if fn(False): - return - time.sleep(1) - - if not fn(True): - raise Exception(f"action timed out after {timeout} seconds") - class Logger: def __init__(self) -> None: @@ -151,6 +101,10 @@ class Logger: self._print_serial_logs = True + @staticmethod + def _eprint(*args: object, **kwargs: Any) -> None: + print(*args, file=sys.stderr, **kwargs) + def close(self) -> None: self.xml.endElement("logfile") self.xml.endDocument() @@ -169,15 +123,27 @@ class Logger: self.xml.characters(message) self.xml.endElement("line") + def info(self, *args, **kwargs) -> None: # type: ignore + self.log(*args, **kwargs) + + def warning(self, *args, **kwargs) -> None: # type: ignore + self.log(*args, **kwargs) + + def error(self, *args, **kwargs) -> None: # type: ignore + self.log(*args, **kwargs) + sys.exit(1) + def log(self, message: str, attributes: Dict[str, str] = {}) -> None: - eprint(self.maybe_prefix(message, attributes)) + self._eprint(self.maybe_prefix(message, attributes)) self.drain_log_queue() self.log_line(message, attributes) def log_serial(self, message: str, machine: str) -> None: self.enqueue({"msg": message, "machine": machine, "type": "serial"}) if self._print_serial_logs: - eprint(Style.DIM + "{} # {}".format(machine, message) + Style.RESET_ALL) + self._eprint( + Style.DIM + "{} # {}".format(machine, message) + Style.RESET_ALL + ) def enqueue(self, item: Dict[str, str]) -> None: self.queue.put(item) @@ -194,7 +160,7 @@ class Logger: @contextmanager def nested(self, message: str, attributes: Dict[str, str] = {}) -> Iterator[None]: - eprint(self.maybe_prefix(message, attributes)) + self._eprint(self.maybe_prefix(message, attributes)) self.xml.startElement("nest", attrs={}) self.xml.startElement("head", attributes) @@ -211,6 +177,27 @@ class Logger: self.xml.endElement("nest") +rootlog = Logger() + + +def make_command(args: list) -> str: + return " ".join(map(shlex.quote, (map(str, args)))) + + +def retry(fn: Callable, timeout: int = 900) -> None: + """Call the given function repeatedly, with 1 second intervals, + until it returns True or a timeout is reached. + """ + + for _ in range(timeout): + if fn(False): + return + time.sleep(1) + + if not fn(True): + raise Exception(f"action timed out after {timeout} seconds") + + def _perform_ocr_on_screenshot( screenshot_path: str, model_ids: Iterable[int] ) -> List[str]: @@ -242,113 +229,256 @@ def _perform_ocr_on_screenshot( return model_results +class StartCommand: + """The Base Start Command knows how to append the necesary + runtime qemu options as determined by a particular test driver + run. Any such start command is expected to happily receive and + append additional qemu args. + """ + + _cmd: str + + def cmd( + self, + monitor_socket_path: pathlib.Path, + shell_socket_path: pathlib.Path, + allow_reboot: bool = False, # TODO: unused, legacy? + ) -> str: + display_opts = "" + display_available = any(x in os.environ for x in ["DISPLAY", "WAYLAND_DISPLAY"]) + if not display_available: + display_opts += " -nographic" + + # qemu options + qemu_opts = "" + qemu_opts += ( + "" + if allow_reboot + else " -no-reboot" + " -device virtio-serial" + " -device virtconsole,chardev=shell" + " -device virtio-rng-pci" + " -serial stdio" + ) + # TODO: qemu script already catpures this env variable, legacy? + qemu_opts += " " + os.environ.get("QEMU_OPTS", "") + + return ( + f"{self._cmd}" + f" -monitor unix:{monitor_socket_path}" + f" -chardev socket,id=shell,path={shell_socket_path}" + f"{qemu_opts}" + f"{display_opts}" + ) + + @staticmethod + def build_environment( + state_dir: pathlib.Path, + shared_dir: pathlib.Path, + ) -> dict: + # We make a copy to not update the current environment + env = dict(os.environ) + env.update( + { + "TMPDIR": str(state_dir), + "SHARED_DIR": str(shared_dir), + "USE_TMPDIR": "1", + } + ) + return env + + def run( + self, + state_dir: pathlib.Path, + shared_dir: pathlib.Path, + monitor_socket_path: pathlib.Path, + shell_socket_path: pathlib.Path, + ) -> subprocess.Popen: + return subprocess.Popen( + self.cmd(monitor_socket_path, shell_socket_path), + stdin=subprocess.DEVNULL, + stdout=subprocess.PIPE, + stderr=subprocess.STDOUT, + shell=True, + cwd=state_dir, + env=self.build_environment(state_dir, shared_dir), + ) + + +class NixStartScript(StartCommand): + """A start script from nixos/modules/virtualiation/qemu-vm.nix + that also satisfies the requirement of the BaseStartCommand. + These Nix commands have the particular charactersitic that the + machine name can be extracted out of them via a regex match. + (Admittedly a _very_ implicit contract, evtl. TODO fix) + """ + + def __init__(self, script: str): + self._cmd = script + + @property + def machine_name(self) -> str: + match = re.search("run-(.+)-vm$", self._cmd) + name = "machine" + if match: + name = match.group(1) + return name + + +class LegacyStartCommand(StartCommand): + """Used in some places to create an ad-hoc machine instead of + using nix test instrumentation + module system for that purpose. + Legacy. + """ + + def __init__( + self, + netBackendArgs: Optional[str] = None, + netFrontendArgs: Optional[str] = None, + hda: Optional[Tuple[pathlib.Path, str]] = None, + cdrom: Optional[str] = None, + usb: Optional[str] = None, + bios: Optional[str] = None, + qemuFlags: Optional[str] = None, + ): + self._cmd = "qemu-kvm -m 384" + + # networking + net_backend = "-netdev user,id=net0" + net_frontend = "-device virtio-net-pci,netdev=net0" + if netBackendArgs is not None: + net_backend += "," + netBackendArgs + if netFrontendArgs is not None: + net_frontend += "," + netFrontendArgs + self._cmd += f" {net_backend} {net_frontend}" + + # hda + hda_cmd = "" + if hda is not None: + hda_path = hda[0].resolve() + hda_interface = hda[1] + if hda_interface == "scsi": + hda_cmd += ( + f" -drive id=hda,file={hda_path},werror=report,if=none" + " -device scsi-hd,drive=hda" + ) + else: + hda_cmd += f" -drive file={hda_path},if={hda_interface},werror=report" + self._cmd += hda_cmd + + # cdrom + if cdrom is not None: + self._cmd += f" -cdrom {cdrom}" + + # usb + usb_cmd = "" + if usb is not None: + # https://github.com/qemu/qemu/blob/master/docs/usb2.txt + usb_cmd += ( + " -device usb-ehci" + f" -drive id=usbdisk,file={usb},if=none,readonly" + " -device usb-storage,drive=usbdisk " + ) + self._cmd += usb_cmd + + # bios + if bios is not None: + self._cmd += f" -bios {bios}" + + # qemu flags + if qemuFlags is not None: + self._cmd += f" {qemuFlags}" + + class Machine: + """A handle to the machine with this name, that also knows how to manage + the machine lifecycle with the help of a start script / command.""" + + name: str + tmp_dir: pathlib.Path + shared_dir: pathlib.Path + state_dir: pathlib.Path + monitor_path: pathlib.Path + shell_path: pathlib.Path + + start_command: StartCommand + keep_vm_state: bool + allow_reboot: bool + + process: Optional[subprocess.Popen] = None + pid: Optional[int] = None + monitor: Optional[socket.socket] = None + shell: Optional[socket.socket] = None + + booted: bool = False + connected: bool = False + # Store last serial console lines for use + # of wait_for_console_text + last_lines: Queue = Queue() + def __repr__(self) -> str: return f"" - def __init__(self, args: Dict[str, Any]) -> None: - if "name" in args: - self.name = args["name"] - else: - self.name = "machine" - cmd = args.get("startCommand", None) - if cmd: - match = re.search("run-(.+)-vm$", cmd) - if match: - self.name = match.group(1) - self.logger = args["log"] - self.script = args.get("startCommand", self.create_startcommand(args)) + def __init__( + self, + tmp_dir: pathlib.Path, + start_command: StartCommand, + name: str = "machine", + keep_vm_state: bool = False, + allow_reboot: bool = False, + ) -> None: + self.tmp_dir = tmp_dir + self.keep_vm_state = keep_vm_state + self.allow_reboot = allow_reboot + self.name = name + self.start_command = start_command - tmp_dir = os.environ.get("TMPDIR", tempfile.gettempdir()) + # set up directories + self.shared_dir = self.tmp_dir / "shared-xchg" + self.shared_dir.mkdir(mode=0o700, exist_ok=True) - def create_dir(name: str) -> str: - path = os.path.join(tmp_dir, name) - os.makedirs(path, mode=0o700, exist_ok=True) - return path - - self.state_dir = os.path.join(tmp_dir, f"vm-state-{self.name}") - if not args.get("keepVmState", False): + self.state_dir = self.tmp_dir / f"vm-state-{self.name}" + self.monitor_path = self.state_dir / "monitor" + self.shell_path = self.state_dir / "shell" + if (not self.keep_vm_state) and self.state_dir.exists(): self.cleanup_statedir() - os.makedirs(self.state_dir, mode=0o700, exist_ok=True) - self.shared_dir = create_dir("shared-xchg") - - self.booted = False - self.connected = False - self.pid: Optional[int] = None - self.socket = None - self.monitor: Optional[socket.socket] = None - self.allow_reboot = args.get("allowReboot", False) + self.state_dir.mkdir(mode=0o700, exist_ok=True) @staticmethod - def create_startcommand(args: Dict[str, str]) -> str: - net_backend = "-netdev user,id=net0" - net_frontend = "-device virtio-net-pci,netdev=net0" - - if "netBackendArgs" in args: - net_backend += "," + args["netBackendArgs"] - - if "netFrontendArgs" in args: - net_frontend += "," + args["netFrontendArgs"] - - start_command = ( - args.get("qemuBinary", "qemu-kvm") - + " -m 384 " - + net_backend - + " " - + net_frontend - + " $QEMU_OPTS " + def create_startcommand(args: Dict[str, str]) -> StartCommand: + rootlog.warning( + "Using legacy create_startcommand()," + "please use proper nix test vm instrumentation, instead" + "to generate the appropriate nixos test vm qemu startup script" + ) + hda = None + if args.get("hda"): + hda_arg: str = args.get("hda", "") + hda_arg_path: pathlib.Path = pathlib.Path(hda_arg) + hda = (hda_arg_path, args.get("hdaInterface", "")) + return LegacyStartCommand( + netBackendArgs=args.get("netBackendArgs"), + netFrontendArgs=args.get("netFrontendArgs"), + hda=hda, + cdrom=args.get("cdrom"), + usb=args.get("usb"), + bios=args.get("bios"), + qemuFlags=args.get("qemuFlags"), ) - - if "hda" in args: - hda_path = os.path.abspath(args["hda"]) - if args.get("hdaInterface", "") == "scsi": - start_command += ( - "-drive id=hda,file=" - + hda_path - + ",werror=report,if=none " - + "-device scsi-hd,drive=hda " - ) - else: - start_command += ( - "-drive file=" - + hda_path - + ",if=" - + args["hdaInterface"] - + ",werror=report " - ) - - if "cdrom" in args: - start_command += "-cdrom " + args["cdrom"] + " " - - if "usb" in args: - # https://github.com/qemu/qemu/blob/master/docs/usb2.txt - start_command += ( - "-device usb-ehci -drive " - + "id=usbdisk,file=" - + args["usb"] - + ",if=none,readonly " - + "-device usb-storage,drive=usbdisk " - ) - if "bios" in args: - start_command += "-bios " + args["bios"] + " " - - start_command += args.get("qemuFlags", "") - - return start_command def is_up(self) -> bool: return self.booted and self.connected def log(self, msg: str) -> None: - self.logger.log(msg, {"machine": self.name}) + rootlog.log(msg, {"machine": self.name}) def log_serial(self, msg: str) -> None: - self.logger.log_serial(msg, self.name) + rootlog.log_serial(msg, self.name) def nested(self, msg: str, attrs: Dict[str, str] = {}) -> _GeneratorContextManager: my_attrs = {"machine": self.name} my_attrs.update(attrs) - return self.logger.nested(msg, my_attrs) + return rootlog.nested(msg, my_attrs) def wait_for_monitor_prompt(self) -> str: assert self.monitor is not None @@ -446,6 +576,7 @@ class Machine: self.connect() out_command = "( set -euo pipefail; {} ); echo '|!=EOF' $?\n".format(command) + assert self.shell self.shell.send(out_command.encode()) output = "" @@ -466,6 +597,8 @@ class Machine: Should only be used during test development, not in the production test.""" self.connect() self.log("Terminal is ready (there is no prompt):") + + assert self.shell subprocess.run( ["socat", "READLINE", f"FD:{self.shell.fileno()}"], pass_fds=[self.shell.fileno()], @@ -534,6 +667,7 @@ class Machine: with self.nested("waiting for the VM to power off"): sys.stdout.flush() + assert self.process self.process.wait() self.pid = None @@ -611,6 +745,8 @@ class Machine: with self.nested("waiting for the VM to finish booting"): self.start() + assert self.shell + tic = time.time() self.shell.recv(1024) # TODO: Timeout @@ -750,65 +886,35 @@ class Machine: self.log("starting vm") - def create_socket(path: str) -> socket.socket: - if os.path.exists(path): - os.unlink(path) + def clear(path: pathlib.Path) -> pathlib.Path: + if path.exists(): + path.unlink() + return path + + def create_socket(path: pathlib.Path) -> socket.socket: s = socket.socket(family=socket.AF_UNIX, type=socket.SOCK_STREAM) - s.bind(path) + s.bind(str(path)) s.listen(1) return s - monitor_path = os.path.join(self.state_dir, "monitor") - self.monitor_socket = create_socket(monitor_path) - - shell_path = os.path.join(self.state_dir, "shell") - self.shell_socket = create_socket(shell_path) - - display_available = any(x in os.environ for x in ["DISPLAY", "WAYLAND_DISPLAY"]) - qemu_options = ( - " ".join( - [ - "" if self.allow_reboot else "-no-reboot", - "-monitor unix:{}".format(monitor_path), - "-chardev socket,id=shell,path={}".format(shell_path), - "-device virtio-serial", - "-device virtconsole,chardev=shell", - "-device virtio-rng-pci", - "-serial stdio" if display_available else "-nographic", - ] - ) - + " " - + os.environ.get("QEMU_OPTS", "") + monitor_socket = create_socket(clear(self.monitor_path)) + shell_socket = create_socket(clear(self.shell_path)) + self.process = self.start_command.run( + self.state_dir, + self.shared_dir, + self.monitor_path, + self.shell_path, ) - - environment = dict(os.environ) - environment.update( - { - "TMPDIR": self.state_dir, - "SHARED_DIR": self.shared_dir, - "USE_TMPDIR": "1", - "QEMU_OPTS": qemu_options, - } - ) - - self.process = subprocess.Popen( - self.script, - stdin=subprocess.DEVNULL, - stdout=subprocess.PIPE, - stderr=subprocess.STDOUT, - shell=True, - cwd=self.state_dir, - env=environment, - ) - self.monitor, _ = self.monitor_socket.accept() - self.shell, _ = self.shell_socket.accept() + self.monitor, _ = monitor_socket.accept() + self.shell, _ = shell_socket.accept() # Store last serial console lines for use # of wait_for_console_text self.last_lines: Queue = Queue() def process_serial_output() -> None: - assert self.process.stdout is not None + assert self.process + assert self.process.stdout for _line in self.process.stdout: # Ignore undecodable bytes that may occur in boot menus line = _line.decode(errors="ignore").replace("\r", "").rstrip() @@ -825,15 +931,15 @@ class Machine: self.log("QEMU running (pid {})".format(self.pid)) def cleanup_statedir(self) -> None: - if os.path.isdir(self.state_dir): - shutil.rmtree(self.state_dir) - self.logger.log(f"deleting VM state directory {self.state_dir}") - self.logger.log("if you want to keep the VM state, pass --keep-vm-state") + shutil.rmtree(self.state_dir) + rootlog.log(f"deleting VM state directory {self.state_dir}") + rootlog.log("if you want to keep the VM state, pass --keep-vm-state") def shutdown(self) -> None: if not self.booted: return + assert self.shell self.shell.send("poweroff\n".encode()) self.wait_for_shutdown() @@ -908,41 +1014,215 @@ class Machine: """Make the machine reachable.""" self.send_monitor_command("set_link virtio-net-pci.1 on") - -def create_machine(args: Dict[str, Any]) -> Machine: - args["log"] = log - return Machine(args) + def release(self) -> None: + if self.pid is None: + return + rootlog.info(f"kill machine (pid {self.pid})") + assert self.process + assert self.shell + assert self.monitor + self.process.terminate() + self.shell.close() + self.monitor.close() -def start_all() -> None: - with log.nested("starting all VMs"): - for machine in machines: - machine.start() +class VLan: + """This class handles a VLAN that the run-vm scripts identify via its + number handles. The network's lifetime equals the object's lifetime. + """ + + nr: int + socket_dir: pathlib.Path + + process: subprocess.Popen + pid: int + fd: io.TextIOBase + + def __repr__(self) -> str: + return f"" + + def __init__(self, nr: int, tmp_dir: pathlib.Path): + self.nr = nr + self.socket_dir = tmp_dir / f"vde{self.nr}.ctl" + + # TODO: don't side-effect environment here + os.environ[f"QEMU_VDE_SOCKET_{self.nr}"] = str(self.socket_dir) + + rootlog.info("start vlan") + pty_master, pty_slave = pty.openpty() + + self.process = subprocess.Popen( + ["vde_switch", "-s", self.socket_dir, "--dirmode", "0700"], + stdin=pty_slave, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, + shell=False, + ) + self.pid = self.process.pid + self.fd = os.fdopen(pty_master, "w") + self.fd.write("version\n") + + # TODO: perl version checks if this can be read from + # an if not, dies. we could hang here forever. Fix it. + assert self.process.stdout is not None + self.process.stdout.readline() + if not (self.socket_dir / "ctl").exists(): + rootlog.error("cannot start vde_switch") + + rootlog.info(f"running vlan (pid {self.pid})") + + def __del__(self) -> None: + rootlog.info(f"kill vlan (pid {self.pid})") + self.fd.close() + self.process.terminate() -def join_all() -> None: - with log.nested("waiting for all VMs to finish"): - for machine in machines: - machine.wait_for_shutdown() +class Driver: + """A handle to the driver that sets up the environment + and runs the tests""" + tests: str + vlans: List[VLan] + machines: List[Machine] -def run_tests(interactive: bool = False) -> None: - if interactive: - ptpython.repl.embed(test_symbols(), {}) - else: - test_script() + def __init__( + self, + start_scripts: List[str], + vlans: List[int], + tests: str, + keep_vm_state: bool = False, + ): + self.tests = tests + + tmp_dir = pathlib.Path(os.environ.get("TMPDIR", tempfile.gettempdir())) + tmp_dir.mkdir(mode=0o700, exist_ok=True) + + with rootlog.nested("start all VLans"): + self.vlans = [VLan(nr, tmp_dir) for nr in vlans] + + def cmd(scripts: List[str]) -> Iterator[NixStartScript]: + for s in scripts: + yield NixStartScript(s) + + self.machines = [ + Machine( + start_command=cmd, + keep_vm_state=keep_vm_state, + name=cmd.machine_name, + tmp_dir=tmp_dir, + ) + for cmd in cmd(start_scripts) + ] + + @atexit.register + def clean_up() -> None: + with rootlog.nested("clean up"): + for machine in self.machines: + machine.release() + + def subtest(self, name: str) -> Iterator[None]: + """Group logs under a given test name""" + with rootlog.nested(name): + try: + yield + return True + except: + rootlog.error(f'Test "{name}" failed with error:') + raise + + def test_symbols(self) -> Dict[str, Any]: + @contextmanager + def subtest(name: str) -> Iterator[None]: + return self.subtest(name) + + general_symbols = dict( + start_all=self.start_all, + test_script=self.test_script, + machines=self.machines, + vlans=self.vlans, + driver=self, + log=rootlog, + os=os, + create_machine=self.create_machine, + subtest=subtest, + run_tests=self.run_tests, + join_all=self.join_all, + retry=retry, + serial_stdout_off=self.serial_stdout_off, + serial_stdout_on=self.serial_stdout_on, + Machine=Machine, # for typing + ) + machine_symbols = { + m.name: self.machines[idx] for idx, m in enumerate(self.machines) + } + vlan_symbols = { + f"vlan{v.nr}": self.vlans[idx] for idx, v in enumerate(self.vlans) + } + print( + "additionally exposed symbols:\n " + + ", ".join(map(lambda m: m.name, self.machines)) + + ",\n " + + ", ".join(map(lambda v: f"vlan{v.nr}", self.vlans)) + + ",\n " + + ", ".join(list(general_symbols.keys())) + ) + return {**general_symbols, **machine_symbols, **vlan_symbols} + + def test_script(self) -> None: + """Run the test script""" + with rootlog.nested("run the VM test script"): + symbols = self.test_symbols() # call eagerly + exec(self.tests, symbols, None) + + def run_tests(self) -> None: + """Run the test script (for non-interactive test runs)""" + self.test_script() # TODO: Collect coverage data - for machine in machines: + for machine in self.machines: if machine.is_up(): machine.execute("sync") + def start_all(self) -> None: + """Start all machines""" + with rootlog.nested("start all VMs"): + for machine in self.machines: + machine.start() -def serial_stdout_on() -> None: - log._print_serial_logs = True + def join_all(self) -> None: + """Wait for all machines to shut down""" + with rootlog.nested("wait for all VMs to finish"): + for machine in self.machines: + machine.wait_for_shutdown() + def create_machine(self, args: Dict[str, Any]) -> Machine: + rootlog.warning( + "Using legacy create_machine(), please instantiate the" + "Machine class directly, instead" + ) + tmp_dir = pathlib.Path(os.environ.get("TMPDIR", tempfile.gettempdir())) + tmp_dir.mkdir(mode=0o700, exist_ok=True) -def serial_stdout_off() -> None: - log._print_serial_logs = False + if args.get("startCommand"): + start_command: str = args.get("startCommand", "") + cmd = NixStartScript(start_command) + name = args.get("name", cmd.machine_name) + else: + cmd = Machine.create_startcommand(args) # type: ignore + name = args.get("name", "machine") + + return Machine( + tmp_dir=tmp_dir, + start_command=cmd, + name=name, + keep_vm_state=args.get("keep_vm_state", False), + allow_reboot=args.get("allow_reboot", False), + ) + + def serial_stdout_on(self) -> None: + rootlog._print_serial_logs = True + + def serial_stdout_off(self) -> None: + rootlog._print_serial_logs = False class EnvDefault(argparse.Action): @@ -970,52 +1250,6 @@ class EnvDefault(argparse.Action): setattr(namespace, self.dest, values) -@contextmanager -def subtest(name: str) -> Iterator[None]: - with log.nested(name): - try: - yield - return True - except Exception as e: - log.log(f'Test "{name}" failed with error: "{e}"') - raise e - - return False - - -def _test_symbols() -> Dict[str, Any]: - general_symbols = dict( - start_all=start_all, - test_script=globals().get("test_script"), # same - machines=globals().get("machines"), # without being initialized - log=globals().get("log"), # extracting those symbol keys - os=os, - create_machine=create_machine, - subtest=subtest, - run_tests=run_tests, - join_all=join_all, - retry=retry, - serial_stdout_off=serial_stdout_off, - serial_stdout_on=serial_stdout_on, - Machine=Machine, # for typing - ) - return general_symbols - - -def test_symbols() -> Dict[str, Any]: - - general_symbols = _test_symbols() - - machine_symbols = {m.name: machines[idx] for idx, m in enumerate(machines)} - print( - "additionally exposed symbols:\n " - + ", ".join(map(lambda m: m.name, machines)) - + ",\n " - + ", ".join(list(general_symbols.keys())) - ) - return {**general_symbols, **machine_symbols} - - if __name__ == "__main__": arg_parser = argparse.ArgumentParser(prog="nixos-test-driver") arg_parser.add_argument( @@ -1055,44 +1289,18 @@ if __name__ == "__main__": ) args = arg_parser.parse_args() - testscript = pathlib.Path(args.testscript).read_text() - global log, machines, test_script + if not args.keep_vm_state: + rootlog.info("Machine state will be reset. To keep it, pass --keep-vm-state") - log = Logger() + driver = Driver( + args.start_scripts, args.vlans, args.testscript.read_text(), args.keep_vm_state + ) - vde_sockets = [create_vlan(v) for v in args.vlans] - for nr, vde_socket, _, _ in vde_sockets: - os.environ["QEMU_VDE_SOCKET_{}".format(nr)] = vde_socket - - machines = [ - create_machine({"startCommand": s, "keepVmState": args.keep_vm_state}) - for s in args.start_scripts - ] - machine_eval = [ - "{0} = machines[{1}]".format(m.name, idx) for idx, m in enumerate(machines) - ] - exec("\n".join(machine_eval)) - - @atexit.register - def clean_up() -> None: - with log.nested("cleaning up"): - for machine in machines: - if machine.pid is None: - continue - log.log("killing {} (pid {})".format(machine.name, machine.pid)) - machine.process.kill() - for _, _, process, _ in vde_sockets: - process.terminate() - log.close() - - def test_script() -> None: - with log.nested("running the VM test script"): - symbols = test_symbols() # call eagerly - exec(testscript, symbols, None) - - interactive = args.interactive or (not bool(testscript)) - tic = time.time() - run_tests(interactive) - toc = time.time() - print("test script finished in {:.2f}s".format(toc - tic)) + if args.interactive: + ptpython.repl.embed(driver.test_symbols(), {}) + else: + tic = time.time() + driver.run_tests() + toc = time.time() + rootlog.info(f"test script finished in {(toc-tic):.2f}s") diff --git a/third_party/nixpkgs/nixos/lib/testing-python.nix b/third_party/nixpkgs/nixos/lib/testing-python.nix index a1c3624d14..dbba9e4c44 100644 --- a/third_party/nixpkgs/nixos/lib/testing-python.nix +++ b/third_party/nixpkgs/nixos/lib/testing-python.nix @@ -43,7 +43,8 @@ rec { from pydoc import importfile with open('driver-symbols', 'w') as fp: t = importfile('${testDriverScript}') - test_symbols = t._test_symbols() + d = t.Driver([],[],"") + test_symbols = d.test_symbols() fp.write(','.join(test_symbols.keys())) EOF ''; @@ -188,14 +189,6 @@ rec { --set startScripts "''${vmStartScripts[*]}" \ --set testScript "$out/test-script" \ --set vlans '${toString vlans}' - - ${lib.optionalString (testScript == "") '' - ln -s ${testDriver}/bin/nixos-test-driver $out/bin/nixos-run-vms - wrapProgram $out/bin/nixos-run-vms \ - --set startScripts "''${vmStartScripts[*]}" \ - --set testScript "${pkgs.writeText "start-all" "start_all(); join_all();"}" \ - --set vlans '${toString vlans}' - ''} ''); # Make a full-blown test diff --git a/third_party/nixpkgs/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix b/third_party/nixpkgs/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix index e49ceba242..8aedce2fb4 100644 --- a/third_party/nixpkgs/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix +++ b/third_party/nixpkgs/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix @@ -8,11 +8,21 @@ let _file = "${networkExpr}@node-${vm}"; imports = [ module ]; }) (import networkExpr); + + pkgs = import ../../../../.. { inherit system config; }; + + testing = import ../../../../lib/testing-python.nix { + inherit system pkgs; + }; + + interactiveDriver = (testing.makeTest { inherit nodes; testScript = "start_all(); join_all();"; }).driverInteractive; in -with import ../../../../lib/testing-python.nix { - inherit system; - pkgs = import ../../../../.. { inherit system config; }; -}; -(makeTest { inherit nodes; testScript = ""; }).driverInteractive +pkgs.runCommand "nixos-build-vms" { nativeBuildInputs = [ pkgs.makeWrapper ]; } '' + mkdir -p $out/bin + ln -s ${interactiveDriver}/bin/nixos-test-driver $out/bin/nixos-test-driver + ln -s ${interactiveDriver}/bin/nixos-test-driver $out/bin/nixos-run-vms + wrapProgram $out/bin/nixos-test-driver \ + --add-flags "--interactive" +'' diff --git a/third_party/nixpkgs/nixos/modules/module-list.nix b/third_party/nixpkgs/nixos/modules/module-list.nix index 36e2131f2d..f701f38c9d 100644 --- a/third_party/nixpkgs/nixos/modules/module-list.nix +++ b/third_party/nixpkgs/nixos/modules/module-list.nix @@ -412,6 +412,7 @@ ./services/hardware/illum.nix ./services/hardware/interception-tools.nix ./services/hardware/irqbalance.nix + ./services/hardware/joycond.nix ./services/hardware/lcd.nix ./services/hardware/lirc.nix ./services/hardware/nvidia-optimus.nix @@ -543,6 +544,7 @@ ./services/misc/matrix-appservice-discord.nix ./services/misc/matrix-appservice-irc.nix ./services/misc/matrix-synapse.nix + ./services/misc/mautrix-facebook.nix ./services/misc/mautrix-telegram.nix ./services/misc/mbpfan.nix ./services/misc/mediatomb.nix diff --git a/third_party/nixpkgs/nixos/modules/services/hardware/joycond.nix b/third_party/nixpkgs/nixos/modules/services/hardware/joycond.nix new file mode 100644 index 0000000000..ffef4f8a4e --- /dev/null +++ b/third_party/nixpkgs/nixos/modules/services/hardware/joycond.nix @@ -0,0 +1,40 @@ +{ config, lib, pkgs, ... }: + +let + cfg = config.services.joycond; + kernelPackages = config.boot.kernelPackages; +in + +with lib; + +{ + options.services.joycond = { + enable = mkEnableOption "support for Nintendo Pro Controllers and Joycons"; + + package = mkOption { + type = types.package; + default = pkgs.joycond; + defaultText = "pkgs.joycond"; + description = '' + The joycond package to use. + ''; + }; + }; + + config = mkIf cfg.enable { + environment.systemPackages = [ + kernelPackages.hid-nintendo + cfg.package + ]; + + boot.extraModulePackages = [ kernelPackages.hid-nintendo ]; + boot.kernelModules = [ "hid_nintendo" ]; + + services.udev.packages = [ cfg.package ]; + + systemd.packages = [ cfg.package ]; + + # Workaround for https://github.com/NixOS/nixpkgs/issues/81138 + systemd.services.joycond.wantedBy = [ "multi-user.target" ]; + }; +} diff --git a/third_party/nixpkgs/nixos/modules/services/misc/mautrix-facebook.nix b/third_party/nixpkgs/nixos/modules/services/misc/mautrix-facebook.nix new file mode 100644 index 0000000000..e046c791ac --- /dev/null +++ b/third_party/nixpkgs/nixos/modules/services/misc/mautrix-facebook.nix @@ -0,0 +1,195 @@ +{ config, pkgs, lib, ... }: + +with lib; + +let + cfg = config.services.mautrix-facebook; + settingsFormat = pkgs.formats.json {}; + settingsFile = settingsFormat.generate "mautrix-facebook-config.json" cfg.settings; + + puppetRegex = concatStringsSep + ".*" + (map + escapeRegex + (splitString + "{userid}" + cfg.settings.bridge.username_template)); +in { + options = { + services.mautrix-facebook = { + enable = mkEnableOption "Mautrix-Facebook, a Matrix-Facebook hybrid puppeting/relaybot bridge"; + + settings = mkOption rec { + apply = recursiveUpdate default; + type = settingsFormat.type; + default = { + homeserver = { + address = "http://localhost:8008"; + }; + + appservice = rec { + address = "http://${hostname}:${toString port}"; + hostname = "localhost"; + port = 29319; + + database = "postgresql://"; + + bot_username = "facebookbot"; + }; + + metrics.enabled = false; + manhole.enabled = false; + + bridge = { + encryption = { + allow = true; + default = true; + }; + username_template = "facebook_{userid}"; + }; + + logging = { + version = 1; + formatters.journal_fmt.format = "%(name)s: %(message)s"; + handlers.journal = { + class = "systemd.journal.JournalHandler"; + formatter = "journal_fmt"; + SYSLOG_IDENTIFIER = "mautrix-facebook"; + }; + root = { + level = "INFO"; + handlers = ["journal"]; + }; + }; + }; + example = literalExpression '' + { + homeserver = { + address = "http://localhost:8008"; + domain = "mydomain.example"; + }; + + bridge.permissions = { + "@admin:mydomain.example" = "admin"; + "mydomain.example" = "user"; + }; + } + ''; + description = '' + config.yaml configuration as a Nix attribute set. + Configuration options should match those described in + + example-config.yaml. + + + + Secret tokens should be specified using + instead of this world-readable attribute set. + ''; + }; + + environmentFile = mkOption { + type = types.nullOr types.path; + default = null; + description = '' + File containing environment variables to be passed to the mautrix-telegram service. + + Any config variable can be overridden by setting MAUTRIX_FACEBOOK_SOME_KEY to override the some.key variable. + ''; + }; + + configurePostgresql = mkOption { + type = types.bool; + default = true; + description = '' + Enable PostgreSQL and create a user and database for mautrix-facebook. The default settings reference this database, if you disable this option you must provide a database URL. + ''; + }; + + registrationData = mkOption { + type = types.attrs; + default = {}; + description = '' + Output data for appservice registration. Simply make any desired changes and serialize to JSON. Note that this data contains secrets so think twice before putting it into the nix store. + + Currently as_token and hs_token need to be added as they are not known to this module. + ''; + }; + }; + }; + + config = mkIf cfg.enable { + users.users.mautrix-facebook = { + group = "mautrix-facebook"; + isSystemUser = true; + }; + + services.postgresql = mkIf cfg.configurePostgresql { + ensureDatabases = ["mautrix-facebook"]; + ensureUsers = [{ + name = "mautrix-facebook"; + ensurePermissions = { + "DATABASE \"mautrix-facebook\"" = "ALL PRIVILEGES"; + }; + }]; + }; + + systemd.services.mautrix-facebook = rec { + wantedBy = [ "multi-user.target" ]; + wants = [ + "network-online.target" + ] ++ optional config.services.matrix-synapse.enable "matrix-synapse.service" + ++ optional cfg.configurePostgresql "postgresql.service"; + after = wants; + + serviceConfig = { + Type = "simple"; + Restart = "always"; + + User = "mautrix-facebook"; + + ProtectSystem = "strict"; + ProtectHome = true; + ProtectKernelTunables = true; + ProtectKernelModules = true; + ProtectControlGroups = true; + PrivateTmp = true; + + EnvironmentFile = cfg.environmentFile; + + ExecStart = '' + ${pkgs.mautrix-facebook}/bin/mautrix-facebook --config=${settingsFile} + ''; + }; + }; + + services.mautrix-facebook = { + registrationData = { + id = "mautrix-facebook"; + + namespaces = { + users = [ + { + exclusive = true; + regex = escapeRegex "@${cfg.settings.appservice.bot_username}:${cfg.settings.homeserver.domain}"; + } + { + exclusive = true; + regex = "@${puppetRegex}:${escapeRegex cfg.settings.homeserver.domain}"; + } + ]; + aliases = []; + }; + + url = cfg.settings.appservice.address; + sender_localpart = "mautrix-facebook-sender"; + + rate_limited = false; + "de.sorunome.msc2409.push_ephemeral" = true; + push_ephemeral = true; + }; + }; + }; + + meta.maintainers = with maintainers; [ kevincox ]; +} diff --git a/third_party/nixpkgs/nixos/modules/services/misc/nix-daemon.nix b/third_party/nixpkgs/nixos/modules/services/misc/nix-daemon.nix index 789d0355b0..8a620887f9 100644 --- a/third_party/nixpkgs/nixos/modules/services/misc/nix-daemon.nix +++ b/third_party/nixpkgs/nixos/modules/services/misc/nix-daemon.nix @@ -82,6 +82,15 @@ in nix = { + enable = mkOption { + type = types.bool; + default = true; + description = '' + Whether to enable Nix. + Disabling Nix makes the system hard to modify and the Nix programs and configuration will not be made available by NixOS itself. + ''; + }; + package = mkOption { type = types.package; default = pkgs.nix; @@ -499,7 +508,7 @@ in ###### implementation - config = { + config = mkIf cfg.enable { nix.binaryCachePublicKeys = [ "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" ]; nix.binaryCaches = [ "https://cache.nixos.org/" ]; diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters.nix index 99dfea6daa..b40d6b3ca0 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters.nix @@ -185,6 +185,28 @@ let serviceConfig.DynamicUser = mkDefault enableDynamicUser; serviceConfig.User = mkDefault conf.user; serviceConfig.Group = conf.group; + # Hardening + serviceConfig.CapabilityBoundingSet = mkDefault [ "" ]; + serviceConfig.DeviceAllow = [ "" ]; + serviceConfig.LockPersonality = true; + serviceConfig.MemoryDenyWriteExecute = true; + serviceConfig.NoNewPrivileges = true; + serviceConfig.PrivateDevices = true; + serviceConfig.ProtectClock = true; + serviceConfig.ProtectControlGroups = true; + serviceConfig.ProtectHome = true; + serviceConfig.ProtectHostname = true; + serviceConfig.ProtectKernelLogs = true; + serviceConfig.ProtectKernelModules = true; + serviceConfig.ProtectKernelTunables = true; + serviceConfig.ProtectSystem = mkDefault "strict"; + serviceConfig.RemoveIPC = true; + serviceConfig.RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ]; + serviceConfig.RestrictNamespaces = true; + serviceConfig.RestrictRealtime = true; + serviceConfig.RestrictSUIDSGID = true; + serviceConfig.SystemCallArchitectures = "native"; + serviceConfig.UMask = "0077"; } serviceOpts ]); }; in diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/bird.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/bird.nix index d8a526eafc..1ef264fc86 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/bird.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/bird.nix @@ -41,6 +41,10 @@ in -format.new=${if cfg.newMetricFormat then "true" else "false"} \ ${concatStringsSep " \\\n " cfg.extraFlags} ''; + RestrictAddressFamilies = [ + # Need AF_UNIX to collect data + "AF_UNIX" + ]; }; }; } diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/dovecot.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/dovecot.nix index 472652fe8a..092ac6fea7 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/dovecot.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/dovecot.nix @@ -83,6 +83,10 @@ in --dovecot.scopes ${concatStringsSep "," cfg.scopes} \ ${concatStringsSep " \\\n " cfg.extraFlags} ''; + RestrictAddressFamilies = [ + # Need AF_UNIX to collect data + "AF_UNIX" + ]; }; }; } diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/kea.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/kea.nix index 0571325c5d..27aeb90962 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/kea.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/kea.nix @@ -34,6 +34,10 @@ in { ${concatStringsSep " \\n" cfg.controlSocketPaths} ''; SupplementaryGroups = [ "kea" ]; + RestrictAddressFamilies = [ + # Need AF_UNIX to collect data + "AF_UNIX" + ]; }; }; } diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/knot.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/knot.nix index 2acaac293b..29e543f101 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/knot.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/knot.nix @@ -45,6 +45,10 @@ in { ${concatStringsSep " \\\n " cfg.extraFlags} ''; SupplementaryGroups = [ "knot" ]; + RestrictAddressFamilies = [ + # Need AF_UNIX to collect data + "AF_UNIX" + ]; }; }; } diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/modemmanager.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/modemmanager.nix index 86ea98b94e..afd03f6c27 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/modemmanager.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/modemmanager.nix @@ -28,6 +28,10 @@ in -rate ${cfg.refreshRate} \ ${concatStringsSep " \\\n " cfg.extraFlags} ''; + RestrictAddressFamilies = [ + # Need AF_UNIX to collect data + "AF_UNIX" + ]; }; }; } diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/postgres.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/postgres.nix index dd3bec8ec1..3f9a32ef39 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/postgres.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/postgres.nix @@ -79,6 +79,10 @@ in --web.telemetry-path ${cfg.telemetryPath} \ ${concatStringsSep " \\\n " cfg.extraFlags} ''; + RestrictAddressFamilies = [ + # Need AF_UNIX to collect data + "AF_UNIX" + ]; }; }; } diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/smokeping.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/smokeping.nix index 0a7bb9c27b..0181c341a7 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/smokeping.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/smokeping.nix @@ -45,6 +45,7 @@ in serviceOpts = { serviceConfig = { AmbientCapabilities = [ "CAP_NET_RAW" ]; + CapabilityBoundingSet = [ "CAP_NET_RAW" ]; ExecStart = '' ${pkgs.prometheus-smokeping-prober}/bin/smokeping_prober \ --web.listen-address ${cfg.listenAddress}:${toString cfg.port} \ diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/sql.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/sql.nix index d9be724ebc..3496fd9541 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/sql.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/sql.nix @@ -99,6 +99,10 @@ in -config.file ${configFile} \ ${concatStringsSep " \\\n " cfg.extraFlags} ''; + RestrictAddressFamilies = [ + # Need AF_UNIX to collect data + "AF_UNIX" + ]; }; }; } diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/systemd.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/systemd.nix index 0514469b8a..c0a50f07d7 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/systemd.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/systemd.nix @@ -13,6 +13,10 @@ in { ${pkgs.prometheus-systemd-exporter}/bin/systemd_exporter \ --web.listen-address ${cfg.listenAddress}:${toString cfg.port} ''; + RestrictAddressFamilies = [ + # Need AF_UNIX to collect data + "AF_UNIX" + ]; }; }; } diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/unbound.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/unbound.nix index 56a559531c..cf0efddd34 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/unbound.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/unbound.nix @@ -49,6 +49,10 @@ in ${optionalString (cfg.controlInterface != null) "--control-interface ${cfg.controlInterface}"} \ ${toString cfg.extraFlags} ''; + RestrictAddressFamilies = [ + # Need AF_UNIX to collect data + "AF_UNIX" + ]; }; }] ++ [ (mkIf config.services.unbound.enable { diff --git a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/wireguard.nix b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/wireguard.nix index 04421fc2d2..d4aa69629e 100644 --- a/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/wireguard.nix +++ b/third_party/nixpkgs/nixos/modules/services/monitoring/prometheus/exporters/wireguard.nix @@ -52,6 +52,7 @@ in { serviceConfig = { AmbientCapabilities = [ "CAP_NET_ADMIN" ]; + CapabilityBoundingSet = [ "CAP_NET_ADMIN" ]; ExecStart = '' ${pkgs.prometheus-wireguard-exporter}/bin/prometheus_wireguard_exporter \ -p ${toString cfg.port} \ @@ -61,6 +62,10 @@ in { ${optionalString cfg.withRemoteIp "-r"} \ ${optionalString (cfg.wireguardConfig != null) "-n ${escapeShellArg cfg.wireguardConfig}"} ''; + RestrictAddressFamilies = [ + # Need AF_NETLINK to collect data + "AF_NETLINK" + ]; }; }; } diff --git a/third_party/nixpkgs/nixos/modules/virtualisation/qemu-vm.nix b/third_party/nixpkgs/nixos/modules/virtualisation/qemu-vm.nix index 69d67685f5..c5f71b249a 100644 --- a/third_party/nixpkgs/nixos/modules/virtualisation/qemu-vm.nix +++ b/third_party/nixpkgs/nixos/modules/virtualisation/qemu-vm.nix @@ -780,7 +780,7 @@ in in [ "-net nic,netdev=user.0,model=virtio" - "-netdev user,id=user.0,${forwardingOptions}\${QEMU_NET_OPTS:+,$QEMU_NET_OPTS}" + "-netdev user,id=user.0,${forwardingOptions}\"$QEMU_NET_OPTS\"" ]; # FIXME: Consolidate this one day. diff --git a/third_party/nixpkgs/nixos/tests/all-tests.nix b/third_party/nixpkgs/nixos/tests/all-tests.nix index f92a9241c5..1c44030eaa 100644 --- a/third_party/nixpkgs/nixos/tests/all-tests.nix +++ b/third_party/nixpkgs/nixos/tests/all-tests.nix @@ -478,6 +478,7 @@ in wasabibackend = handleTest ./wasabibackend.nix {}; wiki-js = handleTest ./wiki-js.nix {}; wireguard = handleTest ./wireguard {}; + without-nix = handleTest ./without-nix.nix {}; wmderland = handleTest ./wmderland.nix {}; wpa_supplicant = handleTest ./wpa_supplicant.nix {}; wordpress = handleTest ./wordpress.nix {}; diff --git a/third_party/nixpkgs/nixos/tests/calibre-web.nix b/third_party/nixpkgs/nixos/tests/calibre-web.nix index 0af997317f..9832d54697 100644 --- a/third_party/nixpkgs/nixos/tests/calibre-web.nix +++ b/third_party/nixpkgs/nixos/tests/calibre-web.nix @@ -11,10 +11,6 @@ import ./make-test-python.nix ( meta.maintainers = with pkgs.lib.maintainers; [ pborzenkov ]; nodes = { - default = { ... }: { - services.calibre-web.enable = true; - }; - customized = { pkgs, ... }: { services.calibre-web = { enable = true; @@ -33,12 +29,6 @@ import ./make-test-python.nix ( testScript = '' start_all() - default.wait_for_unit("calibre-web.service") - default.wait_for_open_port(${toString defaultPort}) - default.succeed( - "curl --fail 'http://localhost:${toString defaultPort}/basicconfig' | grep 'Basic Configuration'" - ) - customized.succeed( "mkdir /tmp/books && calibredb --library-path /tmp/books add -e --title test-book" ) diff --git a/third_party/nixpkgs/nixos/tests/udisks2.nix b/third_party/nixpkgs/nixos/tests/udisks2.nix index 1f01cc6de4..6c4b71aaa2 100644 --- a/third_party/nixpkgs/nixos/tests/udisks2.nix +++ b/third_party/nixpkgs/nixos/tests/udisks2.nix @@ -34,7 +34,7 @@ in with lzma.open( "${stick}" - ) as data, open(machine.state_dir + "/usbstick.img", "wb") as stick: + ) as data, open(machine.state_dir / "usbstick.img", "wb") as stick: stick.write(data.read()) machine.succeed("udisksctl info -b /dev/vda >&2") diff --git a/third_party/nixpkgs/nixos/tests/usbguard.nix b/third_party/nixpkgs/nixos/tests/usbguard.nix index cba905db44..bb707bdbf7 100644 --- a/third_party/nixpkgs/nixos/tests/usbguard.nix +++ b/third_party/nixpkgs/nixos/tests/usbguard.nix @@ -22,7 +22,7 @@ import ./make-test-python.nix ({ pkgs, ... }: { testScript = '' # create a blank disk image for our fake USB stick - with open(machine.state_dir + "/usbstick.img", "wb") as stick: + with open(machine.state_dir / "usbstick.img", "wb") as stick: stick.write(b"\x00" * (1024 * 1024)) # wait for machine to have started and the usbguard service to be up diff --git a/third_party/nixpkgs/nixos/tests/without-nix.nix b/third_party/nixpkgs/nixos/tests/without-nix.nix new file mode 100644 index 0000000000..2fc00b0414 --- /dev/null +++ b/third_party/nixpkgs/nixos/tests/without-nix.nix @@ -0,0 +1,23 @@ +import ./make-test-python.nix ({ lib, ... }: { + name = "without-nix"; + meta = with lib.maintainers; { + maintainers = [ ericson2314 ]; + }; + + nixpkgs.overlays = [ + (self: super: { + nix = throw "don't want to use this"; + }) + ]; + + nodes.machine = { ... }: { + nix.enable = false; + }; + + testScript = '' + start_all() + + machine.succeed("which which") + machine.fail("which nix") + ''; +}) diff --git a/third_party/nixpkgs/pkgs/applications/audio/picard/default.nix b/third_party/nixpkgs/pkgs/applications/audio/picard/default.nix index dc030cc708..0a7c28f3a6 100644 --- a/third_party/nixpkgs/pkgs/applications/audio/picard/default.nix +++ b/third_party/nixpkgs/pkgs/applications/audio/picard/default.nix @@ -18,13 +18,13 @@ let in pythonPackages.buildPythonApplication rec { pname = "picard"; - version = "2.6.3"; + version = "2.6.4"; src = fetchFromGitHub { owner = "metabrainz"; repo = pname; rev = "release-${version}"; - sha256 = "sha256-bSqGgRXqHGjT+OYCEafsT/btVe+n91+L0kB8fnrywss="; + sha256 = "0lm7s9jy7z4an3xxj3gnxxf2xx045i157qaxysbdhcq5lwlmznc7"; }; nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ] diff --git a/third_party/nixpkgs/pkgs/applications/editors/rstudio/default.nix b/third_party/nixpkgs/pkgs/applications/editors/rstudio/default.nix index da7047b902..56c3362139 100644 --- a/third_party/nixpkgs/pkgs/applications/editors/rstudio/default.nix +++ b/third_party/nixpkgs/pkgs/applications/editors/rstudio/default.nix @@ -135,7 +135,7 @@ mkDerivation rec { { description = "Set of integrated tools for the R language"; homepage = "https://www.rstudio.com/"; license = licenses.agpl3; - maintainers = with maintainers; [ changlinli ciil ]; + maintainers = with maintainers; [ ciil ]; platforms = platforms.linux; }; } diff --git a/third_party/nixpkgs/pkgs/applications/kde/marble.nix b/third_party/nixpkgs/pkgs/applications/kde/marble.nix index 7fe3aa529f..637ae3bc97 100644 --- a/third_party/nixpkgs/pkgs/applications/kde/marble.nix +++ b/third_party/nixpkgs/pkgs/applications/kde/marble.nix @@ -2,7 +2,7 @@ , extra-cmake-modules, kdoctools , qtscript, qtsvg, qtquickcontrols, qtwebengine , krunner, shared-mime-info, kparts, knewstuff -, gpsd, perl +, gpsd, perl, fetchpatch }: mkDerivation { @@ -18,6 +18,15 @@ mkDerivation { qtscript qtsvg qtquickcontrols qtwebengine shared-mime-info krunner kparts knewstuff gpsd ]; + patches = [ + (fetchpatch { + # Backport fix to allow compilation with gpsd 3.23.1 + # Remove when marble compiles without the patch. + # See: https://invent.kde.org/education/marble/-/merge_requests/57 + url = "https://invent.kde.org/education/marble/-/commit/8aadc3eb8f9484a65d497d442cd8c61fe1462bef.diff"; + sha256 = "sha256-ZkPXyunVItSRctv6SLGIonvyZwLDhCz+wfJrIXeHcDo="; + }) + ]; preConfigure = '' cmakeFlags+=" -DINCLUDE_INSTALL_DIR=''${!outputDev}/include" ''; diff --git a/third_party/nixpkgs/pkgs/applications/misc/eureka-ideas/default.nix b/third_party/nixpkgs/pkgs/applications/misc/eureka-ideas/default.nix new file mode 100644 index 0000000000..5f5db97b33 --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/misc/eureka-ideas/default.nix @@ -0,0 +1,35 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, pkg-config +, openssl +, stdenv +, Security +}: + +rustPlatform.buildRustPackage rec { + pname = "eureka-ideas"; + version = "1.8.1"; + + src = fetchFromGitHub { + owner = "simeg"; + repo = "eureka"; + rev = "v${version}"; + sha256 = "1qjf8nr7m9igy6h228gm9gnav6pi2rfarbd9bc5fchx4rqy59sp7"; + }; + + cargoSha256 = "sha256-QujrFgliH8Mx1ES9KVl+O9UJP+7GDanQ7+z4QJuSOd0="; + + nativeBuildInputs = [ pkg-config ]; + + buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ]; + + meta = with lib; { + description = "CLI tool to input and store your ideas without leaving the terminal"; + homepage = "https://github.com/simeg/eureka"; + changelog = "https://github.com/simeg/eureka/blob/v${version}/CHANGELOG.md"; + license = licenses.mit; + maintainers = with maintainers; [ figsoda ]; + mainProgram = "eureka"; + }; +} diff --git a/third_party/nixpkgs/pkgs/applications/misc/foxtrotgps/default.nix b/third_party/nixpkgs/pkgs/applications/misc/foxtrotgps/default.nix index 8692ac9893..745a2357e2 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/foxtrotgps/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/foxtrotgps/default.nix @@ -6,8 +6,8 @@ let srcs = { foxtrot = fetchbzr { url = "lp:foxtrotgps"; - rev = "329"; - sha256 = "0fwgnsrah63h1xdgm5xdi5ancrz89shdp5sdzw1qc1m7i9a03rid"; + rev = "331"; + sha256 = "sha256-/kJv6a3MzAzzwIl98Mqi7jrUJC1kDvouigf9kGtv868="; }; screenshots = fetchbzr { url = "lp:foxtrotgps/screenshots"; @@ -17,7 +17,7 @@ let }; in stdenv.mkDerivation rec { pname = "foxtrotgps"; - version = "1.2.2+329"; + version = "1.2.2+331"; # Pull directly from bzr because gpsd API version 9 is not supported on latest release src = srcs.foxtrot; @@ -39,12 +39,20 @@ in stdenv.mkDerivation rec { ]; postUnpack = '' - cp -R ${srcs.screenshots} $sourceRoot/doc/screenshots - chmod -R u+w $sourceRoot/doc/screenshots + cp -R ${srcs.screenshots} $sourceRoot/doc/screenshots + chmod -R u+w $sourceRoot/doc/screenshots + ''; + + # Remove when foxtrotgps supports gpsd 3.23.1 + # Patch for compatibility with gpsd 3.23.1. This was added for foxtrotgps + # 1.2.2+331. The command can be removed if the build of a newer version + # succeeds without it. + postPatch = '' + substituteInPlace src/gps_functions.c --replace "STATUS_NO_FIX" "STATUS_UNK" ''; preConfigure = '' - intltoolize --automake --copy --force + intltoolize --automake --copy --force ''; meta = with lib; { diff --git a/third_party/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix b/third_party/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix index 445483c1ec..78dffeb20e 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/cluster/k3s/default.nix @@ -47,7 +47,7 @@ let k3sCommit = "3e250fdbab72d88f7e6aae57446023a0567ffc97"; # k3s git commit at the above version k3sRepoSha256 = "1w7drvk0bmlmqrxh1y6dxjy7dk6bdrl72pkd25lc1ir6wbzb05h9"; - traefikChartVersion = "9.18.2"; # taken from ./scripts/download at TRAEFIK_VERSION + traefikChartVersion = "9.18.2"; # taken from ./manifests/traefik.yaml at spec.version traefikChartSha256 = "sha256-9d7p0ngyMN27u4OPgz7yI14Zj9y36t9o/HMX5wyDpUI="; k3sRootVersion = "0.9.1"; # taken from ./scripts/download at ROOT_VERSION diff --git a/third_party/nixpkgs/pkgs/applications/networking/cluster/k3s/update.sh b/third_party/nixpkgs/pkgs/applications/networking/cluster/k3s/update.sh index 79432f06c2..1795b48f33 100755 --- a/third_party/nixpkgs/pkgs/applications/networking/cluster/k3s/update.sh +++ b/third_party/nixpkgs/pkgs/applications/networking/cluster/k3s/update.sh @@ -10,19 +10,16 @@ cd $(dirname "${BASH_SOURCE[0]}") LATEST_TAG_RAWFILE=${WORKDIR}/latest_tag.json curl --silent ${GITHUB_TOKEN:+"-u \":$GITHUB_TOKEN\""} \ - https://api.github.com/repos/k3s-io/k3s/releases/latest > ${LATEST_TAG_RAWFILE} - -LATEST_TAG_NAME=$(jq -r '.tag_name' ${LATEST_TAG_RAWFILE}) + https://api.github.com/repos/k3s-io/k3s/releases > ${LATEST_TAG_RAWFILE} +LATEST_TAG_NAME=$(jq 'map(.tag_name)' ${LATEST_TAG_RAWFILE} | grep -v -e rc -e engine | sed 's/["|,| ]//g' | sort -r | head -n1) K3S_VERSION=$(echo ${LATEST_TAG_NAME} | sed 's/^v//') -LATEST_TAG_TARBALL_URL=$(jq -r '.tarball_url' ${LATEST_TAG_RAWFILE}) - K3S_COMMIT=$(curl --silent ${GITHUB_TOKEN:+"-u \":$GITHUB_TOKEN\""} \ https://api.github.com/repos/k3s-io/k3s/tags \ | jq -r "map(select(.name == \"${LATEST_TAG_NAME}\")) | .[0] | .commit.sha") -K3S_REPO_SHA256=$(nix-prefetch-url --quiet --unpack ${LATEST_TAG_TARBALL_URL}) +K3S_REPO_SHA256=$(nix-prefetch-url --quiet --unpack https://github.com/k3s-io/k3s/archive/refs/tags/${LATEST_TAG_NAME}.tar.gz) FILE_SCRIPTS_DOWNLOAD=${WORKDIR}/scripts-download curl --silent https://raw.githubusercontent.com/k3s-io/k3s/${K3S_COMMIT}/scripts/download > $FILE_SCRIPTS_DOWNLOAD @@ -30,16 +27,19 @@ curl --silent https://raw.githubusercontent.com/k3s-io/k3s/${K3S_COMMIT}/scripts FILE_SCRIPTS_VERSION=${WORKDIR}/scripts-version.sh curl --silent https://raw.githubusercontent.com/k3s-io/k3s/${K3S_COMMIT}/scripts/version.sh > $FILE_SCRIPTS_VERSION -TRAEFIK_CHART_VERSION=$(grep TRAEFIK_VERSION= $FILE_SCRIPTS_DOWNLOAD \ - | cut -d'=' -f2 | cut -d' ' -f1) +FILE_MANIFESTS_TRAEFIK=${WORKDIR}/manifests-traefik.yaml +curl --silent https://raw.githubusercontent.com/k3s-io/k3s/${K3S_COMMIT}/manifests/traefik.yaml > $FILE_MANIFESTS_TRAEFIK + +TRAEFIK_CHART_VERSION=$(awk -F/ '/traefik-([[:digit:]]+\.)/ {sub(/traefik-/, "", $6) ; sub(/\.tgz/, "", $6); print $6}' $FILE_MANIFESTS_TRAEFIK) + TRAEFIK_CHART_SHA256=$(nix-prefetch-url --quiet "https://helm.traefik.io/traefik/traefik-${TRAEFIK_CHART_VERSION}.tgz") -K3S_ROOT_VERSION=$(grep ROOT_VERSION= $FILE_SCRIPTS_DOWNLOAD \ +K3S_ROOT_VERSION=$(grep 'ROOT_VERSION=' ${FILE_SCRIPTS_DOWNLOAD} \ | cut -d'=' -f2 | cut -d' ' -f1 | sed 's/^v//') K3S_ROOT_SHA256=$(nix-prefetch-url --quiet --unpack \ "https://github.com/k3s-io/k3s-root/releases/download/v${K3S_ROOT_VERSION}/k3s-root-amd64.tar") -CNIPLUGINS_VERSION=$(grep VERSION_CNIPLUGINS= $FILE_SCRIPTS_VERSION \ +CNIPLUGINS_VERSION=$(grep 'VERSION_CNIPLUGINS=' ${FILE_SCRIPTS_VERSION} \ | cut -d'=' -f2 | cut -d' ' -f1 | sed -e 's/"//g' -e 's/^v//') CNIPLUGINS_SHA256=$(nix-prefetch-url --quiet --unpack \ "https://github.com/rancher/plugins/archive/refs/tags/v${CNIPLUGINS_VERSION}.tar.gz") diff --git a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/bluejeans/update.sh b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/bluejeans/update.sh index 2c52746200..3bb7d309e8 100755 --- a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/bluejeans/update.sh +++ b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/bluejeans/update.sh @@ -3,10 +3,10 @@ set -eu -o pipefail -version="$(curl -Ls https://www.bluejeans.com/download | \ - pup 'a[aria-label~="Linux"] attr{href}' | \ - #output contains *.deb and *.rpm - grep "\.rpm" | \ +version="$(curl -Ls https://www.bluejeans.com/downloads | \ + pup 'a[href$=".rpm"] attr{href}' | \ + # output contains app and events + grep "desktop-app" | \ awk -F'[ ._ ]' '{printf $6"."$7"."$8"."$9"\n"}')" update-source-version bluejeans-gui "$version" diff --git a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix index 51075425b4..81967bcbe2 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix @@ -18,14 +18,12 @@ let # E.g. "de_DE" -> "de-de" (spellcheckerLanguage -> hunspellDict) spellLangComponents = splitString "_" spellcheckerLanguage; hunspellDict = elemAt spellLangComponents 0 + "-" + toLower (elemAt spellLangComponents 1); - in if spellcheckerLanguage != null - then '' - --set HUNSPELL_DICTIONARIES "${hunspellDicts.${hunspellDict}}/share/hunspell" \ - --set LC_MESSAGES "${spellcheckerLanguage}"'' - else ""); + in lib.optionalString (spellcheckerLanguage != null) '' + --set HUNSPELL_DICTIONARIES "${hunspellDicts.${hunspellDict}}/share/hunspell" \ + --set LC_MESSAGES "${spellcheckerLanguage}"''); in stdenv.mkDerivation rec { pname = "signal-desktop"; - version = "5.18.1"; # Please backport all updates to the stable channel. + version = "5.19.0"; # Please backport all updates to the stable channel. # All releases have a limited lifetime and "expire" 90 days after the release. # When releases "expire" the application becomes unusable until an update is # applied. The expiration date for the current release can be extracted with: @@ -35,7 +33,7 @@ in stdenv.mkDerivation rec { src = fetchurl { url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb"; - sha256 = "0x1wrzxyspghv0hwdh3sw8536c9qi7211d2g5cr3f33kz9db5xp4"; + sha256 = "0avns5axcfs8x9sv7hyjxi1cr7gag00avfj0h99wgn251b313g1a"; }; nativeBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/applications/science/math/R/default.nix b/third_party/nixpkgs/pkgs/applications/science/math/R/default.nix index a8fdfe8571..263130c281 100644 --- a/third_party/nixpkgs/pkgs/applications/science/math/R/default.nix +++ b/third_party/nixpkgs/pkgs/applications/science/math/R/default.nix @@ -118,7 +118,6 @@ stdenv.mkDerivation rec { ''; platforms = platforms.all; - hydraPlatforms = platforms.linux; maintainers = with maintainers; [ peti ] ++ teams.sage.members; }; diff --git a/third_party/nixpkgs/pkgs/applications/terminal-emulators/foot/default.nix b/third_party/nixpkgs/pkgs/applications/terminal-emulators/foot/default.nix index ec75454514..837b2b45a3 100644 --- a/third_party/nixpkgs/pkgs/applications/terminal-emulators/foot/default.nix +++ b/third_party/nixpkgs/pkgs/applications/terminal-emulators/foot/default.nix @@ -27,7 +27,7 @@ }: let - version = "1.9.0"; + version = "1.9.2"; # build stimuli file for PGO build and the script to generate it # independently of the foot's build, so we can cache the result @@ -36,8 +36,7 @@ let # # For every bump, make sure that the hash is still accurate. stimulusGenerator = stdenv.mkDerivation { - pname = "foot-generate-alt-random-writes"; - inherit version; + name = "foot-generate-alt-random-writes"; src = fetchurl { url = "https://codeberg.org/dnkl/foot/raw/tag/${version}/scripts/generate-alt-random-writes.py"; @@ -100,7 +99,7 @@ stdenv.mkDerivation rec { owner = "dnkl"; repo = pname; rev = version; - sha256 = "0mkzq5lbgl5qp5nj8sk5gyg9hrrklmbjdqzlcr2a6rlmilkxlhwm"; + sha256 = "15h01ijx87i60bdgjjap1ymwlxggsxc6iziykh3bahj8432s1836"; }; depsBuildBuild = [ @@ -144,16 +143,15 @@ stdenv.mkDerivation rec { mesonBuildType = "release"; + # See https://codeberg.org/dnkl/foot/src/tag/1.9.2/INSTALL.md#options mesonFlags = [ + # Use lto "-Db_lto=true" - # Prevent foot from installing its terminfo file into a custom location, - # we need to do this manually in postInstall. - # See https://codeberg.org/dnkl/foot/pulls/673, - # https://codeberg.org/dnkl/foot/src/tag/1.9.0/INSTALL.md#options - "-Dterminfo=disabled" + # “Build” and install terminfo db + "-Dterminfo=enabled" # Ensure TERM=foot is used "-Ddefault-terminfo=foot" - # Tell foot what to set TERMINFO to + # Tell foot to set TERMINFO and where to install the terminfo files "-Dcustom-terminfo-install-location=${terminfoDir}" ]; @@ -174,13 +172,6 @@ stdenv.mkDerivation rec { outputs = [ "out" "terminfo" ]; - postInstall = '' - # build and install foot's terminfo to the standard location - # instead of its custom location - mkdir -p "${terminfoDir}" - tic -o "${terminfoDir}" -x -e foot,foot-direct "$NIX_BUILD_TOP/$sourceRoot/foot.info" - ''; - passthru.tests = { clang-default-compilation = foot.override { inherit (llvmPackages) stdenv; @@ -193,6 +184,13 @@ stdenv.mkDerivation rec { noPgo = foot.override { allowPgo = false; }; + + # By changing name, this will get rebuilt everytime we change version, + # even if the hash stays the same. Consequently it'll fail if we introduce + # a hash mismatch when updating. + stimulus-script-is-current = stimulusGenerator.src.overrideAttrs (_: { + name = "generate-alt-random-writes-${version}.py"; + }); }; meta = with lib; { diff --git a/third_party/nixpkgs/pkgs/build-support/agda/default.nix b/third_party/nixpkgs/pkgs/build-support/agda/default.nix index 99cc125902..5df02fbd5c 100644 --- a/third_party/nixpkgs/pkgs/build-support/agda/default.nix +++ b/third_party/nixpkgs/pkgs/build-support/agda/default.nix @@ -49,6 +49,7 @@ let , meta , buildInputs ? [] , everythingFile ? "./Everything.agda" + , includePaths ? [] , libraryName ? pname , libraryFile ? "${libraryName}.agda-lib" , buildPhase ? null @@ -57,6 +58,7 @@ let , ... }: let agdaWithArgs = withPackages (builtins.filter (p: p ? isAgdaDerivation) buildInputs); + includePathArgs = concatMapStrings (path: "-i" + path + " ") (includePaths ++ [(dirOf everythingFile)]); in { inherit libraryName libraryFile; @@ -67,7 +69,7 @@ let buildPhase = if buildPhase != null then buildPhase else '' runHook preBuild - agda -i ${dirOf everythingFile} ${everythingFile} + agda ${includePathArgs} ${everythingFile} runHook postBuild ''; diff --git a/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/build-crate.nix b/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/build-crate.nix index 3441e2c5e7..42c5f6ab3c 100644 --- a/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/build-crate.nix +++ b/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/build-crate.nix @@ -15,8 +15,9 @@ "--remap-path-prefix=$NIX_BUILD_TOP=/" (mkRustcDepArgs dependencies crateRenames) (mkRustcFeatureArgs crateFeatures) + ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ + "--target" (rust.toRustTargetSpec stdenv.hostPlatform) ] ++ extraRustcOpts - ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "--target ${rust.toRustTargetSpec stdenv.hostPlatform} -C linker=${stdenv.hostPlatform.config}-gcc" # since rustc 1.42 the "proc_macro" crate is part of the default crate prelude # https://github.com/rust-lang/cargo/commit/4d64eb99a4#diff-7f98585dbf9d30aa100c8318e2c77e79R1021-R1022 ++ lib.optional (lib.elem "proc-macro" crateType) "--extern proc_macro" diff --git a/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/configure-crate.nix b/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/configure-crate.nix index d1010ac1ad..1a9705591d 100644 --- a/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/configure-crate.nix +++ b/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/configure-crate.nix @@ -13,7 +13,7 @@ , crateRenames , crateVersion , extraLinkFlags -, extraRustcOpts +, extraRustcOptsForBuildRs , libName , libPath , release @@ -24,7 +24,7 @@ let version_ = lib.splitString "-" crateVersion; version = lib.splitVersion (lib.head version_); rustcOpts = lib.foldl' (opts: opt: opts + " " + opt) (if release then "-C opt-level=3" else "-C debuginfo=2") - (["-C codegen-units=$NIX_BUILD_CORES"] ++ extraRustcOpts); + (["-C codegen-units=$NIX_BUILD_CORES"] ++ extraRustcOptsForBuildRs); buildDeps = mkRustcDepArgs buildDependencies crateRenames; authors = lib.concatStringsSep ":" crateAuthors; optLevel = if release then 3 else 0; diff --git a/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/default.nix b/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/default.nix index 13b153315f..afb938e511 100644 --- a/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/default.nix +++ b/third_party/nixpkgs/pkgs/build-support/rust/build-rust-crate/default.nix @@ -172,6 +172,11 @@ crate_: lib.makeOverridable # Example: [ "-Z debuginfo=2" ] # Default: [] , extraRustcOpts + # A list of extra options to pass to rustc when building a build.rs. + # + # Example: [ "-Z debuginfo=2" ] + # Default: [] + , extraRustcOptsForBuildRs # Whether to enable building tests. # Use true to enable. # Default: false @@ -228,6 +233,7 @@ crate_: lib.makeOverridable nativeBuildInputs_ = nativeBuildInputs; buildInputs_ = buildInputs; extraRustcOpts_ = extraRustcOpts; + extraRustcOptsForBuildRs_ = extraRustcOptsForBuildRs; buildTests_ = buildTests; # crate2nix has a hack for the old bash based build script that did split @@ -308,12 +314,16 @@ crate_: lib.makeOverridable lib.optionals (crate ? extraRustcOpts) crate.extraRustcOpts ++ extraRustcOpts_ ++ (lib.optional (edition != null) "--edition ${edition}"); + extraRustcOptsForBuildRs = + lib.optionals (crate ? extraRustcOptsForBuildRs) crate.extraRustcOptsForBuildRs + ++ extraRustcOptsForBuildRs_ + ++ (lib.optional (edition != null) "--edition ${edition}"); configurePhase = configureCrate { inherit crateName buildDependencies completeDeps completeBuildDeps crateDescription crateFeatures crateRenames libName build workspace_member release libPath crateVersion - extraLinkFlags extraRustcOpts + extraLinkFlags extraRustcOptsForBuildRs crateAuthors crateHomepage verbose colors; }; buildPhase = buildCrate { @@ -337,6 +347,7 @@ crate_: lib.makeOverridable release = crate_.release or true; verbose = crate_.verbose or true; extraRustcOpts = [ ]; + extraRustcOptsForBuildRs = [ ]; features = [ ]; nativeBuildInputs = [ ]; buildInputs = [ ]; diff --git a/third_party/nixpkgs/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix b/third_party/nixpkgs/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix index a9c60600f0..6a9848b34a 100644 --- a/third_party/nixpkgs/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix +++ b/third_party/nixpkgs/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix @@ -15,6 +15,7 @@ , dbus , polkit , switchboard +, wingpanel-indicator-power }: stdenv.mkDerivation rec { @@ -51,6 +52,7 @@ stdenv.mkDerivation rec { libgee polkit switchboard + wingpanel-indicator-power # settings schema ]; meta = with lib; { diff --git a/third_party/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix b/third_party/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix index 1784bf672b..bbc171a8d9 100644 --- a/third_party/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix +++ b/third_party/nixpkgs/pkgs/development/compilers/sbcl/2.0.8.nix @@ -1,4 +1,4 @@ import ./common.nix { - version = "2.1.2"; - sha256 = "sha256-t3EFUJOYVe1JWYxKAUSD7RILaZFliio7avpHcT3OTAs="; + version = "2.0.8"; + sha256 = "1xwrwvps7drrpyw3wg5h3g2qajmkwqs9gz0fdw1ns9adp7vld390"; } diff --git a/third_party/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix b/third_party/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix index 22e0813545..bdb1a8dda4 100644 --- a/third_party/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix +++ b/third_party/nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix @@ -94,8 +94,6 @@ self: super: builtins.intersectAttrs super { # Won't find it's header files without help. sfml-audio = appendConfigureFlag super.sfml-audio "--extra-include-dirs=${pkgs.openal}/include/AL"; - hercules-ci-agent = disableLibraryProfiling super.hercules-ci-agent; - # avoid compiling twice by providing executable as a separate output (with small closure size) niv = enableSeparateBinOutput super.niv; ormolu = enableSeparateBinOutput super.ormolu; diff --git a/third_party/nixpkgs/pkgs/development/interpreters/bqn/cbqn/default.nix b/third_party/nixpkgs/pkgs/development/interpreters/bqn/cbqn/default.nix index 71fdcae005..3a153977cd 100644 --- a/third_party/nixpkgs/pkgs/development/interpreters/bqn/cbqn/default.nix +++ b/third_party/nixpkgs/pkgs/development/interpreters/bqn/cbqn/default.nix @@ -11,20 +11,21 @@ let name = "cbqn-bytecode-files"; owner = "dzaima"; repo = "CBQN"; - rev = "94bb312d20919f942eabed3dca33c514de3c3227"; - hash = "sha256-aFw5/F7/sYkYmxAnGeK8EwkoVrbEcjuJAD9YT+iW9Rw="; + rev = "4d23479cdbd5ac6eb512c376ade58077b814b2b7"; + hash = "sha256-MTvg4lOB26bqvJTqV71p4Y4qDjTYaOE40Jk4Sle/hsY="; }; in assert genBytecode -> ((bqn-path != null) && (mbqn-source != null)); + stdenv.mkDerivation rec { pname = "cbqn" + lib.optionalString (!genBytecode) "-standalone"; - version = "0.0.0+unstable=2021-10-01"; + version = "0.pre+unstable=2021-10-05"; src = fetchFromGitHub { owner = "dzaima"; repo = "CBQN"; - rev = "3725bd58c758a749653080319766a33169551536"; - hash = "sha256-xWp64inFZRqGGTrH6Hqbj7aA0vYPyd+FdetowTMTjPs="; + rev = "e23dab20daff9c0dacc2561c616174af72029a3e"; + hash = "sha256-amVKKD9hD5A+LbqglXHLKEsYqFSSztdXs1FCoNJyCJ4="; }; dontConfigure = true; @@ -34,6 +35,9 @@ stdenv.mkDerivation rec { ''; preBuild = '' + # otherwise cbqn defaults to clang + makeFlagsArray+=("CC=$CC") + # inform make we are providing the runtime ourselves touch src/gen/customRuntime '' + (if genBytecode then '' @@ -42,10 +46,6 @@ stdenv.mkDerivation rec { cp ${cbqn-bytecode-files}/src/gen/{compiler,formatter,runtime0,runtime1,src} src/gen/ ''); - makeFlags = [ - "CC=${stdenv.cc.targetPrefix}cc" - ]; - installPhase = '' runHook preInstall @@ -63,8 +63,7 @@ stdenv.mkDerivation rec { license = licenses.gpl3Plus; maintainers = with maintainers; [ AndersonTorres sternenseemann synthetica ]; platforms = platforms.all; - priority = if genBytecode then 0 else 10; }; } -# TODO: factor and version cbqn-bytecode-files +# TODO: version cbqn-bytecode-files # TODO: test suite diff --git a/third_party/nixpkgs/pkgs/development/interpreters/bqn/dzaima-bqn/default.nix b/third_party/nixpkgs/pkgs/development/interpreters/bqn/dzaima-bqn/default.nix index 6c4022ed02..846d6a045a 100644 --- a/third_party/nixpkgs/pkgs/development/interpreters/bqn/dzaima-bqn/default.nix +++ b/third_party/nixpkgs/pkgs/development/interpreters/bqn/dzaima-bqn/default.nix @@ -8,32 +8,30 @@ stdenv.mkDerivation rec { pname = "dbqn" + lib.optionalString buildNativeImage "-native"; - version = "0.0.0+unstable=2021-10-02"; + version = "0.pre+unstable=2021-10-05"; src = fetchFromGitHub { owner = "dzaima"; repo = "BQN"; - rev = "d6bd66d26a89b8e9f956ec4f6b6bc5dcb5861a09"; - hash = "sha256-BLRep7OGHfDFowIAsBS19PTzgIhrdKMnO2JSjKuwGYo="; + rev = "c31ceef52bbf380e747723f5ffd09c5f006b21c5"; + sha256 = "1nzqgwpjawcky85mfrz5izs9lfb3aqlm96dc8syrxhgg20xrziwx"; }; - buildInputs = lib.optional (!buildNativeImage) jdk; - nativeBuildInputs = [ makeWrapper - ] ++ lib.optional buildNativeImage jdk; + jdk + ]; dontConfigure = true; buildPhase = '' runHook preBuild - mkdir -p output - javac --release 8 -encoding UTF-8 -d ./output $(find src -name '*.java') - (cd output; jar cvfe ../BQN.jar BQN.Main *) - rm -fr output + patchShebangs --build ./build8 + ./build8 '' + lib.optionalString buildNativeImage '' native-image --report-unsupported-elements-at-runtime \ + -H:CLibraryPath=${lib.getLib jdk}/lib \ -J-Dfile.encoding=UTF-8 -jar BQN.jar dbqn '' + '' runHook postBuild @@ -64,7 +62,6 @@ stdenv.mkDerivation rec { license = licenses.mit; maintainers = with maintainers; [ AndersonTorres sternenseemann ]; inherit (jdk.meta) platforms; - priority = if buildNativeImage then 10 else 0; }; } # TODO: Processing app diff --git a/third_party/nixpkgs/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix b/third_party/nixpkgs/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix index 8a280ad921..d49347d2ab 100644 --- a/third_party/nixpkgs/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix +++ b/third_party/nixpkgs/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix @@ -7,13 +7,13 @@ stdenvNoCC.mkDerivation rec { pname = "bqn"; - version = "0.0.0+unstable=2021-10-01"; + version = "0.pre+unstable=2021-10-06"; src = fetchFromGitHub { owner = "mlochbaum"; repo = "BQN"; - rev = "b3d68f730d48ccb5e3b3255f9010c95bf9f86e22"; - hash = "sha256-Tkgwz7+d25svmjRsXFUQq0S/73QJU+BKSNeGqpUcBTQ="; + rev = "2ce2dc40702431ef3d3ffece9e2f6f8b883ac6c5"; + hash = "sha256-bvXKOaBlddG6O0GbmtqU9prklqmOOvlbXuCUaFO+j0M="; }; nativeBuildInputs = [ makeWrapper ]; @@ -21,7 +21,7 @@ stdenvNoCC.mkDerivation rec { buildInputs = [ nodejs ]; patches = [ - # Creates a @libbqn@ substitution variable + # Creates a @libbqn@ substitution variable, to be filled in the fixupPhase ./001-libbqn-path.patch ]; diff --git a/third_party/nixpkgs/pkgs/development/libraries/agda/agda-prelude/default.nix b/third_party/nixpkgs/pkgs/development/libraries/agda/agda-prelude/default.nix index c546badef2..693bad67d0 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/agda/agda-prelude/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/agda/agda-prelude/default.nix @@ -1,14 +1,14 @@ { lib, mkDerivation, fetchFromGitHub }: mkDerivation rec { - version = "compat-2.6.1"; + version = "compat-2.6.2"; pname = "agda-prelude"; src = fetchFromGitHub { owner = "UlfNorell"; repo = "agda-prelude"; rev = version; - sha256 = "128rbhd32qlq2nq3wgqni4ih58zzwvs9pkn9j8236ycxxp6x81sl"; + sha256 = "0j2nip5fbn61fpkm3qz4dlazl4mzdv7qlgw9zm15bkcvaila0h14"; }; preConfigure = '' @@ -19,8 +19,6 @@ mkDerivation rec { ''; meta = with lib; { - # Remove if a version compatible with agda 2.6.2 is made - broken = true; homepage = "https://github.com/UlfNorell/agda-prelude"; description = "Programming library for Agda"; license = lib.licenses.mit; diff --git a/third_party/nixpkgs/pkgs/development/libraries/agda/agdarsec/default.nix b/third_party/nixpkgs/pkgs/development/libraries/agda/agdarsec/default.nix new file mode 100644 index 0000000000..ccdf65f965 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/libraries/agda/agdarsec/default.nix @@ -0,0 +1,28 @@ +{ lib, mkDerivation, fetchFromGitHub +, standard-library }: + +mkDerivation rec { + pname = "agdarsec"; + version = "0.4.1"; + + src = fetchFromGitHub { + owner = "gallais"; + repo = "agdarsec"; + rev = "v${version}"; + sha256 = "02fqkycvicw6m2xsz8p01aq8n3gj2d2gyx8sgj15l46f8434fy0x"; + }; + + everythingFile = "./index.agda"; + + includePaths = [ "src" "examples" ]; + + buildInputs = [ standard-library ]; + + meta = with lib; { + homepage = "https://gallais.github.io/agdarsec/"; + description = "Total Parser Combinators in Agda"; + license = licenses.gpl3; + platforms = platforms.unix; + maintainers = with maintainers; [ turion ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/libraries/libnsl/default.nix b/third_party/nixpkgs/pkgs/development/libraries/libnsl/default.nix index ac4c6bf9ad..4f9d7d09ca 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/libnsl/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/libnsl/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libnsl"; - version = "1.3.0"; + version = "2.0.0"; src = fetchFromGitHub { owner = "thkukuk"; repo = pname; rev = "v${version}"; - sha256 = "1dayj5i4bh65gn7zkciacnwv2a0ghm6nn58d78rsi4zby4lyj5w5"; + sha256 = "sha256-f9kNzzR8baf5mLgrh+bKO/rBRZA5ZYc1tJdyLE7Bi1w="; }; nativeBuildInputs = [ autoreconfHook pkg-config ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/Theano/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/Theano/default.nix index 351f8dc9b7..480970f04a 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/Theano/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/Theano/default.nix @@ -90,7 +90,7 @@ in buildPythonPackage rec { pythonImportsCheck = [ "theano" ]; meta = with lib; { - homepage = "http://deeplearning.net/software/theano/"; + homepage = "https://github.com/Theano/Theano"; description = "A Python library for large-scale array computation"; license = licenses.bsd3; maintainers = with maintainers; [ maintainers.bcdarwin ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/aiodiscover/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/aiodiscover/default.nix index 97caef5028..1ad7c0bfd9 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/aiodiscover/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/aiodiscover/default.nix @@ -11,14 +11,14 @@ buildPythonPackage rec { pname = "aiodiscover"; - version = "1.4.2"; + version = "1.4.4"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "bdraco"; repo = pname; rev = "v${version}"; - sha256 = "sha256-xiIN/YLIOdPuqenyxybu0iUpYEy3MyBssXswza5InU0="; + sha256 = "sha256-DobTx6oUr25J8bolo84V4yTT0b0jBsOIzPn93uAmDl0="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix index 4561b79f4a..562a39a96f 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/aiohomekit/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "aiohomekit"; - version = "0.6.2"; + version = "0.6.3"; format = "pyproject"; src = fetchFromGitHub { owner = "Jc2k"; repo = pname; rev = version; - sha256 = "16lfav83g12vzs3ssfva7chcqqb7xdx54djwfwyn9xcwfaa7cwhw"; + sha256 = "sha256-XBinbhYUB9BuQxxmWfZUw276uNam4DgBpiCAjT7KDlg="; }; nativeBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/aiohue/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/aiohue/default.nix index f06f4aba2a..645563495c 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/aiohue/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/aiohue/default.nix @@ -6,11 +6,11 @@ buildPythonPackage rec { pname = "aiohue"; - version = "2.6.1"; + version = "2.6.3"; src = fetchPypi { inherit pname version; - sha256 = "0101bw2n6vd3c0p323qqr61wwraja48xbrwcw5sn7i5sa3ygfx0k"; + sha256 = "sha256-zpwkDKPrE5TFZQO0A1ifTQ7n+TRFpXi3jai3h5plyGM="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/aioshelly/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/aioshelly/default.nix index 6e1b02e4fe..104ec7af3c 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/aioshelly/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/aioshelly/default.nix @@ -7,13 +7,13 @@ buildPythonPackage rec { pname = "aioshelly"; - version = "0.6.4"; + version = "1.0.2"; src = fetchFromGitHub { owner = "home-assistant-libs"; repo = pname; rev = version; - sha256 = "sha256-QRCqkaKhPQQjNt9mw8nlTB5YKLmIZbXfrxarb3Ksr5k="; + sha256 = "sha256-STJ9BDVbvlIMvKMiGwkGZ9Z32NvlE+3cyYduYlwTbx4="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/airthings/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/airthings/default.nix new file mode 100644 index 0000000000..21525941cb --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/airthings/default.nix @@ -0,0 +1,39 @@ +{ lib +, aiohttp +, async-timeout +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +}: + +buildPythonPackage rec { + pname = "airthings"; + version = "0.0.1"; + format = "setuptools"; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "Danielhiversen"; + repo = "pyAirthings"; + rev = version; + sha256 = "08cbysx5p9k8hzr6sdykx91j0gx8x15b8807338dsl3qx8nhfb8j"; + }; + + propagatedBuildInputs = [ + aiohttp + async-timeout + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "airthings" ]; + + meta = with lib; { + description = "Python module for Airthings"; + homepage = "https://github.com/Danielhiversen/pyAirthings"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/bellows/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/bellows/default.nix index 8caebee0ed..8dc13ea50a 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/bellows/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/bellows/default.nix @@ -17,13 +17,13 @@ buildPythonPackage rec { pname = "bellows"; - version = "0.27.0"; + version = "0.28.0"; src = fetchFromGitHub { owner = "zigpy"; repo = "bellows"; rev = version; - sha256 = "sha256-lsGpCd4XgwP91JmRpV6ohXefd1Hm9C51Jk4shU6Irkw="; + sha256 = "sha256-j1vS6PDvvuJapECn0lKGuBkYwWsyzJaTZDRQPjMsuLk="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/ciso8601/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/ciso8601/default.nix index d0de4b320e..e210e97441 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/ciso8601/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/ciso8601/default.nix @@ -8,23 +8,27 @@ buildPythonPackage rec { pname = "ciso8601"; - version = "2.1.3"; + version = "2.2.0"; src = fetchFromGitHub { owner = "closeio"; repo = "ciso8601"; rev = "v${version}"; - sha256 = "0g1aiyc1ayh0rnibyy416m5mmck38ksgdm3jsy0z3rxgmgb24951"; + sha256 = "sha256-TqB1tQDgCkXu+QuzP6yBEH/xHxhhD/kGR2S0I8Osc5E="; }; checkInputs = [ pytz - ] ++ lib.optional (isPy27) unittest2; + ] ++ lib.optional (isPy27) [ + unittest2 + ]; + + pythonImportsCheck = [ "ciso8601" ]; meta = with lib; { description = "Fast ISO8601 date time parser for Python written in C"; homepage = "https://github.com/closeio/ciso8601"; license = licenses.mit; - maintainers = [ maintainers.mic92 ]; + maintainers = with maintainers; [ mic92 ]; }; } diff --git a/third_party/nixpkgs/pkgs/development/python-modules/clifford/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/clifford/default.nix index b26689cf38..9a7be23938 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/clifford/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/clifford/default.nix @@ -1,9 +1,7 @@ { lib , buildPythonPackage , fetchPypi -, fetchpatch -, isPy27 -, future +, pythonOlder , h5py , ipython , numba @@ -15,25 +13,16 @@ buildPythonPackage rec { pname = "clifford"; - version = "1.3.1"; - disabled = isPy27; + version = "1.4.0"; + + disabled = pythonOlder "3.5"; src = fetchPypi { inherit pname version; - sha256 = "ade11b20d0631dfc9c2f18ce0149f1e61e4baf114108b27cfd68e5c1619ecc0c"; + sha256 = "sha256-eVE8FrD0YHoRreY9CrNb8v4v4KrG83ZU0oFz+V+p+Q0="; }; - patches = [ - (fetchpatch { - # Compatibility with h5py 3. - # Will be included in the next releasse after 1.3.1 - url = "https://github.com/pygae/clifford/pull/388/commits/955d141662c68d3d61aa50a162b39e656684c208.patch"; - sha256 = "0pkpwnk0kfdxsbzsxqlqh8kgif17l5has0mg31g3kyp8lncj89b1"; - }) - ]; - propagatedBuildInputs = [ - future h5py numba numpy @@ -55,15 +44,24 @@ buildPythonPackage rec { "veryslow" "test_algebra_initialisation" "test_cga" - "test_estimate_rotor_sequential[random_sphere]" + "test_grade_projection" + "test_multiple_grade_projection" + "test_inverse" + "test_inv_g4" ]; + disabledTestPaths = [ + # Disable failing tests + "test_g3c_tools.py" + "test_multivector_inverse.py" + ]; + + pythonImportsCheck = [ "clifford" ]; + meta = with lib; { description = "Numerical Geometric Algebra Module"; homepage = "https://clifford.readthedocs.io"; license = licenses.bsd3; - maintainers = [ maintainers.costrouc ]; - # many TypeError's in tests - broken = true; + maintainers = with maintainers; [ costrouc ]; }; } diff --git a/third_party/nixpkgs/pkgs/development/python-modules/dask-jobqueue/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/dask-jobqueue/default.nix index 5e43a8f166..7a14fbd577 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/dask-jobqueue/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/dask-jobqueue/default.nix @@ -1,10 +1,11 @@ { lib , buildPythonPackage -, fetchPypi , dask , distributed , docrep -, pytest +, fetchPypi +, pytest-asyncio +, pytestCheckHook }: buildPythonPackage rec { @@ -16,19 +17,33 @@ buildPythonPackage rec { sha256 = "682d7cc0e6b319b6ab83a7a898680c12e9c77ddc77df380b40041290f55d4e79"; }; - checkInputs = [ pytest ]; - propagatedBuildInputs = [ dask distributed docrep ]; + propagatedBuildInputs = [ + dask + distributed + docrep + ]; - # do not run entire tests suite (requires slurm, sge, etc.) - checkPhase = '' - py.test dask_jobqueue/tests/test_jobqueue_core.py - ''; + checkInputs = [ + pytest-asyncio + pytestCheckHook + ]; + + pytestFlagsArray = [ + # Do not run entire tests suite (requires slurm, sge, etc.) + "dask_jobqueue/tests/test_jobqueue_core.py" + ]; + + disabledTests = [ + "test_import_scheduler_options_from_config" + "test_security" + ]; + + pythonImportsCheck = [ "dask_jobqueue" ]; meta = with lib; { homepage = "https://github.com/dask/dask-jobqueue"; description = "Deploy Dask on job schedulers like PBS, SLURM, and SGE"; license = licenses.bsd3; - maintainers = [ maintainers.costrouc ]; - broken = true; + maintainers = with maintainers; [ costrouc ]; }; } diff --git a/third_party/nixpkgs/pkgs/development/python-modules/dask/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/dask/default.nix index 7850861486..68e5304932 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/dask/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/dask/default.nix @@ -22,7 +22,7 @@ buildPythonPackage rec { pname = "dask"; - version = "2021.09.0"; + version = "2021.09.1"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -31,7 +31,7 @@ buildPythonPackage rec { owner = "dask"; repo = pname; rev = version; - sha256 = "sha256-Gb6eQ5Hebx3mBNGvgB5yvM4dPsIxJl9ka++yYC/Zf7Q="; + sha256 = "sha256-+UkbXbWV5R/QtVb5rWm/5SA+IoWsIfBciL3vg138jkc="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/demjson3/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/demjson3/default.nix new file mode 100644 index 0000000000..5887ec54c2 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/demjson3/default.nix @@ -0,0 +1,31 @@ +{ lib +, python +, buildPythonPackage +, fetchPypi +, pythonOlder +}: + +buildPythonPackage rec { + pname = "demjson3"; + version = "3.0.5"; + + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit pname version; + sha256 = "103dc4pzwg8791q3zll1vv4gcc17d9v3jvr9zj23cpv9hpfsp6mb"; + }; + + checkPhase = '' + ${python.interpreter} test/test_demjson3.py + ''; + + pythonImportsCheck = [ "demjson3" ]; + + meta = with lib; { + description = "Encoder/decoder and lint/validator for JSON (JavaScript Object Notation)"; + homepage = "https://github.com/nielstron/demjson3/"; + license = licenses.lgpl3Plus; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/distributed/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/distributed/default.nix index 777d6d7d74..049290081d 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/distributed/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/distributed/default.nix @@ -19,13 +19,13 @@ buildPythonPackage rec { pname = "distributed"; - version = "2021.9.0"; + version = "2021.9.1"; disabled = pythonOlder "3.6"; # get full repository need conftest.py to run tests src = fetchPypi { inherit pname version; - sha256 = "sha256-IiKc0rJYODCtGC9AAOkjbww/VG7PdfrqJ32IHU9xWbo="; + sha256 = "sha256-9N65ap2+9bBK0DCrkF3+1xuJPXmjaL1Xh7ISaLTtX/g="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/fsspec/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/fsspec/default.nix index befcde0c28..bb2cbe064a 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/fsspec/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/fsspec/default.nix @@ -14,14 +14,14 @@ buildPythonPackage rec { pname = "fsspec"; - version = "2021.08.1"; + version = "2021.10.0"; disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "intake"; repo = "filesystem_spec"; rev = version; - sha256 = "0xxzcp69div1sy975x82k754snbsksyqr73h6jiasdxj8wka49s0"; + sha256 = "sha256-zvOSenK63jFC9vMLsuZT8P9NCXGdkYAB5AxvptROKes="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/gcsfs/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/gcsfs/default.nix index 65e1851318..71945bfab4 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/gcsfs/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/gcsfs/default.nix @@ -17,14 +17,14 @@ buildPythonPackage rec { pname = "gcsfs"; - version = "2021.08.1"; + version = "2021.10.0"; disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "dask"; repo = pname; rev = version; - sha256 = "sha256-SPQcSdEEbU791oqkvuwmvyvQ6HglvoWKMi5SdnRcEZI="; + sha256 = "sha256-GDVIENtNpo8cg7pplOgoDMVguZmxoUUSs860WNfhmfM="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/graspologic/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/graspologic/default.nix index 37ff849a3c..2096f22a24 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/graspologic/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/graspologic/default.nix @@ -41,7 +41,7 @@ buildPythonPackage rec { disabledTests = [ "gridplot_outputs" ]; meta = with lib; { - homepage = "https://graspy.neurodata.io"; + homepage = "https://graspologic.readthedocs.io"; description = "A package for graph statistical algorithms"; license = licenses.asl20; # changing to `licenses.mit` in next release maintainers = with maintainers; [ bcdarwin ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/gtfs-realtime-bindings/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/gtfs-realtime-bindings/default.nix new file mode 100644 index 0000000000..3c76b987a1 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/gtfs-realtime-bindings/default.nix @@ -0,0 +1,36 @@ +{ lib +, buildPythonPackage +, fetchPypi +, protobuf +, pythonOlder +}: + +buildPythonPackage rec { + pname = "gtfs-realtime-bindings"; + version = "0.0.7"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit pname version; + sha256 = "1vav7ah6gpkpi44rk202bwpl345rydg6n9zibzx5p7gcsblcwd45"; + extension = "zip"; + }; + + propagatedBuildInputs = [ + protobuf + ]; + + # Tests are not shipped, only a tarball for Java is present + doCheck = false; + + pythonImportsCheck = [ "google.transit" ]; + + meta = with lib; { + description = "Python bindings generated from the GTFS Realtime protocol buffer spec"; + homepage = "https://github.com/andystewart999/TransportNSW"; + license = with licenses; [ asl20 ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix index 1bd8fd5f63..90fd6bf501 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/hass-nabucasa/default.nix @@ -15,13 +15,13 @@ buildPythonPackage rec { pname = "hass-nabucasa"; - version = "0.46.0"; + version = "0.50.0"; src = fetchFromGitHub { owner = "nabucasa"; repo = pname; rev = version; - sha256 = "109ma1qlhifj5hs530zfnvc6mqv5grfmcq3s57wawq9nzq0gpfy8"; + sha256 = "sha256-0E8eiHzqbxHbtAd97MbvFMRDWTu25E9x/44oNGC4mUM="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/iso4217/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/iso4217/default.nix new file mode 100644 index 0000000000..58d9ef5ffb --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/iso4217/default.nix @@ -0,0 +1,52 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, fetchurl +, pytestCheckHook +, python +}: +let + table = fetchurl { + # See https://github.com/dahlia/iso4217/blob/main/setup.py#L18 + url = "http://www.currency-iso.org/dam/downloads/lists/list_one.xml"; + sha256 = "0frhicc7s8gqglr41hzx61fic3ckvr4sg773ahp1s28n5by3y7ac"; + }; +in +buildPythonPackage rec { + pname = "iso4217"; + version = "1.6"; + + src = fetchFromGitHub { + owner = "dahlia"; + repo = pname; + rev = version; + sha256 = "0mdpf5a0xr5lrcfgvqi1sdn7ln2w6pkc3lg0laqkbx5mhxky0fla"; + }; + + checkInputs = [ + pytestCheckHook + ]; + + preBuild = '' + # The table is already downloaded + export ISO4217_DOWNLOAD=0 + # Copy the table file to satifiy the build process + cp -r ${table} $pname/table.xml + ''; + + postInstall = '' + # Copy the table file + cp -r ${table} $out/${python.sitePackages}/$pname/table.xml + ''; + + pytestFlagsArray = [ "$pname/test.py" ]; + + pythonImportsCheck = [ "iso4217" ]; + + meta = with lib; { + description = "ISO 4217 currency data package for Python"; + homepage = "https://github.com/dahlia/iso4217"; + license = with licenses; [ publicDomain ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix index f245994cc4..cadf07f211 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/mypy-boto3-s3/default.nix @@ -8,12 +8,12 @@ buildPythonPackage rec { pname = "mypy-boto3-s3"; - version = "1.18.54"; + version = "1.18.56"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "fdbb7ff1687fba8e7ac521502cb2d2ca4b845e1a331f5b4fe55aff7c17e1f985"; + sha256 = "61c74253cb77a0734970703d58a49e29624cec76d97da31fa912faf6f6d3347b"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/netdisco/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/netdisco/default.nix index 08dc44a95c..0017483eca 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/netdisco/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/netdisco/default.nix @@ -2,19 +2,24 @@ buildPythonPackage rec { pname = "netdisco"; - version = "2.9.0"; + version = "3.0.0"; disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "sha256-OpLFM+0ZmhggJ1SuLoSO+qWLcKcpS65sd7u2zkzPys4="; + sha256 = "sha256-TbtZBILzd8zEYeAXQnB8y+jx0tGyhXivkdybf+vNy9I="; }; propagatedBuildInputs = [ requests zeroconf ]; checkInputs = [ pytestCheckHook ]; + disabledTestPaths = [ + # Broken due to removed discoverables in https://github.com/home-assistant-libs/netdisco/commit/477db5a1dc93919a6c5bd61b4b1d3c80e75785bd + "tests/test_xboxone.py" + ]; + pythonImportsCheck = [ "netdisco" "netdisco.discovery" diff --git a/third_party/nixpkgs/pkgs/development/python-modules/ocrmypdf/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/ocrmypdf/default.nix index 0f2dd593c6..5c6b87b38f 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/ocrmypdf/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/ocrmypdf/default.nix @@ -34,7 +34,13 @@ buildPythonPackage rec { owner = "jbarlow83"; repo = "OCRmyPDF"; rev = "v${version}"; - sha256 = "sha256-gFlQztrRN69HtR6sTJl8tryuTibxQrz97QcS5UkFOVs="; + # The content of .git_archival.txt is substituted upon tarball creation, + # which creates indeterminism if master no longer points to the tag. + # See https://github.com/jbarlow83/OCRmyPDF/issues/841 + extraPostFetch = '' + rm "$out/.git_archival.txt" + ''; + sha256 = "0zw7c6l9fkf128gxsbd7v4abazlxiygqys6627jpsjbmxg5jgp5w"; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pikepdf/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pikepdf/default.nix index 027369d3d0..7b380627d7 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pikepdf/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pikepdf/default.nix @@ -24,12 +24,12 @@ buildPythonPackage rec { pname = "pikepdf"; - version = "3.1.0"; + version = "3.1.1"; disabled = ! isPy3k; src = fetchPypi { inherit pname version; - sha256 = "aeb813b5f36534d2bedf08487ab2b022c43f4c8a3e86e611c5f7c8fb97309db5"; + sha256 = "sha256-klSUszWsIIz7o0/Ql8K4CWYujBH0mAbqyUcabpn1SkQ="; }; patches = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pubnub/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pubnub/default.nix index f0135a50e7..24ac0e37ca 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pubnub/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pubnub/default.nix @@ -13,13 +13,13 @@ buildPythonPackage rec { pname = "pubnub"; - version = "5.3.1"; + version = "5.4.0"; src = fetchFromGitHub { owner = pname; repo = "python"; rev = "v${version}"; - sha256 = "0fykqr0agdlrhsy2s4yzadyslyjlhgr9iyj2f7s8hz9j400dhj3h"; + sha256 = "sha256-FyDsTqDQTI/Xxu4Sl4eHqwmgwN+ip+8WKGJs/h/kl2Y="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pyatmo/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pyatmo/default.nix index e2c6d8e37f..bff5a9b6d1 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pyatmo/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pyatmo/default.nix @@ -1,35 +1,37 @@ { lib -, buildPythonPackage -, pythonOlder -, fetchFromGitHub , aiohttp -, oauthlib -, requests -, requests_oauthlib +, buildPythonPackage +, fetchFromGitHub , freezegun +, oauthlib , pytest-asyncio , pytest-mock , pytestCheckHook +, pythonOlder +, requests +, requests_oauthlib , requests-mock +, setuptools-scm }: buildPythonPackage rec { pname = "pyatmo"; - version = "5.2.3"; - disabled = pythonOlder "3.7"; + version = "6.1.0"; + + disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "jabesq"; repo = "pyatmo"; rev = "v${version}"; - sha256 = "1w9rhh85z9m3c4rbz6zxlrxglsm5sk5d6796dsj1p1l3b3ad476z"; + sha256 = "sha256-Iscnv3hfYa8QFiXMUN334Muo0oGqnnK11RPNxQJggG0="; }; - postPatch = '' - substituteInPlace setup.cfg \ - --replace "oauthlib~=3.1" "oauthlib" \ - --replace "requests~=2.24" "requests" - ''; + SETUPTOOLS_SCM_PRETEND_VERSION = version; + + nativeBuildInputs = [ + setuptools-scm + ]; propagatedBuildInputs = [ aiohttp @@ -46,12 +48,18 @@ buildPythonPackage rec { requests-mock ]; + postPatch = '' + substituteInPlace setup.cfg \ + --replace "oauthlib~=3.1" "oauthlib" \ + --replace "requests~=2.24" "requests" + ''; + pythonImportsCheck = [ "pyatmo" ]; meta = with lib; { description = "Simple API to access Netatmo weather station data"; + homepage = "https://github.com/jabesq/pyatmo"; license = licenses.mit; - homepage = "https://github.com/jabesq/netatmo-api-python"; maintainers = with maintainers; [ delroth ]; }; } diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pycarwings2/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pycarwings2/default.nix index a0e8a7e848..164a5b3f56 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pycarwings2/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pycarwings2/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "pycarwings2"; - version = "2.11"; + version = "2.12"; format = "setuptools"; disabled = pythonOlder "3.5"; @@ -19,8 +19,9 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "filcole"; repo = pname; - rev = "v${version}"; - sha256 = "0daqxnic7kphspqqq8a0bjp009l5a7d1k72q6cz43g7ca6wfq4b1"; + # release not tagged: https://github.com/filcole/pycarwings2/issues/33 + rev = "0dc9e7e74cb119614c72c7f955801a366f303c56"; + sha256 = "sha256-3lyAgLuaNrCDvRT2yYkgaDiLPKW9Hbg05cQlMIBUs6o="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix index 07fe662f6e..54219e7573 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pydeconz/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "pydeconz"; - version = "83"; + version = "84"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "Kane610"; repo = "deconz"; rev = "v${version}"; - sha256 = "0azpdgmfby8plsp22hy1ip9vzbnmvf9brmah7hcwkpypg31rb61y"; + sha256 = "sha256-SVWz6r5UiAS7gCpkgN2Swy8dAon26XY9JZucV/eE0t8="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pyefergy/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pyefergy/default.nix new file mode 100644 index 0000000000..042b6a858f --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/pyefergy/default.nix @@ -0,0 +1,42 @@ +{ lib +, aiohttp +, buildPythonPackage +, fetchFromGitHub +, iso4217 +, pytestCheckHook +, pythonOlder +, pytz +}: + +buildPythonPackage rec { + pname = "pyefergy"; + version = "0.1.0"; + format = "setuptools"; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "tkdrob"; + repo = pname; + rev = version; + sha256 = "0nm7dc5q4wvdpqxpirlc4nwm68lf3n2df6j5yy4m8wr294yb7a1k"; + }; + + propagatedBuildInputs = [ + aiohttp + iso4217 + pytz + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "pyefergy" ]; + + meta = with lib; { + description = "Python API library for Efergy energy meters"; + homepage = "https://github.com/tkdrob/pyefergy"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pypinyin/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pypinyin/default.nix index edefbf16ca..47e41434c4 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pypinyin/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pypinyin/default.nix @@ -6,13 +6,13 @@ buildPythonPackage rec { pname = "pypinyin"; - version = "0.42.0"; + version = "0.43.0"; src = fetchFromGitHub { owner = "mozillazg"; repo = "python-pinyin"; rev = "v${version}"; - sha256 = "0i0ggizkgd809ylz74j1v5lfpyifz3wypj6f8l8fr5ad7a7r9s09"; + sha256 = "0h3lpb8bw9zp8is5sx2zg931wz12x0zfan1kksnbhx16vwv1kgw3"; }; postPatch = '' diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pypoint/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pypoint/default.nix index be487199b3..b3b9107c6e 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pypoint/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pypoint/default.nix @@ -7,13 +7,13 @@ buildPythonPackage rec { pname = "pypoint"; - version = "2.1.0"; + version = "2.2.0"; src = fetchFromGitHub { owner = "fredrike"; repo = "pypoint"; rev = "v${version}"; - sha256 = "13p68d2qxfj31lfjv94wzpigjfgjw03yjpl2h16zgxbka2k8zf3x"; + sha256 = "sha256-2PKZtn+l93de4/gPPM2Wdt04Zw+ekDadwNgL6ZKTqhY="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pysyncthru/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pysyncthru/default.nix index 67194d51cb..d5761bebee 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pysyncthru/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pysyncthru/default.nix @@ -3,13 +3,13 @@ , buildPythonPackage , fetchFromGitHub , aiohttp -, demjson +, demjson3 , python }: buildPythonPackage rec { pname = "pysyncthru"; - version = "0.7.8"; + version = "0.7.10"; disabled = isPy27; @@ -17,12 +17,12 @@ buildPythonPackage rec { owner = "nielstron"; repo = "pysyncthru"; rev = "release-${version}"; - sha256 = "17k9dhnya4304gqmkyvvf94jvikmnkf2lqairl3rfrl7w68jm3vp"; + sha256 = "1c29w2ldrnq0vxr9cfa2pjhwdvrpw393c84khgg2y56jrkbidq53"; }; propagatedBuildInputs = [ aiohttp - demjson + demjson3 ]; checkPhase = '' diff --git a/third_party/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix index 0d7a15aec9..b4c994b245 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/python-smarttub/default.nix @@ -13,14 +13,14 @@ buildPythonPackage rec { pname = "python-smarttub"; - version = "0.0.25"; + version = "0.0.27"; disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "mdz"; repo = pname; rev = "v${version}"; - sha256 = "13yf75vmn15g2hrbiv78mws96qbk40p5pz7vc6ljyp41y2lc9wpm"; + sha256 = "sha256-EoZn5yxj18hi4oEMuUcB5UN2xQFkLbSG/awp+Qh029E="; }; propagatedBuildInputs = [ @@ -43,6 +43,5 @@ buildPythonPackage rec { homepage = "https://github.com/mdz/python-smarttub"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; - broken = pyjwt.version != "1.7.1"; }; } diff --git a/third_party/nixpkgs/pkgs/development/python-modules/python-tado/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/python-tado/default.nix index 5562e411dd..7172b0574f 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/python-tado/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/python-tado/default.nix @@ -2,7 +2,7 @@ buildPythonPackage rec { pname = "python-tado"; - version = "0.11.0"; + version = "0.12.0"; disabled = pythonOlder "3.5"; @@ -10,7 +10,7 @@ buildPythonPackage rec { owner = "wmalgadey"; repo = "PyTado"; rev = version; - sha256 = "0fw4f9gqnhxwpxyb34qi8bl5pmzz13h4x3mdk903hhjyccanqncr"; + sha256 = "sha256-n+H6H2ORLizv9cn1P5Cd8wHDWMNonPrs+x+XMQbEzZQ="; }; propagatedBuildInputs = [ requests ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pytransportnsw/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pytransportnsw/default.nix new file mode 100644 index 0000000000..67c0749df5 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/pytransportnsw/default.nix @@ -0,0 +1,36 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +, requests +}: + +buildPythonPackage rec { + pname = "pytransportnsw"; + version = "0.1.1"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; + + src = fetchPypi { + pname = "PyTransportNSW"; + inherit version; + sha256 = "00jklgjirmc58hiaqqc2n2rgixvx91bgrd6lv6hv28k51kid10f3"; + }; + + propagatedBuildInputs = [ + requests + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "TransportNSW" ]; + + meta = with lib; { + description = "Python module to access Transport NSW information"; + homepage = "https://github.com/Dav0815/TransportNSW"; + license = with licenses; [ gpl3Only ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pytransportnswv2/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pytransportnswv2/default.nix new file mode 100644 index 0000000000..a2cf2afb70 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/pytransportnswv2/default.nix @@ -0,0 +1,38 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pythonOlder +, gtfs-realtime-bindings +, requests +}: + +buildPythonPackage rec { + pname = "pytransportnswv2"; + version = "0.2.4"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; + + src = fetchPypi { + pname = "PyTransportNSWv2"; + inherit version; + sha256 = "129rrqckqgfrwdx0b83dqphcv55cxs5i8jl1ascia7rpzjn109ah"; + }; + + propagatedBuildInputs = [ + gtfs-realtime-bindings + requests + ]; + + # Project has no tests + doCheck = false; + + pythonImportsCheck = [ "TransportNSW" ]; + + meta = with lib; { + description = "Python module to access Transport NSW information"; + homepage = "https://github.com/andystewart999/TransportNSW"; + license = with licenses; [ gpl3Only ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pyvicare/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pyvicare/default.nix index 7016fbbb95..6db3eaae2b 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pyvicare/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pyvicare/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "pyvicare"; - version = "2.8.1"; + version = "2.9.1"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "somm15"; repo = "PyViCare"; rev = version; - sha256 = "sha256-SmbsEN6vZ28ihgUggtcF2AjbmUVaqLLweh7cKipr6u4="; + sha256 = "sha256-Uzz2mWBT5BaMxYeR6YFIP1BqTWye1Hz9CTTg/bg4kSU="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/s3fs/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/s3fs/default.nix index 645a0b3566..2769e96a40 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/s3fs/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/s3fs/default.nix @@ -8,11 +8,11 @@ buildPythonPackage rec { pname = "s3fs"; - version = "2021.8.1"; + version = "2021.10.0"; src = fetchPypi { inherit pname version; - sha256 = "0zwy2fr95s5wzrr2iwbayjh9xh421p6wf0m75szl7rw930v1kb2y"; + sha256 = "sha256-mSdMmP5b6pu954GQxBrb0bEghyLLKtSGd6aPhHPwOV0="; }; buildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix index 8f5f7fd619..b2715b4d29 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/sqlite-utils/default.nix @@ -13,12 +13,12 @@ buildPythonPackage rec { pname = "sqlite-utils"; - version = "3.17"; + version = "3.17.1"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "77acd202aa568a1f6888c5d8879f306bb3f8acedc82df0df98eb615caa491abb"; + sha256 = "0cfde0c46a2d4c09d6df8609fe53642bc3ab443bcef3106d8f1eabeb3fccbe3d"; }; postPatch = '' diff --git a/third_party/nixpkgs/pkgs/development/python-modules/streamlabswater/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/streamlabswater/default.nix index fc90ea222c..0e864960ca 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/streamlabswater/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/streamlabswater/default.nix @@ -1,22 +1,20 @@ { lib , buildPythonPackage -, fetchFromGitHub +, fetchPypi , pythonOlder , requests }: buildPythonPackage rec { pname = "streamlabswater"; - version = "0.3.2"; + version = "1.0.1"; format = "setuptools"; disabled = pythonOlder "3.6"; - src = fetchFromGitHub { - owner = pname; - repo = "stream-python"; - rev = "v${version}"; - sha256 = "1lh1i1ksic9yhxnwc7mqm5qla98x85dfwj846kwldwam0vcrqlk7"; + src = fetchPypi { + inherit pname version; + sha256 = "sha256-kXG0Wg3PVryMBQ9RMMtEzudMiwVQq7Ikw2OK7JcBojA="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/surepy/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/surepy/default.nix index ed408d2b41..1d0b938d49 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/surepy/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/surepy/default.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "surepy"; - version = "0.7.1"; + version = "0.7.2"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -26,7 +26,7 @@ buildPythonPackage rec { owner = "benleb"; repo = pname; rev = "v${version}"; - sha256 = "sha256-h2PEzS3R7NXIUWYOiTpe5ZEU1RopaRj1phudmvcklug="; + sha256 = "sha256-yc+jXA4ndFhRZmFPz11HbVs9qaPFNa6WdwXj6hRyjw4="; }; postPatch = '' diff --git a/third_party/nixpkgs/pkgs/development/python-modules/transitions/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/transitions/default.nix index 94d937b88f..0dca476deb 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/transitions/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/transitions/default.nix @@ -12,11 +12,11 @@ buildPythonPackage rec { pname = "transitions"; - version = "0.8.9"; + version = "0.8.10"; src = fetchPypi { inherit pname version; - sha256 = "fc2ec6d6b6f986cd7e28e119eeb9ba1c9cc51ab4fbbdb7f2dedad01983fd2de0"; + sha256 = "b0385975a842e885c1a55c719d2f90164471665794d39d51f9eb3f11e1d9c8ac"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/twilio/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/twilio/default.nix index 367117e17e..d441e97fee 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/twilio/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/twilio/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "twilio"; - version = "6.56.0"; + version = "7.1.0"; src = fetchFromGitHub { owner = "twilio"; repo = "twilio-python"; rev = version; - sha256 = "sha256-vVJuuPxVyOqnplPYrjCjIm5IyIFZvsCMoDLrrHpHK+4="; + sha256 = "sha256-pagqetDQ8/1xDCxZJVTZc9T0dmFA1opd7tMDR11wlVs="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/urlextract/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/urlextract/default.nix index 49ff7ddf08..cc5d2ae000 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/urlextract/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/urlextract/default.nix @@ -11,11 +11,11 @@ buildPythonPackage rec { pname = "urlextract"; - version = "1.3.0"; + version = "1.4.0"; src = fetchPypi { inherit pname version; - sha256 = "sha256-yxOuiswFOJnAvxwTT++Zhk8nZWK2f4ePsQpUYI7EYS4="; + sha256 = "669f07192584b841b49ba8868fbd6b00e7ddc28367d36a3d8ca8c8e429420748"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix index 38a6d236d8..ee0afa0273 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/zha-quirks/default.nix @@ -9,13 +9,13 @@ buildPythonPackage rec { pname = "zha-quirks"; - version = "0.0.61"; + version = "0.0.62"; src = fetchFromGitHub { owner = "zigpy"; repo = "zha-device-handlers"; rev = version; - sha256 = "sha256-uDQAXH0p8Ly0ZbwNlkVo1b7fAXSu77U7v3BHd0B1YQk="; + sha256 = "sha256-wXXdxE69EABrvJA8utrhLW4+8ixcyCraWHx2M3uE8mw="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/zigpy/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/zigpy/default.nix index af498c59cf..38b843d577 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/zigpy/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/zigpy/default.nix @@ -15,13 +15,13 @@ buildPythonPackage rec { pname = "zigpy"; - version = "0.37.1"; + version = "0.38.0"; src = fetchFromGitHub { owner = "zigpy"; repo = "zigpy"; rev = version; - sha256 = "sha256-tDpu6tv8qwIPB3G5GKURtDi6QOYxF5jEVbzmJ2Px5W4="; + sha256 = "sha256-3iS2VMaicbgtsiKUPe6GjFJQV8xKjs+dC8+IeprMa9I="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/zwave-js-server-python/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/zwave-js-server-python/default.nix index a37ee67ed8..feed2f73ca 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/zwave-js-server-python/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/zwave-js-server-python/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "zwave-js-server-python"; - version = "0.30.0"; + version = "0.31.3"; disabled = pythonOlder "3.8"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "home-assistant-libs"; repo = pname; rev = version; - sha256 = "sha256-KYMq0qDVLHzgaYljwYeK58aggD5kBAI1J/RsirGcVvs="; + sha256 = "sha256-mOcaxt8pc+d7qBoDtwCsDWoVs3Hw17v5WDKgzIW1WzY="; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/r-modules/default.nix b/third_party/nixpkgs/pkgs/development/r-modules/default.nix index 5a5b9fc134..38511dd3b8 100644 --- a/third_party/nixpkgs/pkgs/development/r-modules/default.nix +++ b/third_party/nixpkgs/pkgs/development/r-modules/default.nix @@ -22,7 +22,7 @@ let doCheck ? true, requireX ? false, broken ? false, - hydraPlatforms ? R.meta.hydraPlatforms + hydraPlatforms ? R.meta.platforms }: buildRPackage { name = "${name}-${version}"; src = fetchurl { diff --git a/third_party/nixpkgs/pkgs/development/tools/database/prisma-engines/default.nix b/third_party/nixpkgs/pkgs/development/tools/database/prisma-engines/default.nix index eeba3f49fd..c8fe44c5d0 100644 --- a/third_party/nixpkgs/pkgs/development/tools/database/prisma-engines/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/database/prisma-engines/default.nix @@ -52,7 +52,7 @@ in rustPlatform.buildRustPackage rec { description = "A collection of engines that power the core stack for Prisma"; homepage = "https://www.prisma.io/"; license = licenses.asl20; - platforms = [ "x86_64-linux" ]; + platforms = [ "x86_64-linux" "aarch64-linux" ]; maintainers = with maintainers; [ pamplemousse pimeys ]; }; } diff --git a/third_party/nixpkgs/pkgs/development/tools/electron/default.nix b/third_party/nixpkgs/pkgs/development/tools/electron/default.nix index c95977d8bb..c8c388847a 100644 --- a/third_party/nixpkgs/pkgs/development/tools/electron/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/electron/default.nix @@ -135,13 +135,13 @@ rec { headers = "0p8lkhy97yq43sl6s4rskhdnzl520968cyh5l4fdhl2fhm5mayd4"; }; - electron_15 = mkElectron "15.1.0" { - armv7l-linux = "30213989477e29341b9873110e4b180e7d2ced4f72d26c914e7642930c9338fb"; - aarch64-linux = "7a6f07727b91e150b16e9cac5e374ce88c43c85aae76b306a0e5b2a37b3275e8"; - x86_64-linux = "c2f50ede410558e2eb761648fc9bacf34472dccf8b740f3037d351f9ae604072"; - i686-linux = "0b502ca518f61c0613d2dee1c1ae18d0d71c793f9b822f6c92b6428afda20f20"; - x86_64-darwin = "8062bbb29e5f12bf1efee27dc5dd18c98ef9b09d68c8fabd12ad4465e5bb02bd"; - aarch64-darwin = "cb28d4a1167ea2f42668ff4b880223ccf211a79ea53024652afc90b7aaac419e"; - headers = "128rw8z06izymwic2lrqbjx7p1ap39q3mmawswwpr6h0jazqrkv3"; + electron_15 = mkElectron "15.1.1" { + armv7l-linux = "902711052fdb0e7bfcded9396aa24fd5bcf6fcc5f70548f51396d75a45cd6645"; + aarch64-linux = "05b24c409a6dbf83b5f64f2d8904fa37cf71259c46beaaabd4b9a5ba75d03cd3"; + x86_64-linux = "70de2da51c6a8591b88f08366c82166a51b1719243f67ef1a14eddbb806a115f"; + i686-linux = "30f4be4dcf06c6dda953af94dd14a232767592f69e7f408def1a5b58dab054ea"; + x86_64-darwin = "ddfab707063a79f25a95983abeba6ef4e581d53b6f26e7667fde4fd11c5547b0"; + aarch64-darwin = "8db2ff70446e081311bb1d5cc8a13fd66e7143046747f87cdb07b139d973bb89"; + headers = "1hfgxk1iyzg6jr36s78l3m3g8433gna6l1n2jz33mz9iw66wgy27"; }; } diff --git a/third_party/nixpkgs/pkgs/development/tools/jd-diff-patch/default.nix b/third_party/nixpkgs/pkgs/development/tools/jd-diff-patch/default.nix new file mode 100644 index 0000000000..dae3cbea3e --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/tools/jd-diff-patch/default.nix @@ -0,0 +1,27 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "jd-diff-patch"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "josephburnett"; + repo = "jd"; + rev = "v${version}"; + sha256 = "sha256-OAy4IS2JZYYPeJITNHZKiYEapzGqqYPDBCLflLYetzg="; + }; + + # not including web ui + excludedPackages = [ "gae" "pack" ]; + + vendorSha256 = "sha256-w3mFra7Je+8qIDQMSyUYucoLZ6GtrZmr56O6xmihIYc="; + + doCheck = true; + + meta = with lib; { + description = "Commandline utility and Go library for diffing and patching JSON values"; + homepage = "https://github.com/josephburnett/jd"; + license = licenses.mit; + maintainers = with maintainers; [ bryanasdev000 blaggacao ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/tools/rslint/default.nix b/third_party/nixpkgs/pkgs/development/tools/rslint/default.nix index 11ed2349e6..cff68cc07c 100644 --- a/third_party/nixpkgs/pkgs/development/tools/rslint/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/rslint/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "rslint"; - version = "0.3.0"; + version = "0.3.1"; src = fetchFromGitHub { owner = "rslint"; repo = pname; rev = "v${version}"; - sha256 = "12329x39zqmgl8zf228msdcdjfv3h11dmfha1kiwq71jvfga2v10"; + sha256 = "sha256-AkSQpGbhRVmDuDAbMzx00BELpI2szJ+rjKo8Qjcug1E="; }; - cargoSha256 = "sha256-/pZ6jQ/IdLLFdFTvmbXZKCw9HhnTkSSh6q79Rpbtfz8="; + cargoSha256 = "sha256-U8Uf7LG6+dOi+XxRpJrpy0kAqyr8fAlVchE9ZJ+ex/s="; cargoBuildFlags = [ "-p" "rslint_cli" diff --git a/third_party/nixpkgs/pkgs/development/tools/skopeo/default.nix b/third_party/nixpkgs/pkgs/development/tools/skopeo/default.nix index b162861f15..42afb791dd 100644 --- a/third_party/nixpkgs/pkgs/development/tools/skopeo/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/skopeo/default.nix @@ -14,13 +14,13 @@ buildGoModule rec { pname = "skopeo"; - version = "1.4.1"; + version = "1.5.0"; src = fetchFromGitHub { rev = "v${version}"; owner = "containers"; repo = "skopeo"; - sha256 = "sha256-K+Zn+L7yylUj+iMrsXocWRD4O8HmxdsIsjO36SCkWiU="; + sha256 = "sha256-75zrOYiwlpHbEgmpJ9THYKbF4sL4Jp009/+Fw12Wvys="; }; outputs = [ "out" "man" ]; diff --git a/third_party/nixpkgs/pkgs/development/tools/sumneko-lua-language-server/default.nix b/third_party/nixpkgs/pkgs/development/tools/sumneko-lua-language-server/default.nix index 1f2553e32f..b388ec3c5e 100644 --- a/third_party/nixpkgs/pkgs/development/tools/sumneko-lua-language-server/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/sumneko-lua-language-server/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "sumneko-lua-language-server"; - version = "2.3.6"; + version = "2.4.1"; src = fetchFromGitHub { owner = "sumneko"; repo = "lua-language-server"; rev = version; - sha256 = "sha256-iwmH4pbeKNkEYsaSd6I7ULSoEMwAtxOanF7vAutuW64="; + sha256 = "sha256-RhjH/phRVlNO9nPL+TtcrZYpwqNygpXjI/Pdyrxxv/4="; fetchSubmodules = true; }; @@ -17,13 +17,6 @@ stdenv.mkDerivation rec { makeWrapper ]; - postPatch = '' - # doesn't work on aarch64, already removed on master: - # https://github.com/actboy168/bee.lua/commit/fd5ee552c8cff2c48eff72edc0c8db5b7bf1ee2c - rm {3rd/luamake/,}3rd/bee.lua/test/test_platform.lua - sed /test_platform/d -i {3rd/luamake/,}3rd/bee.lua/test/test.lua - ''; - preBuild = '' cd 3rd/luamake ''; diff --git a/third_party/nixpkgs/pkgs/misc/emulators/wine/base.nix b/third_party/nixpkgs/pkgs/misc/emulators/wine/base.nix index 46532179ed..fa5c4afdc2 100644 --- a/third_party/nixpkgs/pkgs/misc/emulators/wine/base.nix +++ b/third_party/nixpkgs/pkgs/misc/emulators/wine/base.nix @@ -74,7 +74,7 @@ stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) { ++ lib.optionals openclSupport [ pkgs.opencl-headers pkgs.ocl-icd ] ++ lib.optionals xmlSupport [ pkgs.libxml2 pkgs.libxslt ] ++ lib.optionals tlsSupport [ pkgs.openssl pkgs.gnutls ] - ++ lib.optionals openglSupport [ pkgs.libGLU pkgs.libGL pkgs.mesa.osmesa pkgs.libdrm ] + ++ lib.optionals (openglSupport && !stdenv.isDarwin) [ pkgs.libGLU pkgs.libGL pkgs.mesa.osmesa pkgs.libdrm ] ++ lib.optionals stdenv.isDarwin (with pkgs.buildPackages.darwin.apple_sdk.frameworks; [ CoreServices Foundation ForceFeedback AppKit OpenGL IOKit DiskArbitration Security ApplicationServices AudioToolbox CoreAudio AudioUnit CoreMIDI OpenAL OpenCL Cocoa Carbon diff --git a/third_party/nixpkgs/pkgs/misc/vim-plugins/generated.nix b/third_party/nixpkgs/pkgs/misc/vim-plugins/generated.nix index 6afeda61ed..821ff43c2d 100644 --- a/third_party/nixpkgs/pkgs/misc/vim-plugins/generated.nix +++ b/third_party/nixpkgs/pkgs/misc/vim-plugins/generated.nix @@ -233,12 +233,12 @@ final: prev: auto-session = buildVimPluginFrom2Nix { pname = "auto-session"; - version = "2021-09-07"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "rmagatti"; repo = "auto-session"; - rev = "3909c7805ee3c140c6bbc16ec001046a07eada15"; - sha256 = "03ay788vacs65cylp0ly7clpzhrx8vzc7zn94mk15hr9843s1kkd"; + rev = "dc7619fc3c6e3368ae449bf8ae1ad7630a720406"; + sha256 = "0izpxbwa144r9wjiy1m0r19hfwdlm2r3pggn178gj56ll7y2njnk"; }; meta.homepage = "https://github.com/rmagatti/auto-session/"; }; @@ -449,12 +449,12 @@ final: prev: chadtree = buildVimPluginFrom2Nix { pname = "chadtree"; - version = "2021-10-05"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "ms-jpq"; repo = "chadtree"; - rev = "33828c635ef856919889b229ab771268089d4c36"; - sha256 = "0645p6mwgnhdp5lnri4c4h6ryyfn1s3487ydnhkr4p629vnrsl4k"; + rev = "d84f60a07871fa8efef59d350f9884fd8a542a98"; + sha256 = "1y9pkgwkc0cga25afknn5xrbn2kx46kg97348gjnk9bg297qm05g"; }; meta.homepage = "https://github.com/ms-jpq/chadtree/"; }; @@ -641,12 +641,12 @@ final: prev: cmp-path = buildVimPluginFrom2Nix { pname = "cmp-path"; - version = "2021-09-11"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "hrsh7th"; repo = "cmp-path"; - rev = "0016221b6143fd6bf308667c249e9dbdee835ae2"; - sha256 = "03k43xavw17bbjzmkknp9z4m8jv9hn6wyvjwaj1gpyz0n21kn5bb"; + rev = "8d88c92dd5a202a996b4caac7284e4ea2f086765"; + sha256 = "0m7wmnanhmvx4ww5xiz6rfjzk3ci10gk4dda8qd87kdiszq1zay7"; }; meta.homepage = "https://github.com/hrsh7th/cmp-path/"; }; @@ -906,12 +906,12 @@ final: prev: compe-tmux = buildVimPluginFrom2Nix { pname = "compe-tmux"; - version = "2021-08-24"; + version = "2021-09-16"; src = fetchFromGitHub { owner = "andersevenrud"; repo = "compe-tmux"; - rev = "881b5255e12fef6c28e1039f4afeb77626205b24"; - sha256 = "1l2bvjhwi2s33cp6m58gvi9k2hpg3sdv9048ah8xk0rjd7kb2adn"; + rev = "b80706c31711db5ef0fab9e141733a7e95203d22"; + sha256 = "1874rzhxylqqkbv7sdkfq5dpbpqzpwf0r90yx3gxa4mipnjd22sm"; }; meta.homepage = "https://github.com/andersevenrud/compe-tmux/"; }; @@ -2495,12 +2495,12 @@ final: prev: indent-blankline-nvim = buildVimPluginFrom2Nix { pname = "indent-blankline.nvim"; - version = "2021-10-04"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "lukas-reineke"; repo = "indent-blankline.nvim"; - rev = "31fe9b4ac3eaaac0bf5e90d607662c32f59dc0b7"; - sha256 = "1fwyrp5w7q4pz4a5dh24j2v8qrm4pr71p7qm14hj7xw3a80s9bci"; + rev = "948b6ac3303b9e2e75daad0bd0ec844ed6b06d4a"; + sha256 = "1adsy4nkl8dm6bqkc2chy47na3kqh8g1lkmxzvc5wdfw0c27z0i0"; }; meta.homepage = "https://github.com/lukas-reineke/indent-blankline.nvim/"; }; @@ -2892,12 +2892,12 @@ final: prev: lightline-bufferline = buildVimPluginFrom2Nix { pname = "lightline-bufferline"; - version = "2021-09-17"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "mengelbrecht"; repo = "lightline-bufferline"; - rev = "4d1ddf0508069395ed54e7eb38a47f04fb03a387"; - sha256 = "06x3zdfss58ky5z8kgca1gq2zvdqv1nfw3mgnlsj0qq52mj0jwgj"; + rev = "61c7c8668b80537aefa69654a6e5a5e63095be61"; + sha256 = "0aa7cwzaqzma1w5xyvppj6g3i8kc7199zwd4nhc9ydx9isn885sh"; }; meta.homepage = "https://github.com/mengelbrecht/lightline-bufferline/"; }; @@ -2928,12 +2928,12 @@ final: prev: lightspeed-nvim = buildVimPluginFrom2Nix { pname = "lightspeed.nvim"; - version = "2021-09-28"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "ggandor"; repo = "lightspeed.nvim"; - rev = "0bc3acda929b946e175d83a5f702d28d231b0089"; - sha256 = "1n7wa3hirmrm83w4f9m9wns3alsfmfpzc2r77l9kda012iigm51i"; + rev = "9340b1bb6ec9f92939a323889200e3032f8ed6fe"; + sha256 = "1w9x9g3l0hnc157fjq0qyz52mr4s6m56zwsmc0l0b53z9prma5mz"; }; meta.homepage = "https://github.com/ggandor/lightspeed.nvim/"; }; @@ -3036,12 +3036,12 @@ final: prev: lspkind-nvim = buildVimPluginFrom2Nix { pname = "lspkind-nvim"; - version = "2021-08-19"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "onsails"; repo = "lspkind-nvim"; - rev = "9cc326504e566f467407bae2669a98963c5404d2"; - sha256 = "0bbczy2hhdl79g749d41vv5fyfcdd3rsxhi8mbq6avc0vhw72m8c"; + rev = "0df591f3001d8c58b7d71a8dc7e006b8cea4959d"; + sha256 = "02w8wagfssbail50p1pb6bdjig6y9ns0bbmdal4kfdq797sh4c3n"; }; meta.homepage = "https://github.com/onsails/lspkind-nvim/"; }; @@ -3084,12 +3084,12 @@ final: prev: luasnip = buildVimPluginFrom2Nix { pname = "luasnip"; - version = "2021-10-04"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "l3mon4d3"; repo = "luasnip"; - rev = "2f7e2b173386c9a5f26fbc22a765301784893e1c"; - sha256 = "02w690fhlhmbjb03958kz5migh8iv5rnmhh3lg8sb08haclh14g3"; + rev = "7ae2627a8088f879272f85b9ac97d346ec554521"; + sha256 = "0agwval3hpkmgr56jnf6x2yhdy5bqzw4z1vcnh2qbp34yi0r5a07"; }; meta.homepage = "https://github.com/l3mon4d3/luasnip/"; }; @@ -3648,12 +3648,12 @@ final: prev: neovim-ayu = buildVimPluginFrom2Nix { pname = "neovim-ayu"; - version = "2021-09-13"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "Shatur"; repo = "neovim-ayu"; - rev = "9841e30f2cff5b1929620565c9289eb561bae75a"; - sha256 = "0h25wgv5fvkycfsvw6jb82jl3fb94fvay1ii91yqiailpwa2ig76"; + rev = "750d2246d38cd2839356ab8506fc8328a76d33db"; + sha256 = "0gg11pswi2alz2khd7ygjhq6kb2nnawpd1f2vvgpc3wpqhp6lk92"; }; meta.homepage = "https://github.com/Shatur/neovim-ayu/"; }; @@ -3768,12 +3768,12 @@ final: prev: nightfox-nvim = buildVimPluginFrom2Nix { pname = "nightfox.nvim"; - version = "2021-10-04"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "EdenEast"; repo = "nightfox.nvim"; - rev = "15dfe546111a96e5f30198d5bd163658acdbbe3b"; - sha256 = "0a03i8i5fjzffqv4pp29x32ld3h5azvia2a1b3sc5i0bbzishxb5"; + rev = "9727b081eaab33e7ba7d6593e85e1ff2c854ecaa"; + sha256 = "065bp6aq5kx7kkngjim8q314balbn36aamf71g1aqklxxkkiyfz5"; }; meta.homepage = "https://github.com/EdenEast/nightfox.nvim/"; }; @@ -3864,12 +3864,12 @@ final: prev: null-ls-nvim = buildVimPluginFrom2Nix { pname = "null-ls.nvim"; - version = "2021-10-03"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "jose-elias-alvarez"; repo = "null-ls.nvim"; - rev = "1fadae38e9e43cbd20ab238e18c2d6f099607e74"; - sha256 = "1jsjsi2i08h9mjj88yzw6hrzphlhzsvqjdm1lkqwmjllklnh3xwk"; + rev = "1c482001bd3dc044f973efc474919b33a9994e5a"; + sha256 = "120vkg5q8ilnvmymk6zi42bxifabvzr4yc0d83kb7457xk0xkdpz"; }; meta.homepage = "https://github.com/jose-elias-alvarez/null-ls.nvim/"; }; @@ -3912,12 +3912,12 @@ final: prev: nvim-autopairs = buildVimPluginFrom2Nix { pname = "nvim-autopairs"; - version = "2021-10-03"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "windwp"; repo = "nvim-autopairs"; - rev = "72b2b6428561e692f7d65699eebaf122d7f24c29"; - sha256 = "1s01m28v5clx1p1h4q8fga3f3mqsn5w6wlmdcyb3d9qzlzlvwvy1"; + rev = "85fd134e6a6d3dfcca43f5f75f0262348ae20dd2"; + sha256 = "07mdc7p2ymxvmm810w79n224vx5bpp374r95dxc7v37ngpsv32nz"; }; meta.homepage = "https://github.com/windwp/nvim-autopairs/"; }; @@ -3972,12 +3972,12 @@ final: prev: nvim-cmp = buildVimPluginFrom2Nix { pname = "nvim-cmp"; - version = "2021-09-30"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "hrsh7th"; repo = "nvim-cmp"; - rev = "af70f40d2eb6db2121536c8df2e114af759df537"; - sha256 = "1sv6hsfa1anax7dvp9h83m4z50kpg51fzvvmjb15jjfdih5zmcdb"; + rev = "a39f72a4634e4bb05371a6674e3e9218cbfc6b20"; + sha256 = "04ksgg491nmyy7khdid9j45pv65yp7ksa0q7cr7gvqrh69v55daj"; }; meta.homepage = "https://github.com/hrsh7th/nvim-cmp/"; }; @@ -4104,12 +4104,12 @@ final: prev: nvim-gps = buildVimPluginFrom2Nix { pname = "nvim-gps"; - version = "2021-09-30"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "smiteshp"; repo = "nvim-gps"; - rev = "e8b068b0e59395e2acf4b1bdc066bd80539704ba"; - sha256 = "1342brvmsjgrwb2hzm466hbd7s5dxw7i0dkwcjnipqdw2jvll9vs"; + rev = "449dc8b5b34d54504d8331b9fa7eee95520400cc"; + sha256 = "1baa9l71dgn2chbkj6p00rkj8xdq6d8icr93w31wmas6470bwgf2"; }; meta.homepage = "https://github.com/smiteshp/nvim-gps/"; }; @@ -4176,12 +4176,12 @@ final: prev: nvim-lspconfig = buildVimPluginFrom2Nix { pname = "nvim-lspconfig"; - version = "2021-10-04"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "neovim"; repo = "nvim-lspconfig"; - rev = "30442900db62ff875013b3f1584e8c0a832c43d2"; - sha256 = "1v0hmf5sv884l1svvfb20yb5q9vfbc4ap0268hcxc7393al4fs2f"; + rev = "66659884c36dadd1f445f9012fcf4e7600286d3e"; + sha256 = "1hp3rqk1zfvxgjmllfdh5as9112x54mfa73l3dxawqfv4cfi25w5"; }; meta.homepage = "https://github.com/neovim/nvim-lspconfig/"; }; @@ -4284,12 +4284,12 @@ final: prev: nvim-tree-lua = buildVimPluginFrom2Nix { pname = "nvim-tree.lua"; - version = "2021-10-03"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "kyazdani42"; repo = "nvim-tree.lua"; - rev = "29e5b754b7250aded609e8c071804053db5765c6"; - sha256 = "14vj1yb570hg3zajvp62pwn75hih22dp2jp63vdfpmalznzwjjbc"; + rev = "7ca37f824bc79bcaa8d6a5d8f94295d625269e0e"; + sha256 = "0n3m44pykba0vn7440n8s6i7i8ii0r7wcnpdym9vdk4skpn1y3fa"; }; meta.homepage = "https://github.com/kyazdani42/nvim-tree.lua/"; }; @@ -4524,12 +4524,12 @@ final: prev: open-browser-vim = buildVimPluginFrom2Nix { pname = "open-browser.vim"; - version = "2021-10-03"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "tyru"; repo = "open-browser.vim"; - rev = "3bb313a81922486c419e0a587cf84ef853af3e16"; - sha256 = "17bg3vny1rzbyyra7qzzh9p0i00i2ivl96mdd4pbn2zqh77jd2vv"; + rev = "80ec3f2bb0a86ac13c998e2f2c86e16e6d2f20bb"; + sha256 = "01qj967nch3wwkbshrsdzyyr4apvsqrpa4dkmpn21qr2183w84zz"; }; meta.homepage = "https://github.com/tyru/open-browser.vim/"; }; @@ -5041,24 +5041,24 @@ final: prev: rust-tools-nvim = buildVimPluginFrom2Nix { pname = "rust-tools.nvim"; - version = "2021-10-01"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "simrat39"; repo = "rust-tools.nvim"; - rev = "c2aacb9cd51907ec6cce65a683cb2df6ae78a227"; - sha256 = "067hjyw7d2wf443bny3m3gjkq3avf3k99xwzkl1yrd4vn321h2kn"; + rev = "046f18f2b4af2cd928bdb1736f83fea54efd3dcb"; + sha256 = "1h9y5jj90vkl50vfwi1hvhn2z71yhjsfvfldlvwakjx92izn84dm"; }; meta.homepage = "https://github.com/simrat39/rust-tools.nvim/"; }; rust-vim = buildVimPluginFrom2Nix { pname = "rust.vim"; - version = "2021-09-04"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "rust-lang"; repo = "rust.vim"; - rev = "c06a17151c69b9d61e60a28274932a28fd37c453"; - sha256 = "11ms2has79w2jazvca2mysdbscs1412xmcql0mxc72wrpnws321h"; + rev = "4aa69b84c8a58fcec6b6dad6fe244b916b1cf830"; + sha256 = "07nh8gvkwq91i7qcz0rk5jlc8sb4d3af4zq2892kmmw576zg1wd8"; }; meta.homepage = "https://github.com/rust-lang/rust.vim/"; }; @@ -6174,12 +6174,12 @@ final: prev: vifm-vim = buildVimPluginFrom2Nix { pname = "vifm.vim"; - version = "2021-10-04"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "vifm"; repo = "vifm.vim"; - rev = "69d1d341e6e8c5424be178cc60375b517c9e4d4e"; - sha256 = "1zh6jg0ycalwq0dz7b65lrvhr5af6317j12k1s2xl7piabjbhxrx"; + rev = "85d7681b004d1a32dd02a5790d713e06f4a251b8"; + sha256 = "0f3bq3d0nhxxsdmzq2qb7jjnwf8blkzsbnprqb715f5lqr6diwls"; }; meta.homepage = "https://github.com/vifm/vifm.vim/"; }; @@ -6570,12 +6570,12 @@ final: prev: vim-autoformat = buildVimPluginFrom2Nix { pname = "vim-autoformat"; - version = "2021-09-13"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "vim-autoformat"; repo = "vim-autoformat"; - rev = "a65a58db77ad1b5889a68bedbea890c8161b7f8c"; - sha256 = "1frvyb3xpd4njh7ixg1ywj8x11ga343kqrmrgncb45scv12i7hx4"; + rev = "7d7662e3f958e729ce21fee0ae623e3b2c438e3d"; + sha256 = "0ijciwpxjkykk6cc1a55bwbc9kbbac8yq33gh331323gmzm517h8"; }; meta.homepage = "https://github.com/vim-autoformat/vim-autoformat/"; }; @@ -7146,12 +7146,12 @@ final: prev: vim-dirvish = buildVimPluginFrom2Nix { pname = "vim-dirvish"; - version = "2021-09-02"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "justinmk"; repo = "vim-dirvish"; - rev = "b2b5709b7979bb99b0548d5879c49672891b9b5b"; - sha256 = "076rvky65x7qiplbidmpz4f3is9l77g12bci1h490cni4n3rh73f"; + rev = "77eae77073b285f7b6967922447370f2952d4e4d"; + sha256 = "0wkz452gchd796h8ysr0xccpk86q8i63mk7ywfrxghf3a7zk0kan"; }; meta.homepage = "https://github.com/justinmk/vim-dirvish/"; }; @@ -7290,12 +7290,12 @@ final: prev: vim-elixir = buildVimPluginFrom2Nix { pname = "vim-elixir"; - version = "2021-09-04"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "elixir-editors"; repo = "vim-elixir"; - rev = "7e7f42cf10ba05b6d783de411a6ceca50fe0cc69"; - sha256 = "0pfh63qinj1kr612plnixw12rndpv2qz45w1kb9kqddzzp3fjy98"; + rev = "8ace05a9a4e225d103a9c06f6d5148d0e07408df"; + sha256 = "0b3lk6z5l3bmxkh4syk8jrqh9s0d4kikna23990f3j06k141k6gp"; }; meta.homepage = "https://github.com/elixir-editors/vim-elixir/"; }; @@ -8541,12 +8541,12 @@ final: prev: vim-matchup = buildVimPluginFrom2Nix { pname = "vim-matchup"; - version = "2021-10-01"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "andymass"; repo = "vim-matchup"; - rev = "870df0bb741eed49d093268593bce385bd82a41a"; - sha256 = "185jbg2i49vknfy64s811dppwgw1d4lq8q97q0rrnvh7w6q88wl8"; + rev = "ce323c1ed83866fa28371c800d8d9afb24f1a64d"; + sha256 = "16sgpdygilvd3mpqhm61lqiybnq100fdqd826zfvff2cri24dscl"; }; meta.homepage = "https://github.com/andymass/vim-matchup/"; }; @@ -9861,12 +9861,12 @@ final: prev: vim-table-mode = buildVimPluginFrom2Nix { pname = "vim-table-mode"; - version = "2021-09-04"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "dhruvasagar"; repo = "vim-table-mode"; - rev = "02d28b932398bb7774def2edaef6f1c0ad92c3e3"; - sha256 = "1bh93qfvswb66fj7amhfmhyiyg17rnp28cpq07asm5gccr27ssw7"; + rev = "eb42c62812f149f7315552f43e3dd617a43b2ab4"; + sha256 = "04cl96qy6db0r07wg5vwhwpbcma53868gy75lfl21is87biz0d6b"; }; meta.homepage = "https://github.com/dhruvasagar/vim-table-mode/"; }; @@ -10162,12 +10162,12 @@ final: prev: vim-ultest = buildVimPluginFrom2Nix { pname = "vim-ultest"; - version = "2021-09-26"; + version = "2021-10-05"; src = fetchFromGitHub { owner = "rcarriga"; repo = "vim-ultest"; - rev = "dfea06dc0e8da24338eef3414259055f360449cb"; - sha256 = "1h8g3pcwgjlm68rlzb0v9xwbgccklig68pd8i8g18bzw341b622b"; + rev = "7861d1925baef8fe3fa313affdfbdcaa6b2af26f"; + sha256 = "165klmixdch1nc9cxdldl5yg4q79q58riw0mg0mahqvvr5m1yrw3"; }; meta.homepage = "https://github.com/rcarriga/vim-ultest/"; }; @@ -10186,12 +10186,12 @@ final: prev: vim-unimpaired = buildVimPluginFrom2Nix { pname = "vim-unimpaired"; - version = "2021-09-19"; + version = "2021-09-24"; src = fetchFromGitHub { owner = "tpope"; repo = "vim-unimpaired"; - rev = "112e23a22ff41d090c2440aeaf12d2a6c5486bc6"; - sha256 = "05vc09g91c6zz37p6as3q1fm9c7ahvjih1jd607bhgbzys8342c7"; + rev = "39f195d7e66141d7f1fa683927547026501e9961"; + sha256 = "0bbiv32brznns82v8s0s2fylcn4j5d3vw4x2kp5h6zb4lqgya30q"; }; meta.homepage = "https://github.com/tpope/vim-unimpaired/"; }; @@ -10270,12 +10270,12 @@ final: prev: vim-vsnip-integ = buildVimPluginFrom2Nix { pname = "vim-vsnip-integ"; - version = "2021-10-02"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "hrsh7th"; repo = "vim-vsnip-integ"; - rev = "0eee427f96aa11dec031adc104e218775bafc172"; - sha256 = "1nb0kbv986vw4nf785s24435pyrya8jn4sjqn0168x5a0j83n2vr"; + rev = "8db26e85c12a382db6c34487de2e1512dd7516f5"; + sha256 = "1rlaglccvgpaj89lfn41ygykdizlis4wwrw92qxb9raz2a0z9idh"; }; meta.homepage = "https://github.com/hrsh7th/vim-vsnip-integ/"; }; @@ -10727,12 +10727,12 @@ final: prev: wilder-nvim = buildVimPluginFrom2Nix { pname = "wilder.nvim"; - version = "2021-10-03"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "gelguy"; repo = "wilder.nvim"; - rev = "4a98c80aa4e8156f41c972e58a7308a69f9fc87a"; - sha256 = "09iv34ha118dm1wdi6hdjs6vmy6la3q01ilalxihqhvwr7hlz48p"; + rev = "666b1778031c288615715ebd837acb1f946d83a7"; + sha256 = "1sx4rczbvg78gyyap56wa48i2lvy8x6briyp8jv500sh7x89q4zm"; }; meta.homepage = "https://github.com/gelguy/wilder.nvim/"; }; diff --git a/third_party/nixpkgs/pkgs/misc/vim-plugins/vim-plugin-names b/third_party/nixpkgs/pkgs/misc/vim-plugins/vim-plugin-names index 13e4d58379..4311949a7e 100644 --- a/third_party/nixpkgs/pkgs/misc/vim-plugins/vim-plugin-names +++ b/third_party/nixpkgs/pkgs/misc/vim-plugins/vim-plugin-names @@ -15,7 +15,7 @@ alvan/vim-closetag alx741/vim-hindent alx741/vim-stylishask amiorin/ctrlp-z -andersevenrud/compe-tmux@main +andersevenrud/compe-tmux@cmp andrep/vimacs andreshazard/vim-logreview AndrewRadev/sideways.vim@main diff --git a/third_party/nixpkgs/pkgs/misc/vscode-extensions/default.nix b/third_party/nixpkgs/pkgs/misc/vscode-extensions/default.nix index 1c1db601da..d464e735b8 100644 --- a/third_party/nixpkgs/pkgs/misc/vscode-extensions/default.nix +++ b/third_party/nixpkgs/pkgs/misc/vscode-extensions/default.nix @@ -1045,6 +1045,18 @@ let }; }; + llvm-vs-code-extensions.vscode-clangd = buildVscodeMarketplaceExtension { + mktplcRef = { + name = "vscode-clangd"; + publisher = "llvm-vs-code-extensions"; + version = "0.1.13"; + sha256 = "/MpwbM+obcD3uqk8hnDrnbEK9Jot4fMe4sNzLt6mVGI="; + }; + meta = { + license = lib.licenses.mit; + }; + }; + lokalise.i18n-ally = buildVscodeMarketplaceExtension { mktplcRef = { name = "i18n-ally"; diff --git a/third_party/nixpkgs/pkgs/os-specific/linux/joycond/default.nix b/third_party/nixpkgs/pkgs/os-specific/linux/joycond/default.nix index a203073b08..e60e661f0c 100644 --- a/third_party/nixpkgs/pkgs/os-specific/linux/joycond/default.nix +++ b/third_party/nixpkgs/pkgs/os-specific/linux/joycond/default.nix @@ -1,14 +1,14 @@ -{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, libevdev, udev }: +{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, libevdev, udev, acl }: stdenv.mkDerivation rec { pname = "joycond"; - version = "unstable-2021-03-27"; + version = "unstable-2021-07-30"; src = fetchFromGitHub { owner = "DanielOgorchock"; repo = "joycond"; - rev = "2d3f553060291f1bfee2e49fc2ca4a768b289df8"; - sha256 = "0dpmwspll9ar3pxg9rgnh224934par8h8bixdz9i2pqqbc3dqib7"; + rev = "f9a66914622514c13997c2bf7ec20fa98e9dfc1d"; + sha256 = "sha256-quw7yBHDDZk1+6uHthsfMCej7g5uP0nIAqzvI6436B8="; }; nativeBuildInputs = [ cmake pkg-config ]; @@ -25,6 +25,9 @@ stdenv.mkDerivation rec { substituteInPlace $out/etc/systemd/system/joycond.service --replace \ "ExecStart=/usr/bin/joycond" "ExecStart=$out/bin/joycond" + + substituteInPlace $out/etc/udev/rules.d/89-joycond.rules --replace \ + "/bin/setfacl" "${acl}/bin/setfacl" ''; meta = with lib; { diff --git a/third_party/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/third_party/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix index 378461f217..fa5729baf7 100644 --- a/third_party/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix +++ b/third_party/nixpkgs/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix @@ -1,6 +1,7 @@ { lib, buildPackages, fetchFromGitHub, fetchpatch, perl, buildLinux, ... } @ args: buildLinux (args // { + # NOTE: bcachefs-tools should be updated simultaneously to preserve compatibility version = "5.13.0-2021.10.01"; modDirVersion = "5.13.0"; diff --git a/third_party/nixpkgs/pkgs/servers/calibre-web/default.nix b/third_party/nixpkgs/pkgs/servers/calibre-web/default.nix index 32564e326a..a4d08dae2c 100644 --- a/third_party/nixpkgs/pkgs/servers/calibre-web/default.nix +++ b/third_party/nixpkgs/pkgs/servers/calibre-web/default.nix @@ -7,13 +7,13 @@ python3.pkgs.buildPythonApplication rec { pname = "calibre-web"; - version = "0.6.12"; + version = "0.6.13"; src = fetchFromGitHub { owner = "janeczku"; repo = "calibre-web"; rev = version; - sha256 = "sha256-IgS281qDxG302UznC63nZH8/ty4fgFtn+lLYdakGA4w="; + sha256 = "sha256-zU7ujvFPi4UaaEglIK3YX3TJxBME35NEKKblnJRt0tM="; }; prePatch = '' @@ -53,6 +53,7 @@ python3.pkgs.buildPythonApplication rec { flask_login flask_principal iso-639 + lxml pypdf3 requests sqlalchemy diff --git a/third_party/nixpkgs/pkgs/servers/home-assistant/component-packages.nix b/third_party/nixpkgs/pkgs/servers/home-assistant/component-packages.nix index b49cffef15..e9b203554c 100644 --- a/third_party/nixpkgs/pkgs/servers/home-assistant/component-packages.nix +++ b/third_party/nixpkgs/pkgs/servers/home-assistant/component-packages.nix @@ -2,7 +2,7 @@ # Do not edit! { - version = "2021.9.7"; + version = "2021.10.0"; components = { "abode" = ps: with ps; [ abodepy ]; "accuweather" = ps: with ps; [ accuweather ]; @@ -19,6 +19,7 @@ "air_quality" = ps: with ps; [ ]; "airly" = ps: with ps; [ airly ]; "airnow" = ps: with ps; [ pyairnow ]; + "airthings" = ps: with ps; [ ]; # missing inputs: airthings_cloud "airtouch4" = ps: with ps; [ ]; # missing inputs: airtouch4pyapi "airvisual" = ps: with ps; [ pyairvisual ]; "aladdin_connect" = ps: with ps; [ aladdin-connect ]; @@ -30,6 +31,7 @@ "alpha_vantage" = ps: with ps; [ alpha-vantage ]; "amazon_polly" = ps: with ps; [ boto3 ]; "ambee" = ps: with ps; [ ambee ]; + "amberelectric" = ps: with ps; [ amberelectric ]; "ambiclimate" = ps: with ps; [ aiohttp-cors ambiclimate ]; "ambient_station" = ps: with ps; [ aioambient ]; "amcrest" = ps: with ps; [ amcrest ha-ffmpeg ]; @@ -43,7 +45,7 @@ "apcupsd" = ps: with ps; [ ]; # missing inputs: apcaccess "api" = ps: with ps; [ aiohttp-cors ]; "apns" = ps: with ps; [ ]; # missing inputs: apns2 - "apple_tv" = ps: with ps; [ aiohttp-cors ifaddr netdisco pyatv zeroconf ]; + "apple_tv" = ps: with ps; [ pyatv ]; "apprise" = ps: with ps; [ apprise ]; "aprs" = ps: with ps; [ aprslib geopy ]; "aqualogic" = ps: with ps; [ aqualogic ]; @@ -149,6 +151,7 @@ "cover" = ps: with ps; [ ]; "cppm_tracker" = ps: with ps; [ ]; # missing inputs: clearpasspy "cpuspeed" = ps: with ps; [ py-cpuinfo ]; + "crownstone" = ps: with ps; [ aiohttp-cors pyserial pyudev ]; # missing inputs: crownstone-cloud crownstone-sse crownstone-uart "cups" = ps: with ps; [ pycups ]; "currencylayer" = ps: with ps; [ ]; "daikin" = ps: with ps; [ pydaikin ]; @@ -160,7 +163,7 @@ "deconz" = ps: with ps; [ pydeconz ]; "decora" = ps: with ps; [ bluepy ]; # missing inputs: decora "decora_wifi" = ps: with ps; [ ]; # missing inputs: decora_wifi - "default_config" = ps: with ps; [ pynacl pyturbojpeg aiodiscover aiohttp-cors async-upnp-client defusedxml emoji hass-nabucasa home-assistant-frontend ifaddr pillow pyserial pyudev scapy sqlalchemy zeroconf ]; + "default_config" = ps: with ps; [ pynacl pyturbojpeg aiodiscover aiohttp-cors async-upnp-client emoji hass-nabucasa home-assistant-frontend ifaddr pillow pyserial pyudev scapy sqlalchemy zeroconf ]; "delijn" = ps: with ps; [ pydelijn ]; "deluge" = ps: with ps; [ deluge-client ]; "demo" = ps: with ps; [ aiohttp-cors ]; @@ -185,7 +188,7 @@ "dlib_face_detect" = ps: with ps; [ face_recognition ]; "dlib_face_identify" = ps: with ps; [ face_recognition ]; "dlink" = ps: with ps; [ ]; # missing inputs: pyW215 - "dlna_dmr" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr ]; + "dlna_dmr" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr zeroconf ]; "dnsip" = ps: with ps; [ aiodns ]; "dominos" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pizzapi "doods" = ps: with ps; [ pillow pydoods ]; @@ -213,7 +216,7 @@ "edimax" = ps: with ps; [ pyedimax ]; "edl21" = ps: with ps; [ pysml ]; "ee_brightbox" = ps: with ps; [ eebrightbox ]; - "efergy" = ps: with ps; [ ]; + "efergy" = ps: with ps; [ ]; # missing inputs: pyefergy "egardia" = ps: with ps; [ pythonegardia ]; "eight_sleep" = ps: with ps; [ pyeight ]; "elgato" = ps: with ps; [ elgato ]; @@ -224,7 +227,7 @@ "emoncms" = ps: with ps; [ ]; "emoncms_history" = ps: with ps; [ ]; "emonitor" = ps: with ps; [ aioemonitor ]; - "emulated_hue" = ps: with ps; [ aiohttp-cors ]; + "emulated_hue" = ps: with ps; [ aiohttp-cors ifaddr ]; "emulated_kasa" = ps: with ps; [ sense-energy ]; "emulated_roku" = ps: with ps; [ aiohttp-cors emulated-roku ifaddr ]; "energy" = ps: with ps; [ aiohttp-cors sqlalchemy ]; @@ -527,7 +530,7 @@ "mobile_app" = ps: with ps; [ pynacl pyturbojpeg aiohttp-cors emoji hass-nabucasa pillow ]; "mochad" = ps: with ps; [ ]; # missing inputs: pymochad "modbus" = ps: with ps; [ pymodbus ]; - "modem_callerid" = ps: with ps; [ ]; # missing inputs: basicmodem + "modem_callerid" = ps: with ps; [ aiohttp-cors phone-modem pyserial pyudev ]; "modern_forms" = ps: with ps; [ aiomodernforms ]; "mold_indicator" = ps: with ps; [ ]; "monoprice" = ps: with ps; [ ]; # missing inputs: pymonoprice @@ -555,7 +558,7 @@ "nad" = ps: with ps; [ nad-receiver ]; "nam" = ps: with ps; [ nettigo-air-monitor ]; "namecheapdns" = ps: with ps; [ defusedxml ]; - "nanoleaf" = ps: with ps; [ pynanoleaf ]; + "nanoleaf" = ps: with ps; [ aionanoleaf ]; "neato" = ps: with ps; [ aiohttp-cors pybotvac ]; "nederlandse_spoorwegen" = ps: with ps; [ nsapi ]; "nello" = ps: with ps; [ pynello ]; @@ -802,7 +805,7 @@ "somfy_mylink" = ps: with ps; [ somfy-mylink-synergy ]; "sonarr" = ps: with ps; [ sonarr ]; "songpal" = ps: with ps; [ python-songpal ]; - "sonos" = ps: with ps; [ aiohttp-cors async-upnp-client defusedxml ifaddr plexapi plexauth plexwebsocket soco zeroconf ]; + "sonos" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr plexapi plexauth plexwebsocket soco zeroconf ]; "sony_projector" = ps: with ps; [ pysdcp ]; "soundtouch" = ps: with ps; [ aiohttp-cors ifaddr libsoundtouch zeroconf ]; "spaceapi" = ps: with ps; [ aiohttp-cors ]; @@ -814,7 +817,7 @@ "sql" = ps: with ps; [ sqlalchemy ]; "squeezebox" = ps: with ps; [ pysqueezebox ]; "srp_energy" = ps: with ps; [ srpenergy ]; - "ssdp" = ps: with ps; [ aiohttp-cors async-upnp-client defusedxml ifaddr zeroconf ]; + "ssdp" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr zeroconf ]; "starline" = ps: with ps; [ starline ]; "starlingbank" = ps: with ps; [ ]; # missing inputs: starlingbank "startca" = ps: with ps; [ xmltodict ]; @@ -867,7 +870,6 @@ "temper" = ps: with ps; [ ]; # missing inputs: temperusb "template" = ps: with ps; [ ]; "tensorflow" = ps: with ps; [ numpy pillow pycocotools tensorflow ]; # missing inputs: tf-models-official - "tesla" = ps: with ps; [ teslajsonpy ]; "tfiac" = ps: with ps; [ ]; # missing inputs: pytfiac "thermoworks_smoke" = ps: with ps; [ stringcase ]; # missing inputs: thermoworks_smoke "thethingsnetwork" = ps: with ps; [ ]; @@ -889,21 +891,20 @@ "torque" = ps: with ps; [ aiohttp-cors ]; "totalconnect" = ps: with ps; [ total-connect-client ]; "touchline" = ps: with ps; [ ]; # missing inputs: pytouchline - "tplink" = ps: with ps; [ pyhs100 ]; + "tplink" = ps: with ps; [ aiohttp-cors ifaddr python-kasa ]; "tplink_lte" = ps: with ps; [ ]; # missing inputs: tp-connected "traccar" = ps: with ps; [ aiohttp-cors stringcase ]; # missing inputs: pytraccar "trace" = ps: with ps; [ ]; - "trackr" = ps: with ps; [ ]; # missing inputs: pytrackr "tractive" = ps: with ps; [ aiotractive ]; "tradfri" = ps: with ps; [ pytradfri ]; "trafikverket_train" = ps: with ps; [ pytrafikverket ]; "trafikverket_weatherstation" = ps: with ps; [ pytrafikverket ]; "transmission" = ps: with ps; [ transmissionrpc ]; - "transport_nsw" = ps: with ps; [ ]; # missing inputs: PyTransportNSW + "transport_nsw" = ps: with ps; [ pytransportnsw ]; "travisci" = ps: with ps; [ ]; # missing inputs: TravisPy "trend" = ps: with ps; [ numpy ]; "tts" = ps: with ps; [ aiohttp-cors mutagen ]; - "tuya" = ps: with ps; [ tuyaha ]; + "tuya" = ps: with ps; [ tuya-iot-py-sdk ]; "twentemilieu" = ps: with ps; [ twentemilieu ]; "twilio" = ps: with ps; [ aiohttp-cors twilio ]; "twilio_call" = ps: with ps; [ aiohttp-cors twilio ]; @@ -922,7 +923,7 @@ "upc_connect" = ps: with ps; [ connect-box ]; "upcloud" = ps: with ps; [ upcloud-api ]; "updater" = ps: with ps; [ ]; - "upnp" = ps: with ps; [ aiohttp-cors async-upnp-client defusedxml ifaddr zeroconf ]; + "upnp" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr zeroconf ]; "uptime" = ps: with ps; [ ]; "uptimerobot" = ps: with ps; [ ]; # missing inputs: pyuptimerobot "usb" = ps: with ps; [ aiohttp-cors pyserial pyudev ]; @@ -933,7 +934,7 @@ "vacuum" = ps: with ps; [ ]; "vallox" = ps: with ps; [ ]; # missing inputs: vallox-websocket-api "vasttrafik" = ps: with ps; [ ]; # missing inputs: vtjp - "velbus" = ps: with ps; [ python-velbus ]; + "velbus" = ps: with ps; [ velbus-aio ]; "velux" = ps: with ps; [ pyvlx ]; "venstar" = ps: with ps; [ venstarcolortouch ]; "vera" = ps: with ps; [ pyvera ]; @@ -961,12 +962,14 @@ "waterfurnace" = ps: with ps; [ waterfurnace ]; "watson_iot" = ps: with ps; [ ]; # missing inputs: ibmiotf "watson_tts" = ps: with ps; [ ibm-watson ]; + "watttime" = ps: with ps; [ aiowatttime ]; "waze_travel_time" = ps: with ps; [ wazeroutecalculator ]; "weather" = ps: with ps; [ ]; "webhook" = ps: with ps; [ aiohttp-cors ]; "webostv" = ps: with ps; [ aiopylgtv ]; "websocket_api" = ps: with ps; [ aiohttp-cors ]; "wemo" = ps: with ps; [ pywemo ]; + "whirlpool" = ps: with ps; [ whirlpool-sixth-sense ]; "whois" = ps: with ps; [ python-whois ]; "wiffi" = ps: with ps; [ wiffi ]; "wilight" = ps: with ps; [ pywilight ]; @@ -993,7 +996,7 @@ "xs1" = ps: with ps; [ ]; # missing inputs: xs1-api-client "yale_smart_alarm" = ps: with ps; [ yalesmartalarmclient ]; "yamaha" = ps: with ps; [ rxv ]; - "yamaha_musiccast" = ps: with ps; [ aiohttp-cors aiomusiccast async-upnp-client defusedxml ifaddr zeroconf ]; + "yamaha_musiccast" = ps: with ps; [ aiohttp-cors aiomusiccast async-upnp-client ifaddr zeroconf ]; "yandex_transport" = ps: with ps; [ aioymaps ]; "yandextts" = ps: with ps; [ ]; "yeelight" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr yeelight ]; @@ -1006,13 +1009,13 @@ "zeroconf" = ps: with ps; [ aiohttp-cors ifaddr zeroconf ]; "zerproc" = ps: with ps; [ pyzerproc ]; "zestimate" = ps: with ps; [ xmltodict ]; - "zha" = ps: with ps; [ aiohttp-cors bellows ifaddr pyserial-asyncio pyserial pyudev zeroconf zha-quirks zigpy-cc zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp zigpy ]; + "zha" = ps: with ps; [ aiohttp-cors bellows ifaddr pyserial-asyncio pyserial pyudev zeroconf zha-quirks zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp zigpy ]; "zhong_hong" = ps: with ps; [ ]; # missing inputs: zhong_hong_hvac "ziggo_mediabox_xl" = ps: with ps; [ ]; # missing inputs: ziggo-mediabox-xl "zodiac" = ps: with ps; [ ]; "zone" = ps: with ps; [ ]; "zoneminder" = ps: with ps; [ zm-py ]; - "zwave" = ps: with ps; [ aiohttp-cors homeassistant-pyozw paho-mqtt pydispatcher python-openzwave-mqtt ]; + "zwave" = ps: with ps; [ homeassistant-pyozw pydispatcher ]; "zwave_js" = ps: with ps; [ aiohttp-cors pyserial pyudev zwave-js-server-python ]; }; } diff --git a/third_party/nixpkgs/pkgs/servers/home-assistant/default.nix b/third_party/nixpkgs/pkgs/servers/home-assistant/default.nix index 57f753439f..970f14bbec 100644 --- a/third_party/nixpkgs/pkgs/servers/home-assistant/default.nix +++ b/third_party/nixpkgs/pkgs/servers/home-assistant/default.nix @@ -21,19 +21,6 @@ let defaultOverrides = [ - # Pinned due to API changes in async-upnp-client>=0.20.0, remove after - (self: super: { - async-upnp-client = super.async-upnp-client.overridePythonAttrs (oldAttrs: rec { - version = "0.20.0"; - src = fetchFromGitHub { - owner = "StevenLooman"; - repo = "async_upnp_client"; - rev = "v${version}"; - sha256 = "sha256-jxYGOljV7tcsiAgpOhbXj7g7AwyP1kDDC83PiHG6ZFg="; - }; - }); - }) - # Override the version of some packages pinned in Home Assistant's setup.py and requirements_all.txt (mkOverride "python-slugify" "4.0.1" "69a517766e00c1268e5bbfc0d010a0a8508de0b18d30ad5a1ff357f8ae724270") @@ -52,24 +39,6 @@ let }); }) - # Pinned due to API changes in pyjwt>=2.0 - (self: super: { - pyjwt = super.pyjwt.overridePythonAttrs (oldAttrs: rec { - version = "1.7.1"; - src = oldAttrs.src.override { - inherit version; - sha256 = "15hflax5qkw1v6nssk1r0wkj83jgghskcmn875m3wgvpzdvajncd"; - }; - disabledTests = [ - "test_ec_verify_should_return_false_if_signature_invalid" - ]; - }); - }) - - # Pinned due to API changes in pylast 4.2.1 - (mkOverride "pylast" "4.2.0" - "0zd0dn2l738ndz62vpa751z0ldnm91dcz9zzbvxv53r08l0s9yf3") - # Pinned due to API changes in pyruckus>0.12 (self: super: { pyruckus = super.pyruckus.overridePythonAttrs (oldAttrs: rec { @@ -145,7 +114,7 @@ let extraBuildInputs = extraPackages py.pkgs; # Don't forget to run parse-requirements.py after updating - hassVersion = "2021.9.7"; + hassVersion = "2021.10.0"; in with py.pkgs; buildPythonApplication rec { pname = "homeassistant"; @@ -162,7 +131,7 @@ in with py.pkgs; buildPythonApplication rec { owner = "home-assistant"; repo = "core"; rev = version; - sha256 = "1vcdnxh671iqhlbf6811j537by2i03fhryp9r9x77477y2y0xd6k"; + sha256 = "0m54ynx0i4a6wljg6d9i6xa79c15cqah5cgaswgrbaxhjw5q78iv"; }; # leave this in, so users don't have to constantly update their downstream patch handling @@ -337,7 +306,6 @@ in with py.pkgs; buildPythonApplication rec { "ecobee" "econet" "ee_brightbox" - "efergy" "elgato" "elkm1" "emonitor" @@ -681,6 +649,7 @@ in with py.pkgs; buildPythonApplication rec { "trace" "tradfri" "transmission" + "transport_nsw" "trend" "tts" "tuya" @@ -800,7 +769,7 @@ in with py.pkgs; buildPythonApplication rec { "--deselect tests/components/wemo/test_sensor.py::TestInsightTodayEnergy::test_state_unavailable" "--deselect tests/components/wemo/test_sensor.py::TestInsightCurrentPower::test_state_unavailable" # tado/test_climate.py: Tries to connect to my.tado.com - "--deselect tests/components/tado/test_climate.py::test_air_con[" + "--deselect tests/components/tado/test_climate.py::test_air_con" # helpers/test_system_info.py: AssertionError: assert 'Unknown' == 'Home Assistant Container' "--deselect tests/helpers/test_system_info.py::test_container_installationtype" # tests are located in tests/ @@ -813,6 +782,9 @@ in with py.pkgs; buildPythonApplication rec { "tests/components" # pyotp since v2.4.0 complains about the short mock keys, hass pins v2.3.0 "tests/auth/mfa_modules/test_notify.py" + # emulated_hue/test_upnp.py: Tries to establish the public ipv4 address + "tests/components/emulated_hue/test_upnp.py" + ]; disabledTests = [ diff --git a/third_party/nixpkgs/pkgs/servers/home-assistant/frontend.nix b/third_party/nixpkgs/pkgs/servers/home-assistant/frontend.nix index 3e32f72768..c7e6c6b7e4 100644 --- a/third_party/nixpkgs/pkgs/servers/home-assistant/frontend.nix +++ b/third_party/nixpkgs/pkgs/servers/home-assistant/frontend.nix @@ -4,11 +4,11 @@ buildPythonPackage rec { # the frontend version corresponding to a specific home-assistant version can be found here # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json pname = "home-assistant-frontend"; - version = "20210830.0"; + version = "20211006.0"; src = fetchPypi { inherit pname version; - sha256 = "sha256-4sNCnYFQ4IjmMPj7axgienZUMDo+GwTJ38cEf0iZzJI="; + sha256 = "sha256-rlscTHqa1TMsIVW7kWFGR/feak0XewDRkybpo8dPXj0="; }; # there is nothing to strip in this package diff --git a/third_party/nixpkgs/pkgs/servers/monitoring/prometheus/openvpn-exporter.nix b/third_party/nixpkgs/pkgs/servers/monitoring/prometheus/openvpn-exporter.nix index 42a8187214..78224bcfaa 100644 --- a/third_party/nixpkgs/pkgs/servers/monitoring/prometheus/openvpn-exporter.nix +++ b/third_party/nixpkgs/pkgs/servers/monitoring/prometheus/openvpn-exporter.nix @@ -16,6 +16,7 @@ buildGoModule rec { meta = with lib; { inherit (src.meta) homepage; description = "Prometheus exporter for OpenVPN"; + broken = true; license = licenses.asl20; maintainers = with maintainers; [ fpletz globin ]; }; diff --git a/third_party/nixpkgs/pkgs/servers/ser2net/default.nix b/third_party/nixpkgs/pkgs/servers/ser2net/default.nix index ce14e5d896..c09b19378a 100644 --- a/third_party/nixpkgs/pkgs/servers/ser2net/default.nix +++ b/third_party/nixpkgs/pkgs/servers/ser2net/default.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation rec { pname = "ser2net"; - version = "4.3.3"; + version = "4.3.4"; src = fetchFromGitHub { owner = "cminyard"; repo = pname; rev = "v${version}"; - sha256 = "sha256-p8iQifCf/IXXPdbjB3pgcw8FgkqRLShHSSeTzJ83Ecg="; + sha256 = "sha256-J95WDF6x6nHF+r+97E4WdTkXWF98/lx1OSauZTy1/3Q="; }; passthru = { diff --git a/third_party/nixpkgs/pkgs/shells/zsh/oh-my-zsh/default.nix b/third_party/nixpkgs/pkgs/shells/zsh/oh-my-zsh/default.nix index 1566974bad..41ff2b4354 100644 --- a/third_party/nixpkgs/pkgs/shells/zsh/oh-my-zsh/default.nix +++ b/third_party/nixpkgs/pkgs/shells/zsh/oh-my-zsh/default.nix @@ -5,15 +5,15 @@ , git, nix, nixfmt, jq, coreutils, gnused, curl, cacert }: stdenv.mkDerivation rec { - version = "2021-10-05"; + version = "2021-10-06"; pname = "oh-my-zsh"; - rev = "e5b9b80008a2fd71b441ef39fe620ed47dad82e5"; + rev = "29b5c182bec4cec7704fb8bac9ee0ab971dfb89a"; src = fetchFromGitHub { inherit rev; owner = "ohmyzsh"; repo = "ohmyzsh"; - sha256 = "09oTsUYLLZAoUwM63gAVYLWFvp0aKTM9K79alTISEJw="; + sha256 = "pPBeZj/QTQCIuBtE7+4CmuXacblU4RGXty+cdeQw+54="; }; installPhase = '' diff --git a/third_party/nixpkgs/pkgs/tools/compression/ouch/add-Cargo.lock.patch b/third_party/nixpkgs/pkgs/tools/compression/ouch/add-Cargo.lock.patch deleted file mode 100644 index 368ce6aab0..0000000000 --- a/third_party/nixpkgs/pkgs/tools/compression/ouch/add-Cargo.lock.patch +++ /dev/null @@ -1,434 +0,0 @@ -diff --git a/Cargo.lock b/Cargo.lock -new file mode 100644 -index 0000000..4bea8c1 ---- /dev/null -+++ b/Cargo.lock -@@ -0,0 +1,428 @@ -+# This file is automatically @generated by Cargo. -+# It is not intended for manual editing. -+[[package]] -+name = "adler" -+version = "1.0.2" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" -+ -+[[package]] -+name = "autocfg" -+version = "1.0.1" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" -+ -+[[package]] -+name = "bitflags" -+version = "1.2.1" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" -+ -+[[package]] -+name = "byteorder" -+version = "1.4.3" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" -+ -+[[package]] -+name = "bzip2" -+version = "0.4.3" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "6afcd980b5f3a45017c57e57a2fcccbb351cc43a356ce117ef760ef8052b89b0" -+dependencies = [ -+ "bzip2-sys", -+ "libc", -+] -+ -+[[package]] -+name = "bzip2-sys" -+version = "0.1.11+1.0.8" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" -+dependencies = [ -+ "cc", -+ "libc", -+ "pkg-config", -+] -+ -+[[package]] -+name = "cc" -+version = "1.0.69" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "e70cc2f62c6ce1868963827bd677764c62d07c3d9a3e1fb1177ee1a9ab199eb2" -+ -+[[package]] -+name = "cfg-if" -+version = "1.0.0" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" -+ -+[[package]] -+name = "crc32fast" -+version = "1.2.1" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a" -+dependencies = [ -+ "cfg-if", -+] -+ -+[[package]] -+name = "filetime" -+version = "0.2.14" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "1d34cfa13a63ae058bfa601fe9e313bbdb3746427c1459185464ce0fcf62e1e8" -+dependencies = [ -+ "cfg-if", -+ "libc", -+ "redox_syscall", -+ "winapi", -+] -+ -+[[package]] -+name = "flate2" -+version = "1.0.20" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0" -+dependencies = [ -+ "cfg-if", -+ "crc32fast", -+ "libc", -+ "miniz_oxide", -+] -+ -+[[package]] -+name = "fuchsia-cprng" -+version = "0.1.1" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" -+ -+[[package]] -+name = "getrandom" -+version = "0.2.3" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "7fcd999463524c52659517fe2cea98493cfe485d10565e7b0fb07dbba7ad2753" -+dependencies = [ -+ "cfg-if", -+ "libc", -+ "wasi", -+] -+ -+[[package]] -+name = "libc" -+version = "0.2.98" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790" -+ -+[[package]] -+name = "lzma-sys" -+version = "0.1.17" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "bdb4b7c3eddad11d3af9e86c487607d2d2442d185d848575365c4856ba96d619" -+dependencies = [ -+ "cc", -+ "libc", -+ "pkg-config", -+] -+ -+[[package]] -+name = "miniz_oxide" -+version = "0.4.4" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b" -+dependencies = [ -+ "adler", -+ "autocfg", -+] -+ -+[[package]] -+name = "ouch" -+version = "0.1.5" -+dependencies = [ -+ "bzip2", -+ "flate2", -+ "rand 0.8.4", -+ "strsim", -+ "tar", -+ "tempdir", -+ "walkdir", -+ "xz2", -+ "zip", -+] -+ -+[[package]] -+name = "pkg-config" -+version = "0.3.19" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c" -+ -+[[package]] -+name = "ppv-lite86" -+version = "0.2.10" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857" -+ -+[[package]] -+name = "proc-macro2" -+version = "1.0.28" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "5c7ed8b8c7b886ea3ed7dde405212185f423ab44682667c8c6dd14aa1d9f6612" -+dependencies = [ -+ "unicode-xid", -+] -+ -+[[package]] -+name = "quote" -+version = "1.0.9" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" -+dependencies = [ -+ "proc-macro2", -+] -+ -+[[package]] -+name = "rand" -+version = "0.4.6" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" -+dependencies = [ -+ "fuchsia-cprng", -+ "libc", -+ "rand_core 0.3.1", -+ "rdrand", -+ "winapi", -+] -+ -+[[package]] -+name = "rand" -+version = "0.8.4" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "2e7573632e6454cf6b99d7aac4ccca54be06da05aca2ef7423d22d27d4d4bcd8" -+dependencies = [ -+ "libc", -+ "rand_chacha", -+ "rand_core 0.6.3", -+] -+ -+[[package]] -+name = "rand_chacha" -+version = "0.3.1" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -+dependencies = [ -+ "ppv-lite86", -+ "rand_core 0.6.3", -+] -+ -+[[package]] -+name = "rand_core" -+version = "0.3.1" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" -+dependencies = [ -+ "rand_core 0.4.2", -+] -+ -+[[package]] -+name = "rand_core" -+version = "0.4.2" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc" -+ -+[[package]] -+name = "rand_core" -+version = "0.6.3" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7" -+dependencies = [ -+ "getrandom", -+] -+ -+[[package]] -+name = "rdrand" -+version = "0.4.0" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" -+dependencies = [ -+ "rand_core 0.3.1", -+] -+ -+[[package]] -+name = "redox_syscall" -+version = "0.2.9" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "5ab49abadf3f9e1c4bc499e8845e152ad87d2ad2d30371841171169e9d75feee" -+dependencies = [ -+ "bitflags", -+] -+ -+[[package]] -+name = "remove_dir_all" -+version = "0.5.3" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" -+dependencies = [ -+ "winapi", -+] -+ -+[[package]] -+name = "same-file" -+version = "1.0.6" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -+dependencies = [ -+ "winapi-util", -+] -+ -+[[package]] -+name = "strsim" -+version = "0.10.0" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" -+ -+[[package]] -+name = "syn" -+version = "1.0.74" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "1873d832550d4588c3dbc20f01361ab00bfe741048f71e3fecf145a7cc18b29c" -+dependencies = [ -+ "proc-macro2", -+ "quote", -+ "unicode-xid", -+] -+ -+[[package]] -+name = "tar" -+version = "0.4.35" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "7d779dc6aeff029314570f666ec83f19df7280bb36ef338442cfa8c604021b80" -+dependencies = [ -+ "filetime", -+ "libc", -+ "xattr", -+] -+ -+[[package]] -+name = "tempdir" -+version = "0.3.7" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8" -+dependencies = [ -+ "rand 0.4.6", -+ "remove_dir_all", -+] -+ -+[[package]] -+name = "thiserror" -+version = "1.0.26" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "93119e4feac1cbe6c798c34d3a53ea0026b0b1de6a120deef895137c0529bfe2" -+dependencies = [ -+ "thiserror-impl", -+] -+ -+[[package]] -+name = "thiserror-impl" -+version = "1.0.26" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "060d69a0afe7796bf42e9e2ff91f5ee691fb15c53d38b4b62a9a53eb23164745" -+dependencies = [ -+ "proc-macro2", -+ "quote", -+ "syn", -+] -+ -+[[package]] -+name = "time" -+version = "0.1.43" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438" -+dependencies = [ -+ "libc", -+ "winapi", -+] -+ -+[[package]] -+name = "unicode-xid" -+version = "0.2.2" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" -+ -+[[package]] -+name = "walkdir" -+version = "2.3.2" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" -+dependencies = [ -+ "same-file", -+ "winapi", -+ "winapi-util", -+] -+ -+[[package]] -+name = "wasi" -+version = "0.10.2+wasi-snapshot-preview1" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" -+ -+[[package]] -+name = "winapi" -+version = "0.3.9" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -+dependencies = [ -+ "winapi-i686-pc-windows-gnu", -+ "winapi-x86_64-pc-windows-gnu", -+] -+ -+[[package]] -+name = "winapi-i686-pc-windows-gnu" -+version = "0.4.0" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" -+ -+[[package]] -+name = "winapi-util" -+version = "0.1.5" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" -+dependencies = [ -+ "winapi", -+] -+ -+[[package]] -+name = "winapi-x86_64-pc-windows-gnu" -+version = "0.4.0" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -+ -+[[package]] -+name = "xattr" -+version = "0.2.2" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "244c3741f4240ef46274860397c7c74e50eb23624996930e484c16679633a54c" -+dependencies = [ -+ "libc", -+] -+ -+[[package]] -+name = "xz2" -+version = "0.1.6" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "c179869f34fc7c01830d3ce7ea2086bc3a07e0d35289b667d0a8bf910258926c" -+dependencies = [ -+ "lzma-sys", -+] -+ -+[[package]] -+name = "zip" -+version = "0.5.13" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "93ab48844d61251bb3835145c521d88aa4031d7139e8485990f60ca911fa0815" -+dependencies = [ -+ "byteorder", -+ "bzip2", -+ "crc32fast", -+ "flate2", -+ "thiserror", -+ "time", -+] diff --git a/third_party/nixpkgs/pkgs/tools/compression/ouch/default.nix b/third_party/nixpkgs/pkgs/tools/compression/ouch/default.nix index c46e83ab91..c451b40fcf 100644 --- a/third_party/nixpkgs/pkgs/tools/compression/ouch/default.nix +++ b/third_party/nixpkgs/pkgs/tools/compression/ouch/default.nix @@ -2,26 +2,20 @@ rustPlatform.buildRustPackage rec { pname = "ouch"; - version = "0.1.5"; + version = "0.2.0"; src = fetchFromGitHub { - owner = "vrmiguel"; + owner = "ouch-org"; repo = pname; rev = version; - sha256 = "00ah8hgrppa61jhwb74zl5b509q0yp2pp27w9frm814iqx70qn38"; + sha256 = "sha256-OhEr/HvwgDkB8h3cpayOlnrs6OXiwAsQUH9XGqi5rpc="; }; - cargoPatches = [ - # a patch file to add Cargo.lock in the source code - # https://github.com/vrmiguel/ouch/pull/46 - ./add-Cargo.lock.patch - ]; - - cargoSha256 = "181aq8r78g4bl1ndlwl54ws5ccrwph0mmk9506djxvfdy3hndxkg"; + cargoSha256 = "sha256-lKsB75Lb9IYS80qu4jaIpnbEOr4Ow9M5S45Kk03An2o="; meta = with lib; { - description = "Taking the pain away from file (de)compression"; - homepage = "https://github.com/vrmiguel/ouch"; + description = "A command-line utility for easily compressing and decompressing files and directories"; + homepage = "https://github.com/ouch-org/ouch"; license = licenses.mit; maintainers = [ maintainers.psibi ]; }; diff --git a/third_party/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix b/third_party/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix index be7a42e19e..bdb7e55b5c 100644 --- a/third_party/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix +++ b/third_party/nixpkgs/pkgs/tools/filesystems/bcachefs-tools/default.nix @@ -22,20 +22,21 @@ stdenv.mkDerivation { pname = "bcachefs-tools"; - version = "unstable-2021-07-08"; + version = "unstable-2021-10-01"; src = fetchFromGitHub { owner = "koverstreet"; repo = "bcachefs-tools"; - rev = "050d5f7bcf08bd02f5077a1c5559f352fa449e1e"; - sha256 = "15bl9ni0ckmvs5d7hi6v26z690rrmkb7dx00skn6gwq87ffz3imw"; + rev = "37850436dd7dfbe67738749c4d4a2506ffff1ec3"; + sha256 = "040vgxrimahmfs9rhlggfwg0bzl7h9j2ksx3563rh63asjwlhnhi"; }; postPatch = '' substituteInPlace Makefile \ --replace "pytest-3" "pytest --verbose" \ --replace "INITRAMFS_DIR=/etc/initramfs-tools" \ - "INITRAMFS_DIR=${placeholder "out"}/etc/initramfs-tools" + "INITRAMFS_DIR=${placeholder "out"}/etc/initramfs-tools" \ + --replace "doc/macro2rst.py" "python3 doc/macro2rst.py" ''; nativeBuildInputs = [ pkg-config docutils ]; diff --git a/third_party/nixpkgs/pkgs/tools/misc/vsh/default.nix b/third_party/nixpkgs/pkgs/tools/misc/vsh/default.nix index 416dd4bfcc..78cf177b3d 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/vsh/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/vsh/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "vsh"; - version = "0.12.0"; + version = "0.12.1"; src = fetchFromGitHub { owner = "fishi0x01"; repo = "vsh"; rev = "v${version}"; - sha256 = "059zzsg94287sxlk5clz6in7jscqaq530c84xqgy537f6cq3vr2p"; + sha256 = "0skd16j969mb2kgq503wskaw8clyhkw135ny2nsqv5j2zjpr71ap"; }; # vendor directory is part of repository diff --git a/third_party/nixpkgs/pkgs/tools/networking/godns/default.nix b/third_party/nixpkgs/pkgs/tools/networking/godns/default.nix new file mode 100644 index 0000000000..fb46a144ee --- /dev/null +++ b/third_party/nixpkgs/pkgs/tools/networking/godns/default.nix @@ -0,0 +1,27 @@ +{ buildGoModule, fetchFromGitHub, lib }: + +buildGoModule rec { + pname = "godns"; + version = "2.5"; + + src = fetchFromGitHub { + owner = "TimothyYe"; + repo = "godns"; + rev = "v${version}"; + sha256 = "sha256-ia0FmV2KlFPh9gmKOqVxiStgmBbX9vUIc7KllpUt44Q="; + }; + + vendorSha256 = "sha256-FZLDaMrPEyoTGFmGBlpqPWsMuobqwkBaot5qjcRJe9w="; + + # Some tests require internet access, broken in sandbox + doCheck = false; + + ldflags = [ "-X main.Version=${version}" ]; + + meta = with lib; { + description = "A dynamic DNS client tool supports AliDNS, Cloudflare, Google Domains, DNSPod, HE.net & DuckDNS & DreamHost, etc"; + homepage = "https://github.com/TimothyYe/godns"; + license = licenses.asl20; + maintainers = with maintainers; [ yinfeng ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/tools/package-management/nix/default.nix b/third_party/nixpkgs/pkgs/tools/package-management/nix/default.nix index c7b22d2d86..a07c503a84 100644 --- a/third_party/nixpkgs/pkgs/tools/package-management/nix/default.nix +++ b/third_party/nixpkgs/pkgs/tools/package-management/nix/default.nix @@ -234,13 +234,13 @@ in rec { nixUnstable = lib.lowPrio (callPackage common rec { pname = "nix"; version = "2.4${suffix}"; - suffix = "pre20211001_${lib.substring 0 7 src.rev}"; + suffix = "pre20211006_${lib.substring 0 7 src.rev}"; src = fetchFromGitHub { owner = "NixOS"; repo = "nix"; - rev = "4f496150eb4e0012914c11f0a3ff4df2412b1d09"; - sha256 = "00hxxk66f068588ymv60ygib6vgk7c97s9yia3qd561679rq3nsj"; + rev = "53e479428958b39a126ce15de85d7397fdcfe2e1"; + sha256 = "18mm3f0n964msj5bha6wpnwckg5lwjwdm6r7frrwdj75v10jiyb7"; }; boehmgc = boehmgc_nixUnstable; diff --git a/third_party/nixpkgs/pkgs/tools/security/exploitdb/default.nix b/third_party/nixpkgs/pkgs/tools/security/exploitdb/default.nix index 486e483648..832051ebc5 100644 --- a/third_party/nixpkgs/pkgs/tools/security/exploitdb/default.nix +++ b/third_party/nixpkgs/pkgs/tools/security/exploitdb/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "exploitdb"; - version = "2021-10-02"; + version = "2021-10-06"; src = fetchFromGitHub { owner = "offensive-security"; repo = pname; rev = version; - sha256 = "sha256-gUjFFxzkHHhNMDAgFmmIAuEACSCn1YXuauvjGAkrK6k="; + sha256 = "sha256-MTV6rDgy6FxmdQHoBnDNBwiKEiGj9THqoHJCwUoAoB8="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/third_party/nixpkgs/pkgs/top-level/agda-packages.nix b/third_party/nixpkgs/pkgs/top-level/agda-packages.nix index 7434134d28..e38819cfcb 100644 --- a/third_party/nixpkgs/pkgs/top-level/agda-packages.nix +++ b/third_party/nixpkgs/pkgs/top-level/agda-packages.nix @@ -31,5 +31,7 @@ let ../development/libraries/agda/functional-linear-algebra { }; generic = callPackage ../development/libraries/agda/generic { }; + + agdarsec = callPackage ../development/libraries/agda/agdarsec { }; }; in mkAgdaPackages Agda diff --git a/third_party/nixpkgs/pkgs/top-level/all-packages.nix b/third_party/nixpkgs/pkgs/top-level/all-packages.nix index 9f47f9875b..1320ff88bd 100644 --- a/third_party/nixpkgs/pkgs/top-level/all-packages.nix +++ b/third_party/nixpkgs/pkgs/top-level/all-packages.nix @@ -933,6 +933,8 @@ with pkgs; gofu = callPackage ../applications/misc/gofu { }; + godns = callPackage ../tools/networking/godns { }; + ksnip = libsForQt5.callPackage ../tools/misc/ksnip { }; linux-router = callPackage ../tools/networking/linux-router { }; @@ -1623,6 +1625,8 @@ with pkgs; font-config-info = callPackage ../tools/misc/font-config-info { }; + foxdot = with python3Packages; toPythonApplication foxdot; + fxlinuxprintutil = callPackage ../tools/misc/fxlinuxprintutil { }; genann = callPackage ../development/libraries/genann { }; @@ -6366,6 +6370,8 @@ with pkgs; jd = callPackage ../development/tools/jd { }; + jd-diff-patch = callPackage ../development/tools/jd-diff-patch { }; + jd-gui = callPackage ../tools/security/jd-gui { }; jdiskreport = callPackage ../tools/misc/jdiskreport { }; @@ -12892,29 +12898,22 @@ with pkgs; # Below, the classic self-bootstrapping process cbqn-bootstrap = lib.dontRecurseIntoAttrs { - # use clang here since it emits less speculative warnings; - # however, avoid its building in cross compilations - stdenv = - if stdenv.hostPlatform == stdenv.buildPlatform - then clangStdenv - else stdenv; mbqn-source = buildPackages.mbqn.src; phase0 = callPackage ../development/interpreters/bqn/cbqn { - inherit (cbqn-bootstrap) stdenv; genBytecode = false; bqn-path = null; mbqn-source = null; }; phase1 = callPackage ../development/interpreters/bqn/cbqn { - inherit (cbqn-bootstrap) stdenv mbqn-source; + inherit (cbqn-bootstrap) mbqn-source; genBytecode = true; bqn-path = "${buildPackages.cbqn-bootstrap.phase0}/bin/cbqn"; }; phase2 = callPackage ../development/interpreters/bqn/cbqn { - inherit (cbqn-bootstrap) stdenv mbqn-source; + inherit (cbqn-bootstrap) mbqn-source; genBytecode = true; bqn-path = "${buildPackages.cbqn-bootstrap.phase1}/bin/cbqn"; }; @@ -13626,7 +13625,8 @@ with pkgs; electron_11 electron_12 electron_13 - electron_14; + electron_14 + electron_15; autobuild = callPackage ../development/tools/misc/autobuild { }; @@ -29479,6 +29479,10 @@ with pkgs; eureka-editor = callPackage ../applications/misc/eureka-editor { }; + eureka-ideas = callPackage ../applications/misc/eureka-ideas { + inherit (darwin.apple_sdk.frameworks) Security; + }; + extremetuxracer = callPackage ../games/extremetuxracer { libpng = libpng12; }; @@ -32620,9 +32624,11 @@ with pkgs; }); winePackages = recurseIntoAttrs (winePackagesFor (config.wine.build or "wine32")); + wine64Packages = recurseIntoAttrs (winePackagesFor "wine64"); wineWowPackages = recurseIntoAttrs (winePackagesFor "wineWow"); wine = winePackages.full; + wine64 = wine64Packages.full; wine-staging = lowPrio (winePackages.full.override { wineRelease = "staging"; diff --git a/third_party/nixpkgs/pkgs/top-level/python-packages.nix b/third_party/nixpkgs/pkgs/top-level/python-packages.nix index 7f370f9473..bb7891e249 100644 --- a/third_party/nixpkgs/pkgs/top-level/python-packages.nix +++ b/third_party/nixpkgs/pkgs/top-level/python-packages.nix @@ -403,6 +403,8 @@ in { airly = callPackage ../development/python-modules/airly { }; + airthings = callPackage ../development/python-modules/airthings { }; + ajpy = callPackage ../development/python-modules/ajpy { }; ajsonrpc = callPackage ../development/python-modules/ajsonrpc { }; @@ -1956,6 +1958,8 @@ in { demjson = callPackage ../development/python-modules/demjson { }; + demjson3 = callPackage ../development/python-modules/demjson3 { }; + dendropy = callPackage ../development/python-modules/dendropy { }; denonavr = callPackage ../development/python-modules/denonavr { }; @@ -3281,6 +3285,8 @@ in { gst-plugins-base = pkgs.gst_all_1.gst-plugins-base; }; + gtfs-realtime-bindings = callPackage ../development/python-modules/gtfs-realtime-bindings { }; + gtimelog = callPackage ../development/python-modules/gtimelog { }; gtts = callPackage ../development/python-modules/gtts { }; @@ -3767,6 +3773,8 @@ in { iso-639 = callPackage ../development/python-modules/iso-639 { }; + iso4217 = callPackage ../development/python-modules/iso4217 { }; + iso8601 = callPackage ../development/python-modules/iso8601 { }; isodate = callPackage ../development/python-modules/isodate { }; @@ -6200,6 +6208,8 @@ in { pyee = callPackage ../development/python-modules/pyee { }; + pyefergy = callPackage ../development/python-modules/pyefergy { }; + pyeight = callPackage ../development/python-modules/pyeight { }; pyelftools = callPackage ../development/python-modules/pyelftools { }; @@ -7571,6 +7581,10 @@ in { pytrafikverket = callPackage ../development/python-modules/pytrafikverket { }; + pytransportnsw = callPackage ../development/python-modules/pytransportnsw { }; + + pytransportnswv2 = callPackage ../development/python-modules/pytransportnswv2 { }; + pytrends = callPackage ../development/python-modules/pytrends { }; pytricia = callPackage ../development/python-modules/pytricia { }; diff --git a/third_party/nixpkgs/pkgs/top-level/release-r.nix b/third_party/nixpkgs/pkgs/top-level/release-r.nix new file mode 100644 index 0000000000..d31e9ced22 --- /dev/null +++ b/third_party/nixpkgs/pkgs/top-level/release-r.nix @@ -0,0 +1,13 @@ +/* + This is the Hydra jobset for the `r-updates` branch in Nixpkgs. + The jobset can be tested by: + + $ hydra-eval-jobs -I . pkgs/top-level/release-r.nix +*/ +{ supportedSystems ? [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" ] }: + +with import ./release-lib.nix { inherit supportedSystems; }; + +mapTestOn { + rPackages = packagePlatforms pkgs.rPackages; +}