diff --git a/doc/languages-frameworks/dart.section.md b/doc/languages-frameworks/dart.section.md new file mode 100644 index 000000000000..b00327b78eb2 --- /dev/null +++ b/doc/languages-frameworks/dart.section.md @@ -0,0 +1,65 @@ +# Dart {#sec-language-dart} + +## Dart applications {#ssec-dart-applications} + +The function `buildDartApplication` builds Dart applications managed with pub. + +It fetches its Dart dependencies automatically through `fetchDartDeps`, and (through a series of hooks) builds and installs the executables specified in the pubspec file. The hooks can be used in other derivations, if needed. The phases can also be overridden to do something different from installing binaries. + +If you are packaging a Flutter desktop application, use [`buildFlutterApplication`](#ssec-dart-flutter) instead. + +`vendorHash`: is the hash of the output of the dependency fetcher derivation. To obtain it, simply set it to `lib.fakeHash` (or omit it) and run the build ([more details here](#sec-source-hashes)). + +If the upstream source is missing a `pubspec.lock` file, you'll have to vendor one and specify it using `pubspecLockFile`. If it is needed, one will be generated for you and printed when attempting to build the derivation. + +The `dart` commands run can be overridden through `pubGetScript` and `dartCompileCommand`, you can also add flags using `dartCompileFlags` or `dartJitFlags`. + +Dart supports multiple [outputs types](https://dart.dev/tools/dart-compile#types-of-output), you can choose between them using `dartOutputType` (defaults to `exe`). If you want to override the binaries path or the source path they come from, you can use `dartEntryPoints`. Outputs that require a runtime will automatically be wrapped with the relevant runtime (`dartaotruntime` for `aot-snapshot`, `dart run` for `jit-snapshot` and `kernel`, `node` for `js`), this can be overridden through `dartRuntimeCommand`. + +```nix +{ buildDartApplication, fetchFromGitHub }: + +buildDartApplication rec { + pname = "dart-sass"; + version = "1.62.1"; + + src = fetchFromGitHub { + owner = "sass"; + repo = pname; + rev = version; + hash = "sha256-U6enz8yJcc4Wf8m54eYIAnVg/jsGi247Wy8lp1r1wg4="; + }; + + pubspecLockFile = ./pubspec.lock; + vendorHash = "sha256-Atm7zfnDambN/BmmUf4BG0yUz/y6xWzf0reDw3Ad41s="; +} +``` + +## Flutter applications {#ssec-dart-flutter} + +The function `buildFlutterApplication` builds Flutter applications. + +The deps.json file must always be provided when packaging in Nixpkgs. It will be generated and printed if the derivation is attempted to be built without one. Alternatively, `autoDepsList` may be set to `true` when outside of Nixpkgs, as it relies on import-from-derivation. + +A `pubspec.lock` file must be available. See the [Dart documentation](#ssec-dart-applications) for more details. + +```nix +{ flutter, fetchFromGitHub }: + +flutter.buildFlutterApplication { + pname = "firmware-updater"; + version = "unstable-2023-04-30"; + + src = fetchFromGitHub { + owner = "canonical"; + repo = "firmware-updater"; + rev = "6e7dbdb64e344633ea62874b54ff3990bd3b8440"; + sha256 = "sha256-s5mwtr5MSPqLMN+k851+pFIFFPa0N1hqz97ys050tFA="; + fetchSubmodules = true; + }; + + pubspecLockFile = ./pubspec.lock; + depsListFile = ./deps.json; + vendorHash = "sha256-cdMO+tr6kYiN5xKXa+uTMAcFf2C75F3wVPrn21G4QPQ="; +} +``` diff --git a/doc/languages-frameworks/index.xml b/doc/languages-frameworks/index.xml index e1e35564e321..94c4e303027f 100644 --- a/doc/languages-frameworks/index.xml +++ b/doc/languages-frameworks/index.xml @@ -14,6 +14,7 @@ + diff --git a/nixos/modules/services/logging/vector.nix b/nixos/modules/services/logging/vector.nix index a923373d1861..f2edeabfc06f 100644 --- a/nixos/modules/services/logging/vector.nix +++ b/nixos/modules/services/logging/vector.nix @@ -8,6 +8,8 @@ in options.services.vector = { enable = mkEnableOption (lib.mdDoc "Vector"); + package = mkPackageOptionMD pkgs "vector" { }; + journaldAccess = mkOption { type = types.bool; default = false; @@ -47,7 +49,7 @@ in ''; in { - ExecStart = "${pkgs.vector}/bin/vector --config ${validateConfig conf}"; + ExecStart = "${getExe cfg.package} --config ${validateConfig conf}"; DynamicUser = true; Restart = "no"; StateDirectory = "vector"; diff --git a/nixos/modules/virtualisation/rosetta.nix b/nixos/modules/virtualisation/rosetta.nix index 109b114d649c..ee811b571b8f 100644 --- a/nixos/modules/virtualisation/rosetta.nix +++ b/nixos/modules/virtualisation/rosetta.nix @@ -50,11 +50,19 @@ in } ]; - fileSystems."${cfg.mountPoint}" = { + fileSystems."${cfg.mountPoint}" = { device = cfg.mountTag; fsType = "virtiofs"; }; + + nix.settings = { + extra-platforms = [ "x86_64-linux" ]; + extra-sandbox-paths = [ + "/run/binfmt" + cfg.mountPoint + ]; + }; boot.binfmt.registrations.rosetta = { interpreter = "${cfg.mountPoint}/rosetta"; diff --git a/nixos/tests/vector.nix b/nixos/tests/vector.nix index 9309f6a14dd7..a55eb4e012c5 100644 --- a/nixos/tests/vector.nix +++ b/nixos/tests/vector.nix @@ -31,7 +31,7 @@ with pkgs.lib; # ensure vector is forwarding the messages appropriately testScript = '' machine.wait_for_unit("vector.service") - machine.succeed("test -f /var/lib/vector/logs.log") + machine.wait_for_file("/var/lib/vector/logs.log") ''; }; } diff --git a/pkgs/applications/audio/audacious/plugins.nix b/pkgs/applications/audio/audacious/plugins.nix index bd9bb5149747..6f5d171e2ef1 100644 --- a/pkgs/applications/audio/audacious/plugins.nix +++ b/pkgs/applications/audio/audacious/plugins.nix @@ -46,11 +46,11 @@ stdenv.mkDerivation rec { pname = "audacious-plugins"; - version = "4.3"; + version = "4.3.1"; src = fetchurl { url = "http://distfiles.audacious-media-player.org/audacious-plugins-${version}.tar.bz2"; - sha256 = "sha256-Zi72yMS9cNDzX9HF8IuRVJuUNmOLZfihozlWsJ34n8Y="; + sha256 = "sha256-Leom469YOi1oTfJAsnsrKTK81lPfTbUAqF9P5dX9yKY="; }; patches = [ ./0001-Set-plugindir-to-PREFIX-lib-audacious.patch ]; diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix index da0172228fbf..774c61b55678 100644 --- a/pkgs/applications/networking/browsers/chromium/common.nix +++ b/pkgs/applications/networking/browsers/chromium/common.nix @@ -36,6 +36,7 @@ , curl , libffi , libepoxy +, libevdev # postPatch: , glibc # gconv + locale # postFixup: @@ -154,6 +155,8 @@ let curl libepoxy libffi + ] ++ lib.optionals (chromiumVersionAtLeast "114") [ + libevdev ] ++ lib.optional systemdSupport systemd ++ lib.optionals cupsSupport [ libgcrypt cups ] ++ lib.optional pulseSupport libpulseaudio; diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.json b/pkgs/applications/networking/browsers/chromium/upstream-info.json index d7911acefb91..b642aff911f9 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.json +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.json @@ -19,22 +19,22 @@ } }, "beta": { - "version": "113.0.5672.63", - "sha256": "07pf28yy5c4xw1xkycgzq53zbj14zvhh00sv601nggisq4fw3kkn", - "sha256bin64": "1n1bcim5wfafa3bl9grp3ckmnbi1mzhdxz8pim408wz892da34zl", + "version": "114.0.5735.16", + "sha256": "1pynbzbc8wwc6g8ikx0hr95ylncpdx97y27c6wmfygwgvp91a6wa", + "sha256bin64": "098aclrhifz6cpxcjdaqvi76j3g8r84p3b6cs4fbsj4cmczj4frw", "deps": { "gn": { - "version": "2023-03-18", + "version": "2023-04-19", "url": "https://gn.googlesource.com/gn", - "rev": "41fef642de70ecdcaaa26be96d56a0398f95abd4", - "sha256": "12w4g2dl58283allclpi1c4i6ih9v2xvdb9hpbmfda12v8lizmlq" + "rev": "5a004f9427a050c6c393c07ddb85cba8ff3849fa", + "sha256": "01xrh9m9m6x8lz0vxwdw2mrhrvnw93zpg09hwdhqakj06agf4jjk" } } }, "dev": { - "version": "114.0.5735.6", - "sha256": "0wxlfqxrawk77yzm00hb1fbssrycl4mha53wm4y5mlb8warqs5jk", - "sha256bin64": "0vlb6zr50kn7i0rfvy3yvwzcffpg5ki7is8i3ck43b1gr1bsmgmb", + "version": "115.0.5750.0", + "sha256": "1y0yq7k5rcv4lfxdlr4psap4hxcnrwjps6vl42hwvpw6zxscw1lv", + "sha256bin64": "0h2d4csrznavalfnzvn59pc2jmj6ci1paslp7y2rlpv1jqjrpgq9", "deps": { "gn": { "version": "2023-04-19", @@ -45,8 +45,8 @@ } }, "ungoogled-chromium": { - "version": "113.0.5672.64", - "sha256": "0knw3i37hh874ycjlc8bl68wdhyqhma5pn7alwa6254qr5dkci9h", + "version": "113.0.5672.93", + "sha256": "1cy33mvhws59d358s30xqs2p9hdb28n37wmv5ihx0d07x30y3azb", "sha256bin64": null, "deps": { "gn": { @@ -56,8 +56,8 @@ "sha256": "12w4g2dl58283allclpi1c4i6ih9v2xvdb9hpbmfda12v8lizmlq" }, "ungoogled-patches": { - "rev": "113.0.5672.64-1", - "sha256": "0xvgq6971qvvn0cf4z5wkfabhm7dsx2f68npfl4y2nix7hwfs6lq" + "rev": "113.0.5672.93-1", + "sha256": "0ffb33k2kgnpswq1f61gzcblvgsw7qazh8yq2kcdwc4k9bd9gr93" } } } diff --git a/pkgs/applications/networking/browsers/librewolf/src.json b/pkgs/applications/networking/browsers/librewolf/src.json index a84b2a038ae7..fe4ad087cf08 100644 --- a/pkgs/applications/networking/browsers/librewolf/src.json +++ b/pkgs/applications/networking/browsers/librewolf/src.json @@ -1,11 +1,11 @@ { - "packageVersion": "112.0.1-2", + "packageVersion": "113.0-1", "source": { - "rev": "112.0.1-2", - "sha256": "1pm4ilc2zx6qx3qqjl7ypl51mcfwq22abi850kq7l3pznb2z0ljw" + "rev": "113.0-1", + "sha256": "0cqb9lphaqvmf443ha6fhd8q7qyy09bsg923rq8jy8cjmhkq2n6i" }, "firefox": { - "version": "112.0.1", - "sha512": "23a5cd9c1f165275d8ca7465bebce86018441c72292421f4ed56d7ad8ada9402dc8d22a08467d9d0ef3ef8c62338006dfa3bcbddf12cb8a59eafa0bd7d0cda50" + "version": "113.0", + "sha512": "96b0f0774083270f4fcce06085b177ced25ba05da7291d777f1da1d5bbad30721bc6363b76e06ccb64fc092778c8326a426a8bfdfa3cbaafd4f1169b924744a5" } } diff --git a/pkgs/applications/networking/instant-messengers/element/pin.nix b/pkgs/applications/networking/instant-messengers/element/pin.nix index c8ffd9d130d0..0cb0dfb5993b 100644 --- a/pkgs/applications/networking/instant-messengers/element/pin.nix +++ b/pkgs/applications/networking/instant-messengers/element/pin.nix @@ -1,9 +1,9 @@ { - "version" = "1.11.30"; + "version" = "1.11.31"; "hashes" = { - "desktopSrcHash" = "WICzS+KARX+Z4vfBqBd13wtNB7m18rsXJsFey/MnST0="; - "desktopYarnHash" = "0rm0rghd2piaxhf7jvxs6rd6yykgdm8d2a7rxqc9m9xjklxdf6nj"; - "webSrcHash" = "5o1DEVtkx4PYYRXYdyjVOlkvbQSc9/an5DshARTJTR4="; - "webYarnHash" = "0bg5vc7q8afqfpsaqqkczf9whbzici5d2bxj5cadhrlmlb27f8nx"; + "desktopSrcHash" = "urCMClvyJx6e0UXDAcZysZvw3Qb6cnPjiy/aR4Uqtzs="; + "desktopYarnHash" = "1yrdg7fn533qg6wzg99s2si68nlzgvp9wiyallq0s2b665bznqxj"; + "webSrcHash" = "eVZ3SaUqM2YQehQNIS5kVQ98HrNwovYsZwHCndCcFa4="; + "webYarnHash" = "0xzwvhpvxzslvcybyn3si91fyi6a7xnrgib5dj6v5lcha1xd32w7"; }; } diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json index 4a25742d54cc..c520ff1eec8e 100644 --- a/pkgs/applications/version-management/gitlab/data.json +++ b/pkgs/applications/version-management/gitlab/data.json @@ -1,14 +1,14 @@ { - "version": "15.11.2", - "repo_hash": "sha256-4wdbe/DkZdfmOuKHlmBEKQYYduIaB1SD5ZYICHqADeE=", + "version": "15.11.3", + "repo_hash": "sha256-fOIh1x1ci2J1J8bXANOQObn8gqELeu0nisb+EdjyJzw=", "yarn_hash": "02ipm7agjy3c75df76c00k3qq5gpw3d876f6x91xnwizswsv9agb", "owner": "gitlab-org", "repo": "gitlab", - "rev": "v15.11.2-ee", + "rev": "v15.11.3-ee", "passthru": { - "GITALY_SERVER_VERSION": "15.11.2", - "GITLAB_PAGES_VERSION": "15.11.2", + "GITALY_SERVER_VERSION": "15.11.3", + "GITLAB_PAGES_VERSION": "15.11.3", "GITLAB_SHELL_VERSION": "14.18.0", - "GITLAB_WORKHORSE_VERSION": "15.11.2" + "GITLAB_WORKHORSE_VERSION": "15.11.3" } } diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix index ef4c7ba946b4..f668d1050644 100644 --- a/pkgs/applications/version-management/gitlab/gitaly/default.nix +++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix @@ -11,7 +11,7 @@ let gemdir = ./.; }; - version = "15.11.2"; + version = "15.11.3"; package_version = "v${lib.versions.major version}"; gitaly_package = "gitlab.com/gitlab-org/gitaly/${package_version}"; @@ -22,7 +22,7 @@ let owner = "gitlab-org"; repo = "gitaly"; rev = "v${version}"; - sha256 = "sha256-yX93YHHajXqAQq93mM/bRCQciDfJ0GR3kLSO4MQsWPY="; + sha256 = "sha256-3bbk9LDqo6hm8eG17+a7udM/yHjvXi3f32gNwXhrMrI="; }; vendorSha256 = "sha256-gJelagGPogeCdJtRpj4RaYlqzZRhtU0EIhmj1aK4ZOk="; diff --git a/pkgs/applications/version-management/gitlab/gitlab-pages/default.nix b/pkgs/applications/version-management/gitlab/gitlab-pages/default.nix index 5a3fb60b456e..fe2b8deaa070 100644 --- a/pkgs/applications/version-management/gitlab/gitlab-pages/default.nix +++ b/pkgs/applications/version-management/gitlab/gitlab-pages/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "gitlab-pages"; - version = "15.11.2"; + version = "15.11.3"; src = fetchFromGitLab { owner = "gitlab-org"; repo = "gitlab-pages"; rev = "v${version}"; - sha256 = "sha256-c5brpl9OEW4N8vmphdCRYl5TGkMN3FmXmINPpyEajUs="; + sha256 = "sha256-1qf/ZXOQBMT1aH0f6IyItTBUuhwVuE76sU8llRapZ0Q="; }; vendorHash = "sha256-s3HHoz9URACuVVhePQQFviTqlQU7vCLOjTJPBlus1Vo="; diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix index 5b2827d85441..b9427e0e34c8 100644 --- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix +++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix @@ -5,7 +5,7 @@ in buildGoModule rec { pname = "gitlab-workhorse"; - version = "15.11.2"; + version = "15.11.3"; src = fetchFromGitLab { owner = data.owner; diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile index 5c2d39a66920..25fbc65d271c 100644 --- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile +++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile @@ -435,7 +435,7 @@ group :development, :test do end group :development, :test, :danger do - gem 'gitlab-dangerfiles', '~> 3.8.0', require: false + gem 'gitlab-dangerfiles', '~> 3.9.0', require: false end group :development, :test, :coverage do diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock index 2940d6145726..cbc11b360a2d 100644 --- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock +++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock @@ -485,7 +485,7 @@ GEM faraday-em_http (1.0.0) faraday-em_synchrony (1.0.0) faraday-excon (1.1.0) - faraday-http-cache (2.4.1) + faraday-http-cache (2.5.0) faraday (>= 0.8) faraday-httpclient (1.0.1) faraday-multipart (1.0.4) @@ -595,7 +595,7 @@ GEM terminal-table (>= 1.5.1) gitlab-chronic (0.10.5) numerizer (~> 0.2) - gitlab-dangerfiles (3.8.0) + gitlab-dangerfiles (3.9.0) danger (>= 8.4.5) danger-gitlab (>= 8.0.0) rake @@ -1746,7 +1746,7 @@ DEPENDENCIES gettext_i18n_rails_js (~> 1.3) gitaly (~> 15.9.0.pre.rc3) gitlab-chronic (~> 0.10.5) - gitlab-dangerfiles (~> 3.8.0) + gitlab-dangerfiles (~> 3.9.0) gitlab-experiment (~> 0.7.1) gitlab-fog-azure-rm (~> 1.7.0) gitlab-labkit (~> 0.31.1) diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix index 6b38b3f01680..579dcd4242c2 100644 --- a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix +++ b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix @@ -1700,10 +1700,10 @@ src: platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1qsycf92z2797m9v6calp4yhz565vdsfazi7rj0rxy3jxvlv4lgv"; + sha256 = "0qvl49xpl2mwxgcj6aj11qrjk94xrqhbnpl5vp1y2275crnkddv4"; type = "gem"; }; - version = "2.4.1"; + version = "2.5.0"; }; faraday-httpclient = { groups = ["danger" "default" "development" "test"]; @@ -2157,10 +2157,10 @@ src: platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0zhsdnr3zbsym6j689d039hrd9if07jbircyl6ns4f5abwhc7w3y"; + sha256 = "13npl2yqcapsxwzm3b84537sa5s1cplcvba43nlwdcb1d22skfip"; type = "gem"; }; - version = "3.8.0"; + version = "3.9.0"; }; gitlab-experiment = { dependencies = ["activesupport" "request_store"]; diff --git a/pkgs/build-support/dart/build-dart-application/default.nix b/pkgs/build-support/dart/build-dart-application/default.nix new file mode 100644 index 000000000000..780aefa90ef9 --- /dev/null +++ b/pkgs/build-support/dart/build-dart-application/default.nix @@ -0,0 +1,66 @@ +{ lib, stdenv, fetchDartDeps, writeText, dartHooks, makeWrapper, dart, nodejs }: + +{ pubGetScript ? "dart pub get" + + # Output type to produce. Can be any kind supported by dart + # https://dart.dev/tools/dart-compile#types-of-output + # If using jit, you might want to pass some arguments to `dartJitFlags` +, dartOutputType ? "exe" +, dartCompileCommand ? "dart compile" +, dartCompileFlags ? [ ] + # These come at the end of the command, useful to pass flags to the jit run +, dartJitFlags ? [ ] + + # Attrset of entry point files to build and install. + # Where key is the final binary path and value is the source file path + # e.g. { "bin/foo" = "bin/main.dart"; } + # Set to null to read executables from pubspec.yaml +, dartEntryPoints ? null + # Used when wrapping aot, jit, kernel, and js builds. + # Set to null to disable wrapping. +, dartRuntimeCommand ? + if dartOutputType == "aot-snapshot" then "${dart}/bin/dartaotruntime" + else if (dartOutputType == "jit-snapshot" || dartOutputType == "kernel") then "${dart}/bin/dart" + else if dartOutputType == "js" then "${nodejs}/bin/node" + else null + +, pubspecLockFile ? null +, vendorHash ? "" +, ... +}@args: + +let + dartDeps = fetchDartDeps { + buildDrvArgs = args; + inherit pubGetScript vendorHash pubspecLockFile; + }; + inherit (dartHooks.override { inherit dart; }) dartConfigHook dartBuildHook dartInstallHook; +in +assert !(builtins.isString dartOutputType && dartOutputType != "") -> + throw "dartOutputType must be a non-empty string"; +stdenv.mkDerivation (args // { + inherit pubGetScript dartCompileCommand dartOutputType dartRuntimeCommand + dartCompileFlags dartJitFlags; + + dartEntryPoints = + if (dartEntryPoints != null) + then writeText "entrypoints.json" (builtins.toJSON dartEntryPoints) + else null; + + nativeBuildInputs = (args.nativeBuildInputs or [ ]) ++ [ + dart + dartDeps + dartConfigHook + dartBuildHook + dartInstallHook + makeWrapper + ]; + + # When stripping, it seems some ELF information is lost and the dart VM cli + # runs instead of the expected program. Don't strip if it's an exe output. + dontStrip = args.dontStrip or (dartOutputType == "exe"); + + passthru = { inherit dartDeps; } // (args.passthru or { }); + + meta = (args.meta or { }) // { platforms = args.meta.platforms or dart.meta.platforms; }; +}) diff --git a/pkgs/build-support/dart/build-dart-application/hooks/dart-build-hook.sh b/pkgs/build-support/dart/build-dart-application/hooks/dart-build-hook.sh new file mode 100644 index 000000000000..23ebfbd6e66e --- /dev/null +++ b/pkgs/build-support/dart/build-dart-application/hooks/dart-build-hook.sh @@ -0,0 +1,34 @@ +# shellcheck shell=bash + +# Outputs line-separated "${dest}\t${source}" +_getDartEntryPoints() { + if [ -n "$dartEntryPoints" ]; then + @jq@ -r '(to_entries | map(.key + "\t" + .value) | join("\n"))' "$dartEntryPoints" + else + # The pubspec executables section follows the pattern: + # : [source-file-name] + # Where source-file-name defaults to output-bin-name if omited + @yq@ -r '(.executables | to_entries | map("bin/" + .key + "\t" + "bin/" + (.value // .key) + ".dart") | join("\n"))' pubspec.yaml + fi +} + +dartBuildHook() { + echo "Executing dartBuildHook" + + runHook preBuild + + while IFS=$'\t' read -ra target; do + dest="${target[0]}" + src="${target[1]}" + eval "$dartCompileCommand" "$dartOutputType" \ + -o "$dest" "${dartCompileFlags[@]}" "$src" "${dartJitFlags[@]}" + done < <(_getDartEntryPoints) + + runHook postBuild + + echo "Finished dartBuildHook" +} + +if [ -z "${dontDartBuild-}" ] && [ -z "${buildPhase-}" ]; then + buildPhase=dartBuildHook +fi diff --git a/pkgs/build-support/dart/build-dart-application/hooks/dart-config-hook.sh b/pkgs/build-support/dart/build-dart-application/hooks/dart-config-hook.sh new file mode 100644 index 000000000000..ee610f673d2b --- /dev/null +++ b/pkgs/build-support/dart/build-dart-application/hooks/dart-config-hook.sh @@ -0,0 +1,12 @@ +# shellcheck shell=bash + +dartConfigHook() { + echo "Executing dartConfigHook" + + echo "Installing dependencies" + eval "$pubGetScript" --offline + + echo "Finished dartConfigHook" +} + +postConfigureHooks+=(dartConfigHook) diff --git a/pkgs/build-support/dart/build-dart-application/hooks/dart-install-hook.sh b/pkgs/build-support/dart/build-dart-application/hooks/dart-install-hook.sh new file mode 100644 index 000000000000..1906bcfbca4c --- /dev/null +++ b/pkgs/build-support/dart/build-dart-application/hooks/dart-install-hook.sh @@ -0,0 +1,29 @@ +# shellcheck shell=bash + +dartInstallHook() { + echo "Executing dartInstallHook" + + runHook preInstall + + mkdir -p "$out" + + while IFS=$'\t' read -ra target; do + dest="${target[0]}" + # Wrap with runtime command, if it's defined + if [ -n "$dartRuntimeCommand" ]; then + install -D "$dest" "$out/share/$dest" + makeWrapper "$dartRuntimeCommand" "$out/$dest" \ + --add-flags "$out/share/$dest" + else + install -Dm755 "$dest" "$out/$dest" + fi + done < <(_getDartEntryPoints) + + runHook postInstall + + echo "Finished dartInstallHook" +} + +if [ -z "${dontDartInstall-}" ] && [ -z "${installPhase-}" ]; then + installPhase=dartInstallHook +fi diff --git a/pkgs/build-support/dart/build-dart-application/hooks/default.nix b/pkgs/build-support/dart/build-dart-application/hooks/default.nix new file mode 100644 index 000000000000..463061c54a8d --- /dev/null +++ b/pkgs/build-support/dart/build-dart-application/hooks/default.nix @@ -0,0 +1,15 @@ +{ lib, makeSetupHook, dart, yq, jq }: + +{ + dartConfigHook = makeSetupHook { + name = "dart-config-hook"; + } ./dart-config-hook.sh; + dartBuildHook = makeSetupHook { + name = "dart-build-hook"; + substitutions.yq = "${yq}/bin/yq"; + substitutions.jq = "${jq}/bin/jq"; + } ./dart-build-hook.sh; + dartInstallHook = makeSetupHook { + name = "dart-install-hook"; + } ./dart-install-hook.sh; +} diff --git a/pkgs/build-support/flutter/default.nix b/pkgs/build-support/flutter/default.nix index 66ac78534e35..04f9fe4f404c 100644 --- a/pkgs/build-support/flutter/default.nix +++ b/pkgs/build-support/flutter/default.nix @@ -16,7 +16,7 @@ , customPackageOverrides ? { } , autoDepsList ? false , depsListFile ? null -, vendorHash +, vendorHash ? "" , pubspecLockFile ? null , nativeBuildInputs ? [ ] , preUnpack ? "" diff --git a/pkgs/development/compilers/flutter/engine-artifacts/default.nix b/pkgs/development/compilers/flutter/engine-artifacts/default.nix index 214a195e0c4b..ebcf019966f1 100644 --- a/pkgs/development/compilers/flutter/engine-artifacts/default.nix +++ b/pkgs/development/compilers/flutter/engine-artifacts/default.nix @@ -30,7 +30,7 @@ let variants = lib.genAttrs [ "profile" "release" ] (variant: [ { archive = "artifacts.zip"; } - { archive = "${lib.toLower hostPlatform.uname.system}-x64.zip"; } + { subdirectory = true; archive = "${lib.toLower hostPlatform.uname.system}-x64.zip"; } ]); })) // { @@ -80,7 +80,7 @@ let }; }; - mkArtifactDerivation = { platform ? null, variant ? null, archive, ... }@args: + mkArtifactDerivation = { platform ? null, variant ? null, subdirectory ? null, archive, ... }@args: let artifactDirectory = if platform == null then null else "${platform}${lib.optionalString (variant != null) "-${variant}"}"; archiveBasename = lib.removeSuffix ".${(lib.last (lib.splitString "." archive))}" archive; @@ -97,7 +97,14 @@ let nativeBuildInputs = [ autoPatchelfHook ]; - installPhase = "cp -r . $out"; + installPhase = + let + destination = "$out/${if subdirectory == true then archiveBasename else if subdirectory != null then subdirectory else "."}"; + in + '' + mkdir -p "${destination}" + cp -r . "${destination}" + ''; } // args); artifactDerivations = { diff --git a/pkgs/development/coq-modules/mathcomp-infotheo/default.nix b/pkgs/development/coq-modules/mathcomp-infotheo/default.nix new file mode 100644 index 000000000000..6a8bd17628d1 --- /dev/null +++ b/pkgs/development/coq-modules/mathcomp-infotheo/default.nix @@ -0,0 +1,19 @@ +{ coq, mkCoqDerivation, mathcomp-analysis, lib, version ? null }: + +mkCoqDerivation { + namePrefix = [ "coq" "mathcomp" ]; + pname = "infotheo"; + owner = "affeldt-aist"; + inherit version; + defaultVersion = with lib.versions; lib.switch [ coq.version mathcomp-analysis.version] [ + { cases = [ (range "8.15" "8.16") (range "0.5.4" "0.6.2") ]; out = "0.5.1"; } + ] null; + release."0.5.1".sha256 = "sha256-yBBl5l+V+dggsg5KM59Yo9CULKog/xxE8vrW+ZRnX7Y="; + + propagatedBuildInputs = [ mathcomp-analysis ]; + + meta = with lib; { + description = "A Coq formalization of information theory and linear error-correcting codes"; + license = licenses.lgpl21Plus; + }; +} diff --git a/pkgs/development/embedded/wch-isp/default.nix b/pkgs/development/embedded/wch-isp/default.nix new file mode 100644 index 000000000000..b83b64292f4a --- /dev/null +++ b/pkgs/development/embedded/wch-isp/default.nix @@ -0,0 +1,27 @@ +{ lib, stdenv, fetchFromGitHub, pkg-config, libusb1 }: + +stdenv.mkDerivation rec { + pname = "wch-isp"; + version = "0.2.4"; + + src = fetchFromGitHub { + owner = "jmaselbas"; + repo = pname; + rev = "v${version}"; + hash = "sha256-YjxzfDSZRMa7B+hNqtj87nRlRuQyr51VidZqHLddgwI="; + }; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ libusb1 ]; + + installFlags = [ "DESTDIR=$(out)" "PREFIX=" ]; + installTargets = [ "install" "install-rules" ]; + + meta = { + description = "Firmware programmer for WCH microcontrollers over USB"; + license = lib.licenses.gpl2Only; + homepage = "https://github.com/jmaselbas/wch-isp"; + maintainers = with lib.maintainers; [ lesuisse ]; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/development/interpreters/bqn/cbqn/default.nix b/pkgs/development/interpreters/bqn/cbqn/default.nix index 575e1ea7b943..a6e8f4c9feb9 100644 --- a/pkgs/development/interpreters/bqn/cbqn/default.nix +++ b/pkgs/development/interpreters/bqn/cbqn/default.nix @@ -50,12 +50,12 @@ stdenv.mkDerivation rec { makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" - ] - ++ lib.optional enableReplxx "REPLXX=1"; + ]; buildFlags = [ # interpreter binary (lib.flatten (if enableSingeli then ["o3n-singeli" "f='-mavx2'"] else ["o3"])) + "REPLXX=${if enableReplxx then "1" else "0"}" ] ++ lib.optionals enableLibcbqn [ # embeddable interpreter as a shared lib "shared-o3" diff --git a/pkgs/development/interpreters/bqn/cbqn/replxx.nix b/pkgs/development/interpreters/bqn/cbqn/replxx.nix index c94927144348..2074111d45f5 100644 --- a/pkgs/development/interpreters/bqn/cbqn/replxx.nix +++ b/pkgs/development/interpreters/bqn/cbqn/replxx.nix @@ -5,13 +5,13 @@ stdenvNoCC.mkDerivation { pname = "replxx"; - version = "unstable-2023-01-21"; + version = "unstable-2023-02-26"; src = fetchFromGitHub { owner = "dzaima"; repo = "replxx"; - rev = "eb6bcecff4ca6051120c99e9dd64c3bd20fcc42f"; - hash = "sha256-cb486FGF+4sUxgBbRfnbTTnZn2WQ3p93fSwDRCEtFJg="; + rev = "1da4681a8814366ec51e7630b76558e53be0997d"; + hash = "sha256-Zs7ItuK31n0VSxwOsPUdZZLr68PypitZqcydACrx90Q="; }; dontConfigure = true; diff --git a/pkgs/development/interpreters/bqn/cbqn/singeli.nix b/pkgs/development/interpreters/bqn/cbqn/singeli.nix index 9b14985e3a7d..253f7549a6c0 100644 --- a/pkgs/development/interpreters/bqn/cbqn/singeli.nix +++ b/pkgs/development/interpreters/bqn/cbqn/singeli.nix @@ -5,13 +5,13 @@ stdenvNoCC.mkDerivation { pname = "singeli"; - version = "unstable-2023-01-23"; + version = "unstable-2023-04-12"; src = fetchFromGitHub { owner = "mlochbaum"; repo = "Singeli"; - rev = "0bc519ccbbe4051204d40bfc861a5bed7132e95f"; - hash = "sha256-zo4yr9t3hp6BOX1ac3md6R/O+hl5MphZdCmI8nNP9Yc="; + rev = "3327956fedfdc6aef12954bc12120f20de2226d0"; + hash = "sha256-k25hk5zTn0m+2Nh9buTJYhtM98/VRlQ0guoRw9el3VE="; }; dontConfigure = true; diff --git a/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix b/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix index 1390eebe44ef..85a3be161caa 100644 --- a/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix +++ b/pkgs/development/interpreters/bqn/mlochbaum-bqn/default.nix @@ -7,13 +7,13 @@ stdenvNoCC.mkDerivation rec { pname = "bqn"; - version = "0.pre+date=2022-11-24"; + version = "0.pre+date=2023-05-09"; src = fetchFromGitHub { owner = "mlochbaum"; repo = "BQN"; - rev = "976bd82fb0e830876cca117c302c8a19048033a4"; - hash = "sha256:1nhn30ypc2zvq58b3zi66ypc9wv3v8cryn43cqihazc1lq8qxqdw"; + rev = "656b176c5dc783b038b018f0ed17a5414ea62b4d"; + hash = "sha256-6r+N0eCvwvaoB84cw+Vtoqa6MXuI0NXLbOPblemY4M8="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/python-modules/assay/default.nix b/pkgs/development/python-modules/assay/default.nix index 37c4ccc9392f..881c4bbf730e 100644 --- a/pkgs/development/python-modules/assay/default.nix +++ b/pkgs/development/python-modules/assay/default.nix @@ -1,4 +1,4 @@ -{ lib, buildPythonPackage, fetchFromGitHub }: +{ lib, buildPythonPackage, fetchFromGitHub, pythonAtLeast }: buildPythonPackage rec { pname = "assay"; @@ -18,5 +18,6 @@ buildPythonPackage rec { description = "Attempt to write a Python testing framework I can actually stand"; license = licenses.mit; maintainers = with maintainers; [ zane ]; + broken = pythonAtLeast "3.11"; }; } diff --git a/pkgs/development/python-modules/crc/default.nix b/pkgs/development/python-modules/crc/default.nix new file mode 100644 index 000000000000..6117ad4c5aea --- /dev/null +++ b/pkgs/development/python-modules/crc/default.nix @@ -0,0 +1,35 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, poetry-core +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "crc"; + version = "4.2.0"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "Nicoretti"; + repo = pname; + rev = "refs/tags/${version}"; + hash = "sha256-h/RVMIJX+Lyted0FHNBcKY54EiirSclkBXCpAQSATq8="; + }; + + nativeBuildInputs = [ poetry-core ]; + + pythonImportsCheck = [ "crc" ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + disabledTestPaths = [ "test/bench" ]; + + meta = with lib; { + changelog = "https://github.com/Nicoretti/crc/releases/tag/${version}"; + description = "Python module for calculating and verifying predefined & custom CRC's"; + homepage = "https://nicoretti.github.io/crc/"; + license = licenses.bsd2; + maintainers = with maintainers; [ jleightcap ]; + }; +} diff --git a/pkgs/development/python-modules/pymedio/default.nix b/pkgs/development/python-modules/pymedio/default.nix index d7f90f9f8453..bf220a4dc248 100644 --- a/pkgs/development/python-modules/pymedio/default.nix +++ b/pkgs/development/python-modules/pymedio/default.nix @@ -3,7 +3,11 @@ , fetchFromGitHub , pythonOlder , pytestCheckHook +, cryptography +, nibabel , numpy +, pydicom +, simpleitk }: buildPythonPackage rec { @@ -18,14 +22,20 @@ buildPythonPackage rec { hash = "sha256-iHbClOrtYkHT1Nar+5j/ig4Krya8LdQdFB4Mmm5B9bg="; }; - # relax Python dep to work with 3.10.x + # relax Python dep to work with 3.10.x and 3.11.x postPatch = '' - substituteInPlace setup.cfg --replace "!=3.10.*," "" + substituteInPlace setup.cfg --replace "!=3.10.*," "" --replace "!=3.11.*" "" ''; propagatedBuildInputs = [ numpy ]; - doCheck = false; # requires SimpleITK python package (not in Nixpkgs) + nativeCheckInputs = [ + pytestCheckHook + cryptography + nibabel + pydicom + simpleitk + ]; pythonImportsCheck = [ "pymedio" diff --git a/pkgs/development/python-modules/skyfield/default.nix b/pkgs/development/python-modules/skyfield/default.nix index 73e6ea9ed041..9b6d92e217d6 100644 --- a/pkgs/development/python-modules/skyfield/default.nix +++ b/pkgs/development/python-modules/skyfield/default.nix @@ -1,22 +1,33 @@ -{ lib, buildPythonPackage, fetchFromGitHub, certifi, numpy, sgp4, jplephem +{ lib, buildPythonPackage, pythonOlder, fetchFromGitHub, certifi, numpy, sgp4, jplephem , pandas, ipython, matplotlib, assay }: buildPythonPackage rec { pname = "skyfield"; - version = "1.42"; + version = "1.45"; src = fetchFromGitHub { owner = "skyfielders"; repo = "python-skyfield"; rev = version; - hash = "sha256-aoSkuLhZcEy+13EJQOBHV2/rgmN6aZQHqfj4OOirOG0="; + hash = "sha256-kZrXNVE+JGPGiVsd6CTwOqfciYLsD2A4pTS3FpqO+Dk="; }; + # Fix broken tests on "exotic" platforms. + # https://github.com/skyfielders/python-skyfield/issues/582#issuecomment-822033858 + postPatch = '' + substituteInPlace skyfield/tests/test_planetarylib.py \ + --replace "if IS_32_BIT" "if True" + ''; + propagatedBuildInputs = [ certifi numpy sgp4 jplephem ]; nativeCheckInputs = [ pandas ipython matplotlib assay ]; + # assay is broken on Python >= 3.11 + # https://github.com/brandon-rhodes/assay/issues/15 + doCheck = pythonOlder "3.11"; + checkPhase = '' runHook preCheck diff --git a/pkgs/development/python-modules/weaviate-client/default.nix b/pkgs/development/python-modules/weaviate-client/default.nix index 7b33099338b4..da0e6348024e 100644 --- a/pkgs/development/python-modules/weaviate-client/default.nix +++ b/pkgs/development/python-modules/weaviate-client/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "weaviate-client"; - version = "3.15.4"; + version = "3.18.0"; src = fetchPypi { inherit pname version; - hash = "sha256-XmHr/+++32KwdR195WL/1ThHF8juat/KTqbrFQ0BLhw="; + hash = "sha256-QjpSZRijJQXFKTMo5fJS5su/IOSzEkcz9w0Q/A1oI8k="; }; postPatch = '' diff --git a/pkgs/development/tools/misc/dart-sass/default.nix b/pkgs/development/tools/misc/dart-sass/default.nix index 1035d29d4ce7..b8cc7265fb08 100644 --- a/pkgs/development/tools/misc/dart-sass/default.nix +++ b/pkgs/development/tools/misc/dart-sass/default.nix @@ -1,54 +1,29 @@ { lib -, stdenvNoCC , fetchFromGitHub -, dart -, callPackage +, buildDartApplication }: -stdenvNoCC.mkDerivation (finalAttrs: rec { +buildDartApplication rec { pname = "dart-sass"; version = "1.62.1"; src = fetchFromGitHub { owner = "sass"; repo = pname; - rev = finalAttrs.version; + rev = version; hash = "sha256-U6enz8yJcc4Wf8m54eYIAnVg/jsGi247Wy8lp1r1wg4="; }; - nativeBuildInputs = [ - dart - (callPackage ../../../../build-support/dart/fetch-dart-deps { } { - buildDrvArgs = finalAttrs; - pubspecLockFile = ./pubspec.lock; - vendorHash = "sha256-Atm7zfnDambN/BmmUf4BG0yUz/y6xWzf0reDw3Ad41s="; - }) - ]; + pubspecLockFile = ./pubspec.lock; + vendorHash = "sha256-Atm7zfnDambN/BmmUf4BG0yUz/y6xWzf0reDw3Ad41s="; - configurePhase = '' - runHook preConfigure - dart pub get --offline - runHook postConfigure - ''; - - buildPhase = '' - runHook preBuild - dart compile exe --define=version=${finalAttrs.version} ./bin/sass.dart - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - install -D ./bin/sass.exe $out/bin/sass - runHook postInstall - ''; + dartCompileFlags = "--define=version=${version}"; meta = with lib; { - inherit (dart.meta) platforms; homepage = "https://github.com/sass/dart-sass"; description = "The reference implementation of Sass, written in Dart"; mainProgram = "sass"; license = licenses.mit; maintainers = with maintainers; [ lelgenio ]; }; -}) +} diff --git a/pkgs/games/itch/default.nix b/pkgs/games/itch/default.nix index ca0a04a8492d..a075a789f9d2 100644 --- a/pkgs/games/itch/default.nix +++ b/pkgs/games/itch/default.nix @@ -1,6 +1,5 @@ { lib , stdenvNoCC -, fetchpatch , fetchzip , fetchFromGitHub , butler @@ -12,23 +11,14 @@ }: stdenvNoCC.mkDerivation rec { pname = "itch"; - version = "25.5.1"; + version = "25.6.2"; src = fetchzip { url = "https://broth.itch.ovh/${pname}/linux-amd64/${version}/itch.zip"; stripRoot = false; - sha256 = "sha256-ejfS+sqhacW2h8u96W4fout3V8xrBs0SrW5w/7X83m4="; + sha256 = "sha256-F/vaYBHCygseiKNMJ+jBy31YDIFqYToAETGUl/pkHII="; }; - patches = [ - # Fixes crash while browsing the store. - (fetchpatch { - name = "itch.patch"; - url = "https://aur.archlinux.org/cgit/aur.git/plain/itch.patch?h=itch-bin&id=0b181454567029141749f870880b10093216e133"; - sha256 = "sha256-gmLL/BMondSflERm0z+DuGDP56JhDXiyxEwLUavTD8Q="; - }) - ]; - itch-setup = fetchzip { url = "https://broth.itch.ovh/itch-setup/linux-amd64/1.26.0/itch-setup.zip"; stripRoot = false; @@ -39,8 +29,8 @@ stdenvNoCC.mkDerivation rec { fetchFromGitHub { owner = "itchio"; repo = pname; - rev = "v${version}"; - hash = "sha256-DZBmf8fe0zw5uiQjNKXw8g/vU2hjNDa87z/7XuhyXog="; + rev = "v25.6.1-canary"; # Use ${version} if possible + hash = "sha256-iBp7K7AW97SOlRa8N8TW2LcVtmUi9JU00fYUuPwKORc="; sparseCheckout = [ sparseCheckout ]; } + sparseCheckout; diff --git a/pkgs/os-specific/darwin/raycast/default.nix b/pkgs/os-specific/darwin/raycast/default.nix index 611c15ad4171..6e2b83f3d128 100644 --- a/pkgs/os-specific/darwin/raycast/default.nix +++ b/pkgs/os-specific/darwin/raycast/default.nix @@ -6,7 +6,7 @@ stdenvNoCC.mkDerivation rec { pname = "raycast"; - version = "1.50.0"; + version = "1.51.1"; src = fetchurl { # https://github.com/NixOS/nixpkgs/pull/223495 @@ -17,7 +17,7 @@ stdenvNoCC.mkDerivation rec { # to host GitHub Actions to periodically check for updates # and re-release the `.dmg` file to Internet Archive (https://archive.org/details/raycast) url = "https://archive.org/download/raycast/raycast-${version}.dmg"; - sha256 = "sha256-+LvQDQZjbj/p8VT/af9XwKSKkKd65YzcwrKF9hoXCog="; + sha256 = "sha256-6U0dsDlIuU4OjgF8lvXbtVQ+xFB54KZpasvd307jca4="; }; dontPatch = true; diff --git a/pkgs/os-specific/linux/alsa-project/alsa-utils/default.nix b/pkgs/os-specific/linux/alsa-project/alsa-utils/default.nix index 37870fb37b47..07705f568a1d 100644 --- a/pkgs/os-specific/linux/alsa-project/alsa-utils/default.nix +++ b/pkgs/os-specific/linux/alsa-project/alsa-utils/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "alsa-utils"; - version = "1.2.8"; + version = "1.2.9"; src = fetchurl { url = "mirror://alsa/utils/${pname}-${version}.tar.bz2"; - sha256 = "sha256-4UD6YEw1Hza9chZ8iGDGnYG5ZK5qtTmS1kNN3jjpMzw="; + sha256 = "sha256-52I9RSVZX5LhHOJe6al/IEChTG5NzQJ6qW4Gy854F70="; }; nativeBuildInputs = [ gettext makeWrapper ]; diff --git a/pkgs/os-specific/linux/ch9344/default.nix b/pkgs/os-specific/linux/ch9344/default.nix index 25d7ecf02552..8f258d227bb1 100644 --- a/pkgs/os-specific/linux/ch9344/default.nix +++ b/pkgs/os-specific/linux/ch9344/default.nix @@ -13,6 +13,9 @@ stdenv.mkDerivation rec { patches = lib.optionals (lib.versionAtLeast kernel.modDirVersion "6.1") [ # https://github.com/torvalds/linux/commit/a8c11c1520347be74b02312d10ef686b01b525f1 ./fix-incompatible-pointer-types.patch + ] ++ lib.optionals (lib.versionAtLeast kernel.modDirVersion "6.3") [ + # https://github.com/torvalds/linux/commit/5d420399073770134d2b03e004b2c0201c7fa26f + ./fix-incompatible-pointer-types_6_3.patch ]; sourceRoot = "${src.name}/driver"; diff --git a/pkgs/os-specific/linux/ch9344/fix-incompatible-pointer-types_6_3.patch b/pkgs/os-specific/linux/ch9344/fix-incompatible-pointer-types_6_3.patch new file mode 100644 index 000000000000..b4cf265daac9 --- /dev/null +++ b/pkgs/os-specific/linux/ch9344/fix-incompatible-pointer-types_6_3.patch @@ -0,0 +1,13 @@ +diff --git a/ch9344.c b/ch9344.c +index a16af82..8922ed9 100644 +--- a/ch9344.c ++++ b/ch9344.c +@@ -774,7 +774,7 @@ static inline void *tty_get_portdata(struct ch9344_ttyport *port) + return (port->portdata); + } + +-static void ch9344_port_dtr_rts(struct tty_port *port, int raise) ++static void ch9344_port_dtr_rts(struct tty_port *port, bool raise) + { + struct ch9344_ttyport *ttyport = container_of(port, struct ch9344_ttyport, port); + struct ch9344 *ch9344 = tty_get_portdata(ttyport); diff --git a/pkgs/servers/dns/bind/default.nix b/pkgs/servers/dns/bind/default.nix index e7e904cb94cd..939ef23275d7 100644 --- a/pkgs/servers/dns/bind/default.nix +++ b/pkgs/servers/dns/bind/default.nix @@ -9,11 +9,11 @@ stdenv.mkDerivation rec { pname = "bind"; - version = "9.18.12"; + version = "9.18.14"; src = fetchurl { url = "https://downloads.isc.org/isc/bind9/${version}/${pname}-${version}.tar.xz"; - sha256 = "sha256-R3Zrt7BjqrutBUOGsZCqf2wUUkQnr9Qnww7EJlEgJ+c="; + sha256 = "sha256-muEu32rDxDCzPs0afAwMYIddJVGF64eFD6ml55SmSgk="; }; outputs = [ "out" "lib" "dev" "man" "dnsutils" "host" ]; diff --git a/pkgs/tools/misc/getoptions/default.nix b/pkgs/tools/misc/getoptions/default.nix index e3ee684d4dfa..46a671707259 100644 --- a/pkgs/tools/misc/getoptions/default.nix +++ b/pkgs/tools/misc/getoptions/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenvNoCC, fetchFromGitHub, shellcheck, shellspec, busybox-sandbox-shell, ksh, mksh, yash, zsh }: +{ lib, stdenvNoCC, fetchFromGitHub, shellspec, busybox-sandbox-shell, ksh, mksh, yash, zsh }: stdenvNoCC.mkDerivation rec { pname = "getoptions"; @@ -15,13 +15,16 @@ stdenvNoCC.mkDerivation rec { doCheck = true; - nativeCheckInputs = [ shellcheck shellspec busybox-sandbox-shell ksh mksh yash zsh ]; + nativeCheckInputs = [ shellspec ksh mksh yash zsh ] + ++ lib.lists.optional (!stdenvNoCC.isDarwin) busybox-sandbox-shell; preCheck = '' sed -i '/shellspec -s posh/d' Makefile + '' + lib.strings.optionalString stdenvNoCC.isDarwin '' + sed -i "/shellspec -s 'busybox ash'/d" Makefile ''; - checkTarget = "check testall"; + checkTarget = "testall"; meta = with lib; { description = "An elegant option/argument parser for shell scripts (full support for bash and all POSIX shells)"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0d6e07697855..e83d21d8ccaf 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19265,6 +19265,8 @@ with pkgs; uisp = callPackage ../development/embedded/uisp { }; + wch-isp = callPackage ../development/embedded/wch-isp { }; + uncrustify = callPackage ../development/tools/misc/uncrustify { }; universal-ctags = callPackage ../development/tools/misc/universal-ctags { }; @@ -39899,6 +39901,12 @@ with pkgs; dart-sass = callPackage ../development/tools/misc/dart-sass { }; + fetchDartDeps = callPackage ../build-support/dart/fetch-dart-deps { }; + + buildDartApplication = callPackage ../build-support/dart/build-dart-application { }; + + dartHooks = callPackage ../build-support/dart/build-dart-application/hooks { }; + httrack = callPackage ../tools/backup/httrack { }; httraqt = libsForQt5.callPackage ../tools/backup/httrack/qt.nix { }; diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix index f8e249b7bbbd..e83f18786f1b 100644 --- a/pkgs/top-level/coq-packages.nix +++ b/pkgs/top-level/coq-packages.nix @@ -82,6 +82,7 @@ let mathcomp-bigenough = callPackage ../development/coq-modules/mathcomp-bigenough {}; mathcomp-classical = self.mathcomp-analysis.classical; mathcomp-finmap = callPackage ../development/coq-modules/mathcomp-finmap {}; + mathcomp-infotheo = callPackage ../development/coq-modules/mathcomp-infotheo {}; mathcomp-real-closed = callPackage ../development/coq-modules/mathcomp-real-closed {}; mathcomp-tarjan = callPackage ../development/coq-modules/mathcomp-tarjan {}; mathcomp-word = callPackage ../development/coq-modules/mathcomp-word {}; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f331d198332f..ac4340a0aa1b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2109,6 +2109,8 @@ self: super: with self; { crayons = callPackage ../development/python-modules/crayons { }; + crc = callPackage ../development/python-modules/crc { }; + crc16 = callPackage ../development/python-modules/crc16 { }; crc32c = callPackage ../development/python-modules/crc32c { };