diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7530df9d7c2c..0508d2639de1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -210,7 +210,7 @@ The last checkbox is about whether it fits the guidelines in this `CONTRIBUTING. This document details our standards for commit messages, reviews, licensing of contributions, etc... Everyone should read and understand these standards before submitting a pull request. -### Rebasing between branches (i.e. from master to staging) +### Rebasing between branches (i.e. from `master` to `staging`) [rebase]: #rebasing-between-branches-ie-from-master-to-staging Sometimes, changes must be rebased between branches. @@ -271,8 +271,8 @@ To manually create a backport, follow [the standard pull request process][pr-cre Here is [an example](https://github.com/nixos/nixpkgs/commit/5688c39af5a6c5f3d646343443683da880eaefb8). > [!Warning] -> Ensure the commits exist on the master branch. -> In the case of squashed or rebased merges, the commit hash will change and the new commits can be found in the merge message at the bottom of the master pull request. +> Ensure the commits exist on the `master` branch. +> In the case of squashed or rebased merges, the commit hash will change and the new commits can be found in the merge message at the bottom of the `master` pull request. - In the pull request description, link to the original pull request to `master`. The pull request title should include `[YY.MM]` matching the release you're backporting to. @@ -460,7 +460,7 @@ Is the change [acceptable for releases][release-acceptable] and do you wish to h - Yes: Use the `master` branch and [backport the pull request](#how-to-backport-pull-requests). - No: Create separate pull requests to the `master` and `release-YY.MM` branches. -If the change causes a [mass rebuild][mass-rebuild], use the staging branch instead: +If the change causes a [mass rebuild][mass-rebuild], use the `staging` branch instead: - Mass rebuilds to `master` should go to `staging` instead. - Mass rebuilds to `release-YY.MM` should go to `staging-YY.MM` instead. @@ -492,8 +492,8 @@ In addition, major package version updates with breaking changes are also accept Which changes cause mass rebuilds is not formally defined. In order to help the decision, CI automatically assigns [`rebuild` labels](https://github.com/NixOS/nixpkgs/labels?q=rebuild) to pull requests based on the number of packages they cause rebuilds for. -As a rule of thumb, if the number of rebuilds is **over 500**, it can be considered a mass rebuild. -To get a sense for what changes are considered mass rebuilds, see [previously merged pull requests to the staging branches](https://github.com/NixOS/nixpkgs/issues?q=base%3Astaging+-base%3Astaging-next+is%3Amerged). +As a rule of thumb, if the number of rebuilds is **500 or more**, consider targeting the `staging` branch instead of `master`; if the number is **1000 or more**, the pull request causes a mass rebuild, and should target the `staging` branch. +See [previously merged pull requests to the staging branches](https://github.com/NixOS/nixpkgs/issues?q=base%3Astaging+-base%3Astaging-next+is%3Amerged) to get a sense for what changes are considered mass rebuilds. ## Commit conventions [commit-conventions]: #commit-conventions diff --git a/ci/OWNERS b/ci/OWNERS index 133517ed3a61..ff36987f0e3a 100644 --- a/ci/OWNERS +++ b/ci/OWNERS @@ -337,7 +337,7 @@ pkgs/development/python-modules/buildcatrust/ @ajs124 @lukegb @mweinelt /pkgs/development/compilers/idris2 @mattpolzin # Bazel -/pkgs/development/tools/build-managers/bazel @Profpatsch +/pkgs/by-name/ba/bazel_7 @Profpatsch # NixOS modules for e-mail and dns services /nixos/modules/services/mail/mailman.nix @peti diff --git a/doc/release-notes/rl-2511.section.md b/doc/release-notes/rl-2511.section.md index 01267810a4c4..57e864c2f350 100644 --- a/doc/release-notes/rl-2511.section.md +++ b/doc/release-notes/rl-2511.section.md @@ -48,6 +48,16 @@ - `conduwuit` was removed due to upstream ceasing development and deleting their repository. For existing data, a migration to `matrix-conduit`, `matrix-continuwuity` or `matrix-tuwunel` may be possible. +- The GHCJS 8.10.7, exposed via `haskell.compiler.ghcjs` and `haskell.compiler.ghcjs810`, has been removed. Downstream users should migrate their projects to the new JavaScript backend of GHC proper which can be used via `pkgsCross.ghcjs` from Nixpkgs. Haskell packaging code, like `haskellPackages.mkDerivation`, `ghcWithPackages` and `hoogleWithPackages`, also no longer supports GHCJS. + +- The `ghcInfo` and `controlPhases` functions have been removed from `haskell.lib.compose` and `haskell.lib`. They were unused and would return incorrect results. + + - Instead of using `controlPhases`, the `doCheck` attribute of derivations can be accessed which is more accurate. `doBenchmark` can't be introspected at the moment. + - To detect cross compilation, the relevant platforms exposed by `stdenv` should be compared instead of using `ghcInfo`. + - Nixpkgs no longer packages any `ghcjs` compiler. + - To find a suitable `nativeGhc`, `buildHaskellPackages` should be used. `ghcInfo` would use `ghc.bootPkgs.ghc` if cross compiling, + and the given `ghc` otherwise. This approach is not recommended since it results in mismatched GHC versions. + - `gnome-keyring` no longer ships with an SSH agent anymore because it has been deprecated upstream. You should use `gcr_4` instead, which provides the same features. More information on why this was done can be found on [the relevant GCR upstream PR](https://gitlab.gnome.org/GNOME/gcr/-/merge_requests/67). - `stdenv.mkDerivation` and other derivation builders that use it no longer allow the value of `env` to be anything but an attribute set, for the purpose of setting environment variables that are available to the [builder](https://nix.dev/manual/nix/latest/store/derivation/#builder) process. An environment variable called `env` can still be provided by means of `mkDerivation { env.env = ...; }`, though we recommend to use a more specific name than "env". diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 762e8f8f00c4..281368ab7a5d 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -7029,6 +7029,13 @@ name = "Duncan Dean"; keys = [ { fingerprint = "9484 44FC E03B 05BA 5AB0 591E C37B 1C1D 44C7 86EE"; } ]; }; + dustyhorizon = { + name = "Kenneth Tan"; + email = "i.am@kennethtan.xyz"; + github = "dustyhorizon"; + githubId = 4987132; + keys = [ { fingerprint = "1021 2207 286B F15B 0CF1 C5EA D70C C9F5 CEF4 EEB8"; } ]; + }; DutchGerman = { name = "Stefan Visser"; email = "stefan.visser@apm-ecampus.de"; @@ -10083,6 +10090,12 @@ githubId = 665472; matrix = "@hehongbo:matrix.org"; }; + heichro = { + github = "heichro"; + githubId = 76887148; + keys = [ { fingerprint = "BBA7 9E8E 17FE 9C3F BFEA 61E8 30D0 186F 4E19 7E48"; } ]; + name = "heichro"; + }; heijligen = { email = "src@posteo.de"; github = "heijligen"; @@ -21771,6 +21784,18 @@ githubId = 10631029; name = "Richard Ipsum"; }; + richardjacton = { + email = "richardjacton@richardjacton.net"; + github = "richardjacton"; + githubId = 6893043; + name = "Richard J. Acton"; + matrix = "@richardjacton:matrix.org"; + keys = [ + { + fingerprint = "5EE1 1764 8462 E5A3 610C 1964 8E5D EFCF C330 7916"; + } + ]; + }; richiejp = { email = "io@richiejp.com"; github = "richiejp"; diff --git a/nixos/doc/manual/release-notes/rl-2505.section.md b/nixos/doc/manual/release-notes/rl-2505.section.md index a537467bc1e0..421e363b2260 100644 --- a/nixos/doc/manual/release-notes/rl-2505.section.md +++ b/nixos/doc/manual/release-notes/rl-2505.section.md @@ -32,8 +32,6 @@ Alongside many enhancements to NixOS modules and general system improvements, th inputs.nixpkgs.url = "https://channels.nixos.org/nixos-25.05/nixexprs.tar.xz"; ``` -- Syncthing has been updated to version 2.0.0. - ## New Modules {#sec-release-25.05-new-modules} diff --git a/nixos/doc/manual/release-notes/rl-2511.section.md b/nixos/doc/manual/release-notes/rl-2511.section.md index eea249615495..e209fb6c08c5 100644 --- a/nixos/doc/manual/release-notes/rl-2511.section.md +++ b/nixos/doc/manual/release-notes/rl-2511.section.md @@ -6,6 +6,8 @@ - `nixos-rebuild-ng`, a full rewrite of `nixos-rebuild` in Python, is enabled by default from this release. You can disable it by setting [](#opt-system.rebuild.enableNg) to `false` in your configuration if you need, but please report any issues. It is expected that the next major version of NixOS (26.05) will remove the {option}`system.rebuild.enableNg` option. +- `rEFInd`, a graphical boot manager for UEFI systems, can now be used through [](#opt-boot.loader.refind.enable). + - Secure boot support can now be enabled for the Limine bootloader through {option}`boot.loader.limine.secureBoot.enable`. Bootloader install script signs the bootloader, then kernels are hashed during system rebuild and written to a config. This allows Limine to boot only the kernels installed through NixOS system. - The default PostgreSQL version for new NixOS installations (i.e. with `system.stateVersion >= 25.11`) is v17. @@ -14,6 +16,8 @@ - The Qt 5-based versions of KDE Gear, Plasma, Maui and Deepin have been removed. Users are advised to migrate to Plasma 6 and Gear 25.08, available under `kdePackages`. +- Syncthing has been updated to version 2.0.0. + ## New Modules {#sec-release-25.11-new-modules} diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 5326f1b216d5..e8cd0f7e7c94 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -1817,6 +1817,7 @@ ./system/boot/loader/init-script/init-script.nix ./system/boot/loader/limine/limine.nix ./system/boot/loader/loader.nix + ./system/boot/loader/refind/refind.nix ./system/boot/loader/systemd-boot/systemd-boot.nix ./system/boot/luksroot.nix ./system/boot/modprobe.nix diff --git a/nixos/modules/programs/vim.nix b/nixos/modules/programs/vim.nix index c3efcd0a54dc..6a6cd0a90966 100644 --- a/nixos/modules/programs/vim.nix +++ b/nixos/modules/programs/vim.nix @@ -10,7 +10,7 @@ let in { options.programs.vim = { - enable = lib.mkEnableOption "Vi IMproved, an advanced text"; + enable = lib.mkEnableOption "Vi IMproved, an advanced text editor"; defaultEditor = lib.mkEnableOption "vim as the default editor"; diff --git a/nixos/modules/system/boot/loader/refind/refind-install.py b/nixos/modules/system/boot/loader/refind/refind-install.py new file mode 100644 index 000000000000..f546d3d7b568 --- /dev/null +++ b/nixos/modules/system/boot/loader/refind/refind-install.py @@ -0,0 +1,344 @@ +#!@python3@/bin/python3 -B + +from dataclasses import dataclass +from typing import Any, Callable, Dict, List, Optional, Tuple + +import datetime +import json +from ctypes import CDLL +import os +import psutil +import re +import shutil +import subprocess +import textwrap + + +refind_dir = None +libc = CDLL("libc.so.6") +install_config = json.load(open('@configPath@', 'r')) + + +def config(*path: str) -> Optional[Any]: + result = install_config + for component in path: + result = result[component] + return result + + +def get_system_path(profile: str = 'system', gen: Optional[str] = None, spec: Optional[str] = None) -> str: + basename = f'{profile}-{gen}-link' if gen is not None else profile + profiles_dir = '/nix/var/nix/profiles' + if profile == 'system': + result = os.path.join(profiles_dir, basename) + else: + result = os.path.join(profiles_dir, 'system-profiles', basename) + + if spec is not None: + result = os.path.join(result, 'specialisation', spec) + + return result + + +def get_profiles() -> List[str]: + profiles_dir = '/nix/var/nix/profiles/system-profiles/' + dirs = os.listdir(profiles_dir) if os.path.isdir(profiles_dir) else [] + + return [path for path in dirs if not path.endswith('-link')] + + +def get_gens(profile: str = 'system') -> List[Tuple[int, List[str]]]: + nix_env = os.path.join(config('nixPath'), 'bin', 'nix-env') + output = subprocess.check_output([ + nix_env, '--list-generations', + '-p', get_system_path(profile), + '--option', 'build-users-group', '', + ], universal_newlines=True) + + gen_lines = output.splitlines() + gen_nums = [int(line.split()[0]) for line in gen_lines] + + return [gen for gen in gen_nums][-config('maxGenerations'):] + + +def is_encrypted(device: str) -> bool: + for name, _ in config('luksDevices'): + if os.readlink(os.path.join('/dev/mapper', name)) == os.readlink(device): + return True + + return False + + +def is_fs_type_supported(fs_type: str) -> bool: + return fs_type.startswith('vfat') + + +paths = {} + +def get_copied_path_uri(path: str, target: str) -> str: + package_id = os.path.basename(os.path.dirname(path)) + suffix = os.path.basename(path) + dest_file = f'{package_id}-{suffix}' + dest_path = os.path.join(refind_dir, target, dest_file) + + if not os.path.exists(dest_path): + copy_file(path, dest_path) + else: + paths[dest_path] = True + + return os.path.join('/efi/refind', target, dest_file) + +def get_path_uri(path: str) -> str: + return get_copied_path_uri(path, "") + + +def get_file_uri(profile: str, gen: Optional[str], spec: Optional[str], name: str) -> str: + gen_path = get_system_path(profile, gen, spec) + path_in_store = os.path.realpath(os.path.join(gen_path, name)) + return get_path_uri(path_in_store) + + +def get_kernel_uri(kernel_path: str) -> str: + return get_copied_path_uri(kernel_path, "kernels") + + +@dataclass +class BootSpec: + system: str + init: str + kernel: str + kernelParams: List[str] + label: str + toplevel: str + specialisations: Dict[str, "BootSpec"] + initrd: str | None = None + initrdSecrets: str | None = None + + +def bootjson_to_bootspec(bootjson: dict) -> BootSpec: + specialisations = bootjson['org.nixos.specialisation.v1'] + specialisations = {k: bootjson_to_bootspec(v) for k, v in specialisations.items()} + return BootSpec( + **bootjson['org.nixos.bootspec.v1'], + specialisations=specialisations, + ) + + +def config_entry(is_sub: bool, bootspec: BootSpec, label: str, time: str) -> str: + entry = "" + if is_sub: + entry += 'sub' + + entry += f'menuentry "{label}" {{\n' + entry += ' loader ' + get_kernel_uri(bootspec.kernel) + '\n' + + if bootspec.initrd: + entry += ' initrd ' + get_kernel_uri(bootspec.initrd) + '\n' + + entry += ' options "' + ' '.join(['init=' + bootspec.init] + bootspec.kernelParams).strip() + '"\n' + entry += '}\n' + return entry + + +def generate_config_entry(profile: str, gen: str, special: bool, group_name: str) -> str: + time = datetime.datetime.fromtimestamp(os.stat(get_system_path(profile,gen), follow_symlinks=False).st_mtime).strftime("%F %H:%M:%S") + boot_json = json.load(open(os.path.join(get_system_path(profile, gen), 'boot.json'), 'r')) + boot_spec = bootjson_to_bootspec(boot_json) + + specialisation_list = boot_spec.specialisations.items() + entry = "" + + if len(specialisation_list) > 0: + entry += f'menuentry "NixOS {group_name} Generation {gen}" {{\n' + entry += config_entry(True, boot_spec, f'Default', str(time)) + + for spec, spec_boot_spec in specialisation_list: + entry += config_entry(True, spec_boot_spec, f'{spec}', str(time)) + + entry += '}\n' + else: + entry += config_entry(False, boot_spec, f'NixOS {group_name} Generation {gen}', str(time)) + return entry + + +def find_disk_device(part: str) -> str: + part = os.path.realpath(part) + part = part.removeprefix('/dev/') + disk = os.path.realpath(os.path.join('/sys', 'class', 'block', part)) + disk = os.path.dirname(disk) + + return os.path.join('/dev', os.path.basename(disk)) + + +def find_mounted_device(path: str) -> str: + path = os.path.abspath(path) + + while not os.path.ismount(path): + path = os.path.dirname(path) + + devices = [x for x in psutil.disk_partitions() if x.mountpoint == path] + + assert len(devices) == 1 + return devices[0].device + + +def copy_file(from_path: str, to_path: str): + dirname = os.path.dirname(to_path) + + if not os.path.exists(dirname): + os.makedirs(dirname) + + shutil.copyfile(from_path, to_path + ".tmp") + os.rename(to_path + ".tmp", to_path) + + paths[to_path] = True + + +def install_bootloader() -> None: + global refind_dir + + refind_dir = os.path.join(str(config('efiMountPoint')), 'efi', 'refind') + + if not os.path.exists(refind_dir): + os.makedirs(refind_dir) + else: + for dir, dirs, files in os.walk(refind_dir, topdown=True): + for file in files: + paths[os.path.join(dir, file)] = False + + profiles = [('system', get_gens())] + + for profile in get_profiles(): + profiles += [(profile, get_gens(profile))] + + timeout = config('timeout') + + last_gen = get_gens()[-1] + last_gen_json = json.load(open(os.path.join(get_system_path('system', last_gen), 'boot.json'), 'r')) + last_gen_boot_spec = bootjson_to_bootspec(last_gen_json) + + config_file = str(config('extraConfig')) + '\n' + config_file += textwrap.dedent(f''' + timeout {timeout} + default_selection {3 if len(last_gen_boot_spec.specialisations.items()) > 0 else 2} + ''') + + config_file += textwrap.dedent(''' + # NixOS boot entries start here + ''') + + for (profile, gens) in profiles: + group_name = 'default profile' if profile == 'system' else f"profile '{profile}'" + isFirst = True + + for gen in sorted(gens, key=lambda x: x, reverse=True): + config_file += generate_config_entry(profile, gen, isFirst, group_name) + isFirst = False + + config_file_path = os.path.join(refind_dir, 'refind.conf') + config_file += '\n# NixOS boot entries end here\n\n' + + with open(f"{config_file_path}.tmp", 'w') as file: + file.truncate() + file.write(config_file.strip()) + file.flush() + os.fsync(file.fileno()) + os.rename(f"{config_file_path}.tmp", config_file_path) + + paths[config_file_path] = True + + for dest_path, source_path in config('additionalFiles').items(): + dest_path = os.path.join(refind_dir, dest_path) + + copy_file(source_path, dest_path) + + cpu_family = config('hostArchitecture', 'family') + if cpu_family == 'x86': + if config('hostArchitecture', 'bits') == 32: + boot_file = 'BOOTIA32.EFI' + efi_file = 'refind_ia32.efi' + elif config('hostArchitecture', 'bits') == 64: + boot_file = 'BOOTX64.EFI' + efi_file = 'refind_x64.efi' + elif cpu_family == 'arm': + if config('hostArchitecture', 'arch') == 'armv8-a' and config('hostArchitecture', 'bits') == 64: + boot_file = 'BOOTAA64.EFI' + efi_file = 'refind_aa64.efi' + else: + raise Exception(f'Unsupported CPU arch: {config("hostArchitecture", "arch")}') + else: + raise Exception(f'Unsupported CPU family: {cpu_family}') + + efi_path = os.path.join(config('refindPath'), 'share', 'refind', efi_file) + dest_path = os.path.join(config('efiMountPoint'), 'efi', 'boot' if config('efiRemovable') else 'refind', boot_file) + + copy_file(efi_path, dest_path) + + if not config('efiRemovable') and not config('canTouchEfiVariables'): + print('warning: boot.loader.efi.canTouchEfiVariables is set to false while boot.loader.limine.efiInstallAsRemovable.\n This may render the system unbootable.') + + if config('canTouchEfiVariables'): + if config('efiRemovable'): + print('note: boot.loader.limine.efiInstallAsRemovable is true, no need to add EFI entry.') + else: + efibootmgr = os.path.join(str(config('efiBootMgrPath')), 'bin', 'efibootmgr') + efi_partition = find_mounted_device(str(config('efiMountPoint'))) + efi_disk = find_disk_device(efi_partition) + + efibootmgr_output = subprocess.check_output([efibootmgr], stderr=subprocess.STDOUT, universal_newlines=True) + + # Check the output of `efibootmgr` to find if rEFInd is already installed and present in the boot record + refind_boot_entry = None + if matches := re.findall(r'Boot([0-9a-fA-F]{4})\*? rEFInd', efibootmgr_output): + refind_boot_entry = matches[0] + + # If there's already a Limine entry, replace it + if refind_boot_entry: + boot_order = re.findall(r'BootOrder: ((?:[0-9a-fA-F]{4},?)*)', efibootmgr_output)[0] + + efibootmgr_output = subprocess.check_output([ + efibootmgr, + '-b', refind_boot_entry, + '-B', + ], stderr=subprocess.STDOUT, universal_newlines=True) + + efibootmgr_output = subprocess.check_output([ + efibootmgr, + '-c', + '-b', refind_boot_entry, + '-d', efi_disk, + '-p', efi_partition.removeprefix(efi_disk).removeprefix('p'), + '-l', f'\\efi\\refind\\{boot_file}', + '-L', 'rEFInd', + '-o', boot_order, + ], stderr=subprocess.STDOUT, universal_newlines=True) + else: + efibootmgr_output = subprocess.check_output([ + efibootmgr, + '-c', + '-d', efi_disk, + '-p', efi_partition.removeprefix(efi_disk).removeprefix('p'), + '-l', f'\\efi\\refind\\{boot_file}', + '-L', 'rEFInd', + ], stderr=subprocess.STDOUT, universal_newlines=True) + + print("removing unused boot files...") + for path in paths: + if not paths[path]: + os.remove(path) + + +def main() -> None: + try: + install_bootloader() + finally: + # Since fat32 provides little recovery facilities after a crash, + # it can leave the system in an unbootable state, when a crash/outage + # happens shortly after an update. To decrease the likelihood of this + # event sync the efi filesystem after each update. + rc = libc.syncfs(os.open(f"{config('efiMountPoint')}", os.O_RDONLY)) + if rc != 0: + print(f"could not sync {config('efiMountPoint')}: {os.strerror(rc)}", file=sys.stderr) + +if __name__ == '__main__': + main() diff --git a/nixos/modules/system/boot/loader/refind/refind.nix b/nixos/modules/system/boot/loader/refind/refind.nix new file mode 100644 index 000000000000..8e52edd1610f --- /dev/null +++ b/nixos/modules/system/boot/loader/refind/refind.nix @@ -0,0 +1,117 @@ +{ + config, + options, + lib, + pkgs, + ... +}: +let + inherit (lib) + mkIf + mkEnableOption + mkOption + literalExpression + types + ; + + cfg = config.boot.loader.refind; + efi = config.boot.loader.efi; + refindInstallConfig = pkgs.writeText "refind-install.json" ( + builtins.toJSON { + nixPath = config.nix.package; + efiBootMgrPath = pkgs.efibootmgr; + refindPath = cfg.package; + efiMountPoint = efi.efiSysMountPoint; + fileSystems = config.fileSystems; + luksDevices = config.boot.initrd.luks.devices; + canTouchEfiVariables = efi.canTouchEfiVariables; + efiRemovable = cfg.efiInstallAsRemovable; + maxGenerations = if cfg.maxGenerations == null then 0 else cfg.maxGenerations; + hostArchitecture = pkgs.stdenv.hostPlatform.parsed.cpu; + timeout = if config.boot.loader.timeout != null then config.boot.loader.timeout else 10; + extraConfig = cfg.extraConfig; + additionalFiles = cfg.additionalFiles; + } + ); +in +{ + meta = { + inherit (pkgs.refind.meta) maintainers; + }; + + options = { + boot.loader.refind = { + enable = mkEnableOption "the rEFInd boot loader"; + extraConfig = lib.mkOption { + default = ""; + type = types.lines; + description = '' + A string which is prepended to refind.conf. + ''; + }; + package = lib.mkPackageOption pkgs "refind" { }; + maxGenerations = lib.mkOption { + default = null; + example = 50; + type = types.nullOr types.int; + description = '' + Maximum number of latest generations in the boot menu. + Useful to prevent boot partition of running out of disk space. + `null` means no limit i.e. all generations that were not + garbage collected yet. + ''; + }; + additionalFiles = mkOption { + default = { }; + type = types.attrsOf types.path; + example = literalExpression '' + { "efi/memtest86/memtest86.efi" = "''${pkgs.memtest86-efi}/BOOTX64.efi"; } + ''; + description = '' + A set of files to be copied to {file}`/boot`. Each attribute name denotes the + destination file name in {file}`/boot`, while the corresponding attribute value + specifies the source file. + ''; + }; + efiInstallAsRemovable = mkEnableOption null // { + default = !efi.canTouchEfiVariables; + defaultText = literalExpression "!config.boot.loader.efi.canTouchEfiVariables"; + description = '' + Whether or not to install the rEFInd EFI files as removable. + + See {option}`boot.loader.grub.efiInstallAsRemovable` + ''; + }; + }; + }; + + config = mkIf cfg.enable { + assertions = [ + { + assertion = + pkgs.stdenv.hostPlatform.isx86_64 + || pkgs.stdenv.hostPlatform.isi686 + || pkgs.stdenv.hostPlatform.isAarch64; + message = "rEFInd can only be installed on aarch64 & x86 platforms"; + } + { + assertion = pkgs.stdenv.hostPlatform.isEfi; + message = "rEFInd can only be installed on UEFI platforms"; + } + ]; + + # Common attribute for boot loaders so only one of them can be + # set at once. + system = { + boot.loader.id = "refind"; + build.installBootLoader = pkgs.replaceVarsWith { + src = ./refind-install.py; + isExecutable = true; + replacements = { + python3 = pkgs.python3.withPackages (python-packages: [ python-packages.psutil ]); + configPath = refindInstallConfig; + }; + }; + }; + }; +} diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index a50c15852666..398fa4157388 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -913,7 +913,6 @@ in metabase = runTest ./metabase.nix; mihomo = runTest ./mihomo.nix; mindustry = runTest ./mindustry.nix; - minecraft = runTest ./minecraft.nix; minecraft-server = runTest ./minecraft-server.nix; minidlna = runTest ./minidlna.nix; miniflux = runTest ./miniflux.nix; @@ -1291,6 +1290,7 @@ in redis = handleTest ./redis.nix { }; redlib = runTest ./redlib.nix; redmine = handleTestOn [ "x86_64-linux" "aarch64-linux" ] ./redmine.nix { }; + refind = runTest ./refind.nix; renovate = runTest ./renovate.nix; replace-dependencies = handleTest ./replace-dependencies { }; reposilite = runTest ./reposilite.nix; diff --git a/nixos/tests/minecraft.nix b/nixos/tests/minecraft.nix deleted file mode 100644 index db577a573b23..000000000000 --- a/nixos/tests/minecraft.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ pkgs, lib, ... }: -{ - name = "minecraft"; - meta = with lib.maintainers; { - maintainers = [ nequissimus ]; - }; - - nodes.client = - { nodes, ... }: - let - user = nodes.client.config.users.users.alice; - in - { - imports = [ - ./common/user-account.nix - ./common/x11.nix - ]; - - environment.systemPackages = [ pkgs.minecraft ]; - - nixpkgs.config.allowUnfree = true; - - test-support.displayManager.auto.user = user.name; - }; - - enableOCR = true; - - testScript = - { nodes, ... }: - let - user = nodes.client.config.users.users.alice; - in - '' - client.wait_for_x() - client.execute("su - alice -c minecraft-launcher >&2 &") - client.wait_for_text("Create a new Microsoft account") - client.sleep(10) - client.screenshot("launcher") - ''; -} diff --git a/nixos/tests/refind.nix b/nixos/tests/refind.nix new file mode 100644 index 000000000000..9cb36f0b6035 --- /dev/null +++ b/nixos/tests/refind.nix @@ -0,0 +1,25 @@ +{ lib, pkgs, ... }: +{ + name = "refind"; + meta = { + inherit (pkgs.refind.meta) maintainers; + }; + + nodes.machine = + { ... }: + { + virtualisation.useBootLoader = true; + virtualisation.useEFIBoot = true; + + boot.loader.grub.enable = false; + boot.loader.efi.canTouchEfiVariables = true; + boot.loader.refind.enable = true; + boot.loader.timeout = 1; + }; + + testScript = '' + machine.start() + with subtest('Machine boots correctly'): + machine.wait_for_unit('multi-user.target') + ''; +} diff --git a/pkgs/applications/editors/jupyter-kernels/coq/default.nix b/pkgs/applications/editors/jupyter-kernels/coq/default.nix index 134a6b2a6b63..630c95cd0f4f 100644 --- a/pkgs/applications/editors/jupyter-kernels/coq/default.nix +++ b/pkgs/applications/editors/jupyter-kernels/coq/default.nix @@ -1,40 +1,53 @@ { lib, - stdenv, callPackage, runCommand, makeWrapper, coq, imagemagick, - python3, + python312, }: # Jupyter console: # nix run --impure --expr 'with import {}; jupyter-console.withSingleKernel coq-kernel.definition' -# Jupyter console with packages: -# nix run --impure --expr 'with import {}; jupyter-console.withSingleKernel (coq-kernel.definitionWithPackages [coqPackages.bignums])' +# Jupyter console with packages: (using Coq 8.20, before the Rocq transition at version 9.0) +# nix run --impure --expr 'with import {}; jupyter-console.withSingleKernel ((coq-kernel.override { coq = coq_8_20; }).definitionWithPackages (with coqPackages_8_20; [bignums stdlib]))' # Jupyter notebook: # nix run --impure --expr 'with import {}; jupyter.override { definitions.coq = coq-kernel.definition; }' let - python = python3.withPackages (ps: [ + # Nixpkgs master is currently on python3 >= python313. This doesn't work with + # this package, because it depends on the "future" package, which is no longer + # compatible with Python 3.13. + + coq-jupyter = callPackage ./kernel.nix { + inherit coq; + python3 = python312; + }; + + python = python312.withPackages (ps: [ ps.traitlets ps.jupyter-core ps.ipykernel - (callPackage ./kernel.nix { }) + coq-jupyter ]); - logos = runCommand "coq-logos" { buildInputs = [ imagemagick ]; } '' - mkdir -p $out - convert ${coq.src}/ide/coqide/coq.png -resize 32x32 $out/logo-32x32.png - convert ${coq.src}/ide/coqide/coq.png -resize 64x64 $out/logo-64x64.png - ''; + # At version 9.0, Coq underwent a name change to Rocq. + # A couple paths and environment variables need to change at this point. + isRocq = lib.versionAtLeast coq.coq-version "9.0"; -in + logos = + let + dir = if isRocq then "rocqide" else "coqide"; + in + runCommand "coq-logos" { buildInputs = [ imagemagick ]; } '' + mkdir -p $out + convert ${coq.src}/ide/${dir}/coq.png -resize 32x32 $out/logo-32x32.png + convert ${coq.src}/ide/${dir}/coq.png -resize 64x64 $out/logo-64x64.png + ''; -rec { launcher = runCommand "coq-kernel-launcher" { @@ -48,10 +61,8 @@ rec { --suffix PATH : ${coq}/bin ''; - definition = definitionWithPackages [ ]; - definitionWithPackages = packages: { - displayName = "Coq " + coq.version; + displayName = (if isRocq then "Rocq " else "Coq ") + coq.version; argv = [ "${launcher}/bin/coq-kernel" "-f" @@ -60,10 +71,27 @@ rec { language = "coq"; logo32 = "${logos}/logo-32x32.png"; logo64 = "${logos}/logo-64x64.png"; - env = { - COQPATH = lib.concatStringsSep ":" ( - map (x: "${x}/lib/coq/${coq.coq-version}/user-contrib/") packages - ); - }; + env = lib.listToAttrs [ + { + name = if isRocq then "ROCQPATH" else "COQPATH"; + value = lib.concatStringsSep ":" ( + map (x: "${x}/lib/coq/${coq.coq-version}/user-contrib/") packages + ); + } + { + name = "OCAMLPATH"; + value = lib.concatStringsSep ":" ( + map (x: "${x}/lib/ocaml/${coq.ocaml.version}/site-lib/") ([ coq.ocamlPackages.findlib ] ++ packages) + ); + } + ]; }; -} + +in + +launcher.overrideAttrs (_oldAttrs: { + passthru = { + inherit coq-jupyter definitionWithPackages logos; + definition = definitionWithPackages [ ]; + }; +}) diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix index b2ed1a32188e..936ed34a04f6 100644 --- a/pkgs/applications/editors/vim/plugins/generated.nix +++ b/pkgs/applications/editors/vim/plugins/generated.nix @@ -11998,6 +11998,19 @@ final: prev: { meta.hydraPlatforms = [ ]; }; + oklch-color-picker-nvim = buildVimPlugin { + pname = "oklch-color-picker.nvim"; + version = "2025-09-04"; + src = fetchFromGitHub { + owner = "eero-lehtinen"; + repo = "oklch-color-picker.nvim"; + rev = "ae318113cd7d0e4988b6b059327c2778911f1187"; + sha256 = "0xhraf89b1ppijqmg1gnwp4gvnnmf8h86n8d6s8ydgj910jvagzm"; + }; + meta.homepage = "https://github.com/eero-lehtinen/oklch-color-picker.nvim/"; + meta.hydraPlatforms = [ ]; + }; + ollama-nvim = buildVimPlugin { pname = "ollama.nvim"; version = "2024-06-09"; diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names index 584970d814af..a72fe0145a46 100644 --- a/pkgs/applications/editors/vim/plugins/vim-plugin-names +++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names @@ -921,6 +921,7 @@ https://github.com/nvimdev/oceanic-material/,, https://github.com/mhartington/oceanic-next/,, https://github.com/pwntester/octo.nvim/,, https://github.com/refractalize/oil-git-status.nvim/,HEAD, +https://github.com/eero-lehtinen/oklch-color-picker.nvim/,HEAD, https://github.com/nomnivore/ollama.nvim/,HEAD, https://github.com/yonlu/omni.vim/,, https://github.com/Hoffs/omnisharp-extended-lsp.nvim/,HEAD, diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix index b40c510b6bbd..7d2f2169ba5e 100644 --- a/pkgs/applications/editors/vscode/extensions/default.nix +++ b/pkgs/applications/editors/vscode/extensions/default.nix @@ -495,8 +495,8 @@ let mktplcRef = { publisher = "banacorn"; name = "agda-mode"; - version = "0.6.5"; - hash = "sha256-fq3JiqdtYN9kAWDvu8X+2mlU5kj2RwUTPA4QF43vShQ="; + version = "0.6.6"; + hash = "sha256-QzFahhNXwfJQibmoAbBDes+/ZCb83oTAN2w96U5Mf8Y="; }; meta = { changelog = "https://marketplace.visualstudio.com/items/banacorn.agda-mode/changelog"; @@ -1152,8 +1152,8 @@ let mktplcRef = { publisher = "DanielSanMedium"; name = "dscodegpt"; - version = "3.14.19"; - hash = "sha256-58D9ZzNIMrVa0nQjev0dGNth29iWL7U/X0NkVLSB7hg="; + version = "3.14.85"; + hash = "sha256-JeoLWQLYxWdkOmlxrMIhroyfZSL1aWg/rXQORiRQueI="; }; meta = { changelog = "https://marketplace.visualstudio.com/items/DanielSanMedium.dscodegpt/changelog"; @@ -1747,8 +1747,8 @@ let mktplcRef = { name = "foam-vscode"; publisher = "foam"; - version = "0.27.2"; - hash = "sha256-wuguBoIYTdlu03wNu9sfRnUkBvYgZEcTJiujq7KWZZ4="; + version = "0.27.5"; + hash = "sha256-QjZlG94bRwrrZhJPUmcyPfyEj8Qd4ZTCCUQ6+CkG9XY="; }; meta = { changelog = "https://marketplace.visualstudio.com/items/foam.foam-vscode/changelog"; @@ -2498,8 +2498,8 @@ let mktplcRef = { publisher = "jeff-hykin"; name = "better-nix-syntax"; - version = "2.2.0"; - hash = "sha256-MmmRKq/7uTCywnEceKukJW/jIc0oIx0GIz55ugh4gQg="; + version = "2.2.3"; + hash = "sha256-KhmkCMBWagi0JjZvupgaU7LA6hsGRE6SiHqdJlXyyX8="; }; meta = { description = "Visual Studio Code extension providing Nix Syntax highlighting"; @@ -4823,8 +4823,8 @@ let mktplcRef = { name = "uiua-vscode"; publisher = "uiua-lang"; - version = "0.0.65"; - hash = "sha256-qmjXKuNVYkzaJUUvW/apXzPVE3XuZjxTl3EYNoKHVNc="; + version = "0.0.66"; + hash = "sha256-eFdRzkoYJeQdpebKcSFhhnZZXFcA3oKURvqjBx5hReQ="; }; meta = { description = "VSCode language extension for Uiua"; diff --git a/pkgs/applications/emulators/libretro/cores/pcsx2.nix b/pkgs/applications/emulators/libretro/cores/pcsx2.nix index da6bad0f728a..1827412abf21 100644 --- a/pkgs/applications/emulators/libretro/cores/pcsx2.nix +++ b/pkgs/applications/emulators/libretro/cores/pcsx2.nix @@ -11,13 +11,13 @@ }: mkLibretroCore { core = "pcsx2"; - version = "0-unstable-2025-08-07"; + version = "0-unstable-2025-08-30"; src = fetchFromGitHub { owner = "libretro"; repo = "ps2"; - rev = "c26b06ac2752a11ee47abc6f9c73595ee874341c"; - hash = "sha256-c7y1jCRQd/o4RTrOeqltcH8HOwrb+BLtaw//0ZWW4E0="; + rev = "b0e6c4d7f4abc8cfbf2c55322fc5009a685bc042"; + hash = "sha256-6cpVsituAWX6sVP5JUvT7KjYZ7SzvD95EB90e2UxJ9A="; fetchSubmodules = true; }; diff --git a/pkgs/applications/misc/organicmaps/default.nix b/pkgs/applications/misc/organicmaps/default.nix index 58b92227c399..27a8c2ad3af9 100644 --- a/pkgs/applications/misc/organicmaps/default.nix +++ b/pkgs/applications/misc/organicmaps/default.nix @@ -33,13 +33,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "organicmaps"; - version = "2025.08.10-20"; + version = "2025.09.01-6"; src = fetchFromGitHub { owner = "organicmaps"; repo = "organicmaps"; tag = "${finalAttrs.version}-android"; - hash = "sha256-W1lqmxV5rUC6yXdqr9NrRDXON32K3JsalXFDiB5OCg4="; + hash = "sha256-wxJgfvZvksW/U3ZC7/apRHQTcGvfdi8mYTPCzT8FM3U="; fetchSubmodules = true; }; diff --git a/pkgs/applications/networking/browsers/firefox/packages/firefox-beta.nix b/pkgs/applications/networking/browsers/firefox/packages/firefox-beta.nix index 503ebcdeccdf..b71647b7dd19 100644 --- a/pkgs/applications/networking/browsers/firefox/packages/firefox-beta.nix +++ b/pkgs/applications/networking/browsers/firefox/packages/firefox-beta.nix @@ -10,11 +10,11 @@ buildMozillaMach rec { pname = "firefox-beta"; binaryName = pname; - version = "143.0b7"; + version = "143.0b8"; applicationName = "Firefox Beta"; src = fetchurl { url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz"; - sha512 = "bf71930c7a5ab2c4ccc4f0179702491bd314763c469501f68df6cef0f1db57da6f16da77bc5d7692c0f5edf8ce616d8f927d2fa59c5c386217b9022a8e9802f8"; + sha512 = "bf8e78abcc1cf6c8b48a591d0185c85195a818de0d13bafa3f004ad9c76364a2c07cacdf09fe0ae2e290d9cbce7b8c3ba4b57793cd3d39240023ef53eea08377"; }; meta = { diff --git a/pkgs/applications/networking/browsers/firefox/packages/firefox-devedition.nix b/pkgs/applications/networking/browsers/firefox/packages/firefox-devedition.nix index b69e94984daf..13f91c7d8161 100644 --- a/pkgs/applications/networking/browsers/firefox/packages/firefox-devedition.nix +++ b/pkgs/applications/networking/browsers/firefox/packages/firefox-devedition.nix @@ -10,13 +10,13 @@ buildMozillaMach rec { pname = "firefox-devedition"; binaryName = pname; - version = "143.0b7"; + version = "143.0b8"; applicationName = "Firefox Developer Edition"; requireSigning = false; branding = "browser/branding/aurora"; src = fetchurl { url = "mirror://mozilla/devedition/releases/${version}/source/firefox-${version}.source.tar.xz"; - sha512 = "0c1c3af3412b14425df005b53af00e8af526cb6e0bc36f32f6bce1f4332959f35ffed4b795a40e004a41fea9747a7b7c7f6cacfd70b6ef4f54b47556cdc31ec5"; + sha512 = "89152a4dd3e17f68d7991fae65a6365a2273fcbef28c245a76e9e068a1f12c486a7d0c6d3cb8988c1c9955b15809fa93e117e25b04f9b1a9d449e685cbf30cfc"; }; # buildMozillaMach sets MOZ_APP_REMOTINGNAME during configuration, but diff --git a/pkgs/by-name/ai/airgorah/package.nix b/pkgs/by-name/ai/airgorah/package.nix index bbab7c978ff3..bd9710c940b5 100644 --- a/pkgs/by-name/ai/airgorah/package.nix +++ b/pkgs/by-name/ai/airgorah/package.nix @@ -15,16 +15,16 @@ rustPlatform.buildRustPackage rec { pname = "airgorah"; - version = "0.7.3"; + version = "0.7.4"; src = fetchFromGitHub { owner = "martin-olivier"; repo = "airgorah"; tag = "v${version}"; - hash = "sha256-cIb40TKkk3gfy4dTP8WyZqQkRGj5nItaQ3NSfexCUOA="; + hash = "sha256-6TH+DRDtWajZjHNmFSKL4XJK+AuDNUbWKRPRryOpSGY="; }; - cargoHash = "sha256-3Les/A9fBBjU6NSVVEyXCbjrNSdaEgCl5pZ36ceRDQg="; + cargoHash = "sha256-LiSaNyqsKBZ5nNP7mws1pjhVwTXNBF6e1wSUdG/qYog="; nativeBuildInputs = [ pkg-config diff --git a/pkgs/by-name/am/amass/package.nix b/pkgs/by-name/am/amass/package.nix index 79b8444fa112..ccf26c2cbabe 100644 --- a/pkgs/by-name/am/amass/package.nix +++ b/pkgs/by-name/am/amass/package.nix @@ -2,31 +2,24 @@ lib, buildGoModule, fetchFromGitHub, + pkg-config, + libpostalWithData, }: - buildGoModule rec { pname = "amass"; - version = "4.2.0"; + version = "5.0.1"; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libpostalWithData ]; src = fetchFromGitHub { owner = "OWASP"; repo = "Amass"; tag = "v${version}"; - hash = "sha256-lhvU2fUnjQ+D+EZDRircNg/np4Ynk+HzOBgxT1L8BaQ="; + hash = "sha256-uAuBWzEwppnmYacfPI7MZUW+7PdSs3EqYm1WQI4fthQ="; }; - vendorHash = "sha256-PdFIWK4yBh8Bb9mzYdU2h7pDPK8FZMhu8meTd9snP48="; - - outputs = [ - "out" - "wordlists" - ]; - - postInstall = '' - mkdir -p $wordlists - cp -R examples/wordlists/*.txt $wordlists - gzip $wordlists/*.txt - ''; + vendorHash = "sha256-/AowoZfOk2tib996oC2hsMnzbe/CVbCBesTWXp6xE6Y="; # https://github.com/OWASP/Amass/issues/640 doCheck = false; @@ -40,9 +33,6 @@ buildGoModule rec { uses the IP addresses obtained during resolution to discover associated netblocks and ASNs. All the information is then used to build maps of the target networks. - - Amass ships with a set of wordlist (to be used with the amass -w flag) - that are found under the wordlists output. ''; homepage = "https://owasp.org/www-project-amass/"; changelog = "https://github.com/OWASP/Amass/releases/tag/v${version}"; diff --git a/pkgs/applications/science/electronics/appcsxcad/default.nix b/pkgs/by-name/ap/appcsxcad/package.nix similarity index 58% rename from pkgs/applications/science/electronics/appcsxcad/default.nix rename to pkgs/by-name/ap/appcsxcad/package.nix index 36b029b5f0dc..ae9504c3d2fa 100644 --- a/pkgs/applications/science/electronics/appcsxcad/default.nix +++ b/pkgs/by-name/ap/appcsxcad/package.nix @@ -1,40 +1,42 @@ { lib, - mkDerivation, + stdenv, fetchFromGitHub, cmake, csxcad, qcsxcad, hdf5, - vtkWithQt5, - qtbase, + vtkWithQt6, + qt6, fparser, tinyxml, cgal, boost, }: -mkDerivation { +stdenv.mkDerivation (finalAttrs: { pname = "appcsxcad"; - version = "unstable-2023-01-06"; + version = "0.2.3"; src = fetchFromGitHub { owner = "thliebig"; repo = "AppCSXCAD"; - rev = "379ede4b8e00c11e8d0fb724c35547991b30c423"; - hash = "sha256-L0ZEyovnfMzM7JuITBuhb4tJ2Aqgw52IiKEfEGq7Yo0="; + rev = "v${finalAttrs.version}"; + hash = "sha256-KrsnCnRZRTbkgEH3hOETrYhseg5mCHPqhAbYyHlS3sk="; }; nativeBuildInputs = [ cmake + qt6.wrapQtAppsHook ]; buildInputs = [ csxcad qcsxcad hdf5 - vtkWithQt5 - qtbase + vtkWithQt6 + qt6.qtbase + qt6.qtwayland fparser tinyxml cgal @@ -45,12 +47,12 @@ mkDerivation { rm $out/bin/AppCSXCAD.sh ''; - meta = with lib; { + meta = { description = "Minimal Application using the QCSXCAD library"; mainProgram = "AppCSXCAD"; homepage = "https://github.com/thliebig/AppCSXCAD"; - license = licenses.gpl3; - maintainers = with maintainers; [ matthuszagh ]; - platforms = platforms.linux; + license = lib.licenses.gpl3; + maintainers = with lib.maintainers; [ matthuszagh ]; + platforms = lib.platforms.linux; }; -} +}) diff --git a/pkgs/by-name/aw/aws-sdk-cpp/package.nix b/pkgs/by-name/aw/aws-sdk-cpp/package.nix index d49d199b2203..d17b9b16ae36 100644 --- a/pkgs/by-name/aw/aws-sdk-cpp/package.nix +++ b/pkgs/by-name/aw/aws-sdk-cpp/package.nix @@ -14,6 +14,8 @@ apis ? [ "*" ], # Whether to enable AWS' custom memory management. customMemoryManagement ? true, + # Builds in 2+h with 2 cores, and ~10m with a big-parallel builder. + requiredSystemFeatures ? [ "big-parallel" ], }: let @@ -116,8 +118,7 @@ stdenv.mkDerivation rec { __darwinAllowLocalNetworking = true; - # Builds in 2+h with 2 cores, and ~10m with a big-parallel builder. - requiredSystemFeatures = [ "big-parallel" ]; + inherit requiredSystemFeatures; passthru = { tests = { diff --git a/pkgs/development/tools/build-managers/bazel/bazel_rc.patch b/pkgs/by-name/ba/bazel_7/bazel_rc.patch similarity index 100% rename from pkgs/development/tools/build-managers/bazel/bazel_rc.patch rename to pkgs/by-name/ba/bazel_7/bazel_rc.patch diff --git a/pkgs/development/tools/build-managers/bazel/bazel_7/darwin_sleep.patch b/pkgs/by-name/ba/bazel_7/darwin_sleep.patch similarity index 100% rename from pkgs/development/tools/build-managers/bazel/bazel_7/darwin_sleep.patch rename to pkgs/by-name/ba/bazel_7/darwin_sleep.patch diff --git a/pkgs/development/tools/build-managers/bazel/bazel_7/java_toolchain.patch b/pkgs/by-name/ba/bazel_7/java_toolchain.patch similarity index 100% rename from pkgs/development/tools/build-managers/bazel/bazel_7/java_toolchain.patch rename to pkgs/by-name/ba/bazel_7/java_toolchain.patch diff --git a/pkgs/development/tools/build-managers/bazel/bazel_7/nix-build-bazel-package-hacks.patch b/pkgs/by-name/ba/bazel_7/nix-build-bazel-package-hacks.patch similarity index 100% rename from pkgs/development/tools/build-managers/bazel/bazel_7/nix-build-bazel-package-hacks.patch rename to pkgs/by-name/ba/bazel_7/nix-build-bazel-package-hacks.patch diff --git a/pkgs/development/tools/build-managers/bazel/bazel_7/default.nix b/pkgs/by-name/ba/bazel_7/package.nix similarity index 99% rename from pkgs/development/tools/build-managers/bazel/bazel_7/default.nix rename to pkgs/by-name/ba/bazel_7/package.nix index 7cd90a1f5822..539b563e10aa 100644 --- a/pkgs/development/tools/build-managers/bazel/bazel_7/default.nix +++ b/pkgs/by-name/ba/bazel_7/package.nix @@ -369,7 +369,7 @@ stdenv.mkDerivation rec { # On Darwin, the last argument to gcc is coming up as an empty string. i.e: '' # This is breaking the build of any C target. This patch removes the last # argument if it's found to be an empty string. - ../trim-last-argument-to-gcc-if-empty.patch + ./trim-last-argument-to-gcc-if-empty.patch # --experimental_strict_action_env (which may one day become the default # see bazelbuild/bazel#2574) hardcodes the default @@ -377,13 +377,13 @@ stdenv.mkDerivation rec { # This is non hermetic on non-nixos systems. On NixOS, bazel cannot find the required binaries. # So we are replacing this bazel paths by defaultShellPath, # improving hermeticity and making it work in nixos. - (replaceVars ../strict_action_env.patch { + (replaceVars ./strict_action_env.patch { strictActionEnvPatch = defaultShellPath; }) # bazel reads its system bazelrc in /etc # override this path to a builtin one - (replaceVars ../bazel_rc.patch { + (replaceVars ./bazel_rc.patch { bazelSystemBazelRCPath = bazelRC; }) ] diff --git a/pkgs/development/tools/build-managers/bazel/strict_action_env.patch b/pkgs/by-name/ba/bazel_7/strict_action_env.patch similarity index 100% rename from pkgs/development/tools/build-managers/bazel/strict_action_env.patch rename to pkgs/by-name/ba/bazel_7/strict_action_env.patch diff --git a/pkgs/development/tools/build-managers/bazel/bazel_7/test_source_sort.patch b/pkgs/by-name/ba/bazel_7/test_source_sort.patch similarity index 100% rename from pkgs/development/tools/build-managers/bazel/bazel_7/test_source_sort.patch rename to pkgs/by-name/ba/bazel_7/test_source_sort.patch diff --git a/pkgs/development/tools/build-managers/bazel/trim-last-argument-to-gcc-if-empty.patch b/pkgs/by-name/ba/bazel_7/trim-last-argument-to-gcc-if-empty.patch similarity index 100% rename from pkgs/development/tools/build-managers/bazel/trim-last-argument-to-gcc-if-empty.patch rename to pkgs/by-name/ba/bazel_7/trim-last-argument-to-gcc-if-empty.patch diff --git a/pkgs/development/tools/build-managers/bazel/bazel_7/xcode_locator.patch b/pkgs/by-name/ba/bazel_7/xcode_locator.patch similarity index 100% rename from pkgs/development/tools/build-managers/bazel/bazel_7/xcode_locator.patch rename to pkgs/by-name/ba/bazel_7/xcode_locator.patch diff --git a/pkgs/by-name/bo/boehmgc/package.nix b/pkgs/by-name/bo/boehmgc/package.nix index 69bc48b1c852..5755e462fad4 100644 --- a/pkgs/by-name/bo/boehmgc/package.nix +++ b/pkgs/by-name/bo/boehmgc/package.nix @@ -3,10 +3,19 @@ stdenv, fetchFromGitHub, autoreconfHook, - # doc: https://github.com/ivmai/bdwgc/blob/v8.2.8/doc/README.macros (LARGE_CONFIG) + # doc: https://github.com/bdwgc/bdwgc/blob/v8.2.8/doc/README.macros (LARGE_CONFIG) enableLargeConfig ? false, enableMmap ? true, enableStatic ? false, + # Allows derivation users to increase the initial mark stack size to avoid stack overflows, + # since these inhibit parallel marking (see `GC_mark_some()` in `mark.c`.) + # + # Run Nix with the `GC_PRINT_STATS=1` environment set to check if the mark stack is too small. + # Look for messages such as `Mark stack overflow`, `No room to copy back mark stack`, and + # `Grew mark stack to ... frames`. + # + # If this parameter is set to `null`, the default from upstream is used, which is 4096 as of 8.2.8 + initialMarkStackSize ? null, nixVersions, }: @@ -15,7 +24,7 @@ stdenv.mkDerivation (finalAttrs: { version = "8.2.8"; src = fetchFromGitHub { - owner = "ivmai"; + owner = "bdwgc"; repo = "bdwgc"; rev = "v${finalAttrs.version}"; hash = "sha256-UQSLK/05uPal6/m+HMz0QwXVII1leonlmtSZsXjJ+/c="; @@ -40,18 +49,32 @@ stdenv.mkDerivation (finalAttrs: { ++ lib.optional enableMmap "--enable-mmap" ++ lib.optional enableLargeConfig "--enable-large-config"; - # This stanza can be dropped when a release fixes this issue: - # https://github.com/ivmai/bdwgc/issues/376 - # The version is checked with == instead of versionAtLeast so we - # don't forget to disable the fix (and if the next release does - # not fix the problem the test failure will be a reminder to - # extend the set of versions requiring the workaround). - makeFlags = lib.optionals (stdenv.hostPlatform.isPower64 && finalAttrs.version == "8.2.8") [ - # do not use /proc primitives to track dirty bits; see: - # https://github.com/ivmai/bdwgc/issues/479#issuecomment-1279687537 - # https://github.com/ivmai/bdwgc/blob/54522af853de28f45195044dadfd795c4e5942aa/include/private/gcconfig.h#L741 - "CFLAGS_EXTRA=-DNO_SOFT_VDB" - ]; + makeFlags = + let + defineFlag = flag: "-D${flag}"; + + # This stanza can be dropped when a release fixes this issue: + # https://github.com/bdwgc/bdwgc/issues/376 + # The version is checked with == instead of versionAtLeast so we + # don't forget to disable the fix (and if the next release does + # not fix the problem the test failure will be a reminder to + # extend the set of versions requiring the workaround). + noSoftVDB = lib.optional (stdenv.hostPlatform.isPower64 && finalAttrs.version == "8.2.8") ( + # do not use /proc primitives to track dirty bits; see: + # https://github.com/bdwgc/bdwgc/issues/479#issuecomment-1279687537 + # https://github.com/bdwgc/bdwgc/blob/54522af853de28f45195044dadfd795c4e5942aa/include/private/gcconfig.h#L741 + "NO_SOFT_VDB" + ); + + initialMarkStackSizeFlag = lib.optionals (initialMarkStackSize != null) [ + "INITIAL_MARK_STACK_SIZE=${toString initialMarkStackSize}" + ]; + + cflagsExtra = noSoftVDB ++ initialMarkStackSizeFlag; + in + lib.optionals (cflagsExtra != [ ]) [ + "CFLAGS_EXTRA=${lib.concatMapStringsSep " " defineFlag cflagsExtra}" + ]; # OpenBSD patches lld (!!!!) to inject this symbol into every linker invocation. # We are obviously not doing that. @@ -91,7 +114,7 @@ stdenv.mkDerivation (finalAttrs: { Alternatively, the garbage collector may be used as a leak detector for C or C++ programs, though that is not its primary goal. ''; - changelog = "https://github.com/ivmai/bdwgc/blob/v${finalAttrs.version}/ChangeLog"; + changelog = "https://github.com/bdwgc/bdwgc/blob/v${finalAttrs.version}/ChangeLog"; license = "https://hboehm.info/gc/license.txt"; # non-copyleft, X11-style license maintainers = with lib.maintainers; [ ]; platforms = lib.platforms.all; diff --git a/pkgs/by-name/ci/cinnamon/package.nix b/pkgs/by-name/ci/cinnamon/package.nix index 5d47b88cc244..c66355d993ca 100644 --- a/pkgs/by-name/ci/cinnamon/package.nix +++ b/pkgs/by-name/ci/cinnamon/package.nix @@ -75,13 +75,13 @@ let in stdenv.mkDerivation rec { pname = "cinnamon"; - version = "6.4.10"; + version = "6.4.11"; src = fetchFromGitHub { owner = "linuxmint"; repo = "cinnamon"; rev = version; - hash = "sha256-8yg39x5rWxJ2IcDFO4AjqrctPSjqdUSfmrKbjT3Yx+0="; + hash = "sha256-Hqjsi07qkVGobVwiXgLwZexjssQN0UN1BJo8b8JlpkY="; }; patches = [ diff --git a/pkgs/by-name/ci/cinny-desktop/package.nix b/pkgs/by-name/ci/cinny-desktop/package.nix index 88887908b2aa..447fb84165d0 100644 --- a/pkgs/by-name/ci/cinny-desktop/package.nix +++ b/pkgs/by-name/ci/cinny-desktop/package.nix @@ -18,18 +18,18 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "cinny-desktop"; # We have to be using the same version as cinny-web or this isn't going to work. - version = "4.9.0"; + version = "4.10.0"; src = fetchFromGitHub { owner = "cinnyapp"; repo = "cinny-desktop"; tag = "v${finalAttrs.version}"; - hash = "sha256-C4wAl9H0ZCsUk5hJk8u0Om70UqX4D9/iWDYOgalksu8="; + hash = "sha256-YEu1qTI2ExfS+WKFxNGkubr+HOCCuWGpZFk3hS3srCU="; }; sourceRoot = "${finalAttrs.src.name}/src-tauri"; - cargoHash = "sha256-XQLp5copZLClscPv9Eb3ceOw0WGlNHwIH69MdFih84w="; + cargoHash = "sha256-NksWHI2TJR0YMGRIDHBxrQPGHiir2Kn4bxnSvO7EzoA="; postPatch = let diff --git a/pkgs/by-name/ci/cinny-unwrapped/package.nix b/pkgs/by-name/ci/cinny-unwrapped/package.nix index 99b9a061cd15..0d19a7278a25 100644 --- a/pkgs/by-name/ci/cinny-unwrapped/package.nix +++ b/pkgs/by-name/ci/cinny-unwrapped/package.nix @@ -13,16 +13,16 @@ buildNpmPackage rec { pname = "cinny-unwrapped"; - version = "4.9.0"; + version = "4.10.0"; src = fetchFromGitHub { owner = "cinnyapp"; repo = "cinny"; tag = "v${version}"; - hash = "sha256-tvBaONJwfkCK77aHmWJ/UAAZHq2WIc7geNT2tEFKuZ0="; + hash = "sha256-KpN6ul+kzGarBKnXXSP3gf9KlRII869xnfT95mzacRc="; }; - npmDepsHash = "sha256-9faffTlXEI1lMrVrkSyso/tfjs/4W+TVzmiv+bZAv18="; + npmDepsHash = "sha256-N5xHu4AmgRdd3gM+YTu+fbtAw1YDp4SMXdXUbbJnIZc="; nativeBuildInputs = [ python3 diff --git a/pkgs/by-name/cl/clickhouse/generic.nix b/pkgs/by-name/cl/clickhouse/generic.nix index 2fd4c47dd1cd..dd3378440f32 100644 --- a/pkgs/by-name/cl/clickhouse/generic.nix +++ b/pkgs/by-name/cl/clickhouse/generic.nix @@ -90,29 +90,33 @@ llvmPackages_19.stdenv.mkDerivation (finalAttrs: { dontCargoSetupPostUnpack = true; - # Should not be necessary after 25.9 - patches = lib.optional (lib.versions.majorMinor version == "25.8") (fetchpatch { - url = "https://github.com/ClickHouse/ClickHouse/commit/67a42b78cdf1c793e78c1adbcc34162f67044032.patch"; - sha256 = "7VF+JSztqTWD+aunCS3UVNxlRdwHc2W5fNqzDyeo3Fc="; - }); + patches = + lib.optional (lib.versions.majorMinor version == "25.8") (fetchpatch { + # Disable building WASM lexer + url = "https://github.com/ClickHouse/ClickHouse/commit/67a42b78cdf1c793e78c1adbcc34162f67044032.patch"; + sha256 = "7VF+JSztqTWD+aunCS3UVNxlRdwHc2W5fNqzDyeo3Fc="; + }) + ++ + + lib.optional (lib.versions.majorMinor version == "25.8" && stdenv.hostPlatform.isDarwin) + (fetchpatch { + # Do not intercept memalign on darwin + url = "https://github.com/ClickHouse/ClickHouse/commit/0cfd2dbe981727fb650f3b9935f5e7e7e843180f.patch"; + sha256 = "1iNYZbugX2g2dxNR1ZiUthzPnhLUR8g118aG23yhgUo="; + }); postPatch = '' patchShebangs src/ utils/ - - sed -i 's|/usr/bin/env perl|"${lib.getExe perl}"|' contrib/openssl-cmake/CMakeLists.txt - - substituteInPlace utils/list-licenses/list-licenses.sh \ - --replace-fail '$(git rev-parse --show-toplevel)' "$NIX_BUILD_TOP/$sourceRoot" - '' - + lib.optionalString (lib.versions.majorMinor version <= "25.6") '' - substituteInPlace src/Storages/System/StorageSystemLicenses.sh \ - --replace-fail '$(git rev-parse --show-toplevel)' "$NIX_BUILD_TOP/$sourceRoot" '' + lib.optionalString stdenv.hostPlatform.isDarwin '' substituteInPlace cmake/tools.cmake \ --replace-fail 'gfind' 'find' \ --replace-fail 'ggrep' 'grep' \ --replace-fail '--ld-path=''${LLD_PATH}' '-fuse-ld=lld' + + substituteInPlace utils/list-licenses/list-licenses.sh \ + --replace-fail 'gfind' 'find' \ + --replace-fail 'ggrep' 'grep' '' # Rust is handled by cmake + lib.optionalString rustSupport '' diff --git a/pkgs/by-name/cl/cloudprober/package.nix b/pkgs/by-name/cl/cloudprober/package.nix index 4b3d3d430651..411a3ab5a6e4 100644 --- a/pkgs/by-name/cl/cloudprober/package.nix +++ b/pkgs/by-name/cl/cloudprober/package.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "cloudprober"; - version = "0.14.0"; + version = "0.14.1"; src = fetchFromGitHub { owner = "cloudprober"; repo = "cloudprober"; tag = "v${version}"; - hash = "sha256-t32mALyxtapPSzf/pNG0MGS2jjq0Dwm31qQZAlZI5zE="; + hash = "sha256-XFMjUwsRfWAnrNsegUPqWz8Bcc/naEBhytqq/o21ras="; }; - vendorHash = "sha256-u/glcoLlNXDEWFblnuvRHK9mUNCXTsfcWR+FDsJeOOA="; + vendorHash = "sha256-+EVcYFnWPSNfxUzxuL3tAHjCCDad/7K11y3dk2CUtrU="; checkFlags = let diff --git a/pkgs/by-name/co/codex/package.nix b/pkgs/by-name/co/codex/package.nix index 98329528098f..0b7bf3500a77 100644 --- a/pkgs/by-name/co/codex/package.nix +++ b/pkgs/by-name/co/codex/package.nix @@ -12,18 +12,18 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "codex"; - version = "0.29.0"; + version = "0.30.0"; src = fetchFromGitHub { owner = "openai"; repo = "codex"; tag = "rust-v${finalAttrs.version}"; - hash = "sha256-YCQfycmDPRxMAqo57tt/6IXkUn1JIPTzEHMNbt7m3w0="; + hash = "sha256-9dWVf5Q7sDfAbRIGvUqqwEouJRnS//ujlFvqZ/a8zBk="; }; sourceRoot = "${finalAttrs.src.name}/codex-rs"; - cargoHash = "sha256-kGjpqkV0OJW8mOW/OhyfXoTgLHHrtHQcw9c8zyVtzgs="; + cargoHash = "sha256-qJn2oN/9LVLhHnaNp+x9cUEMODrGrgV3SiR0ykIx7B4="; nativeBuildInputs = [ installShellFiles diff --git a/pkgs/by-name/de/devcontainer/package.nix b/pkgs/by-name/de/devcontainer/package.nix index d32898162f76..9e86043a6282 100644 --- a/pkgs/by-name/de/devcontainer/package.nix +++ b/pkgs/by-name/de/devcontainer/package.nix @@ -19,18 +19,18 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "devcontainer"; - version = "0.80.0"; + version = "0.80.1"; src = fetchFromGitHub { owner = "devcontainers"; repo = "cli"; tag = "v${finalAttrs.version}"; - hash = "sha256-p6iBDNTGYgOPQUTRbiu8IT7kN72OCrw7R0ouhWW9yok="; + hash = "sha256-riDe8j/DCSuXpuFi27tmT5KjruuJiCrUeP022V4sYjU="; }; yarnOfflineCache = fetchYarnDeps { yarnLock = "${finalAttrs.src}/yarn.lock"; - hash = "sha256-LqrNRBMAWUqJH0+a17dIJgpKFP2rlECnWi4eVFfUTFg="; + hash = "sha256-joctNMzQXC/A9A69sJkKbED9pqMcbK1ZYiHPdJBJKCE="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/em/emmylua-doc-cli/package.nix b/pkgs/by-name/em/emmylua-doc-cli/package.nix index 6f113229a87d..5acd6eedc2f9 100644 --- a/pkgs/by-name/em/emmylua-doc-cli/package.nix +++ b/pkgs/by-name/em/emmylua-doc-cli/package.nix @@ -6,18 +6,18 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "emmylua_doc_cli"; - version = "0.12.0"; + version = "0.13.0"; src = fetchFromGitHub { owner = "EmmyLuaLs"; repo = "emmylua-analyzer-rust"; tag = finalAttrs.version; - hash = "sha256-IXoiXfRnGOZQ7c8AJaK8OGjqp1bczd/tKjtpbYdCZlU="; + hash = "sha256-93PlsVvlUravsnW7YBCii04jCEJPP+6U2vYbVBjcX8M="; }; buildAndTestSubdir = "crates/emmylua_doc_cli"; - cargoHash = "sha256-7QQipbnqelLdzQr+lIORyQNM9SS5yHaJLQ31M52lYCw="; + cargoHash = "sha256-SbsYlIVWDpBU2bxJqXUtOiMHkOoa8Up27X7rVKLLLm0="; nativeInstallCheckInputs = [ versionCheckHook diff --git a/pkgs/by-name/ep/epson-inkjet-printer-workforce-840-series/eps_raster_print-cast.patch b/pkgs/by-name/ep/epson-inkjet-printer-workforce-840-series/eps_raster_print-cast.patch new file mode 100644 index 000000000000..618ac1c91de9 --- /dev/null +++ b/pkgs/by-name/ep/epson-inkjet-printer-workforce-840-series/eps_raster_print-cast.patch @@ -0,0 +1,21 @@ +diff --git a/src/raster_to_epson.c b/src/raster_to_epson.c +index 6e621c8..a5ca797 100644 +--- a/src/raster_to_epson.c ++++ b/src/raster_to_epson.c +@@ -438,14 +438,14 @@ static int print_page (void) + break; + } + +- if (eps_raster_print(raster_h, image_raw, pageRegion.bytesPerLine, pageRegion.width, &nraster)) { ++ if (eps_raster_print(raster_h, image_raw, pageRegion.bytesPerLine, pageRegion.width, (int *) &nraster)) { + error = 1; + break; + } + } + + // flushing page +- eps_raster_print(raster_h, NULL, 0, 0, &nraster); ++ eps_raster_print(raster_h, NULL, 0, 0, (int *) &nraster); + + bAbort = (error) ? TRUE : FALSE; + if (epcgEndPage (bAbort)) { diff --git a/pkgs/by-name/ep/epson-inkjet-printer-workforce-840-series/include-raster-helper.patch b/pkgs/by-name/ep/epson-inkjet-printer-workforce-840-series/include-raster-helper.patch new file mode 100644 index 000000000000..de32b9e54381 --- /dev/null +++ b/pkgs/by-name/ep/epson-inkjet-printer-workforce-840-series/include-raster-helper.patch @@ -0,0 +1,23 @@ +diff --git a/src/pagemanager/pagemanager.c b/src/pagemanager/pagemanager.c +index 029e6d3..2881585 100644 +--- a/src/pagemanager/pagemanager.c ++++ b/src/pagemanager/pagemanager.c +@@ -23,6 +23,7 @@ + #include "debuglog.h" + #include "memory.h" + #include "raster.h" ++#include "raster-helper.h" + #include "pagemanager.h" + + extern int JobCanceled; +diff --git a/src/raster_to_epson.c b/src/raster_to_epson.c +index 6e621c8..6eea77c 100644 +--- a/src/raster_to_epson.c ++++ b/src/raster_to_epson.c +@@ -36,6 +36,7 @@ + #include "raster.h" + #include "memory.h" + #include "raster_to_epson.h" ++#include "raster-helper.h" + #include "pagemanager.h" + #include "filter_option.h" diff --git a/pkgs/by-name/ep/epson-inkjet-printer-workforce-840-series/package.nix b/pkgs/by-name/ep/epson-inkjet-printer-workforce-840-series/package.nix new file mode 100644 index 000000000000..fde1c9855b12 --- /dev/null +++ b/pkgs/by-name/ep/epson-inkjet-printer-workforce-840-series/package.nix @@ -0,0 +1,131 @@ +{ + autoreconfHook, + cups, + libjpeg, + rpmextract, + fetchurl, + lib, + stdenv, +}: + +let + srcdirs = { + filter = "epson-inkjet-printer-filter-1.0.0"; + driver = "epson-inkjet-printer-workforce-840-series-1.0.0"; + }; +in +stdenv.mkDerivation (finalAttrs: { + pname = "epson-inkjet-printer-workforce-840-series"; + version = "1.0.0"; + + # The Epson may be unreliable, and it has been since sometime in + # 2024. Non-browser requests using commands like fetchurl receive a + # 403 error, an access denied response -- last checked on + # 2025-08-21. + # + # Therefore, an archive.org link has been added as a fallback + # option just in case. + src = fetchurl { + # NOTE: Don't forget to update the webarchive link too! + urls = [ + "https://download.ebz.epson.net/dsc/op/stable/SRPMS/epson-inkjet-printer-workforce-840-series-${finalAttrs.version}-1lsb3.2.src.rpm" + "https://web.archive.org/web/https://download.ebz.epson.net/dsc/op/stable/SRPMS/epson-inkjet-printer-workforce-840-series-${finalAttrs.version}-1lsb3.2.src.rpm" + ]; + hash = "sha256-rTYnEmgzqR/wOZYYIe2rO9x2cX8s2qDyTuRaTjzJjbg="; + }; + sourceRoot = srcdirs.filter; + + nativeBuildInputs = [ + autoreconfHook + rpmextract + ]; + buildInputs = [ + cups + libjpeg + ]; + + unpackPhase = '' + runHook preUnpack + + rpmextract "$src" + for i in ${lib.concatStringsSep " " (builtins.attrValues srcdirs)}; do + tar xvf "$i".tar.gz + done + + runHook postUnpack + ''; + + # Both patches fix errors that occur when building with GCC 14. + # + # eps_raster_print-cast.patch fixes 'error: passing argument 5 of + # ‘eps_raster_print’ from incompatible pointer type' in file + # raster_to_epson.c + # + # include-raster-helper.patch fixes 'error: implicit declaration of + # function' in files pagemanager.c and raster_to_epson.c + patches = [ + ./eps_raster_print-cast.patch + ./include-raster-helper.patch + ]; + + installPhase = + let + filterdir = "$out/lib/cups/filter"; + docdir = "$out/share/doc/epson-inkjet-printer-workforce-840-series"; + ppddir = "$out/share/cups/model/epson-inkjet-printer-workforce-840-series"; + libdir = + if stdenv.hostPlatform.isx86_64 then + "lib64" + else + throw "Platforms other than x86_64-linux are not (yet) supported."; + in + '' + runHook preInstall + + mkdir -p "$out" "${docdir}" "${filterdir}" "${ppddir}" + cp src/epson_inkjet_printer_filter "${filterdir}" + + cp AUTHORS COPYING COPYING.EPSON COPYING.LIB "${docdir}" + + cd ../${srcdirs.driver} + cp Manual.txt README "${docdir}" + for ppd in ppds/*; do + substituteInPlace "$ppd" --replace-fail '/opt/epson-inkjet-printer-workforce-840-series/cups/lib' "$out/lib/cups" + gzip -c "$ppd" > "${ppddir}/''${ppd#*/}" + done + cp -r resource watermark ${libdir} "$out" + + runHook postInstall + ''; + + meta = { + description = "Proprietary CUPS drivers for Epson inkjet printers"; + longDescription = '' + This software is a filter program used with the Common UNIX Printing + System (CUPS) under Linux. It supplies high quality printing with + Seiko Epson Color Ink Jet Printers. + + This printer driver is supporting the following printers. + + Epson Stylus Office BX925 + Epson WorkForce 840 + + To use the driver adjust your configuration.nix file: + ```nix + { + services.printing = { + enable = true; + drivers = [ pkgs.epson-inkjet-printer-workforce-840-series ]; + }; + } + ``` + ''; + downloadPage = "http://download.ebz.epson.net/dsc/du/02/DriverDownloadInfo.do?LG2=EN&CN2=&DSCMI=16839&DSCCHK=3d7bc6bdfca08006abfb859fb1967183156a7252"; + license = with lib.licenses; [ + lgpl21 + epson + ]; + maintainers = with lib.maintainers; [ heichro ]; + platforms = [ "x86_64-linux" ]; + }; +}) diff --git a/pkgs/by-name/fl/flarectl/package.nix b/pkgs/by-name/fl/flarectl/package.nix index 1d50138ea3c4..4e862083c4ef 100644 --- a/pkgs/by-name/fl/flarectl/package.nix +++ b/pkgs/by-name/fl/flarectl/package.nix @@ -6,13 +6,13 @@ buildGoModule rec { pname = "flarectl"; - version = "0.115.0"; + version = "0.116.0"; src = fetchFromGitHub { owner = "cloudflare"; repo = "cloudflare-go"; rev = "v${version}"; - hash = "sha256-2LdsqCqRTruTHYPwuI9Gm07cpvQNOrZvIl6rjZU+0aU="; + hash = "sha256-DibRQmvwe58O1pcelx37fv3WFlWDcEbWeg+sJlxzDMU="; }; vendorHash = "sha256-f+bNNwbTj348JJJLST2j7h8/A79qzvGlf8MjldVvtGU="; diff --git a/pkgs/by-name/fo/forgejo/lts.nix b/pkgs/by-name/fo/forgejo/lts.nix index 35f170128a49..8572f2b421d5 100644 --- a/pkgs/by-name/fo/forgejo/lts.nix +++ b/pkgs/by-name/fo/forgejo/lts.nix @@ -1,8 +1,8 @@ import ./generic.nix { - version = "11.0.4"; - hash = "sha256-RI6eCJx1QTDkzY1oFKwCQyOrRXMd0TFihWofC4ZCv44="; - npmDepsHash = "sha256-wsjosyZ5J5mU7ixbWjXnbqkvgnOE0dGz81vVqaI61go="; - vendorHash = "sha256-Zfjp6EKiO74wYgvc85AwtDg+3Nf7lEa1ZKQMMcYPM34="; + version = "11.0.5"; + hash = "sha256-r1PR2WfJUvt+5K9RQi+9+xJmhtpqP6cGzEk77DiZUlE="; + npmDepsHash = "sha256-1lY08jBTx3DRhoaup02076EL9n85y57WCsS/cNcM4aw="; + vendorHash = "sha256-Jh8u+iCBhYdKcLj4IzcKtJBnzvclvUeYbR/hjMN+cPs="; lts = true; nixUpdateExtraArgs = [ "--override-filename" diff --git a/pkgs/by-name/fo/forgejo/package.nix b/pkgs/by-name/fo/forgejo/package.nix index 91a2db1e1bbb..764186bdc75c 100644 --- a/pkgs/by-name/fo/forgejo/package.nix +++ b/pkgs/by-name/fo/forgejo/package.nix @@ -1,8 +1,8 @@ import ./generic.nix { - version = "12.0.2"; - hash = "sha256-BkyzOrpwKkROKiZgSCr8Z7n8WO6qnkDyCBJ4HWO71Ws="; - npmDepsHash = "sha256-kq2AV1D0xA4Csm8XUTU5D0iCmyuajcnwlLdPjJ/mj1g="; - vendorHash = "sha256-B9menPCDUOYHPCS0B5KpxuE03FdFXmA8XqkiYEAxs5Y="; + version = "12.0.3"; + hash = "sha256-3uXGDX1uKxXehiMBG1cMIttJFRACIm3UE8U2OtUWjOQ="; + npmDepsHash = "sha256-V8FUoL9y36bagkg8Scttv/IzKg+MIIqp7witvT8bSWA="; + vendorHash = "sha256-GE3trnaWuAVSEfi11tZo5JXedWOYOMzcHQ3GFyISVTQ="; lts = false; nixUpdateExtraArgs = [ "--override-filename" diff --git a/pkgs/by-name/gg/gg-jj/package.nix b/pkgs/by-name/gg/gg-jj/package.nix index d9a668feea32..1bc472337a58 100644 --- a/pkgs/by-name/gg/gg-jj/package.nix +++ b/pkgs/by-name/gg/gg-jj/package.nix @@ -33,10 +33,20 @@ rustPlatform.buildRustPackage (finalAttrs: { cargoHash = "sha256-AdatJNDqIoRHfaf81iFhOs2JGLIxy7agFJj96bFPj00="; npmDeps = fetchNpmDeps { - inherit (finalAttrs) pname version src; - hash = "sha256-izCl3pE15ocEGYOYCUR1iTR+82nDB06Ed4YOGRGByfI="; + inherit (finalAttrs) + pname + version + src + patches + ; + hash = "sha256-ehXGLpCCN+BNqtwjEatcfR0kQHj5WOofTDR5mLSVW0U="; }; + patches = [ + # Remove after https://github.com/gulbanana/gg/pull/68 is released + ./update-tauri-npm-to-match-cargo.patch + ]; + nativeBuildInputs = [ cargo-tauri.hook nodejs diff --git a/pkgs/by-name/gg/gg-jj/update-tauri-npm-to-match-cargo.patch b/pkgs/by-name/gg/gg-jj/update-tauri-npm-to-match-cargo.patch new file mode 100644 index 000000000000..ab26a756a514 --- /dev/null +++ b/pkgs/by-name/gg/gg-jj/update-tauri-npm-to-match-cargo.patch @@ -0,0 +1,81 @@ +From 627de4bd148229a1feb327262b9f0b2a75077ed3 Mon Sep 17 00:00:00 2001 +From: Mitchell Skaggs +Date: Mon, 1 Sep 2025 19:02:19 -0500 +Subject: [PATCH] update `@tauri-apps/api` and `@tauri-apps/plugin-shell` to + match Cargo versions + +In Tauri *CLI* versions >=2.8.0, the build fails if NPM and Cargo versions +are not aligned. This is not a new requirement, this merely verifies an +existing requirement. The CLI version in Nixpkgs was updated and now +detects this already-existing error. + +This pulls the NPM versions up to match the existing Cargo versions +without touching any other dependencies. +--- + package-lock.json | 18 +++++++++--------- + package.json | 4 ++-- + 2 files changed, 11 insertions(+), 11 deletions(-) + +diff --git a/package-lock.json b/package-lock.json +index 3affe19..ebe27e7 100644 +--- a/package-lock.json ++++ b/package-lock.json +@@ -9,8 +9,8 @@ + "version": "0.29.0", + "dependencies": { + "@catppuccin/palette": "^1.0.3", +- "@tauri-apps/api": "^2.0.0-beta.0", +- "@tauri-apps/plugin-shell": "^2.0.0-beta.0", ++ "@tauri-apps/api": "^2.4.1", ++ "@tauri-apps/plugin-shell": "2.2.1", + "feather-icons": "^4.29.1", + "modern-normalize": "^2.0.0" + }, +@@ -793,9 +793,9 @@ + } + }, + "node_modules/@tauri-apps/api": { +- "version": "2.1.1", +- "resolved": "https://registry.npmjs.org/@tauri-apps/api/-/api-2.1.1.tgz", +- "integrity": "sha512-fzUfFFKo4lknXGJq8qrCidkUcKcH2UHhfaaCNt4GzgzGaW2iS26uFOg4tS3H4P8D6ZEeUxtiD5z0nwFF0UN30A==", ++ "version": "2.4.1", ++ "resolved": "https://registry.npmjs.org/@tauri-apps/api/-/api-2.4.1.tgz", ++ "integrity": "sha512-5sYwZCSJb6PBGbBL4kt7CnE5HHbBqwH+ovmOW6ZVju3nX4E3JX6tt2kRklFEH7xMOIwR0btRkZktuLhKvyEQYg==", + "license": "Apache-2.0 OR MIT", + "funding": { + "type": "opencollective", +@@ -1002,9 +1002,9 @@ + } + }, + "node_modules/@tauri-apps/plugin-shell": { +- "version": "2.0.1", +- "resolved": "https://registry.npmjs.org/@tauri-apps/plugin-shell/-/plugin-shell-2.0.1.tgz", +- "integrity": "sha512-akU1b77sw3qHiynrK0s930y8zKmcdrSD60htjH+mFZqv5WaakZA/XxHR3/sF1nNv9Mgmt/Shls37HwnOr00aSw==", ++ "version": "2.2.1", ++ "resolved": "https://registry.npmjs.org/@tauri-apps/plugin-shell/-/plugin-shell-2.2.1.tgz", ++ "integrity": "sha512-G1GFYyWe/KlCsymuLiNImUgC8zGY0tI0Y3p8JgBCWduR5IEXlIJS+JuG1qtveitwYXlfJrsExt3enhv5l2/yhA==", + "license": "MIT OR Apache-2.0", + "dependencies": { + "@tauri-apps/api": "^2.0.0" +@@ -2054,4 +2054,4 @@ + "license": "ISC" + } + } +-} +\ No newline at end of file ++} +diff --git a/package.json b/package.json +index 6000620..9d61871 100644 +--- a/package.json ++++ b/package.json +@@ -14,8 +14,8 @@ + }, + "dependencies": { + "@catppuccin/palette": "^1.0.3", +- "@tauri-apps/api": "^2.0.0-beta.0", +- "@tauri-apps/plugin-shell": "^2.0.0-beta.0", ++ "@tauri-apps/api": "^2.4.1", ++ "@tauri-apps/plugin-shell": "2.2.1", + "feather-icons": "^4.29.1", + "modern-normalize": "^2.0.0" + }, diff --git a/pkgs/by-name/gh/gh-gei/package.nix b/pkgs/by-name/gh/gh-gei/package.nix index bc51f396b661..bb4d9bbf585e 100644 --- a/pkgs/by-name/gh/gh-gei/package.nix +++ b/pkgs/by-name/gh/gh-gei/package.nix @@ -7,13 +7,13 @@ buildDotnetModule rec { pname = "gh-gei"; - version = "1.18.0"; + version = "1.18.1"; src = fetchFromGitHub { owner = "github"; repo = "gh-gei"; rev = "v${version}"; - hash = "sha256-AMmeuobgJ+DSRG4zS7RP5l3/BraqQxXB+ygLDc3XnOs="; + hash = "sha256-ZMFom0irZa63Nzx7wViinmN6yRfiHxQFprJdIx1Ak2Y="; }; dotnet-sdk = dotnetCorePackages.sdk_8_0_4xx; diff --git a/pkgs/by-name/gl/globus-cli/package.nix b/pkgs/by-name/gl/globus-cli/package.nix new file mode 100644 index 000000000000..445ebddb1bde --- /dev/null +++ b/pkgs/by-name/gl/globus-cli/package.nix @@ -0,0 +1,73 @@ +{ + lib, + fetchFromGitHub, + python3Packages, + installShellFiles, + versionCheckHook, +}: + +python3Packages.buildPythonApplication rec { + pname = "globus-cli"; + version = "3.36.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "globus"; + repo = "globus-cli"; + tag = version; + hash = "sha256-Phu7nXMICSBFUX8wfzwA4ORBJIkhTDCMCqTyZvcG93c="; + }; + + build-system = with python3Packages; [ + setuptools + ruamel-yaml + ]; + + dependencies = with python3Packages; [ + globus-sdk + click + jmespath + packaging + typing-extensions + requests + ]; + + nativeBuildInputs = [ installShellFiles ]; + + nativeCheckInputs = with python3Packages; [ + pytest + pytest-xdist + pytest-timeout + responses + + click + requests + pyjwt + cryptography + packaging + typing-extensions + + pytestCheckHook + versionCheckHook + ]; + + versionCheckProgramArg = "version"; + + postInstall = '' + mkdir -p completions/{bash,zsh} + $out/bin/globus --bash-completer > completions/bash/globus + $out/bin/globus --zsh-completer > completions/zsh/_globus + installShellCompletion \ + --bash completions/bash/globus \ + --zsh completions/zsh/_globus + ''; + + meta = { + mainProgram = "globus"; + description = "Command-line interface to Globus REST APIs, including the Transfer API and the Globus Auth API"; + homepage = "https://github.com/globus/globus-cli"; + changelog = "https://github.com/globus/globus-cli/releases/tag/${src.tag}"; + license = lib.licenses.asl20; + maintainers = [ lib.maintainers.richardjacton ]; + }; +} diff --git a/pkgs/by-name/gr/grav/package.nix b/pkgs/by-name/gr/grav/package.nix index a8ed7792743b..fb19d7b57963 100644 --- a/pkgs/by-name/gr/grav/package.nix +++ b/pkgs/by-name/gr/grav/package.nix @@ -6,7 +6,7 @@ }: let - version = "1.7.49.2"; + version = "1.7.49.4"; in stdenvNoCC.mkDerivation { pname = "grav"; @@ -14,7 +14,7 @@ stdenvNoCC.mkDerivation { src = fetchzip { url = "https://github.com/getgrav/grav/releases/download/${version}/grav-admin-v${version}.zip"; - hash = "sha256-Yu7uFoim12pe4OT/dSsQVcZ6nyYGKWLJbsfLFtI05Z8="; + hash = "sha256-ZOhZ5O5s8P4nqjSsLEu4RpyTfZ34YBi0itETwcRdIPQ="; }; patches = [ diff --git a/pkgs/by-name/gr/grub2_pvgrub_image/package.nix b/pkgs/by-name/gr/grub2_pvgrub_image/package.nix deleted file mode 100644 index 3aa240ed9fee..000000000000 --- a/pkgs/by-name/gr/grub2_pvgrub_image/package.nix +++ /dev/null @@ -1,54 +0,0 @@ -{ - lib, - stdenv, - grub2_xen, -}: - -let - efiSystemsBuild = { - i686-linux.target = "i386"; - x86_64-linux.target = "x86_64"; - armv7l-linux.target = "arm"; - aarch64-linux.target = "aarch64"; - riscv32-linux.target = "riscv32"; - riscv64-linux.target = "riscv64"; - }; - -in -( - - stdenv.mkDerivation rec { - name = "pvgrub-image"; - - configs = ./configs; - - buildInputs = [ grub2_xen ]; - - buildCommand = '' - cp "${configs}"/* . - tar -cf memdisk.tar grub.cfg - # We include all modules except all_video.mod as otherwise grub will fail printing "no symbol table" - # if we include it. - grub-mkimage -O "${ - efiSystemsBuild.${stdenv.hostPlatform.system}.target - }-xen" -c grub-bootstrap.cfg \ - -m memdisk.tar -o "grub-${efiSystemsBuild.${stdenv.hostPlatform.system}.target}-xen.bin" \ - $(ls "${grub2_xen}/lib/grub/${ - efiSystemsBuild.${stdenv.hostPlatform.system}.target - }-xen/" |grep 'mod''$'|grep -v '^all_video\.mod''$') - mkdir -p "$out/lib/grub-xen" - cp "grub-${efiSystemsBuild.${stdenv.hostPlatform.system}.target}-xen.bin" $out/lib/grub-xen/ - ''; - - meta = with lib; { - description = "PvGrub image for use for booting PV Xen guests"; - - longDescription = '' - This package provides a PvGrub image for booting Para-Virtualized (PV) - Xen guests - ''; - - platforms = platforms.gnu ++ platforms.linux; - }; - } -) diff --git a/pkgs/by-name/gr/grub2_pvgrub_image/configs/grub-bootstrap.cfg b/pkgs/by-name/gr/grub2_pvhgrub_image/configs/grub-bootstrap.cfg similarity index 100% rename from pkgs/by-name/gr/grub2_pvgrub_image/configs/grub-bootstrap.cfg rename to pkgs/by-name/gr/grub2_pvhgrub_image/configs/grub-bootstrap.cfg diff --git a/pkgs/by-name/gr/grub2_pvgrub_image/configs/grub.cfg b/pkgs/by-name/gr/grub2_pvhgrub_image/configs/grub.cfg similarity index 100% rename from pkgs/by-name/gr/grub2_pvgrub_image/configs/grub.cfg rename to pkgs/by-name/gr/grub2_pvhgrub_image/configs/grub.cfg diff --git a/pkgs/by-name/gr/grub2_pvhgrub_image/package.nix b/pkgs/by-name/gr/grub2_pvhgrub_image/package.nix new file mode 100644 index 000000000000..f65c0dffdc32 --- /dev/null +++ b/pkgs/by-name/gr/grub2_pvhgrub_image/package.nix @@ -0,0 +1,83 @@ +{ + lib, + stdenv, + grub2_xen, + grub2_xen_pvh, + grubPlatform ? "xen_pvh", +}: + +assert lib.assertOneOf "grubPlatform" grubPlatform [ + "xen" + "xen_pvh" +]; +let + targets = { + i686-linux.target = "i386"; + x86_64-linux.target = if grubPlatform == "xen_pvh" then "i386" else "x86_64"; + }; +in +stdenv.mkDerivation { + name = "grub2_${grubPlatform}_image"; + + env = { + GRUB_CONFIGS = "${./configs}"; + GRUB_FORMAT = "${targets.${stdenv.buildPlatform.system}.target}-${grubPlatform}"; + }; + + buildInputs = + lib.optional (grubPlatform == "xen") grub2_xen + ++ lib.optional (grubPlatform == "xen_pvh") grub2_xen_pvh; + + dontUnpack = true; + + buildPhase = '' + cp "$GRUB_CONFIGS"/* . + tar -cf memdisk.tar grub.cfg + grub-mkimage \ + -O "$GRUB_FORMAT" \ + -c grub-bootstrap.cfg \ + -m memdisk.tar \ + -o grub-"$GRUB_FORMAT".bin \ + ${if grubPlatform == "xen_pvh" then grub2_xen_pvh else grub2_xen}/lib/grub/"$GRUB_FORMAT"/*.mod + ''; + + installPhase = '' + mkdir -p "$out/lib/grub-${grubPlatform}" + cp grub-"$GRUB_FORMAT".bin $out/lib/grub-${grubPlatform}/ + ''; + + dontFixup = true; + + meta = { + description = "PvGrub2 image for booting ${ + if grubPlatform == "xen_pvh" then "PVH" else "PV" + } Xen guests"; + + longDescription = + if (grubPlatform == "xen_pvh") then + '' + This package provides a prebuilt PvGrub2 image for booting PVH Xen + guests (also commonly referred to as PvhGrub2), which searches for + `grub.cfg` on the guest disk and interprets it to load the kernel, + eliminating the need to copy the guest kernel to the Dom0. + + You will need `pkgs.grub2_xen_pvh` to build a customized PvhGrub2 + image. See [PvGrub2](https://wiki.xenproject.org/wiki/PvGrub2) for + more explanations. + '' + else + '' + This package provides a prebuilt PvGrub2 image for booting PV Xen + guests, which searches for `grub.cfg` on the guest disk and interprets + it to load the kernel, eliminating the need to copy the guest kernel + to the Dom0. + + You will need `pkgs.grub2_xen` to build a customized PvGrub2 image. + See [PvGrub2](https://wiki.xenproject.org/wiki/PvGrub2) for more + explanations. + ''; + + teams = [ lib.teams.xen ]; + platforms = lib.attrNames targets; + }; +} diff --git a/pkgs/by-name/hi/hidviz/package.nix b/pkgs/by-name/hi/hidviz/package.nix index 129b1094c875..93a5d909e20d 100644 --- a/pkgs/by-name/hi/hidviz/package.nix +++ b/pkgs/by-name/hi/hidviz/package.nix @@ -24,6 +24,7 @@ stdenv.mkDerivation rec { preConfigure = '' substituteInPlace libhidx/cmake_modules/Findasio.cmake --replace-fail '/usr/include/asio' '${lib.getDev asio}/include/asio' + substituteInPlace libhidx/libhidx/src/Connector.cc --replace-fail '/usr/local/libexec' "$out/libexec" ''; nativeBuildInputs = [ diff --git a/pkgs/by-name/ho/hotspot/package.nix b/pkgs/by-name/ho/hotspot/package.nix index c58566cd3ae9..3c96d445611e 100644 --- a/pkgs/by-name/ho/hotspot/package.nix +++ b/pkgs/by-name/ho/hotspot/package.nix @@ -10,7 +10,7 @@ kddockwidgets, kdePackages, libelf, - linuxPackages, + perf, qt6, rustc-demangle, zstd, @@ -74,7 +74,7 @@ stdenv.mkDerivation rec { qtWrapperArgs = [ "--suffix PATH : ${ lib.makeBinPath [ - linuxPackages.perf + perf binutils ] }" diff --git a/pkgs/by-name/li/librasterlite2/package.nix b/pkgs/by-name/li/librasterlite2/package.nix index 25f7da35280b..997e5bde8232 100644 --- a/pkgs/by-name/li/librasterlite2/package.nix +++ b/pkgs/by-name/li/librasterlite2/package.nix @@ -25,6 +25,7 @@ pixman, proj, sqlite, + xz, zstd, }: @@ -70,6 +71,7 @@ stdenv.mkDerivation rec { pixman proj sqlite + xz # liblzma zstd ]; diff --git a/pkgs/by-name/li/lightway/package.nix b/pkgs/by-name/li/lightway/package.nix new file mode 100644 index 000000000000..051d056855e6 --- /dev/null +++ b/pkgs/by-name/li/lightway/package.nix @@ -0,0 +1,59 @@ +{ + lib, + stdenv, + fetchFromGitHub, + autoconf, + automake, + libtool, + rustPlatform, +}: + +rustPlatform.buildRustPackage { + pname = "lightway"; + version = "0-unstable-2025-09-04"; + + src = fetchFromGitHub { + owner = "expressvpn"; + repo = "lightway"; + rev = "4eb836158607c83d47226703de5a043519586782"; + hash = "sha256-sNhTdJTxNxHMVswyzizgBfGbmJhYmMZY/5nVD7ScLjM="; + }; + + cargoHash = "sha256-3/6yEyGntyxxCqrMy2M9dtV2pWiD4M0Rtnb52I4n9nU="; + cargoDepsName = "lightway"; + + cargoBuildFlags = lib.cli.toGNUCommandLine { } { + package = [ + "lightway-client" + "lightway-server" + ]; + + features = lib.optionals stdenv.hostPlatform.isLinux [ + "io-uring" + ]; + }; + + # Some tests rely on debug_assert! and fail in release. + # https://github.com/expressvpn/lightway/issues/274 + checkType = "debug"; + + # For wolfSSL. + nativeBuildInputs = [ + autoconf + automake + libtool + rustPlatform.bindgenHook + ]; + + meta = { + description = "A modern VPN protocol in Rust"; + homepage = "https://expressvpn.com/lightway"; + license = lib.licenses.agpl3Only; + maintainers = with lib.maintainers; [ + dustyhorizon + usertam + ]; + platforms = with lib.platforms; darwin ++ linux; + mainProgram = "lightway-client"; + }; +} diff --git a/pkgs/by-name/ma/mado/package.nix b/pkgs/by-name/ma/mado/package.nix new file mode 100644 index 000000000000..ed691886dc75 --- /dev/null +++ b/pkgs/by-name/ma/mado/package.nix @@ -0,0 +1,62 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + pkg-config, + installShellFiles, + oniguruma, + rust-jemalloc-sys, + stdenv, +}: +rustPlatform.buildRustPackage (finalAttrs: { + pname = "mado"; + version = "0.3.0"; + + src = fetchFromGitHub { + owner = "akiomik"; + repo = "mado"; + tag = "v${finalAttrs.version}"; + hash = "sha256-wAuV4w0dKfUbJVLTdp59/u4y13SPy3wkRfTlpvyE/zY="; + }; + + cargoHash = "sha256-fkalUnPkjjzhLaACh+WQP4tG5VzZ7wmrh5T1DVgSDwM="; + + nativeBuildInputs = [ + pkg-config + installShellFiles + ]; + + buildInputs = [ + oniguruma + rust-jemalloc-sys + ]; + + env = { + RUSTONIG_SYSTEM_LIBONIG = true; + }; + + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd mado \ + --bash <($out/bin/mado generate-shell-completion bash) \ + --zsh <($out/bin/mado generate-shell-completion zsh) \ + --fish <($out/bin/mado generate-shell-completion fish) + ''; + + checkFlags = [ + # # seem to be slightly broken inside of the build sandbox + "--skip=check_empty_stdin_with_file" + "--skip=check_stdin" + "--skip=check_stdin_with_file" + "--skip=generate_shell_completion_invalid" + "--skip=unknown_command" + ]; + + meta = { + description = "Markdown linter written in Rust"; + homepage = "https://github.com/akiomik/mado"; + changelog = "https://github.com/akiomik/mado/blob/v${finalAttrs.version}/CHANGELOG.md"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ jasonxue1 ]; + mainProgram = "mado"; + }; +}) diff --git a/pkgs/by-name/md/mdbook-i18n-helpers/package.nix b/pkgs/by-name/md/mdbook-i18n-helpers/package.nix index c96e9455304e..5c16e2401e3b 100644 --- a/pkgs/by-name/md/mdbook-i18n-helpers/package.nix +++ b/pkgs/by-name/md/mdbook-i18n-helpers/package.nix @@ -6,17 +6,17 @@ rustPlatform.buildRustPackage rec { pname = "mdbook-i18n-helpers"; - version = "0.3.5"; + version = "0.3.6"; src = fetchFromGitHub { owner = "google"; repo = "mdbook-i18n-helpers"; # TODO fix once upstream uses semver for tags again tag = "mdbook-i18n-helpers-${version}"; - hash = "sha256-FdguzuYpMl6i1dvoPNE1Bk+GTmeTrqLUY/sVRsbETtU="; + hash = "sha256-9sJ9FK85UzY3ggh3h1fipbh0LraTvQJ0ZfhSGcahiDM="; }; - cargoHash = "sha256-ZBGMfJA2diPvvoIXPosUs4ngXU9/GMGa4GAlKIjwm8s="; + cargoHash = "sha256-ZinW9UFp03LXtk+9vuSNojVZtaA7uBlrpdapY48nZdY="; meta = { description = "Helpers for a mdbook i18n workflow based on Gettext"; diff --git a/pkgs/by-name/mi/minecraft/package.nix b/pkgs/by-name/mi/minecraft/package.nix deleted file mode 100644 index 9df658a2ae5a..000000000000 --- a/pkgs/by-name/mi/minecraft/package.nix +++ /dev/null @@ -1,172 +0,0 @@ -{ - lib, - stdenv, - fetchurl, - nixosTests, - copyDesktopItems, - makeDesktopItem, - makeWrapper, - wrapGAppsHook3, - gobject-introspection, - jre, # old or modded versions of the game may require Java 8 (https://aur.archlinux.org/packages/minecraft-launcher/#pinned-674960) - xorg, - zlib, - nss, - nspr, - fontconfig, - pango, - cairo, - expat, - alsa-lib, - cups, - dbus, - atk, - gtk3-x11, - gtk2-x11, - gdk-pixbuf, - glib, - curl, - freetype, - libpulseaudio, - libuuid, - systemd, - flite ? null, - libXxf86vm ? null, -}: -let - desktopItem = makeDesktopItem { - name = "minecraft-launcher"; - exec = "minecraft-launcher"; - icon = "minecraft-launcher"; - comment = "Official launcher for Minecraft, a sandbox-building game"; - desktopName = "Minecraft Launcher"; - categories = [ "Game" ]; - }; - - envLibPath = lib.makeLibraryPath [ - curl - libpulseaudio - systemd - alsa-lib # needed for narrator - flite # needed for narrator - libXxf86vm # needed only for versions <1.13 - ]; - - libPath = lib.makeLibraryPath ( - [ - alsa-lib - atk - cairo - cups - dbus - expat - fontconfig - freetype - gdk-pixbuf - glib - pango - gtk3-x11 - gtk2-x11 - nspr - nss - stdenv.cc.cc - zlib - libuuid - ] - ++ (with xorg; [ - libX11 - libxcb - libXcomposite - libXcursor - libXdamage - libXext - libXfixes - libXi - libXrandr - libXrender - libXtst - libXScrnSaver - ]) - ); -in -stdenv.mkDerivation rec { - pname = "minecraft-launcher"; - - version = "2.2.1441"; - - src = fetchurl { - url = "https://launcher.mojang.com/download/linux/x86_64/minecraft-launcher_${version}.tar.gz"; - sha256 = "03q579hvxnsh7d00j6lmfh53rixdpf33xb5zlz7659pvb9j5w0cm"; - }; - - icon = fetchurl { - url = "https://launcher.mojang.com/download/minecraft-launcher.svg"; - sha256 = "0w8z21ml79kblv20wh5lz037g130pxkgs8ll9s3bi94zn2pbrhim"; - }; - - nativeBuildInputs = [ - makeWrapper - wrapGAppsHook3 - copyDesktopItems - gobject-introspection - ]; - - sourceRoot = "."; - - dontWrapGApps = true; - dontConfigure = true; - dontBuild = true; - - installPhase = '' - runHook preInstall - - mkdir -p $out/opt - mv minecraft-launcher $out/opt - - install -D $icon $out/share/icons/hicolor/symbolic/apps/minecraft-launcher.svg - - runHook postInstall - ''; - - preFixup = '' - patchelf \ - --set-interpreter ${stdenv.cc.bintools.dynamicLinker} \ - --set-rpath '$ORIGIN/'":${libPath}" \ - $out/opt/minecraft-launcher/minecraft-launcher - patchelf \ - --set-rpath '$ORIGIN/'":${libPath}" \ - $out/opt/minecraft-launcher/libcef.so - patchelf \ - --set-rpath '$ORIGIN/'":${libPath}" \ - $out/opt/minecraft-launcher/liblauncher.so - ''; - - postFixup = '' - # Do not create `GPUCache` in current directory - makeWrapper $out/opt/minecraft-launcher/minecraft-launcher $out/bin/minecraft-launcher \ - --prefix LD_LIBRARY_PATH : ${envLibPath} \ - --prefix PATH : ${lib.makeBinPath [ jre ]} \ - --set JAVA_HOME ${lib.getBin jre} \ - --chdir /tmp \ - "''${gappsWrapperArgs[@]}" - ''; - - desktopItems = [ desktopItem ]; - - meta = with lib; { - description = "Official launcher for Minecraft, a sandbox-building game"; - homepage = "https://minecraft.net"; - maintainers = with maintainers; [ ryantm ]; - sourceProvenance = with sourceTypes; [ binaryNativeCode ]; - license = licenses.unfree; - platforms = [ "x86_64-linux" ]; - # "minecraft-launcher will fail on NixOS for minecraft versions >1.19 - # try prismlauncher or atlauncher instead" - broken = true; - }; - - passthru = { - tests = { inherit (nixosTests) minecraft; }; - updateScript = ./update.sh; - }; -} diff --git a/pkgs/by-name/mi/minecraft/update.sh b/pkgs/by-name/mi/minecraft/update.sh deleted file mode 100755 index 485fb5a560f6..000000000000 --- a/pkgs/by-name/mi/minecraft/update.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -i bash -p curl jq common-updater-scripts - -set -eu -o pipefail - -version=$(curl -s 'https://launchermeta.mojang.com/v1/products/launcher/6f083b80d5e6fabbc4236f81d0d8f8a350c665a9/linux.json' | jq -r '."launcher-core"[0].version.name') -update-source-version minecraft "${version}" diff --git a/pkgs/by-name/mi/miracle-wm/package.nix b/pkgs/by-name/mi/miracle-wm/package.nix index 46f672a3e11f..6bd6597c3800 100644 --- a/pkgs/by-name/mi/miracle-wm/package.nix +++ b/pkgs/by-name/mi/miracle-wm/package.nix @@ -2,7 +2,7 @@ stdenv, lib, fetchFromGitHub, - unstableGitUpdater, + gitUpdater, nixosTests, boost, cmake, @@ -31,13 +31,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "miracle-wm"; - version = "0.6.2-unstable-2025-08-27"; + version = "0.7.0"; src = fetchFromGitHub { owner = "miracle-wm-org"; repo = "miracle-wm"; - rev = "0a55a023adf511b042f922aeba666744805be988"; - hash = "sha256-yf7knY1tNFeCwePsfTAMAxIma+ZeZUvqpMJe7ABahEw="; + tag = "v${finalAttrs.version}"; + hash = "sha256-SAeQ7nFsr37I8XncV3eMT8JCb74CdM+xPrNBX+qf8Bc="; }; postPatch = '' @@ -118,7 +118,7 @@ stdenv.mkDerivation (finalAttrs: { ''; passthru = { - updateScript = unstableGitUpdater { tagPrefix = "v"; }; + updateScript = gitUpdater { rev-prefix = "v"; }; providedSessions = [ "miracle-wm" ]; tests.vm = nixosTests.miracle-wm; }; diff --git a/pkgs/by-name/mm/mmdbctl/package.nix b/pkgs/by-name/mm/mmdbctl/package.nix index c1c7fd949195..b3f7e67056b2 100644 --- a/pkgs/by-name/mm/mmdbctl/package.nix +++ b/pkgs/by-name/mm/mmdbctl/package.nix @@ -11,13 +11,13 @@ buildGoModule rec { pname = "mmdbctl"; - version = "1.4.7"; + version = "1.4.8"; src = fetchFromGitHub { owner = "ipinfo"; repo = "mmdbctl"; tag = "mmdbctl-${version}"; - hash = "sha256-drYtuL4TzutzitLVKyUotxgyDjL7AMNnt0vVtfQhu4A="; + hash = "sha256-9s/dyORfv3lNf9W6oE1PHhaTgJFdeFa46pf54c/cwH0="; }; vendorHash = "sha256-4T3HEzRerC4KrGQnMNSW3OVzChUIf4yJ7qS9v8mWIX4="; diff --git a/pkgs/by-name/op/opencode/package.nix b/pkgs/by-name/op/opencode/package.nix index 4aed8ca2fd2b..32de93095b16 100644 --- a/pkgs/by-name/op/opencode/package.nix +++ b/pkgs/by-name/op/opencode/package.nix @@ -22,12 +22,12 @@ let in stdenvNoCC.mkDerivation (finalAttrs: { pname = "opencode"; - version = "0.6.3"; + version = "0.6.4"; src = fetchFromGitHub { owner = "sst"; repo = "opencode"; tag = "v${finalAttrs.version}"; - hash = "sha256-hufgCO3g0WZT4+hX1lqmhvrthFO30c0NS3ryNJMmOxo="; + hash = "sha256-o7SzDGbWgCh8cMNK+PeLxAw0bQMKFouHdedUslpA6gw="; }; tui = buildGoModule { @@ -135,6 +135,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { --define OPENCODE_TUI_PATH="'${finalAttrs.tui}/bin/tui'" \ --define OPENCODE_VERSION="'${finalAttrs.version}'" \ --compile \ + --compile-exec-argv="--" \ --target=${bun-target.${stdenvNoCC.hostPlatform.system}} \ --outfile=opencode \ ./packages/opencode/src/index.ts \ diff --git a/pkgs/by-name/op/openlinkhub/package.nix b/pkgs/by-name/op/openlinkhub/package.nix index 50b82019effe..bf7c145f497a 100644 --- a/pkgs/by-name/op/openlinkhub/package.nix +++ b/pkgs/by-name/op/openlinkhub/package.nix @@ -9,13 +9,13 @@ buildGoModule rec { pname = "openlinkhub"; - version = "0.6.1"; + version = "0.6.2"; src = fetchFromGitHub { owner = "jurkovic-nikola"; repo = "OpenLinkHub"; tag = version; - hash = "sha256-kEbJwCAs2gTNs0z8A3kOl1O4HQ4L5+urTo+hLh6vOPM="; + hash = "sha256-fmWfHJ6alB+UlHlUrwMQ/npv7SuMjAz5hT0UGhB7O/E="; }; proxyVendor = true; diff --git a/pkgs/os-specific/linux/kernel/perf/default.nix b/pkgs/by-name/pe/perf/package.nix similarity index 74% rename from pkgs/os-specific/linux/kernel/perf/default.nix rename to pkgs/by-name/pe/perf/package.nix index 81e6fb47d838..8d48a881047e 100644 --- a/pkgs/os-specific/linux/kernel/perf/default.nix +++ b/pkgs/by-name/pe/perf/package.nix @@ -2,7 +2,7 @@ lib, stdenv, fetchurl, - kernel, + linux_latest, elfutils, python3, newt, @@ -20,14 +20,11 @@ binutils-unwrapped, libiberty, audit, - libbfd, - libbfd_2_38, libopcodes, - libopcodes_2_38, libpfm, libtraceevent, openssl, - systemtap, + systemtap-unwrapped, numactl, zlib, babeltrace, @@ -57,43 +54,28 @@ in stdenv.mkDerivation { pname = "perf-linux"; - inherit (kernel) version src; + inherit (linux_latest) version src; strictDeps = true; depsBuildBuild = [ buildPackages.stdenv.cc ]; - patches = - lib.optionals (lib.versionAtLeast kernel.version "5.10" && lib.versionOlder kernel.version "6.13") - [ - # fix wrong path to dmesg - ./fix-dmesg-path.diff - ]; - postPatch = '' # Linux scripts patchShebangs scripts patchShebangs tools/perf/check-headers.sh - '' - + lib.optionalString (lib.versionAtLeast kernel.version "6.3") '' # perf-specific scripts patchShebangs tools/perf/pmu-events - '' - + '' cd tools/perf for x in util/build-id.c util/dso.c; do substituteInPlace $x --replace /usr/lib/debug /run/current-system/sw/lib/debug done - '' - + lib.optionalString (lib.versionAtLeast kernel.version "5.8") '' substituteInPlace scripts/python/flamegraph.py \ --replace "/usr/share/d3-flame-graph/d3-flamegraph-base.html" \ "${d3-flame-graph-templates}/share/d3-flame-graph/d3-flamegraph-base.html" - '' - + lib.optionalString (lib.versionAtLeast kernel.version "6.0") '' patchShebangs pmu-events/jevents.py ''; @@ -137,33 +119,14 @@ stdenv.mkDerivation { numactl python3 babeltrace + libopcodes + libpfm + python3.pkgs.setuptools ] - ++ ( - if (lib.versionAtLeast kernel.version "5.19") then - [ - libbfd - libopcodes - ] - else - [ - libbfd_2_38 - libopcodes_2_38 - ] - ) - ++ lib.optional (lib.meta.availableOn stdenv.hostPlatform systemtap) systemtap.stapBuild + ++ lib.optional (lib.meta.availableOn stdenv.hostPlatform systemtap-unwrapped) systemtap-unwrapped ++ lib.optional withGtk gtk2 ++ lib.optional withZstd zstd - ++ lib.optional withLibcap libcap - ++ lib.optional (lib.versionAtLeast kernel.version "5.8") libpfm - ++ lib.optional (lib.versionAtLeast kernel.version "6.0") python3.pkgs.setuptools - # Python 3.12 no longer includes distutils, not needed for 6.0 and newer. - ++ - lib.optional - (!(lib.versionAtLeast kernel.version "6.0") && lib.versionAtLeast python3.version "3.12") - [ - python3.pkgs.distutils - python3.pkgs.packaging - ]; + ++ lib.optional withLibcap libcap; env.NIX_CFLAGS_COMPILE = toString [ "-Wno-error=cpp" @@ -206,6 +169,5 @@ stdenv.mkDerivation { mainProgram = "perf"; maintainers = with maintainers; [ tobim ]; platforms = platforms.linux; - broken = kernel.kernelOlder "5"; }; } diff --git a/pkgs/by-name/po/postgres-lsp/package.nix b/pkgs/by-name/po/postgres-lsp/package.nix index e7002986e4dd..238eb0cf396e 100644 --- a/pkgs/by-name/po/postgres-lsp/package.nix +++ b/pkgs/by-name/po/postgres-lsp/package.nix @@ -6,17 +6,17 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "postgres-lsp"; - version = "0.10.0"; + version = "0.13.0"; src = fetchFromGitHub { owner = "supabase-community"; repo = "postgres-language-server"; tag = finalAttrs.version; - hash = "sha256-RwUX5EXRyvmC8LCnlQQIbqnLGn7XYXjLsI9UurCAThs="; + hash = "sha256-0Q8MxKeh12STWIJ9441uTz+qQXEJjCESj21C4X8CBC4="; fetchSubmodules = true; }; - cargoHash = "sha256-qs/M9+iZCx75wv+UcRRH4hjEuNDsnJYKAvnd0DNaRQ8="; + cargoHash = "sha256-oIbS5BUpNOXwiRconqJI/jdXeX05FIZVNl2kYt+79wY="; nativeBuildInputs = [ rustPlatform.bindgenHook diff --git a/pkgs/by-name/po/powershell-editor-services/package.nix b/pkgs/by-name/po/powershell-editor-services/package.nix index 23adf690335c..e6ebf028dc20 100644 --- a/pkgs/by-name/po/powershell-editor-services/package.nix +++ b/pkgs/by-name/po/powershell-editor-services/package.nix @@ -7,11 +7,11 @@ }: stdenvNoCC.mkDerivation rec { pname = "powershell-editor-services"; - version = "4.3.0"; + version = "4.4.0"; src = fetchzip { url = "https://github.com/PowerShell/PowerShellEditorServices/releases/download/v${version}/PowerShellEditorServices.zip"; - hash = "sha256-YiXxztfsYujJK6+56Lwi4QdRIZb7NH+dAUJTOYk8pGI="; + hash = "sha256-tmz6xkcF44xnG5VwSeHNWzjRQK6wxQ7Ii6mDNisCMb8="; stripRoot = false; }; diff --git a/pkgs/development/php-packages/psysh/default.nix b/pkgs/by-name/ps/psysh/package.nix similarity index 100% rename from pkgs/development/php-packages/psysh/default.nix rename to pkgs/by-name/ps/psysh/package.nix diff --git a/pkgs/by-name/qc/qcsxcad/package.nix b/pkgs/by-name/qc/qcsxcad/package.nix new file mode 100644 index 000000000000..8d8b0fc4dfcc --- /dev/null +++ b/pkgs/by-name/qc/qcsxcad/package.nix @@ -0,0 +1,54 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + csxcad, + tinyxml, + vtkWithQt6, + qt6, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "qcsxcad"; + version = "0.6.3"; + + src = fetchFromGitHub { + owner = "thliebig"; + repo = "QCSXCAD"; + tag = "v${finalAttrs.version}"; + hash = "sha256-bX6e3ugHJynU9tP70BV8TadnoGg1VO7SAYJueMkMAyo="; + }; + + outputs = [ + "out" + "dev" + ]; + + nativeBuildInputs = [ + cmake + ]; + + cmakeFlags = [ + (lib.cmakeBool "ENABLE_RPATH" false) + ]; + + buildInputs = [ + csxcad + tinyxml + vtkWithQt6 + qt6.qtbase + qt6.qt5compat + qt6.qtwayland + ]; + + dontWrapQtApps = true; + + meta = { + description = "Qt library for CSXCAD"; + homepage = "https://github.com/thliebig/QCSXCAD"; + license = lib.licenses.gpl3; + maintainers = with lib.maintainers; [ matthuszagh ]; + platforms = lib.platforms.linux; + }; +}) diff --git a/pkgs/by-name/ra/ramalama/package.nix b/pkgs/by-name/ra/ramalama/package.nix index 53e60e549b97..b100c3f78eb8 100644 --- a/pkgs/by-name/ra/ramalama/package.nix +++ b/pkgs/by-name/ra/ramalama/package.nix @@ -71,6 +71,11 @@ python3.pkgs.buildPythonApplication rec { python3.pkgs.pytestCheckHook ]; + # Enable when https://github.com/containers/ramalama/pull/1891 is released + disabledTests = [ + "test_ollama_model_pull" + ]; + passthru = { tests = { withoutPodman = ramalama.override { diff --git a/pkgs/by-name/re/refind/package.nix b/pkgs/by-name/re/refind/package.nix index dbb7c622a76e..3340cdac8b09 100644 --- a/pkgs/by-name/re/refind/package.nix +++ b/pkgs/by-name/re/refind/package.nix @@ -163,6 +163,7 @@ stdenv.mkDerivation rec { passthru.tests = { uefiCdrom = nixosTests.boot.uefiCdrom; + inherit (nixosTests) refind; }; meta = with lib; { @@ -183,7 +184,10 @@ stdenv.mkDerivation rec { Linux kernels that provide EFI stub support. ''; homepage = "http://refind.sourceforge.net/"; - maintainers = with maintainers; [ johnrtitor ]; + maintainers = with maintainers; [ + johnrtitor + RossComputerGuy + ]; platforms = [ "i686-linux" "x86_64-linux" diff --git a/pkgs/by-name/re/repomix/package.nix b/pkgs/by-name/re/repomix/package.nix index 9c55a719d602..0b29bee4b39a 100644 --- a/pkgs/by-name/re/repomix/package.nix +++ b/pkgs/by-name/re/repomix/package.nix @@ -8,16 +8,16 @@ buildNpmPackage rec { pname = "repomix"; - version = "1.3.0"; + version = "1.4.2"; src = fetchFromGitHub { owner = "yamadashy"; repo = "repomix"; tag = "v${version}"; - hash = "sha256-09neN7sh4TRM+rQBqCQHqW165i6+RY9IF67ft6OgyhI="; + hash = "sha256-65A8HN0Mp8QOEfIjiDZwr/qgWe57XTCdd1eBd3mm9fE="; }; - npmDepsHash = "sha256-nLxIPwx+zvYCMZ6y9ntbWvrJvO4g5J7Tf9rYk26gyAs="; + npmDepsHash = "sha256-PfElq+C8kazP3OLF5LFAZitIXhVpWdj/fCyH2S7d/zg="; nativeInstallCheckInputs = [ versionCheckHook ]; doInstallCheck = true; diff --git a/pkgs/by-name/re/responder/package.nix b/pkgs/by-name/re/responder/package.nix index c28642ce6081..ff812efef4a6 100644 --- a/pkgs/by-name/re/responder/package.nix +++ b/pkgs/by-name/re/responder/package.nix @@ -7,14 +7,14 @@ python3.pkgs.buildPythonApplication rec { pname = "responder"; - version = "3.1.6.0"; + version = "3.1.7.0"; format = "other"; src = fetchFromGitHub { owner = "lgandx"; repo = "Responder"; tag = "v${version}"; - hash = "sha256-2aNJkcdtTpw4OYHSTgJUYsGOsBD1I0ad3cSpVCS9kpo="; + hash = "sha256-ZC74VFnixSc97fRkRSOJmc39YLIP95qAUFydIcyzNdo="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ro/roddhjav-apparmor-rules/package.nix b/pkgs/by-name/ro/roddhjav-apparmor-rules/package.nix index d4375545c282..8cea30b9def3 100644 --- a/pkgs/by-name/ro/roddhjav-apparmor-rules/package.nix +++ b/pkgs/by-name/ro/roddhjav-apparmor-rules/package.nix @@ -7,13 +7,13 @@ stdenvNoCC.mkDerivation { pname = "roddhjav-apparmor-rules"; - version = "0-unstable-2025-08-25"; + version = "0-unstable-2025-09-03"; src = fetchFromGitHub { owner = "roddhjav"; repo = "apparmor.d"; - rev = "7ecc84d3b0e13f5d346a906dceda14321fddae1a"; - hash = "sha256-XOatGZxhlcd1JXYJzgye/2Dok+Jmppj4cJuiYy6uhxc="; + rev = "4c84b572cda4433a664b1488e980034886652629"; + hash = "sha256-GoH7LR3jIgeSTjVpz8jAzDGWrAAM7Bw3OAzwmjdnRmE="; }; dontConfigure = true; diff --git a/pkgs/by-name/sm/sm64coopdx/no-update-check.patch b/pkgs/by-name/sm/sm64coopdx/no-update-check.patch new file mode 100644 index 000000000000..524efe06cefe --- /dev/null +++ b/pkgs/by-name/sm/sm64coopdx/no-update-check.patch @@ -0,0 +1,12 @@ +diff --git i/src/pc/update_checker.c w/src/pc/update_checker.c +index e83414106..53909c075 100644 +--- i/src/pc/update_checker.c ++++ w/src/pc/update_checker.c +@@ -127,6 +127,7 @@ void get_version_remote(void) { + } + + void check_for_updates(void) { ++ return; + LOADING_SCREEN_MUTEX(loading_screen_set_segment_text("Checking For Updates")); + + get_version_remote(); diff --git a/pkgs/by-name/sm/sm64coopdx/package.nix b/pkgs/by-name/sm/sm64coopdx/package.nix index cc5a4cafa36a..542048170496 100644 --- a/pkgs/by-name/sm/sm64coopdx/package.nix +++ b/pkgs/by-name/sm/sm64coopdx/package.nix @@ -37,15 +37,17 @@ in # note: there is a generic builder in pkgs/games/sm64ex/generic.nix that is meant to help build sm64ex and its forks; however sm64coopdx has departed significantly enough in its build that it doesn't make sense to use that other than the baseRom derivation stdenv.mkDerivation (finalAttrs: { pname = "sm64coopdx"; - version = "1.3.0"; + version = "1.3.2"; src = fetchFromGitHub { owner = "coop-deluxe"; repo = "sm64coopdx"; - rev = "v1.3"; # it seems coopdx has taken on some stylistic versioning... - hash = "sha256-ssbvNnBBxahzJRIX5Vhze+Nfh3ADoy+NrUIF2RZHye8="; + rev = "v1.3.2"; + hash = "sha256-FHH3+pGowkT8asDmU9qxPNDKy4VPKlkA0X7e4gnX9KY="; }; + patches = [ ./no-update-check.patch ]; + nativeBuildInputs = [ makeWrapper ]; buildInputs = [ diff --git a/pkgs/by-name/sq/sql-formatter/package.nix b/pkgs/by-name/sq/sql-formatter/package.nix index 4f3ca9d6e77b..9f42fd42fc4d 100644 --- a/pkgs/by-name/sq/sql-formatter/package.nix +++ b/pkgs/by-name/sq/sql-formatter/package.nix @@ -11,13 +11,13 @@ }: stdenv.mkDerivation rec { pname = "sql-formatter"; - version = "15.6.6"; + version = "15.6.8"; src = fetchFromGitHub { owner = "sql-formatter-org"; repo = "sql-formatter"; rev = "v${version}"; - hash = "sha256-61E3DizwO9Lml0Uu4tOhpCbzaxiDrY5vPqk2TY7fIqo="; + hash = "sha256-iq8sUwlkqfItNjniFTeJ+tXaj4nW915XPfxWzYSQawo="; }; yarnOfflineCache = fetchYarnDeps { diff --git a/pkgs/by-name/sy/systemtap-unwrapped/package.nix b/pkgs/by-name/sy/systemtap-unwrapped/package.nix new file mode 100644 index 000000000000..22109e888eff --- /dev/null +++ b/pkgs/by-name/sy/systemtap-unwrapped/package.nix @@ -0,0 +1,41 @@ +{ + lib, + stdenv, + fetchgit, + pkg-config, + gettext, + cpio, + elfutils, + python3, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "systemtap"; + version = "5.2"; + + src = fetchgit { + url = "git://sourceware.org/git/systemtap.git"; + rev = "release-${finalAttrs.version}"; + hash = "sha256-SUPNarZW8vdK9hQaI2kU+rfKWIPiXB4BvJvRNC1T9tU="; + }; + + nativeBuildInputs = [ + pkg-config + cpio + python3 + python3.pkgs.setuptools + ]; + buildInputs = [ + elfutils + gettext + python3 + ]; + enableParallelBuilding = true; + + meta = { + homepage = "https://sourceware.org/systemtap/"; + description = "Provides a scripting language for instrumentation on a live kernel plus user-space"; + license = lib.licenses.gpl2; + platforms = lib.systems.inspect.patterns.isGnu; + }; +}) diff --git a/pkgs/by-name/te/tea/package.nix b/pkgs/by-name/te/tea/package.nix index 8ca3ebe7c6e6..00faa35624e8 100644 --- a/pkgs/by-name/te/tea/package.nix +++ b/pkgs/by-name/te/tea/package.nix @@ -2,6 +2,7 @@ lib, buildGoModule, fetchFromGitea, + installShellFiles, }: buildGoModule rec { @@ -28,4 +29,20 @@ buildGoModule rec { ]; mainProgram = "tea"; }; + + ldflags = [ + "-X code.gitea.io/tea/cmd.Version=${version}" + ]; + + nativeBuildInputs = [ installShellFiles ]; + + postInstall = '' + installShellCompletion --cmd tea \ + --bash <($out/bin/tea completion bash) \ + --fish <($out/bin/tea completion fish) \ + --zsh <($out/bin/tea completion zsh) + + mkdir $out/share/powershell/ -p + $out/bin/tea completion pwsh > $out/share/powershell/tea.Completion.ps1 + ''; } diff --git a/pkgs/by-name/tf/tfswitch/package.nix b/pkgs/by-name/tf/tfswitch/package.nix index 2e37c29a709f..53205a33322c 100644 --- a/pkgs/by-name/tf/tfswitch/package.nix +++ b/pkgs/by-name/tf/tfswitch/package.nix @@ -5,16 +5,16 @@ }: buildGoModule rec { pname = "tfswitch"; - version = "1.5.0"; + version = "1.5.1"; src = fetchFromGitHub { owner = "warrensbox"; repo = "terraform-switcher"; rev = "v${version}"; - sha256 = "sha256-u7EnixxFds3dqNcyv+rHrGZdmwc34amq4tGGmBw0RsU="; + sha256 = "sha256-gXf6lqxWTX44fhAa34QlcKBxc4xLNVFUsGOlKvWnWKc="; }; - vendorHash = "sha256-HbNdWvKvmZDalDQoMtQMaXiT0NIFNtVowSIYO4z9h8c="; + vendorHash = "sha256-cc1ZvVCcjFlJcHs0DH4atyWISrrDfyXPK6j2dSgWD0k="; # Disable tests since it requires network access and relies on the # presence of release.hashicorp.com diff --git a/pkgs/by-name/ul/ultrastardx/package.nix b/pkgs/by-name/ul/ultrastardx/package.nix index d2b8dbb253c6..0535089cbba6 100644 --- a/pkgs/by-name/ul/ultrastardx/package.nix +++ b/pkgs/by-name/ul/ultrastardx/package.nix @@ -45,13 +45,13 @@ let in stdenv.mkDerivation rec { pname = "ultrastardx"; - version = "2025.8.0"; + version = "2025.9.0"; src = fetchFromGitHub { owner = "UltraStar-Deluxe"; repo = "USDX"; rev = "v${version}"; - hash = "sha256-rliUJNhvbXbD+ELxwutCoQs6BO1DyJ8J/+mmYHPuvQE="; + hash = "sha256-SQqmcFchXaYNKzQHjBcisZTjAN9TTWuKXv657yWGghw="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/vu/vuetorrent/package.nix b/pkgs/by-name/vu/vuetorrent/package.nix index d0730b5f5ada..b6c61902323d 100644 --- a/pkgs/by-name/vu/vuetorrent/package.nix +++ b/pkgs/by-name/vu/vuetorrent/package.nix @@ -7,16 +7,16 @@ buildNpmPackage rec { pname = "vuetorrent"; - version = "2.28.2"; + version = "2.29.0"; src = fetchFromGitHub { owner = "VueTorrent"; repo = "VueTorrent"; tag = "v${version}"; - hash = "sha256-8n5OM55Z5xGLAXU6jqt2bKmrYa5ZnWatW0LsjOkJeDg="; + hash = "sha256-EnyLMaLElgGUjwxpkhTxV7aVa8l5B5wpBBzg5qyagIQ="; }; - npmDepsHash = "sha256-Sh6s7zACAUu8j9ugST71j5u5nEWGVxC6dOniE+xjP6E="; + npmDepsHash = "sha256-JA5nl+otuyloSi7JPRb8ZJe6PRAaYxuuEpqlmLE65yU="; installPhase = '' runHook preInstall diff --git a/pkgs/by-name/wa/wasmtime/package.nix b/pkgs/by-name/wa/wasmtime/package.nix index 66fb84bfcf82..6273058c8c13 100644 --- a/pkgs/by-name/wa/wasmtime/package.nix +++ b/pkgs/by-name/wa/wasmtime/package.nix @@ -9,20 +9,20 @@ }: rustPlatform.buildRustPackage (finalAttrs: { pname = "wasmtime"; - version = "33.0.0"; + version = "36.0.2"; src = fetchFromGitHub { owner = "bytecodealliance"; repo = "wasmtime"; tag = "v${finalAttrs.version}"; - hash = "sha256-/i//5kPN1/zQnfDZWuJldKdFWk/DKAf5b5P4F58rgPI="; + hash = "sha256-tcG78WubEm1zZXfNsDCwtw4QF5ip3ZjkxaLu8D4qBc4="; fetchSubmodules = true; }; # Disable cargo-auditable until https://github.com/rust-secure-code/cargo-auditable/issues/124 is solved. auditable = false; - cargoHash = "sha256-4ziMGmBbQ4anXvF6wwK1ezYXHY7JBvMRmPDreNME0H8="; + cargoHash = "sha256-iCYZLKjO1kD753S1CiwTHa9qVxg9Y2ZMCKg0wod7GbQ="; cargoBuildFlags = [ "--package" "wasmtime-cli" diff --git a/pkgs/by-name/ya/yara-x/package.nix b/pkgs/by-name/ya/yara-x/package.nix index 1d14f1d4cd03..340576502ab0 100644 --- a/pkgs/by-name/ya/yara-x/package.nix +++ b/pkgs/by-name/ya/yara-x/package.nix @@ -12,16 +12,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "yara-x"; - version = "1.5.0"; + version = "1.6.0"; src = fetchFromGitHub { owner = "VirusTotal"; repo = "yara-x"; tag = "v${finalAttrs.version}"; - hash = "sha256-YZmhwHA6PnQb3QXhbWK8cbV0CScbiD5k+HceDcV6iCI="; + hash = "sha256-LpdpdzUof+Buz5QQcWUr23AsSyfvUQYPp7RhHWXRb+I="; }; - cargoHash = "sha256-8LofNTLa3a2dDH72T54HJR/+qArXt+X6OMJIQwmjQIQ="; + cargoHash = "sha256-IO8ER92vWO3Q9MntaGwdhEFgy9G35Q3LOG5GU5rJpQY="; nativeBuildInputs = [ installShellFiles diff --git a/pkgs/by-name/yg/ygot/package.nix b/pkgs/by-name/yg/ygot/package.nix index ec6c82c4dc94..446cd8973181 100644 --- a/pkgs/by-name/yg/ygot/package.nix +++ b/pkgs/by-name/yg/ygot/package.nix @@ -10,16 +10,16 @@ buildGoModule (finalAttrs: { pname = "ygot"; - version = "0.33.0"; + version = "0.34.0"; src = fetchFromGitHub { owner = "openconfig"; repo = "ygot"; tag = "v${finalAttrs.version}"; - hash = "sha256-O8nBcXRKKd+dV0jub5tVvG8WoxGMR4r1cqOmTzO+LDU="; + hash = "sha256-/dE3IsooCuIi3e+1RRA50wKB2NE8ohf46wFqZcdFKq0="; }; - vendorHash = "sha256-AgSKfy8Dbc5fRhJ2oskmkShL/mHb2FKkGZoqPyagLfE="; + vendorHash = "sha256-66hugAa31RWQxGNsVpfyLzZoXbW7KQ73ggvvInn8dw8="; excludedPackages = [ "demo/*" diff --git a/pkgs/by-name/yt/yt-dlp/package.nix b/pkgs/by-name/yt/yt-dlp/package.nix index f49335d36e26..8eb6e307a551 100644 --- a/pkgs/by-name/yt/yt-dlp/package.nix +++ b/pkgs/by-name/yt/yt-dlp/package.nix @@ -19,14 +19,14 @@ python3Packages.buildPythonApplication rec { # The websites yt-dlp deals with are a very moving target. That means that # downloads break constantly. Because of that, updates should always be backported # to the latest stable release. - version = "2025.08.27"; + version = "2025.09.05"; pyproject = true; src = fetchFromGitHub { owner = "yt-dlp"; repo = "yt-dlp"; tag = version; - hash = "sha256-E8++/gK/SpY93UW/9U266Qj1Kkn6CeNou7bKTqpCgFw="; + hash = "sha256-9y6OUVm6hNTTi5FFmd9DHcmAMrvSmDD+4kDe00aMTDI="; }; postPatch = '' diff --git a/pkgs/development/compilers/ghcjs/8.10/common-overrides.nix b/pkgs/development/compilers/ghcjs/8.10/common-overrides.nix deleted file mode 100644 index 38caf51088e8..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/common-overrides.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ - haskellLib, - fetchpatch, - buildPackages, -}: - -let - inherit (haskellLib) - addBuildTools - appendConfigureFlag - dontHaddock - doJailbreak - markUnbroken - overrideCabal - ; -in -self: super: { - ghcjs = - overrideCabal - (drv: { - # Jailbreak and patch can be dropped after https://github.com/ghcjs/ghcjs/pull/833 - jailbreak = true; - patches = drv.patches or [ ] ++ [ - (fetchpatch { - name = "ghcjs-aeson-2.0.patch"; - url = "https://github.com/ghcjs/ghcjs/commit/9ef1f92d740e8503d15d91699f57db147f0474cc.patch"; - sha256 = "0cgxcy6b5870bv4kj54n3bzcqinh4gl4w4r78dg43h2mblhkzbnj"; - }) - ]; - }) - ( - super.ghcjs.overrideScope ( - self: super: { - # Allow transformers-compat >= 0.7 - optparse-applicative = doJailbreak self.optparse-applicative_0_15_1_0; - ansi-wl-pprint = self.ansi-wl-pprint_0_6_9; - ansi-terminal = self.ansi-terminal_1_0_2; - ansi-terminal-types = self.ansi-terminal-types_0_11_5; - } - ) - ); -} diff --git a/pkgs/development/compilers/ghcjs/8.10/configured-ghcjs-src.nix b/pkgs/development/compilers/ghcjs/8.10/configured-ghcjs-src.nix deleted file mode 100644 index 3df3a42bf5c3..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/configured-ghcjs-src.nix +++ /dev/null @@ -1,70 +0,0 @@ -{ - perl, - autoconf, - automake, - python3, - gcc, - cabal-install, - runCommand, - fetchpatch, - - ghc, - happy, - alex, - - ghcjsSrc, - version, -}: - -runCommand "configured-ghcjs-src" - { - nativeBuildInputs = [ - perl - autoconf - automake - python3 - ghc - happy - alex - cabal-install - gcc - ]; - - inherit ghcjsSrc; - - ctimePatch = fetchpatch { - name = "ghcjs-base-ctime-64-bit.patch"; - url = "https://github.com/ghcjs/ghcjs/commit/b7711fbca7c3f43a61f1dba526e6f2a2656ef44c.patch"; - hash = "sha256-zZ3l8/5gbIGtvu0s2Xl92fEDhkhJ2c2w+5Ql5qkvr3s="; - }; - } - '' - export HOME=$(pwd) - mkdir $HOME/.cabal - touch $HOME/.cabal/config - cp -r "$ghcjsSrc" "$out" - chmod -R +w "$out" - cd "$out" - - patch -p1 -i "$ctimePatch" - - # TODO: Find a better way to avoid impure version numbers - sed -i 's/RELEASE=NO/RELEASE=YES/' ghc/configure.ac - - # These files are needed by ghc-boot package, and these are generated by the - # make/hadrian build system when compiling ghc. Since we dont have access to - # the generated code of the ghc while it got built, here is a little hack to - # generate these again. - runhaskell ${./generate_host_version.hs} - mkdir -p utils/pkg-cache/ghc/libraries/ghc-boot/dist-install/build/GHC/Platform - mv Host.hs utils/pkg-cache/ghc/libraries/ghc-boot/dist-install/build/GHC/Platform/Host.hs - mv Version.hs utils/pkg-cache/ghc/libraries/ghc-boot/dist-install/build/GHC/Version.hs - - # The ghcjs has the following hardcoded paths of lib dir in its code. Patching - # these to match the path expected by the nixpkgs's generic-builder, etc. - sed -i 's/libSubDir = "lib"/libSubDir = "lib\/ghcjs-${version}"/' src-bin/Boot.hs - sed -i 's@let libDir = takeDirectory haddockPath ".." "lib"@let libDir = takeDirectory haddockPath ".." "lib/ghcjs-${version}"@' src-bin/HaddockDriver.hs - - patchShebangs . - ./utils/makePackages.sh copy - '' diff --git a/pkgs/development/compilers/ghcjs/8.10/default.nix b/pkgs/development/compilers/ghcjs/8.10/default.nix deleted file mode 100644 index a060e8e9d5c6..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/default.nix +++ /dev/null @@ -1,144 +0,0 @@ -{ - stdenv, - pkgsHostHost, - callPackage, - fetchgit, - fetchpatch, - ghcjsSrcJson ? null, - ghcjsSrc ? fetchgit (lib.importJSON ghcjsSrcJson), - bootPkgs, - stage0, - haskellLib, - cabal-install, - nodejs, - makeWrapper, - xorg, - gmp, - pkg-config, - gcc, - lib, - ghcjsDepOverrides ? (_: _: { }), - linkFarm, - buildPackages, -}: - -let - passthru = { - configuredSrc = callPackage ./configured-ghcjs-src.nix { - inherit ghcjsSrc; - inherit (bootPkgs) ghc alex; - inherit (bootGhcjs) version; - happy = bootPkgs.happy_1_19_12; - }; - bootPkgs = bootPkgs.extend ( - lib.foldr lib.composeExtensions (_: _: { }) [ - ( - self: _: - import stage0 { - inherit (passthru) configuredSrc; - inherit (self) callPackage; - } - ) - - (callPackage ./common-overrides.nix { - inherit haskellLib fetchpatch buildPackages; - }) - ghcjsDepOverrides - ] - ); - - targetPrefix = ""; - inherit bootGhcjs; - inherit (bootGhcjs) version; - isGhcjs = true; - - llvmPackages = null; - enableShared = true; - - socket-io = pkgsHostHost.nodePackages."socket.io"; - - haskellCompilerName = "ghcjs-${bootGhcjs.version}"; - }; - - bootGhcjs = haskellLib.justStaticExecutables passthru.bootPkgs.ghcjs; - - # This provides the stuff we need from the emsdk - emsdk = linkFarm "emsdk" [ - { - name = "upstream/bin"; - path = buildPackages.clang + "/bin"; - } - { - name = "upstream/emscripten"; - path = buildPackages.emscripten + "/bin"; - } - ]; - -in -stdenv.mkDerivation { - name = bootGhcjs.name; - src = passthru.configuredSrc; - nativeBuildInputs = [ - bootGhcjs - passthru.bootPkgs.ghc - cabal-install - nodejs - makeWrapper - xorg.lndir - gmp - pkg-config - ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ - gcc # https://github.com/ghcjs/ghcjs/issues/663 - ]; - dontConfigure = true; - dontInstall = true; - - # Newer versions of `config.sub` reject the `js-ghcjs` host string, but the - # older `config.sub` filed vendored within `ghc` still works - dontUpdateAutotoolsGnuConfigScripts = true; - - buildPhase = '' - export HOME=$TMP - mkdir $HOME/.cabal - touch $HOME/.cabal/config - cd lib/boot - - export EM_CACHE="$HOME/.emscriptencache" - mkdir -p "$EM_CACHE" - - mkdir -p $out/bin - mkdir -p $out/lib/${bootGhcjs.name} - lndir ${bootGhcjs}/bin $out/bin - chmod -R +w $out/bin - rm $out/bin/ghcjs-boot - cp ${bootGhcjs}/bin/ghcjs-boot $out/bin - rm $out/bin/haddock - cp ${bootGhcjs}/bin/haddock $out/bin - cp ${bootGhcjs}/bin/private-ghcjs-hsc2hs $out/bin/ghcjs-hsc2hs - - wrapProgram $out/bin/ghcjs-boot --set ghcjs_libexecdir $out/bin - - wrapProgram $out/bin/ghcjs --add-flags "-B$out/lib/${bootGhcjs.name}" - wrapProgram $out/bin/haddock --add-flags "-B$out/lib/${bootGhcjs.name}" - wrapProgram $out/bin/ghcjs-pkg --add-flags "--global-package-db=$out/lib/${bootGhcjs.name}/package.conf.d" - wrapProgram $out/bin/ghcjs-hsc2hs --add-flags "-I$out/lib/${bootGhcjs.name}/include --template=$out/lib/${bootGhcjs.name}/include/template-hsc.h" - - env PATH=$out/bin:$PATH $out/bin/ghcjs-boot --with-emsdk=${emsdk} --no-haddock - ''; - - enableParallelBuilding = true; - - inherit passthru; - - meta = { - platforms = with lib.platforms; linux ++ darwin; - - # Hydra limits jobs to only outputting 1 gigabyte worth of files. - # GHCJS outputs over 3 gigabytes. - # https://github.com/NixOS/nixpkgs/pull/137066#issuecomment-922335563 - hydraPlatforms = lib.platforms.none; - - maintainers = with lib.maintainers; [ obsidian-systems-maintenance ]; - }; -} diff --git a/pkgs/development/compilers/ghcjs/8.10/generate_host_version.hs b/pkgs/development/compilers/ghcjs/8.10/generate_host_version.hs deleted file mode 100644 index 8bf2583d238c..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/generate_host_version.hs +++ /dev/null @@ -1,54 +0,0 @@ --- Generate the Host.hs and Version.hs as done by hadrian/src/Rules/Generate.hs - -import GHC.Platform.Host -import GHC.Version - -main = do - writeFile "Version.hs" versionHs - writeFile "Host.hs" platformHostHs - --- | Generate @Version.hs@ files. -versionHs :: String -versionHs = unlines - [ "module GHC.Version where" - , "" - , "import Prelude -- See Note [Why do we import Prelude here?]" - , "" - , "cProjectGitCommitId :: String" - , "cProjectGitCommitId = " ++ show cProjectGitCommitId - , "" - , "cProjectVersion :: String" - , "cProjectVersion = " ++ show cProjectVersion - , "" - , "cProjectVersionInt :: String" - , "cProjectVersionInt = " ++ show cProjectVersionInt - , "" - , "cProjectPatchLevel :: String" - , "cProjectPatchLevel = " ++ show cProjectPatchLevel - , "" - , "cProjectPatchLevel1 :: String" - , "cProjectPatchLevel1 = " ++ show cProjectPatchLevel1 - , "" - , "cProjectPatchLevel2 :: String" - , "cProjectPatchLevel2 = " ++ show cProjectPatchLevel2 - ] - --- | Generate @Platform/Host.hs@ files. -platformHostHs :: String -platformHostHs = unlines - [ "module GHC.Platform.Host where" - , "" - , "import GHC.Platform" - , "" - , "cHostPlatformArch :: Arch" - , "cHostPlatformArch = " ++ show cHostPlatformArch - , "" - , "cHostPlatformOS :: OS" - , "cHostPlatformOS = " ++ show cHostPlatformOS - , "" - , "cHostPlatformMini :: PlatformMini" - , "cHostPlatformMini = PlatformMini" - , " { platformMini_arch = cHostPlatformArch" - , " , platformMini_os = cHostPlatformOS" - , " }" - ] diff --git a/pkgs/development/compilers/ghcjs/8.10/git.json b/pkgs/development/compilers/ghcjs/8.10/git.json deleted file mode 100644 index 18804d84acb1..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/git.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "url": "https://github.com/obsidiansystems/ghcjs", - "rev": "9fc935f2c3ba6c33ec62eb83afc9f52a893eb68c", - "sha256": "sha256:063dmir39c4i1z8ypnmq86g1x2vhqndmdpzc4hyzsy5jjqcbx6i3", - "fetchSubmodules": true -} diff --git a/pkgs/development/compilers/ghcjs/8.10/stage0.nix b/pkgs/development/compilers/ghcjs/8.10/stage0.nix deleted file mode 100644 index 30c89a1b2e19..000000000000 --- a/pkgs/development/compilers/ghcjs/8.10/stage0.nix +++ /dev/null @@ -1,245 +0,0 @@ -{ callPackage, configuredSrc }: - -{ - - ghcjs = callPackage ( - { - mkDerivation, - aeson, - alex, - array, - attoparsec, - base, - base16-bytestring, - base64-bytestring, - binary, - bytestring, - Cabal, - containers, - cryptohash, - data-default, - deepseq, - directory, - executable-path, - filepath, - ghc-boot, - ghc-boot-th, - ghc-compact, - ghc-heap, - ghc-paths, - ghci, - happy, - hashable, - hpc, - http-types, - HUnit, - lens, - lib, - lifted-base, - mtl, - network, - optparse-applicative, - parallel, - parsec, - process, - random, - safe, - shelly, - split, - stringsearch, - syb, - tar, - template-haskell, - terminfo, - test-framework, - test-framework-hunit, - text, - time, - transformers, - unix, - unix-compat, - unordered-containers, - vector, - wai, - wai-app-static, - wai-extra, - wai-websockets, - warp, - webdriver, - websockets, - wl-pprint-text, - xhtml, - yaml, - }: - mkDerivation { - pname = "ghcjs"; - version = "8.10.7"; - src = configuredSrc + /.; - isLibrary = true; - isExecutable = true; - libraryHaskellDepends = [ - aeson - array - attoparsec - base - base16-bytestring - base64-bytestring - binary - bytestring - Cabal - containers - cryptohash - data-default - deepseq - directory - filepath - ghc-boot - ghc-boot-th - ghc-compact - ghc-heap - ghc-paths - ghci - hashable - hpc - lens - mtl - optparse-applicative - parallel - parsec - process - safe - split - stringsearch - syb - template-haskell - terminfo - text - time - transformers - unix - unordered-containers - vector - wl-pprint-text - yaml - ]; - libraryToolDepends = [ - alex - happy - ]; - executableHaskellDepends = [ - aeson - array - base - binary - bytestring - Cabal - containers - deepseq - directory - executable-path - filepath - ghc-boot - lens - mtl - optparse-applicative - parsec - process - tar - terminfo - text - time - transformers - unix - unix-compat - unordered-containers - vector - xhtml - yaml - ]; - testHaskellDepends = [ - aeson - base - bytestring - data-default - deepseq - directory - filepath - http-types - HUnit - lens - lifted-base - network - optparse-applicative - process - random - shelly - test-framework - test-framework-hunit - text - time - transformers - unordered-containers - wai - wai-app-static - wai-extra - wai-websockets - warp - webdriver - websockets - yaml - ]; - description = "Haskell to JavaScript compiler"; - license = lib.licenses.mit; - } - ) { }; - - ghcjs-th = callPackage ( - { - mkDerivation, - base, - binary, - bytestring, - containers, - ghc-prim, - ghci, - lib, - template-haskell, - }: - mkDerivation { - pname = "ghcjs-th"; - version = "0.1.0.0"; - src = configuredSrc + /lib/ghcjs-th; - libraryHaskellDepends = [ - base - binary - bytestring - containers - ghc-prim - ghci - template-haskell - ]; - homepage = "https://github.com/ghcjs"; - license = lib.licenses.mit; - } - ) { }; - - ghcjs-prim = callPackage ( - { - mkDerivation, - base, - ghc-prim, - lib, - }: - mkDerivation { - pname = "ghcjs-prim"; - version = "0.1.1.0"; - src = ./.; - libraryHaskellDepends = [ - base - ghc-prim - ]; - homepage = "https://github.com/ghcjs"; - license = lib.licenses.mit; - } - ) { }; -} diff --git a/pkgs/development/compilers/ghcjs/ghcjs-base.nix b/pkgs/development/compilers/ghcjs/ghcjs-base.nix deleted file mode 100644 index bb57c0beefca..000000000000 --- a/pkgs/development/compilers/ghcjs/ghcjs-base.nix +++ /dev/null @@ -1,87 +0,0 @@ -{ - mkDerivation, - aeson, - array, - attoparsec, - base, - binary, - bytestring, - containers, - deepseq, - directory, - dlist, - fetchFromGitHub, - ghc-prim, - ghcjs-prim, - hashable, - HUnit, - integer-gmp, - primitive, - QuickCheck, - quickcheck-unicode, - random, - scientific, - test-framework, - test-framework-hunit, - test-framework-quickcheck2, - text, - time, - transformers, - unordered-containers, - vector, - lib, -}: -mkDerivation { - pname = "ghcjs-base"; - version = "0.2.1.0"; - # This is the release 0.2.1.0, but the hackage release misses test source files, - # so lets use github https://github.com/ghcjs/ghcjs-base/issues/132 - src = fetchFromGitHub { - owner = "ghcjs"; - repo = "ghcjs-base"; - rev = "fbaae59b05b020e91783df122249095e168df53f"; - sha256 = "sha256-x6eCAK1Hne0QkV3Loi9YpxbleNHU593E4AO8cbk2vUc="; - }; - libraryHaskellDepends = [ - aeson - attoparsec - base - binary - bytestring - containers - deepseq - dlist - ghc-prim - ghcjs-prim - hashable - integer-gmp - primitive - scientific - text - time - transformers - unordered-containers - vector - ]; - testHaskellDepends = [ - array - base - bytestring - deepseq - directory - ghc-prim - ghcjs-prim - HUnit - primitive - QuickCheck - quickcheck-unicode - random - test-framework - test-framework-hunit - test-framework-quickcheck2 - text - ]; - homepage = "https://github.com/ghcjs/ghcjs-base"; - description = "base library for GHCJS"; - license = lib.licenses.mit; -} diff --git a/pkgs/development/haskell-modules/configuration-arm.nix b/pkgs/development/haskell-modules/configuration-arm.nix index 9b12e09880b8..6e3fb04d8ec1 100644 --- a/pkgs/development/haskell-modules/configuration-arm.nix +++ b/pkgs/development/haskell-modules/configuration-arm.nix @@ -37,7 +37,6 @@ self: super: # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062 happy = dontCheck super.happy; - happy_1_19_12 = doDistribute (dontCheck super.happy_1_19_12); # add arm specific library wiringPi = overrideCabal ( diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 3ddb773643f5..192c76821a68 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -1948,16 +1948,6 @@ with haskellLib; # https://github.com/biocad/servant-openapi3/issues/30 servant-openapi3 = dontCheck super.servant-openapi3; - # Point hspec 2.7.10 to correct dependencies - hspec_2_7_10 = super.hspec_2_7_10.override { - hspec-discover = self.hspec-discover_2_7_10; - hspec-core = self.hspec-core_2_7_10; - }; - hspec-discover_2_7_10 = super.hspec-discover_2_7_10.override { - hspec-meta = self.hspec-meta_2_7_8; - }; - hspec-core_2_7_10 = doJailbreak (dontCheck super.hspec-core_2_7_10); - # Disable test cases that were broken by insignificant changes in icu 76 # https://github.com/haskell/text-icu/issues/108 text-icu = overrideCabal (drv: { diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix index be4c7b56f9c9..ca7d4df93c18 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix @@ -8,10 +8,7 @@ let in self: super: { - - # ghcjs does not use `llvmPackages` and exposes `null` attribute. - llvmPackages = - if self.ghc.llvmPackages != null then pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages else null; + llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages; # Disable GHC 8.10.x core libraries. array = null; diff --git a/pkgs/development/haskell-modules/configuration-ghcjs-8.x.nix b/pkgs/development/haskell-modules/configuration-ghcjs-8.x.nix deleted file mode 100644 index 56776f094cb9..000000000000 --- a/pkgs/development/haskell-modules/configuration-ghcjs-8.x.nix +++ /dev/null @@ -1,154 +0,0 @@ -# GHCJS package fixes -# -# Please insert new packages *alphabetically* -# in the OTHER PACKAGES section. -{ pkgs, haskellLib }: - -let - removeLibraryHaskellDepends = - pnames: depends: builtins.filter (e: !(builtins.elem (e.pname or "") pnames)) depends; -in - -with haskellLib; - -self: super: - -## GENERAL SETUP BASE PACKAGES -{ - inherit (self.ghc.bootPkgs) - jailbreak-cabal - alex - happy - gtk2hs-buildtools - rehoo - hoogle - ; - - # Test suite fails; https://github.com/ghcjs/ghcjs-base/issues/133 - ghcjs-base = dontCheck ( - self.callPackage ../compilers/ghcjs/ghcjs-base.nix { - fetchFromGitHub = pkgs.buildPackages.fetchFromGitHub; - aeson = self.aeson_1_5_6_0; - } - ); - - # Included in ghcjs itself - ghcjs-prim = null; - - ghcjs-websockets = markUnbroken super.ghcjs-websockets; - - # GHCJS does not ship with the same core packages as GHC. - # https://github.com/ghcjs/ghcjs/issues/676 - stm = doJailbreak self.stm_2_5_3_1; - exceptions = dontCheck self.exceptions_0_10_10; - - ## OTHER PACKAGES - - # Runtime exception in tests, missing C API h$realloc - base-compat-batteries = dontCheck super.base-compat-batteries; - - # nodejs crashes during test - ChasingBottoms = dontCheck super.ChasingBottoms; - - # runs forever - text-short = dontCheck super.text-short; - - # doctest doesn't work on ghcjs, but sometimes dontCheck doesn't seem to get rid of the dependency - doctest = pkgs.lib.warn "ignoring dependency on doctest" null; - - ghcjs-dom = overrideCabal (drv: { - libraryHaskellDepends = with self; [ - ghcjs-base - ghcjs-dom-jsffi - text - transformers - ]; - configureFlags = [ - "-fjsffi" - "-f-webkit" - ]; - }) super.ghcjs-dom; - - ghcjs-dom-jsffi = overrideCabal (drv: { - libraryHaskellDepends = (drv.libraryHaskellDepends or [ ]) ++ [ - self.ghcjs-base - self.text - ]; - broken = false; - }) super.ghcjs-dom-jsffi; - - # https://github.com/Deewiant/glob/issues/39 - Glob = dontCheck super.Glob; - - # Test fails to compile during the hsc2hs stage - hashable = dontCheck super.hashable; - - # uses doctest - http-types = dontCheck super.http-types; - - jsaddle = overrideCabal (drv: { - libraryHaskellDepends = (drv.libraryHaskellDepends or [ ]) ++ [ self.ghcjs-base ]; - }) super.jsaddle; - - # Tests hang, possibly some issue with tasty and race(async) usage in the nonTerminating tests - logict = dontCheck super.logict; - - patch = dontCheck super.patch; - - # TODO: tests hang - pcre-light = dontCheck super.pcre-light; - - # Terminal test not supported on ghcjs - QuickCheck = dontCheck super.QuickCheck; - - reflex = overrideCabal (drv: { - libraryHaskellDepends = (drv.libraryHaskellDepends or [ ]) ++ [ self.ghcjs-base ]; - }) super.reflex; - - reflex-dom = overrideCabal (drv: { - libraryHaskellDepends = removeLibraryHaskellDepends [ "jsaddle-webkit2gtk" ] ( - drv.libraryHaskellDepends or [ ] - ); - }) super.reflex-dom; - - # https://github.com/dreixel/syb/issues/21 - syb = dontCheck super.syb; - - # nodejs crashes during test - scientific = dontCheck super.scientific; - - # Tests use TH which gives error - tasty-quickcheck = dontCheck super.tasty-quickcheck; - - temporary = dontCheck super.temporary; - - # TODO: The tests have a TH error, which has been fixed in ghc - # https://gitlab.haskell.org/ghc/ghc/-/issues/15481 but somehow the issue is - # still present here https://github.com/glguy/th-abstraction/issues/53 - th-abstraction = dontCheck super.th-abstraction; - - # Need hedgehog for tests, which fails to compile due to dep on concurrent-output - zenc = dontCheck super.zenc; - - hspec = self.hspec_2_7_10; - hspec-core = self.hspec-core_2_7_10; - hspec-meta = self.hspec-meta_2_7_8; - hspec-discover = self.hspec-discover_2_7_10; - - # ReferenceError: h$primop_ShrinkSmallMutableArrayOp_Char is not defined - unordered-containers = dontCheck super.unordered-containers; - - # Without this revert, test suites using tasty fail with: - # ReferenceError: h$getMonotonicNSec is not defined - # https://github.com/UnkindPartition/tasty/pull/345#issuecomment-1538216407 - tasty = appendPatch (pkgs.fetchpatch { - name = "tasty-ghcjs.patch"; - url = "https://github.com/UnkindPartition/tasty/commit/e692065642fd09b82acccea610ad8f49edd207df.patch"; - revert = true; - relative = "core"; - hash = "sha256-ryABU2ywkVOEPC/jWv8humT3HaRpCwMYEk+Ux3hhi/M="; - }) super.tasty; - - # Tests take unacceptably long. - vector = dontCheck super.vector; -} diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml index ceee0bd7dd19..30bd6c8aa652 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml @@ -40,12 +40,8 @@ default-package-overrides: # keep-sorted start skip_lines=1 case=no numeric=yes extra-packages: - - aeson < 2 # required by pantry-0.5.2 - algebraic-graphs < 0.7 # 2023-08-14: Needed for building weeder < 2.6.0 - - ansi-terminal < 1.1 # 2025-02-27: required for ghcjs - - ansi-terminal-types == 0.11.5 # 2025-02-27: required for ghcjs - - ansi-wl-pprint >= 0.6 && < 0.7 # 2024-03-23: required for ghcjs - - apply-refact == 0.9.* # 2022-12-12: needed for GHC < 9.2 + - ansi-wl-pprint >= 0.6 && < 0.7 # 2025-07-07: used by gren <= 0.5.4 - attoparsec == 0.13.* # 2022-02-23: Needed to compile elm for now - Cabal == 3.2.* # Used for packages needing newer Cabal on ghc 8.6 and 8.8 - Cabal == 3.10.* @@ -83,7 +79,6 @@ extra-packages: - ghc-tags == 1.5.* # 2023-02-18: preserve for ghc-lib == 9.2.* - ghc-tags == 1.7.* # 2023-02-18: preserve for ghc-lib == 9.6.* - ghc-tags == 1.8.* # 2023-02-18: preserve for ghc-lib == 9.8.* - - happy == 1.19.12 # for ghcjs - happy == 1.20.* # for ghc-lib-parser == 9.6.* - hashable < 1.5 # 2025-07-30: hashable >= 1.5 requires GHC >= 9.6 - hasql < 1.7 # 2025-01-19: Needed for building postgrest @@ -94,17 +89,12 @@ extra-packages: - hasql-transaction < 1.1.1 # 2025-01-19: Needed for building postgrest - hlint == 3.4.1 # 2022-09-21: preserve for ghc 8.10 - hlint == 3.6.* # 2025-04-14: needed for hls with ghc-lib-parser 9.6 - - hspec < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6 - - hspec-core < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6 - - hspec-discover < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6 - hspec-megaparsec == 2.2.0 # 2023-11-18: Latest version compatible with ghc 9.0 - - hspec-meta < 2.8 # 2022-12-07: Needed for elmPackages.elm / hspec-discover - language-javascript == 0.7.0.0 # required by purescript - lsp < 2.5 # 2024-07-08: need for koka - lsp == 2.1.* # 2024-02-28: need for dhall-lsp-server - lsp-types == 2.1.* # 2024-02-28: need for dhall-lsp-server and koka - network-run == 0.4.0 # 2024-10-20: for GHC 9.10/network == 3.1.* - - optparse-applicative < 0.16 # needed for niv-0.2.19 - ormolu == 0.5.2.0 # 2023-08-08: preserve for ghc 9.0 - ormolu == 0.7.2.0 # 2023-11-13: for ghc-lib-parser 9.6 compat - ormolu == 0.7.7.0 # 2025-01-27: for ghc 9.10 compat diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix index 8bdc57955dd4..5597d9d4a7b4 100644 --- a/pkgs/development/haskell-modules/configuration-nix.nix +++ b/pkgs/development/haskell-modules/configuration-nix.nix @@ -655,15 +655,9 @@ builtins.intersectAttrs super { tasty = overrideCabal (drv: { libraryHaskellDepends = (drv.libraryHaskellDepends or [ ]) - ++ - lib.optionals - ( - !(pkgs.stdenv.hostPlatform.isAarch64 || pkgs.stdenv.hostPlatform.isx86_64) - || (self.ghc.isGhcjs or false) - ) - [ - self.unbounded-delays - ]; + ++ lib.optionals (!(pkgs.stdenv.hostPlatform.isAarch64 || pkgs.stdenv.hostPlatform.isx86_64)) [ + self.unbounded-delays + ]; }) super.tasty; tasty-discover = overrideCabal (drv: { diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix index cfdb273f696a..2724a78f692f 100644 --- a/pkgs/development/haskell-modules/generic-builder.nix +++ b/pkgs/development/haskell-modules/generic-builder.nix @@ -16,13 +16,6 @@ let isCross = stdenv.buildPlatform != stdenv.hostPlatform; - # Note that ghc.isGhcjs != stdenv.hostPlatform.isGhcjs. - # ghc.isGhcjs implies that we are using ghcjs, a project separate from GHC. - # (mere) stdenv.hostPlatform.isGhcjs means that we are using GHC's JavaScript - # backend. The latter is a normal cross compilation backend and needs little - # special accommodation. - outputsJS = ghc.isGhcjs or false || stdenv.hostPlatform.isGhcjs; - # Pass the "wrong" C compiler rather than none at all so packages that just # use the C preproccessor still work, see # https://github.com/haskell/cabal/issues/6466 for details. @@ -47,7 +40,7 @@ in { pname, - dontStrip ? outputsJS, + dontStrip ? stdenv.hostPlatform.isGhcjs, version, revision ? null, sha256 ? null, @@ -80,7 +73,7 @@ in doHaddockQuickjump ? doHoogle, doInstallIntermediates ? false, editedCabalFile ? null, - enableLibraryProfiling ? !outputsJS, + enableLibraryProfiling ? !stdenv.hostPlatform.isGhcjs, enableExecutableProfiling ? false, profilingDetail ? "exported-functions", # TODO enable shared libs for cross-compiling @@ -90,7 +83,7 @@ in && (ghc.enableShared or false) && !stdenv.hostPlatform.useAndroidPrebuilt, # TODO: figure out why /build leaks into RPATH enableDeadCodeElimination ? (!stdenv.hostPlatform.isDarwin), # TODO: use -dead_strip for darwin - # Disabling this for ghcjs prevents this crash: https://gitlab.haskell.org/ghc/ghc/-/issues/23235 + # Disabling this for JS prevents this crash: https://gitlab.haskell.org/ghc/ghc/-/issues/23235 enableStaticLibraries ? !(stdenv.hostPlatform.isWindows || stdenv.hostPlatform.isWasm || stdenv.hostPlatform.isGhcjs), enableHsc2hsViaAsm ? stdenv.hostPlatform.isWindows, @@ -228,13 +221,12 @@ let optionalAttrs ; - isGhcjs = ghc.isGhcjs or false; isHaLVM = ghc.isHaLVM or false; # GHC used for building Setup.hs # # Same as our GHC, unless we're cross, in which case it is native GHC with the - # same version, or ghcjs, in which case its the ghc used to build ghcjs. + # same version. nativeGhc = buildHaskellPackages.ghc; # the target dir for haddock documentation @@ -358,9 +350,6 @@ let (enableFeature (!dontStrip) "library-stripping") (enableFeature (!dontStrip) "executable-stripping") ] - ++ optionals isGhcjs [ - "--ghcjs" - ] ++ optionals isCross ( [ "--configure-option=--host=${stdenv.hostPlatform.config}" @@ -490,7 +479,7 @@ let setupCommand = "./Setup"; - ghcCommand' = if isGhcjs then "ghcjs" else "ghc"; + ghcCommand' = "ghc"; ghcCommand = "${ghc.targetPrefix}${ghcCommand'}"; ghcNameWithPrefix = "${ghc.targetPrefix}${ghc.haskellCompilerName}"; @@ -519,9 +508,7 @@ let intermediatesDir = "share/haskell/${ghc.version}/${pname}-${version}/dist"; - # On old ghcjs, the jsexe directories are the output but on the js backend they seem to be treated as intermediates jsexe = rec { - shouldUseNode = isGhcjs; shouldAdd = stdenv.hostPlatform.isGhcjs && isExecutable; shouldCopy = shouldAdd && !doInstallIntermediates; shouldSymlink = shouldAdd && doInstallIntermediates; @@ -849,15 +836,7 @@ lib.fix ( '' } - ${optionalString jsexe.shouldUseNode '' - for exeDir in "${binDir}/"*.jsexe; do - exe="''${exeDir%.jsexe}" - printWords '#!${nodejs}/bin/node' > "$exe" - echo >> "$exe" - cat "$exeDir/all.js" >> "$exe" - chmod +x "$exe" - done - ''} + ${optionalString doCoverage "mkdir -p $out/share && cp -r dist/hpc $out/share"} ${optionalString jsexe.shouldCopy '' diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index a61bd78756c8..bd4f83874c9b 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -53733,121 +53733,6 @@ self: { } ) { }; - "aeson_1_5_6_0" = callPackage ( - { - mkDerivation, - attoparsec, - base, - base-compat, - base-compat-batteries, - base-orphans, - base16-bytestring, - bytestring, - containers, - data-fix, - deepseq, - Diff, - directory, - dlist, - filepath, - generic-deriving, - ghc-prim, - hashable, - hashable-time, - integer-logarithms, - primitive, - QuickCheck, - quickcheck-instances, - scientific, - strict, - tagged, - tasty, - tasty-golden, - tasty-hunit, - tasty-quickcheck, - template-haskell, - text, - th-abstraction, - these, - time, - time-compat, - unordered-containers, - uuid-types, - vector, - }: - mkDerivation { - pname = "aeson"; - version = "1.5.6.0"; - sha256 = "1s5z4bgb5150h6a4cjf5vh8dmyrn6ilh29gh05999v6jwd5w6q83"; - revision = "7"; - editedCabalFile = "1qbsyy605hlfh7wfj3q33yx0xmb4n81z6h0y99x7khyxmy0plqbf"; - libraryHaskellDepends = [ - attoparsec - base - base-compat-batteries - bytestring - containers - data-fix - deepseq - dlist - ghc-prim - hashable - primitive - scientific - strict - tagged - template-haskell - text - th-abstraction - these - time - time-compat - unordered-containers - uuid-types - vector - ]; - testHaskellDepends = [ - attoparsec - base - base-compat - base-orphans - base16-bytestring - bytestring - containers - data-fix - Diff - directory - dlist - filepath - generic-deriving - ghc-prim - hashable - hashable-time - integer-logarithms - QuickCheck - quickcheck-instances - scientific - strict - tagged - tasty - tasty-golden - tasty-hunit - tasty-quickcheck - template-haskell - text - these - time - time-compat - unordered-containers - uuid-types - vector - ]; - description = "Fast JSON parsing and encoding"; - license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - } - ) { }; - "aeson" = callPackage ( { mkDerivation, @@ -76775,30 +76660,6 @@ self: { } ) { }; - "ansi-terminal_1_0_2" = callPackage ( - { - mkDerivation, - ansi-terminal-types, - base, - colour, - }: - mkDerivation { - pname = "ansi-terminal"; - version = "1.0.2"; - sha256 = "0d6qm3ph6drim7g81yx46nmgspxsf4nnr2d91fa0fy3cyv5idra6"; - isLibrary = true; - isExecutable = true; - libraryHaskellDepends = [ - ansi-terminal-types - base - colour - ]; - description = "Simple ANSI terminal support"; - license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - } - ) { }; - "ansi-terminal" = callPackage ( { mkDerivation, @@ -76904,28 +76765,6 @@ self: { } ) { }; - "ansi-terminal-types_0_11_5" = callPackage ( - { - mkDerivation, - base, - colour, - }: - mkDerivation { - pname = "ansi-terminal-types"; - version = "0.11.5"; - sha256 = "1lgxnhnzgk4mwlnh8zdgx8w8pa4q4n140mvd1880acgli41j6yxz"; - revision = "1"; - editedCabalFile = "02mhl78kmjfa0h22khcjdaaxyvanv717rb2mi3l0jiawv7gl117p"; - libraryHaskellDepends = [ - base - colour - ]; - description = "Types and functions used to represent SGR aspects"; - license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - } - ) { }; - "ansi-terminal-types" = callPackage ( { mkDerivation, @@ -80926,101 +80765,6 @@ self: { } ) { }; - "apply-refact_0_9_3_0" = callPackage ( - { - mkDerivation, - base, - containers, - directory, - extra, - filemanip, - filepath, - ghc, - ghc-boot-th, - ghc-exactprint, - optparse-applicative, - process, - refact, - silently, - syb, - tasty, - tasty-expected-failure, - tasty-golden, - transformers, - uniplate, - unix-compat, - }: - mkDerivation { - pname = "apply-refact"; - version = "0.9.3.0"; - sha256 = "1sn5g71sx8xa4ggyk49m661iip6zrzl65vb87l16l31kf79bbm7w"; - revision = "1"; - editedCabalFile = "0hgdjm6ydfc29d922h1cpwrch61r5qchzrw21dz80kdry53qxl5q"; - isLibrary = true; - isExecutable = true; - libraryHaskellDepends = [ - base - containers - directory - extra - filemanip - ghc - ghc-boot-th - ghc-exactprint - process - refact - syb - transformers - uniplate - unix-compat - ]; - executableHaskellDepends = [ - base - containers - directory - extra - filemanip - filepath - ghc - ghc-boot-th - ghc-exactprint - optparse-applicative - process - refact - syb - transformers - uniplate - unix-compat - ]; - testHaskellDepends = [ - base - containers - directory - extra - filemanip - filepath - ghc - ghc-boot-th - ghc-exactprint - optparse-applicative - process - refact - silently - syb - tasty - tasty-expected-failure - tasty-golden - transformers - uniplate - unix-compat - ]; - description = "Perform refactorings specified by the refact library"; - license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - mainProgram = "refactor"; - } - ) { }; - "apply-refact" = callPackage ( { mkDerivation, @@ -296400,41 +296144,6 @@ self: { } ) { }; - "happy_1_19_12" = callPackage ( - { - mkDerivation, - array, - base, - containers, - mtl, - process, - }: - mkDerivation { - pname = "happy"; - version = "1.19.12"; - sha256 = "03xlmq6qmdx4zvzw8bp33kd9g7yvcq5cz4wg50xilw812kj276pv"; - revision = "1"; - editedCabalFile = "13wydw1mmdry4l9r63vxjk4h55ci9hgwzn1a842qqk1m2rb4xiln"; - isLibrary = false; - isExecutable = true; - enableSeparateDataOutput = true; - executableHaskellDepends = [ - array - base - containers - mtl - ]; - testHaskellDepends = [ - base - process - ]; - description = "Happy is a parser generator for Haskell"; - license = lib.licenses.bsd2; - hydraPlatforms = lib.platforms.none; - mainProgram = "happy"; - } - ) { }; - "happy_1_20_1_1" = callPackage ( { mkDerivation, @@ -352068,32 +351777,6 @@ self: { } ) { }; - "hspec_2_7_10" = callPackage ( - { - mkDerivation, - base, - hspec-core, - hspec-discover, - hspec-expectations, - QuickCheck, - }: - mkDerivation { - pname = "hspec"; - version = "2.7.10"; - sha256 = "0z0lwrmrqkglr78n6k2c36n4h68142bh785ys0x4jaibjshvs6rw"; - libraryHaskellDepends = [ - base - hspec-core - hspec-discover - hspec-expectations - QuickCheck - ]; - description = "A Testing Framework for Haskell"; - license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - } - ) { }; - "hspec" = callPackage ( { mkDerivation, @@ -352290,90 +351973,6 @@ self: { } ) { }; - "hspec-core_2_7_10" = callPackage ( - { - mkDerivation, - ansi-terminal, - array, - base, - call-stack, - clock, - deepseq, - directory, - filepath, - hspec-expectations, - hspec-meta, - HUnit, - process, - QuickCheck, - quickcheck-io, - random, - setenv, - silently, - stm, - temporary, - tf-random, - transformers, - }: - mkDerivation { - pname = "hspec-core"; - version = "2.7.10"; - sha256 = "12k9yp5gznrda449ir60d5wv3xl7nnyffkb5mhfc0svw9f8lxlv1"; - revision = "2"; - editedCabalFile = "0l16mgxgapnihrvbwvhbz9i60v5fx68mhpv6zww9b68bdj6cpbsk"; - libraryHaskellDepends = [ - ansi-terminal - array - base - call-stack - clock - deepseq - directory - filepath - hspec-expectations - HUnit - QuickCheck - quickcheck-io - random - setenv - stm - tf-random - transformers - ]; - testHaskellDepends = [ - ansi-terminal - array - base - call-stack - clock - deepseq - directory - filepath - hspec-expectations - hspec-meta - HUnit - process - QuickCheck - quickcheck-io - random - setenv - silently - stm - temporary - tf-random - transformers - ]; - testToolDepends = [ hspec-meta ]; - testFlags = [ - "--skip" - "'Test.Hspec.Core.Runner.hspecResult runs specs in parallel'" - ]; - description = "A Testing Framework for Haskell"; - license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - } - ) { }; - "hspec-core" = callPackage ( { mkDerivation, @@ -352504,47 +352103,6 @@ self: { } ) { }; - "hspec-discover_2_7_10" = callPackage ( - { - mkDerivation, - base, - directory, - filepath, - hspec-meta, - QuickCheck, - }: - mkDerivation { - pname = "hspec-discover"; - version = "2.7.10"; - sha256 = "13yzvd3b679skvs1insk4s0wc4zvmz6hs38kc8q0j6vzqq06smqa"; - isLibrary = true; - isExecutable = true; - libraryHaskellDepends = [ - base - directory - filepath - ]; - executableHaskellDepends = [ - base - directory - filepath - ]; - testHaskellDepends = [ - base - directory - filepath - hspec-meta - QuickCheck - ]; - testToolDepends = [ hspec-meta ]; - description = "Automatically discover and run Hspec tests"; - license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - mainProgram = "hspec-discover"; - maintainers = [ lib.maintainers.maralorn ]; - } - ) { }; - "hspec-discover" = callPackage ( { mkDerivation, @@ -353242,72 +352800,6 @@ self: { } ) { }; - "hspec-meta_2_7_8" = callPackage ( - { - mkDerivation, - ansi-terminal, - array, - base, - call-stack, - clock, - deepseq, - directory, - filepath, - QuickCheck, - quickcheck-io, - random, - setenv, - stm, - time, - transformers, - }: - mkDerivation { - pname = "hspec-meta"; - version = "2.7.8"; - sha256 = "0sfj0n2hy1r8ifysgbcmfdygcd7vyzr13ldkcp0l2ml337f8j0si"; - isLibrary = true; - isExecutable = true; - libraryHaskellDepends = [ - ansi-terminal - array - base - call-stack - clock - deepseq - directory - filepath - QuickCheck - quickcheck-io - random - setenv - stm - time - transformers - ]; - executableHaskellDepends = [ - ansi-terminal - array - base - call-stack - clock - deepseq - directory - filepath - QuickCheck - quickcheck-io - random - setenv - stm - time - transformers - ]; - description = "A version of Hspec which is used to test Hspec itself"; - license = lib.licenses.mit; - hydraPlatforms = lib.platforms.none; - mainProgram = "hspec-meta-discover"; - } - ) { }; - "hspec-meta" = callPackage ( { mkDerivation, @@ -492321,41 +491813,6 @@ self: { } ) { }; - "optparse-applicative_0_15_1_0" = callPackage ( - { - mkDerivation, - ansi-wl-pprint, - base, - bytestring, - process, - QuickCheck, - transformers, - transformers-compat, - }: - mkDerivation { - pname = "optparse-applicative"; - version = "0.15.1.0"; - sha256 = "1ws6y3b3f6hsgv0ff0yp6lw4hba1rps4dnvry3yllng0s5gngcsd"; - revision = "1"; - editedCabalFile = "0zmhqkd96v2z1ilhqdkd9z4jgsnsxb8yi2479ind8m5zm9363zr9"; - libraryHaskellDepends = [ - ansi-wl-pprint - base - process - transformers - transformers-compat - ]; - testHaskellDepends = [ - base - bytestring - QuickCheck - ]; - description = "Utilities and combinators for parsing command line options"; - license = lib.licenses.bsd3; - hydraPlatforms = lib.platforms.none; - } - ) { }; - "optparse-applicative" = callPackage ( { mkDerivation, diff --git a/pkgs/development/haskell-modules/hoogle.nix b/pkgs/development/haskell-modules/hoogle.nix index d20fc0f2978c..1ec268e78c36 100644 --- a/pkgs/development/haskell-modules/hoogle.nix +++ b/pkgs/development/haskell-modules/hoogle.nix @@ -23,18 +23,9 @@ let packages = selectPackages haskellPackages; wrapper = ./hoogle-local-wrapper.sh; - isGhcjs = ghc.isGhcjs or false; - opts = lib.optionalString; - haddockExe = if !isGhcjs then "haddock" else "haddock-ghcjs"; - ghcDocLibDir = if !isGhcjs then ghc.doc + "/share/doc/ghc*/html/libraries" else ghc + "/doc/lib"; - # On GHCJS, use a stripped down version of GHC's prologue.txt - prologue = - if !isGhcjs then - "${ghcDocLibDir}/prologue.txt" - else - writeText "ghcjs-prologue.txt" '' - This index includes documentation for many Haskell modules. - ''; + haddockExe = "haddock"; + ghcDocLibDir = ghc.doc + "/share/doc/ghc*/html/libraries"; + prologue = "${ghcDocLibDir}/prologue.txt"; docPackages = lib.closePropagation @@ -84,7 +75,6 @@ buildPackages.stdenv.mkDerivation (finalAttrs: { echo importing builtin packages for docdir in ${ghcDocLibDir}"/"*; do name="$(basename $docdir)" - ${opts isGhcjs ''docdir="$docdir/html"''} if [[ -d $docdir ]]; then ln -sfn $docdir $out/share/doc/hoogle/$name fi diff --git a/pkgs/development/haskell-modules/lib/compose.nix b/pkgs/development/haskell-modules/lib/compose.nix index d3b0a215fa90..30cac6779ff7 100644 --- a/pkgs/development/haskell-modules/lib/compose.nix +++ b/pkgs/development/haskell-modules/lib/compose.nix @@ -572,36 +572,6 @@ rec { # nix-shell evaluation, return a nix-shell optimized environment. shellAware = p: if lib.inNixShell then p.env else p; - ghcInfo = ghc: rec { - isCross = (ghc.cross or null) != null; - isGhcjs = ghc.isGhcjs or false; - nativeGhc = if isCross || isGhcjs then ghc.bootPkgs.ghc else ghc; - }; - - ### mkDerivation helpers - # These allow external users of a haskell package to extract - # information about how it is built in the same way that the - # generic haskell builder does, by reusing the same functions. - # Each function here has the same interface as mkDerivation and thus - # can be called for a given package simply by overriding the - # mkDerivation argument it used. See getHaskellBuildInputs above for - # an example of this. - - # Some information about which phases should be run. - controlPhases = - ghc: - let - inherit (ghcInfo ghc) isCross; - in - { - doCheck ? !isCross, - doBenchmark ? false, - ... - }: - { - inherit doCheck doBenchmark; - }; - # Utility to convert a directory full of `cabal2nix`-generated files into a # package override set # diff --git a/pkgs/development/haskell-modules/lib/default.nix b/pkgs/development/haskell-modules/lib/default.nix index dc34f30a810e..b544c80db937 100644 --- a/pkgs/development/haskell-modules/lib/default.nix +++ b/pkgs/development/haskell-modules/lib/default.nix @@ -333,20 +333,6 @@ rec { # nix-shell evaluation, return a nix-shell optimized environment. shellAware = compose.shellAware; - ghcInfo = compose.ghcInfo; - - ### mkDerivation helpers - # These allow external users of a haskell package to extract - # information about how it is built in the same way that the - # generic haskell builder does, by reusing the same functions. - # Each function here has the same interface as mkDerivation and thus - # can be called for a given package simply by overriding the - # mkDerivation argument it used. See getHaskellBuildInputs above for - # an example of this. - - # Some information about which phases should be run. - controlPhases = compose.controlPhases; - # Utility to convert a directory full of `cabal2nix`-generated files into a # package override set # diff --git a/pkgs/development/haskell-modules/with-packages-wrapper.nix b/pkgs/development/haskell-modules/with-packages-wrapper.nix index 53aa70266194..6fb552d22c75 100644 --- a/pkgs/development/haskell-modules/with-packages-wrapper.nix +++ b/pkgs/development/haskell-modules/with-packages-wrapper.nix @@ -13,7 +13,6 @@ installDocumentation ? true, hoogleWithPackages, postBuild ? "", - ghcLibdir ? null, # only used by ghcjs, when resolving plugins }: # This argument is a function which selects a list of Haskell packages from any @@ -51,9 +50,8 @@ let packages = selectPackages haskellPackages ++ [ hoogleWithPackages' ]; - isGhcjs = ghc.isGhcjs or false; isHaLVM = ghc.isHaLVM or false; - ghcCommand' = if isGhcjs then "ghcjs" else "ghc"; + ghcCommand' = "ghc"; ghcCommand = "${ghc.targetPrefix}${ghcCommand'}"; ghcCommandCaps = lib.toUpper ghcCommand'; libDir = @@ -77,8 +75,6 @@ let ); in -assert ghcLibdir != null -> (ghc.isGhcjs or false); - if paths == [ ] && !useLLVM then ghc else @@ -101,9 +97,6 @@ else --set "NIX_${ghcCommandCaps}PKG" "$out/bin/${ghcCommand}-pkg" \ --set "NIX_${ghcCommandCaps}_DOCDIR" "${docDir}" \ --set "NIX_${ghcCommandCaps}_LIBDIR" "${libDir}" \ - ${ - lib.optionalString (ghc.isGhcjs or false) ''--set NODE_PATH "${ghc.socket-io}/lib/node_modules"'' - } \ ${lib.optionalString useLLVM ''--prefix "PATH" ":" "${llvm}"''} fi done @@ -136,39 +129,37 @@ else fi '' - + (lib.optionalString (stdenv.targetPlatform.isDarwin && !isGhcjs && !stdenv.targetPlatform.isiOS) - '' - # Work around a linker limit in macOS Sierra (see generic-builder.nix): - local packageConfDir="${packageCfgDir}"; - local dynamicLinksDir="$out/lib/links"; - mkdir -p $dynamicLinksDir - # Clean up the old links that may have been (transitively) included by - # symlinkJoin: - rm -f $dynamicLinksDir/* + + (lib.optionalString (stdenv.targetPlatform.isDarwin && !stdenv.targetPlatform.isiOS) '' + # Work around a linker limit in macOS Sierra (see generic-builder.nix): + local packageConfDir="${packageCfgDir}"; + local dynamicLinksDir="$out/lib/links"; + mkdir -p $dynamicLinksDir + # Clean up the old links that may have been (transitively) included by + # symlinkJoin: + rm -f $dynamicLinksDir/* - dynamicLibraryDirs=() + dynamicLibraryDirs=() - for pkg in $($out/bin/ghc-pkg list --simple-output); do - dynamicLibraryDirs+=($($out/bin/ghc-pkg --simple-output field "$pkg" dynamic-library-dirs)) - done + for pkg in $($out/bin/ghc-pkg list --simple-output); do + dynamicLibraryDirs+=($($out/bin/ghc-pkg --simple-output field "$pkg" dynamic-library-dirs)) + done - for dynamicLibraryDir in $(echo "''${dynamicLibraryDirs[@]}" | tr ' ' '\n' | sort -u); do - echo "Linking $dynamicLibraryDir/*.dylib from $dynamicLinksDir" - find "$dynamicLibraryDir" -name '*.dylib' -exec ln -s {} "$dynamicLinksDir" \; - done + for dynamicLibraryDir in $(echo "''${dynamicLibraryDirs[@]}" | tr ' ' '\n' | sort -u); do + echo "Linking $dynamicLibraryDir/*.dylib from $dynamicLinksDir" + find "$dynamicLibraryDir" -name '*.dylib' -exec ln -s {} "$dynamicLinksDir" \; + done - for f in $packageConfDir/*.conf; do - # Initially, $f is a symlink to a read-only file in one of the inputs - # (as a result of this symlinkJoin derivation). - # Replace it with a copy whose dynamic-library-dirs points to - # $dynamicLinksDir - cp $f $f-tmp - rm $f - sed "N;s,dynamic-library-dirs:\s*.*\n,dynamic-library-dirs: $dynamicLinksDir\n," $f-tmp > $f - rm $f-tmp - done - '' - ) + for f in $packageConfDir/*.conf; do + # Initially, $f is a symlink to a read-only file in one of the inputs + # (as a result of this symlinkJoin derivation). + # Replace it with a copy whose dynamic-library-dirs points to + # $dynamicLinksDir + cp $f $f-tmp + rm $f + sed "N;s,dynamic-library-dirs:\s*.*\n,dynamic-library-dirs: $dynamicLinksDir\n," $f-tmp > $f + rm $f-tmp + done + '') + '' ${lib.optionalString hasLibraries '' # GHC 8.10 changes. @@ -182,14 +173,6 @@ else $out/bin/${ghcCommand}-pkg recache ''} - ${ - # ghcjs will read the ghc_libdir file when resolving plugins. - lib.optionalString (isGhcjs && ghcLibdir != null) '' - mkdir -p "${libDir}" - rm -f "${libDir}/ghc_libdir" - printf '%s' '${ghcLibdir}' > "${libDir}/ghc_libdir" - '' - } $out/bin/${ghcCommand}-pkg check '' + postBuild; diff --git a/pkgs/development/libraries/science/electronics/qcsxcad/default.nix b/pkgs/development/libraries/science/electronics/qcsxcad/default.nix deleted file mode 100644 index 25d739f739de..000000000000 --- a/pkgs/development/libraries/science/electronics/qcsxcad/default.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ - lib, - mkDerivation, - fetchFromGitHub, - cmake, - csxcad, - tinyxml, - vtkWithQt5, - qtbase, -}: - -mkDerivation { - pname = "qcsxcad"; - version = "unstable-2023-01-06"; - - src = fetchFromGitHub { - owner = "thliebig"; - repo = "QCSXCAD"; - rev = "1cde9d560a5000f4c24c249d2dd5ccda12de38b6"; - hash = "sha256-kc9Vnx6jGiQC2K88ZH00b61D/DbWxAIZZwYCsINqtrY="; - }; - - outputs = [ - "out" - "dev" - ]; - - nativeBuildInputs = [ - cmake - ]; - - cmakeFlags = [ - "-DCSXCAD_ROOT_DIR=${csxcad}" - "-DENABLE_RPATH=OFF" - ]; - - buildInputs = [ - csxcad - tinyxml - vtkWithQt5 - qtbase - ]; - - meta = with lib; { - description = "Qt library for CSXCAD"; - homepage = "https://github.com/thliebig/QCSXCAD"; - license = licenses.gpl3; - maintainers = with maintainers; [ matthuszagh ]; - platforms = platforms.linux; - }; -} diff --git a/pkgs/development/libraries/webkitgtk/default.nix b/pkgs/development/libraries/webkitgtk/default.nix index 9cf22fd7544c..a2d94efe3b5a 100644 --- a/pkgs/development/libraries/webkitgtk/default.nix +++ b/pkgs/development/libraries/webkitgtk/default.nix @@ -80,7 +80,7 @@ # https://webkitgtk.org/2024/10/04/webkitgtk-2.46.html recommends building with clang. clangStdenv.mkDerivation (finalAttrs: { pname = "webkitgtk"; - version = "2.48.5"; + version = "2.48.6"; name = "${finalAttrs.pname}-${finalAttrs.version}+abi=${ if lib.versionAtLeast gtk3.version "4.0" then "6.0" @@ -100,7 +100,7 @@ clangStdenv.mkDerivation (finalAttrs: { src = fetchurl { url = "https://webkitgtk.org/releases/webkitgtk-${finalAttrs.version}.tar.xz"; - hash = "sha256-u2TtnRz9WOi16JzK1x3TGt/tVjNrrXaVAxrQtmjhmHw="; + hash = "sha256-2awwNLejnCqqVn5hErMSSxWOWRp0Q55Gl0oDHdDkTiQ="; }; patches = lib.optionals clangStdenv.hostPlatform.isLinux [ diff --git a/pkgs/development/python-modules/aioboto3/default.nix b/pkgs/development/python-modules/aioboto3/default.nix index 157aae9026e0..f11a8f308862 100644 --- a/pkgs/development/python-modules/aioboto3/default.nix +++ b/pkgs/development/python-modules/aioboto3/default.nix @@ -16,14 +16,14 @@ buildPythonPackage rec { pname = "aioboto3"; - version = "15.0.0"; + version = "15.1.0"; pyproject = true; src = fetchFromGitHub { owner = "terricain"; repo = "aioboto3"; tag = "v${version}"; - hash = "sha256-Z4tUwTFaXC3BGUKc1FPY0xoaUViAEiZNeP5REWotw2M="; + hash = "sha256-H/hAfFyBfeBoR6nW0sv3/AzFPATUl2uJ+JbzNB5xemo="; }; # https://github.com/terricain/aioboto3/pull/377 diff --git a/pkgs/development/python-modules/ansible/core.nix b/pkgs/development/python-modules/ansible/core.nix index db257a1a51db..4322c9f6a58c 100644 --- a/pkgs/development/python-modules/ansible/core.nix +++ b/pkgs/development/python-modules/ansible/core.nix @@ -32,6 +32,8 @@ buildPythonPackage rec { pname = "ansible-core"; + # IMPORTANT: When bumping the minor version (2.XX.0 - the XX), please update pinned package in pkgs/top-level/all-packages.nix + # There are pinned packages called ansible_2_XX, create a new one with the previous minor version and then update the version here version = "2.19.1"; pyproject = true; diff --git a/pkgs/development/python-modules/chalice/default.nix b/pkgs/development/python-modules/chalice/default.nix index 8d340ebad5b6..07eaeea56bd6 100644 --- a/pkgs/development/python-modules/chalice/default.nix +++ b/pkgs/development/python-modules/chalice/default.nix @@ -8,11 +8,9 @@ hypothesis, inquirer, jmespath, - mock, mypy-extensions, pip, - pytest7CheckHook, - pythonOlder, + pytestCheckHook, pyyaml, requests, setuptools, @@ -25,44 +23,33 @@ buildPythonPackage rec { pname = "chalice"; - version = "1.28.0"; - format = "setuptools"; - - disabled = pythonOlder "3.7"; + version = "1.32.0"; + pyproject = true; src = fetchFromGitHub { owner = "aws"; repo = "chalice"; tag = version; - hash = "sha256-m3pSD4fahBW6Yt/w07Co4fTZD7k6as5cPwoK5QSry6M="; + hash = "sha256-7qmE78aFfq9XCl2zcx1dAVKZZb96Bu47tSW1Qp2vFl4="; }; - postPatch = '' - substituteInPlace setup.py \ - --replace "inquirer>=2.7.0,<3.0.0" "inquirer" \ - --replace "pip>=9,<23.1" "pip" \ - ''; + build-system = [ setuptools ]; - propagatedBuildInputs = [ - attrs + dependencies = [ botocore click inquirer jmespath - mypy-extensions pip pyyaml setuptools six - typing-extensions wheel - watchdog ]; nativeCheckInputs = [ hypothesis - mock - pytest7CheckHook + pytestCheckHook requests websocket-client ]; @@ -88,9 +75,6 @@ buildPythonPackage rec { # Don't build "test_can_generate_pipeline_for_all" "test_build_wheel" - # https://github.com/aws/chalice/issues/1850 - "test_resolve_endpoint" - "test_endpoint_from_arn" # Tests require dist "test_setup_tar_gz_hyphens_in_name" "test_both_tar_gz" @@ -103,7 +87,7 @@ buildPythonPackage rec { description = "Python Serverless Microframework for AWS"; mainProgram = "chalice"; homepage = "https://github.com/aws/chalice"; - changelog = "https://github.com/aws/chalice/blob/${version}/CHANGELOG.rst"; + changelog = "https://github.com/aws/chalice/blob/${src.tag}/CHANGELOG.md"; license = licenses.asl20; maintainers = [ ]; }; diff --git a/pkgs/development/python-modules/cyclopts/default.nix b/pkgs/development/python-modules/cyclopts/default.nix index 886923113b9f..ef4e3fdcbda9 100644 --- a/pkgs/development/python-modules/cyclopts/default.nix +++ b/pkgs/development/python-modules/cyclopts/default.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "cyclopts"; - version = "3.22.5"; + version = "3.23.1"; pyproject = true; disabled = pythonOlder "3.12"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "BrianPugh"; repo = "cyclopts"; tag = "v${version}"; - hash = "sha256-Jts60OLapLBM9tZCPd9OtRgqyrQveUVDHTIz302cCrI="; + hash = "sha256-qKQcx38b/GfFvJHXToLGkszBf5inRLfZTvcCX0MCaYk="; }; build-system = [ diff --git a/pkgs/development/python-modules/internetarchive/default.nix b/pkgs/development/python-modules/internetarchive/default.nix index 7eb9b38878db..e1a5cd92132b 100644 --- a/pkgs/development/python-modules/internetarchive/default.nix +++ b/pkgs/development/python-modules/internetarchive/default.nix @@ -16,7 +16,7 @@ buildPythonPackage rec { pname = "internetarchive"; - version = "5.5.0"; + version = "5.5.1"; pyproject = true; disabled = pythonOlder "3.9"; @@ -25,7 +25,7 @@ buildPythonPackage rec { owner = "jjjake"; repo = "internetarchive"; tag = "v${version}"; - hash = "sha256-jGzY/m7FpQPobyUaftsTQ0YX/sc6/s0xCVsMAK10ZSk="; + hash = "sha256-Og0EPdaxu4etWj+9WPSyAHlz/BNUanu2gf+6k4FzN90="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/llama-index-vector-stores-qdrant/default.nix b/pkgs/development/python-modules/llama-index-vector-stores-qdrant/default.nix index b77fe1aeee91..55f8ee2cb592 100644 --- a/pkgs/development/python-modules/llama-index-vector-stores-qdrant/default.nix +++ b/pkgs/development/python-modules/llama-index-vector-stores-qdrant/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "llama-index-vector-stores-qdrant"; - version = "0.7.1"; + version = "0.8.3"; pyproject = true; disabled = pythonOlder "3.8"; @@ -19,7 +19,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "llama_index_vector_stores_qdrant"; inherit version; - hash = "sha256-1RpWHcWq0nDEu+1yNwzqkALkty0AOOxbRl9rzbZ7EhM="; + hash = "sha256-elou2rxBKMJq3XVV42C7bgXn7szz2JmEfSs6SJonOaU="; }; build-system = [ hatchling ]; diff --git a/pkgs/development/python-modules/lm-eval/default.nix b/pkgs/development/python-modules/lm-eval/default.nix index fa1830e3bd4d..5346109286e1 100644 --- a/pkgs/development/python-modules/lm-eval/default.nix +++ b/pkgs/development/python-modules/lm-eval/default.nix @@ -136,6 +136,8 @@ buildPythonPackage rec { # zeno, gptqmodel, japanese_leaderboard; all = [...]; }; + pythonRelaxDeps = [ "datasets" ]; + pythonImportsCheck = [ "lm_eval" ]; nativeCheckInputs = [ diff --git a/pkgs/development/python-modules/meshcore/default.nix b/pkgs/development/python-modules/meshcore/default.nix new file mode 100644 index 000000000000..9be5d1a5f0e9 --- /dev/null +++ b/pkgs/development/python-modules/meshcore/default.nix @@ -0,0 +1,41 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + + # build-system + hatchling, + + # dependencies + bleak, + pycayennelpp, + pyserial-asyncio, +}: + +buildPythonPackage rec { + pname = "meshcore"; + version = "2.1.5"; + pyproject = true; + + src = fetchPypi { + inherit pname version; + sha256 = "sha256-gXofzLmydfN0Shrrlbwk+6Rr2kARPqypP6+43rHZOJE="; + }; + + build-system = [ hatchling ]; + + dependencies = [ + bleak + pycayennelpp + pyserial-asyncio + ]; + + pythonImportsCheck = [ "meshcore" ]; + + meta = with lib; { + description = "Python library for communicating with meshcore companion radios"; + homepage = "https://github.com/meshcore-dev/meshcore_py"; + license = licenses.mit; + maintainers = [ maintainers.haylin ]; + }; +} diff --git a/pkgs/development/python-modules/nicegui/default.nix b/pkgs/development/python-modules/nicegui/default.nix index aba43f7c77cb..88cad8e856c3 100644 --- a/pkgs/development/python-modules/nicegui/default.nix +++ b/pkgs/development/python-modules/nicegui/default.nix @@ -42,14 +42,14 @@ buildPythonPackage rec { pname = "nicegui"; - version = "2.22.2"; + version = "2.24.0"; pyproject = true; src = fetchFromGitHub { owner = "zauberzeug"; repo = "nicegui"; tag = "v${version}"; - hash = "sha256-sxbQVMX7zN+sSKDzMzOpgt9WqNVF/yjOnKKzDFb3+So="; + hash = "sha256-1PRoaNj2c3z76IgN3NvL9BFtfeFJ2mUfQ6KGN85H7ps="; }; pythonRelaxDeps = [ "requests" ]; diff --git a/pkgs/development/python-modules/numbagg/default.nix b/pkgs/development/python-modules/numbagg/default.nix index 98b3eecc2e7b..2b0a92699a0c 100644 --- a/pkgs/development/python-modules/numbagg/default.nix +++ b/pkgs/development/python-modules/numbagg/default.nix @@ -21,7 +21,7 @@ }: buildPythonPackage rec { - version = "0.9.1"; + version = "0.9.2"; pname = "numbagg"; pyproject = true; @@ -29,7 +29,7 @@ buildPythonPackage rec { owner = "numbagg"; repo = "numbagg"; tag = "v${version}"; - hash = "sha256-IathtnmGlgug+u7AS1ulgf2462br5DdU3TJBDlBPf08="; + hash = "sha256-W5c0tZUggNyP9O+t9+S14nz9acR53cLIWaBwXJo1dcg="; }; build-system = [ diff --git a/pkgs/development/python-modules/pybrowsers/default.nix b/pkgs/development/python-modules/pybrowsers/default.nix index 4f1abf26d40e..256d7e566c93 100644 --- a/pkgs/development/python-modules/pybrowsers/default.nix +++ b/pkgs/development/python-modules/pybrowsers/default.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "pybrowsers"; - version = "1.3.0"; + version = "1.3.1"; pyproject = true; src = fetchFromGitHub { owner = "roniemartinez"; repo = "browsers"; tag = version; - hash = "sha256-GW5yuBc9lwGIUK/ZH4qHFXlA+wyMD6HdShq0A/ydb+k="; + hash = "sha256-yTEqqGbwvpNyY/lOs3wjmXngclxv3dOb7jzlmJKMwG0="; }; build-system = [ poetry-core ]; diff --git a/pkgs/development/python-modules/pyexploitdb/default.nix b/pkgs/development/python-modules/pyexploitdb/default.nix index c6d51422d8d7..153c6d9368ac 100644 --- a/pkgs/development/python-modules/pyexploitdb/default.nix +++ b/pkgs/development/python-modules/pyexploitdb/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "pyexploitdb"; - version = "0.2.95"; + version = "0.2.96"; pyproject = true; disabled = pythonOlder "3.7"; @@ -18,7 +18,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "pyExploitDb"; inherit version; - hash = "sha256-NBuFgOhD/b1ngJDWGeP3dhYx2G6McBi0ctCXWoP3cEQ="; + hash = "sha256-5STYqx0D6X6h6tJFCCrYVx3oYqlZwvmiuTrVLXsXWLM="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/pyrituals/default.nix b/pkgs/development/python-modules/pyrituals/default.nix index 06bb22893dbc..e883586840fe 100644 --- a/pkgs/development/python-modules/pyrituals/default.nix +++ b/pkgs/development/python-modules/pyrituals/default.nix @@ -3,35 +3,35 @@ aiohttp, buildPythonPackage, fetchFromGitHub, - pythonOlder, setuptools, }: buildPythonPackage rec { pname = "pyrituals"; - version = "0.0.6"; - format = "pyproject"; - disabled = pythonOlder "3.8"; + version = "0.0.7"; + pyproject = true; src = fetchFromGitHub { owner = "milanmeu"; repo = "pyrituals"; - rev = version; - sha256 = "0ynjz7khp67bwxjp580w3zijxr9yn44nmnbvkxjxq9scyb2mjf6g"; + tag = version; + hash = "sha256-nCyfwOONtpwRLFq3crRacmrWef6J3mOfKz4fvkOcb3g="; }; - nativeBuildInputs = [ setuptools ]; + build-system = [ setuptools ]; - propagatedBuildInputs = [ aiohttp ]; + dependencies = [ aiohttp ]; # Project has no tests doCheck = false; + pythonImportsCheck = [ "pyrituals" ]; meta = with lib; { description = "Python wrapper for the Rituals Perfume Genie API"; homepage = "https://github.com/milanmeu/pyrituals"; - license = with licenses; [ mit ]; + changelog = "https://github.com/milanmeu/pyrituals/releases/tag/${src.tag}"; + license = licenses.mit; maintainers = with maintainers; [ fab ]; }; } diff --git a/pkgs/development/python-modules/warp-lang/default.nix b/pkgs/development/python-modules/warp-lang/default.nix index a740b73ef614..44e418a13aaa 100644 --- a/pkgs/development/python-modules/warp-lang/default.nix +++ b/pkgs/development/python-modules/warp-lang/default.nix @@ -37,13 +37,13 @@ let effectiveStdenv = if cudaSupport then cudaPackages.backendStdenv else args.stdenv; stdenv = builtins.throw "Use effectiveStdenv instead of stdenv directly, as it may be replaced by cudaPackages.backendStdenv"; - version = "1.8.1"; + version = "1.9.0"; libmathdx = effectiveStdenv.mkDerivation (finalAttrs: { # NOTE: The version used should match the version Warp requires: # https://github.com/NVIDIA/warp/blob/${version}/deps/libmathdx-deps.packman.xml pname = "libmathdx"; - version = "0.2.2"; + version = "0.2.3"; outputs = [ "out" @@ -53,24 +53,27 @@ let src = let baseURL = "https://developer.download.nvidia.com/compute/cublasdx/redist/cublasdx"; + cudaMajorVersion = cudaPackages.cudaMajorVersion; # only 12, 13 supported + cudaVersion = "${cudaMajorVersion}.0"; # URL example: ${baseURL}/cuda12/${name}-${version}-cuda12.0.zip name = lib.concatStringsSep "-" [ finalAttrs.pname "Linux" effectiveStdenv.hostPlatform.parsed.cpu.name finalAttrs.version + "cuda${cudaVersion}" ]; # nix-hash --type sha256 --to-sri $(nix-prefetch-url "https://...") hashes = { - aarch64-linux = "sha256-uadBl2HTWIzpYyUxHqnLZtqq42v13KYXSOJXz0Wgtrk="; - x86_64-linux = "sha256-YU26l3q+HH1fyBD96oMrl+e96gmiC/krzJv6VJss3mY="; + aarch64-linux = "sha256-d/aBC+zU2ciaw3isv33iuviXYaLGLdVDdzynGk9SFck="; + x86_64-linux = "sha256-CHIH0s4SnA67COtHBkwVCajW/3f0VxNBmuDLXy4LFIg="; }; in lib.mapNullable ( hash: fetchurl { inherit hash name; - url = "${baseURL}/${name}.tar.gz"; + url = "${baseURL}/cuda${cudaMajorVersion}/${name}.tar.gz"; } ) (hashes.${effectiveStdenv.hostPlatform.system} or null); @@ -139,7 +142,7 @@ buildPythonPackage { owner = "NVIDIA"; repo = "warp"; tag = "v${version}"; - hash = "sha256-cSG8uncJMl4rbQ48L8XJY1Illr6usVX8no0jDhECwbo="; + hash = "sha256-OEg2mUsEdRKhgx0fIraqme4moKNh1RSdN7/yCT1V5+g="; }; patches = @@ -199,18 +202,6 @@ buildPythonPackage { '-lmathdx_static' \ '-lmathdx' '' - # Broken tests on aarch64. Since unittest doesn't support disabling a - # single test, and pytest isn't compatible, we patch the test file directly - # instead. - # - # See: https://github.com/NVIDIA/warp/issues/552 - + lib.optionalString effectiveStdenv.hostPlatform.isAarch64 '' - nixLog "patching $PWD/warp/tests/test_fem.py to disable broken tests on aarch64" - substituteInPlace "$PWD/warp/tests/test_fem.py" \ - --replace-fail \ - 'add_function_test(TestFem, "test_integrate_gradient", test_integrate_gradient, devices=devices)' \ - "" - '' # AssertionError: 0.4082476496696472 != 0.40824246406555176 within 5 places + lib.optionalString effectiveStdenv.hostPlatform.isDarwin '' nixLog "patching $PWD/warp/tests/test_fem.py to disable broken tests on darwin" @@ -351,12 +342,6 @@ buildPythonPackage { writableTmpDirAsHomeHook ]; requiredSystemFeatures = lib.optionals cudaSupport [ "cuda" ]; - # Many unit tests fail with segfaults on aarch64-linux, especially in the sim - # and grad modules. However, other functionality generally works, so we don't - # mark the package as broken. - # - # See: https://www.github.com/NVIDIA/warp/issues/{356,372,552} - meta.broken = effectiveStdenv.hostPlatform.isAarch64 && effectiveStdenv.hostPlatform.isLinux; } '' nixLog "running ${name}" diff --git a/pkgs/development/tools/build-managers/bazel/README.md b/pkgs/development/tools/build-managers/bazel/README.md deleted file mode 100644 index 69ec0e30e157..000000000000 --- a/pkgs/development/tools/build-managers/bazel/README.md +++ /dev/null @@ -1,7 +0,0 @@ -# The Bazel build tool - -https://bazel.build/ - -The bazel tool requires regular maintenance, especially under darwin, so we created a maintainers team. - -Please ping @NixOS/bazel in your github PR/issue to increase your chance of a quick turnaround, thanks! diff --git a/pkgs/development/tools/build-managers/bazel/bash-tools-test.nix b/pkgs/development/tools/build-managers/bazel/bash-tools-test.nix deleted file mode 100644 index 6ca4aebcf340..000000000000 --- a/pkgs/development/tools/build-managers/bazel/bash-tools-test.nix +++ /dev/null @@ -1,52 +0,0 @@ -{ - writeText, - bazel, - runLocal, - bazelTest, - distDir, - extraBazelArgs ? "", -}: - -# Tests that certain executables are available in bazel-executed bash shells. - -let - WORKSPACE = writeText "WORKSPACE" '' - workspace(name = "our_workspace") - ''; - - fileIn = writeText "input.txt" '' - one - two - three - ''; - - fileBUILD = writeText "BUILD" '' - genrule( - name = "tool_usage", - srcs = [ ":input.txt" ], - outs = [ "output.txt" ], - cmd = "cat $(location :input.txt) | gzip - | gunzip - | awk '/t/' > $@", - ) - ''; - - workspaceDir = runLocal "our_workspace" { } '' - mkdir $out - cp ${WORKSPACE} $out/WORKSPACE - cp ${fileIn} $out/input.txt - cp ${fileBUILD} $out/BUILD - ''; - - testBazel = bazelTest { - name = "bazel-test-bash-tools"; - bazelPkg = bazel; - inherit workspaceDir; - - bazelScript = '' - ${bazel}/bin/bazel build :tool_usage --distdir=${distDir} ${extraBazelArgs} - cp bazel-bin/output.txt $out - echo "Testing content" && [ "$(cat $out | wc -l)" == "2" ] && echo "OK" - ''; - }; - -in -testBazel diff --git a/pkgs/development/tools/build-managers/bazel/cpp-test.nix b/pkgs/development/tools/build-managers/bazel/cpp-test.nix deleted file mode 100644 index 6581331c7697..000000000000 --- a/pkgs/development/tools/build-managers/bazel/cpp-test.nix +++ /dev/null @@ -1,62 +0,0 @@ -{ - bazel, - bazelTest, - bazel-examples, - stdenv, - cctools, - darwin, - extraBazelArgs ? "", - lib, - runLocal, - runtimeShell, - writeScript, - distDir, -}: - -let - - toolsBazel = writeScript "bazel" '' - #! ${runtimeShell} - - export CXX='${stdenv.cc}/bin/clang++' - export LD='${cctools}/bin/ld' - export LIBTOOL='${cctools}/bin/libtool' - export CC='${stdenv.cc}/bin/clang' - - # XXX: hack for macosX, this flags disable bazel usage of xcode - # See: https://github.com/bazelbuild/bazel/issues/4231 - export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 - - exec "$BAZEL_REAL" "$@" - ''; - - workspaceDir = runLocal "our_workspace" { } ( - '' - cp -r ${bazel-examples}/cpp-tutorial/stage3 $out - find $out -type d -exec chmod 755 {} \; - '' - + (lib.optionalString stdenv.hostPlatform.isDarwin '' - mkdir $out/tools - cp ${toolsBazel} $out/tools/bazel - '') - ); - - testBazel = bazelTest { - name = "${bazel.pname}-test-cpp"; - inherit workspaceDir; - bazelPkg = bazel; - bazelScript = '' - ${bazel}/bin/bazel build //... \ - --verbose_failures \ - --distdir=${distDir} \ - --curses=no \ - ${extraBazelArgs} \ - '' - + lib.optionalString (stdenv.hostPlatform.isDarwin) '' - --cxxopt=-x --cxxopt=c++ --host_cxxopt=-x --host_cxxopt=c++ \ - --linkopt=-stdlib=libc++ --host_linkopt=-stdlib=libc++ \ - ''; - }; - -in -testBazel diff --git a/pkgs/development/tools/build-managers/bazel/java-test.nix b/pkgs/development/tools/build-managers/bazel/java-test.nix deleted file mode 100644 index c3d94a7fd8e2..000000000000 --- a/pkgs/development/tools/build-managers/bazel/java-test.nix +++ /dev/null @@ -1,73 +0,0 @@ -{ - bazel, - bazelTest, - bazel-examples, - stdenv, - cctools, - extraBazelArgs ? "", - lib, - openjdk8, - jdk11_headless, - runLocal, - runtimeShell, - writeScript, - writeText, - distDir, -}: - -let - - toolsBazel = writeScript "bazel" '' - #! ${runtimeShell} - - export CXX='${stdenv.cc}/bin/clang++' - export LD='${cctools}/bin/ld' - export LIBTOOL='${cctools}/bin/libtool' - export CC='${stdenv.cc}/bin/clang' - - # XXX: hack for macosX, this flags disable bazel usage of xcode - # See: https://github.com/bazelbuild/bazel/issues/4231 - export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 - - exec "$BAZEL_REAL" "$@" - ''; - - workspaceDir = runLocal "our_workspace" { } ( - '' - cp -r ${bazel-examples}/java-tutorial $out - find $out -type d -exec chmod 755 {} \; - '' - + (lib.optionalString stdenv.hostPlatform.isDarwin '' - mkdir $out/tools - cp ${toolsBazel} $out/tools/bazel - '') - ); - - testBazel = bazelTest { - name = "${bazel.pname}-test-java"; - inherit workspaceDir; - bazelPkg = bazel; - buildInputs = [ - (if lib.strings.versionOlder bazel.version "5.0.0" then openjdk8 else jdk11_headless) - ]; - bazelScript = '' - ${bazel}/bin/bazel \ - run \ - --announce_rc \ - ${lib.optionalString (lib.strings.versionOlder "5.0.0" bazel.version) "--toolchain_resolution_debug='@bazel_tools//tools/jdk:(runtime_)?toolchain_type'"} \ - --distdir=${distDir} \ - --verbose_failures \ - --curses=no \ - --strict_java_deps=off \ - //:ProjectRunner \ - '' - + lib.optionalString (lib.strings.versionOlder bazel.version "5.0.0") '' - --host_javabase='@local_jdk//:jdk' \ - --java_toolchain='@bazel_tools//tools/jdk:toolchain_hostjdk8' \ - --javabase='@local_jdk//:jdk' \ - '' - + extraBazelArgs; - }; - -in -testBazel diff --git a/pkgs/development/tools/build-managers/bazel/protobuf-test.nix b/pkgs/development/tools/build-managers/bazel/protobuf-test.nix deleted file mode 100644 index 0cbcf2dae2aa..000000000000 --- a/pkgs/development/tools/build-managers/bazel/protobuf-test.nix +++ /dev/null @@ -1,194 +0,0 @@ -{ - bazel, - bazelTest, - fetchFromGitHub, - fetchurl, - stdenv, - cctools, - lib, - openjdk8, - jdk11_headless, - runLocal, - runtimeShell, - writeScript, - writeText, - distDir, -}: - -let - com_google_protobuf = fetchFromGitHub { - owner = "protocolbuffers"; - repo = "protobuf"; - rev = "v3.13.0"; - sha256 = "1nqsvi2yfr93kiwlinz8z7c68ilg1j75b2vcpzxzvripxx5h6xhd"; - }; - - bazel_skylib = fetchFromGitHub { - owner = "bazelbuild"; - repo = "bazel-skylib"; - rev = "2ec2e6d715e993d96ad6222770805b5bd25399ae"; - sha256 = "1z2r2vx6kj102zvp3j032djyv99ski1x1sl4i3p6mswnzrzna86s"; - }; - - rules_python = fetchFromGitHub { - owner = "bazelbuild"; - repo = "rules_python"; - rev = "c8c79aae9aa1b61d199ad03d5fe06338febd0774"; - sha256 = "1zn58wv5wcylpi0xj7riw34i1jjpqahanxx8y9srwrv0v93b6pqz"; - }; - - rules_proto = fetchFromGitHub { - owner = "bazelbuild"; - repo = "rules_proto"; - rev = "a0761ed101b939e19d83b2da5f59034bffc19c12"; - sha256 = "09lqfj5fxm1fywxr5w8pnpqd859gb6751jka9fhxjxjzs33glhqf"; - }; - - net_zlib = fetchurl rec { - url = "https://zlib.net/zlib-1.2.11.tar.gz"; - sha256 = "c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1"; - - passthru.sha256 = sha256; - }; - - WORKSPACE = writeText "WORKSPACE" '' - workspace(name = "our_workspace") - - load("//:proto-support.bzl", "protobuf_deps") - protobuf_deps() - load("@rules_proto//proto:repositories.bzl", "rules_proto_toolchains") - rules_proto_toolchains() - ''; - - protoSupport = writeText "proto-support.bzl" '' - """Load dependencies needed to compile the protobuf library as a 3rd-party consumer.""" - - load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") - - def protobuf_deps(): - """Loads common dependencies needed to compile the protobuf library.""" - - if "zlib" not in native.existing_rules(): - # proto_library, cc_proto_library, and java_proto_library rules implicitly - # depend on @com_google_protobuf for protoc and proto runtimes. - # This statement defines the @com_google_protobuf repo. - native.local_repository( - name = "com_google_protobuf", - path = "${com_google_protobuf}", - ) - native.local_repository( - name = "bazel_skylib", - path = "${bazel_skylib}", - ) - native.local_repository( - name = "rules_proto", - path = "${rules_proto}", - ) - native.local_repository( - name = "rules_python", - path = "${rules_python}", - ) - - http_archive( - name = "zlib", - build_file = "@com_google_protobuf//:third_party/zlib.BUILD", - sha256 = "${net_zlib.sha256}", - strip_prefix = "zlib-1.2.11", - urls = ["file://${net_zlib}"], - ) - ''; - - personProto = writeText "person.proto" '' - syntax = "proto3"; - - package person; - - message Person { - string name = 1; - int32 id = 2; - string email = 3; - } - ''; - - personBUILD = writeText "BUILD" '' - load("@rules_proto//proto:defs.bzl", "proto_library") - - proto_library( - name = "person_proto", - srcs = ["person.proto"], - visibility = ["//visibility:public"], - ) - - java_proto_library( - name = "person_java_proto", - deps = [":person_proto"], - ) - - cc_proto_library( - name = "person_cc_proto", - deps = [":person_proto"], - ) - ''; - - toolsBazel = writeScript "bazel" '' - #! ${runtimeShell} - - export CXX='${stdenv.cc}/bin/clang++' - export LD='${cctools}/bin/ld' - export LIBTOOL='${cctools}/bin/libtool' - export CC='${stdenv.cc}/bin/clang' - - # XXX: hack for macosX, this flags disable bazel usage of xcode - # See: https://github.com/bazelbuild/bazel/issues/4231 - export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 - - exec "$BAZEL_REAL" "$@" - ''; - - workspaceDir = runLocal "our_workspace" { } ( - '' - mkdir $out - cp ${WORKSPACE} $out/WORKSPACE - touch $out/BUILD.bazel - cp ${protoSupport} $out/proto-support.bzl - mkdir $out/person - cp ${personProto} $out/person/person.proto - cp ${personBUILD} $out/person/BUILD.bazel - '' - + (lib.optionalString stdenv.hostPlatform.isDarwin '' - mkdir $out/tools - cp ${toolsBazel} $out/tools/bazel - '') - ); - - testBazel = bazelTest { - name = "${bazel.pname}-test-protocol-buffers"; - inherit workspaceDir; - bazelPkg = bazel; - buildInputs = [ - (if lib.strings.versionOlder bazel.version "5.0.0" then openjdk8 else jdk11_headless) - ]; - bazelScript = '' - ${bazel}/bin/bazel \ - build \ - --distdir=${distDir} \ - --verbose_failures \ - --curses=no \ - --subcommands \ - --strict_java_deps=off \ - --strict_proto_deps=off \ - //... \ - '' - + lib.optionalString (lib.strings.versionOlder bazel.version "5.0.0") '' - --host_javabase='@local_jdk//:jdk' \ - --java_toolchain='@bazel_tools//tools/jdk:toolchain_hostjdk8' \ - --javabase='@local_jdk//:jdk' \ - '' - + lib.optionalString (stdenv.hostPlatform.isDarwin) '' - --cxxopt=-x --cxxopt=c++ --host_cxxopt=-x --host_cxxopt=c++ \ - --linkopt=-stdlib=libc++ --host_linkopt=-stdlib=libc++ \ - ''; - }; - -in -testBazel diff --git a/pkgs/development/tools/build-managers/bazel/python-bin-path-test.nix b/pkgs/development/tools/build-managers/bazel/python-bin-path-test.nix deleted file mode 100644 index 4af2940d80c2..000000000000 --- a/pkgs/development/tools/build-managers/bazel/python-bin-path-test.nix +++ /dev/null @@ -1,89 +0,0 @@ -{ - bazel, - bazelTest, - stdenv, - cctools, - extraBazelArgs ? "", - lib, - runLocal, - runtimeShell, - writeScript, - writeText, - distDir, -}: - -let - toolsBazel = writeScript "bazel" '' - #! ${runtimeShell} - - export CXX='${stdenv.cc}/bin/clang++' - export LD='${cctools}/bin/ld' - export LIBTOOL='${cctools}/bin/libtool' - export CC='${stdenv.cc}/bin/clang' - - # XXX: hack for macosX, this flags disable bazel usage of xcode - # See: https://github.com/bazelbuild/bazel/issues/4231 - export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 - - exec "$BAZEL_REAL" "$@" - ''; - - WORKSPACE = writeText "WORKSPACE" '' - workspace(name = "our_workspace") - ''; - - pythonLib = writeText "lib.py" '' - def foo(): - return 43 - ''; - - pythonBin = writeText "bin.py" '' - from lib import foo - - assert foo() == 43 - ''; - - pythonBUILD = writeText "BUILD" '' - py_library( - name = "lib", - srcs = [ "lib.py" ], - ) - - py_binary( - name = "bin", - srcs = [ "bin.py" ], - imports = [ "." ], - deps = [ ":lib" ], - ) - ''; - - workspaceDir = runLocal "our_workspace" { } ( - '' - mkdir $out - cp ${WORKSPACE} $out/WORKSPACE - mkdir $out/python - cp ${pythonLib} $out/python/lib.py - cp ${pythonBin} $out/python/bin.py - cp ${pythonBUILD} $out/python/BUILD.bazel - '' - + (lib.optionalString stdenv.hostPlatform.isDarwin '' - mkdir $out/tools - cp ${toolsBazel} $out/tools/bazel - '') - ); - - testBazel = bazelTest { - name = "${bazel.pname}-test-builtin-rules"; - inherit workspaceDir; - bazelPkg = bazel; - bazelScript = '' - ${bazel}/bin/bazel \ - run \ - --distdir=${distDir} \ - ${extraBazelArgs} \ - //python:bin - ''; - }; - -in -testBazel diff --git a/pkgs/development/tools/build-managers/bazel/shebang-test.nix b/pkgs/development/tools/build-managers/bazel/shebang-test.nix deleted file mode 100644 index fe12cf4de881..000000000000 --- a/pkgs/development/tools/build-managers/bazel/shebang-test.nix +++ /dev/null @@ -1,62 +0,0 @@ -{ - bazel, - bazelTest, - extracted, - ripgrep, - runLocal, - unzip, - ... -}: - -# Tests that all shebangs are patched appropriately. -# #!/usr/bin/... should be replaced by Nix store references. -# #!.../bin/env python should be replaced by Nix store reference to the python interpreter. - -let - - workspaceDir = runLocal "our_workspace" { } "mkdir $out"; - - testBazel = bazelTest { - name = "bazel-test-shebangs"; - inherit workspaceDir; - bazelPkg = bazel; - bazelScript = '' - set -ueo pipefail - FAIL= - check_shebangs() { - local dir="$1" - { rg -e '#!/usr/bin' -e '#![^[:space:]]*/bin/env' $dir -e && echo && FAIL=1; } || true - } - extract() { - local dir="$1" - find "$dir" -type f '(' -name '*.zip' -or -name '*.jar' ')' -print0 \ - | while IFS="" read -r -d "" zip ; do - echo "Extracting $zip" - local unzipped="$zip-UNPACKED" - mkdir -p "$unzipped" - unzip -qq $zip -d "$unzipped" - extract "$unzipped" - rm -rf "$unzipped" "$zip" || true - done - check_shebangs "$dir" - } - - mkdir install_root - cp --no-preserve=all -r ${extracted bazel}/install/*/* install_root/ - extract ./install_root - - if [[ $FAIL = 1 ]]; then - echo "Found files in the bazel distribution with illegal shebangs." >&2 - echo "Replace those by explicit Nix store paths." >&2 - echo "Python scripts should not use \`bin/env python' but the Python interpreter's store path." >&2 - exit 1 - fi - ''; - buildInputs = [ - unzip - ripgrep - ]; - }; - -in -testBazel diff --git a/pkgs/development/tools/build-managers/bazel/update-srcDeps.py b/pkgs/development/tools/build-managers/bazel/update-srcDeps.py deleted file mode 100755 index 4105aeeb11bc..000000000000 --- a/pkgs/development/tools/build-managers/bazel/update-srcDeps.py +++ /dev/null @@ -1,62 +0,0 @@ -#!/usr/bin/env python3 -import sys -import json - -if len(sys.argv) == 1: - print("usage: ./this-script WORKSPACE", file=sys.stderr) - print("Takes the bazel WORKSPACE file and reads all archives into a json dict (by evaling it as python code)", file=sys.stderr) - print("Hail Eris.", file=sys.stderr) - sys.exit(1) - -http_archives = [] - -# just the kw args are the dict { name, sha256, urls … } -def http_archive(**kw): - http_archives.append(kw) -# like http_file -def http_file(**kw): - http_archives.append(kw) - -# this is inverted from http_archive/http_file and bundles multiple archives -def distdir_tar(**kw): - for archive_name in kw['archives']: - http_archives.append({ - "name": archive_name, - "sha256": kw['sha256'][archive_name], - "urls": kw['urls'][archive_name] - }) - -# stubs for symbols we are not interested in -# might need to be expanded if new bazel releases add symbols to the workspace -def workspace(name): pass -def load(*args): pass -def bind(**kw): pass -def list_source_repository(**kw): pass -def new_local_repository(**kw): pass -def local_repository(**kw): pass -DOC_VERSIONS = [] -def stardoc_repositories(**kw): pass -def skydoc_repositories(**kw): pass -def rules_sass_dependencies(**kw): pass -def node_repositories(**kw): pass -def sass_repositories(**kw): pass -def register_execution_platforms(*args): pass -def rbe_autoconfig(*args, **kw): pass -def rules_pkg_dependencies(*args, **kw): pass -def winsdk_configure(*args, **kw): pass -def register_local_rc_exe_toolchains(*args, **kw): pass -def register_toolchains(*args, **kw): pass -def debian_deps(): pass -def grpc_deps(): pass -def grpc_extra_deps(): pass -def bazel_skylib_workspace(): pass - -# execute the WORKSPACE like it was python code in this module, -# using all the function stubs from above. -with open(sys.argv[1]) as f: - exec(f.read()) - -# transform to a dict with the names as keys -d = { el['name']: el for el in http_archives } - -print(json.dumps(d, sort_keys=True, indent=4)) diff --git a/pkgs/development/tools/profiling/systemtap/default.nix b/pkgs/development/tools/profiling/systemtap/default.nix index 7f52af9b4b34..20a9d6d5d862 100644 --- a/pkgs/development/tools/profiling/systemtap/default.nix +++ b/pkgs/development/tools/profiling/systemtap/default.nix @@ -1,11 +1,8 @@ { lib, - fetchgit, - pkg-config, - gettext, runCommand, makeWrapper, - cpio, + systemtap-unwrapped, elfutils, kernel, gnumake, @@ -15,33 +12,8 @@ }: let - ## fetchgit info - url = "git://sourceware.org/git/systemtap.git"; - rev = "release-${version}"; - hash = "sha256-SUPNarZW8vdK9hQaI2kU+rfKWIPiXB4BvJvRNC1T9tU="; - version = "5.2"; - inherit (kernel) stdenv; - ## stap binaries - stapBuild = stdenv.mkDerivation { - pname = "systemtap"; - inherit version; - src = fetchgit { inherit url rev hash; }; - nativeBuildInputs = [ - pkg-config - cpio - python3 - python3.pkgs.setuptools - ]; - buildInputs = [ - elfutils - gettext - python3 - ]; - enableParallelBuilding = true; - }; - ## symlink farm for --sysroot flag sysroot = runCommand "systemtap-sysroot-${kernel.version}" { } '' mkdir -p $out/boot $out/usr/lib/debug @@ -53,17 +25,12 @@ let pypkgs = with python3.pkgs; makePythonPath [ pyparsing ]; in -runCommand "systemtap-${version}" +runCommand "systemtap-${systemtap-unwrapped.version}" { - inherit stapBuild; + stapBuild = systemtap-unwrapped; nativeBuildInputs = [ makeWrapper ]; passthru.tests = { inherit (nixosTests.systemtap) linux_default linux_latest; }; - meta = { - homepage = "https://sourceware.org/systemtap/"; - description = "Provides a scripting language for instrumentation on a live kernel plus user-space"; - license = lib.licenses.gpl2; - platforms = lib.systems.inspect.patterns.isGnu; - }; + inherit (systemtap-unwrapped) meta; } ( '' diff --git a/pkgs/os-specific/linux/kernel/perf/fix-dmesg-path.diff b/pkgs/os-specific/linux/kernel/perf/fix-dmesg-path.diff deleted file mode 100644 index 0bc3300a2eaf..000000000000 --- a/pkgs/os-specific/linux/kernel/perf/fix-dmesg-path.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- a/tools/perf/util/evsel.c 2023-10-20 15:50:53.011023294 +0200 -+++ b/tools/perf/util/evsel.c 2023-10-20 15:51:03.205997633 +0200 -@@ -3076,7 +3076,7 @@ - - return scnprintf(msg, size, - "The sys_perf_event_open() syscall returned with %d (%s) for event (%s).\n" -- "/bin/dmesg | grep -i perf may provide additional information.\n", -+ "\"dmesg | grep -i perf\" may provide additional information.\n", - err, str_error_r(err, sbuf, sizeof(sbuf)), evsel__name(evsel)); - } - diff --git a/pkgs/os-specific/linux/kernel/zen-kernels.nix b/pkgs/os-specific/linux/kernel/zen-kernels.nix index f03f31265a1c..4127534a923d 100644 --- a/pkgs/os-specific/linux/kernel/zen-kernels.nix +++ b/pkgs/os-specific/linux/kernel/zen-kernels.nix @@ -23,9 +23,9 @@ let }; # ./update-zen.py lqx lqx = { - version = "6.16.3"; # lqx + version = "6.16.5"; # lqx suffix = "lqx1"; # lqx - sha256 = "0y7ym3kcy936p3kz71dx411l7pms53cfqbq8h8dp9vxw9vhjkh5n"; # lqx + sha256 = "149pkbzsx1z5b8qizf03nz5b4p7in0kbyy8d35svvzrljr6dzjqn"; # lqx isLqx = true; }; }; diff --git a/pkgs/servers/sql/postgresql/ext/omnigres.nix b/pkgs/servers/sql/postgresql/ext/omnigres.nix index f3933d1058f9..e6531b1f303e 100644 --- a/pkgs/servers/sql/postgresql/ext/omnigres.nix +++ b/pkgs/servers/sql/postgresql/ext/omnigres.nix @@ -21,13 +21,13 @@ let in postgresqlBuildExtension (finalAttrs: { pname = "omnigres"; - version = "0-unstable-2025-08-24"; + version = "0-unstable-2025-09-05"; src = fetchFromGitHub { owner = "omnigres"; repo = "omnigres"; - rev = "8d986ca6c6ebc099af9ffec26bac06b39368b222"; - hash = "sha256-3oKzLPyusvDf3Tptd7udkzpMhac6gWmSlevzHV0t5CY="; + rev = "f9ec95c59a786835f38629a2e04a4784a460fba1"; + hash = "sha256-F1vG+iAlixdWwW3LIovzwnuL75QTCDlF40QOUD5dNZk="; }; # This matches postInstall of PostgreSQL's generic.nix, which does this for the PGXS Makefile. diff --git a/pkgs/servers/web-apps/outline/default.nix b/pkgs/servers/web-apps/outline/default.nix index 1c91181dc8f7..ecdd6f5a169e 100644 --- a/pkgs/servers/web-apps/outline/default.nix +++ b/pkgs/servers/web-apps/outline/default.nix @@ -14,13 +14,13 @@ stdenv.mkDerivation rec { pname = "outline"; - version = "0.86.1"; + version = "0.87.3"; src = fetchFromGitHub { owner = "outline"; repo = "outline"; rev = "v${version}"; - hash = "sha256-lsiwTpmb9E6C5FuYFfko4PqulDcqWU9sQnzSEJ3Y4NE="; + hash = "sha256-hayA8zYSl4PFRlsK6n2881eef2J9Oy3FhiMFgdFgONY="; }; nativeBuildInputs = [ @@ -35,7 +35,7 @@ stdenv.mkDerivation rec { yarnOfflineCache = fetchYarnDeps { yarnLock = "${src}/yarn.lock"; - hash = "sha256-9xJ+N+UaHTlBzXvFPyYgB4jNwdiWCkvCSN22kEGuIxI="; + hash = "sha256-1u9/I1H2BsUS5qPwNAdCrug3ekCTyWHd60kR9FXugV0="; }; configurePhase = '' diff --git a/pkgs/tools/misc/grub/default.nix b/pkgs/tools/misc/grub/default.nix index e083c3e92ed0..66f7c981fff4 100644 --- a/pkgs/tools/misc/grub/default.nix +++ b/pkgs/tools/misc/grub/default.nix @@ -28,6 +28,7 @@ efiSupport ? false, zfsSupport ? false, xenSupport ? false, + xenPvhSupport ? false, kbdcompSupport ? false, ckbcomp, }: @@ -65,6 +66,11 @@ let x86_64-linux.target = "x86_64"; }; + xenPvhSystemsBuild = { + i686-linux.target = "i386"; + x86_64-linux.target = "i386"; # Xen PVH is only i386 on x86. + }; + inPCSystems = lib.any (system: stdenv.hostPlatform.system == system) (lib.attrNames pcSystems); gnulib = fetchgit { @@ -84,7 +90,8 @@ let in assert zfsSupport -> zfs != null; -assert !(efiSupport && xenSupport); +assert !(efiSupport && (xenSupport || xenPvhSupport)); +assert !(xenSupport && xenPvhSupport); stdenv.mkDerivation rec { pname = "grub"; @@ -609,6 +616,10 @@ stdenv.mkDerivation rec { ++ lib.optionals xenSupport [ "--with-platform=xen" "--target=${xenSystemsBuild.${stdenv.hostPlatform.system}.target}" + ] + ++ lib.optionals xenPvhSupport [ + "--with-platform=xen_pvh" + "--target=${xenPvhSystemsBuild.${stdenv.hostPlatform.system}.target}" ]; # save target that grub is compiled for @@ -660,6 +671,8 @@ stdenv.mkDerivation rec { lib.attrNames efiSystemsBuild else if xenSupport then lib.attrNames xenSystemsBuild + else if xenPvhSupport then + lib.attrNames xenPvhSystemsBuild else platforms.gnu ++ platforms.linux; diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index 37e3ebd4b612..2eec694f79bf 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -136,29 +136,29 @@ lib.makeExtensible ( self_attribute_name = "nix_2_28"; }; - nixComponents_2_29 = nixDependencies.callPackage ./modular/packages.nix { - version = "2.29.1"; + nixComponents_2_29 = nixDependencies.callPackage ./modular/packages.nix rec { + version = "2.29.2"; inherit maintainers teams; otherSplices = generateSplicesForNixComponents "nixComponents_2_29"; src = fetchFromGitHub { owner = "NixOS"; repo = "nix"; - rev = "2.29.1"; - hash = "sha256-rCL3l4t20jtMeNjCq6fMaTzWvBKgj+qw1zglLrniRfY="; + tag = version; + hash = "sha256-50p2sG2RFuRnlS1/Vr5et0Rt+QDgfpNE2C2WWRztnbQ="; }; }; nix_2_29 = addTests "nix_2_29" self.nixComponents_2_29.nix-everything; nixComponents_2_30 = nixDependencies.callPackage ./modular/packages.nix rec { - version = "2.30.2"; + version = "2.30.3"; inherit maintainers teams; otherSplices = generateSplicesForNixComponents "nixComponents_2_30"; src = fetchFromGitHub { owner = "NixOS"; repo = "nix"; tag = version; - hash = "sha256-U46fAs+j2PfWWqP1zNi1odhnV4030SQ0RoEC8Eah1OQ="; + hash = "sha256-kBuwzMgIE9Tmve0Rpp+q+YCsE2mw9d62M/950ViWeJ0="; }; }; diff --git a/pkgs/tools/package-management/nix/dependencies.nix b/pkgs/tools/package-management/nix/dependencies.nix index 82f844f82887..ed5a63ce3ecf 100644 --- a/pkgs/tools/package-management/nix/dependencies.nix +++ b/pkgs/tools/package-management/nix/dependencies.nix @@ -8,32 +8,31 @@ regular@{ { scopeFunction = scope: { - boehmgc = - (regular.boehmgc.override { - enableLargeConfig = true; - }).overrideAttrs - (attrs: { - # Increase the initial mark stack size to avoid stack - # overflows, since these inhibit parallel marking (see - # GC_mark_some()). To check whether the mark stack is too - # small, run Nix with GC_PRINT_STATS=1 and look for messages - # such as `Mark stack overflow`, `No room to copy back mark - # stack`, and `Grew mark stack to ... frames`. - NIX_CFLAGS_COMPILE = "-DINITIAL_MARK_STACK_SIZE=1048576"; - }); + boehmgc = regular.boehmgc.override { + enableLargeConfig = true; - aws-sdk-cpp = - (regular.aws-sdk-cpp.override { - apis = [ - "identity-management" - "s3" - "transfer" - ]; - customMemoryManagement = false; - }).overrideAttrs - { - # only a stripped down version is build which takes a lot less resources to build - requiredSystemFeatures = [ ]; - }; + # Increase the initial mark stack size to avoid stack overflows, since these inhibit parallel + # marking (see `GC_mark_some()` in `mark.c`). + # + # Run Nix with `GC_PRINT_STATS=1` set to see if the mark stack is too small. + # Look for messages such as `Mark stack overflow`, `No room to copy back mark stack`, and + # `Grew mark stack to ... frames`. + initialMarkStackSize = 1048576; + }; + + aws-sdk-cpp = regular.aws-sdk-cpp.override { + # Nix only needs these AWS APIs. + apis = [ + "identity-management" + "s3" + "transfer" + ]; + + # Don't use AWS' custom memory management. + customMemoryManagement = false; + + # only a stripped down version is built which takes a lot less resources to build + requiredSystemFeatures = [ ]; + }; }; } diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index b15a1d6370c6..b30c209d5036 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1602,6 +1602,7 @@ mapAliases { mihomo-party = throw "'mihomo-party' has been removed due to upstream license violation"; # Added 2025-08-20 mikutter = throw "'mikutter' has been removed because the package was broken and had no maintainers"; # Added 2024-10-01 mime-types = mailcap; # Added 2022-01-21 + minecraft = throw "'minecraft' has been removed because the package was broken. Consider using 'prismlauncher' instead"; # Added 2025-09-06 minetest = luanti; # Added 2024-11-11 minetestclient = luanti-client; # Added 2024-11-11 minetestserver = luanti-server; # Added 2024-11-11 @@ -2043,7 +2044,6 @@ mapAliases { qbittorrent-qt5 = throw "'qbittorrent-qt5' has been removed as qBittorrent 5 dropped support for Qt 5. Please use 'qbittorrent'"; # Added 2024-09-30 qcachegrind = throw "'qcachegrind' has been removed, as it depends on KDE Gear 5, which has reached EOL"; # Added 2025-08-20 - qcsxcad = throw "'qcsxcad' has been renamed to/replaced by 'libsForQt5.qcsxcad'"; # Converted to throw 2024-10-17 qflipper = qFlipper; # Added 2022-02-11 qnial = throw "'qnial' has been removed due to failing to build and being unmaintained"; # Added 2025-06-26 qscintilla = libsForQt5.qscintilla; # Added 2023-09-20 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dc4551175eab..a5f8022fd3aa 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3067,6 +3067,14 @@ with pkgs; xenSupport = true; }; + grub2_xen_pvh = grub2.override { + xenPvhSupport = true; + }; + + grub2_pvgrub_image = grub2_pvhgrub_image.override { + grubPlatform = "xen"; + }; + grub4dos = callPackage ../tools/misc/grub4dos { stdenv = stdenv_32bit; }; @@ -5624,10 +5632,6 @@ with pkgs; ); buildRustCrateHelpers = callPackage ../build-support/rust/build-rust-crate/helpers.nix { }; - cargo-flamegraph = callPackage ../by-name/ca/cargo-flamegraph/package.nix { - inherit (linuxPackages) perf; - }; - defaultCrateOverrides = callPackage ../build-support/rust/default-crate-overrides.nix { }; inherit (callPackages ../development/tools/rust/cargo-pgrx { }) @@ -6400,8 +6404,17 @@ with pkgs; anybadge = with python3Packages; toPythonApplication anybadge; - ansible = ansible_2_18; - ansible_2_18 = python3Packages.toPythonApplication python3Packages.ansible-core; + ansible = ansible_2_19; + ansible_2_19 = python3Packages.toPythonApplication python3Packages.ansible-core; + ansible_2_18 = python3Packages.toPythonApplication ( + python3Packages.ansible-core.overridePythonAttrs (oldAttrs: rec { + version = "2.18.8"; + src = oldAttrs.src.override { + inherit version; + hash = "sha256-sHZiFalqR845kz0n4emWyivrVM8bOQfHQtNckTsfeM0="; + }; + }) + ); ansible_2_17 = python3Packages.toPythonApplication ( python3Packages.ansible-core.overridePythonAttrs (oldAttrs: rec { version = "2.17.8"; @@ -6515,7 +6528,7 @@ with pkgs; bazel = bazel_7; - bazel_7 = callPackage ../development/tools/build-managers/bazel/bazel_7 { + bazel_7 = callPackage ../by-name/ba/bazel_7/package.nix { inherit (darwin) sigtool; buildJdk = jdk21_headless; runJdk = jdk21_headless; @@ -7059,7 +7072,6 @@ with pkgs; pycritty = with python3Packages; toPythonApplication pycritty; qtcreator = qt6Packages.callPackage ../development/tools/qtcreator { - inherit (linuxPackages) perf; llvmPackages = llvmPackages_21; stdenv = llvmPackages_21.stdenv; }; @@ -14707,8 +14719,6 @@ with pkgs; ### SCIENCE / ELECTRONICS - appcsxcad = libsForQt5.callPackage ../applications/science/electronics/appcsxcad { }; - simulide_0_4_15 = callPackage ../by-name/si/simulide/package.nix { versionNum = "0.4.15"; }; simulide_1_0_0 = callPackage ../by-name/si/simulide/package.nix { versionNum = "1.0.0"; }; simulide_1_1_0 = callPackage ../by-name/si/simulide/package.nix { versionNum = "1.1.0"; }; @@ -14766,9 +14776,7 @@ with pkgs; withNgshared = false; }; - openems = callPackage ../applications/science/electronics/openems { - qcsxcad = libsForQt5.qcsxcad; - }; + openems = callPackage ../applications/science/electronics/openems { }; xyce-parallel = callPackage ../by-name/xy/xyce/package.nix { withMPI = true; diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 27dfc0934980..6cada2ff5bce 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -5,6 +5,7 @@ pkgs, newScope, stdenv, + config, }: let @@ -25,9 +26,6 @@ let "ghc924Binary" "ghc963Binary" "ghc984Binary" - # ghcjs - "ghcjs" - "ghcjs810" ]; haskellLibUncomposable = import ../development/haskell-modules/lib { @@ -333,13 +331,6 @@ in llvmPackages = pkgs.llvmPackages_18; }; - ghcjs = compiler.ghcjs810; - ghcjs810 = callPackage ../development/compilers/ghcjs/8.10 { - bootPkgs = bb.packages.ghc810; - ghcjsSrcJson = ../development/compilers/ghcjs/8.10/git.json; - stage0 = ../development/compilers/ghcjs/8.10/stage0.nix; - }; - # The integer-simple attribute set contains all the GHC compilers # build with integer-simple instead of integer-gmp. integer-simple = @@ -368,6 +359,10 @@ in ) ); } + // pkgs.lib.optionalAttrs config.allowAliases { + ghcjs = throw "'haskell.compiler.ghcjs' has been removed. Please use 'pkgsCross.ghcjs' instead."; # Added 2025-09-06 + ghcjs810 = throw "'haskell.compiler.ghcjs810' has been removed. Please use 'pkgsCross.ghcjs' instead."; # Added 2025-09-06 + } ); # Default overrides that are applied to all package sets. @@ -485,14 +480,6 @@ in compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.16.x.nix { }; }; - ghcjs = packages.ghcjs810; - ghcjs810 = callPackage ../development/haskell-modules rec { - buildHaskellPackages = ghc.bootPkgs; - ghc = bh.compiler.ghcjs810; - compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { }; - packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs-8.x.nix { }; - }; - # The integer-simple attribute set contains package sets for all the GHC compilers # using integer-simple instead of integer-gmp. integer-simple = @@ -525,5 +512,9 @@ in buildHaskellPackages = bh.packages.native-bignum.${name}; } ); + } + // pkgs.lib.optionalAttrs config.allowAliases { + ghcjs = throw "'haskell.packages.ghcjs' has been removed. Please use 'pkgsCross.ghcjs' instead."; # Added 2025-09-06 + ghcjs810 = throw "'haskell.packages.ghcjs810' has been removed. Please use 'pkgsCross.ghcjs' instead."; # Added 2025-09-06 }; } diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix index 8f3f0fd241c5..d64f7f282c8e 100644 --- a/pkgs/top-level/linux-kernels.nix +++ b/pkgs/top-level/linux-kernels.nix @@ -584,8 +584,6 @@ in netatop = callPackage ../os-specific/linux/netatop { }; - perf = callPackage ../os-specific/linux/kernel/perf { }; - prl-tools = callPackage ../os-specific/linux/prl-tools { }; isgx = callPackage ../os-specific/linux/isgx { }; @@ -714,6 +712,7 @@ in xmm7360-pci = throw "Support for the XMM7360 WWAN card was added to the iosm kmod in mainline kernel version 5.18"; amdgpu-pro = throw "amdgpu-pro was removed due to lack of maintenance"; # Added 2024-06-16 kvdo = throw "kvdo was removed, because it was added to mainline in kernel version 6.9"; # Added 2024-07-08 + perf = lib.warnOnInstantiate "linuxPackages.perf is now perf" pkgs.perf; # Added 2025-08-28 system76-power = lib.warnOnInstantiate "kernelPackages.system76-power is now pkgs.system76-power" pkgs.system76-power; # Added 2024-10-16 system76-scheduler = lib.warnOnInstantiate "kernelPackages.system76-scheduler is now pkgs.system76-scheduler" pkgs.system76-scheduler; # Added 2024-10-16 tuxedo-keyboard = self.tuxedo-drivers; # Added 2024-09-28 diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 43f6263cb817..7f752445b5b2 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -255,12 +255,11 @@ lib.makeScope pkgs.newScope ( phpstan = callPackage ../development/php-packages/phpstan { }; psalm = callPackage ../development/php-packages/psalm { }; - - psysh = callPackage ../development/php-packages/psysh { }; } // lib.optionalAttrs config.allowAliases { phpcbf = throw "`phpcbf` is now deprecated, use `php-codesniffer` instead which contains both `phpcs` and `phpcbf`."; phpcs = throw "`phpcs` is now deprecated, use `php-codesniffer` instead which contains both `phpcs` and `phpcbf`."; + psysh = throw "`php8${lib.versions.minor php.version}Packages.psysh` is now deprecated, use `psysh`"; }; # This is a set of PHP extensions meant to be used in php.buildEnv diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 868696153ff8..5e6de0cfef73 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9177,6 +9177,8 @@ self: super: with self; { meshcat = callPackage ../development/python-modules/meshcat { }; + meshcore = callPackage ../development/python-modules/meshcore { }; + meshio = callPackage ../development/python-modules/meshio { }; meshlabxml = callPackage ../development/python-modules/meshlabxml { }; diff --git a/pkgs/top-level/qt5-packages.nix b/pkgs/top-level/qt5-packages.nix index f216e398f8b0..d65f6c3da347 100644 --- a/pkgs/top-level/qt5-packages.nix +++ b/pkgs/top-level/qt5-packages.nix @@ -165,8 +165,6 @@ makeScopeWithSplicing' { qcoro = callPackage ../development/libraries/qcoro { }; - qcsxcad = callPackage ../development/libraries/science/electronics/qcsxcad { }; - qcustomplot = callPackage ../development/libraries/qcustomplot { }; qjson = callPackage ../development/libraries/qjson { }; diff --git a/pkgs/top-level/release-cross.nix b/pkgs/top-level/release-cross.nix index de853ce49675..ec753700a532 100644 --- a/pkgs/top-level/release-cross.nix +++ b/pkgs/top-level/release-cross.nix @@ -212,7 +212,6 @@ in # Javascript ghcjs = mapTestOnCross systems.examples.ghcjs { - haskell.packages.ghcjs.hello = nativePlatforms; haskell.packages.native-bignum.ghcHEAD.hello = nativePlatforms; haskellPackages.hello = nativePlatforms; }; diff --git a/pkgs/top-level/release-haskell.nix b/pkgs/top-level/release-haskell.nix index f67e292bda40..cda953923718 100644 --- a/pkgs/top-level/release-haskell.nix +++ b/pkgs/top-level/release-haskell.nix @@ -231,24 +231,7 @@ let jobs = recursiveUpdateMany [ (mapTestOn { haskellPackages = packagePlatforms pkgs.haskellPackages; - haskell.compiler = - packagePlatforms pkgs.haskell.compiler - // (lib.genAttrs - [ - "ghcjs" - "ghcjs810" - ] - (ghcjsName: { - # We can't build ghcjs itself, since it exceeds 3GB (Hydra's output limit) due - # to the size of its bundled libs. We can however save users a bit of compile - # time by building the bootstrap ghcjs on Hydra. For this reason, we overwrite - # the ghcjs attributes in haskell.compiler with a reference to the bootstrap - # ghcjs attribute in their bootstrap package set (exposed via passthru) which - # would otherwise be ignored by Hydra. - bootGhcjs = (packagePlatforms pkgs.haskell.compiler.${ghcjsName}.passthru).bootGhcjs; - }) - ); - + haskell.compiler = packagePlatforms pkgs.haskell.compiler; tests.haskell = packagePlatforms pkgs.tests.haskell; nixosTests = { @@ -405,9 +388,6 @@ let # remove musl ghc865Binary since it is known to be broken and # causes an evaluation error on darwin. ghc865Binary = { }; - - ghcjs = { }; - ghcjs810 = { }; }; # Get some cache going for MUSL-enabled GHC.