diff --git a/.github/workflows/codeowners.yml b/.github/workflows/codeowners.yml index 164b5a1136f2..56588d45c9cd 100644 --- a/.github/workflows/codeowners.yml +++ b/.github/workflows/codeowners.yml @@ -25,6 +25,13 @@ jobs: steps: - uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30 + - uses: cachix/cachix-action@ad2ddac53f961de1989924296a1f236fcfbaa4fc # v15 + if: github.repository_owner == 'NixOS' + with: + # This cache is for the nixpkgs repo checks and should not be trusted or used elsewhere. + name: nixpkgs-ci + authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}' + # Important: Because we use pull_request_target, this checks out the base branch of the PR, not the PR itself. # We later build and run code from the base branch with access to secrets, # so it's important this is not the PRs code. diff --git a/.github/workflows/nixpkgs-vet.yml b/.github/workflows/nixpkgs-vet.yml index 7bfe973a8c36..f08af86822ca 100644 --- a/.github/workflows/nixpkgs-vet.yml +++ b/.github/workflows/nixpkgs-vet.yml @@ -26,52 +26,22 @@ jobs: # This should take 1 minute at most, but let's be generous. The default of 6 hours is definitely too long. timeout-minutes: 10 steps: - # This step has to be in this file, because it's needed to determine which revision of the repository to fetch, and we can only use other files from the repository once it's fetched. + # This checks out the base branch because of pull_request_target + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0 + with: + path: base + sparse-checkout: ci - name: Resolving the merge commit env: GH_TOKEN: ${{ github.token }} run: | - # This checks for mergeability of a pull request as recommended in - # https://docs.github.com/en/rest/guides/using-the-rest-api-to-interact-with-your-git-database?apiVersion=2022-11-28#checking-mergeability-of-pull-requests - - # Retry the API query this many times - retryCount=5 - # Start with 5 seconds, but double every retry - retryInterval=5 - while true; do - echo "Checking whether the pull request can be merged" - prInfo=$(gh api \ - -H "Accept: application/vnd.github+json" \ - -H "X-GitHub-Api-Version: 2022-11-28" \ - /repos/"$GITHUB_REPOSITORY"/pulls/${{ github.event.pull_request.number }}) - mergeable=$(jq -r .mergeable <<< "$prInfo") - mergedSha=$(jq -r .merge_commit_sha <<< "$prInfo") - - if [[ "$mergeable" == "null" ]]; then - if (( retryCount == 0 )); then - echo "Not retrying anymore. It's likely that GitHub is having internal issues: check https://www.githubstatus.com/" - exit 1 - else - (( retryCount -= 1 )) || true - - # null indicates that GitHub is still computing whether it's mergeable - # Wait a couple seconds before trying again - echo "GitHub is still computing whether this PR can be merged, waiting $retryInterval seconds before trying again ($retryCount retries left)" - sleep "$retryInterval" - - (( retryInterval *= 2 )) || true - fi - else - break - fi - done - - if [[ "$mergeable" == "true" ]]; then - echo "The PR can be merged, checking the merge commit $mergedSha" + if mergedSha=$(base/ci/get-merge-commit.sh ${{ github.repository }} ${{ github.event.number }}); then + echo "Checking the merge commit $mergedSha" echo "mergedSha=$mergedSha" >> "$GITHUB_ENV" else - echo "The PR cannot be merged, it has a merge conflict, skipping the rest.." + echo "Skipping the rest..." fi + rm -rf base - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0 if: env.mergedSha with: diff --git a/ci/OWNERS b/ci/OWNERS index 97eae12a2d65..2ad493fbc279 100644 --- a/ci/OWNERS +++ b/ci/OWNERS @@ -267,9 +267,11 @@ pkgs/development/python-modules/buildcatrust/ @ajs124 @lukegb @mweinelt /nixos/modules/services/mail/rspamd.nix @peti # Emacs -/pkgs/applications/editors/emacs/elisp-packages @adisbladis -/pkgs/applications/editors/emacs @adisbladis -/pkgs/top-level/emacs-packages.nix @adisbladis +/pkgs/applications/editors/emacs/elisp-packages @NixOS/emacs +/pkgs/applications/editors/emacs @NixOS/emacs +/pkgs/top-level/emacs-packages.nix @NixOS/emacs +/doc/packages/emacs.section.md @NixOS/emacs +/nixos/modules/services/editors/emacs.md @NixOS/emacs # Kakoune /pkgs/applications/editors/kakoune @philiptaron diff --git a/ci/README.md b/ci/README.md index 40c3d0ed344b..11b53c6095e6 100644 --- a/ci/README.md +++ b/ci/README.md @@ -41,3 +41,58 @@ Why not just build the tooling right from the PRs Nixpkgs version? - Because it improves security, since we don't have to build potentially untrusted code from PRs. The tool only needs a very minimal Nix evaluation at runtime, which can work with [readonly-mode](https://nixos.org/manual/nix/stable/command-ref/opt-common.html#opt-readonly-mode) and [restrict-eval](https://nixos.org/manual/nix/stable/command-ref/conf-file.html#conf-restrict-eval). +## `get-merge-commit.sh GITHUB_REPO PR_NUMBER` + +Check whether a PR is mergeable and return the test merge commit as +[computed by GitHub](https://docs.github.com/en/rest/guides/using-the-rest-api-to-interact-with-your-git-database?apiVersion=2022-11-28#checking-mergeability-of-pull-requests). + +Arguments: +- `GITHUB_REPO`: The repository of the PR, e.g. `NixOS/nixpkgs` +- `PR_NUMBER`: The PR number, e.g. `1234` + +Exit codes: +- 0: The PR can be merged, the test merge commit hash is returned on stdout +- 1: The PR cannot be merged because it's not open anymore +- 2: The PR cannot be merged because it has a merge conflict +- 3: The merge commit isn't being computed, GitHub is likely having internal issues, unknown if the PR is mergeable + +### Usage + +This script can be used in GitHub Actions workflows as follows: + +```yaml +on: pull_request_target + +# We need a token to query the API, but it doesn't need any special permissions +permissions: {} + +jobs: + build: + name: Build + runs-on: ubuntu-latest + steps: + # Important: Because of `pull_request_target`, this doesn't check out the PR, + # but rather the base branch of the PR, which is needed so we don't run untrusted code + - uses: actions/checkout@ + with: + path: base + sparse-checkout: ci + - name: Resolving the merge commit + env: + GH_TOKEN: ${{ github.token }} + run: | + if mergedSha=$(base/ci/get-merge-commit.sh ${{ github.repository }} ${{ github.event.number }}); then + echo "Checking the merge commit $mergedSha" + echo "mergedSha=$mergedSha" >> "$GITHUB_ENV" + else + # Skipping so that no notifications are sent + echo "Skipping the rest..." + fi + rm -rf base + - uses: actions/checkout@ + # Add this to _all_ subsequent steps to skip them + if: env.mergedSha + with: + ref: ${{ env.mergedSha }} + - ... +``` diff --git a/ci/get-merge-commit.sh b/ci/get-merge-commit.sh new file mode 100755 index 000000000000..c62bb56dd993 --- /dev/null +++ b/ci/get-merge-commit.sh @@ -0,0 +1,62 @@ +#!/usr/bin/env bash +# See ./README.md for docs + +set -euo pipefail + +log() { + echo "$@" >&2 +} + +if (( $# < 2 )); then + log "Usage: $0 GITHUB_REPO PR_NUMBER" + exit 99 +fi +repo=$1 +prNumber=$2 + +# Retry the API query this many times +retryCount=5 +# Start with 5 seconds, but double every retry +retryInterval=5 + +while true; do + log "Checking whether the pull request can be merged" + prInfo=$(gh api \ + -H "Accept: application/vnd.github+json" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + "/repos/$repo/pulls/$prNumber") + + # Non-open PRs won't have their mergeability computed no matter what + state=$(jq -r .state <<< "$prInfo") + if [[ "$state" != open ]]; then + log "PR is not open anymore" + exit 1 + fi + + mergeable=$(jq -r .mergeable <<< "$prInfo") + if [[ "$mergeable" == "null" ]]; then + if (( retryCount == 0 )); then + log "Not retrying anymore. It's likely that GitHub is having internal issues: check https://www.githubstatus.com/" + exit 3 + else + (( retryCount -= 1 )) || true + + # null indicates that GitHub is still computing whether it's mergeable + # Wait a couple seconds before trying again + log "GitHub is still computing whether this PR can be merged, waiting $retryInterval seconds before trying again ($retryCount retries left)" + sleep "$retryInterval" + + (( retryInterval *= 2 )) || true + fi + else + break + fi +done + +if [[ "$mergeable" == "true" ]]; then + log "The PR can be merged" + jq -r .merge_commit_sha <<< "$prInfo" +else + log "The PR has a merge conflict" + exit 2 +fi diff --git a/ci/request-reviews/get-reviewers.sh b/ci/request-reviews/get-reviewers.sh index be0fd10c5b22..1107edd9e6f1 100755 --- a/ci/request-reviews/get-reviewers.sh +++ b/ci/request-reviews/get-reviewers.sh @@ -35,6 +35,7 @@ log "This PR touches ${#touchedFiles[@]} files" git -C "$gitRepo" show "$baseRef":"$ownersFile" > "$tmp"/codeowners # Associative array with the user as the key for easy de-duplication +# Make sure to always lowercase keys to avoid duplicates with different casings declare -A users=() for file in "${touchedFiles[@]}"; do @@ -87,20 +88,20 @@ for file in "${touchedFiles[@]}"; do log "Team $entry has these members: ${members[*]}" for user in "${members[@]}"; do - users[$user]= + users[${user,,}]= done else # Everything else is a user - users[$entry]= + users[${entry,,}]= fi done done # Cannot request a review from the author -if [[ -v users[$prAuthor] ]]; then +if [[ -v users[${prAuthor,,}] ]]; then log "One or more files are owned by the PR author, ignoring" - unset 'users[$prAuthor]' + unset 'users[${prAuthor,,}]' fi gh api \ @@ -111,9 +112,9 @@ gh api \ # And we don't want to rerequest reviews from people who already reviewed while read -r user; do - if [[ -v users[$user] ]]; then + if [[ -v users[${user,,}] ]]; then log "User $user is a code owner but has already left a review, ignoring" - unset 'users[$user]' + unset 'users[${user,,}]' fi done < "$tmp/already-reviewed-by" diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 54df38a31a9f..a0df938571f1 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -960,6 +960,12 @@ githubId = 49609151; name = "Popa Ioan Alexandru"; }; + alexandru0-dev = { + email = "alexandru.italia32+nixpkgs@gmail.com"; + github = "alexandru0-dev"; + githubId = 45104896; + name = "Alexandru Nechita"; + }; alexarice = { email = "alexrice999@hotmail.co.uk"; github = "alexarice"; @@ -7669,6 +7675,12 @@ githubId = 111183546; keys = [ { fingerprint = "58CE D4BE 6B10 149E DA80 A990 2F48 6356 A4CB 30F3"; } ]; }; + genga898 = { + email = "genga898@gmail.com"; + github = "genga898"; + githubId = 84174227; + name = "Emmanuel Genga"; + }; genofire = { name = "genofire"; email = "geno+dev@fireorbit.de"; @@ -18391,6 +18403,18 @@ githubId = 1217934; name = "JosΓ© Romildo Malaquias"; }; + romner-set = { + email = "admin@cynosure.red"; + github = "romner-set"; + githubId = 41077433; + name = "romner-set"; + keys = [ + { + # uploaded to https://keys.openpgp.org + fingerprint = "4B75 244B 0279 9598 FF3B C21F 95FC 58F1 8CFD FAB0"; + } + ]; + }; ronanmacf = { email = "macfhlar@tcd.ie"; github = "RonanMacF"; diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix index 546c944e0c53..ed58cddae166 100644 --- a/maintainers/team-list.nix +++ b/maintainers/team-list.nix @@ -278,7 +278,11 @@ with lib.maintainers; }; emacs = { - members = [ adisbladis ]; + members = [ + AndersonTorres + adisbladis + linj + ]; scope = "Maintain the Emacs editor and packages."; shortName = "Emacs"; }; diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index 46fe89bff5a4..b2930f3b6f29 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -207,6 +207,10 @@ - `deno` has been updated to v2 which has breaking changes. Upstream will be abandoning v1 soon but for now you can use `deno_1` if you are yet to migrate (will be removed prior to cutting a final 24.11 release). +- `gogs` has been removed. Upstream development has stalled and it has several + [critical vulnerabilities](https://github.com/gogs/gogs/issues/7777) that weren't addressed + within a year. Consider migrating to `forgejo` or `gitea`. + - `knot-dns` has been updated to version 3.4.x. Check the [migration guide](https://www.knot-dns.cz/docs/latest/html/migration.html#upgrade-3-3-x-to-3-4-x) for breaking changes. - `services.kubernetes.kubelet.clusterDns` now accepts a list of DNS resolvers rather than a single string, bringing the module more in line with the upstream Kubelet configuration schema. @@ -685,6 +689,9 @@ - ZFS now imports its pools in `postResumeCommands` rather than `postDeviceCommands`. If you had `postDeviceCommands` scripts that depended on ZFS pools being imported, those now need to be in `postResumeCommands`. +- `services.automatic-timezoned.enable = true` will now set `time.timeZone = null`. + This is to avoid silently shadowing a user's explicitly defined timezone without recognition on the user's part. + - `services.localtimed.enable = true` will now set `time.timeZone = null`. This is to avoid silently shadowing a user's explicitly defined timezone without recognition on the user's part. diff --git a/nixos/modules/hardware/video/webcam/ipu6.nix b/nixos/modules/hardware/video/webcam/ipu6.nix index ae54e24ee2da..803902530dd9 100644 --- a/nixos/modules/hardware/video/webcam/ipu6.nix +++ b/nixos/modules/hardware/video/webcam/ipu6.nix @@ -26,9 +26,9 @@ in config = mkIf cfg.enable { - # Module is upstream as of 6.10 - boot.extraModulePackages = with config.boot.kernelPackages; - optional (kernelOlder "6.10") ipu6-drivers; + # Module is upstream as of 6.10, + # but still needs various out-of-tree i2c and the `intel-ipu6-psys` kernel driver + boot.extraModulePackages = with config.boot.kernelPackages; [ ipu6-drivers ]; hardware.firmware = with pkgs; [ ipu6-camera-bins diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix index ed016b552edc..8b0127dc29f7 100644 --- a/nixos/modules/misc/ids.nix +++ b/nixos/modules/misc/ids.nix @@ -296,7 +296,7 @@ in sickbeard = 265; headphones = 266; # couchpotato = 267; # unused, removed 2022-01-01 - gogs = 268; + # gogs = 268; # unused, removed in 2024-10-12 #pdns-recursor = 269; # dynamically allocated as of 2020-20-18 #kresd = 270; # switched to "knot-resolver" with dynamic ID rpc = 271; @@ -607,7 +607,7 @@ in sickbeard = 265; headphones = 266; # couchpotato = 267; # unused, removed 2022-01-01 - gogs = 268; + # gogs = 268; # unused, removed in 2024-10-12 #kresd = 270; # switched to "knot-resolver" with dynamic ID #rpc = 271; # unused #geoip = 272; # unused diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 6910458baf40..6f5357382dc5 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -759,7 +759,6 @@ ./services/misc/gitlab.nix ./services/misc/gitolite.nix ./services/misc/gitweb.nix - ./services/misc/gogs.nix ./services/misc/gollum.nix ./services/misc/gotenberg.nix ./services/misc/gpsd.nix diff --git a/nixos/modules/services/desktop-managers/lomiri.nix b/nixos/modules/services/desktop-managers/lomiri.nix index 310657179fea..75834eab0cd8 100644 --- a/nixos/modules/services/desktop-managers/lomiri.nix +++ b/nixos/modules/services/desktop-managers/lomiri.nix @@ -16,7 +16,6 @@ in { libayatana-common ubports-click ]) ++ (with pkgs.lomiri; [ - content-hub hfd-service history-service libusermetrics @@ -24,6 +23,7 @@ in { lomiri-calculator-app lomiri-camera-app lomiri-clock-app + lomiri-content-hub lomiri-docviewer-app lomiri-download-manager lomiri-filemanager-app @@ -129,7 +129,7 @@ in { environment.pathsToLink = [ # Configs for inter-app data exchange system - "/share/content-hub/peers" + "/share/lomiri-content-hub/peers" # Configs for inter-app URL requests "/share/lomiri-url-dispatcher/urls" # Splash screens & other images for desktop apps launched via lomiri-app-launch @@ -194,10 +194,6 @@ in { }; users.groups.usermetrics = { }; - - # TODO content-hub cannot pass files between applications without asking AA for permissions. And alot of the Lomiri stack is designed with AA availability in mind. This might be a requirement to be closer to upstream? - # But content-hub currently fails to pass files between applications even with AA enabled, and we can get away without AA in many places. Let's see how this develops before requiring this for good. - # security.apparmor.enable = true; }; meta.maintainers = lib.teams.lomiri.members; diff --git a/nixos/modules/services/misc/gogs.nix b/nixos/modules/services/misc/gogs.nix deleted file mode 100644 index a2c1ad0779e1..000000000000 --- a/nixos/modules/services/misc/gogs.nix +++ /dev/null @@ -1,271 +0,0 @@ -{ config, lib, options, pkgs, ... }: -let - cfg = config.services.gogs; - opt = options.services.gogs; - configFile = pkgs.writeText "app.ini" '' - BRAND_NAME = ${cfg.appName} - RUN_USER = ${cfg.user} - RUN_MODE = prod - - [database] - TYPE = ${cfg.database.type} - HOST = ${cfg.database.host}:${toString cfg.database.port} - NAME = ${cfg.database.name} - USER = ${cfg.database.user} - PASSWORD = #dbpass# - PATH = ${cfg.database.path} - - [repository] - ROOT = ${cfg.repositoryRoot} - - [server] - DOMAIN = ${cfg.domain} - HTTP_ADDR = ${cfg.httpAddress} - HTTP_PORT = ${toString cfg.httpPort} - EXTERNAL_URL = ${cfg.rootUrl} - - [session] - COOKIE_NAME = session - COOKIE_SECURE = ${lib.boolToString cfg.cookieSecure} - - [security] - SECRET_KEY = #secretkey# - INSTALL_LOCK = true - - [log] - ROOT_PATH = ${cfg.stateDir}/log - - ${cfg.extraConfig} - ''; -in - -{ - options = { - services.gogs = { - enable = lib.mkOption { - default = false; - type = lib.types.bool; - description = "Enable Go Git Service."; - }; - - useWizard = lib.mkOption { - default = false; - type = lib.types.bool; - description = "Do not generate a configuration and use Gogs' installation wizard instead. The first registered user will be administrator."; - }; - - stateDir = lib.mkOption { - default = "/var/lib/gogs"; - type = lib.types.str; - description = "Gogs data directory."; - }; - - user = lib.mkOption { - type = lib.types.str; - default = "gogs"; - description = "User account under which Gogs runs."; - }; - - group = lib.mkOption { - type = lib.types.str; - default = "gogs"; - description = "Group account under which Gogs runs."; - }; - - database = { - type = lib.mkOption { - type = lib.types.enum [ "sqlite3" "mysql" "postgres" ]; - example = "mysql"; - default = "sqlite3"; - description = "Database engine to use."; - }; - - host = lib.mkOption { - type = lib.types.str; - default = "127.0.0.1"; - description = "Database host address."; - }; - - port = lib.mkOption { - type = lib.types.port; - default = 3306; - description = "Database host port."; - }; - - name = lib.mkOption { - type = lib.types.str; - default = "gogs"; - description = "Database name."; - }; - - user = lib.mkOption { - type = lib.types.str; - default = "gogs"; - description = "Database user."; - }; - - password = lib.mkOption { - type = lib.types.str; - default = ""; - description = '' - The password corresponding to {option}`database.user`. - Warning: this is stored in cleartext in the Nix store! - Use {option}`database.passwordFile` instead. - ''; - }; - - passwordFile = lib.mkOption { - type = lib.types.nullOr lib.types.path; - default = null; - example = "/run/keys/gogs-dbpassword"; - description = '' - A file containing the password corresponding to - {option}`database.user`. - ''; - }; - - path = lib.mkOption { - type = lib.types.str; - default = "${cfg.stateDir}/data/gogs.db"; - defaultText = lib.literalExpression ''"''${config.${opt.stateDir}}/data/gogs.db"''; - description = "Path to the sqlite3 database file."; - }; - }; - - appName = lib.mkOption { - type = lib.types.str; - default = "Gogs: Go Git Service"; - description = "Application name."; - }; - - repositoryRoot = lib.mkOption { - type = lib.types.str; - default = "${cfg.stateDir}/repositories"; - defaultText = lib.literalExpression ''"''${config.${opt.stateDir}}/repositories"''; - description = "Path to the git repositories."; - }; - - domain = lib.mkOption { - type = lib.types.str; - default = "localhost"; - description = "Domain name of your server."; - }; - - rootUrl = lib.mkOption { - type = lib.types.str; - default = "http://localhost:3000/"; - description = "Full public URL of Gogs server."; - }; - - httpAddress = lib.mkOption { - type = lib.types.str; - default = "0.0.0.0"; - description = "HTTP listen address."; - }; - - httpPort = lib.mkOption { - type = lib.types.port; - default = 3000; - description = "HTTP listen port."; - }; - - cookieSecure = lib.mkOption { - type = lib.types.bool; - default = false; - description = '' - Marks session cookies as "secure" as a hint for browsers to only send - them via HTTPS. This option is recommend, if Gogs is being served over HTTPS. - ''; - }; - - extraConfig = lib.mkOption { - type = lib.types.str; - default = ""; - description = "Configuration lines appended to the generated Gogs configuration file."; - }; - }; - }; - - config = lib.mkIf cfg.enable { - - systemd.services.gogs = { - description = "Gogs (Go Git Service)"; - after = [ "network.target" ]; - wantedBy = [ "multi-user.target" ]; - path = [ pkgs.gogs ]; - - preStart = let - runConfig = "${cfg.stateDir}/custom/conf/app.ini"; - secretKey = "${cfg.stateDir}/custom/conf/secret_key"; - in '' - mkdir -p ${cfg.stateDir} - - # copy custom configuration and generate a random secret key if needed - ${lib.optionalString (cfg.useWizard == false) '' - mkdir -p ${cfg.stateDir}/custom/conf - cp -f ${configFile} ${runConfig} - - if [ ! -e ${secretKey} ]; then - head -c 16 /dev/urandom | base64 > ${secretKey} - fi - - KEY=$(head -n1 ${secretKey}) - DBPASS=$(head -n1 ${cfg.database.passwordFile}) - sed -e "s,#secretkey#,$KEY,g" \ - -e "s,#dbpass#,$DBPASS,g" \ - -i ${runConfig} - ''} - - mkdir -p ${cfg.repositoryRoot} - # update all hooks' binary paths - HOOKS=$(find ${cfg.repositoryRoot} -mindepth 4 -maxdepth 4 -type f -wholename "*git/hooks/*") - if [ "$HOOKS" ] - then - sed -ri 's,/nix/store/[a-z0-9.-]+/bin/gogs,${pkgs.gogs}/bin/gogs,g' $HOOKS - sed -ri 's,/nix/store/[a-z0-9.-]+/bin/env,${pkgs.coreutils}/bin/env,g' $HOOKS - sed -ri 's,/nix/store/[a-z0-9.-]+/bin/bash,${pkgs.bash}/bin/bash,g' $HOOKS - sed -ri 's,/nix/store/[a-z0-9.-]+/bin/perl,${pkgs.perl}/bin/perl,g' $HOOKS - fi - ''; - - serviceConfig = { - Type = "simple"; - User = cfg.user; - Group = cfg.group; - WorkingDirectory = cfg.stateDir; - ExecStart = "${pkgs.gogs}/bin/gogs web"; - Restart = "always"; - UMask = "0027"; - }; - - environment = { - USER = cfg.user; - HOME = cfg.stateDir; - GOGS_WORK_DIR = cfg.stateDir; - }; - }; - - users = lib.mkIf (cfg.user == "gogs") { - users.gogs = { - description = "Go Git Service"; - uid = config.ids.uids.gogs; - group = "gogs"; - home = cfg.stateDir; - createHome = true; - shell = pkgs.bash; - }; - groups.gogs.gid = config.ids.gids.gogs; - }; - - warnings = lib.optional (cfg.database.password != "") - ''config.services.gogs.database.password will be stored as plaintext - in the Nix store. Use database.passwordFile instead.''; - - # Create database passwordFile default when password is configured. - services.gogs.database.passwordFile = - (lib.mkDefault (toString (pkgs.writeTextFile { - name = "gogs-database-password"; - text = cfg.database.password; - }))); - }; -} diff --git a/nixos/modules/services/system/automatic-timezoned.nix b/nixos/modules/services/system/automatic-timezoned.nix index 6150aa22cfbd..50f84f39af7d 100644 --- a/nixos/modules/services/system/automatic-timezoned.nix +++ b/nixos/modules/services/system/automatic-timezoned.nix @@ -16,6 +16,11 @@ in timezone up-to-date based on the current location. It uses geoclue2 to determine the current location and systemd-timedated to actually set the timezone. + + To avoid silent overriding by the service, if you have explicitly set a + timezone, either remove it or ensure that it is set with a lower priority + than the default value using `lib.mkDefault` or `lib.mkOverride`. This is + to make the choice deliberate. An error will be presented otherwise. ''; }; package = mkPackageOption pkgs "automatic-timezoned" { }; @@ -23,6 +28,10 @@ in }; config = mkIf cfg.enable { + # This will give users an error if they have set an explicit time + # zone, rather than having the service silently override it. + time.timeZone = null; + security.polkit.extraConfig = '' polkit.addRule(function(action, subject) { if (action.id == "org.freedesktop.timedate1.set-timezone" diff --git a/nixos/modules/services/web-apps/mastodon.nix b/nixos/modules/services/web-apps/mastodon.nix index 5c383e9f16ab..a3a2bbd1eca6 100644 --- a/nixos/modules/services/web-apps/mastodon.nix +++ b/nixos/modules/services/web-apps/mastodon.nix @@ -12,9 +12,12 @@ let RAILS_ENV = "production"; NODE_ENV = "production"; + BOOTSNAP_CACHE_DIR="/var/cache/mastodon/precompile"; LD_PRELOAD = "${pkgs.jemalloc}/lib/libjemalloc.so"; - # mastodon-web concurrency. + MASTODON_USE_LIBVIPS = "true"; + + # Concurrency mastodon-web WEB_CONCURRENCY = toString cfg.webProcesses; MAX_THREADS = toString cfg.webThreads; @@ -24,7 +27,7 @@ let DB_NAME = cfg.database.name; LOCAL_DOMAIN = cfg.localDomain; SMTP_SERVER = cfg.smtp.host; - SMTP_PORT = toString(cfg.smtp.port); + SMTP_PORT = toString cfg.smtp.port; SMTP_FROM_ADDRESS = cfg.smtp.fromAddress; PAPERCLIP_ROOT_PATH = "/var/lib/mastodon/public-system"; PAPERCLIP_ROOT_URL = "/system"; @@ -33,12 +36,12 @@ let TRUSTED_PROXY_IP = cfg.trustedProxy; } // lib.optionalAttrs (cfg.redis.host != null) { REDIS_HOST = cfg.redis.host; } - // lib.optionalAttrs (cfg.redis.port != null) { REDIS_PORT = toString(cfg.redis.port); } + // lib.optionalAttrs (cfg.redis.port != null) { REDIS_PORT = toString cfg.redis.port; } // lib.optionalAttrs (cfg.redis.createLocally && cfg.redis.enableUnixSocket) { REDIS_URL = "unix://${config.services.redis.servers.mastodon.unixSocket}"; } // lib.optionalAttrs (cfg.database.host != "/run/postgresql" && cfg.database.port != null) { DB_PORT = toString cfg.database.port; } // lib.optionalAttrs cfg.smtp.authenticate { SMTP_LOGIN = cfg.smtp.user; } // lib.optionalAttrs (cfg.elasticsearch.host != null) { ES_HOST = cfg.elasticsearch.host; } - // lib.optionalAttrs (cfg.elasticsearch.host != null) { ES_PORT = toString(cfg.elasticsearch.port); } + // lib.optionalAttrs (cfg.elasticsearch.host != null) { ES_PORT = toString cfg.elasticsearch.port; } // lib.optionalAttrs (cfg.elasticsearch.host != null) { ES_PRESET = cfg.elasticsearch.preset; } // lib.optionalAttrs (cfg.elasticsearch.user != null) { ES_USER = cfg.elasticsearch.user; } // cfg.extraConfig; @@ -51,6 +54,9 @@ let Group = cfg.group; # Working directory WorkingDirectory = cfg.package; + # Cache directory and mode + CacheDirectory = "mastodon"; + CacheDirectoryMode = "0750"; # State directory and mode StateDirectory = "mastodon"; StateDirectoryMode = "0750"; @@ -127,7 +133,7 @@ let description = "Mastodon sidekiq${jobClassLabel}"; wantedBy = [ "mastodon.target" ]; environment = env // { - PORT = toString(cfg.sidekiqPort); + PORT = toString cfg.sidekiqPort; DB_POOL = threads; }; serviceConfig = { @@ -309,7 +315,7 @@ in { Voluntary Application Server Identification. A new keypair can be generated by running: - `nix build -f '' mastodon; cd result; bin/rake webpush:generate_keys` + `nix build -f '' mastodon; cd result; RAILS_ENV=production bin/rake webpush:generate_keys` If {option}`mastodon.vapidPrivateKeyFile`does not exist, it and this file will be created with a new keypair. @@ -324,12 +330,57 @@ in { type = lib.types.str; }; + activeRecordEncryptionDeterministicKeyFile = lib.mkOption { + description = '' + This key must be set to enable the Active Record Encryption feature within + Rails that Mastodon uses to encrypt and decrypt some database attributes. + A new Active Record keys can be generated by running: + + `nix build -f '' mastodon; cd result; RAILS_ENV=production ./bin/rails db:encryption:init` + + If this file does not exist, it will be created with a new Active Record + keys. + ''; + default = "/var/lib/mastodon/secrets/active-record-encryption-deterministic-key"; + type = lib.types.str; + }; + + activeRecordEncryptionKeyDerivationSaltFile = lib.mkOption { + description = '' + This key must be set to enable the Active Record Encryption feature within + Rails that Mastodon uses to encrypt and decrypt some database attributes. + A new Active Record keys can be generated by running: + + `nix build -f '' mastodon; cd result; RAILS_ENV=production ./bin/rails db:encryption:init` + + If this file does not exist, it will be created with a new Active Record + keys. + ''; + default = "/var/lib/mastodon/secrets/active-record-encryption-key-derivation-salt"; + type = lib.types.str; + }; + + activeRecordEncryptionPrimaryKeyFile = lib.mkOption { + description = '' + This key must be set to enable the Active Record Encryption feature within + Rails that Mastodon uses to encrypt and decrypt some database attributes. + A new Active Record keys can be generated by running: + + `nix build -f '' mastodon; cd result; RAILS_ENV=production ./bin/rails db:encryption:init` + + If this file does not exist, it will be created with a new Active Record + keys. + ''; + default = "/var/lib/mastodon/secrets/active-record-encryption-primary-key"; + type = lib.types.str; + }; + secretKeyBaseFile = lib.mkOption { description = '' Path to file containing the secret key base. A new secret key base can be generated by running: - `nix build -f '' mastodon; cd result; bin/rake secret` + `nix build -f '' mastodon; cd result; bin/bundle exec rails secret` If this file does not exist, it will be created with a new secret key base. ''; @@ -342,7 +393,7 @@ in { Path to file containing the OTP secret. A new OTP secret can be generated by running: - `nix build -f '' mastodon; cd result; bin/rake secret` + `nix build -f '' mastodon; cd result; bin/bundle exec rails secret` If this file does not exist, it will be created with a new OTP secret. ''; @@ -708,13 +759,28 @@ in { script = '' umask 077 + if ! test -d /var/cache/mastodon/precompile; then + ${cfg.package}/bin/bundle exec bootsnap precompile --gemfile ${cfg.package}/app ${cfg.package}/lib + fi + if ! test -f ${cfg.activeRecordEncryptionDeterministicKeyFile}; then + mkdir -p $(dirname ${cfg.activeRecordEncryptionDeterministicKeyFile}) + bin/rails db:encryption:init | grep --only-matching "ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY=[^ ]\+" | sed 's/^ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY=//' > ${cfg.activeRecordEncryptionDeterministicKeyFile} + fi + if ! test -f ${cfg.activeRecordEncryptionKeyDerivationSaltFile}; then + mkdir -p $(dirname ${cfg.activeRecordEncryptionKeyDerivationSaltFile}) + bin/rails db:encryption:init | grep --only-matching "ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT=[^ ]\+" | sed 's/^ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT=//' > ${cfg.activeRecordEncryptionKeyDerivationSaltFile} + fi + if ! test -f ${cfg.activeRecordEncryptionPrimaryKeyFile}; then + mkdir -p $(dirname ${cfg.activeRecordEncryptionPrimaryKeyFile}) + bin/rails db:encryption:init | grep --only-matching "ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY=[^ ]\+" | sed 's/^ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY=//' > ${cfg.activeRecordEncryptionPrimaryKeyFile} + fi if ! test -f ${cfg.secretKeyBaseFile}; then mkdir -p $(dirname ${cfg.secretKeyBaseFile}) - bin/rake secret > ${cfg.secretKeyBaseFile} + bin/bundle exec rails secret > ${cfg.secretKeyBaseFile} fi if ! test -f ${cfg.otpSecretFile}; then mkdir -p $(dirname ${cfg.otpSecretFile}) - bin/rake secret > ${cfg.otpSecretFile} + bin/bundle exec rails secret > ${cfg.otpSecretFile} fi if ! test -f ${cfg.vapidPrivateKeyFile}; then mkdir -p $(dirname ${cfg.vapidPrivateKeyFile}) $(dirname ${cfg.vapidPublicKeyFile}) @@ -724,6 +790,9 @@ in { fi cat > /var/lib/mastodon/.secrets_env <&2 'The Dart SDK does not contain the requested package: ${name}!' + exit 1 + fi + ''; + } // sdkSourceBuilders; + }; packageConfig = generators.linkPackageConfig { packageConfig = pub2nix.generatePackageConfig { pname = if args.pname != null then "${args.pname}-${args.version}" else null; diff --git a/pkgs/by-name/ae/aerospace/package.nix b/pkgs/by-name/ae/aerospace/package.nix new file mode 100644 index 000000000000..f62116273a63 --- /dev/null +++ b/pkgs/by-name/ae/aerospace/package.nix @@ -0,0 +1,58 @@ +{ + fetchzip, + gitUpdater, + installShellFiles, + lib, + stdenv, + versionCheckHook, +}: + +let + appName = "AeroSpace.app"; + version = "0.14.2-Beta"; +in +stdenv.mkDerivation { + pname = "aerospace"; + + inherit version; + + src = fetchzip { + url = "https://github.com/nikitabobko/AeroSpace/releases/download/v${version}/AeroSpace-v${version}.zip"; + hash = "sha256-v2D/IV9Va0zbGHEwSGt6jvDqQYqha290Lm6u+nZTS3A="; + }; + + nativeBuildInputs = [ installShellFiles ]; + + installPhase = '' + runHook preInstall + mkdir -p $out/Applications + mv ${appName} $out/Applications + cp -R bin $out + mkdir -p $out/share + runHook postInstall + ''; + + postInstall = '' + installManPage manpage/* + installShellCompletion --bash shell-completion/bash/aerospace + installShellCompletion --fish shell-completion/fish/aerospace.fish + installShellCompletion --zsh shell-completion/zsh/_aerospace + ''; + + passthru.tests.can-print-version = [ versionCheckHook ]; + + passthru.updateScript = gitUpdater { + url = "https://github.com/nikitabobko/AeroSpace.git"; + rev-prefix = "v"; + }; + + meta = { + license = lib.licenses.mit; + mainProgram = "aerospace"; + homepage = "https://github.com/nikitabobko/AeroSpace"; + description = "i3-like tiling window manager for macOS"; + platforms = lib.platforms.darwin; + maintainers = with lib.maintainers; [ alexandru0-dev ]; + sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; + }; +} diff --git a/pkgs/by-name/ai/aider-chat/package.nix b/pkgs/by-name/ai/aider-chat/package.nix index d1ed4c6f936b..d8d42d73c4e8 100644 --- a/pkgs/by-name/ai/aider-chat/package.nix +++ b/pkgs/by-name/ai/aider-chat/package.nix @@ -12,7 +12,7 @@ let self = python3; packageOverrides = _: super: { tree-sitter = super.tree-sitter_0_21; }; }; - version = "0.57.0"; + version = "0.59.0"; in python3.pkgs.buildPythonApplication { pname = "aider-chat"; @@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication { owner = "paul-gauthier"; repo = "aider"; rev = "refs/tags/v${version}"; - hash = "sha256-ErDepSju8B4GochHKxL03aUfOLAiNfTaXBAllAZ144M="; + hash = "sha256-20LicYj1j5gGzhF+SxPUKu858nHZgwDF1JxXeHRtYe0="; }; pythonRelaxDeps = true; @@ -68,6 +68,7 @@ python3.pkgs.buildPythonApplication { streamlit tokenizers watchdog + pydub ] ++ lib.optionals (!tensorflow.meta.broken) [ llama-index-core diff --git a/pkgs/by-name/al/alpaca/package.nix b/pkgs/by-name/al/alpaca/package.nix index ab0bb3a83331..88a3dc8fc502 100644 --- a/pkgs/by-name/al/alpaca/package.nix +++ b/pkgs/by-name/al/alpaca/package.nix @@ -13,18 +13,19 @@ gtksourceview5, xdg-utils, ollama, + vte-gtk4, }: python3Packages.buildPythonApplication rec { pname = "alpaca"; - version = "2.0.6"; + version = "2.6.0"; pyproject = false; # Built with meson src = fetchFromGitHub { owner = "Jeffser"; repo = "Alpaca"; rev = "refs/tags/${version}"; - hash = "sha256-4c6pisd3o7mycivHd1QZ2N7s8pYzrQXiZMbVvl5ciPA="; + hash = "sha256-XXxfbchQ1l6L8KflqjlGIiyRbG/dI5ok0ExlROavXYg="; }; nativeBuildInputs = [ @@ -40,6 +41,7 @@ python3Packages.buildPythonApplication rec { buildInputs = [ libadwaita gtksourceview5 + vte-gtk4 ]; dependencies = with python3Packages; [ diff --git a/pkgs/by-name/am/am2rlauncher/package.nix b/pkgs/by-name/am/am2rlauncher/package.nix index 33dde993cd8f..cf2f5ebc7167 100644 --- a/pkgs/by-name/am/am2rlauncher/package.nix +++ b/pkgs/by-name/am/am2rlauncher/package.nix @@ -4,7 +4,7 @@ , glibc , gtk3 , libappindicator -, webkitgtk +, webkitgtk_4_0 , e2fsprogs , libnotify , libgit2 @@ -63,7 +63,7 @@ buildDotnetModule { glibc gtk3 libappindicator - webkitgtk + webkitgtk_4_0 e2fsprogs libnotify libgit2 diff --git a/pkgs/by-name/ap/apvlv/package.nix b/pkgs/by-name/ap/apvlv/package.nix index 0e5b60fd4a85..29be06265208 100644 --- a/pkgs/by-name/ap/apvlv/package.nix +++ b/pkgs/by-name/ap/apvlv/package.nix @@ -20,7 +20,7 @@ poppler, stdenv, testers, - webkitgtk, + webkitgtk_4_0, wrapGAppsHook3, }: @@ -61,7 +61,7 @@ stdenv.mkDerivation (finalAttrs: { libxshmfence # otherwise warnings in compilation pcre poppler - webkitgtk + webkitgtk_4_0 ]; installPhase = '' diff --git a/pkgs/by-name/ar/arti/package.nix b/pkgs/by-name/ar/arti/package.nix index 6185ec1c683f..0fdb1f50115e 100644 --- a/pkgs/by-name/ar/arti/package.nix +++ b/pkgs/by-name/ar/arti/package.nix @@ -11,7 +11,7 @@ rustPlatform.buildRustPackage rec { pname = "arti"; - version = "1.2.7"; + version = "1.2.8"; src = fetchFromGitLab { domain = "gitlab.torproject.org"; @@ -19,10 +19,10 @@ rustPlatform.buildRustPackage rec { owner = "core"; repo = "arti"; rev = "arti-v${version}"; - hash = "sha256-lyko4xwTn03/Es8icOx8GIrjC4XDXvZPDYHYILw8Opo="; + hash = "sha256-vw/hebZ23Pk+hQx3YN9iXsKWq20fqpwp91E2tul8zmA="; }; - cargoHash = "sha256-I45SaawWAK7iTZDFhJT4YVO439D/3NmWLp3FtFmhLC0="; + cargoHash = "sha256-4F+0KEVoeppNQ26QQ+a2CSIbrklE8NY3+OK11I5JstA="; nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ pkg-config ]; @@ -47,8 +47,7 @@ rustPlatform.buildRustPackage rec { ]; checkFlags = [ - # problematic tests that were fixed after the release - "--skip=reload_cfg::test::watch_single_file" + # problematic test that hangs the build "--skip=reload_cfg::test::watch_multiple" ]; diff --git a/pkgs/by-name/au/audiobookshelf/source.json b/pkgs/by-name/au/audiobookshelf/source.json index 350ca60dfd95..87811d028730 100644 --- a/pkgs/by-name/au/audiobookshelf/source.json +++ b/pkgs/by-name/au/audiobookshelf/source.json @@ -1,9 +1,9 @@ { "owner": "advplyr", "repo": "audiobookshelf", - "rev": "ce213c3d89458baeb77324ce59a5f2137740564e", - "hash": "sha256-7vPhvsjGJQvus5Mmx8543OuBeuPWC/4cLfHHYmN2lnk=", - "version": "2.13.4", - "depsHash": "sha256-1CmtuzE8R6zkb0DT7gt9MrxErAw0mqY2AkJZh3PjuBQ=", - "clientDepsHash": "sha256-BfrVN70i1e4JWELxLS0jliHLfG4/kN8tj8aQOjsnZ/M=" + "rev": "cf5598aeb9b086a28e853d6a89b82a7467fd6969", + "hash": "sha256-tObC7QbdwpAlt97eXB9QzZEaQcquuST+8nC6lYEXTUM=", + "version": "2.14.0", + "depsHash": "sha256-nVsmV3Vms2S9oM7duFfgt+go1+wM2JniI8B3UFmv/TE=", + "clientDepsHash": "sha256-oaoGxcMs8XQVaRx8UO9NSThqbHuZsA4fm8OGlSiaKO0=" } diff --git a/pkgs/by-name/aw/aws-workspaces/package.nix b/pkgs/by-name/aw/aws-workspaces/package.nix index bffc25ca4829..fad93e74d47f 100644 --- a/pkgs/by-name/aw/aws-workspaces/package.nix +++ b/pkgs/by-name/aw/aws-workspaces/package.nix @@ -11,7 +11,7 @@ , gtk3 , openssl_1_1 , icu70 -, webkitgtk +, webkitgtk_4_0 , librsvg , gdk-pixbuf , libsoup @@ -54,7 +54,7 @@ stdenv.mkDerivation (finalAttrs: { gtk3 openssl_1_1.out icu70 - webkitgtk + webkitgtk_4_0 librsvg gdk-pixbuf libsoup diff --git a/pkgs/by-name/az/azure-cli/python-packages.nix b/pkgs/by-name/az/azure-cli/python-packages.nix index 5bde74450419..0b09811647bc 100644 --- a/pkgs/by-name/az/azure-cli/python-packages.nix +++ b/pkgs/by-name/az/azure-cli/python-packages.nix @@ -119,6 +119,17 @@ let overrideAzureMgmtPackage super.azure-mgmt-batchai "7.0.0b1" "zip" "sha256-mT6vvjWbq0RWQidugR229E8JeVEiobPD3XA/nDM3I6Y="; + azure-mgmt-billing = + (overrideAzureMgmtPackage super.azure-mgmt-billing "6.0.0" "zip" + "sha256-1PXFpBiKRW/h6zK2xF9VyiBpx0vkHrdpIYQLOfL1wH8=" + ).overridePythonAttrs + (attrs: { + propagatedBuildInputs = attrs.propagatedBuildInputs or [ ] ++ [ + self.msrest + self.msrestazure + ]; + }); + # AttributeError: type object 'CustomDomainsOperations' has no attribute 'disable_custom_https' azure-mgmt-cdn = overrideAzureMgmtPackage super.azure-mgmt-cdn "12.0.0" "zip" diff --git a/pkgs/by-name/bo/boxbuddy/package.nix b/pkgs/by-name/bo/boxbuddy/package.nix index db8e357899f6..34c3cd1911ac 100644 --- a/pkgs/by-name/bo/boxbuddy/package.nix +++ b/pkgs/by-name/bo/boxbuddy/package.nix @@ -9,16 +9,16 @@ rustPlatform.buildRustPackage rec { pname = "boxbuddy"; - version = "2.2.12"; + version = "2.2.13"; src = fetchFromGitHub { owner = "Dvlv"; repo = "BoxBuddyRS"; rev = version; - hash = "sha256-PoPIIwe2SlK/iQTyqIhMG0dRobU98L5hnOciMmi9coo="; + hash = "sha256-47LOwBm7ql3Nvx6PZ2+x5aR9LSpzc8xuixdvKGdNS94="; }; - cargoHash = "sha256-En5TVCW/URJEry4sTd+vdi8K1YO2L0X5pYu/TGsrx6U="; + cargoHash = "sha256-W4W2tnnNgBcGD0/t5pobj4ca/YrRkHE1l5dIVe21KPU="; # The software assumes it is installed either in flatpak or in the home directory # so the xdg data path needs to be patched here diff --git a/pkgs/by-name/ca/cargo-tauri/package.nix b/pkgs/by-name/ca/cargo-tauri/package.nix index 867dff3b7c4f..1746042b4287 100644 --- a/pkgs/by-name/ca/cargo-tauri/package.nix +++ b/pkgs/by-name/ca/cargo-tauri/package.nix @@ -9,7 +9,7 @@ libsoup, openssl, pkg-config, - webkitgtk, + webkitgtk_4_0, }: rustPlatform.buildRustPackage rec { @@ -36,7 +36,7 @@ rustPlatform.buildRustPackage rec { ++ lib.optionals stdenv.hostPlatform.isLinux [ gtk3 libsoup - webkitgtk + webkitgtk_4_0 ] ++ lib.optionals stdenv.hostPlatform.isDarwin ( with darwin.apple_sdk.frameworks; diff --git a/pkgs/by-name/ca/cargo-tauri/test-app.nix b/pkgs/by-name/ca/cargo-tauri/test-app.nix index d9304e38910d..1cfa3eee9c38 100644 --- a/pkgs/by-name/ca/cargo-tauri/test-app.nix +++ b/pkgs/by-name/ca/cargo-tauri/test-app.nix @@ -8,7 +8,7 @@ libsoup, openssl, pkg-config, - webkitgtk, + webkitgtk_4_0, wrapGAppsHook3, }: @@ -38,7 +38,7 @@ rustPlatform.buildRustPackage rec { ++ lib.optionals stdenv.isLinux [ glib-networking libsoup - webkitgtk + webkitgtk_4_0 ] ++ lib.optionals stdenv.isDarwin ( with darwin.apple_sdk.frameworks; diff --git a/pkgs/development/libraries/catboost/default.nix b/pkgs/by-name/ca/catboost/package.nix similarity index 65% rename from pkgs/development/libraries/catboost/default.nix rename to pkgs/by-name/ca/catboost/package.nix index ca0d22ff002c..1d0ef404a667 100644 --- a/pkgs/development/libraries/catboost/default.nix +++ b/pkgs/by-name/ca/catboost/package.nix @@ -1,20 +1,21 @@ -{ lib -, config -, fetchFromGitHub -, cmake -, cctools -, libiconv -, llvmPackages -, ninja -, openssl -, python3Packages -, ragel -, yasm -, zlib -, cudaSupport ? config.cudaSupport -, cudaPackages ? {} -, llvmPackages_12 -, pythonSupport ? false +{ + lib, + config, + fetchFromGitHub, + cmake, + cctools, + libiconv, + llvmPackages, + ninja, + openssl, + python3Packages, + ragel, + yasm, + zlib, + cudaSupport ? config.cudaSupport, + cudaPackages ? { }, + llvmPackages_12, + pythonSupport ? false, }: let inherit (llvmPackages) stdenv; @@ -22,13 +23,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "catboost"; - version = "1.2.5"; + version = "1.2.7"; src = fetchFromGitHub { owner = "catboost"; repo = "catboost"; rev = "refs/tags/v${finalAttrs.version}"; - hash = "sha256-2dfCCCa0LheytkLRbYuBd25M320f1kbhBWKIVjslor0="; + hash = "sha256-I3geFdVQ1Pm61eRXi+ueaxel3QRb8EJV9f4zV2Q7kk4="; }; patches = [ @@ -50,33 +51,50 @@ stdenv.mkDerivation (finalAttrs: { done ''; - outputs = [ "out" "dev" ]; + outputs = [ + "out" + "dev" + ]; - nativeBuildInputs = [ - cmake - llvmPackages.bintools - ninja - (python3Packages.python.withPackages (ps: with ps; [ six ])) - ragel - yasm - ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - cctools - ] ++ lib.optionals cudaSupport (with cudaPackages; [ - cuda_nvcc - ]); + nativeBuildInputs = + [ + cmake + llvmPackages.bintools + ninja + (python3Packages.python.withPackages (ps: with ps; [ six ])) + ragel + yasm + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + cctools + ] + ++ lib.optionals cudaSupport ( + with cudaPackages; + [ + cuda_nvcc + ] + ); - buildInputs = [ - openssl - zlib - ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - libiconv - ] ++ lib.optionals cudaSupport (with cudaPackages; [ - cuda_cudart - cuda_cccl - libcublas - ]); + buildInputs = + [ + openssl + zlib + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + libiconv + ] + ++ lib.optionals cudaSupport ( + with cudaPackages; + [ + cuda_cudart + cuda_cccl + libcublas + ] + ); env = { + PROGRAM_VERSION = finalAttrs.version; + # catboost requires clang 14+ for build, but does clang 12 for cuda build. # after bumping the default version of llvm, check for compatibility with the cuda backend and pin it. # see https://catboost.ai/en/docs/installation/build-environment-setup-for-cmake#compilers,-linkers-and-related-tools @@ -112,10 +130,16 @@ stdenv.mkDerivation (finalAttrs: { library, used for ranking, classification, regression and other machine learning tasks for Python, R, Java, C++. Supports computation on CPU and GPU. ''; + changelog = "https://github.com/catboost/catboost/releases/tag/v${finalAttrs.version}"; license = licenses.asl20; platforms = platforms.unix; homepage = "https://catboost.ai"; - maintainers = with maintainers; [ PlushBeaver natsukium ]; + maintainers = with maintainers; [ + PlushBeaver + natsukium + ]; mainProgram = "catboost"; + # /nix/store/hzxiynjmmj35fpy3jla7vcqwmzj9i449-Libsystem-1238.60.2/include/sys/_types/_mbstate_t.h:31:9: error: unknown type name '__darwin_mbstate_t' + broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64; }; }) diff --git a/pkgs/development/libraries/catboost/remove-conan.patch b/pkgs/by-name/ca/catboost/remove-conan.patch similarity index 61% rename from pkgs/development/libraries/catboost/remove-conan.patch rename to pkgs/by-name/ca/catboost/remove-conan.patch index 44411ad4160b..4e3ab6f436f9 100644 --- a/pkgs/development/libraries/catboost/remove-conan.patch +++ b/pkgs/by-name/ca/catboost/remove-conan.patch @@ -1,16 +1,16 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index ed6c53b220..5c6fb8f157 100644 +index 24ffd1225a..700adcc246 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -29,7 +29,6 @@ include(cmake/global_flags.cmake) +@@ -39,7 +39,6 @@ include(cmake/global_flags.cmake) include(cmake/global_vars.cmake) include(cmake/archive.cmake) include(cmake/common.cmake) --include(cmake/conan.cmake) +-include(cmake/conan1_deprecated.cmake) include(cmake/cuda.cmake) include(cmake/cython.cmake) include(cmake/fbs.cmake) -@@ -38,21 +37,6 @@ include(cmake/recursive_library.cmake) +@@ -48,21 +47,6 @@ include(cmake/recursive_library.cmake) include(cmake/shared_libs.cmake) include(cmake/swig.cmake) @@ -24,11 +24,16 @@ index ed6c53b220..5c6fb8f157 100644 - BUILD missing - REMOTE conancenter - SETTINGS ${settings} -- ENV "CONAN_CMAKE_GENERATOR=${CMAKE_GENERATOR}" -- CONF "tools.cmake.cmaketoolchain:generator=${CMAKE_GENERATOR}" +- ENV "CONAN_CMAKE_GENERATOR=${CMAKE_GENERATOR}" +- CONF "tools.cmake.cmaketoolchain:generator=${CMAKE_GENERATOR}" - ) -endif() - + if (CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" AND NOT HAVE_CUDA) include(CMakeLists.linux-x86_64.txt) - elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" AND HAVE_CUDA) +@@ -93,4 +77,3 @@ elseif (ANDROID AND CMAKE_ANDROID_ARCH STREQUAL "x86") + elseif (ANDROID AND CMAKE_ANDROID_ARCH STREQUAL "x86_64") + include(CMakeLists.android-x86_64.txt) + endif() +- diff --git a/pkgs/by-name/ca/catppuccinifier-gui/package.nix b/pkgs/by-name/ca/catppuccinifier-gui/package.nix index d4dbc5b39094..101ba9bb74ce 100644 --- a/pkgs/by-name/ca/catppuccinifier-gui/package.nix +++ b/pkgs/by-name/ca/catppuccinifier-gui/package.nix @@ -11,7 +11,7 @@ libsoup, fetchzip, openssl_3, - webkitgtk, + webkitgtk_4_0, gdk-pixbuf, pkg-config, makeDesktopItem, @@ -39,7 +39,7 @@ stdenv.mkDerivation { buildInputs = [ curl wget - webkitgtk + webkitgtk_4_0 gtk3 cairo gdk-pixbuf diff --git a/pkgs/by-name/ch/chow-kick/package.nix b/pkgs/by-name/ch/chow-kick/package.nix index 25eae2931c03..435b8e0c9b0b 100644 --- a/pkgs/by-name/ch/chow-kick/package.nix +++ b/pkgs/by-name/ch/chow-kick/package.nix @@ -32,7 +32,7 @@ , sqlite , stdenv , util-linuxMinimal -, webkitgtk +, webkitgtk_4_0 }: stdenv.mkDerivation (finalAttrs: { @@ -81,7 +81,7 @@ stdenv.mkDerivation (finalAttrs: { python3 sqlite util-linuxMinimal - webkitgtk + webkitgtk_4_0 ]; cmakeFlags = [ diff --git a/pkgs/by-name/ch/chow-tape-model/package.nix b/pkgs/by-name/ch/chow-tape-model/package.nix index e080ee6c05b8..9e9e3ae6b341 100644 --- a/pkgs/by-name/ch/chow-tape-model/package.nix +++ b/pkgs/by-name/ch/chow-tape-model/package.nix @@ -32,7 +32,7 @@ , python3 , sqlite , gcc11Stdenv -, webkitgtk +, webkitgtk_4_0 }: let # JUCE version in submodules is incompatible with GCC12 @@ -83,7 +83,7 @@ stdenv.mkDerivation (finalAttrs: { pcre2 python3 sqlite - webkitgtk + webkitgtk_4_0 ]; # Link-time-optimization fails without these diff --git a/pkgs/by-name/ci/cinny-desktop/package.nix b/pkgs/by-name/ci/cinny-desktop/package.nix index e333f1cda423..0db5ab04ae63 100644 --- a/pkgs/by-name/ci/cinny-desktop/package.nix +++ b/pkgs/by-name/ci/cinny-desktop/package.nix @@ -14,7 +14,7 @@ glib, glib-networking, libayatana-appindicator, - webkitgtk, + webkitgtk_4_0, }: rustPlatform.buildRustPackage rec { @@ -84,7 +84,7 @@ rustPlatform.buildRustPackage rec { ++ lib.optionals stdenv.hostPlatform.isLinux [ glib-networking libayatana-appindicator - webkitgtk + webkitgtk_4_0 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.DarwinTools diff --git a/pkgs/by-name/cl/clash-verge-rev/service.nix b/pkgs/by-name/cl/clash-verge-rev/service.nix index 21baad40d3f7..3c8575f5b1e1 100644 --- a/pkgs/by-name/cl/clash-verge-rev/service.nix +++ b/pkgs/by-name/cl/clash-verge-rev/service.nix @@ -5,7 +5,7 @@ pkg-config, openssl, pname, - webkitgtk, + webkitgtk_4_0, service-cargo-hash, meta, }: @@ -23,7 +23,7 @@ rustPlatform.buildRustPackage { buildInputs = [ openssl - webkitgtk + webkitgtk_4_0 ]; env = { diff --git a/pkgs/by-name/cl/clash-verge-rev/unwrapped.nix b/pkgs/by-name/cl/clash-verge-rev/unwrapped.nix index 64386c552dce..966efa763d19 100644 --- a/pkgs/by-name/cl/clash-verge-rev/unwrapped.nix +++ b/pkgs/by-name/cl/clash-verge-rev/unwrapped.nix @@ -9,7 +9,7 @@ rustPlatform, makeDesktopItem, meta, - webkitgtk, + webkitgtk_4_0, openssl, }: rustPlatform.buildRustPackage { @@ -44,7 +44,7 @@ rustPlatform.buildRustPackage { buildInputs = [ openssl - webkitgtk + webkitgtk_4_0 ]; postInstall = '' diff --git a/pkgs/by-name/cz/czkawka/package.nix b/pkgs/by-name/cz/czkawka/package.nix index 934b6d1dcafa..0ec3c8d6d00f 100644 --- a/pkgs/by-name/cz/czkawka/package.nix +++ b/pkgs/by-name/cz/czkawka/package.nix @@ -17,6 +17,7 @@ testers, wrapGAppsHook4, xvfb-run, + versionCheckHook, }: let @@ -26,21 +27,16 @@ let self = buildRustPackage' { pname = "czkawka"; - version = "7.0.0"; + version = "8.0.0"; src = fetchFromGitHub { owner = "qarmin"; repo = "czkawka"; - rev = self.version; - hash = "sha256-SOWtLmehh1F8SoDQ+9d7Fyosgzya5ZztCv8IcJZ4J94="; + rev = "refs/tags/${self.version}"; + hash = "sha256-Uxko2TRIjqQvd7n9C+P7oMUrm3YY5j7TVzvijEjDwOM="; }; - cargoPatches = [ - # Updates time and time-macros from Cargo.lock - ./0000-time.diff - ]; - - cargoHash = "sha256-cQv8C0P3xizsvnJODkTMJQA98P4nYSCHFT75isJE6es="; + cargoHash = "sha256-DR2JU+QcGWliNoRMjSjJns7FsicpNAX5gTariFuQ/dw="; nativeBuildInputs = [ gobject-introspection @@ -85,6 +81,13 @@ let install -Dm444 -t $out/share/metainfo data/com.github.qarmin.czkawka.metainfo.xml ''; + nativeInstallCheckInputs = [ + versionCheckHook + ]; + versionCheckProgram = "${placeholder "out"}/bin/czkawka_cli"; + versionCheckProgramArg = [ "--version" ]; + doInstallCheck = true; + passthru = { tests.version = testers.testVersion { package = self; diff --git a/pkgs/by-name/db/dbeaver-bin/package.nix b/pkgs/by-name/db/dbeaver-bin/package.nix index 9b5bf26200fb..d8f5a5362c36 100644 --- a/pkgs/by-name/db/dbeaver-bin/package.nix +++ b/pkgs/by-name/db/dbeaver-bin/package.nix @@ -11,7 +11,7 @@ gtk3, swt, glib, - webkitgtk, + webkitgtk_4_0, glib-networking, }: @@ -72,7 +72,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { swt gtk3 glib - webkitgtk + webkitgtk_4_0 glib-networking ] }" diff --git a/pkgs/by-name/de/desktop-postflop/package.nix b/pkgs/by-name/de/desktop-postflop/package.nix index 4f81bfa4943f..0eb643a44b04 100644 --- a/pkgs/by-name/de/desktop-postflop/package.nix +++ b/pkgs/by-name/de/desktop-postflop/package.nix @@ -7,7 +7,7 @@ , pkg-config , gtk3 , libsoup -, webkitgtk +, webkitgtk_4_0 }: rustPlatform.buildRustPackage rec { @@ -58,7 +58,7 @@ rustPlatform.buildRustPackage rec { buildInputs = [ gtk3 libsoup - webkitgtk + webkitgtk_4_0 ]; postInstall = '' diff --git a/pkgs/by-name/di/disko/package.nix b/pkgs/by-name/di/disko/package.nix index f7553a70fc27..2a3818f45eb3 100644 --- a/pkgs/by-name/di/disko/package.nix +++ b/pkgs/by-name/di/disko/package.nix @@ -6,16 +6,17 @@ , nix , nixos-install , coreutils +, testers }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "disko"; - version = "1.8.0"; + version = "1.8.2"; src = fetchFromGitHub { owner = "nix-community"; repo = "disko"; rev = "v${finalAttrs.version}"; - hash = "sha256-5zShvCy9S4tuISFjNSjb+TWpPtORqPbRZ0XwbLbPLho="; + hash = "sha256-O0QVhsj9I/hmcIqJ4qCqFyzvjYL+dtzJP0C5MFd8O/Y="; }; nativeBuildInputs = [ makeWrapper ]; buildInputs = [ bash ]; @@ -27,7 +28,9 @@ stdenvNoCC.mkDerivation (finalAttrs: { for i in disko disko-install; do sed -e "s|libexec_dir=\".*\"|libexec_dir=\"$out/share/disko\"|" "$i" > "$out/bin/$i" chmod 755 "$out/bin/$i" - wrapProgram "$out/bin/$i" --prefix PATH : ${lib.makeBinPath [ nix coreutils nixos-install ]} + wrapProgram "$out/bin/$i" \ + --set DISKO_VERSION "${finalAttrs.version}" \ + --prefix PATH : ${lib.makeBinPath [ nix coreutils nixos-install ]} done runHook postInstall ''; @@ -38,12 +41,15 @@ stdenvNoCC.mkDerivation (finalAttrs: { $out/bin/disko-install --help runHook postInstallCheck ''; + + passthru.tests.version = testers.testVersion { package = finalAttrs.finalPackage; }; + meta = { homepage = "https://github.com/nix-community/disko"; description = "Declarative disk partitioning and formatting using nix"; license = lib.licenses.mit; mainProgram = "disko"; - maintainers = with lib.maintainers; [ mic92 lassulus ]; + maintainers = with lib.maintainers; [ mic92 lassulus iFreilicht ]; platforms = lib.platforms.linux; }; }) diff --git a/pkgs/by-name/do/dorion/package.nix b/pkgs/by-name/do/dorion/package.nix index a60a03c39367..859d509b25b6 100644 --- a/pkgs/by-name/do/dorion/package.nix +++ b/pkgs/by-name/do/dorion/package.nix @@ -7,7 +7,7 @@ , gst_all_1 , libappindicator , libayatana-appindicator -, webkitgtk +, webkitgtk_4_0 , wrapGAppsHook3 }: @@ -41,7 +41,7 @@ stdenv.mkDerivation (finalAttrs: { gst_all_1.gst-plugins-bad gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good - webkitgtk + webkitgtk_4_0 ]; installPhase = '' diff --git a/pkgs/by-name/en/en-croissant/package.nix b/pkgs/by-name/en/en-croissant/package.nix index 81489925d19f..71b2de66590c 100644 --- a/pkgs/by-name/en/en-croissant/package.nix +++ b/pkgs/by-name/en/en-croissant/package.nix @@ -14,7 +14,7 @@ openssl, libsoup, - webkitgtk, + webkitgtk_4_0, gst_all_1, darwin, }: @@ -66,7 +66,7 @@ buildRustPackage rec { lib.optionals stdenv.hostPlatform.isLinux [ openssl libsoup - webkitgtk + webkitgtk_4_0 gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-bad diff --git a/pkgs/by-name/en/ente-auth/package.nix b/pkgs/by-name/en/ente-auth/package.nix index e39d90866813..268ffdf2b507 100644 --- a/pkgs/by-name/en/ente-auth/package.nix +++ b/pkgs/by-name/en/ente-auth/package.nix @@ -2,7 +2,7 @@ lib, flutter324, fetchFromGitHub, - webkitgtk, + webkitgtk_4_0, sqlite, libayatana-appindicator, makeDesktopItem, @@ -52,7 +52,7 @@ flutter324.buildFlutterApplication rec { ]; buildInputs = [ - webkitgtk + webkitgtk_4_0 sqlite libayatana-appindicator ]; diff --git a/pkgs/by-name/fo/font-manager/package.nix b/pkgs/by-name/fo/font-manager/package.nix index aff880f06d2d..dc9b27fdd3af 100644 --- a/pkgs/by-name/fo/font-manager/package.nix +++ b/pkgs/by-name/fo/font-manager/package.nix @@ -20,7 +20,7 @@ , wrapGAppsHook4 , gobject-introspection # withWebkit enables the "webkit" feature, also known as Google Fonts -, withWebkit ? true, glib-networking, libsoup, webkitgtk +, withWebkit ? true, glib-networking, libsoup_3, webkitgtk_6_0 }: stdenv.mkDerivation rec { @@ -58,8 +58,8 @@ stdenv.mkDerivation rec { adwaita-icon-theme ] ++ lib.optionals withWebkit [ glib-networking # for SSL so that Google Fonts can load - libsoup - webkitgtk + libsoup_3 + webkitgtk_6_0 ]; mesonFlags = [ diff --git a/pkgs/by-name/gi/gitbutler/package.nix b/pkgs/by-name/gi/gitbutler/package.nix index 68679cfcfea4..af81f5021fca 100644 --- a/pkgs/by-name/gi/gitbutler/package.nix +++ b/pkgs/by-name/gi/gitbutler/package.nix @@ -19,7 +19,7 @@ moreutils, openssl, rust, - webkitgtk, + webkitgtk_4_0, nix-update-script, cacert, }: @@ -71,7 +71,7 @@ rustPlatform.buildRustPackage rec { ++ lib.optionals stdenv.hostPlatform.isLinux [ glib-networking libsoup - webkitgtk + webkitgtk_4_0 ] ++ lib.optionals stdenv.hostPlatform.isDarwin ( with darwin.apple_sdk.frameworks; diff --git a/pkgs/by-name/gn/gnome-notes/package.nix b/pkgs/by-name/gn/gnome-notes/package.nix index 0f4c8dbfc5dc..888f5285938e 100644 --- a/pkgs/by-name/gn/gnome-notes/package.nix +++ b/pkgs/by-name/gn/gnome-notes/package.nix @@ -19,7 +19,7 @@ libuuid, curl, libhandy, - webkitgtk, + webkitgtk_4_0, gnome, adwaita-icon-theme, libxml2, @@ -71,7 +71,7 @@ stdenv.mkDerivation rec { libuuid curl libhandy - webkitgtk + webkitgtk_4_0 tracker gnome-online-accounts gsettings-desktop-schemas diff --git a/pkgs/by-name/gn/gnucash/package.nix b/pkgs/by-name/gn/gnucash/package.nix index 9f7ca7364604..c7d7e6c51380 100644 --- a/pkgs/by-name/gn/gnucash/package.nix +++ b/pkgs/by-name/gn/gnucash/package.nix @@ -22,7 +22,7 @@ , perlPackages , pkg-config , swig -, webkitgtk +, webkitgtk_4_0 , wrapGAppsHook3 }: @@ -59,7 +59,7 @@ stdenv.mkDerivation rec { libxml2 libxslt swig - webkitgtk + webkitgtk_4_0 ] ++ (with perlPackages; [ JSONParse diff --git a/pkgs/by-name/go/gomanagedocker/package.nix b/pkgs/by-name/go/gomanagedocker/package.nix new file mode 100644 index 000000000000..d31d435a7aa4 --- /dev/null +++ b/pkgs/by-name/go/gomanagedocker/package.nix @@ -0,0 +1,41 @@ +{ + lib, + buildGoModule, + fetchFromGitHub, + stdenv, + darwin, + xorg, +}: +let + version = "1.4"; +in +buildGoModule { + pname = "gomanagedocker"; + inherit version; + + src = fetchFromGitHub { + owner = "ajayd-san"; + repo = "gomanagedocker"; + rev = "refs/tags/v${version}"; + hash = "sha256-oM0DCOHdVPJFWgmHF8yeGGo6XvuTCXar7NebM1obahg="; + }; + + vendorHash = "sha256-M/jfQWCBrv7hZm450yLBmcjWtNSCziKOpfipxI6U9ak="; + + buildInputs = + lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Cocoa ] + ++ lib.optionals stdenv.isLinux [ xorg.libX11 ]; + + ldflags = [ + "-s" + "-w" + ]; + + meta = { + description = "TUI tool to manage your docker images, containers and volumes"; + homepage = "https://github.com/ajayd-san/gomanagedocker"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ genga898 ]; + mainProgram = "gomanagedocker"; + }; +} diff --git a/pkgs/by-name/gp/gpauth/package.nix b/pkgs/by-name/gp/gpauth/package.nix index e1199c9ed372..c54be41b2f06 100644 --- a/pkgs/by-name/gp/gpauth/package.nix +++ b/pkgs/by-name/gp/gpauth/package.nix @@ -6,7 +6,7 @@ openssl, pkg-config, perl, - webkitgtk, + webkitgtk_4_0, }: rustPlatform.buildRustPackage rec { @@ -30,7 +30,7 @@ rustPlatform.buildRustPackage rec { buildInputs = [ libsoup openssl - webkitgtk + webkitgtk_4_0 ]; meta = with lib; { diff --git a/pkgs/by-name/ha/harbor-cli/package.nix b/pkgs/by-name/ha/harbor-cli/package.nix new file mode 100644 index 000000000000..c47f50ecc2aa --- /dev/null +++ b/pkgs/by-name/ha/harbor-cli/package.nix @@ -0,0 +1,52 @@ +{ + lib, + stdenv, + buildGoModule, + fetchFromGitHub, + testers, + harbor-cli, + installShellFiles, +}: + +buildGoModule rec { + pname = "harbor-cli"; + version = "0.0.1"; + + src = fetchFromGitHub { + owner = "goharbor"; + repo = "harbor-cli"; + rev = "v${version}"; + hash = "sha256-WSADuhr6p8N0Oh1xIG7yItM6t0EWUiAkzNbdKsSc4WA="; + }; + + vendorHash = "sha256-UUD9/5+McR1t5oO4/6TSScT7hhSKM0OpBf94LVQG1Pw="; + + nativeBuildInputs = [ installShellFiles ]; + + ldflags = [ + "-s" + "-w" + "-X github.com/goharbor/harbor-cli/cmd/harbor/internal/version.Version=${version}" + ]; + + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd harbor \ + --bash <($out/bin/harbor completion bash) \ + --fish <($out/bin/harbor completion fish) \ + --zsh <($out/bin/harbor completion zsh) + ''; + + passthru.tests.version = testers.testVersion { + package = harbor-cli; + command = "harbor version"; + }; + + meta = { + homepage = "https://github.com/goharbor/harbor-cli"; + description = "Command-line tool facilitates seamless interaction with the Harbor container registry"; + changelog = "https://github.com/goharbor/harbor-cli/releases/tag/v${version}"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ aaronjheng ]; + mainProgram = "harbor"; + }; +} diff --git a/pkgs/by-name/he/headphones-toolbox/package.nix b/pkgs/by-name/he/headphones-toolbox/package.nix index 2b71ad126eff..2eb5257fee25 100644 --- a/pkgs/by-name/he/headphones-toolbox/package.nix +++ b/pkgs/by-name/he/headphones-toolbox/package.nix @@ -3,7 +3,7 @@ , dpkg , fetchurl , autoPatchelfHook -, webkitgtk +, webkitgtk_4_0 }: stdenv.mkDerivation (finalAttrs: { @@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: { ]; buildInputs = [ - webkitgtk + webkitgtk_4_0 ]; installPhase = '' diff --git a/pkgs/by-name/in/intune-portal/package.nix b/pkgs/by-name/in/intune-portal/package.nix index 8fa8aa976e34..f9ff4b6119ca 100644 --- a/pkgs/by-name/in/intune-portal/package.nix +++ b/pkgs/by-name/in/intune-portal/package.nix @@ -7,7 +7,7 @@ , curlMinimal , openssl , libsecret -, webkitgtk +, webkitgtk_4_0 , libsoup , gtk3 , atk @@ -42,7 +42,7 @@ stdenv.mkDerivation rec { curlMinimal openssl libsecret - webkitgtk + webkitgtk_4_0 libsoup gtk3 atk diff --git a/pkgs/by-name/ki/kiwitalk/package.nix b/pkgs/by-name/ki/kiwitalk/package.nix index b700b198bc37..74639a6fbb50 100644 --- a/pkgs/by-name/ki/kiwitalk/package.nix +++ b/pkgs/by-name/ki/kiwitalk/package.nix @@ -8,7 +8,7 @@ , desktop-file-utils , openssl , libayatana-appindicator -, webkitgtk +, webkitgtk_4_0 , pkg-config , pnpm , nodejs @@ -58,7 +58,7 @@ stdenv.mkDerivation (finalAttrs: { buildInputs = [ openssl libayatana-appindicator - webkitgtk + webkitgtk_4_0 ]; postInstall = lib.optionalString stdenv.isLinux '' diff --git a/pkgs/os-specific/linux/kmod-blacklist-ubuntu/default.nix b/pkgs/by-name/km/kmod-blacklist-ubuntu/package.nix similarity index 90% rename from pkgs/os-specific/linux/kmod-blacklist-ubuntu/default.nix rename to pkgs/by-name/km/kmod-blacklist-ubuntu/package.nix index 464b77ce969e..b127caff4e53 100644 --- a/pkgs/os-specific/linux/kmod-blacklist-ubuntu/default.nix +++ b/pkgs/by-name/km/kmod-blacklist-ubuntu/package.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchurl }: let - version = "30+20230519-1ubuntu3"; # mantic 2023-08-26 + version = "31+20240202-2ubuntu8"; # Oriole 2024-10-03 in stdenv.mkDerivation { pname = "kmod-blacklist"; @@ -9,7 +9,7 @@ in stdenv.mkDerivation { src = fetchurl { url = "https://launchpad.net/ubuntu/+archive/primary/+files/kmod_${version}.debian.tar.xz"; - hash = "sha256-VGw1/rUjl9/j6026ut0dvC0/8maAAz8umb0D3YGf8p4="; + hash = "sha256-i4XdCRedZIzMBbZL305enz8OAso3X14pdzNIITqK5hE="; }; installPhase = '' diff --git a/pkgs/by-name/li/libphidget22/package.nix b/pkgs/by-name/li/libphidget22/package.nix new file mode 100644 index 000000000000..8dd3d5e2f475 --- /dev/null +++ b/pkgs/by-name/li/libphidget22/package.nix @@ -0,0 +1,31 @@ +{ + lib, + stdenv, + fetchurl, + automake, + libusb1, +}: + +stdenv.mkDerivation { + pname = "libphidget22"; + version = "0-unstable-2024-04-11"; + + src = fetchurl { + url = "https://cdn.phidgets.com/downloads/phidget22/libraries/linux/libphidget22.tar.gz"; + hash = "sha256-mDoYVs0LhBb3+vzKjzYr9EmcrztmA4cy9xh5ONxHaxI="; + }; + + nativeBuildInputs = [ automake ]; + + buildInputs = [ libusb1 ]; + + strictDeps = true; + + meta = { + description = "Phidget Inc sensor boards and electronics Library"; + homepage = "https://www.phidgets.com/docs/OS_-_Linux"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ mksafavi ]; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/by-name/li/libphidget22extra/package.nix b/pkgs/by-name/li/libphidget22extra/package.nix new file mode 100644 index 000000000000..b67d2026b655 --- /dev/null +++ b/pkgs/by-name/li/libphidget22extra/package.nix @@ -0,0 +1,35 @@ +{ + lib, + stdenv, + fetchurl, + automake, + libusb1, + libphidget22, +}: + +stdenv.mkDerivation { + pname = "libphidget22extra"; + version = "0-unstable-2024-04-11"; + + src = fetchurl { + url = "https://cdn.phidgets.com/downloads/phidget22/libraries/linux/libphidget22extra.tar.gz"; + hash = "sha256-UD6Crr1dl7c3NOAVNi3xrXJI3OYPLZBJX1MXVvbyEUE="; + }; + + nativeBuildInputs = [ automake ]; + + buildInputs = [ + libphidget22 + libusb1 + ]; + + strictDeps = true; + + meta = { + description = "Phidget Inc sensor boards and electronics extras library"; + homepage = "https://www.phidgets.com/docs/OS_-_Linux"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ mksafavi ]; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/by-name/lr/lrcget/package.nix b/pkgs/by-name/lr/lrcget/package.nix index 0d77c2d09f22..8ec4bfc21e21 100644 --- a/pkgs/by-name/lr/lrcget/package.nix +++ b/pkgs/by-name/lr/lrcget/package.nix @@ -2,7 +2,7 @@ dbus, openssl, gtk3, - webkitgtk, + webkitgtk_4_0, pkg-config, wrapGAppsHook3, fetchFromGitHub, @@ -70,7 +70,7 @@ rustPlatform.buildRustPackage rec { gtk3 ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ - webkitgtk + webkitgtk_4_0 alsa-lib ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ diff --git a/pkgs/by-name/me/memorado/package.nix b/pkgs/by-name/me/memorado/package.nix index e7282d01d90e..924c906a5ee6 100644 --- a/pkgs/by-name/me/memorado/package.nix +++ b/pkgs/by-name/me/memorado/package.nix @@ -15,13 +15,13 @@ stdenv.mkDerivation rec { pname = "memorado"; - version = "0.3"; + version = "0.4"; src = fetchFromGitHub { owner = "wbernard"; repo = "Memorado"; rev = "refs/tags/${version}"; - hash = "sha256-bArcYUHSfpjYsySGZco4fmb6bKRFtG6efhzNSqUROX0="; + hash = "sha256-yWu2+VAa5FkpLs/KLI0lcNzFLGN/kiq6frtW8SHN+W4="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/me/metacubexd/package.nix b/pkgs/by-name/me/metacubexd/package.nix index 6b5b6c7e8fe7..5986155ee0f4 100644 --- a/pkgs/by-name/me/metacubexd/package.nix +++ b/pkgs/by-name/me/metacubexd/package.nix @@ -8,13 +8,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "metacubexd"; - version = "1.150.0"; + version = "1.151.0"; src = fetchFromGitHub { owner = "MetaCubeX"; repo = "metacubexd"; rev = "v${finalAttrs.version}"; - hash = "sha256-UItmZmrcCSO7705TzEO80IVGSsCrDjm9Apw17XAQ9jY="; + hash = "sha256-H6zMEicE9RT84NJmmcihw46TDOSE0HhUoIRIrpNxM+c="; }; nativeBuildInputs = [ @@ -24,7 +24,7 @@ stdenv.mkDerivation (finalAttrs: { pnpmDeps = pnpm.fetchDeps { inherit (finalAttrs) pname version src; - hash = "sha256-jIotwZmFzzv3jN4iXV4aonxnVDuIGzxNH8RGD0r7t0c="; + hash = "sha256-XwIcwvTcB4vO5tqJ/jdqgkTrkmN3H0e3q5eDNOvUrcA="; }; buildPhase = '' diff --git a/pkgs/by-name/mi/mihomo-party/package.nix b/pkgs/by-name/mi/mihomo-party/package.nix index 66584bcbfa69..80df07cd6cb1 100644 --- a/pkgs/by-name/mi/mihomo-party/package.nix +++ b/pkgs/by-name/mi/mihomo-party/package.nix @@ -9,7 +9,7 @@ nspr, alsa-lib, openssl, - webkitgtk, + webkitgtk_4_0, udev, libayatana-appindicator, libGL, @@ -36,7 +36,7 @@ stdenv.mkDerivation { nspr alsa-lib openssl - webkitgtk + webkitgtk_4_0 stdenv.cc.cc.lib ]; diff --git a/pkgs/by-name/mo/modrinth-app-unwrapped/package.nix b/pkgs/by-name/mo/modrinth-app-unwrapped/package.nix index c53296c3b027..3d43797b9b1b 100644 --- a/pkgs/by-name/mo/modrinth-app-unwrapped/package.nix +++ b/pkgs/by-name/mo/modrinth-app-unwrapped/package.nix @@ -19,7 +19,7 @@ nodejs, openssl, pkg-config, - webkitgtk, + webkitgtk_4_0, }: rustPlatform.buildRustPackage { pname = "modrinth-app-unwrapped"; @@ -87,7 +87,7 @@ rustPlatform.buildRustPackage { [ openssl ] ++ lib.optionals stdenv.hostPlatform.isLinux [ libsoup - webkitgtk + webkitgtk_4_0 ] ++ lib.optionals stdenv.hostPlatform.isDarwin ( with darwin.apple_sdk.frameworks; diff --git a/pkgs/by-name/mo/mouse-actions-gui/package.nix b/pkgs/by-name/mo/mouse-actions-gui/package.nix index 01478b8015b1..5fcb4126cf87 100644 --- a/pkgs/by-name/mo/mouse-actions-gui/package.nix +++ b/pkgs/by-name/mo/mouse-actions-gui/package.nix @@ -18,7 +18,7 @@ libevdev, gtk3, libsoup, - webkitgtk, + webkitgtk_4_0, }: stdenv.mkDerivation (finalAttrs: { @@ -53,7 +53,7 @@ stdenv.mkDerivation (finalAttrs: { # Tauri deps gtk3 libsoup - webkitgtk + webkitgtk_4_0 ]; npmDeps = fetchNpmDeps { diff --git a/pkgs/by-name/ne/nextjs-ollama-llm-ui/0001-update-nextjs.patch b/pkgs/by-name/ne/nextjs-ollama-llm-ui/0001-update-nextjs.patch deleted file mode 100644 index d904f04f7344..000000000000 --- a/pkgs/by-name/ne/nextjs-ollama-llm-ui/0001-update-nextjs.patch +++ /dev/null @@ -1,879 +0,0 @@ -diff --git a/package-lock.json b/package-lock.json -index 11dfbf6..b9470d0 100644 ---- a/package-lock.json -+++ b/package-lock.json -@@ -30,7 +30,7 @@ - "framer-motion": "^11.0.3", - "langchain": "^0.1.13", - "lucide-react": "^0.322.0", -- "next": "14.1.0", -+ "next": "^14.2.3", - "next-themes": "^0.2.1", - "react": "^18", - "react-code-blocks": "^0.1.6", -@@ -40,6 +40,7 @@ - "react-resizable-panels": "^2.0.3", - "react-textarea-autosize": "^8.5.3", - "remark-gfm": "^4.0.0", -+ "sharp": "^0.33.4", - "sonner": "^1.4.0", - "tailwind-merge": "^2.2.1", - "tailwindcss-animate": "^1.0.7", -@@ -139,6 +140,15 @@ - "node": ">=6.9.0" - } - }, -+ "node_modules/@emnapi/runtime": { -+ "version": "1.1.1", -+ "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.1.1.tgz", -+ "integrity": "sha512-3bfqkzuR1KLx57nZfjr2NLnFOobvyS0aTszaEGCGqmYMVDRaGvgIZbjGSV/MHSSmLgQ/b9JFHQ5xm5WRZYd+XQ==", -+ "optional": true, -+ "dependencies": { -+ "tslib": "^2.4.0" -+ } -+ }, - "node_modules/@emoji-mart/data": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@emoji-mart/data/-/data-1.1.2.tgz", -@@ -304,6 +314,437 @@ - "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", - "dev": true - }, -+ "node_modules/@img/sharp-darwin-arm64": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.4.tgz", -+ "integrity": "sha512-p0suNqXufJs9t3RqLBO6vvrgr5OhgbWp76s5gTRvdmxmuv9E1rcaqGUsl3l4mKVmXPkTkTErXediAui4x+8PSA==", -+ "cpu": [ -+ "arm64" -+ ], -+ "optional": true, -+ "os": [ -+ "darwin" -+ ], -+ "engines": { -+ "glibc": ">=2.26", -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ }, -+ "optionalDependencies": { -+ "@img/sharp-libvips-darwin-arm64": "1.0.2" -+ } -+ }, -+ "node_modules/@img/sharp-darwin-x64": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.4.tgz", -+ "integrity": "sha512-0l7yRObwtTi82Z6ebVI2PnHT8EB2NxBgpK2MiKJZJ7cz32R4lxd001ecMhzzsZig3Yv9oclvqqdV93jo9hy+Dw==", -+ "cpu": [ -+ "x64" -+ ], -+ "optional": true, -+ "os": [ -+ "darwin" -+ ], -+ "engines": { -+ "glibc": ">=2.26", -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ }, -+ "optionalDependencies": { -+ "@img/sharp-libvips-darwin-x64": "1.0.2" -+ } -+ }, -+ "node_modules/@img/sharp-libvips-darwin-arm64": { -+ "version": "1.0.2", -+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.2.tgz", -+ "integrity": "sha512-tcK/41Rq8IKlSaKRCCAuuY3lDJjQnYIW1UXU1kxcEKrfL8WR7N6+rzNoOxoQRJWTAECuKwgAHnPvqXGN8XfkHA==", -+ "cpu": [ -+ "arm64" -+ ], -+ "optional": true, -+ "os": [ -+ "darwin" -+ ], -+ "engines": { -+ "macos": ">=11", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, -+ "node_modules/@img/sharp-libvips-darwin-x64": { -+ "version": "1.0.2", -+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.2.tgz", -+ "integrity": "sha512-Ofw+7oaWa0HiiMiKWqqaZbaYV3/UGL2wAPeLuJTx+9cXpCRdvQhCLG0IH8YGwM0yGWGLpsF4Su9vM1o6aer+Fw==", -+ "cpu": [ -+ "x64" -+ ], -+ "optional": true, -+ "os": [ -+ "darwin" -+ ], -+ "engines": { -+ "macos": ">=10.13", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, -+ "node_modules/@img/sharp-libvips-linux-arm": { -+ "version": "1.0.2", -+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.2.tgz", -+ "integrity": "sha512-iLWCvrKgeFoglQxdEwzu1eQV04o8YeYGFXtfWU26Zr2wWT3q3MTzC+QTCO3ZQfWd3doKHT4Pm2kRmLbupT+sZw==", -+ "cpu": [ -+ "arm" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "glibc": ">=2.28", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, -+ "node_modules/@img/sharp-libvips-linux-arm64": { -+ "version": "1.0.2", -+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.2.tgz", -+ "integrity": "sha512-x7kCt3N00ofFmmkkdshwj3vGPCnmiDh7Gwnd4nUwZln2YjqPxV1NlTyZOvoDWdKQVDL911487HOueBvrpflagw==", -+ "cpu": [ -+ "arm64" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "glibc": ">=2.26", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, -+ "node_modules/@img/sharp-libvips-linux-s390x": { -+ "version": "1.0.2", -+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.2.tgz", -+ "integrity": "sha512-cmhQ1J4qVhfmS6szYW7RT+gLJq9dH2i4maq+qyXayUSn9/3iY2ZeWpbAgSpSVbV2E1JUL2Gg7pwnYQ1h8rQIog==", -+ "cpu": [ -+ "s390x" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "glibc": ">=2.28", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, -+ "node_modules/@img/sharp-libvips-linux-x64": { -+ "version": "1.0.2", -+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.2.tgz", -+ "integrity": "sha512-E441q4Qdb+7yuyiADVi5J+44x8ctlrqn8XgkDTwr4qPJzWkaHwD489iZ4nGDgcuya4iMN3ULV6NwbhRZJ9Z7SQ==", -+ "cpu": [ -+ "x64" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "glibc": ">=2.26", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, -+ "node_modules/@img/sharp-libvips-linuxmusl-arm64": { -+ "version": "1.0.2", -+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.2.tgz", -+ "integrity": "sha512-3CAkndNpYUrlDqkCM5qhksfE+qSIREVpyoeHIU6jd48SJZViAmznoQQLAv4hVXF7xyUB9zf+G++e2v1ABjCbEQ==", -+ "cpu": [ -+ "arm64" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "musl": ">=1.2.2", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, -+ "node_modules/@img/sharp-libvips-linuxmusl-x64": { -+ "version": "1.0.2", -+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.2.tgz", -+ "integrity": "sha512-VI94Q6khIHqHWNOh6LLdm9s2Ry4zdjWJwH56WoiJU7NTeDwyApdZZ8c+SADC8OH98KWNQXnE01UdJ9CSfZvwZw==", -+ "cpu": [ -+ "x64" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "musl": ">=1.2.2", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, -+ "node_modules/@img/sharp-linux-arm": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.4.tgz", -+ "integrity": "sha512-RUgBD1c0+gCYZGCCe6mMdTiOFS0Zc/XrN0fYd6hISIKcDUbAW5NtSQW9g/powkrXYm6Vzwd6y+fqmExDuCdHNQ==", -+ "cpu": [ -+ "arm" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "glibc": ">=2.28", -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ }, -+ "optionalDependencies": { -+ "@img/sharp-libvips-linux-arm": "1.0.2" -+ } -+ }, -+ "node_modules/@img/sharp-linux-arm64": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.4.tgz", -+ "integrity": "sha512-2800clwVg1ZQtxwSoTlHvtm9ObgAax7V6MTAB/hDT945Tfyy3hVkmiHpeLPCKYqYR1Gcmv1uDZ3a4OFwkdBL7Q==", -+ "cpu": [ -+ "arm64" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "glibc": ">=2.26", -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ }, -+ "optionalDependencies": { -+ "@img/sharp-libvips-linux-arm64": "1.0.2" -+ } -+ }, -+ "node_modules/@img/sharp-linux-s390x": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.4.tgz", -+ "integrity": "sha512-h3RAL3siQoyzSoH36tUeS0PDmb5wINKGYzcLB5C6DIiAn2F3udeFAum+gj8IbA/82+8RGCTn7XW8WTFnqag4tQ==", -+ "cpu": [ -+ "s390x" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "glibc": ">=2.31", -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ }, -+ "optionalDependencies": { -+ "@img/sharp-libvips-linux-s390x": "1.0.2" -+ } -+ }, -+ "node_modules/@img/sharp-linux-x64": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.4.tgz", -+ "integrity": "sha512-GoR++s0XW9DGVi8SUGQ/U4AeIzLdNjHka6jidVwapQ/JebGVQIpi52OdyxCNVRE++n1FCLzjDovJNozif7w/Aw==", -+ "cpu": [ -+ "x64" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "glibc": ">=2.26", -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ }, -+ "optionalDependencies": { -+ "@img/sharp-libvips-linux-x64": "1.0.2" -+ } -+ }, -+ "node_modules/@img/sharp-linuxmusl-arm64": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.4.tgz", -+ "integrity": "sha512-nhr1yC3BlVrKDTl6cO12gTpXMl4ITBUZieehFvMntlCXFzH2bvKG76tBL2Y/OqhupZt81pR7R+Q5YhJxW0rGgQ==", -+ "cpu": [ -+ "arm64" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "musl": ">=1.2.2", -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ }, -+ "optionalDependencies": { -+ "@img/sharp-libvips-linuxmusl-arm64": "1.0.2" -+ } -+ }, -+ "node_modules/@img/sharp-linuxmusl-x64": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.4.tgz", -+ "integrity": "sha512-uCPTku0zwqDmZEOi4ILyGdmW76tH7dm8kKlOIV1XC5cLyJ71ENAAqarOHQh0RLfpIpbV5KOpXzdU6XkJtS0daw==", -+ "cpu": [ -+ "x64" -+ ], -+ "optional": true, -+ "os": [ -+ "linux" -+ ], -+ "engines": { -+ "musl": ">=1.2.2", -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ }, -+ "optionalDependencies": { -+ "@img/sharp-libvips-linuxmusl-x64": "1.0.2" -+ } -+ }, -+ "node_modules/@img/sharp-wasm32": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.4.tgz", -+ "integrity": "sha512-Bmmauh4sXUsUqkleQahpdNXKvo+wa1V9KhT2pDA4VJGKwnKMJXiSTGphn0gnJrlooda0QxCtXc6RX1XAU6hMnQ==", -+ "cpu": [ -+ "wasm32" -+ ], -+ "optional": true, -+ "dependencies": { -+ "@emnapi/runtime": "^1.1.1" -+ }, -+ "engines": { -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, -+ "node_modules/@img/sharp-win32-ia32": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.4.tgz", -+ "integrity": "sha512-99SJ91XzUhYHbx7uhK3+9Lf7+LjwMGQZMDlO/E/YVJ7Nc3lyDFZPGhjwiYdctoH2BOzW9+TnfqcaMKt0jHLdqw==", -+ "cpu": [ -+ "ia32" -+ ], -+ "optional": true, -+ "os": [ -+ "win32" -+ ], -+ "engines": { -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, -+ "node_modules/@img/sharp-win32-x64": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.4.tgz", -+ "integrity": "sha512-3QLocdTRVIrFNye5YocZl+KKpYKP+fksi1QhmOArgx7GyhIbQp/WrJRu176jm8IxromS7RIkzMiMINVdBtC8Aw==", -+ "cpu": [ -+ "x64" -+ ], -+ "optional": true, -+ "os": [ -+ "win32" -+ ], -+ "engines": { -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0", -+ "npm": ">=9.6.5", -+ "pnpm": ">=7.1.0", -+ "yarn": ">=3.2.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ } -+ }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", -@@ -800,9 +1241,9 @@ - } - }, - "node_modules/@next/env": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.0.tgz", -- "integrity": "sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==" -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz", -+ "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA==" - }, - "node_modules/@next/eslint-plugin-next": { - "version": "14.1.0", -@@ -814,9 +1255,9 @@ - } - }, - "node_modules/@next/swc-darwin-arm64": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.0.tgz", -- "integrity": "sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==", -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz", -+ "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==", - "cpu": [ - "arm64" - ], -@@ -829,9 +1270,9 @@ - } - }, - "node_modules/@next/swc-darwin-x64": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.0.tgz", -- "integrity": "sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==", -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz", -+ "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==", - "cpu": [ - "x64" - ], -@@ -844,9 +1285,9 @@ - } - }, - "node_modules/@next/swc-linux-arm64-gnu": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.0.tgz", -- "integrity": "sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==", -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz", -+ "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==", - "cpu": [ - "arm64" - ], -@@ -859,9 +1300,9 @@ - } - }, - "node_modules/@next/swc-linux-arm64-musl": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.0.tgz", -- "integrity": "sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==", -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz", -+ "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==", - "cpu": [ - "arm64" - ], -@@ -874,9 +1315,9 @@ - } - }, - "node_modules/@next/swc-linux-x64-gnu": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.0.tgz", -- "integrity": "sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==", -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz", -+ "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==", - "cpu": [ - "x64" - ], -@@ -889,9 +1330,9 @@ - } - }, - "node_modules/@next/swc-linux-x64-musl": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.0.tgz", -- "integrity": "sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==", -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz", -+ "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==", - "cpu": [ - "x64" - ], -@@ -904,9 +1345,9 @@ - } - }, - "node_modules/@next/swc-win32-arm64-msvc": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.0.tgz", -- "integrity": "sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==", -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz", -+ "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==", - "cpu": [ - "arm64" - ], -@@ -919,9 +1360,9 @@ - } - }, - "node_modules/@next/swc-win32-ia32-msvc": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.0.tgz", -- "integrity": "sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==", -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz", -+ "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==", - "cpu": [ - "ia32" - ], -@@ -934,9 +1375,9 @@ - } - }, - "node_modules/@next/swc-win32-x64-msvc": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.0.tgz", -- "integrity": "sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==", -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz", -+ "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==", - "cpu": [ - "x64" - ], -@@ -1810,11 +2251,17 @@ - "integrity": "sha512-RbhOOTCNoCrbfkRyoXODZp75MlpiHMgbE5MEBZAnnnLyQNgrigEj4p0lzsMDyc1zVsJDLrivB58tgg3emX0eEA==", - "dev": true - }, -+ "node_modules/@swc/counter": { -+ "version": "0.1.3", -+ "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", -+ "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==" -+ }, - "node_modules/@swc/helpers": { -- "version": "0.5.2", -- "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", -- "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", -+ "version": "0.5.5", -+ "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz", -+ "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==", - "dependencies": { -+ "@swc/counter": "^0.1.3", - "tslib": "^2.4.0" - } - }, -@@ -2930,6 +3377,18 @@ - "periscopic": "^3.1.0" - } - }, -+ "node_modules/color": { -+ "version": "4.2.3", -+ "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", -+ "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", -+ "dependencies": { -+ "color-convert": "^2.0.1", -+ "color-string": "^1.9.0" -+ }, -+ "engines": { -+ "node": ">=12.5.0" -+ } -+ }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", -@@ -2946,6 +3405,15 @@ - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, -+ "node_modules/color-string": { -+ "version": "1.9.1", -+ "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", -+ "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", -+ "dependencies": { -+ "color-name": "^1.0.0", -+ "simple-swizzle": "^0.2.2" -+ } -+ }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", -@@ -3152,6 +3620,14 @@ - "node": ">=6" - } - }, -+ "node_modules/detect-libc": { -+ "version": "2.0.3", -+ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", -+ "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/detect-node-es": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", -@@ -4677,6 +5153,11 @@ - "url": "https://github.com/sponsors/ljharb" - } - }, -+ "node_modules/is-arrayish": { -+ "version": "0.3.2", -+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", -+ "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" -+ }, - "node_modules/is-async-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", -@@ -6676,12 +7157,12 @@ - "dev": true - }, - "node_modules/next": { -- "version": "14.1.0", -- "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", -- "integrity": "sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==", -+ "version": "14.2.3", -+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz", -+ "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==", - "dependencies": { -- "@next/env": "14.1.0", -- "@swc/helpers": "0.5.2", -+ "@next/env": "14.2.3", -+ "@swc/helpers": "0.5.5", - "busboy": "1.6.0", - "caniuse-lite": "^1.0.30001579", - "graceful-fs": "^4.2.11", -@@ -6695,18 +7176,19 @@ - "node": ">=18.17.0" - }, - "optionalDependencies": { -- "@next/swc-darwin-arm64": "14.1.0", -- "@next/swc-darwin-x64": "14.1.0", -- "@next/swc-linux-arm64-gnu": "14.1.0", -- "@next/swc-linux-arm64-musl": "14.1.0", -- "@next/swc-linux-x64-gnu": "14.1.0", -- "@next/swc-linux-x64-musl": "14.1.0", -- "@next/swc-win32-arm64-msvc": "14.1.0", -- "@next/swc-win32-ia32-msvc": "14.1.0", -- "@next/swc-win32-x64-msvc": "14.1.0" -+ "@next/swc-darwin-arm64": "14.2.3", -+ "@next/swc-darwin-x64": "14.2.3", -+ "@next/swc-linux-arm64-gnu": "14.2.3", -+ "@next/swc-linux-arm64-musl": "14.2.3", -+ "@next/swc-linux-x64-gnu": "14.2.3", -+ "@next/swc-linux-x64-musl": "14.2.3", -+ "@next/swc-win32-arm64-msvc": "14.2.3", -+ "@next/swc-win32-ia32-msvc": "14.2.3", -+ "@next/swc-win32-x64-msvc": "14.2.3" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", -+ "@playwright/test": "^1.41.2", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "sass": "^1.3.0" -@@ -6715,6 +7197,9 @@ - "@opentelemetry/api": { - "optional": true - }, -+ "@playwright/test": { -+ "optional": true -+ }, - "sass": { - "optional": true - } -@@ -7928,13 +8413,9 @@ - } - }, - "node_modules/semver": { -- "version": "7.5.4", -- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", -- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", -- "dev": true, -- "dependencies": { -- "lru-cache": "^6.0.0" -- }, -+ "version": "7.6.2", -+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", -+ "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", - "bin": { - "semver": "bin/semver.js" - }, -@@ -7942,18 +8423,6 @@ - "node": ">=10" - } - }, -- "node_modules/semver/node_modules/lru-cache": { -- "version": "6.0.0", -- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", -- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", -- "dev": true, -- "dependencies": { -- "yallist": "^4.0.0" -- }, -- "engines": { -- "node": ">=10" -- } -- }, - "node_modules/seroval": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/seroval/-/seroval-1.0.4.tgz", -@@ -8010,6 +8479,45 @@ - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" - }, -+ "node_modules/sharp": { -+ "version": "0.33.4", -+ "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.4.tgz", -+ "integrity": "sha512-7i/dt5kGl7qR4gwPRD2biwD2/SvBn3O04J77XKFgL2OnZtQw+AG9wnuS/csmu80nPRHLYE9E41fyEiG8nhH6/Q==", -+ "hasInstallScript": true, -+ "dependencies": { -+ "color": "^4.2.3", -+ "detect-libc": "^2.0.3", -+ "semver": "^7.6.0" -+ }, -+ "engines": { -+ "libvips": ">=8.15.2", -+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0" -+ }, -+ "funding": { -+ "url": "https://opencollective.com/libvips" -+ }, -+ "optionalDependencies": { -+ "@img/sharp-darwin-arm64": "0.33.4", -+ "@img/sharp-darwin-x64": "0.33.4", -+ "@img/sharp-libvips-darwin-arm64": "1.0.2", -+ "@img/sharp-libvips-darwin-x64": "1.0.2", -+ "@img/sharp-libvips-linux-arm": "1.0.2", -+ "@img/sharp-libvips-linux-arm64": "1.0.2", -+ "@img/sharp-libvips-linux-s390x": "1.0.2", -+ "@img/sharp-libvips-linux-x64": "1.0.2", -+ "@img/sharp-libvips-linuxmusl-arm64": "1.0.2", -+ "@img/sharp-libvips-linuxmusl-x64": "1.0.2", -+ "@img/sharp-linux-arm": "0.33.4", -+ "@img/sharp-linux-arm64": "0.33.4", -+ "@img/sharp-linux-s390x": "0.33.4", -+ "@img/sharp-linux-x64": "0.33.4", -+ "@img/sharp-linuxmusl-arm64": "0.33.4", -+ "@img/sharp-linuxmusl-x64": "0.33.4", -+ "@img/sharp-wasm32": "0.33.4", -+ "@img/sharp-win32-ia32": "0.33.4", -+ "@img/sharp-win32-x64": "0.33.4" -+ } -+ }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", -@@ -8054,6 +8562,14 @@ - "url": "https://github.com/sponsors/isaacs" - } - }, -+ "node_modules/simple-swizzle": { -+ "version": "0.2.2", -+ "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", -+ "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", -+ "dependencies": { -+ "is-arrayish": "^0.3.1" -+ } -+ }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", -@@ -9369,12 +9885,6 @@ - "node": ">=0.4" - } - }, -- "node_modules/yallist": { -- "version": "4.0.0", -- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", -- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", -- "dev": true -- }, - "node_modules/yaml": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", -diff --git a/package.json b/package.json -index 4185096..4ab1c58 100644 ---- a/package.json -+++ b/package.json -@@ -31,7 +31,7 @@ - "framer-motion": "^11.0.3", - "langchain": "^0.1.13", - "lucide-react": "^0.322.0", -- "next": "14.1.0", -+ "next": "^14.2.3", - "next-themes": "^0.2.1", - "react": "^18", - "react-code-blocks": "^0.1.6", -@@ -41,6 +41,7 @@ - "react-resizable-panels": "^2.0.3", - "react-textarea-autosize": "^8.5.3", - "remark-gfm": "^4.0.0", -+ "sharp": "^0.33.4", - "sonner": "^1.4.0", - "tailwind-merge": "^2.2.1", - "tailwindcss-animate": "^1.0.7", --- -2.42.0 - diff --git a/pkgs/by-name/ne/nextjs-ollama-llm-ui/0003-add-standalone-output.patch b/pkgs/by-name/ne/nextjs-ollama-llm-ui/0003-add-standalone-output.patch deleted file mode 100644 index 50d161114896..000000000000 --- a/pkgs/by-name/ne/nextjs-ollama-llm-ui/0003-add-standalone-output.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/next.config.mjs b/next.config.mjs -index dc34f1a..f6f90c4 100644 ---- a/next.config.mjs -+++ b/next.config.mjs -@@ -1,6 +1,7 @@ - /** @type {import('next').NextConfig} */ - const nextConfig = { -- webpack: (config, { isServer }) => { -+ output: 'standalone', -+ webpack: (config, { isServer }) => { - // Fixes npm packages that depend on `fs` module - if (!isServer) { - config.resolve.fallback = { --- -2.42.0 - diff --git a/pkgs/by-name/ne/nextjs-ollama-llm-ui/package.nix b/pkgs/by-name/ne/nextjs-ollama-llm-ui/package.nix index aad1420f8b65..866f9b5babfe 100644 --- a/pkgs/by-name/ne/nextjs-ollama-llm-ui/package.nix +++ b/pkgs/by-name/ne/nextjs-ollama-llm-ui/package.nix @@ -14,7 +14,7 @@ }: let - version = "1.0.1"; + version = "1.1.0"; in buildNpmPackage { pname = "nextjs-ollama-llm-ui"; @@ -24,20 +24,14 @@ buildNpmPackage { owner = "jakobhoeg"; repo = "nextjs-ollama-llm-ui"; rev = "v${version}"; - hash = "sha256-pZJgiopm0VGwaZxsNcyRawevvzEcK1j5WhngX1Pn6YE="; + hash = "sha256-IA7g96u5QY8cOuTbJEWw7+U+hSFBzIQVk4Kv3qHKAdM="; }; - npmDepsHash = "sha256-wtHOW0CyEOszgiZwDkF2/cSxbw6WFRLbhDnd2FlY70E="; + npmDepsHash = "sha256-3M0BZ9KZZ0ONwvTLycfMR8skMQf8mzjeqYCwJY4l040="; patches = [ - # Update to a newer nextjs version that buildNpmPackage is able to build. - # Remove at nextjs update. - ./0001-update-nextjs.patch # nextjs tries to download google fonts from the internet during buildPhase and fails in Nix sandbox. # We patch the code to expect a local font from src/app/Inter.ttf that we load from Nixpkgs in preBuild phase. ./0002-use-local-google-fonts.patch - # Modify next.config.js to produce a production "standalone" output at .next/standalone. - # This output is easy to package with Nix and run with "node .next/standalone/server.js" later. - ./0003-add-standalone-output.patch ]; # Adjust buildNpmPackage phases with nextjs quirk workarounds. @@ -70,6 +64,9 @@ buildNpmPackage { mkdir -p $out/share/homepage/.next cp -r .next/static $out/share/homepage/.next/static + # https://github.com/vercel/next.js/discussions/58864 + ln -s /var/cache/nextjs-ollama-llm-ui $out/share/homepage/.next/cache + chmod +x $out/share/homepage/server.js # we set a default port to support "nix run ..." diff --git a/pkgs/by-name/ni/niri/package.nix b/pkgs/by-name/ni/niri/package.nix index 3748f3dbf819..c41c04dd5dd8 100644 --- a/pkgs/by-name/ni/niri/package.nix +++ b/pkgs/by-name/ni/niri/package.nix @@ -1,22 +1,26 @@ -{ lib -, rustPlatform -, fetchFromGitHub -, nix-update-script -, pkg-config -, libdisplay-info -, libxkbcommon -, pango -, pipewire -, seatd -, stdenv -, wayland -, systemd -, libinput -, mesa -, fontconfig -, libglvnd -, autoPatchelfHook -, clang +{ + lib, + clang, + dbus, + eudev, + fetchFromGitHub, + libdisplay-info, + libglvnd, + libinput, + libxkbcommon, + mesa, + nix-update-script, + pango, + pipewire, + pkg-config, + rustPlatform, + seatd, + systemd, + wayland, + withDbus ? true, + withDinit ? false, + withScreencastSupport ? true, + withSystemd ? true, }: rustPlatform.buildRustPackage rec { @@ -26,10 +30,16 @@ rustPlatform.buildRustPackage rec { src = fetchFromGitHub { owner = "YaLTeR"; repo = "niri"; - rev = "v${version}"; + rev = "refs/tags/v${version}"; hash = "sha256-4YDrKMwXGVOBkeaISbxqf24rLuHvO98TnqxWYfgiSeg="; }; + postPatch = '' + patchShebangs resources/niri-session + substituteInPlace resources/niri.service \ + --replace-fail '/usr/bin' "$out/bin" + ''; + cargoLock = { lockFile = ./Cargo.lock; outputHashes = { @@ -38,56 +48,79 @@ rustPlatform.buildRustPackage rec { }; }; + strictDeps = true; + nativeBuildInputs = [ + clang pkg-config rustPlatform.bindgenHook - autoPatchelfHook - clang ]; - buildInputs = [ - wayland - systemd # For libudev - seatd # For libseat - libdisplay-info - libxkbcommon - libinput - mesa # For libgbm - fontconfig - stdenv.cc.cc.lib - pipewire - pango - ]; + buildInputs = + [ + libdisplay-info + libglvnd # For libEGL + libinput + libxkbcommon + mesa # For libgbm + pango + seatd + wayland # For libwayland-client + ] + ++ lib.optional (withDbus || withScreencastSupport || withSystemd) dbus + ++ lib.optional withScreencastSupport pipewire + ++ lib.optional withSystemd systemd # Includes libudev + ++ lib.optional (!withSystemd) eudev; # Use an alternative libudev implementation when building w/o systemd - runtimeDependencies = [ - wayland - mesa - libglvnd # For libEGL - ]; + buildFeatures = + lib.optional withDbus "dbus" + ++ lib.optional withDinit "dinit" + ++ lib.optional withScreencastSupport "xdp-gnome-screencast" + ++ lib.optional withSystemd "systemd"; + buildNoDefaultFeatures = true; - passthru.providedSessions = [ "niri" ]; + postInstall = + '' + install -Dm0644 resources/niri.desktop -t $out/share/wayland-sessions + '' + + lib.optionalString withDbus '' + install -Dm0644 resources/niri-portals.conf -t $out/share/xdg-desktop-portal + '' + + lib.optionalString withSystemd '' + install -Dm0755 resources/niri-session -t $out/bin + install -Dm0644 resources/niri{-shutdown.target,.service} -t $out/share/systemd/user + ''; - postPatch = '' - patchShebangs ./resources/niri-session - substituteInPlace ./resources/niri.service \ - --replace-fail '/usr/bin' "$out/bin" - ''; + env = { + # Force linking with libEGL and libwayland-client + # so they can be discovered by `dlopen()` + RUSTFLAGS = toString ( + map (arg: "-C link-arg=" + arg) [ + "-Wl,--push-state,--no-as-needed" + "-lEGL" + "-lwayland-client" + "-Wl,--pop-state" + ] + ); + }; - postInstall = '' - install -Dm0755 ./resources/niri-session -t $out/bin - install -Dm0644 resources/niri.desktop -t $out/share/wayland-sessions - install -Dm0644 resources/niri-portals.conf -t $out/share/xdg-desktop-portal - install -Dm0644 resources/niri{-shutdown.target,.service} -t $out/share/systemd/user - ''; + passthru = { + providedSessions = [ "niri" ]; + updateScript = nix-update-script { }; + }; - passthru.updateScript = nix-update-script { }; - - meta = with lib; { + meta = { description = "Scrollable-tiling Wayland compositor"; homepage = "https://github.com/YaLTeR/niri"; - license = licenses.gpl3Only; - maintainers = with maintainers; [ iogamaster foo-dogsquared sodiboo ]; + changelog = "https://github.com/YaLTeR/niri/releases/tag/v${version}"; + license = lib.licenses.gpl3Only; + maintainers = with lib.maintainers; [ + iogamaster + foo-dogsquared + sodiboo + getchoo + ]; mainProgram = "niri"; - platforms = platforms.linux; + platforms = lib.platforms.linux; }; } diff --git a/pkgs/by-name/oi/oidc-agent/package.nix b/pkgs/by-name/oi/oidc-agent/package.nix index bfcc2accc9ad..60d0c2b972a7 100644 --- a/pkgs/by-name/oi/oidc-agent/package.nix +++ b/pkgs/by-name/oi/oidc-agent/package.nix @@ -3,7 +3,7 @@ stdenv, fetchFromGitHub, curl, - webkitgtk, + webkitgtk_4_0, libmicrohttpd, libsecret, qrencode, @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { buildInputs = [ curl - webkitgtk + webkitgtk_4_0 libmicrohttpd libsecret qrencode diff --git a/pkgs/by-name/os/osu-lazer-bin/package.nix b/pkgs/by-name/os/osu-lazer-bin/package.nix index 6425ebe7eb74..3cecd70c66c4 100644 --- a/pkgs/by-name/os/osu-lazer-bin/package.nix +++ b/pkgs/by-name/os/osu-lazer-bin/package.nix @@ -25,7 +25,7 @@ let }; x86_64-linux = fetchurl { url = "https://github.com/ppy/osu/releases/download/${version}/osu.AppImage"; - hash = "sha256-PAbLw/IVJHe/y7YSyrTK9wJVcN3VIZYhrgDoHzYtjS8="; + hash = "sha256-2H2SPcUm/H/0D9BqBiTFvaCwd0c14/r+oWhyeZdNpoU="; }; } .${stdenv.system} or (throw "osu-lazer-bin: ${stdenv.system} is unsupported."); diff --git a/pkgs/by-name/ov/overlayed/package.nix b/pkgs/by-name/ov/overlayed/package.nix index 19452d768d5b..215b205d78ea 100644 --- a/pkgs/by-name/ov/overlayed/package.nix +++ b/pkgs/by-name/ov/overlayed/package.nix @@ -5,7 +5,7 @@ pkg-config, openssl, libsoup, - webkitgtk, + webkitgtk_4_0, fetchFromGitHub, libayatana-appindicator, }: @@ -33,7 +33,7 @@ rustPlatform.buildRustPackage rec { buildInputs = [ openssl - webkitgtk + webkitgtk_4_0 libsoup ]; diff --git a/pkgs/by-name/po/portfolio/package.nix b/pkgs/by-name/po/portfolio/package.nix index 468d56e8d418..c73b6985f341 100644 --- a/pkgs/by-name/po/portfolio/package.nix +++ b/pkgs/by-name/po/portfolio/package.nix @@ -10,7 +10,7 @@ openjdk17, stdenvNoCC, swt, - webkitgtk, + webkitgtk_4_0, wrapGAppsHook3, gitUpdater, }: @@ -30,7 +30,7 @@ let gtk3 libsecret swt - webkitgtk + webkitgtk_4_0 ]; in stdenvNoCC.mkDerivation (finalAttrs: { diff --git a/pkgs/by-name/po/pot/package.nix b/pkgs/by-name/po/pot/package.nix index 72f6dd5e2889..bd1c7c497472 100644 --- a/pkgs/by-name/po/pot/package.nix +++ b/pkgs/by-name/po/pot/package.nix @@ -14,7 +14,7 @@ buildGoModule, libayatana-appindicator, gtk3, - webkitgtk, + webkitgtk_4_0, libsoup, openssl, xdotool, @@ -72,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: { libsoup libayatana-appindicator openssl - webkitgtk + webkitgtk_4_0 xdotool ]; diff --git a/pkgs/by-name/re/redocly/package.nix b/pkgs/by-name/re/redocly/package.nix index 198d50270259..fe53529c18b9 100644 --- a/pkgs/by-name/re/redocly/package.nix +++ b/pkgs/by-name/re/redocly/package.nix @@ -8,16 +8,16 @@ buildNpmPackage rec { pname = "redocly"; - version = "1.18.1"; + version = "1.25.5"; src = fetchFromGitHub { owner = "Redocly"; repo = "redocly-cli"; rev = "@redocly/cli@${version}"; - hash = "sha256-Y09tGm3Sje8gd+6tUyBTCt7HjL2CQ/vo/ExLDnywvcQ="; + hash = "sha256-pVSmrORa6KcAwllYepwra8QpnlfFoB9+noevLSmoWzY="; }; - npmDepsHash = "sha256-WzMFKMW/YyAH3ZoOeIcXIum15cJmPGp96xSYb9QCaWI="; + npmDepsHash = "sha256-nFRKC3xM+vq9SDeIelUqE/ZSSCSke0G0Qm629/s6WO8="; npmBuildScript = "prepare"; diff --git a/pkgs/by-name/sn/snippetexpandergui/package.nix b/pkgs/by-name/sn/snippetexpandergui/package.nix index 8434f8672305..5e5e6a60cda7 100644 --- a/pkgs/by-name/sn/snippetexpandergui/package.nix +++ b/pkgs/by-name/sn/snippetexpandergui/package.nix @@ -6,7 +6,7 @@ , installShellFiles , xorg , gtk3 -, webkitgtk +, webkitgtk_4_0 , snippetexpanderd , snippetexpanderx }: @@ -32,7 +32,7 @@ buildGoModule rec { buildInputs = [ xorg.libX11 gtk3 - webkitgtk + webkitgtk_4_0 snippetexpanderd snippetexpanderx ]; diff --git a/pkgs/by-name/sq/squirreldisk/package.nix b/pkgs/by-name/sq/squirreldisk/package.nix index f394cce79ada..4ed964773063 100644 --- a/pkgs/by-name/sq/squirreldisk/package.nix +++ b/pkgs/by-name/sq/squirreldisk/package.nix @@ -4,7 +4,7 @@ freetype, libsoup, gtk3, - webkitgtk, + webkitgtk_4_0, pkg-config, wrapGAppsHook3, parallel-disk-usage, @@ -66,7 +66,7 @@ in ''; nativeBuildInputs = [pkg-config wrapGAppsHook3 copyDesktopItems]; - buildInputs = [dbus openssl freetype libsoup gtk3 webkitgtk]; + buildInputs = [dbus openssl freetype libsoup gtk3 webkitgtk_4_0]; # Disable checkPhase, since the project doesn't contain tests doCheck = false; diff --git a/pkgs/by-name/te/telegraf/package.nix b/pkgs/by-name/te/telegraf/package.nix index cb98c85bf45b..d2fac7003969 100644 --- a/pkgs/by-name/te/telegraf/package.nix +++ b/pkgs/by-name/te/telegraf/package.nix @@ -9,7 +9,7 @@ buildGo123Module rec { pname = "telegraf"; - version = "1.32.0"; + version = "1.32.1"; subPackages = [ "cmd/telegraf" ]; @@ -17,10 +17,10 @@ buildGo123Module rec { owner = "influxdata"; repo = "telegraf"; rev = "v${version}"; - hash = "sha256-ITTlHsoWPXHbGtmNOE0x1sCbeADWi4liOEqXXKQUeGU="; + hash = "sha256-CtfPREsU2LU7Ptn3FzEDlPeWVWP/OdtIITdUL7qKbgI="; }; - vendorHash = "sha256-wKl6Rutt2QrF4nLxB5Ic6QlekrPUfHwdFZyTTdbK0HU="; + vendorHash = "sha256-WQbgGsGfyUGcgjXWjuyyCapeKgujoZD6HpKoFiIA//M="; proxyVendor = true; ldflags = [ diff --git a/pkgs/by-name/tr/treedome/package.nix b/pkgs/by-name/tr/treedome/package.nix index 045823a5836e..67023591b2b7 100644 --- a/pkgs/by-name/tr/treedome/package.nix +++ b/pkgs/by-name/tr/treedome/package.nix @@ -15,7 +15,7 @@ , openssl , pkg-config , rustPlatform -, webkitgtk +, webkitgtk_4_0 , wrapGAppsHook3 , sqlite }: @@ -97,7 +97,7 @@ rustPlatform.buildRustPackage { freetype libsoup gtk3 - webkitgtk + webkitgtk_4_0 gsettings-desktop-schemas sqlite ]; diff --git a/pkgs/by-name/us/userborn/package.nix b/pkgs/by-name/us/userborn/package.nix index 233a1ebb1264..5290fd054338 100644 --- a/pkgs/by-name/us/userborn/package.nix +++ b/pkgs/by-name/us/userborn/package.nix @@ -2,36 +2,29 @@ lib, rustPlatform, fetchFromGitHub, - makeBinaryWrapper, - mkpasswd, + libxcrypt, nixosTests, nix-update-script, }: rustPlatform.buildRustPackage rec { pname = "userborn"; - version = "0.2.0"; + version = "0.3.0"; src = fetchFromGitHub { owner = "nikstur"; repo = "userborn"; rev = version; - hash = "sha256-LEKdgmw1inBOi0sriG8laCrtx0ycqR5ftdnmszadx3U="; + hash = "sha256-ABePye1zuGDH74BL6AP05rR9eBOYu1SoVpd2TcZQMW8="; }; sourceRoot = "${src.name}/rust/userborn"; - cargoHash = "sha256-Pjzu6db2WomNsC+jNK1fr1u7koZwUvWPIY5JHMo1gkA="; + cargoHash = "sha256-/S2rkZyXHN5NiW9TFhKguqtf/udFcDOTfV2jYRMV14s="; - nativeBuildInputs = [ makeBinaryWrapper ]; + nativeBuildInputs = [ rustPlatform.bindgenHook ]; - buildInputs = [ mkpasswd ]; - - nativeCheckInputs = [ mkpasswd ]; - - postInstall = '' - wrapProgram $out/bin/userborn --prefix PATH : ${lib.makeBinPath [ mkpasswd ]} - ''; + buildInputs = [ libxcrypt ]; stripAllList = [ "bin" ]; @@ -51,8 +44,9 @@ rustPlatform.buildRustPackage rec { meta = with lib; { homepage = "https://github.com/nikstur/userborn"; description = "Declaratively bear (manage) Linux users and groups"; + changelog = "https://github.com/nikstur/userborn/blob/${version}/CHANGELOG.md"; license = licenses.mit; - platforms = platforms.linux; + platforms = platforms.unix; maintainers = with lib.maintainers; [ nikstur ]; mainProgram = "userborn"; }; diff --git a/pkgs/by-name/vp/vpp/package.nix b/pkgs/by-name/vp/vpp/package.nix new file mode 100644 index 000000000000..fafcb1784bc9 --- /dev/null +++ b/pkgs/by-name/vp/vpp/package.nix @@ -0,0 +1,126 @@ +{ + lib, + stdenv, + fetchFromGitHub, + nix-update-script, + cmake, + pkg-config, + check, + openssl, + python3, + subunit, + mbedtls_2, + libpcap, + libnl, + libmnl, + libelf, + dpdk, + jansson, + zlib, + rdma-core, + libbpf, + xdp-tools, + enableDpdk ? true, + enableRdma ? true, + # FIXME: broken: af_xdp plugins - no working libbpf found - af_xdp plugin disabled + enableAfXdp ? false, +}: + +let + dpdk' = dpdk.overrideAttrs (old: { + mesonFlags = old.mesonFlags ++ [ "-Denable_driver_sdk=true" ]; + }); + + rdma-core' = rdma-core.overrideAttrs (old: { + cmakeFlags = old.cmakeFlags ++ [ + "-DENABLE_STATIC=1" + "-DBUILD_SHARED_LIBS:BOOL=false" + ]; + }); + + xdp-tools' = xdp-tools.overrideAttrs (old: { + postInstall = ""; + dontDisableStatic = true; + }); +in +stdenv.mkDerivation rec { + pname = "vpp"; + version = "24.06"; + + src = fetchFromGitHub { + owner = "FDio"; + repo = "vpp"; + rev = "v${version}"; + hash = "sha256-AbdtH3ha/Bzj9tAkp4OhjRcUZilUEt+At0LukWN2LJU="; + }; + + postPatch = '' + patchShebangs scripts/ + substituteInPlace CMakeLists.txt \ + --replace "plugins tools/vppapigen tools/g2 tools/perftool cmake pkg" \ + "plugins tools/vppapigen tools/g2 tools/perftool cmake" + ''; + + preConfigure = '' + echo "${version}-nixos" > scripts/.version + scripts/version + ''; + + postConfigure = '' + patchShebangs ../tools/ + patchShebangs ../vpp-api/ + ''; + + sourceRoot = "source/src"; + + enableParallelBuilding = true; + env.NIX_CFLAGS_COMPILE = "-Wno-error -Wno-array-bounds -Wno-maybe-uninitialized"; + + cmakeFlags = [ + "-DVPP_PLATFORM=default" + "-DVPP_LIBRARY_DIR=lib" + ] ++ lib.optional enableDpdk "-DVPP_USE_SYSTEM_DPDK=ON"; + + nativeBuildInputs = [ + cmake + pkg-config + ] ++ lib.optional enableDpdk dpdk' ++ lib.optional enableRdma rdma-core'.dev; + + buildInputs = + [ + check + openssl + (python3.withPackages (ps: [ ps.ply ])) + + subunit # vapi tests + mbedtls_2 # tlsmbed plugin + libpcap # bpf_trace_filter plugin + + # linux-cp plugin + libnl + libmnl + ] + ++ lib.optionals enableDpdk [ + # dpdk plugin + libelf + jansson + zlib + ] + ++ lib.optionals enableAfXdp [ + # af_xdp plugin + libelf + libbpf + xdp-tools' + ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Fast, scalable layer 2-4 multi-platform network stack running in user space"; + homepage = "https://s3-docs.fd.io/vpp/${version}/"; + license = [ lib.licenses.asl20 ]; + maintainers = with lib.maintainers; [ romner-set ]; + mainProgram = "vpp"; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/by-name/xi/xiphos/package.nix b/pkgs/by-name/xi/xiphos/package.nix index d3aaa70fc9af..b6b01ae0770f 100644 --- a/pkgs/by-name/xi/xiphos/package.nix +++ b/pkgs/by-name/xi/xiphos/package.nix @@ -22,7 +22,7 @@ , minizip , pkg-config , sword -, webkitgtk +, webkitgtk_4_0 , wrapGAppsHook3 , yelp-tools , zip @@ -81,7 +81,7 @@ stdenv.mkDerivation rec { libuuid minizip sword - webkitgtk + webkitgtk_4_0 ]; cmakeFlags = [ diff --git a/pkgs/desktops/lomiri/applications/lomiri-camera-app/default.nix b/pkgs/desktops/lomiri/applications/lomiri-camera-app/default.nix index 34abc5d808ee..88770eeaf9b4 100644 --- a/pkgs/desktops/lomiri/applications/lomiri-camera-app/default.nix +++ b/pkgs/desktops/lomiri/applications/lomiri-camera-app/default.nix @@ -6,12 +6,12 @@ gitUpdater, nixosTests, cmake, - content-hub, exiv2, gettext, gst_all_1, libusermetrics, lomiri-action-api, + lomiri-content-hub, lomiri-ui-toolkit, lomiri-thumbnailer, pkg-config, @@ -145,9 +145,9 @@ stdenv.mkDerivation (finalAttrs: { qzxing # QML - content-hub libusermetrics lomiri-action-api + lomiri-content-hub lomiri-ui-toolkit lomiri-thumbnailer qtpositioning @@ -192,7 +192,7 @@ stdenv.mkDerivation (finalAttrs: { export QML2_IMPORT_PATH=${ listToQtVar qtbase.qtQmlPrefix [ lomiri-ui-toolkit - content-hub + lomiri-content-hub lomiri-thumbnailer ] } @@ -203,7 +203,7 @@ stdenv.mkDerivation (finalAttrs: { ln -s $out/share/lomiri-camera-app/assets/lomiri-camera-app-splash.svg $out/share/lomiri-app-launch/splash/lomiri-camera-app.svg ln -s $out/share/lomiri-camera-app/assets/lomiri-barcode-reader-app-splash.svg $out/share/lomiri-app-launch/splash/lomiri-barcode-reader-app.svg - install -Dm644 ../camera-contenthub.json $out/share/content-hub/peers/lomiri-camera-app + install -Dm644 ../camera-contenthub.json $out/share/lomiri-content-hub/peers/lomiri-camera-app ''; dontWrapGApps = true; diff --git a/pkgs/desktops/lomiri/applications/lomiri-clock-app/default.nix b/pkgs/desktops/lomiri/applications/lomiri-clock-app/default.nix index 6403ed165c29..b750184e7300 100644 --- a/pkgs/desktops/lomiri/applications/lomiri-clock-app/default.nix +++ b/pkgs/desktops/lomiri/applications/lomiri-clock-app/default.nix @@ -6,10 +6,10 @@ gitUpdater, nixosTests, cmake, - content-hub, geonames, gettext, libusermetrics, + lomiri-content-hub, lomiri-sounds, lomiri-ui-toolkit, makeWrapper, @@ -124,8 +124,8 @@ stdenv.mkDerivation (finalAttrs: { qtbase # QML - content-hub libusermetrics + lomiri-content-hub lomiri-ui-toolkit qtdeclarative qtmultimedia @@ -172,7 +172,7 @@ stdenv.mkDerivation (finalAttrs: { export QML2_IMPORT_PATH=${ listToQtVar qtbase.qtQmlPrefix ( [ - content-hub + lomiri-content-hub lomiri-ui-toolkit qtmultimedia u1db-qt diff --git a/pkgs/desktops/lomiri/applications/lomiri-docviewer-app/default.nix b/pkgs/desktops/lomiri/applications/lomiri-docviewer-app/default.nix index 165987ef18c9..6c5ce2a57cf8 100644 --- a/pkgs/desktops/lomiri/applications/lomiri-docviewer-app/default.nix +++ b/pkgs/desktops/lomiri/applications/lomiri-docviewer-app/default.nix @@ -7,9 +7,9 @@ gitUpdater, nixosTests, cmake, - content-hub, gettext, libreoffice-unwrapped, + lomiri-content-hub, lomiri-ui-toolkit, pkg-config, poppler, @@ -21,61 +21,16 @@ stdenv.mkDerivation (finalAttrs: { pname = "lomiri-docviewer-app"; - version = "3.0.4"; + version = "3.1.0"; src = fetchFromGitLab { owner = "ubports"; repo = "development/apps/lomiri-docviewer-app"; rev = "v${finalAttrs.version}"; - hash = "sha256-xUBE+eSAfG2yMlE/DI+6JHQx+3HiNwtSTv/P4YOAE7Y="; + hash = "sha256-zesBZmaMiMJwHtj3SoaNeHPiM9VNGEa4nTIiG8nskqI="; }; patches = [ - # Remove when version > 3.0.4 - (fetchpatch { - name = "0001-lomiri-docviewer-app-Set-gettext-domain.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/8dc2c911817c45451ff341e4ae4b841bcc134945.patch"; - hash = "sha256-vP6MYl7qhJzkgtnVelMMIbc0ZkHxC1s3abUXJ2zVi4w="; - }) - (fetchpatch { - name = "0002-lomiri-docviewer-app-Install-splash-file.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/ef20bbdd5e80040bf11273a5fc2964400086fdc9.patch"; - hash = "sha256-ylPFn53PJRyyzhN1SxtmNFMFeDsV9UxyQhAqULA5PJM="; - }) - - # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/72 merged & in release - (fetchpatch { - name = "1001-lomiri-docviewer-app-Stop-using-qt5_use_modules.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/120c81dd71356f2e06ef5c44d114b665236a7382.patch"; - hash = "sha256-4VCw90qYnQ/o67ndp9o8h+wUl2IUpmVGb9xyY55AMIQ="; - }) - (fetchpatch { - name = "1002-lomiri-docviewer-app-Move-Qt-find_package-to-top-level.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/43ee96a3a33b7a8f04e95f434982bcc60ba4b257.patch"; - hash = "sha256-3LggdNo4Yak4SVAD/4/mMCl8PjZy1dIx9i5hKHM5fJU="; - }) - - # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/73 merged & in release - (fetchpatch { - name = "1011-lomiri-docviewer-app-Call-i18n-bindtextdomain.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/67599a841917304f76ffa1167a217718542a8b46.patch"; - hash = "sha256-nbi3qX14kWtFcXrxAD41IeybDIRTNfUdRgSP1vDI/Hs="; - }) - - # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/74 merged & in release - (fetchpatch { - name = "1021-lomiri-docviewer-app-Use-GNUInstallDirs-more-better.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/40a860a118077c05692002db694be77ea62dc5b3.patch"; - hash = "sha256-/zhpIdqZ7WsU4tx4/AZs5w8kEopjH2boiHdHaJk5RXk="; - }) - - # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/75 merged & in release - (fetchpatch { - name = "1031-lomiri-docviewer-app-Use-BUILD_TESTING.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/6f1eb739a3e0bf0ba847f94f8ea8411e0a385c2d.patch"; - hash = "sha256-yVuYG+1JGo/I4TVRZ3UQeO/TJ8GiFO5BJ9Bs7glK7hg="; - }) - # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/76 merged & in release # fetchpatch2 because there's a file rename (fetchpatch2 { @@ -84,11 +39,11 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-KdHyKXM0hMMIFkuDn5JZJOEuitWAXT2QQOuR+1AolP0="; }) - # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/77 merged & in release + # Remove when https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/merge_requests/81 merged & in release (fetchpatch { - name = "1051-lomiri-docviewer-app-Install-content-hub-lomiri-url-dispatcher-files.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/98f5ab9d51ba05e8c3ed1991c0b67d3922b5ba90.patch"; - hash = "sha256-JA26ga1CNOdbis87lSzqbUbs94Oc1vlxraXZxx3dsu8="; + name = "1051-lomiri-docviewer-app-XDGify-icon.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-docviewer-app/-/commit/a319e648ba15a7868d9ceb3a77ea15ad196e515b.patch"; + hash = "sha256-JMSnN8EyWPHhqHzaJxy3JIhNaOvPLYkVDnNCrPGbO4E="; }) ]; @@ -98,7 +53,6 @@ stdenv.mkDerivation (finalAttrs: { # We don't want absolute paths in desktop files substituteInPlace data/CMakeLists.txt \ - --replace-fail 'ICON "''${DATA_DIR}/''${ICON_FILE}"' 'ICON lomiri-docviewer-app' \ --replace-fail 'SPLASH "''${DATA_DIR}/''${SPLASH_FILE}"' 'SPLASH "lomiri-app-launch/splash/lomiri-docviewer-app.svg"' ''; @@ -118,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: { qtdeclarative # QML - content-hub + lomiri-content-hub lomiri-ui-toolkit qtsystems ]; @@ -133,9 +87,8 @@ stdenv.mkDerivation (finalAttrs: { doCheck = false; postInstall = '' - mkdir -p $out/share/{icons/hicolor/scalable/apps,lomiri-app-launch/splash} + mkdir -p $out/share/lomiri-app-launch/splash - ln -s $out/share/{lomiri-docviewer-app/docviewer-app.svg,icons/hicolor/scalable/apps/lomiri-docviewer-app.svg} ln -s $out/share/{lomiri-docviewer-app/docviewer-app-splash.svg,lomiri-app-launch/splash/lomiri-docviewer-app.svg} ''; diff --git a/pkgs/desktops/lomiri/applications/lomiri-filemanager-app/default.nix b/pkgs/desktops/lomiri/applications/lomiri-filemanager-app/default.nix index fa91e1531bf2..9ad6cee361f9 100644 --- a/pkgs/desktops/lomiri/applications/lomiri-filemanager-app/default.nix +++ b/pkgs/desktops/lomiri/applications/lomiri-filemanager-app/default.nix @@ -2,13 +2,12 @@ stdenv, lib, fetchFromGitLab, - fetchpatch, gitUpdater, nixosTests, biometryd, cmake, - content-hub, gettext, + lomiri-content-hub, lomiri-thumbnailer, lomiri-ui-extras, lomiri-ui-toolkit, @@ -22,65 +21,22 @@ stdenv.mkDerivation (finalAttrs: { pname = "lomiri-filemanager-app"; - version = "1.0.4"; + version = "1.1.2"; src = fetchFromGitLab { owner = "ubports"; repo = "development/apps/lomiri-filemanager-app"; rev = "v${finalAttrs.version}"; - hash = "sha256-vjGCTfXoqul1S7KUJXG6JwgZOc2etXWsdKbyQ/V3abA="; + hash = "sha256-XA1Gdb0Kpc3BEifmgHhQ38moKkCkYbhpr8wptnddZlk="; }; - patches = [ - # This sets the *wrong* domain, but at least it sets *some* domain. - # Remove when version > 1.0.4 - (fetchpatch { - name = "0001-lomiri-filemanager-app-Set-a-gettext-domain.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/commit/b310434d2c25a3b446d3d975f3755eb473a833e8.patch"; - hash = "sha256-gzFFzZCIxedMGW4fp6sonnHj/HmwqdqU5fvGhXUsSOI="; - }) - - # Set the *correct* domain. - # Remove when version > 1.0.4 - (fetchpatch { - name = "0002-lomiri-filemanager-app-Fix-gettext-domain.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/commit/2bb19aeef2baba8d12df1e4976becc08d7cf341d.patch"; - hash = "sha256-wreOMMvBjf316N/XJv3VfI5f5N/VFiEraeadtgRStjA="; - }) - - # Bind domain to locale dir - # Remove when https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/merge_requests/112 merged & in release - (fetchpatch { - name = "0003-lomiri-filemanager-app-Call-i18n.bindtextdomain.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/commit/ac0ab681c52c691d464cf94707b013b39675ad2d.patch"; - hash = "sha256-mwpcHwMT2FcNC6KIZNuSWU/bA8XP8rEQKHn7t5m6npM="; - }) - - # Stop using deprecated qt5_use_modules - # Remove when https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/merge_requests/113 merged & in release - (fetchpatch { - name = "0004-lomiri-filemanager-app-Stop-using-qt5_use_modules.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/commit/c2bfe927b16e660bf4730371b1e61e442e034780.patch"; - hash = "sha256-wPOZP2FOaacEGj4SMS5Q/TO+/L11Qz7NTux4kA86Bcs="; - }) - - # Use pkg-config for smbclient flags - # Remove when https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/merge_requests/115 merged & in release - (fetchpatch { - name = "0005-lomiri-filemanager-app-Get-smbclient-flags-via-pkg-config.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-filemanager-app/-/commit/aa791da5999719724e0b0592765e8fa2962305c6.patch"; - hash = "sha256-fFAYKBR28ym/n7fhP9O6VE2owarLxK8cN9QeExHFbtU="; - }) - ]; - postPatch = '' # Use correct QML install path, don't pull in autopilot test code (we can't run that system) # Remove absolute paths from desktop file, https://github.com/NixOS/nixpkgs/issues/308324 substituteInPlace CMakeLists.txt \ --replace-fail 'qmake -query QT_INSTALL_QML' 'echo ${placeholder "out"}/${qtbase.qtQmlPrefix}' \ --replace-fail 'add_subdirectory(tests)' '#add_subdirectory(tests)' \ - --replace-fail 'ICON ''${CMAKE_INSTALL_PREFIX}/''${DATA_DIR}/''${ICON_FILE}' 'ICON lomiri-filemanager-app' \ - --replace-fail 'SPLASH ''${CMAKE_INSTALL_PREFIX}/''${DATA_DIR}/''${SPLASH_FILE}' 'SPLASH lomiri-app-launch/splash/lomiri-filemanager-app.svg' + --replace-fail 'SPLASH ''${DATA_DIR}/''${SPLASH_FILE}' 'SPLASH lomiri-app-launch/splash/lomiri-filemanager-app.svg' # In case this ever gets run, at least point it to a correct-ish path substituteInPlace tests/autopilot/CMakeLists.txt \ @@ -103,7 +59,7 @@ stdenv.mkDerivation (finalAttrs: { # QML biometryd - content-hub + lomiri-content-hub lomiri-thumbnailer lomiri-ui-extras lomiri-ui-toolkit @@ -117,14 +73,6 @@ stdenv.mkDerivation (finalAttrs: { # No tests we can actually run (just autopilot) doCheck = false; - postInstall = '' - # Some misc files don't get installed to the correct paths for us - mkdir -p $out/share/{content-hub/peers,icons/hicolor/scalable/apps,lomiri-app-launch/splash} - ln -s $out/share/lomiri-filemanager-app/content-hub.json $out/share/content-hub/peers/lomiri-filemanager-app - ln -s $out/share/lomiri-filemanager-app/filemanager.svg $out/share/icons/hicolor/scalable/apps/lomiri-filemanager-app.svg - ln -s $out/share/lomiri-filemanager-app/splash.svg $out/share/lomiri-app-launch/splash/lomiri-filemanager-app.svg - ''; - passthru = { tests.vm = nixosTests.lomiri-filemanager-app; updateScript = gitUpdater { rev-prefix = "v"; }; diff --git a/pkgs/desktops/lomiri/applications/lomiri-gallery-app/default.nix b/pkgs/desktops/lomiri/applications/lomiri-gallery-app/default.nix index deed853358b4..817ce9b69bfc 100644 --- a/pkgs/desktops/lomiri/applications/lomiri-gallery-app/default.nix +++ b/pkgs/desktops/lomiri/applications/lomiri-gallery-app/default.nix @@ -6,11 +6,11 @@ gitUpdater, nixosTests, cmake, - content-hub, exiv2, imagemagick, libglvnd, libmediainfo, + lomiri-content-hub, lomiri-thumbnailer, lomiri-ui-extras, lomiri-ui-toolkit, @@ -25,79 +25,30 @@ stdenv.mkDerivation (finalAttrs: { pname = "lomiri-gallery-app"; - version = "3.0.2"; + version = "3.1.0"; src = fetchFromGitLab { owner = "ubports"; repo = "development/apps/lomiri-gallery-app"; rev = "v${finalAttrs.version}"; - hash = "sha256-nX9dTL4W0WxrwvszGd4AUIx4yUrghMM7ZMtGZLhZE/8="; + hash = "sha256-uKGPic9XYUj0rLA05i6GjLM+n17MYgiFJMWnLXHKmIU="; }; patches = [ - # Remove when version > 3.0.2 - (fetchpatch { - name = "0001-lomiri-gallery-app-Newer-Evix2-compat.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/commit/afa019b5e9071fbafaa9afb3b4effdae6e0774c5.patch"; - hash = "sha256-gBc++6EQ7t3VcBZTknkIpC0bJ/P15oI+G0YoQWtjnSY="; - }) - - # Remove when https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/merge_requests/147 merged & in release - (fetchpatch { - name = "0002-lomiri-gallery-app-Stop-using-qt5_use_modules.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/commit/0149c8d422c3e0889d7d523789dc65776a52c4f9.patch"; - hash = "sha256-jS81F7KNbAn5J8sDDXzhXARNYAu6dEKcbNHpHp/3MaI="; - }) - - # Remove when https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/merge_requests/148 merged & in release - (fetchpatch { - name = "0003-lomiri-gallery-app-Fix-GNUInstallDirs.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/commit/805121b362a9b486094e570053884b9ffa92b152.patch"; - hash = "sha256-fyAqKjZ0g7Sw7fWP1IW4SpZ+g0xi/pH6RJie1K3doP0="; - }) - - # Remove when https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/merge_requests/149 merged & in release - (fetchpatch { - name = "0004-lomiri-gallery-app-Fix-icons.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/commit/906966536363e80fe9906dee935d991955e8f842.patch"; - hash = "sha256-LJ+ILhokceXFUvP/G1BEBE/J1/XUAmNBxu551x0Q6nk="; - }) - - # Remove when https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/merge_requests/150 merged & in release - (fetchpatch { - name = "0005-lomiri-gallery-app-Add-ENABLE_WERROR.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/commit/fe32a3453b88cc3563e53ab124f669ce307e9688.patch"; - hash = "sha256-nFCtY3857D5e66rIME+lj6x4exEfx9D2XGEgyWhemgI="; - }) - - # Remove when https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/merge_requests/151 merged & in release - (fetchpatch { - name = "0006-lomiri-gallery-app-BUILD_TESTING.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/commit/51f3d5e643db5576b051da63c58ba3492c851e44.patch"; - hash = "sha256-5aGx2xfCDgq/khgkzGsvUOmTIYALjyfn6W7IR5dldr8="; - }) - (fetchpatch { - name = "0007-lomiri-gallery-app-Top-level-Qt5Test.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/commit/c308c689c2841d71554ff6397a110d1a12016b70.patch"; - hash = "sha256-fXVOKjnj4EPeby9iEp3mZRqx9MLqdF8SUVEouCkyDRc="; - }) - # Remove when https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/merge_requests/152 merged & in release (fetchpatch { - name = "0008-lomiri-gallery-app-bindtextdomain.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/commit/90a79972741ee0c5dc734dba6c42afeb3ee6a699.patch"; - hash = "sha256-YAmH0he5/rZYKWFyPzUFAKJuHhUTxB3q8zbLL7Spz/c="; + name = "0001-lomiri-gallery-app-bindtextdomain.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/commit/592eff118cb5056886b73e6698f8941c7a16f2e0.patch"; + hash = "sha256-aR/Lnzvq4RuRLI75mMd4xTGMAcijm1adSAGVFZZ++No="; + }) + (fetchpatch { + name = "0002-lomiri-gallery-app-C++ify-i18n.patch"; + url = "https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/commit/a7582abbe0acef4d49c77a4395bc22dbd1707ef3.patch"; + hash = "sha256-qzqTXqIYX+enoOwwV9d9fxe7tVYLuh1WkL8Ij/Qx0H0="; }) ]; postPatch = '' - # 0003-lomiri-gallery-app-Fix-icons.patch cannot be fully applied via patches due to binary diffs - # Remove when https://gitlab.com/ubports/development/apps/lomiri-gallery-app/-/merge_requests/149 merged & in release - for size in 64x64 128x128 256x256; do - rm desktop/icons/hicolor/"$size"/apps/gallery-app.png - magick desktop/lomiri-gallery-app.svg -resize "$size" desktop/icons/hicolor/"$size"/apps/lomiri-gallery-app.png - done - # Make splash path in desktop file relative substituteInPlace desktop/lomiri-gallery-app.desktop.in.in \ --replace-fail 'X-Lomiri-Splash-Image=@SPLASH@' 'X-Lomiri-Splash-Image=lomiri-app-launch/splash/lomiri-gallery-app.svg' @@ -130,7 +81,7 @@ stdenv.mkDerivation (finalAttrs: { qtsvg # QML - content-hub + lomiri-content-hub lomiri-thumbnailer lomiri-ui-extras lomiri-ui-toolkit @@ -164,9 +115,6 @@ stdenv.mkDerivation (finalAttrs: { # Link splash to splash dir mkdir -p $out/share/lomiri-app-launch/splash ln -s $out/share/{lomiri-gallery-app/lomiri-gallery-app-splash.svg,lomiri-app-launch/splash/lomiri-gallery-app.svg} - - # Old name - mv $out/share/content-hub/peers/{,lomiri-}gallery-app ''; passthru = { diff --git a/pkgs/desktops/lomiri/applications/lomiri-system-settings/default.nix b/pkgs/desktops/lomiri/applications/lomiri-system-settings/default.nix index 115d1d01abfc..6085f4d1b5fb 100644 --- a/pkgs/desktops/lomiri/applications/lomiri-system-settings/default.nix +++ b/pkgs/desktops/lomiri/applications/lomiri-system-settings/default.nix @@ -9,7 +9,6 @@ biometryd, cmake, cmake-extras, - content-hub, dbus, deviceinfo, geonames, @@ -24,6 +23,7 @@ libqofono, libqtdbustest, libqtdbusmock, + lomiri-content-hub, lomiri-indicator-network, lomiri-schemas, lomiri-settings-components, @@ -122,8 +122,8 @@ stdenv.mkDerivation (finalAttrs: { propagatedBuildInputs = [ ayatana-indicator-datetime biometryd - content-hub libqofono + lomiri-content-hub lomiri-indicator-network lomiri-schemas lomiri-settings-components diff --git a/pkgs/desktops/lomiri/applications/lomiri-terminal-app/default.nix b/pkgs/desktops/lomiri/applications/lomiri-terminal-app/default.nix index 0b2b6f6e5798..a6bf2877ef58 100644 --- a/pkgs/desktops/lomiri/applications/lomiri-terminal-app/default.nix +++ b/pkgs/desktops/lomiri/applications/lomiri-terminal-app/default.nix @@ -1,7 +1,6 @@ { stdenv , lib , fetchFromGitLab -, fetchpatch , gitUpdater , nixosTests , cmake @@ -18,41 +17,15 @@ stdenv.mkDerivation (finalAttrs: { pname = "lomiri-terminal-app"; - version = "2.0.2"; + version = "2.0.3"; src = fetchFromGitLab { owner = "ubports"; repo = "development/apps/lomiri-terminal-app"; rev = "v${finalAttrs.version}"; - hash = "sha256-mXbPmVcl5dL78QUp+w3o4im5ohUQCPTKWLSVqlNO0yo="; + hash = "sha256-374ATxF+XhoALzYv6DEyj6IYgb82Ch4zcmqK0RXmlzI="; }; - patches = [ - # Stop usage of private qt5_use_modules function, seemingly unavailable in this package - # Remove when https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/merge_requests/103 merged & in release - (fetchpatch { - name = "0001-lomiri-terminal-app-Stop-using-qt5_use_modules.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/commit/db210c74e771a427066aebdc3a99cab6e782d326.patch"; - hash = "sha256-op4+/eo8rBRMcW6MZ0rOEFReM7JBCck1B+AsgAPyqAI="; - }) - - # Explicitly bind textdomain, don't rely on hacky workaround in LUITK - # Remove when https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/merge_requests/104 merged & in release - (fetchpatch { - name = "0002-lomiri-terminal-app-Call-i18n.bindtextdomain.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/commit/7f9d419e29043f0d0922d2ac1dce5673e2723a01.patch"; - hash = "sha256-HfIvGVbIdTasoHAfHysnzFLufQQ4lskym5HTekH+mjk="; - }) - - # Add more & correct existing usage of GNUInstallDirs variables - # Remove when https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/merge_requests/105 merged & in release - (fetchpatch { - name = "0003-lomiri-terminal-app-GNUInstallDirs-usage.patch"; - url = "https://gitlab.com/ubports/development/apps/lomiri-terminal-app/-/commit/fcde1f05bb442c74b1dff95917fd7594f26e97a7.patch"; - hash = "sha256-umxCMGNjyz0TVmwH0Gl0MpgjLQtkW9cHkUfpNJcoasE="; - }) - ]; - postPatch = '' substituteInPlace CMakeLists.txt \ --replace "\''${CMAKE_INSTALL_LIBDIR}/qt5/qml" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}" diff --git a/pkgs/desktops/lomiri/applications/morph-browser/default.nix b/pkgs/desktops/lomiri/applications/morph-browser/default.nix index 12c71a4f90b8..ff636197d738 100644 --- a/pkgs/desktops/lomiri/applications/morph-browser/default.nix +++ b/pkgs/desktops/lomiri/applications/morph-browser/default.nix @@ -5,10 +5,10 @@ , gitUpdater , nixosTests , cmake -, content-hub , gettext , libapparmor , lomiri-action-api +, lomiri-content-hub , lomiri-ui-extras , lomiri-ui-toolkit , pkg-config @@ -27,23 +27,16 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "morph-browser"; - version = "1.1.0"; + version = "1.1.1"; src = fetchFromGitLab { owner = "ubports"; repo = "development/core/morph-browser"; rev = finalAttrs.version; - hash = "sha256-C5iXv8VS8Mm1ryxK7Vi5tVmiM01OSIFiTyH0vP9B/xA="; + hash = "sha256-VxSADFTlaxQUDc81TzGkx54mjAUgY2L+suQC9zYGKo0="; }; patches = [ - # Remove when https://gitlab.com/ubports/development/core/morph-browser/-/merge_requests/575 merged & in release - (fetchpatch { - name = "0001-morph-browser-tst_SessionUtilsTests-Set-permissions-on-temporary-xdg-runtime-directory.patch"; - url = "https://gitlab.com/ubports/development/core/morph-browser/-/commit/e90206105b8b287fbd6e45ac37ca1cd259981928.patch"; - hash = "sha256-5htFn+OGVVBn3mJQaZcF5yt0mT+2QRlKyKFesEhklfA="; - }) - # Remove when https://gitlab.com/ubports/development/core/morph-browser/-/merge_requests/576 merged & in release (fetchpatch { name = "0002-morph-browser-Call-i18n-bindtextdomain-with-buildtime-determined-locale-path.patch"; @@ -84,8 +77,8 @@ stdenv.mkDerivation (finalAttrs: { qtwebengine # QML - content-hub lomiri-action-api + lomiri-content-hub lomiri-ui-extras lomiri-ui-toolkit qqc2-suru-style @@ -132,7 +125,8 @@ stdenv.mkDerivation (finalAttrs: { standalone = nixosTests.morph-browser; # Lomiri-specific issues with the desktop file may break the entire session, make sure it still works - lomiri = nixosTests.lomiri; + lomiri-basics = nixosTests.lomiri.desktop-basics; + lomiri-appinteractions = nixosTests.lomiri.desktop-appinteractions; }; }; diff --git a/pkgs/desktops/lomiri/applications/teleports/default.nix b/pkgs/desktops/lomiri/applications/teleports/default.nix index f5fceb5bd40a..8a9d318f4b2c 100644 --- a/pkgs/desktops/lomiri/applications/teleports/default.nix +++ b/pkgs/desktops/lomiri/applications/teleports/default.nix @@ -7,8 +7,8 @@ gitUpdater, nixosTests, cmake, - content-hub, intltool, + lomiri-content-hub, lomiri-indicator-network, lomiri-push-qml, lomiri-thumbnailer, @@ -84,7 +84,7 @@ stdenv.mkDerivation (finalAttrs: { ]; buildInputs = [ - content-hub + lomiri-content-hub lomiri-indicator-network lomiri-push-qml lomiri-thumbnailer @@ -102,10 +102,10 @@ stdenv.mkDerivation (finalAttrs: { ]; postInstall = '' - mkdir -p $out/share/{applications,content-hub/peers,icons/hicolor/scalable/apps,lomiri-app-launch/splash,lomiri-url-dispatcher/urls} + mkdir -p $out/share/{applications,lomiri-content-hub/peers,icons/hicolor/scalable/apps,lomiri-app-launch/splash,lomiri-url-dispatcher/urls} ln -s $out/share/teleports/teleports.desktop $out/share/applications/teleports.desktop - ln -s $out/share/teleports/teleports.content-hub $out/share/content-hub/peers/teleports + ln -s $out/share/teleports/teleports.content-hub $out/share/lomiri-content-hub/peers/teleports ln -s $out/share/teleports/assets/icon.svg $out/share/icons/hicolor/scalable/apps/teleports.svg ln -s $out/share/teleports/assets/splash.svg $out/share/lomiri-app-launch/splash/teleports.svg ln -s $out/share/teleports/teleports.url-dispatcher $out/share/lomiri-url-dispatcher/urls/teleports.url-dispatcher diff --git a/pkgs/desktops/lomiri/default.nix b/pkgs/desktops/lomiri/default.nix index 8e5dbd2ff9ef..c4794109b862 100644 --- a/pkgs/desktops/lomiri/default.nix +++ b/pkgs/desktops/lomiri/default.nix @@ -56,7 +56,7 @@ let #### Services biometryd = callPackage ./services/biometryd { }; - content-hub = callPackage ./services/content-hub { }; + lomiri-content-hub = callPackage ./services/lomiri-content-hub { }; hfd-service = callPackage ./services/hfd-service { }; history-service = callPackage ./services/history-service { }; lomiri-download-manager = callPackage ./services/lomiri-download-manager { }; @@ -70,5 +70,6 @@ let in lib.makeScope libsForQt5.newScope packages // lib.optionalAttrs config.allowAliases { + content-hub = lib.warn "`content-hub` was renamed to `lomiri-content-hub`." pkgs.lomiri.lomiri-content-hub; # Added on 2024-09-11 lomiri-system-settings-security-privacy = lib.warn "`lomiri-system-settings-security-privacy` upstream was merged into `lomiri-system-settings`. Please use `pkgs.lomiri.lomiri-system-settings-unwrapped` if you need to directly access the plugins that belonged to this project." pkgs.lomiri.lomiri-system-settings-unwrapped; # Added on 2024-08-08 } diff --git a/pkgs/desktops/lomiri/development/u1db-qt/default.nix b/pkgs/desktops/lomiri/development/u1db-qt/default.nix index 8eeffa84ce35..9bba0d914c7a 100644 --- a/pkgs/desktops/lomiri/development/u1db-qt/default.nix +++ b/pkgs/desktops/lomiri/development/u1db-qt/default.nix @@ -1,25 +1,26 @@ -{ stdenv -, lib -, fetchFromGitLab -, fetchpatch -, gitUpdater -, testers -, cmake -, dbus-test-runner -, pkg-config -, qtbase -, qtdeclarative +{ + stdenv, + lib, + fetchFromGitLab, + fetchpatch, + gitUpdater, + testers, + cmake, + dbus-test-runner, + pkg-config, + qtbase, + qtdeclarative, }: stdenv.mkDerivation (finalAttrs: { pname = "u1db-qt"; - version = "0.1.7"; + version = "0.1.8"; src = fetchFromGitLab { owner = "ubports"; repo = "development/core/u1db-qt"; rev = finalAttrs.version; - hash = "sha256-qlWkxpiVEUbpsKhzR0s7SKaEFCLM2RH+v9XmJ3qLoGY="; + hash = "sha256-KmAEgnWHY0cDKJqRhZpY0fzVjNlEU67e559XEbAPpJI="; }; outputs = [ @@ -29,12 +30,11 @@ stdenv.mkDerivation (finalAttrs: { ]; patches = [ - # Fixes some issues with the pkg-config file - # Remove when https://gitlab.com/ubports/development/core/u1db-qt/-/merge_requests/7 merged & in release + # Remove when https://gitlab.com/ubports/development/core/u1db-qt/-/merge_requests/8 merged & in release (fetchpatch { - name = "0001-u1db-qt-Fix-pkg-config-files-includedir-variable.patch"; - url = "https://gitlab.com/ubports/development/core/u1db-qt/-/commit/ddafbfadfad6dfc508a866835354a4701dda1fe1.patch"; - hash = "sha256-entwjU9TiHuSuht7Cdl0k1v0cP7350a04/FXgTVhGmk="; + name = "0001-u1db-qt-Use-BUILD_TESTING.patch"; + url = "https://gitlab.com/ubports/development/core/u1db-qt/-/commit/df5d526df26c056d54bfa532a3a3fa025d655690.patch"; + hash = "sha256-CILMcvqXrTbEL/N2Tic4IsKLnTtmFJ2QbV3r4PsQ5t0="; }) ]; @@ -48,10 +48,6 @@ stdenv.mkDerivation (finalAttrs: { # For our automatic pkg-config output patcher to work, prefix must be used here substituteInPlace libu1db-qt.pc.in \ --replace-fail 'libdir=''${exec_prefix}/lib' 'libdir=''${prefix}/lib' - '' + lib.optionalString (!finalAttrs.finalPackage.doCheck) '' - # Other locations add dependencies to custom check target from tests - substituteInPlace CMakeLists.txt \ - --replace-fail 'add_subdirectory(tests)' 'add_custom_target(check COMMAND "echo check dummy")' ''; strictDeps = true; @@ -67,9 +63,7 @@ stdenv.mkDerivation (finalAttrs: { qtdeclarative ]; - nativeCheckInputs = [ - dbus-test-runner - ]; + nativeCheckInputs = [ dbus-test-runner ]; cmakeFlags = [ # Needs qdoc, see https://github.com/NixOS/nixpkgs/pull/245379 @@ -104,14 +98,12 @@ stdenv.mkDerivation (finalAttrs: { updateScript = gitUpdater { }; }; - meta = with lib; { + meta = { description = "Qt5 binding and QtQuick2 plugin for U1DB"; homepage = "https://gitlab.com/ubports/development/core/u1db-qt"; - license = licenses.lgpl3Only; - maintainers = teams.lomiri.members; - platforms = platforms.linux; - pkgConfigModules = [ - "libu1db-qt5" - ]; + license = lib.licenses.lgpl3Only; + maintainers = lib.teams.lomiri.members; + platforms = lib.platforms.linux; + pkgConfigModules = [ "libu1db-qt5" ]; }; }) diff --git a/pkgs/desktops/lomiri/qml/qqc2-suru-style/default.nix b/pkgs/desktops/lomiri/qml/qqc2-suru-style/default.nix index 5717ae35f113..967485fcf403 100644 --- a/pkgs/desktops/lomiri/qml/qqc2-suru-style/default.nix +++ b/pkgs/desktops/lomiri/qml/qqc2-suru-style/default.nix @@ -1,29 +1,28 @@ -{ stdenv -, lib -, fetchFromGitLab -, gitUpdater -, qmake -, qtdeclarative -, qtquickcontrols2 +{ + stdenv, + lib, + fetchFromGitLab, + gitUpdater, + qmake, + qtdeclarative, + qtquickcontrols2, }: stdenv.mkDerivation (finalAttrs: { pname = "qqc2-suru-style"; - version = "0.20230206"; + version = "0.20230630"; src = fetchFromGitLab { owner = "ubports"; repo = "development/core/qqc2-suru-style"; - rev = finalAttrs.version; - hash = "sha256-ZLPuXnhlR1IDhGnprcdWHLnOeS6ZzVkFhQML0iKMjO8="; + rev = "refs/tags/${finalAttrs.version}"; + hash = "sha256-kAgHsNWwUWxHg26bTMmlq8m9DR4+ob4pl/oUX7516hM="; }; # QMake can't find Qt modules from buildInputs strictDeps = false; - nativeBuildInputs = [ - qmake - ]; + nativeBuildInputs = [ qmake ]; buildInputs = [ qtdeclarative @@ -34,12 +33,16 @@ stdenv.mkDerivation (finalAttrs: { passthru.updateScript = gitUpdater { }; - meta = with lib; { + meta = { description = "Suru Style for QtQuick Controls 2"; homepage = "https://gitlab.com/ubports/development/core/qqc2-suru-style"; changelog = "https://gitlab.com/ubports/development/core/qqc2-suru-style/-/blob/${finalAttrs.version}/ChangeLog"; - license = with licenses; [ gpl2Plus lgpl3Only cc-by-sa-30 ]; - maintainers = teams.lomiri.members; - platforms = platforms.unix; + license = with lib.licenses; [ + gpl2Plus + lgpl3Only + cc-by-sa-30 + ]; + maintainers = lib.teams.lomiri.members; + platforms = lib.platforms.unix; }; }) diff --git a/pkgs/desktops/lomiri/services/content-hub/default.nix b/pkgs/desktops/lomiri/services/lomiri-content-hub/default.nix similarity index 56% rename from pkgs/desktops/lomiri/services/content-hub/default.nix rename to pkgs/desktops/lomiri/services/lomiri-content-hub/default.nix index a1fd99757844..dd2f6d3ab23e 100644 --- a/pkgs/desktops/lomiri/services/content-hub/default.nix +++ b/pkgs/desktops/lomiri/services/lomiri-content-hub/default.nix @@ -1,8 +1,6 @@ { stdenv , lib , fetchFromGitLab -, fetchpatch -, fetchpatch2 , gitUpdater , testers , cmake @@ -30,14 +28,14 @@ }: stdenv.mkDerivation (finalAttrs: { - pname = "content-hub"; - version = "1.1.1"; + pname = "lomiri-content-hub"; + version = "2.0.0"; src = fetchFromGitLab { owner = "ubports"; - repo = "development/core/content-hub"; + repo = "development/core/lomiri-content-hub"; rev = finalAttrs.version; - hash = "sha256-sQeyJV+Wc6PHKGIefl/dfU06XqTdICsn+Xamjx3puiI="; + hash = "sha256-eA5oCoAZB7fWyWm0Sy6wXh0EW+h76bdfJ2dotr7gUC0="; }; outputs = [ @@ -46,44 +44,6 @@ stdenv.mkDerivation (finalAttrs: { "examples" ]; - patches = [ - # Remove when version > 1.1.1 - (fetchpatch { - name = "0001-content-hub-Migrate-to-GetConnectionCredentials.patch"; - url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/9ec9df32f77383eec7994d8e3e6961531bc8464d.patch"; - hash = "sha256-14dZosMTMa1FDGEMuil0r1Hz6vn+L9XC83NMAqC7Ol8="; - }) - - # Remove when https://gitlab.com/ubports/development/core/content-hub/-/merge_requests/34 merged & in release - (fetchpatch { - name = "0002-content-hub-import-Lomiri-Content-CMakeLists-Drop-qt-argument-to-qmlplugindump.patch"; - url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/63a4baf1469de31c4fd50c69ed85d061f5e8e80a.patch"; - hash = "sha256-T+6T9lXne6AhDFv9d7L8JNwdl8f0wjDmvSoNVPkHza4="; - }) - - # Remove when version > 1.1.1 - # fetchpatch2 due to renames, https://github.com/NixOS/nixpkgs/issues/32084 - (fetchpatch2 { - name = "0003-content-hub-Add-more-better-GNUInstallDirs-variables-usage.patch"; - url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/3c5ca4a8ec125e003aca78c14521b70140856c25.patch"; - hash = "sha256-kYN0eLwMyM/9yK+zboyEsoPKZMZ4SCXodVYsvkQr2F8="; - }) - - # Remove when version > 1.1.1 - (fetchpatch { - name = "0004-content-hub-Fix-generation-of-transfer_files-and-moc_test_harness.patch"; - url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/68899c75e77e1f34176b8a550d52794413e5070f.patch"; - hash = "sha256-HAxePnzY/cL2c+o+Aw2N1pdr8rsbHGmRsH2EQkrBcHg="; - }) - - # Remove when https://gitlab.com/ubports/development/core/lomiri-content-hub/-/merge_requests/40 merged & in release - (fetchpatch { - name = "0006-content-hub-Fix-AppArmor-less-transfer.patch"; - url = "https://gitlab.com/ubports/development/core/content-hub/-/commit/b58e5c8babf00ad7c402555c96254ce0165adb9e.patch"; - hash = "sha256-a7x/0NiUBmmFlq96jkHyLCL0f5NIFh5JR/H+FQ/2GqI="; - }) - ]; - postPatch = '' substituteInPlace import/*/Content/CMakeLists.txt \ --replace-fail "\''${CMAKE_INSTALL_LIBDIR}/qt5/qml" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}" @@ -163,7 +123,7 @@ stdenv.mkDerivation (finalAttrs: { moveToOutput share/applications/$exampleExe.desktop $examples done moveToOutput share/icons $examples - moveToOutput share/content-hub/peers $examples + moveToOutput share/lomiri-content-hub/peers $examples ''; postFixup = '' @@ -178,20 +138,20 @@ stdenv.mkDerivation (finalAttrs: { }; meta = { - description = "Content sharing/picking service"; + description = "Content sharing/picking service for the Lomiri desktop"; longDescription = '' - content-hub is a mediation service to let applications share content between them, + lomiri-content-hub is a mediation service to let applications share content between them, even if they are not running at the same time. ''; - homepage = "https://gitlab.com/ubports/development/core/content-hub"; - changelog = "https://gitlab.com/ubports/development/core/content-hub/-/blob/${finalAttrs.version}/ChangeLog"; + homepage = "https://gitlab.com/ubports/development/core/lomiri-content-hub"; + changelog = "https://gitlab.com/ubports/development/core/lomiri-content-hub/-/blob/${finalAttrs.version}/ChangeLog"; license = with lib.licenses; [ gpl3Only lgpl3Only ]; - mainProgram = "content-hub-service"; + mainProgram = "lomiri-content-hub-service"; maintainers = lib.teams.lomiri.members; platforms = lib.platforms.linux; pkgConfigModules = [ - "libcontent-hub" - "libcontent-hub-glib" + "liblomiri-content-hub" + "liblomiri-content-hub-glib" ]; }; }) diff --git a/pkgs/desktops/lomiri/services/mediascanner2/default.nix b/pkgs/desktops/lomiri/services/mediascanner2/default.nix index 28dc57c3d31b..3a1fbe01221a 100644 --- a/pkgs/desktops/lomiri/services/mediascanner2/default.nix +++ b/pkgs/desktops/lomiri/services/mediascanner2/default.nix @@ -1,39 +1,40 @@ -{ stdenv -, lib -, fetchFromGitLab -, gitUpdater -, testers -, boost -, cmake -, cmake-extras -, dbus -, dbus-cpp -, gdk-pixbuf -, glib -, gst_all_1 -, gtest -, libapparmor -, libexif -, pkg-config -, properties-cpp -, qtbase -, qtdeclarative -, shared-mime-info -, sqlite -, taglib -, udisks -, wrapQtAppsHook +{ + stdenv, + lib, + fetchFromGitLab, + gitUpdater, + testers, + boost, + cmake, + cmake-extras, + dbus, + dbus-cpp, + gdk-pixbuf, + glib, + gst_all_1, + gtest, + libapparmor, + libexif, + pkg-config, + properties-cpp, + qtbase, + qtdeclarative, + shared-mime-info, + sqlite, + taglib, + udisks, + wrapQtAppsHook, }: stdenv.mkDerivation (finalAttrs: { pname = "mediascanner2"; - version = "0.116"; + version = "0.117"; src = fetchFromGitLab { owner = "ubports"; repo = "development/core/mediascanner2"; rev = finalAttrs.version; - hash = "sha256-aRNT3DSPxz/vf6gqipf5Qc5zyDGFMHWONevAslwOrCY="; + hash = "sha256-e1vDPnIIfevXj9ODEEKJ2y4TiU0H+08aTf2vU+emdQk="; }; outputs = [ @@ -43,11 +44,7 @@ stdenv.mkDerivation (finalAttrs: { postPatch = '' substituteInPlace src/qml/MediaScanner.*/CMakeLists.txt \ - --replace "\''${CMAKE_INSTALL_LIBDIR}/qt5/qml" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}" - - # Lomiri desktop doesn't identify itself under Canonical's name anymore - substituteInPlace src/daemon/scannerdaemon.cc \ - --replace 'Unity8' 'Lomiri' + --replace-fail "\''${CMAKE_INSTALL_LIBDIR}/qt5/qml" "\''${CMAKE_INSTALL_PREFIX}/${qtbase.qtQmlPrefix}" ''; strictDeps = true; @@ -59,35 +56,33 @@ stdenv.mkDerivation (finalAttrs: { wrapQtAppsHook ]; - buildInputs = [ - boost - cmake-extras - dbus - dbus-cpp - gdk-pixbuf - glib - libapparmor - libexif - properties-cpp - qtbase - qtdeclarative - shared-mime-info - sqlite - taglib - udisks - ] ++ (with gst_all_1; [ - gstreamer - gst-plugins-base - gst-plugins-good - ]); + buildInputs = + [ + boost + cmake-extras + dbus + dbus-cpp + gdk-pixbuf + glib + libapparmor + libexif + properties-cpp + qtbase + qtdeclarative + shared-mime-info + sqlite + taglib + udisks + ] + ++ (with gst_all_1; [ + gstreamer + gst-plugins-base + gst-plugins-good + ]); - checkInputs = [ - gtest - ]; + checkInputs = [ gtest ]; - cmakeFlags = [ - "-DENABLE_TESTS=${lib.boolToString finalAttrs.finalPackage.doCheck}" - ]; + cmakeFlags = [ (lib.cmakeBool "ENABLE_TESTS" finalAttrs.finalPackage.doCheck) ]; doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; @@ -108,15 +103,13 @@ stdenv.mkDerivation (finalAttrs: { updateScript = gitUpdater { }; }; - meta = with lib; { + meta = { description = "Media scanner service & access library"; homepage = "https://gitlab.com/ubports/development/core/mediascanner2"; - license = licenses.gpl3Only; - maintainers = teams.lomiri.members; + license = lib.licenses.gpl3Only; + maintainers = lib.teams.lomiri.members; mainProgram = "mediascanner-service-2.0"; - platforms = platforms.linux; - pkgConfigModules = [ - "mediascanner-2.0" - ]; + platforms = lib.platforms.linux; + pkgConfigModules = [ "mediascanner-2.0" ]; }; }) diff --git a/pkgs/development/compilers/chicken/5/overrides.nix b/pkgs/development/compilers/chicken/5/overrides.nix index 0f9c89140a9a..ec465aa8d783 100644 --- a/pkgs/development/compilers/chicken/5/overrides.nix +++ b/pkgs/development/compilers/chicken/5/overrides.nix @@ -139,7 +139,7 @@ in addToNativeBuildInputs pkgs.taglib old ); uuid-lib = addToBuildInputs pkgs.libuuid; - webview = addToBuildInputsWithPkgConfig pkgs.webkitgtk; + webview = addToBuildInputsWithPkgConfig pkgs.webkitgtk_4_0; ws-client = addToBuildInputs pkgs.zlib; xlib = addToPropagatedBuildInputs pkgs.xorg.libX11; yaml = addToBuildInputs pkgs.libyaml; diff --git a/pkgs/development/compilers/flutter/artifacts/fetch-artifacts.nix b/pkgs/development/compilers/flutter/artifacts/fetch-artifacts.nix index 0e1ce6e678cb..f7412a37ec10 100644 --- a/pkgs/development/compilers/flutter/artifacts/fetch-artifacts.nix +++ b/pkgs/development/compilers/flutter/artifacts/fetch-artifacts.nix @@ -59,15 +59,22 @@ runCommand "flutter-artifacts-${flutterPlatform}-${systemPlatform}" passthru = { inherit flutterPlatform; }; -} '' +} ('' export FLUTTER_ROOT="$NIX_BUILD_TOP" lndir -silent '${flutter'}' "$FLUTTER_ROOT" rm -rf "$FLUTTER_ROOT/bin/cache" mkdir "$FLUTTER_ROOT/bin/cache" +'' + lib.optionalString (lib.versionAtLeast flutter'.version "3.26") '' + mkdir "$FLUTTER_ROOT/bin/cache/dart-sdk" + lndir -silent '${flutter'}/bin/cache/dart-sdk' "$FLUTTER_ROOT/bin/cache/dart-sdk" +'' + '' HOME="$(mktemp -d)" flutter precache -v '--${flutterPlatform}' ${builtins.concatStringsSep " " (map (p: "'--no-${p}'") (lib.remove flutterPlatform flutterPlatforms))} rm -rf "$FLUTTER_ROOT/bin/cache/lockfile" +'' + lib.optionalString (lib.versionAtLeast flutter'.version "3.26") '' + rm -rf "$FLUTTER_ROOT/bin/cache/dart-sdk" +'' + '' find "$FLUTTER_ROOT" -type l -lname '${flutter'}/*' -delete cp -r bin/cache "$out" -'' +'') diff --git a/pkgs/development/compilers/flutter/artifacts/prepare-artifacts.nix b/pkgs/development/compilers/flutter/artifacts/prepare-artifacts.nix index def75e280da7..23bd8485ccff 100644 --- a/pkgs/development/compilers/flutter/artifacts/prepare-artifacts.nix +++ b/pkgs/development/compilers/flutter/artifacts/prepare-artifacts.nix @@ -16,6 +16,7 @@ mkdir -p "$out/bin" cp -r . "$out/bin/cache" + rm -f "$out/bin/cache/flutter.version.json" runHook postInstall ''; diff --git a/pkgs/development/compilers/flutter/versions/3_26/data.json b/pkgs/development/compilers/flutter/versions/3_26/data.json new file mode 100644 index 000000000000..3d1b530a66ad --- /dev/null +++ b/pkgs/development/compilers/flutter/versions/3_26/data.json @@ -0,0 +1,1052 @@ +{ + "version": "3.26.0-0.1.pre", + "engineVersion": "059e4e6d8ff6de39c29441c53e949bfb0bf17972", + "engineSwiftShaderHash": "sha256-mRLCvhNkmHz7Rv6GzXkY7OB1opBSq+ATWZ466qZdgto=", + "engineSwiftShaderRev": "2fa7e9b99ae4e70ea5ae2cc9c8d3afb43391384f", + "channel": "beta", + "engineHashes": { + "x86_64-linux": { + "aarch64-linux": "sha256-tOrgkuPsQedWjCObrwZ9ICY15YWi+aVpxOQPE6vdeGc=", + "x86_64-linux": "sha256-tOrgkuPsQedWjCObrwZ9ICY15YWi+aVpxOQPE6vdeGc=" + } + }, + "dartVersion": "3.6.0-216.1.beta", + "dartHash": { + "x86_64-linux": "sha256-Vvdx4Bi7a/ySrxAv3UejlmmbNyKzdDr9RCS9tVGscDQ=", + "aarch64-linux": "sha256-SHqk1bm/5+ixOA5RHuToHQDN/NrNKZIrkkaBh9Cvl/I=", + "x86_64-darwin": "sha256-dbw0+OtjYkdRCgLDP+oNcOUgR5C8gC12NdftNAk7x0Q=", + "aarch64-darwin": "sha256-XOpBwyrMqIKutXgLEjGuta/3yhK+DpoSChNVXc9MMYA=" + }, + "flutterHash": "sha256-4YXm/MbhQsifJYpeUjmP8h6sm7pWrjBSpbCTV9p659o=", + "artifactHashes": { + "android": { + "aarch64-darwin": "sha256-CmjEq9T5gNgNKp8mik6HwVAsAfdWXBK2nHwL28L08xk=", + "aarch64-linux": "sha256-sucpfdtDzNMmCpWOZGVp48uNSrj221fOROI8huRs8Xc=", + "x86_64-darwin": "sha256-CmjEq9T5gNgNKp8mik6HwVAsAfdWXBK2nHwL28L08xk=", + "x86_64-linux": "sha256-sucpfdtDzNMmCpWOZGVp48uNSrj221fOROI8huRs8Xc=" + }, + "fuchsia": { + "aarch64-darwin": "sha256-eu0BERdz53CkSexbpu3KA7O6Q4g0s9SGD3t1Snsk3Fk=", + "aarch64-linux": "sha256-eu0BERdz53CkSexbpu3KA7O6Q4g0s9SGD3t1Snsk3Fk=", + "x86_64-darwin": "sha256-eu0BERdz53CkSexbpu3KA7O6Q4g0s9SGD3t1Snsk3Fk=", + "x86_64-linux": "sha256-eu0BERdz53CkSexbpu3KA7O6Q4g0s9SGD3t1Snsk3Fk=" + }, + "ios": { + "aarch64-darwin": "sha256-kRgyKtnMs7xefe+XmCoYbO7sa7Dz1o0ltcRdiDvSeik=", + "aarch64-linux": "sha256-kRgyKtnMs7xefe+XmCoYbO7sa7Dz1o0ltcRdiDvSeik=", + "x86_64-darwin": "sha256-kRgyKtnMs7xefe+XmCoYbO7sa7Dz1o0ltcRdiDvSeik=", + "x86_64-linux": "sha256-kRgyKtnMs7xefe+XmCoYbO7sa7Dz1o0ltcRdiDvSeik=" + }, + "linux": { + "aarch64-darwin": "sha256-tnvQp4Vdthqwgt1bFRpZVJOuTX752yJE91yJNpwSOp4=", + "aarch64-linux": "sha256-tnvQp4Vdthqwgt1bFRpZVJOuTX752yJE91yJNpwSOp4=", + "x86_64-darwin": "sha256-vIfHgLif151Ymtu/aFtwHZTk28H2feHd9cOedUmSWXY=", + "x86_64-linux": "sha256-vIfHgLif151Ymtu/aFtwHZTk28H2feHd9cOedUmSWXY=" + }, + "macos": { + "aarch64-darwin": "sha256-/4R3Wlcs6ksMkTTZJ/YzEgWWCQJBKlnWr+PNCtcL3oc=", + "aarch64-linux": "sha256-/4R3Wlcs6ksMkTTZJ/YzEgWWCQJBKlnWr+PNCtcL3oc=", + "x86_64-darwin": "sha256-/4R3Wlcs6ksMkTTZJ/YzEgWWCQJBKlnWr+PNCtcL3oc=", + "x86_64-linux": "sha256-/4R3Wlcs6ksMkTTZJ/YzEgWWCQJBKlnWr+PNCtcL3oc=" + }, + "universal": { + "aarch64-darwin": "sha256-M2Fuqfgq79+FilJ5vU0Iarn0cpV3+4AxuxFEc3fwm+4=", + "aarch64-linux": "sha256-NqlNboNjLFAeuLHu6lNnMnrEb902nwIV1b/DNfrr3h8=", + "x86_64-darwin": "sha256-tlGwnwAov1eBe54mD9Q6D86qIEBkHBODJs5SVJyP5M0=", + "x86_64-linux": "sha256-0lxLRRQq+bRDPXyxEtZVGtzzqhrcsTYx01jeFX3ejLc=" + }, + "web": { + "aarch64-darwin": "sha256-fVOuJCTciHWv+HRFtSgn8zrexspBe+MUnc/cZlOeoqM=", + "aarch64-linux": "sha256-fVOuJCTciHWv+HRFtSgn8zrexspBe+MUnc/cZlOeoqM=", + "x86_64-darwin": "sha256-fVOuJCTciHWv+HRFtSgn8zrexspBe+MUnc/cZlOeoqM=", + "x86_64-linux": "sha256-fVOuJCTciHWv+HRFtSgn8zrexspBe+MUnc/cZlOeoqM=" + }, + "windows": { + "x86_64-darwin": "sha256-mwbk0VwxsbnMjy8trtjgZZ96jF3QuQJDcc0VSs6mQxI=", + "x86_64-linux": "sha256-mwbk0VwxsbnMjy8trtjgZZ96jF3QuQJDcc0VSs6mQxI=" + } + }, + "pubspecLock": { + "packages": { + "_fe_analyzer_shared": { + "dependency": "direct main", + "description": { + "name": "_fe_analyzer_shared", + "sha256": "45cfa8471b89fb6643fe9bf51bd7931a76b8f5ec2d65de4fb176dba8d4f22c77", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "73.0.0" + }, + "_macros": { + "dependency": "transitive", + "description": "dart", + "source": "sdk", + "version": "0.3.2" + }, + "analyzer": { + "dependency": "direct main", + "description": { + "name": "analyzer", + "sha256": "4959fec185fe70cce007c57e9ab6983101dbe593d2bf8bbfb4453aaec0cf470a", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.8.0" + }, + "archive": { + "dependency": "direct main", + "description": { + "name": "archive", + "sha256": "cb6a278ef2dbb298455e1a713bda08524a175630ec643a242c399c932a0a1f7d", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.6.1" + }, + "args": { + "dependency": "direct main", + "description": { + "name": "args", + "sha256": "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.5.0" + }, + "async": { + "dependency": "direct main", + "description": { + "name": "async", + "sha256": "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.11.0" + }, + "boolean_selector": { + "dependency": "direct main", + "description": { + "name": "boolean_selector", + "sha256": "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.1" + }, + "browser_launcher": { + "dependency": "direct main", + "description": { + "name": "browser_launcher", + "sha256": "54a2da4d152c34760b87cbd4a9fe8a563379487e57bfcd1b387be394dfa91734", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.2" + }, + "built_collection": { + "dependency": "direct main", + "description": { + "name": "built_collection", + "sha256": "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "5.1.1" + }, + "built_value": { + "dependency": "direct main", + "description": { + "name": "built_value", + "sha256": "c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "8.9.2" + }, + "checked_yaml": { + "dependency": "direct dev", + "description": { + "name": "checked_yaml", + "sha256": "feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.0.3" + }, + "cli_config": { + "dependency": "direct main", + "description": { + "name": "cli_config", + "sha256": "ac20a183a07002b700f0c25e61b7ee46b23c309d76ab7b7640a028f18e4d99ec", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.2.0" + }, + "clock": { + "dependency": "direct main", + "description": { + "name": "clock", + "sha256": "cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.1" + }, + "collection": { + "dependency": "direct dev", + "description": { + "name": "collection", + "sha256": "a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.19.0" + }, + "completion": { + "dependency": "direct main", + "description": { + "name": "completion", + "sha256": "f11b7a628e6c42b9edc9b0bc3aa490e2d930397546d2f794e8e1325909d11c60", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.0.1" + }, + "convert": { + "dependency": "direct main", + "description": { + "name": "convert", + "sha256": "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.1.1" + }, + "coverage": { + "dependency": "direct main", + "description": { + "name": "coverage", + "sha256": "7b594a150942e0d3be99cd45a1d0b5caff27ba5a27f292ed8e8d904ba3f167b5", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.9.1" + }, + "crypto": { + "dependency": "direct main", + "description": { + "name": "crypto", + "sha256": "ec30d999af904f33454ba22ed9a86162b35e52b44ac4807d1d93c288041d7d27", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.0.5" + }, + "csslib": { + "dependency": "direct main", + "description": { + "name": "csslib", + "sha256": "706b5707578e0c1b4b7550f64078f0a0f19dec3f50a178ffae7006b0a9ca58fb", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.0.0" + }, + "dap": { + "dependency": "direct main", + "description": { + "name": "dap", + "sha256": "c0e53b52c9529d901329045afc4c5acb04304a28acde4b54ab0a08a93da546aa", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.3.0" + }, + "dds": { + "dependency": "direct main", + "description": { + "name": "dds", + "sha256": "263f8831bfe57136fd4c07cf87df9b3f65457438b8b4d237e1b1d603c6d1cdbd", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.2.6" + }, + "dds_service_extensions": { + "dependency": "direct main", + "description": { + "name": "dds_service_extensions", + "sha256": "390ae1d0128bb43ffe11f8e3c6cd3a481c1920492d1026883d379cee50bdf1a2", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.0.0" + }, + "devtools_shared": { + "dependency": "direct main", + "description": { + "name": "devtools_shared", + "sha256": "72369878105eccd563547afbad97407a2431b96bd4c04a1d6da75cb068437f50", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "10.0.2" + }, + "dtd": { + "dependency": "direct main", + "description": { + "name": "dtd", + "sha256": "6e4e508c0d03e12e2c96f21faa0e5acc191f9431ecd02adb8daee64dbfae6b86", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.3.0" + }, + "dwds": { + "dependency": "direct main", + "description": { + "name": "dwds", + "sha256": "d0cf9d18511df6b397c40527f3fd8ddb47b7efcc501e703dd94f13cabaf82ffc", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "24.1.0" + }, + "extension_discovery": { + "dependency": "direct main", + "description": { + "name": "extension_discovery", + "sha256": "20735622d0763865f9d94c3ecdce4441174530870760253e9d364fb4f3da8688", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.0.0" + }, + "fake_async": { + "dependency": "direct main", + "description": { + "name": "fake_async", + "sha256": "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.3.1" + }, + "ffi": { + "dependency": "direct main", + "description": { + "name": "ffi", + "sha256": "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.3" + }, + "file": { + "dependency": "direct main", + "description": { + "name": "file", + "sha256": "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "7.0.0" + }, + "file_testing": { + "dependency": "direct dev", + "description": { + "name": "file_testing", + "sha256": "0aaadb4025bd350403f4308ad6c4cea953278d9407814b8342558e4946840fb5", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.0.0" + }, + "fixnum": { + "dependency": "direct main", + "description": { + "name": "fixnum", + "sha256": "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.0" + }, + "flutter_template_images": { + "dependency": "direct main", + "description": { + "name": "flutter_template_images", + "sha256": "fd3e55af73c577b9e3f88d4080d3e366cb5c8ef3fbd50b94dfeca56bb0235df6", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.2.0" + }, + "frontend_server_client": { + "dependency": "direct main", + "description": { + "name": "frontend_server_client", + "sha256": "f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.0.0" + }, + "glob": { + "dependency": "direct main", + "description": { + "name": "glob", + "sha256": "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.2" + }, + "graphs": { + "dependency": "direct main", + "description": { + "name": "graphs", + "sha256": "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.3.2" + }, + "html": { + "dependency": "direct main", + "description": { + "name": "html", + "sha256": "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.15.4" + }, + "http": { + "dependency": "direct main", + "description": { + "name": "http", + "sha256": "b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.2.2" + }, + "http_multi_server": { + "dependency": "direct main", + "description": { + "name": "http_multi_server", + "sha256": "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.2.1" + }, + "http_parser": { + "dependency": "direct main", + "description": { + "name": "http_parser", + "sha256": "40f592dd352890c3b60fec1b68e786cefb9603e05ff303dbc4dda49b304ecdf4", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.1.0" + }, + "intl": { + "dependency": "direct main", + "description": { + "name": "intl", + "sha256": "d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.19.0" + }, + "io": { + "dependency": "direct main", + "description": { + "name": "io", + "sha256": "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.0.4" + }, + "js": { + "dependency": "direct main", + "description": { + "name": "js", + "sha256": "c1b2e9b5ea78c45e1a0788d29606ba27dc5f71f019f32ca5140f61ef071838cf", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.7.1" + }, + "json_annotation": { + "dependency": "direct dev", + "description": { + "name": "json_annotation", + "sha256": "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.9.0" + }, + "json_rpc_2": { + "dependency": "direct main", + "description": { + "name": "json_rpc_2", + "sha256": "5e469bffa23899edacb7b22787780068d650b106a21c76db3c49218ab7ca447e", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.0.2" + }, + "logging": { + "dependency": "direct main", + "description": { + "name": "logging", + "sha256": "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.2.0" + }, + "macros": { + "dependency": "transitive", + "description": { + "name": "macros", + "sha256": "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.1.2-main.4" + }, + "matcher": { + "dependency": "direct main", + "description": { + "name": "matcher", + "sha256": "d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.12.16+1" + }, + "meta": { + "dependency": "direct main", + "description": { + "name": "meta", + "sha256": "bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.15.0" + }, + "mime": { + "dependency": "direct main", + "description": { + "name": "mime", + "sha256": "801fd0b26f14a4a58ccb09d5892c3fbdeff209594300a542492cf13fba9d247a", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.0.6" + }, + "multicast_dns": { + "dependency": "direct main", + "description": { + "name": "multicast_dns", + "sha256": "982c4cc4cda5f98dd477bddfd623e8e4bd1014e7dbf9e7b05052e14a5b550b99", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.3.2+7" + }, + "mustache_template": { + "dependency": "direct main", + "description": { + "name": "mustache_template", + "sha256": "a46e26f91445bfb0b60519be280555b06792460b27b19e2b19ad5b9740df5d1c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.0.0" + }, + "native_assets_builder": { + "dependency": "direct main", + "description": { + "name": "native_assets_builder", + "sha256": "3368f3eda23d59e98c8eadeafe609feb3bf6c342e5885796d6eceadc3d4581f8", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.8.2" + }, + "native_assets_cli": { + "dependency": "direct main", + "description": { + "name": "native_assets_cli", + "sha256": "1ff032c0ca050391c4c5107485f1a26e0e95cee18d1fdb2b7bdbb990efd3c188", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.7.3" + }, + "native_stack_traces": { + "dependency": "direct main", + "description": { + "name": "native_stack_traces", + "sha256": "8ba566c10ea781491c203876b04b9bdcf19dfbe17b9e486869f20eaae0ee470f", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.6.0" + }, + "node_preamble": { + "dependency": "direct main", + "description": { + "name": "node_preamble", + "sha256": "6e7eac89047ab8a8d26cf16127b5ed26de65209847630400f9aefd7cd5c730db", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.0.2" + }, + "package_config": { + "dependency": "direct main", + "description": { + "name": "package_config", + "sha256": "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.0" + }, + "path": { + "dependency": "direct main", + "description": { + "name": "path", + "sha256": "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.9.0" + }, + "petitparser": { + "dependency": "direct main", + "description": { + "name": "petitparser", + "sha256": "c15605cd28af66339f8eb6fbe0e541bfe2d1b72d5825efc6598f3e0a31b9ad27", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.0.2" + }, + "platform": { + "dependency": "direct main", + "description": { + "name": "platform", + "sha256": "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.1.5" + }, + "pool": { + "dependency": "direct main", + "description": { + "name": "pool", + "sha256": "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.5.1" + }, + "process": { + "dependency": "direct main", + "description": { + "name": "process", + "sha256": "21e54fd2faf1b5bdd5102afd25012184a6793927648ea81eea80552ac9405b32", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "5.0.2" + }, + "pub_semver": { + "dependency": "direct main", + "description": { + "name": "pub_semver", + "sha256": "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.4" + }, + "pubspec_parse": { + "dependency": "direct dev", + "description": { + "name": "pubspec_parse", + "sha256": "c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.3.0" + }, + "shelf": { + "dependency": "direct main", + "description": { + "name": "shelf", + "sha256": "e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.4.2" + }, + "shelf_packages_handler": { + "dependency": "direct main", + "description": { + "name": "shelf_packages_handler", + "sha256": "89f967eca29607c933ba9571d838be31d67f53f6e4ee15147d5dc2934fee1b1e", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.0.2" + }, + "shelf_proxy": { + "dependency": "direct main", + "description": { + "name": "shelf_proxy", + "sha256": "a71d2307f4393211930c590c3d2c00630f6c5a7a77edc1ef6436dfd85a6a7ee3", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.0.4" + }, + "shelf_static": { + "dependency": "direct main", + "description": { + "name": "shelf_static", + "sha256": "a41d3f53c4adf0f57480578c1d61d90342cd617de7fc8077b1304643c2d85c1e", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.2" + }, + "shelf_web_socket": { + "dependency": "direct main", + "description": { + "name": "shelf_web_socket", + "sha256": "073c147238594ecd0d193f3456a5fe91c4b0abbcc68bf5cd95b36c4e194ac611", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.0.0" + }, + "source_map_stack_trace": { + "dependency": "direct main", + "description": { + "name": "source_map_stack_trace", + "sha256": "c0713a43e323c3302c2abe2a1cc89aa057a387101ebd280371d6a6c9fa68516b", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.2" + }, + "source_maps": { + "dependency": "direct main", + "description": { + "name": "source_maps", + "sha256": "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.10.12" + }, + "source_span": { + "dependency": "direct main", + "description": { + "name": "source_span", + "sha256": "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.10.0" + }, + "sprintf": { + "dependency": "direct main", + "description": { + "name": "sprintf", + "sha256": "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "7.0.0" + }, + "sse": { + "dependency": "direct main", + "description": { + "name": "sse", + "sha256": "111a05843ea9035042975744fe61d5e8b95bc4d38656dbafc5532da77a0bb89a", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.1.6" + }, + "stack_trace": { + "dependency": "direct main", + "description": { + "name": "stack_trace", + "sha256": "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.11.1" + }, + "standard_message_codec": { + "dependency": "direct main", + "description": { + "name": "standard_message_codec", + "sha256": "fc7dd712d191b7e33196a0ecf354c4573492bb95995e7166cb6f73b047f9cae0", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.0.1+4" + }, + "stream_channel": { + "dependency": "direct main", + "description": { + "name": "stream_channel", + "sha256": "ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.1.2" + }, + "string_scanner": { + "dependency": "direct main", + "description": { + "name": "string_scanner", + "sha256": "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.3.0" + }, + "sync_http": { + "dependency": "direct main", + "description": { + "name": "sync_http", + "sha256": "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.3.1" + }, + "term_glyph": { + "dependency": "direct main", + "description": { + "name": "term_glyph", + "sha256": "a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.2.1" + }, + "test": { + "dependency": "direct main", + "description": { + "name": "test", + "sha256": "713a8789d62f3233c46b4a90b174737b2c04cb6ae4500f2aa8b1be8f03f5e67f", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.25.8" + }, + "test_api": { + "dependency": "direct main", + "description": { + "name": "test_api", + "sha256": "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.7.3" + }, + "test_core": { + "dependency": "direct main", + "description": { + "name": "test_core", + "sha256": "12391302411737c176b0b5d6491f466b0dd56d4763e347b6714efbaa74d7953d", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.6.5" + }, + "typed_data": { + "dependency": "direct main", + "description": { + "name": "typed_data", + "sha256": "facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.3.2" + }, + "unified_analytics": { + "dependency": "direct main", + "description": { + "name": "unified_analytics", + "sha256": "916215af2dc2f54a204c6bfbc645ec401b6a150048764814379f42e09b557d2d", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.1.2" + }, + "usage": { + "dependency": "direct main", + "description": { + "name": "usage", + "sha256": "0bdbde65a6e710343d02a56552eeaefd20b735e04bfb6b3ee025b6b22e8d0e15", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.1.1" + }, + "uuid": { + "dependency": "direct main", + "description": { + "name": "uuid", + "sha256": "83d37c7ad7aaf9aa8e275490669535c8080377cfa7a7004c24dfac53afffaa90", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "4.4.2" + }, + "vm_service": { + "dependency": "direct main", + "description": { + "name": "vm_service", + "sha256": "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "14.2.5" + }, + "vm_service_interface": { + "dependency": "direct main", + "description": { + "name": "vm_service_interface", + "sha256": "f827453d9a3f8ceae04e389810da26f9b67636bdd13aa2dd9405b110c4daf59c", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.0" + }, + "vm_snapshot_analysis": { + "dependency": "direct main", + "description": { + "name": "vm_snapshot_analysis", + "sha256": "5a79b9fbb6be2555090f55b03b23907e75d44c3fd7bdd88da09848aa5a1914c8", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.7.6" + }, + "watcher": { + "dependency": "direct main", + "description": { + "name": "watcher", + "sha256": "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.1.0" + }, + "web": { + "dependency": "direct main", + "description": { + "name": "web", + "sha256": "d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.0.0" + }, + "web_socket": { + "dependency": "direct main", + "description": { + "name": "web_socket", + "sha256": "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.1.6" + }, + "web_socket_channel": { + "dependency": "direct main", + "description": { + "name": "web_socket_channel", + "sha256": "9f187088ed104edd8662ca07af4b124465893caf063ba29758f97af57e61da8f", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.0.1" + }, + "webdriver": { + "dependency": "direct main", + "description": { + "name": "webdriver", + "sha256": "003d7da9519e1e5f329422b36c4dcdf18d7d2978d1ba099ea4e45ba490ed845e", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.0.3" + }, + "webkit_inspection_protocol": { + "dependency": "direct main", + "description": { + "name": "webkit_inspection_protocol", + "sha256": "87d3f2333bb240704cd3f1c6b5b7acd8a10e7f0bc28c28dcf14e782014f4a572", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "1.2.1" + }, + "xml": { + "dependency": "direct main", + "description": { + "name": "xml", + "sha256": "b015a8ad1c488f66851d762d3090a21c600e479dc75e68328c52774040cf9226", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "6.5.0" + }, + "yaml": { + "dependency": "direct main", + "description": { + "name": "yaml", + "sha256": "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "3.1.2" + }, + "yaml_edit": { + "dependency": "direct main", + "description": { + "name": "yaml_edit", + "sha256": "e9c1a3543d2da0db3e90270dbb1e4eebc985ee5e3ffe468d83224472b2194a5f", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.2.1" + } + }, + "sdks": { + "dart": ">=3.4.3 <4.0.0" + } + } +} diff --git a/pkgs/development/compilers/flutter/versions/3_26/patches/deregister-pub-dependencies-artifact.patch b/pkgs/development/compilers/flutter/versions/3_26/patches/deregister-pub-dependencies-artifact.patch new file mode 100644 index 000000000000..01e34c6d292c --- /dev/null +++ b/pkgs/development/compilers/flutter/versions/3_26/patches/deregister-pub-dependencies-artifact.patch @@ -0,0 +1,19 @@ +diff --git a/packages/flutter_tools/lib/src/flutter_cache.dart b/packages/flutter_tools/lib/src/flutter_cache.dart +index 252021cf78..e50ef0885d 100644 +--- a/packages/flutter_tools/lib/src/flutter_cache.dart ++++ b/packages/flutter_tools/lib/src/flutter_cache.dart +@@ -51,14 +51,6 @@ class FlutterCache extends Cache { + registerArtifact(IosUsbArtifacts(artifactName, this, platform: platform)); + } + registerArtifact(FontSubsetArtifacts(this, platform: platform)); +- registerArtifact(PubDependencies( +- logger: logger, +- // flutter root and pub must be lazily initialized to avoid accessing +- // before the version is determined. +- flutterRoot: () => Cache.flutterRoot!, +- pub: () => pub, +- projectFactory: projectFactory, +- )); + } + } + \ No newline at end of file diff --git a/pkgs/development/compilers/flutter/versions/3_26/patches/disable-auto-update.patch b/pkgs/development/compilers/flutter/versions/3_26/patches/disable-auto-update.patch new file mode 100644 index 000000000000..2ad292efd222 --- /dev/null +++ b/pkgs/development/compilers/flutter/versions/3_26/patches/disable-auto-update.patch @@ -0,0 +1,30 @@ +diff --git a/packages/flutter_tools/lib/src/runner/flutter_command.dart b/packages/flutter_tools/lib/src/runner/flutter_command.dart +index e4e474ab6e..5548599802 100644 +--- a/packages/flutter_tools/lib/src/runner/flutter_command.dart ++++ b/packages/flutter_tools/lib/src/runner/flutter_command.dart +@@ -1693,7 +1693,7 @@ Run 'flutter -h' (or 'flutter -h') for available flutter commands and + + // Populate the cache. We call this before pub get below so that the + // sky_engine package is available in the flutter cache for pub to find. +- if (shouldUpdateCache) { ++ if (false) { + // First always update universal artifacts, as some of these (e.g. + // ios-deploy on macOS) are required to determine `requiredArtifacts`. + final bool offline; +diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart +index 50783f8435..db94062840 100644 +--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart ++++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart +@@ -377,11 +377,7 @@ class FlutterCommandRunner extends CommandRunner { + globals.analytics.suppressTelemetry(); + } + +- globals.flutterVersion.ensureVersionFile(); + final bool machineFlag = topLevelResults[FlutterGlobalOptions.kMachineFlag] as bool? ?? false; +- if (await _shouldCheckForUpdates(topLevelResults, topLevelMachineFlag: machineFlag)) { +- await globals.flutterVersion.checkFlutterVersionFreshness(); +- } + + // See if the user specified a specific device. + final String? specifiedDeviceId = topLevelResults[FlutterGlobalOptions.kDeviceIdOption] as String?; + diff --git a/pkgs/development/compilers/flutter/versions/3_26/patches/fix-ios-build-xcode-backend-sh.patch b/pkgs/development/compilers/flutter/versions/3_26/patches/fix-ios-build-xcode-backend-sh.patch new file mode 100644 index 000000000000..825d40fc6176 --- /dev/null +++ b/pkgs/development/compilers/flutter/versions/3_26/patches/fix-ios-build-xcode-backend-sh.patch @@ -0,0 +1,69 @@ +From 6df275df3b8694daf16302b407520e3b1dee6724 Mon Sep 17 00:00:00 2001 +From: Philip Hayes +Date: Thu, 12 Sep 2024 13:23:00 -0700 +Subject: [PATCH] fix: cleanup xcode_backend.sh to fix iOS build w/ + `NixOS/nixpkgs` flutter + +This patch cleans up `xcode_backend.sh`. It now effectively just runs +`exec $FLUTTER_ROOT/bin/dart ./xcode_backend.dart`. + +The previous `xcode_backend.sh` tries to discover `$FLUTTER_ROOT` from +argv[0], even though its presence is already guaranteed (the wrapped +`xcode_backend.dart` also relies on this env). + +When using nixpkgs flutter, the flutter SDK directory is composed of several +layers, joined together using symlinks (called a `symlinkJoin`). Without this +patch, the auto-discover traverses the symlinks into the wrong layer, and so it +uses an "unwrapped" `dart` command instead of a "wrapped" dart that sets some +important envs/flags (like `$FLUTTER_ROOT`). + +Using the "unwrapped" dart then manifests in this error when compiling, since +it doesn't see the ios build-support artifacts: + +``` +$ flutter run -d iphone +Running Xcode build... +Xcode build done. 6.4s +Failed to build iOS app +Error (Xcode): Target debug_unpack_ios failed: Error: Flutter failed to create a directory at "//XXXX-flutter-3.24.1-unwrapped/bin/cache/artifacts". +``` +--- + packages/flutter_tools/bin/xcode_backend.sh | 25 ++++----------------- + 1 file changed, 4 insertions(+), 21 deletions(-) + +diff --git a/packages/flutter_tools/bin/xcode_backend.sh b/packages/flutter_tools/bin/xcode_backend.sh +index 2889d7c8e4..48b9d06c6e 100755 +--- a/packages/flutter_tools/bin/xcode_backend.sh ++++ b/packages/flutter_tools/bin/xcode_backend.sh +@@ -6,24 +6,7 @@ + # exit on error, or usage of unset var + set -euo pipefail + +-# Needed because if it is set, cd may print the path it changed to. +-unset CDPATH +- +-function follow_links() ( +- cd -P "$(dirname -- "$1")" +- file="$PWD/$(basename -- "$1")" +- while [[ -h "$file" ]]; do +- cd -P "$(dirname -- "$file")" +- file="$(readlink -- "$file")" +- cd -P "$(dirname -- "$file")" +- file="$PWD/$(basename -- "$file")" +- done +- echo "$file" +-) +- +-PROG_NAME="$(follow_links "${BASH_SOURCE[0]}")" +-BIN_DIR="$(cd "${PROG_NAME%/*}" ; pwd -P)" +-FLUTTER_ROOT="$BIN_DIR/../../.." +-DART="$FLUTTER_ROOT/bin/dart" +- +-"$DART" "$BIN_DIR/xcode_backend.dart" "$@" ++# Run `dart ./xcode_backend.dart` with the dart from $FLUTTER_ROOT. ++dart="${FLUTTER_ROOT}/bin/dart" ++xcode_backend_dart="${BASH_SOURCE[0]%.sh}.dart" ++exec "${dart}" "${xcode_backend_dart}" "$@" +-- +2.46.0 + diff --git a/pkgs/development/compilers/flutter/versions/3_26/patches/gradle-flutter-tools-wrapper.patch b/pkgs/development/compilers/flutter/versions/3_26/patches/gradle-flutter-tools-wrapper.patch new file mode 100644 index 000000000000..de6080efbba8 --- /dev/null +++ b/pkgs/development/compilers/flutter/versions/3_26/patches/gradle-flutter-tools-wrapper.patch @@ -0,0 +1,44 @@ +This patch introduces an intermediate Gradle build step to alter the behavior +of flutter_tools' Gradle project, specifically moving the creation of `build` +and `.gradle` directories from within the Nix Store to somewhere in `$HOME/.cache/flutter/nix-flutter-tools-gradle/$engineShortRev`. + +Without this patch, flutter_tools' Gradle project tries to generate `build` and `.gradle` +directories within the Nix Store. Resulting in read-only errors when trying to build a +Flutter Android app at runtime. + +This patch takes advantage of the fact settings.gradle takes priority over settings.gradle.kts to build the intermediate Gradle project +when a Flutter app runs `includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle")` + +`rootProject.buildFileName = "/dev/null"` so that the intermediate project doesn't use `build.gradle.kts` that's in the same directory. + +The intermediate project makes a `settings.gradle` file in `$HOME/.cache/flutter/nix-flutter-tools-gradle//` and `includeBuild`s it. +This Gradle project will build the actual `packages/flutter_tools/gradle` project by setting +`rootProject.projectDir = new File("$settingsDir")` and `apply from: new File("$settingsDir/settings.gradle.kts")`. + +Now the `.gradle` will be built in `$HOME/.cache/flutter/nix-flutter-tools-gradle//`, but `build` doesn't. +To move `build` to `$HOME/.cache/flutter/nix-flutter-tools-gradle//` as well, we need to set `buildDirectory`. +diff --git a/packages/flutter_tools/gradle/settings.gradle b/packages/flutter_tools/gradle/settings.gradle +new file mode 100644 +index 0000000000..b2485c94b4 +--- /dev/null ++++ b/packages/flutter_tools/gradle/settings.gradle +@@ -0,0 +1,19 @@ ++rootProject.buildFileName = "/dev/null" ++ ++def engineShortRev = (new File("$settingsDir/../../../bin/internal/engine.version")).text.take(10) ++def dir = new File("$System.env.HOME/.cache/flutter/nix-flutter-tools-gradle/$engineShortRev") ++dir.mkdirs() ++def file = new File(dir, "settings.gradle") ++ ++file.text = """ ++rootProject.projectDir = new File("$settingsDir") ++apply from: new File("$settingsDir/settings.gradle.kts") ++ ++gradle.allprojects { project -> ++ project.beforeEvaluate { ++ project.layout.buildDirectory = new File("$dir/build") ++ } ++} ++""" ++ ++includeBuild(dir) diff --git a/pkgs/development/compilers/vlang/default.nix b/pkgs/development/compilers/vlang/default.nix index 267f473274a5..62077a7e4f85 100644 --- a/pkgs/development/compilers/vlang/default.nix +++ b/pkgs/development/compilers/vlang/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchFromGitHub, glfw, freetype, openssl, makeWrapper, upx, boehmgc, xorg, binaryen, darwin }: let - version = "0.4.4"; + version = "0.4.8"; ptraceSubstitution = '' #include #include @@ -10,12 +10,12 @@ let # So we fix its rev to correspond to the V version. vc = stdenv.mkDerivation { pname = "v.c"; - version = "0.4.4"; + version = "0.4.8"; src = fetchFromGitHub { owner = "vlang"; repo = "vc"; - rev = "66eb8eae253d31fa5622e35a69580d9ad8efcccb"; - hash = "sha256-YGlzr0Qq7+NtrnbaFPBuclzjOZBOnTe3BOhsuwdsQ5c="; + rev = "54beb1f416b404a06b894e6883a0e2368d80bc3e"; + hash = "sha256-hofganRnWPRCjjsItwF2BKam4dCqzMCrjgWSjZLSrlo="; }; # patch the ptrace reference for darwin @@ -46,7 +46,7 @@ stdenv.mkDerivation { owner = "vlang"; repo = "v"; rev = version; - hash = "sha256-Aqecw8K+igHx5R34lQiWtdNfeGn+umcjcS4w0vXgpLM="; + hash = "sha256-V4f14TcuKW8unzlo6i/tE6MzSb3HAll478OU2LxiTPQ="; }; propagatedBuildInputs = [ glfw freetype openssl ] diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 01f448cc732c..ac803a879211 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -461,31 +461,33 @@ self: super: { # Manually maintained cachix-api = overrideCabal (drv: { - version = "1.7.4"; + version = "1.7.5"; src = pkgs.fetchFromGitHub { owner = "cachix"; repo = "cachix"; - rev = "v1.7.4"; - sha256 = "sha256-lHy5kgx6J8uD+16SO47dPrbob98sh+W1tf4ceSqPVK4="; + rev = "v1.7.5"; + sha256 = "sha256-KxuGSoVUFnQLB2ZcYODW7AVPAh9JqRlD5BrfsC/Q4qs="; }; postUnpack = "sourceRoot=$sourceRoot/cachix-api"; }) super.cachix-api; cachix = (overrideCabal (drv: { - version = "1.7.4"; + version = "1.7.5"; src = pkgs.fetchFromGitHub { owner = "cachix"; repo = "cachix"; - rev = "v1.7.4"; - sha256 = "sha256-lHy5kgx6J8uD+16SO47dPrbob98sh+W1tf4ceSqPVK4="; + rev = "v1.7.5"; + sha256 = "sha256-KxuGSoVUFnQLB2ZcYODW7AVPAh9JqRlD5BrfsC/Q4qs="; }; postUnpack = "sourceRoot=$sourceRoot/cachix"; }) (lib.pipe (super.cachix.override { nix = self.hercules-ci-cnix-store.nixPackage; + hnix-store-core = self.hnix-store-core_0_8_0_0; }) [ (addBuildTool self.hercules-ci-cnix-store.nixPackage) (addBuildTool pkgs.buildPackages.pkg-config) + (addBuildDepend self.hnix-store-nar) ] )); diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index 671688ca80da..e0da51dcb89c 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -124213,7 +124213,7 @@ self: { "gi-javascriptcore" = callPackage ({ mkDerivation, base, bytestring, Cabal, containers, gi-glib , gi-gobject, haskell-gi, haskell-gi-base, haskell-gi-overloading - , text, transformers, webkitgtk + , text, transformers, webkitgtk_4_0 }: mkDerivation { pname = "gi-javascriptcore"; @@ -124224,11 +124224,11 @@ self: { base bytestring containers gi-glib gi-gobject haskell-gi haskell-gi-base haskell-gi-overloading text transformers ]; - libraryPkgconfigDepends = [ webkitgtk ]; + libraryPkgconfigDepends = [ webkitgtk_4_0 ]; description = "JavaScriptCore bindings"; license = lib.licenses.lgpl21Only; badPlatforms = lib.platforms.darwin; - }) {inherit (pkgs) webkitgtk;}; + }) {inherit (pkgs) webkitgtk_4_0;}; "gi-javascriptcore_6_0_4" = callPackage ({ mkDerivation, base, bytestring, Cabal, containers, gi-glib @@ -124569,7 +124569,7 @@ self: { ({ mkDerivation, base, bytestring, Cabal, containers, gi-atk , gi-cairo, gi-gdk, gi-gio, gi-glib, gi-gobject, gi-gtk , gi-javascriptcore, gi-soup, haskell-gi, haskell-gi-base - , haskell-gi-overloading, text, transformers, webkitgtk + , haskell-gi-overloading, text, transformers, webkitgtk_4_0 }: mkDerivation { pname = "gi-webkit"; @@ -124584,17 +124584,17 @@ self: { gi-gobject gi-gtk gi-javascriptcore gi-soup haskell-gi haskell-gi-base haskell-gi-overloading text transformers ]; - libraryPkgconfigDepends = [ webkitgtk ]; + libraryPkgconfigDepends = [ webkitgtk_4_0 ]; description = "WebKit bindings"; license = lib.licenses.lgpl21Only; hydraPlatforms = lib.platforms.none; - }) {inherit (pkgs) webkitgtk;}; + }) {inherit (pkgs) webkitgtk_4_0;}; "gi-webkit2" = callPackage ({ mkDerivation, base, bytestring, Cabal, containers, gi-atk , gi-cairo, gi-gdk, gi-gio, gi-glib, gi-gobject, gi-gtk , gi-javascriptcore, gi-soup, haskell-gi, haskell-gi-base - , haskell-gi-overloading, text, transformers, webkitgtk + , haskell-gi-overloading, text, transformers, webkitgtk_4_0 }: mkDerivation { pname = "gi-webkit2"; @@ -124609,17 +124609,17 @@ self: { gi-gobject gi-gtk gi-javascriptcore gi-soup haskell-gi haskell-gi-base haskell-gi-overloading text transformers ]; - libraryPkgconfigDepends = [ webkitgtk ]; + libraryPkgconfigDepends = [ webkitgtk_4_0 ]; description = "WebKit2 bindings"; license = lib.licenses.lgpl21Only; badPlatforms = lib.platforms.darwin; - }) {inherit (pkgs) webkitgtk;}; + }) {inherit (pkgs) webkitgtk_4_0;}; "gi-webkit2webextension" = callPackage ({ mkDerivation, base, bytestring, Cabal, containers, gi-gdk , gi-gio, gi-gobject, gi-gtk, gi-javascriptcore, gi-soup , haskell-gi, haskell-gi-base, haskell-gi-overloading, text - , transformers, webkitgtk + , transformers, webkitgtk_4_0 }: mkDerivation { pname = "gi-webkit2webextension"; @@ -124634,13 +124634,13 @@ self: { gi-javascriptcore gi-soup haskell-gi haskell-gi-base haskell-gi-overloading text transformers ]; - libraryPkgconfigDepends = [ webkitgtk ]; + libraryPkgconfigDepends = [ webkitgtk_4_0 ]; description = "WebKit2-WebExtension bindings"; license = lib.licenses.lgpl21Only; badPlatforms = lib.platforms.darwin; hydraPlatforms = lib.platforms.none; broken = true; - }) {inherit (pkgs) webkitgtk;}; + }) {inherit (pkgs) webkitgtk_4_0;}; "gi-webkitwebprocessextension" = callPackage ({ mkDerivation, base, bytestring, Cabal, containers, gi-gdk @@ -309867,7 +309867,7 @@ self: { , gi-gtk, gi-webkit2, gtk3, haskell-gi-base, http-types, lens , mime-types, mtl, network, process, random, scientific, split , tasty, tasty-quickcheck, text, transformers, unordered-containers - , utf8-string, vector, webkitgtk, xdg-basedir, xmonad + , utf8-string, vector, webkitgtk_4_0, xdg-basedir, xmonad , xmonad-contrib }: mkDerivation { @@ -309886,7 +309886,7 @@ self: { mime-types mtl network process random scientific split text transformers unordered-containers utf8-string vector xdg-basedir ]; - executablePkgconfigDepends = [ gtk3 webkitgtk ]; + executablePkgconfigDepends = [ gtk3 webkitgtk_4_0 ]; testHaskellDepends = [ aeson base bytestring containers dbus directory filepath gi-gdk gi-gio gi-glib gi-gtk gi-webkit2 haskell-gi-base http-types lens @@ -309899,7 +309899,7 @@ self: { hydraPlatforms = lib.platforms.none; mainProgram = "tianbar"; broken = true; - }) {inherit (pkgs) gtk3; inherit (pkgs) webkitgtk;}; + }) {inherit (pkgs) gtk3; inherit (pkgs) webkitgtk_4_0;}; "tibetan-utils" = callPackage ({ mkDerivation, base, composition-prelude, hspec, hspec-megaparsec @@ -332446,30 +332446,30 @@ self: { setupHaskellDepends = [ base Cabal gtk2hs-buildtools ]; libraryHaskellDepends = [ base ]; libraryPkgconfigDepends = [ webkit ]; - description = "JavaScriptCore FFI from webkitgtk"; + description = "JavaScriptCore FFI from webkitgtk_4_0"; license = lib.licenses.bsd3; hydraPlatforms = lib.platforms.none; broken = true; }) {webkit = null;}; "webkit2gtk3-javascriptcore" = callPackage - ({ mkDerivation, base, Cabal, gtk2hs-buildtools, webkitgtk }: + ({ mkDerivation, base, Cabal, gtk2hs-buildtools, webkitgtk_4_0 }: mkDerivation { pname = "webkit2gtk3-javascriptcore"; version = "0.14.4.6"; sha256 = "06g9ik2pzv761bj5kas17jxh6wxks3dd4vvrimliybs5s5b61b24"; setupHaskellDepends = [ base Cabal gtk2hs-buildtools ]; libraryHaskellDepends = [ base ]; - libraryPkgconfigDepends = [ webkitgtk ]; - description = "JavaScriptCore FFI from webkitgtk"; + libraryPkgconfigDepends = [ webkitgtk_4_0 ]; + description = "JavaScriptCore FFI from webkitgtk_4_0"; license = lib.licenses.bsd3; badPlatforms = lib.platforms.darwin; - }) {inherit (pkgs) webkitgtk;}; + }) {inherit (pkgs) webkitgtk_4_0;}; "webkitgtk3" = callPackage ({ mkDerivation, base, bytestring, Cabal, cairo, glib , gtk2hs-buildtools, gtk3, mtl, pango, text, transformers - , webkitgtk + , webkitgtk_4_0 }: mkDerivation { pname = "webkitgtk3"; @@ -332480,27 +332480,27 @@ self: { libraryHaskellDepends = [ base bytestring cairo glib gtk3 mtl pango text transformers ]; - libraryPkgconfigDepends = [ webkitgtk ]; + libraryPkgconfigDepends = [ webkitgtk_4_0 ]; libraryToolDepends = [ gtk2hs-buildtools ]; description = "Binding to the Webkit library"; license = lib.licenses.lgpl21Only; hydraPlatforms = lib.platforms.none; broken = true; - }) {inherit (pkgs) webkitgtk;}; + }) {inherit (pkgs) webkitgtk_4_0;}; "webkitgtk3-javascriptcore" = callPackage - ({ mkDerivation, base, Cabal, gtk2hs-buildtools, webkitgtk }: + ({ mkDerivation, base, Cabal, gtk2hs-buildtools, webkitgtk_4_0 }: mkDerivation { pname = "webkitgtk3-javascriptcore"; version = "0.14.2.1"; sha256 = "0kcjrka0c9ifq3zfhmkv05wy3xb7v0cyznfxldp2gjcn1haq084j"; setupHaskellDepends = [ base Cabal gtk2hs-buildtools ]; libraryHaskellDepends = [ base ]; - libraryPkgconfigDepends = [ webkitgtk ]; - description = "JavaScriptCore FFI from webkitgtk"; + libraryPkgconfigDepends = [ webkitgtk_4_0 ]; + description = "JavaScriptCore FFI from webkitgtk_4_0"; license = lib.licenses.bsd3; hydraPlatforms = lib.platforms.none; - }) {inherit (pkgs) webkitgtk;}; + }) {inherit (pkgs) webkitgtk_4_0;}; "webmention" = callPackage ({ mkDerivation, base, bytestring, case-insensitive, either diff --git a/pkgs/development/libraries/gstreamer/icamerasrc/default.nix b/pkgs/development/libraries/gstreamer/icamerasrc/default.nix index 68485f7e7454..4bbb20c6e41a 100644 --- a/pkgs/development/libraries/gstreamer/icamerasrc/default.nix +++ b/pkgs/development/libraries/gstreamer/icamerasrc/default.nix @@ -6,17 +6,18 @@ , gst_all_1 , ipu6-camera-hal , libdrm +, libva }: -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "icamerasrc-${ipu6-camera-hal.ipuVersion}"; - version = "unstable-2023-10-23"; + version = "unstable-2024-09-29"; src = fetchFromGitHub { owner = "intel"; repo = "icamerasrc"; - rev = "528a6f177732def4d5ebc17927220d8823bc8fdc"; - hash = "sha256-Ezcm5OpF/NKvJf5sFeJyvNc2Uq0166GukC9MuNUV2Fs="; + rev = "refs/tags/20240926_1446"; + hash = "sha256-BpIZxkPmSVKqPntwBJjGmCaMSYFCEZHJa4soaMAJRWE="; }; nativeBuildInputs = [ @@ -34,8 +35,10 @@ stdenv.mkDerivation { buildInputs = [ gst_all_1.gstreamer gst_all_1.gst-plugins-base + gst_all_1.gst-plugins-bad ipu6-camera-hal libdrm + libva ]; NIX_CFLAGS_COMPILE = [ diff --git a/pkgs/development/libraries/ipu6-camera-hal/default.nix b/pkgs/development/libraries/ipu6-camera-hal/default.nix index 9c6cc585f9b3..0bbed96ca3af 100644 --- a/pkgs/development/libraries/ipu6-camera-hal/default.nix +++ b/pkgs/development/libraries/ipu6-camera-hal/default.nix @@ -11,6 +11,7 @@ , ipu6-camera-bins , libtool , gst_all_1 +, libdrm # Pick one of # - ipu6 (Tiger Lake) @@ -27,13 +28,13 @@ let in stdenv.mkDerivation { pname = "${ipuVersion}-camera-hal"; - version = "unstable-2023-09-25"; + version = "unstable-2024-09-29"; src = fetchFromGitHub { owner = "intel"; repo = "ipu6-camera-hal"; - rev = "9fa05a90886d399ad3dda4c2ddc990642b3d20c9"; - hash = "sha256-yS1D7o6dsQ4FQkjfwcisOxcP7Majb+4uQ/iW5anMb5c="; + rev = "f98f72b156563fe8373e4f8d017a9f609676bb33"; + hash = "sha256-zVcgKW7/GHYd1oMvsaI77cPyj3G68dL+OXBJDz5+Td4="; }; nativeBuildInputs = [ @@ -41,12 +42,16 @@ stdenv.mkDerivation { pkg-config ]; - PKG_CONFIG_PATH = "${lib.makeLibraryPath [ ipu6-camera-bins ]}/${ipuTarget}/pkgconfig"; cmakeFlags = [ "-DIPU_VER=${ipuVersion}" + "-DTARGET_SUFFIX=-${ipuVersion}" # missing libiacss "-DUSE_PG_LITE_PIPE=ON" + "-DCMAKE_BUILD_TYPE=Release" + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DCMAKE_INSTALL_SUB_PATH=${ipuTarget}" + "-DCMAKE_INSTALL_LIBDIR=lib" ]; NIX_CFLAGS_COMPILE = [ @@ -61,21 +66,28 @@ stdenv.mkDerivation { libtool gst_all_1.gstreamer gst_all_1.gst-plugins-base + libdrm ]; postPatch = '' substituteInPlace src/platformdata/PlatformData.h \ - --replace '/usr/share/' "${placeholder "out"}/share/" + --replace '/usr/share/' "${placeholder "out"}/share/" \ + --replace '#define CAMERA_DEFAULT_CFG_PATH "/etc/camera/"' '#define CAMERA_DEFAULT_CFG_PATH "${placeholder "out"}/etc/camera/"' + ''; + + postInstall = '' + mkdir -p $out/include/${ipuTarget}/ + cp -r $src/include $out/include/${ipuTarget}/libcamhal ''; postFixup = '' for lib in $out/lib/*.so; do - patchelf --add-rpath "${lib.makeLibraryPath [ ipu6-camera-bins ]}/${ipuTarget}" $lib + patchelf --add-rpath "${ipu6-camera-bins}/lib" $lib done ''; passthru = { - inherit ipuVersion; + inherit ipuVersion ipuTarget; }; meta = with lib; { diff --git a/pkgs/development/libraries/rnnoise-plugin/default.nix b/pkgs/development/libraries/rnnoise-plugin/default.nix index 13107bfcb13b..4cf983add42b 100644 --- a/pkgs/development/libraries/rnnoise-plugin/default.nix +++ b/pkgs/development/libraries/rnnoise-plugin/default.nix @@ -6,7 +6,7 @@ , gtk3-x11 , pcre , pkg-config -, webkitgtk +, webkitgtk_4_0 , xorg , WebKit , MetalKit @@ -39,7 +39,7 @@ stdenv.mkDerivation rec { xorg.libX11 xorg.libXrandr ] ++ lib.optionals stdenv.hostPlatform.isLinux [ - webkitgtk + webkitgtk_4_0 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ WebKit MetalKit diff --git a/pkgs/development/libraries/science/math/faiss/default.nix b/pkgs/development/libraries/science/math/faiss/default.nix index 689349fb05ac..750735ba6786 100644 --- a/pkgs/development/libraries/science/math/faiss/default.nix +++ b/pkgs/development/libraries/science/math/faiss/default.nix @@ -105,6 +105,10 @@ stdenv.mkDerivation { cp faiss/python/dist/*.whl "$dist/" ''; + passthru = { + inherit cudaSupport cudaPackages pythonSupport; + }; + meta = { description = "Library for efficient similarity search and clustering of dense vectors by Facebook Research"; mainProgram = "demo_ivfpq_indexing"; diff --git a/pkgs/development/libraries/wxwidgets/wxGTK31.nix b/pkgs/development/libraries/wxwidgets/wxGTK31.nix index 21333afe5e8e..1379a15801e6 100644 --- a/pkgs/development/libraries/wxwidgets/wxGTK31.nix +++ b/pkgs/development/libraries/wxwidgets/wxGTK31.nix @@ -20,7 +20,7 @@ , withEGL ? true , withMesa ? !stdenv.hostPlatform.isDarwin , withWebKit ? stdenv.hostPlatform.isDarwin -, webkitgtk +, webkitgtk_4_0 , setfile , AGL , Carbon @@ -64,7 +64,7 @@ stdenv.mkDerivation rec { ] ++ lib.optional withCurl curl ++ lib.optional withMesa libGLU - ++ lib.optional (withWebKit && !stdenv.hostPlatform.isDarwin) webkitgtk + ++ lib.optional (withWebKit && !stdenv.hostPlatform.isDarwin) webkitgtk_4_0 ++ lib.optional (withWebKit && stdenv.hostPlatform.isDarwin) WebKit ++ lib.optionals stdenv.hostPlatform.isDarwin [ setfile diff --git a/pkgs/development/libraries/wxwidgets/wxGTK32.nix b/pkgs/development/libraries/wxwidgets/wxGTK32.nix index 055000cfa68c..fed9c5330610 100644 --- a/pkgs/development/libraries/wxwidgets/wxGTK32.nix +++ b/pkgs/development/libraries/wxwidgets/wxGTK32.nix @@ -22,7 +22,7 @@ , unicode ? true , withMesa ? !stdenv.hostPlatform.isDarwin , withWebKit ? true -, webkitgtk +, webkitgtk_4_0 , setfile , AGL , Carbon @@ -78,7 +78,7 @@ stdenv.mkDerivation rec { xorgproto ] ++ lib.optional withMesa libGLU - ++ lib.optional (withWebKit && stdenv.hostPlatform.isLinux) webkitgtk + ++ lib.optional (withWebKit && stdenv.hostPlatform.isLinux) webkitgtk_4_0 ++ lib.optional (withWebKit && stdenv.hostPlatform.isDarwin) WebKit ++ lib.optionals stdenv.hostPlatform.isDarwin [ expat diff --git a/pkgs/development/lisp-modules/ql.nix b/pkgs/development/lisp-modules/ql.nix index af6334671230..9ce7655903a7 100644 --- a/pkgs/development/lisp-modules/ql.nix +++ b/pkgs/development/lisp-modules/ql.nix @@ -65,7 +65,7 @@ let nativeLibs = [ pkgs.sqlite ]; }); cl-webkit2 = super.cl-webkit2.overrideLispAttrs (o: { - nativeLibs = [ pkgs.webkitgtk ]; + nativeLibs = [ pkgs.webkitgtk_4_0 ]; }); dbd-mysql = super.dbd-mysql.overrideLispAttrs (o: { nativeLibs = [ pkgs.mariadb.client ]; diff --git a/pkgs/development/misc/juce/default.nix b/pkgs/development/misc/juce/default.nix index cbb5411314f0..610434dfe624 100644 --- a/pkgs/development/misc/juce/default.nix +++ b/pkgs/development/misc/juce/default.nix @@ -13,7 +13,7 @@ , freetype , curl , libglvnd -, webkitgtk +, webkitgtk_4_0 , pcre , darwin }: @@ -51,7 +51,7 @@ stdenv.mkDerivation (finalAttrs: { ] ++ lib.optionals stdenv.hostPlatform.isLinux [ alsa-lib # libasound.so libglvnd # libGL.so - webkitgtk # webkit2gtk-4.0 + webkitgtk_4_0 # webkit2gtk-4.0 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.apple_sdk.frameworks.Cocoa darwin.apple_sdk.frameworks.MetalKit diff --git a/pkgs/development/python-modules/aiortm/default.nix b/pkgs/development/python-modules/aiortm/default.nix index 1760e816fc05..b02e418a1ddb 100644 --- a/pkgs/development/python-modules/aiortm/default.nix +++ b/pkgs/development/python-modules/aiortm/default.nix @@ -19,7 +19,7 @@ buildPythonPackage rec { pname = "aiortm"; - version = "0.9.11"; + version = "0.9.12"; pyproject = true; disabled = pythonOlder "3.12"; @@ -28,7 +28,7 @@ buildPythonPackage rec { owner = "MartinHjelmare"; repo = "aiortm"; rev = "refs/tags/v${version}"; - hash = "sha256-uP+nQZA6ZdCAy3E4a1jcm+3X1Fe6n+7v/6unX423jfw="; + hash = "sha256-PTg+/Iqjj5V5XJNDAJva/BvaOl6qyjeqrjxy0RLAvEc="; }; pythonRelaxDeps = [ "typer" ]; diff --git a/pkgs/development/python-modules/asn1tools/default.nix b/pkgs/development/python-modules/asn1tools/default.nix index cd0b3a0895bb..8ca21fece147 100644 --- a/pkgs/development/python-modules/asn1tools/default.nix +++ b/pkgs/development/python-modules/asn1tools/default.nix @@ -14,7 +14,7 @@ buildPythonPackage rec { pname = "asn1tools"; - version = "0.166.0"; + version = "0.167.0"; pyproject = true; disabled = pythonOlder "3.8"; @@ -23,17 +23,17 @@ buildPythonPackage rec { owner = "eerimoq"; repo = "asn1tools"; rev = "refs/tags/${version}"; - hash = "sha256-TWAOML6nsLX3TYqoQ9fcSjrUmC4byXOfczfkmSaSa0k="; + hash = "sha256-86bdBYlAVJfd3EY8s0t6ZDRA/qZVWuHD4Jxa1n1Ke5E="; }; - nativeBuildInputs = [ setuptools ]; + build-system = [ setuptools ]; - propagatedBuildInputs = [ + dependencies = [ bitstruct pyparsing ]; - passthru.optional-depdendencies = { + optional-dependencies = { shell = [ prompt-toolkit ]; cache = [ diskcache ]; }; @@ -41,7 +41,7 @@ buildPythonPackage rec { nativeCheckInputs = [ pytest-xdist pytestCheckHook - ] ++ lib.flatten (builtins.attrValues passthru.optional-depdendencies); + ] ++ lib.flatten (builtins.attrValues optional-dependencies); pythonImportsCheck = [ "asn1tools" ]; @@ -53,10 +53,10 @@ buildPythonPackage rec { meta = with lib; { description = "ASN.1 parsing, encoding and decoding"; - mainProgram = "asn1tools"; homepage = "https://github.com/eerimoq/asn1tools"; changelog = "https://github.com/eerimoq/asn1tools/releases/tag/${version}"; license = licenses.mit; maintainers = [ ]; + mainProgram = "asn1tools"; }; } diff --git a/pkgs/development/python-modules/ayla-iot-unofficial/default.nix b/pkgs/development/python-modules/ayla-iot-unofficial/default.nix index 3e2819fa0fea..462a9f1130b4 100644 --- a/pkgs/development/python-modules/ayla-iot-unofficial/default.nix +++ b/pkgs/development/python-modules/ayla-iot-unofficial/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "ayla-iot-unofficial"; - version = "1.4.1"; + version = "1.4.2"; pyproject = true; src = fetchFromGitHub { owner = "rewardone"; repo = "ayla-iot-unofficial"; rev = "refs/tags/v${version}"; - hash = "sha256-SAfDpABOWsic3kqsN0txlchEIRKJ0xtpJERZUH5CKR0="; + hash = "sha256-E0vDaKZxrOwzRsqVYw+RVgFYgRB+klW1yb07KA+9zWc="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/azure-mgmt-billing/default.nix b/pkgs/development/python-modules/azure-mgmt-billing/default.nix index db243f585759..dfef1554ecc4 100644 --- a/pkgs/development/python-modules/azure-mgmt-billing/default.nix +++ b/pkgs/development/python-modules/azure-mgmt-billing/default.nix @@ -1,45 +1,46 @@ { lib, - buildPythonPackage, - fetchPypi, - msrestazure, azure-common, azure-mgmt-core, - azure-mgmt-nspkg, + buildPythonPackage, + fetchPypi, + isodate, + pythonOlder, + setuptools, + typing-extensions, }: buildPythonPackage rec { pname = "azure-mgmt-billing"; - version = "6.0.0"; # pypi's 0.2.0 doesn't build ootb - format = "setuptools"; + version = "7.0.0"; + pyproject = true; + + disabled = pythonOlder "3.8"; src = fetchPypi { - inherit pname version; - sha256 = "d4f5c5a4188a456fe1eb32b6c45f55ca2069c74be41eb76921840b39f2f5c07f"; - extension = "zip"; + pname = "azure_mgmt_billing"; + inherit version; + hash = "sha256-jgplxlEQtTpCk35b7WrgDvydYgaXLZa/1KdOgMhcLXs="; }; - propagatedBuildInputs = [ - msrestazure + build-system = [ setuptools ]; + + dependencies = [ azure-common azure-mgmt-core - azure-mgmt-nspkg + isodate + typing-extensions ]; - preBuild = '' - rm -rf azure_bdist_wheel.py - substituteInPlace setup.cfg \ - --replace "azure-namespace-package = azure-mgmt-nspkg" "" - ''; - pythonNamespaces = [ "azure.mgmt" ]; - # has no tests + # Module has no tests doCheck = false; meta = with lib; { description = "This is the Microsoft Azure Billing Client Library"; - homepage = "https://github.com/Azure/azure-sdk-for-python"; + homepage = "https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/billing/azure-mgmt-billing"; + changelog = "https://github.com/Azure/azure-sdk-for-python/blob/azure-mgmt-billing_${version}/sdk/billing/azure-mgmt-billing/CHANGELOG.md"; license = licenses.mit; maintainers = with maintainers; [ maxwilson ]; }; diff --git a/pkgs/development/python-modules/azure-storage-file-share/default.nix b/pkgs/development/python-modules/azure-storage-file-share/default.nix index 5169b9a73366..04e4ee8bf5a8 100644 --- a/pkgs/development/python-modules/azure-storage-file-share/default.nix +++ b/pkgs/development/python-modules/azure-storage-file-share/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "azure-storage-file-share"; - version = "12.18.0"; + version = "12.19.0"; pyproject = true; disabled = pythonOlder "3.8"; @@ -20,7 +20,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "azure_storage_file_share"; inherit version; - hash = "sha256-CoHa7l4TWYrM3jxzsa7Mxu39zsXpV79AFQwGIvuV3HY="; + hash = "sha256-6npBdNxsUvUKyMMPIoFZ/MNnXR+Lp3G40O/LwxB0Ang="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/catboost/default.nix b/pkgs/development/python-modules/catboost/default.nix index 98e4f0869ccb..d0fc77b70038 100644 --- a/pkgs/development/python-modules/catboost/default.nix +++ b/pkgs/development/python-modules/catboost/default.nix @@ -3,15 +3,18 @@ buildPythonPackage, catboost, python, + + # build-system + setuptools, + + # dependencies graphviz, matplotlib, numpy, pandas, plotly, scipy, - setuptools, six, - wheel, }: buildPythonPackage rec { @@ -21,16 +24,15 @@ buildPythonPackage rec { src meta ; - format = "pyproject"; + pyproject = true; sourceRoot = "${src.name}/catboost/python-package"; - nativeBuildInputs = [ + build-system = [ setuptools - wheel ]; - propagatedBuildInputs = [ + dependencies = [ graphviz matplotlib numpy diff --git a/pkgs/development/python-modules/connexion/default.nix b/pkgs/development/python-modules/connexion/default.nix index a43fccb0170e..bd19ae31caa2 100644 --- a/pkgs/development/python-modules/connexion/default.nix +++ b/pkgs/development/python-modules/connexion/default.nix @@ -37,18 +37,18 @@ buildPythonPackage rec { version = "3.1.0"; pyproject = true; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "spec-first"; - repo = pname; + repo = "connexion"; rev = "refs/tags/${version}"; hash = "sha256-rngQDU9kXw/Z+Al0SCVnWN8xnphueTtZ0+xPBR5MbEM="; }; - nativeBuildInputs = [ poetry-core ]; + build-system = [ poetry-core ]; - propagatedBuildInputs = [ + dependencies = [ asgiref httpx inflection @@ -80,6 +80,10 @@ buildPythonPackage rec { pythonImportsCheck = [ "connexion" ]; disabledTests = [ + "test_build_example" + "test_mock_resolver_no_example" + # Tests require network access + "test_remote_api" # AssertionError "test_headers" # waiter.acquire() deadlock @@ -91,9 +95,10 @@ buildPythonPackage rec { meta = with lib; { description = "Swagger/OpenAPI First framework on top of Flask"; - mainProgram = "connexion"; homepage = "https://github.com/spec-first/connexion"; changelog = "https://github.com/spec-first/connexion/releases/tag/${version}"; license = licenses.asl20; + maintainers = [ ]; + mainProgram = "connexion"; }; } diff --git a/pkgs/development/python-modules/debugpy/default.nix b/pkgs/development/python-modules/debugpy/default.nix index 4bf451d834be..cce50d3b7e51 100644 --- a/pkgs/development/python-modules/debugpy/default.nix +++ b/pkgs/development/python-modules/debugpy/default.nix @@ -22,7 +22,7 @@ buildPythonPackage rec { pname = "debugpy"; - version = "1.8.6"; + version = "1.8.7"; format = "setuptools"; disabled = pythonOlder "3.8"; @@ -31,7 +31,7 @@ buildPythonPackage rec { owner = "microsoft"; repo = "debugpy"; rev = "refs/tags/v${version}"; - hash = "sha256-kkFNIJ3QwojwgiRAOmBiWIg5desxOKTmo9YH1Qup6fI="; + hash = "sha256-JFVhEAfdSfl2ACfXLMdoO/1otdif9bHialdQXucTM5A="; }; patches = diff --git a/pkgs/development/python-modules/dissect-cobaltstrike/default.nix b/pkgs/development/python-modules/dissect-cobaltstrike/default.nix index 0795b7aaee8e..ef8e70ef1305 100644 --- a/pkgs/development/python-modules/dissect-cobaltstrike/default.nix +++ b/pkgs/development/python-modules/dissect-cobaltstrike/default.nix @@ -5,6 +5,8 @@ dissect-util, fetchFromGitHub, flow-record, + hatch-vcs, + hatchling, httpx, lark, pycryptodome, @@ -13,13 +15,11 @@ pytestCheckHook, pythonOlder, rich, - setuptools, - setuptools-scm, }: buildPythonPackage rec { pname = "dissect-cobaltstrike"; - version = "1.0.0"; + version = "1.2.0"; pyproject = true; disabled = pythonOlder "3.7"; @@ -28,12 +28,12 @@ buildPythonPackage rec { owner = "fox-it"; repo = "dissect.cobaltstrike"; rev = "refs/tags/v${version}"; - hash = "sha256-CS50c3r7sdxp3CRS6XJ4QUmUFtmhFg6rSdKfYzJSOV4="; + hash = "sha256-GMpMTsI4mepaOGhw7/cSymkcxzn4mlNS1ZKYGYut+LM="; }; build-system = [ - setuptools - setuptools-scm + hatch-vcs + hatchling ]; dependencies = [ @@ -78,8 +78,5 @@ buildPythonPackage rec { changelog = "https://github.com/fox-it/dissect.cobaltstrike/releases/tag/${version}"; license = licenses.agpl3Only; maintainers = with maintainers; [ fab ]; - # Compatibility with dissect.struct 4.x - # https://github.com/fox-it/dissect.cobaltstrike/issues/53 - broken = versionAtLeast dissect-cstruct.version "4"; }; } diff --git a/pkgs/development/python-modules/dissect-target/default.nix b/pkgs/development/python-modules/dissect-target/default.nix index 409f8444c33d..259d2e7d077d 100644 --- a/pkgs/development/python-modules/dissect-target/default.nix +++ b/pkgs/development/python-modules/dissect-target/default.nix @@ -44,7 +44,7 @@ buildPythonPackage rec { pname = "dissect-target"; - version = "3.18"; + version = "3.19"; pyproject = true; disabled = pythonOlder "3.9"; @@ -53,7 +53,7 @@ buildPythonPackage rec { owner = "fox-it"; repo = "dissect.target"; rev = "refs/tags/${version}"; - hash = "sha256-jR+f4t0QXmm007lrGdMyF9vFa3NW35gZxs7pe9sdjfg="; + hash = "sha256-D5YgCAKcnPyBrZTpcSuvKfWfIIcCxKGxn+mj8Jqzmws="; }; postPatch = '' @@ -138,6 +138,8 @@ buildPythonPackage rec { "test_systemd_basic_syntax" "test_target_cli_unicode_argparse" "test_target_query" + "test_target_info" + "test_yara" ] ++ # test is broken on Darwin diff --git a/pkgs/development/python-modules/dissect-volume/default.nix b/pkgs/development/python-modules/dissect-volume/default.nix index 3a094cbd7880..0fb8e92a7cfe 100644 --- a/pkgs/development/python-modules/dissect-volume/default.nix +++ b/pkgs/development/python-modules/dissect-volume/default.nix @@ -12,24 +12,24 @@ buildPythonPackage rec { pname = "dissect-volume"; - version = "3.11"; + version = "3.12"; pyproject = true; - disabled = pythonOlder "3.11"; + disabled = pythonOlder "3.12"; src = fetchFromGitHub { owner = "fox-it"; repo = "dissect.volume"; rev = "refs/tags/${version}"; - hash = "sha256-eHIInoquuyukKuPVvVB6qtovx1NloHHVGKfFBHxVd+o="; + hash = "sha256-IhG2FZdCmYrGxHc2i+ERhphxP/uGgOY67epHEWnQXb0="; }; - nativeBuildInputs = [ + build-system = [ setuptools setuptools-scm ]; - propagatedBuildInputs = [ + dependencies = [ dissect-cstruct dissect-util ]; @@ -44,6 +44,7 @@ buildPythonPackage rec { "test_dm_thin" "test_lvm_mirro" "test_lvm_thin" + "test_lvm" "test_md_raid0_zones" "test_md_read" ]; diff --git a/pkgs/development/python-modules/dvc-task/default.nix b/pkgs/development/python-modules/dvc-task/default.nix index 76ad62960875..6c4ea111ce53 100644 --- a/pkgs/development/python-modules/dvc-task/default.nix +++ b/pkgs/development/python-modules/dvc-task/default.nix @@ -16,7 +16,7 @@ buildPythonPackage rec { pname = "dvc-task"; - version = "0.40.1"; + version = "0.40.2"; pyproject = true; disabled = pythonOlder "3.8"; @@ -25,7 +25,7 @@ buildPythonPackage rec { owner = "iterative"; repo = "dvc-task"; rev = "refs/tags/${version}"; - hash = "sha256-r5rBY4g4S4VaifGCK3bGx6arjPoGZI9th2T9LDC5wfI="; + hash = "sha256-bRQJLncxCigYPEtlvKjUtKqhcBkB7erEtoJQ30yGamE="; }; build-system = [ setuptools-scm ]; diff --git a/pkgs/development/python-modules/ffmpeg-progress-yield/default.nix b/pkgs/development/python-modules/ffmpeg-progress-yield/default.nix index 288389dea837..4f3baf7fe8db 100644 --- a/pkgs/development/python-modules/ffmpeg-progress-yield/default.nix +++ b/pkgs/development/python-modules/ffmpeg-progress-yield/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "ffmpeg-progress-yield"; - version = "0.7.8"; + version = "0.9.1"; format = "setuptools"; disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - hash = "sha256-muauX4Mq58ew9lGPE0H+bu4bqPydNADLocujjy6qRh4="; + hash = "sha256-n6zHi6M9SyrNm8MhQ9xvBo2OIzoQYJ4yhgujW5C6QWY="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/flow-record/default.nix b/pkgs/development/python-modules/flow-record/default.nix index b92660587549..268c7387502b 100644 --- a/pkgs/development/python-modules/flow-record/default.nix +++ b/pkgs/development/python-modules/flow-record/default.nix @@ -1,30 +1,35 @@ { lib, buildPythonPackage, + duckdb, + elastic-transport, elasticsearch, fastavro, fetchFromGitHub, + httpx, lz4, + maxminddb, msgpack, pytest7CheckHook, pythonOlder, - setuptools, + pytz, setuptools-scm, + setuptools, zstandard, }: buildPythonPackage rec { pname = "flow-record"; - version = "3.15"; + version = "3.17"; pyproject = true; - disabled = pythonOlder "3.8"; + disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "fox-it"; repo = "flow.record"; rev = "refs/tags/${version}"; - hash = "sha256-j5N66p7feB9Ae+Fu5RhVzh8XCHiq55jJMg0Fe+C6Jvg="; + hash = "sha256-fFP2bdO4wTR9Y+9no3FabtVmLicTD76Jw5aWDMPOB0w="; }; build-system = [ @@ -39,11 +44,18 @@ buildPythonPackage rec { lz4 zstandard ]; + duckdb = [ + duckdb + pytz + ]; elastic = [ elasticsearch ]; + geoip = [ maxminddb ]; avro = [ fastavro ] ++ fastavro.optional-dependencies.snappy; + splunk = [ httpx ]; }; nativeCheckInputs = [ + elastic-transport pytest7CheckHook ] ++ lib.flatten (builtins.attrValues optional-dependencies); diff --git a/pkgs/development/python-modules/greatfet/default.nix b/pkgs/development/python-modules/greatfet/default.nix index 2ed9792df3b2..1e7385851094 100644 --- a/pkgs/development/python-modules/greatfet/default.nix +++ b/pkgs/development/python-modules/greatfet/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "greatfet"; - version = "2024.0.2"; + version = "2024.0.3"; pyproject = true; disabled = pythonOlder "3.8"; @@ -26,7 +26,7 @@ buildPythonPackage rec { owner = "greatscottgadgets"; repo = "greatfet"; rev = "refs/tags/v${version}"; - hash = "sha256-1GfyhxwA6Nhf/umvllR/hkh5hyn42141QOT7+6IGAis="; + hash = "sha256-jdOTEOotLiIxA9TxmFGOjP8IZ/8xo7mzXSJRg3A5Ri4="; }; sourceRoot = "${src.name}/host"; diff --git a/pkgs/development/python-modules/hypothesis-auto/default.nix b/pkgs/development/python-modules/hypothesis-auto/default.nix index eca2ca101457..13457576cdb4 100644 --- a/pkgs/development/python-modules/hypothesis-auto/default.nix +++ b/pkgs/development/python-modules/hypothesis-auto/default.nix @@ -13,7 +13,7 @@ buildPythonPackage rec { pname = "hypothesis-auto"; version = "1.1.5"; - format = "pyproject"; + pyproject = true; disabled = pythonOlder "3.6"; @@ -23,14 +23,22 @@ buildPythonPackage rec { hash = "sha256-U0vcOB9jXmUV5v2IwybVu2arY1FpPnKkP7m2kbD1kRw="; }; - nativeBuildInputs = [ poetry-core ]; - - propagatedBuildInputs = [ - pydantic - hypothesis - pytest + pythonRelaxDeps = [ + "hypothesis" + "pydantic" ]; + build-system = [ poetry-core ]; + + dependencies = [ + hypothesis + pydantic + ]; + + optional-dependencies = { + pytest = [ pytest ]; + }; + pythonImportsCheck = [ "hypothesis_auto" ]; nativeCheckInputs = [ pytestCheckHook ]; @@ -38,6 +46,7 @@ buildPythonPackage rec { meta = with lib; { description = "Enables fully automatic tests for type annotated functions"; homepage = "https://github.com/timothycrosley/hypothesis-auto/"; + changelog = "https://github.com/timothycrosley/hypothesis-auto/blob/master/CHANGELOG.md"; license = licenses.mit; maintainers = [ ]; }; diff --git a/pkgs/development/python-modules/import-expression/default.nix b/pkgs/development/python-modules/import-expression/default.nix index 369495b96e29..6be9824a37a1 100644 --- a/pkgs/development/python-modules/import-expression/default.nix +++ b/pkgs/development/python-modules/import-expression/default.nix @@ -3,38 +3,43 @@ buildPythonPackage, fetchPypi, pytestCheckHook, - astunparse, + pythonOlder, setuptools, + typing-extensions, }: + buildPythonPackage rec { pname = "import-expression"; version = "2.0.0"; pyproject = true; + disabled = pythonOlder "3.9"; + src = fetchPypi { - inherit version; pname = "import_expression"; + inherit version; hash = "sha256-Biw7dIOPKbDcqYJSCyeqC/seREcVihSZuaKNFfgjTew="; }; build-system = [ setuptools ]; - dependencies = [ astunparse ]; + + dependencies = [ typing-extensions ]; + nativeCheckInputs = [ pytestCheckHook ]; + pytestFlagsArray = [ "tests.py" ]; - pythonImportsCheck = [ - "import_expression" - "import_expression._codec" - ]; + pythonImportsCheck = [ "import_expression" ]; meta = { description = "Transpiles a superset of python to allow easy inline imports"; homepage = "https://github.com/ioistired/import-expression-parser"; + changelog = "https://github.com/ioistired/import-expression/releases/tag/v${version}"; license = with lib.licenses; [ mit psfl ]; - mainProgram = "import-expression"; maintainers = with lib.maintainers; [ ]; + mainProgram = "import-expression"; }; } diff --git a/pkgs/development/python-modules/jalali-core/default.nix b/pkgs/development/python-modules/jalali-core/default.nix new file mode 100644 index 000000000000..69c613d0417c --- /dev/null +++ b/pkgs/development/python-modules/jalali-core/default.nix @@ -0,0 +1,35 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + pythonOlder, + setuptools, +}: + +buildPythonPackage rec { + pname = "jalali-core"; + version = "1.0.0"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchPypi { + pname = "jalali_core"; + inherit version; + hash = "sha256-9Ch8cMYwMj3PCjqybfkFuk1FHiMKwfZbO7L3d5eJSis="; + }; + + build-system = [ setuptools ]; + + # Module has no tests + doCheck = false; + + pythonImportsCheck = [ "jalali_core" ]; + + meta = { + description = "Module to convert Gregorian to Jalali and inverse dates"; + homepage = "https://pypi.org/project/jalali-core/"; + license = lib.licenses.lgpl2Only; + maintainers = with lib.maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/jdatetime/default.nix b/pkgs/development/python-modules/jdatetime/default.nix index 553500c47be6..acc5dca6a825 100644 --- a/pkgs/development/python-modules/jdatetime/default.nix +++ b/pkgs/development/python-modules/jdatetime/default.nix @@ -2,29 +2,33 @@ lib, buildPythonPackage, fetchPypi, - six, + jalali-core, pythonOlder, + setuptools, }: buildPythonPackage rec { pname = "jdatetime"; version = "5.0.0"; - format = "setuptools"; + pyproject = true; - disabled = pythonOlder "3.7"; + disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; hash = "sha256-LMYD2RPA2OMokoRU09KVJhywN+mVAif2fJYpq0cQ/fk="; }; - propagatedBuildInputs = [ six ]; + build-system = [ setuptools ]; + + dependencies = [ jalali-core ]; pythonImportsCheck = [ "jdatetime" ]; meta = with lib; { description = "Jalali datetime binding"; homepage = "https://github.com/slashmili/python-jalali"; + changelog = "https://github.com/slashmili/python-jalali/blob/v${version}/CHANGELOG.md"; license = licenses.psfl; maintainers = [ ]; }; diff --git a/pkgs/development/python-modules/opentelemetry-instrumentation-botocore/default.nix b/pkgs/development/python-modules/opentelemetry-instrumentation-botocore/default.nix new file mode 100644 index 000000000000..caa6d327dfeb --- /dev/null +++ b/pkgs/development/python-modules/opentelemetry-instrumentation-botocore/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + hatchling, + opentelemetry-api, + opentelemetry-instrumentation, + opentelemetry-semantic-conventions, + botocore, + moto, + opentelemetry-test-utils, + opentelemetry-propagator-aws-xray, + pytestCheckHook, + aws-xray-sdk, +}: + +buildPythonPackage rec { + inherit (opentelemetry-instrumentation) version src; + pname = "opentelemetry-instrumentation-botocore"; + pyproject = true; + + sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-botocore"; + + build-system = [ hatchling ]; + + dependencies = [ + opentelemetry-api + opentelemetry-instrumentation + opentelemetry-propagator-aws-xray + opentelemetry-semantic-conventions + ]; + + nativeCheckInputs = [ + opentelemetry-test-utils + pytestCheckHook + ]; + + checkInputs = [ + aws-xray-sdk + moto + ]; + + optional-dependencies = { + instruments = [ botocore ]; + }; + + pythonImportsCheck = [ "opentelemetry.instrumentation.botocore" ]; + + meta = opentelemetry-instrumentation.meta // { + homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-botocore"; + description = "Botocore instrumentation for OpenTelemetry"; + }; +} diff --git a/pkgs/development/python-modules/opentelemetry-propagator-aws-xray/default.nix b/pkgs/development/python-modules/opentelemetry-propagator-aws-xray/default.nix new file mode 100644 index 000000000000..47d67c2b100a --- /dev/null +++ b/pkgs/development/python-modules/opentelemetry-propagator-aws-xray/default.nix @@ -0,0 +1,42 @@ +{ + lib, + buildPythonPackage, + hatchling, + opentelemetry-api, + opentelemetry-instrumentation, + opentelemetry-semantic-conventions, + opentelemetry-instrumentation-botocore, + opentelemetry-test-utils, + pytestCheckHook, + requests, + pytest-benchmark, +}: + +buildPythonPackage rec { + inherit (opentelemetry-instrumentation) version src; + pname = "opentelemetry-propagator-aws-xray"; + pyproject = true; + + sourceRoot = "${opentelemetry-instrumentation.src.name}/propagator/opentelemetry-propagator-aws-xray"; + + build-system = [ hatchling ]; + + dependencies = [ opentelemetry-api ]; + + nativeCheckInputs = [ + opentelemetry-test-utils + pytestCheckHook + ]; + + checkInputs = [ + pytest-benchmark + requests + ]; + + pythonImportsCheck = [ "opentelemetry.propagators.aws" ]; + + meta = opentelemetry-instrumentation.meta // { + homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/propagator/opentelemetry-propagator-aws-xray"; + description = "AWS X-Ray Propagator for OpenTelemetry"; + }; +} diff --git a/pkgs/development/python-modules/plotly/default.nix b/pkgs/development/python-modules/plotly/default.nix index 826578f03c3a..ab177fa01b32 100644 --- a/pkgs/development/python-modules/plotly/default.nix +++ b/pkgs/development/python-modules/plotly/default.nix @@ -14,14 +14,14 @@ xarray, pillow, scipy, - psutil, statsmodels, ipython, ipywidgets, which, - orca, nbformat, scikit-image, + orca, + psutil, }: buildPythonPackage rec { @@ -53,6 +53,15 @@ buildPythonPackage rec { kaleido ]; + # packages/python/plotly/optional-requirements.txt + optional-dependencies = { + orca = [ + orca + requests + psutil + ]; + }; + nativeCheckInputs = [ pytestCheckHook pandas @@ -61,69 +70,39 @@ buildPythonPackage rec { xarray pillow scipy - psutil statsmodels ipython ipywidgets which - orca nbformat scikit-image ]; - # the check inputs are broken on darwin - doCheck = !stdenv.hostPlatform.isDarwin; - disabledTests = [ - # FAILED plotly/matplotlylib/mplexporter/tests/test_basic.py::test_legend_dots - AssertionError: assert '3' == '2' + # failed pinning test, sensitive to dep versions "test_legend_dots" - # FAILED plotly/matplotlylib/mplexporter/tests/test_utils.py::test_linestyle - AssertionError: "test_linestyle" - # FAILED plotly/tests/test_io/test_to_from_plotly_json.py::test_sanitize_json[auto] - KeyError: 'template' - # FAILED plotly/tests/test_io/test_to_from_plotly_json.py::test_sanitize_json[json] - KeyError: 'template' + # test bug, i assume sensitive to dep versions "test_sanitize_json" - # FAILED plotly/tests/test_orca/test_orca_server.py::test_validate_orca - ValueError: - "test_validate_orca" - # FAILED plotly/tests/test_orca/test_orca_server.py::test_orca_executable_path - ValueError: - "test_orca_executable_path" - # FAILED plotly/tests/test_orca/test_orca_server.py::test_orca_version_number - ValueError: - "test_orca_version_number" - # FAILED plotly/tests/test_orca/test_orca_server.py::test_ensure_orca_ping_and_proc - ValueError: - "test_ensure_orca_ping_and_proc" - # FAILED plotly/tests/test_orca/test_orca_server.py::test_server_timeout_shutdown - ValueError: - "test_server_timeout_shutdown" - # FAILED plotly/tests/test_orca/test_orca_server.py::test_external_server_url - ValueError: - "test_external_server_url" - # FAILED plotly/tests/test_orca/test_to_image.py::test_simple_to_image[eps] - ValueError: - "test_simple_to_image" - # FAILED plotly/tests/test_orca/test_to_image.py::test_to_image_default[eps] - ValueError: - "test_to_image_default" - # FAILED plotly/tests/test_orca/test_to_image.py::test_write_image_string[eps] - ValueError: - "test_write_image_string" - # FAILED plotly/tests/test_orca/test_to_image.py::test_write_image_writeable[eps] - ValueError: - "test_write_image_writeable" - # FAILED plotly/tests/test_orca/test_to_image.py::test_write_image_string_format_inference[eps] - ValueError: - "test_write_image_string_format_inference" - # FAILED plotly/tests/test_orca/test_to_image.py::test_write_image_string_bad_extension_failure - assert 'must be specified as one of the followi... - "test_write_image_string_bad_extension_failure" - # FAILED plotly/tests/test_orca/test_to_image.py::test_write_image_string_bad_extension_override - ValueError: - "test_write_image_string_bad_extension_override" - # FAILED plotly/tests/test_orca/test_to_image.py::test_topojson_fig_to_image[eps] - ValueError: - "test_topojson_fig_to_image" - # FAILED plotly/tests/test_orca/test_to_image.py::test_latex_fig_to_image[eps] - ValueError: - "test_latex_fig_to_image" - # FAILED plotly/tests/test_orca/test_to_image.py::test_problematic_environment_variables[eps] - ValueError: - "test_problematic_environment_variables" - # FAILED plotly/tests/test_orca/test_to_image.py::test_invalid_figure_json - assert 'Invalid' in "\nThe orca executable is required in order to e... - "test_invalid_figure_json" - # FAILED test_init/test_dependencies_not_imported.py::test_dependencies_not_imported - AssertionError: assert 'plotly' not in {'IPython': - "test_dependencies_not_imported" - # FAILED test_init/test_lazy_imports.py::test_lazy_imports - AssertionError: assert 'plotly' not in {'IPython': makeWrapper $out/mat/MemoryAnalyzer $out/bin/eclipse-mat \ --prefix PATH : ${jdk}/bin \ - --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ glib gtk3 libXtst webkitgtk ])} \ + --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ glib gtk3 libXtst webkitgtk_4_0 ])} \ --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \ --add-flags "-configuration \$HOME/.eclipse-mat/''${version}/configuration" @@ -91,7 +91,7 @@ stdenv.mkDerivation rec { libXtst zlib shared-mime-info - webkitgtk + webkitgtk_4_0 ]; dontBuild = true; diff --git a/pkgs/development/tools/gptcommit/0001-update-time.patch b/pkgs/development/tools/gptcommit/0001-update-time.patch new file mode 100644 index 000000000000..eb6f9692f401 --- /dev/null +++ b/pkgs/development/tools/gptcommit/0001-update-time.patch @@ -0,0 +1,60 @@ +From 203afecca3717787628eab30b550ba25389cb188 Mon Sep 17 00:00:00 2001 +From: Sander +Date: Sat, 12 Oct 2024 12:26:51 +0000 +Subject: [PATCH] deps: bump time to fix compilation error + +--- + Cargo.lock | 16 ++++++++++++---- + 1 file changed, 12 insertions(+), 4 deletions(-) + +diff --git a/Cargo.lock b/Cargo.lock +index 9ce33e5..785764d 100644 +--- a/Cargo.lock ++++ b/Cargo.lock +@@ -1420,6 +1420,12 @@ dependencies = [ + "minimal-lexical", + ] + ++[[package]] ++name = "num-conv" ++version = "0.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" ++ + [[package]] + name = "num_cpus" + version = "1.16.0" +@@ -2219,13 +2225,14 @@ dependencies = [ + + [[package]] + name = "time" +-version = "0.3.31" ++version = "0.3.36" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "f657ba42c3f86e7680e53c8cd3af8abbe56b5491790b46e22e19c0d57463583e" ++checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" + dependencies = [ + "deranged", + "itoa", + "libc", ++ "num-conv", + "num_threads", + "powerfmt", + "serde", +@@ -2241,10 +2248,11 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + + [[package]] + name = "time-macros" +-version = "0.2.16" ++version = "0.2.18" + source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "26197e33420244aeb70c3e8c78376ca46571bc4e701e4791c2cd9f57dcb3a43f" ++checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" + dependencies = [ ++ "num-conv", + "time-core", + ] + +-- +2.44.1 + diff --git a/pkgs/development/tools/gptcommit/default.nix b/pkgs/development/tools/gptcommit/default.nix index 2c97533a2696..9aabb2ef5058 100644 --- a/pkgs/development/tools/gptcommit/default.nix +++ b/pkgs/development/tools/gptcommit/default.nix @@ -23,7 +23,13 @@ rustPlatform.buildRustPackage { hash = "sha256-JhMkK2zw3VL9o7j8DJmjY/im+GyCjfV2TJI3GDo8T8c="; }; - cargoHash = "sha256-ye9MAfG3m24ofV95Kr+KTP4FEqfrsm3aTQ464hG9q08="; + cargoPatches = [ + # Bump `time` and friends to fix compilation with rust 1.80. + # See https://github.com/NixOS/nixpkgs/issues/332957 + ./0001-update-time.patch + ]; + + cargoHash = "sha256-0UAttCCbSH91Dn7IvEX+Klp/bSYZM4rml7/dD3a208A="; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/development/tools/wails/default.nix b/pkgs/development/tools/wails/default.nix index de73c6b63764..4ae5a8bd63a5 100644 --- a/pkgs/development/tools/wails/default.nix +++ b/pkgs/development/tools/wails/default.nix @@ -9,7 +9,7 @@ , zlib # Linux specific dependencies , gtk3 -, webkitgtk +, webkitgtk_4_0 }: buildGoModule rec { @@ -48,7 +48,7 @@ buildGoModule rec { nodejs ] ++ lib.optionals stdenv.hostPlatform.isLinux [ gtk3 - webkitgtk + webkitgtk_4_0 ]; ldflags = [ @@ -60,7 +60,7 @@ buildGoModule rec { postFixup = '' wrapProgram $out/bin/wails \ --prefix PATH : ${lib.makeBinPath [ pkg-config go stdenv.cc nodejs ]} \ - --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath (lib.optionals stdenv.hostPlatform.isLinux [ gtk3 webkitgtk ])}" \ + --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath (lib.optionals stdenv.hostPlatform.isLinux [ gtk3 webkitgtk_4_0 ])}" \ --set PKG_CONFIG_PATH "$PKG_CONFIG_PATH" \ --set CGO_LDFLAGS "-L${lib.makeLibraryPath [ zlib ]}" ''; diff --git a/pkgs/development/web/cog/default.nix b/pkgs/development/web/cog/default.nix index e9352822b3bb..7de90857c06e 100644 --- a/pkgs/development/web/cog/default.nix +++ b/pkgs/development/web/cog/default.nix @@ -8,7 +8,7 @@ , libwpe , libwpe-fdo , glib-networking -, webkitgtk +, webkitgtk_4_0 , makeWrapper , wrapGAppsHook3 , adwaita-icon-theme @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { wayland libwpe libwpe-fdo - webkitgtk + webkitgtk_4_0 glib-networking gdk-pixbuf adwaita-icon-theme diff --git a/pkgs/games/gamehub/default.nix b/pkgs/games/gamehub/default.nix index 3bfbe71c3c0e..4367de30f5d9 100644 --- a/pkgs/games/gamehub/default.nix +++ b/pkgs/games/gamehub/default.nix @@ -13,7 +13,7 @@ , libsoup , json-glib , sqlite -, webkitgtk +, webkitgtk_4_0 , libmanette , libXtst , wrapGAppsHook3 @@ -49,7 +49,7 @@ stdenv.mkDerivation rec { libsoup libXtst sqlite - webkitgtk + webkitgtk_4_0 ]; meta = with lib; { diff --git a/pkgs/misc/uboot/default.nix b/pkgs/misc/uboot/default.nix index 351c5788584a..1983157df1f6 100644 --- a/pkgs/misc/uboot/default.nix +++ b/pkgs/misc/uboot/default.nix @@ -28,10 +28,10 @@ }: let - defaultVersion = "2024.07"; + defaultVersion = "2024.10"; defaultSrc = fetchurl { url = "https://ftp.denx.de/pub/u-boot/u-boot-${defaultVersion}.tar.bz2"; - hash = "sha256-9ZHamrkO89az0XN2bQ3f+QxO1zMGgIl0hhF985DYPI8="; + hash = "sha256-so2vSsF+QxVjYweL9RApdYQTf231D87ZsS3zT2GpL7A="; }; # Dependencies for the tools need to be included as either native or cross, @@ -212,6 +212,14 @@ in { filesToInstall = ["u-boot-with-spl.kwb"]; }; + ubootCM3588NAS = buildUBoot { + defconfig = "cm3588-nas-rk3588_defconfig"; + extraMeta.platforms = [ "aarch64-linux" ]; + BL31 = "${armTrustedFirmwareRK3588}/bl31.elf"; + ROCKCHIP_TPL = rkbin.TPL_RK3588; + filesToInstall = [ "u-boot.itb" "idbloader.img" "u-boot-rockchip.bin" ]; + }; + ubootCubieboard2 = buildUBoot { defconfig = "Cubieboard2_defconfig"; extraMeta.platforms = ["armv7l-linux"]; @@ -442,6 +450,14 @@ in { filesToInstall = ["u-boot-sunxi-with-spl.bin"]; }; + ubootOrangePi3B = buildUBoot { + defconfig = "orangepi-3b-rk3566_defconfig"; + extraMeta.platforms = ["aarch64-linux"]; + ROCKCHIP_TPL = rkbin.TPL_RK3568; + BL31 = rkbin.BL31_RK3568; + filesToInstall = [ "u-boot.itb" "idbloader.img" "u-boot-rockchip.bin" "u-boot-rockchip-spi.bin" ]; + }; + ubootPcduino3Nano = buildUBoot { defconfig = "Linksprite_pcDuino3_Nano_defconfig"; extraMeta.platforms = ["armv7l-linux"]; diff --git a/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix b/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix index 4c3bede4fba2..873e0c971d67 100644 --- a/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix +++ b/pkgs/os-specific/linux/firmware/ipu6-camera-bins/default.nix @@ -6,15 +6,15 @@ , zlib }: -stdenv.mkDerivation (finalAttrs: { +stdenv.mkDerivation (finalAttrs: rec { pname = "ipu6-camera-bins"; - version = "unstable-2023-10-26"; + version = "unstable-2024-09-27"; src = fetchFromGitHub { - owner = "intel"; repo = "ipu6-camera-bins"; - rev = "af5ba0cb4a763569ac7514635013e9d870040bcf"; - hash = "sha256-y0pT5M7AKACbquQWLZPYpTPXRC5hipLNL61nhs+cst4="; + owner = "intel"; + rev = "98ca6f2a54d20f171628055938619972514f7a07"; + hash = "sha256-DAjAzHMqX41mrfQVpDUJLw4Zjb9pz6Uy3TJjTGIkd6o="; }; nativeBuildInputs = [ @@ -33,13 +33,14 @@ stdenv.mkDerivation (finalAttrs: { include \ $out/ - install -m 0644 -D LICENSE $out/share/doc/LICENSE + # There is no LICENSE file in the src + # install -m 0644 -D LICENSE $out/share/doc/LICENSE runHook postInstall ''; postFixup = '' - for pcfile in $out/lib/*/pkgconfig/*.pc; do + for pcfile in $out/lib/pkgconfig/*.pc; do substituteInPlace $pcfile \ --replace 'prefix=/usr' "prefix=$out" done diff --git a/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix b/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix index 9674cea2226f..931c85470821 100644 --- a/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix +++ b/pkgs/os-specific/linux/firmware/ivsc-firmware/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation { pname = "ivsc-firmware"; - version = "unstable-2023-08-11"; + version = "unstable-2024-06-14"; src = fetchFromGitHub { owner = "intel"; repo = "ivsc-firmware"; - rev = "10c214fea5560060d387fbd2fb8a1af329cb6232"; - hash = "sha256-kEoA0yeGXuuB+jlMIhNm+SBljH+Ru7zt3PzGb+EPBPw="; + rev = "74a01d1208a352ed85d76f959c68200af4ead918"; + hash = "sha256-kHYfeftMtoOsOtVN6+XoDMDHP7uTEztbvjQLpCnKCh0="; }; dontBuild = true; diff --git a/pkgs/os-specific/linux/ipu6-drivers/default.nix b/pkgs/os-specific/linux/ipu6-drivers/default.nix index 304f27dfb43c..d6aafa53a52f 100644 --- a/pkgs/os-specific/linux/ipu6-drivers/default.nix +++ b/pkgs/os-specific/linux/ipu6-drivers/default.nix @@ -5,17 +5,19 @@ , kernel }: -stdenv.mkDerivation { +stdenv.mkDerivation rec { pname = "ipu6-drivers"; - version = "unstable-2023-11-24"; + version = "unstable-2024-10-10"; src = fetchFromGitHub { owner = "intel"; repo = "ipu6-drivers"; - rev = "07f0612eabfdc31df36f5e316a9eae115807804f"; - hash = "sha256-8JRZG6IKJT0qtoqJHm8641kSQMLc4Z+DRzK6FpL9Euk="; + rev = "118952d49ec598f56add50d93fa7bc3ac4a05643"; + hash = "sha256-xdMwINoKrdRHCPMpdZQn86ATi1dAXncMU39LLXS16mc="; }; + patches = [ "${src}/patches/0001-v6.10-IPU6-headers-used-by-PSYS.patch" ]; + postPatch = '' cp --no-preserve=mode --recursive --verbose \ ${ivsc-driver.src}/backport-include \ @@ -47,7 +49,7 @@ stdenv.mkDerivation { license = lib.licenses.gpl2Only; maintainers = [ ]; platforms = [ "x86_64-linux" ]; - # requires 6.1.7 https://github.com/intel/ipu6-drivers/pull/84 - broken = kernel.kernelOlder "6.1.7"; + # requires 6.10 + broken = kernel.kernelOlder "6.10"; }; } diff --git a/pkgs/os-specific/linux/ivsc-driver/default.nix b/pkgs/os-specific/linux/ivsc-driver/default.nix index 74ad354a984f..d9fa513ede87 100644 --- a/pkgs/os-specific/linux/ivsc-driver/default.nix +++ b/pkgs/os-specific/linux/ivsc-driver/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation { pname = "ivsc-driver"; - version = "unstable-2023-11-09"; + version = "unstable-2024-09-18"; src = fetchFromGitHub { owner = "intel"; repo = "ivsc-driver"; - rev = "73a044d9633212fac54ea96cdd882ff5ab40573e"; - hash = "sha256-vE5pOtVqjiWovlUMSEoBKTk/qvs8K8T5oY2r7njh0wQ="; + rev = "10f440febe87419d5c82d8fe48580319ea135b54"; + hash = "sha256-jc+8geVquRtaZeIOtadCjY9F162Rb05ptE7dk8kuof0="; }; nativeBuildInputs = kernel.moduleBuildDependencies; diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index ee3862052135..8051876960b8 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -34,7 +34,11 @@ let # Currently not enabling Rust by default, as upstream requires rustc 1.81 defaultRust = false; - withRust = (forceRust || defaultRust) && kernelSupportsRust; + withRust = + assert lib.assertMsg (!(forceRust && !kernelSupportsRust)) '' + Kernels below 6.7 (the kernel being built is ${version}) don't support Rust. + ''; + (forceRust || defaultRust) && kernelSupportsRust; options = { diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix index 5544409a74d6..f69de86fd1a6 100644 --- a/pkgs/os-specific/linux/kernel/manual-config.nix +++ b/pkgs/os-specific/linux/kernel/manual-config.nix @@ -396,6 +396,9 @@ let requiredSystemFeatures = [ "big-parallel" ]; meta = { + # https://github.com/NixOS/nixpkgs/pull/345534#issuecomment-2391238381 + broken = withRust && lib.versionOlder version "6.12"; + description = "The Linux kernel" + (if kernelPatches == [] then "" else diff --git a/pkgs/os-specific/linux/zenmonitor/default.nix b/pkgs/os-specific/linux/zenmonitor/default.nix index bf9ddbc5fec5..837785c4d5a2 100644 --- a/pkgs/os-specific/linux/zenmonitor/default.nix +++ b/pkgs/os-specific/linux/zenmonitor/default.nix @@ -18,9 +18,9 @@ stdenv.mkDerivation rec { makeFlags = [ "PREFIX=${placeholder "out"}" ]; meta = with lib; { + inherit (src.meta) homepage; description = "Monitoring software for AMD Zen-based CPUs"; mainProgram = "zenmonitor"; - homepage = "https://github.com/Ta180m/zenmonitor3"; license = licenses.mit; platforms = [ "i686-linux" "x86_64-linux" ]; maintainers = with maintainers; [ alexbakker artturin ]; diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index a593d677fb16..58dbbd5cc0a1 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2,7 +2,7 @@ # Do not edit! { - version = "2024.10.1"; + version = "2024.10.2"; components = { "3_day_blinds" = ps: with ps; [ ]; @@ -2414,7 +2414,8 @@ "lirc" = ps: with ps; [ ]; # missing inputs: python-lirc "litejet" = ps: with ps; [ - ]; # missing inputs: pylitejet + pylitejet + ]; "litterrobot" = ps: with ps; [ pylitterbot ]; @@ -5404,6 +5405,7 @@ "light" "linear_garage_door" "linkplay" + "litejet" "litterrobot" "livisi" "local_calendar" diff --git a/pkgs/servers/home-assistant/custom-components/mass/default.nix b/pkgs/servers/home-assistant/custom-components/mass/default.nix index 2e0d893d6056..7b8b85253291 100644 --- a/pkgs/servers/home-assistant/custom-components/mass/default.nix +++ b/pkgs/servers/home-assistant/custom-components/mass/default.nix @@ -13,13 +13,13 @@ buildHomeAssistantComponent rec { owner = "music-assistant"; domain = "mass"; - version = "2024.8.1"; + version = "2024.9.1"; src = fetchFromGitHub { owner = "music-assistant"; repo = "hass-music-assistant"; rev = version; - hash = "sha256-lrJx2wsVY0aJ+iVBxbZryC6QRvaXdxjBsTma/4ptl4o="; + hash = "sha256-8YZ77SYv8hDsbKUjxPZnuAycLE8RkIbAq3HXk+OyAmM="; }; dependencies = [ diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 4baaeb229d1f..6fc00b593afc 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -408,7 +408,7 @@ let extraBuildInputs = extraPackages python.pkgs; # Don't forget to run update-component-packages.py after updating - hassVersion = "2024.10.1"; + hassVersion = "2024.10.2"; in python.pkgs.buildPythonApplication rec { pname = "homeassistant"; @@ -426,13 +426,13 @@ in python.pkgs.buildPythonApplication rec { owner = "home-assistant"; repo = "core"; rev = "refs/tags/${version}"; - hash = "sha256-yEClfdMyN0E+eelSFESVbVDzvZu/rn4qBCjD5L/L6Is="; + hash = "sha256-YHK6SJJok1FGtFfD2C2QFCtWzNK1ZiOGZe/kbQFkMvU="; }; # Secondary source is pypi sdist for translations sdist = fetchPypi { inherit pname version; - hash = "sha256-M2vuqHoLNVizoCXnQ4RRQ+//TgtoJxJaQFCz9H7UnVs="; + hash = "sha256-mVKokL6EcvLMvOEKIw1dlEQeXaxMLO8ExMOzw6r1eCs="; }; build-system = with python.pkgs; [ diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix index d56630451d99..70c92b8bcec7 100644 --- a/pkgs/servers/home-assistant/frontend.nix +++ b/pkgs/servers/home-assistant/frontend.nix @@ -4,7 +4,7 @@ buildPythonPackage rec { # the frontend version corresponding to a specific home-assistant version can be found here # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json pname = "home-assistant-frontend"; - version = "20241002.2"; + version = "20241002.3"; format = "wheel"; src = fetchPypi { @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "home_assistant_frontend"; dist = "py3"; python = "py3"; - hash = "sha256-9NqPBWcNM288ATdKH+Em0e9g2V2497YJLt8Wx5OL4+k="; + hash = "sha256-O1Yb5bCaKoS/Owwb0I0bF2neN2YTOnu28ruVA1cnFzk="; }; # there is nothing to strip in this package diff --git a/pkgs/servers/home-assistant/pytest-homeassistant-custom-component.nix b/pkgs/servers/home-assistant/pytest-homeassistant-custom-component.nix index 286e7dade010..499b4b823ea8 100644 --- a/pkgs/servers/home-assistant/pytest-homeassistant-custom-component.nix +++ b/pkgs/servers/home-assistant/pytest-homeassistant-custom-component.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "pytest-homeassistant-custom-component"; - version = "0.13.154"; + version = "0.13.172"; pyproject = true; disabled = pythonOlder "3.12"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "MatthewFlamm"; repo = "pytest-homeassistant-custom-component"; rev = "refs/tags/${version}"; - hash = "sha256-BmZ12amsa4BzesaxGMdQ2VY2FM5ZfgU32plAl4mG+tE="; + hash = "sha256-azTnNgbdj7AMBLTz+y5BLeQDKUqA5wkxFMG3g30f6wo="; }; build-system = [ setuptools ]; diff --git a/pkgs/servers/home-assistant/stubs.nix b/pkgs/servers/home-assistant/stubs.nix index c99bedad54a6..25f33e9fb321 100644 --- a/pkgs/servers/home-assistant/stubs.nix +++ b/pkgs/servers/home-assistant/stubs.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "homeassistant-stubs"; - version = "2024.10.1"; + version = "2024.10.2"; pyproject = true; disabled = python.version != home-assistant.python.version; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "KapJI"; repo = "homeassistant-stubs"; rev = "refs/tags/${version}"; - hash = "sha256-uPB9ge7oUjGwKKvg2V+Yf7l2KiwgLLIBH/CKP2erAHY="; + hash = "sha256-6aFZiJKPuUdnC3YzSHyJgn2iTHfP8MCwx17I7uxVTNg="; }; build-system = [ diff --git a/pkgs/servers/mastodon/default.nix b/pkgs/servers/mastodon/default.nix index 9bc4dd29d630..979dd74635c2 100644 --- a/pkgs/servers/mastodon/default.nix +++ b/pkgs/servers/mastodon/default.nix @@ -1,7 +1,6 @@ { lib, stdenv, nodejs-slim, bundlerEnv, nixosTests -, yarn, callPackage, ruby, writeShellScript -, fetchYarnDeps, fixup-yarn-lock -, brotli +, yarn-berry, callPackage, ruby, writeShellScript +, brotli, python3 # Allow building a fork or custom version of Mastodon: , pname ? "mastodon" @@ -28,12 +27,12 @@ stdenv.mkDerivation rec { pname = "${pname}-modules"; inherit src version; - yarnOfflineCache = fetchYarnDeps { - yarnLock = "${src}/yarn.lock"; + yarnOfflineCache = callPackage ./yarn.nix { + inherit version src; hash = yarnHash; }; - nativeBuildInputs = [ fixup-yarn-lock nodejs-slim yarn mastodonGems mastodonGems.wrappedRuby brotli ]; + nativeBuildInputs = [ nodejs-slim yarn-berry mastodonGems mastodonGems.wrappedRuby brotli python3 ]; RAILS_ENV = "production"; NODE_ENV = "production"; @@ -42,29 +41,33 @@ stdenv.mkDerivation rec { runHook preBuild export HOME=$PWD - fixup-yarn-lock ~/yarn.lock - yarn config --offline set yarn-offline-mirror $yarnOfflineCache - yarn install --offline --frozen-lockfile --ignore-engines --ignore-scripts --no-progress + export YARN_ENABLE_TELEMETRY=0 + export npm_config_nodedir=${nodejs-slim} + export SECRET_KEY_BASE_DUMMY=1 + + mkdir -p ~/.yarn/berry + ln -s $yarnOfflineCache ~/.yarn/berry/cache + + yarn install --immutable --immutable-cache patchShebangs ~/bin patchShebangs ~/node_modules - # skip running yarn install - rm -rf ~/bin/yarn + bundle exec rails assets:precompile - OTP_SECRET=precompile_placeholder SECRET_KEY_BASE=precompile_placeholder \ - rails assets:precompile - yarn cache clean --offline + yarn cache clean --all rm -rf ~/node_modules/.cache + # Remove execute permissions + find ~/public/assets -type f ! -perm 0555 \ + -exec chmod 0444 {} ';' + # Create missing static gzip and brotli files - gzip --best --keep ~/public/assets/500.html - gzip --best --keep ~/public/packs/report.html - find ~/public/assets -maxdepth 1 -type f -name '.*.json' \ - -exec gzip --best --keep --force {} ';' - brotli --best --keep ~/public/packs/report.html - find ~/public/assets -type f -regextype posix-extended -iregex '.*\.(css|js|json|html)' \ + find ~/public/assets -type f -regextype posix-extended -iregex '.*\.(css|html|js|json|svg)' \ + -exec gzip --best --keep --force {} ';' \ -exec brotli --best --keep {} ';' + gzip --best --keep ~/public/packs/report.html + brotli --best --keep ~/public/packs/report.html runHook postBuild ''; @@ -101,13 +104,14 @@ stdenv.mkDerivation rec { done # Remove execute permissions - chmod 0444 public/emoji/*.svg + find public/emoji -type f ! -perm 0555 \ + -exec chmod 0444 {} ';' # Create missing static gzip and brotli files - find public -maxdepth 1 -type f -regextype posix-extended -iregex '.*\.(css|js|svg|txt|xml)' \ + find public -maxdepth 1 -type f -regextype posix-extended -iregex '.*\.(js|txt)' \ -exec gzip --best --keep --force {} ';' \ -exec brotli --best --keep {} ';' - find public/emoji -type f -name '.*.svg' \ + find public/emoji -type f -name '*.svg' \ -exec gzip --best --keep --force {} ';' \ -exec brotli --best --keep {} ';' ln -s assets/500.html.gz public/500.html.gz @@ -133,7 +137,8 @@ stdenv.mkDerivation rec { runHook preInstall mkdir -p $out - cp -r * $out/ + mv .{env*,ruby*} $out/ + mv * $out/ ln -s ${run-streaming} $out/run-streaming.sh runHook postInstall diff --git a/pkgs/servers/mastodon/gemset.nix b/pkgs/servers/mastodon/gemset.nix index 20be6e58e3d8..429393553e26 100644 --- a/pkgs/servers/mastodon/gemset.nix +++ b/pkgs/servers/mastodon/gemset.nix @@ -1,14 +1,14 @@ { actioncable = { - dependencies = ["actionpack" "activesupport" "nio4r" "websocket-driver"]; + dependencies = ["actionpack" "activesupport" "nio4r" "websocket-driver" "zeitwerk"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1c46q4ykf8cqcpzad7zhkrxjhvf92sil0185zvxwzhj95p1zp5vr"; + sha256 = "1g4g7r68h30iw7spypc7hvvd7w1vx05mysmijdy6vkr947hxyhw4"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; actionmailbox = { dependencies = ["actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail" "net-imap" "net-pop" "net-smtp"]; @@ -16,10 +16,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0x100vq4rf2c5ndz8ai00hb5gsb9ax2xqc89dsfzzhxbpa9gs9ik"; + sha256 = "0vzkwsc7k43v5irpydrzrh4v9dmwikj9xcdafz21kvwh8903pgih"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; actionmailer = { dependencies = ["actionpack" "actionview" "activejob" "activesupport" "mail" "net-imap" "net-pop" "net-smtp" "rails-dom-testing"]; @@ -27,21 +27,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1hds7b6n7vsa64fmma7wl7x9mxscr89myfb13vxni5fcns1agwzr"; + sha256 = "09abzaywpzwnbkpdn8g340pi584k8lpcqzi63m7wahyyyairdqza"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; actionpack = { - dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"]; + dependencies = ["actionview" "activesupport" "nokogiri" "racc" "rack" "rack-session" "rack-test" "rails-dom-testing" "rails-html-sanitizer"]; groups = ["default" "development" "pam_authentication" "production" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "18k05a55i0xgyv60lx0m1psnyncn935j76ivbp9hssqpij00jj1f"; + sha256 = "0c72nzrs3jjag7xbawy8hzzxggmpfp4r23y6viril2xzxffqgy7m"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; actiontext = { dependencies = ["actionpack" "activerecord" "activestorage" "activesupport" "globalid" "nokogiri"]; @@ -49,10 +49,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1g54g1kjyrwv9g592gxfz7z6ksmj916l1cgkxk54zhywxf6gpn0y"; + sha256 = "14lvvaq994hihwb63jvdxbq03i5wgfk6llkibzsq1v0csphby1sx"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; actionview = { dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"]; @@ -60,10 +60,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "03rfynhj40270dqhkm4cyaphzb37b4fdiaqh9grvcfq760vx7ha5"; + sha256 = "0lrrb4r6p2wrdbjphkkd482h10hri77d1aj1ddhz3ynvbrkg0ay0"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; active_model_serializers = { dependencies = ["actionpack" "activemodel" "case_transform" "jsonapi-renderer"]; @@ -71,10 +71,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0xdp7cpj3yj3wl4vj0nqq44kzjavlxi1wq3cf9zp0whkir0ym0gy"; + sha256 = "13n1ipn0dg3k852xhfzdvkr1ljq76xvfnm79qzdix2ishiy1gphl"; type = "gem"; }; - version = "0.10.13"; + version = "0.10.14"; }; activejob = { dependencies = ["activesupport" "globalid"]; @@ -82,10 +82,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1b54didwsg5p8wn30qjwspzh97w7g07hrsdzr7wdrdly4zii7sr1"; + sha256 = "1xhb7hy7dxx5qy8hahdf2gpr65n0xisxrfapzd2g8czb59ammxk5"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; activemodel = { dependencies = ["activesupport"]; @@ -93,43 +93,43 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1mi5cppdmkzgr2z135ibs0bq71qndbnip0vfflz1n4j4hqnhjkpg"; + sha256 = "1dhhsiv2hk1jfqdxx9qqlmzhvshqjs9kqh13gl1jyzfhzmd0b38q"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; activerecord = { - dependencies = ["activemodel" "activesupport"]; + dependencies = ["activemodel" "activesupport" "timeout"]; groups = ["default" "development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1pkv0jvvjc3grr0rvxni9b3j3hb22jaj0h70g476h9w54p0aljcb"; + sha256 = "1p9cch94h3wj71mldyk85657r4cpr9p3z55bwxqvpiby2fn6svc3"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; activestorage = { - dependencies = ["actionpack" "activejob" "activerecord" "activesupport" "marcel" "mini_mime"]; + dependencies = ["actionpack" "activejob" "activerecord" "activesupport" "marcel"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1qdqx20dqkg7iwzb8q5148x5sl9mr2063hxzy4i7i94af2d2vz6b"; + sha256 = "0ihbywjdp57mcnbx2150rpsx79f3pfv313d1zwsz0qwmzdcvpsr3"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; activesupport = { - dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"]; + dependencies = ["base64" "bigdecimal" "concurrent-ruby" "connection_pool" "drb" "i18n" "minitest" "mutex_m" "tzinfo"]; groups = ["default" "development" "pam_authentication" "production" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "15z11983ws5svibg6rky9k2mgd4d4chnvddyxfpgn81b81q70139"; + sha256 = "0cm2v3zkr58ljr1fswf67lkm8zwxr100qfdaxzzv46jlwmy1m3is"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; addressable = { dependencies = ["public_suffix"]; @@ -137,10 +137,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "05r1fwy487klqkya7vzia8hnklcxy4vr92m9dmni3prfwk6zpw33"; + sha256 = "0cl2qpvwiffym62z991ynks7imsm87qmgxf0yfsmlwzkgi9qcaa6"; type = "gem"; }; - version = "2.8.5"; + version = "2.8.7"; }; aes_key_wrap = { groups = ["default"]; @@ -152,17 +152,6 @@ }; version = "1.1.0"; }; - airbrussh = { - dependencies = ["sshkit"]; - groups = ["default" "development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0x55y3ynkda76pwnsvrrjlvxfcc7yn1irad8radll9c9cif41jqv"; - type = "gem"; - }; - version = "1.4.1"; - }; android_key_attestation = { groups = ["default"]; platforms = []; @@ -194,26 +183,15 @@ }; version = "2.4.2"; }; - attr_encrypted = { - dependencies = ["encryptor"]; - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "034x6mbrv9apd83v99v9pm8vl3d17w5bbwws26gr4wv95fylmgnc"; - type = "gem"; - }; - version = "4.0.0"; - }; attr_required = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1g22axmi2rhhy7w8c3x6gppsawxqavbrnxpnmphh22fk7cwi0kh2"; + sha256 = "16fbwr6nmsn97n0a6k1nwbpyz08zpinhd6g7196lz1syndbgrszh"; type = "gem"; }; - version = "1.0.1"; + version = "1.0.2"; }; awrence = { groups = ["default"]; @@ -230,20 +208,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1pyis1nvnbjxk12a43xvgj2gv0mvp4cnkc1gzw0v1018r61399gz"; + sha256 = "0gvdg4yx4p9av2glmp7vsxhs0n8fj1ga9kq2xdb8f95j7b04qhzi"; type = "gem"; }; - version = "1.2.0"; + version = "1.3.0"; }; aws-partitions = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0m2kha6ip4ynhvl1l8z4vg0j96ngq4f2v6jl4j2y27m2kzmgcxz5"; + sha256 = "1pm4dxz3w1f5ksiid7bxdaxhz0rklci3zfyb4v1f6j9psa11cwh1"; type = "gem"; }; - version = "1.809.0"; + version = "1.978.0"; }; aws-sdk-core = { dependencies = ["aws-eventstream" "aws-partitions" "aws-sigv4" "jmespath"]; @@ -251,10 +229,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0xjw9cf6ldbw50xi5ric8d63r8kybpsvaqxh2v6n7374hfady73i"; + sha256 = "0hm87r5ph1mi7n6b5y17hc54x38insbkgbflr7viqigbwy2slw3v"; type = "gem"; }; - version = "3.181.0"; + version = "3.209.0"; }; aws-sdk-kms = { dependencies = ["aws-sdk-core" "aws-sigv4"]; @@ -262,10 +240,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1zr5w2cjd895abyn7y5gifhq37bxcinssvdx2l1qmlkllbdxbwq0"; + sha256 = "1acx3bhqkhni3kbl7xnjdgy8raq5y7p0zyniq61bsihzkwcj7imh"; type = "gem"; }; - version = "1.71.0"; + version = "1.94.0"; }; aws-sdk-s3 = { dependencies = ["aws-sdk-core" "aws-sdk-kms" "aws-sigv4"]; @@ -273,10 +251,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0yymj15nwnvam95lw5fxwxx7b6xm4hkj8z7byzvjmx9aji1x245m"; + sha256 = "0zpww3lxpjg8smmznz2nbx5hrpnkzflbasllxjwprkqr56rrrjap"; type = "gem"; }; - version = "1.133.0"; + version = "1.166.0"; }; aws-sigv4 = { dependencies = ["aws-eventstream"]; @@ -284,10 +262,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0z889c4c1w7wsjm3szg64ay5j51kjl4pdf94nlr1yks2rlanm7na"; + sha256 = "176zh13m1vhwgys0drlqiw79ljmmx84vva036shsb7rzr4yi36qm"; type = "gem"; }; - version = "1.6.0"; + version = "1.10.0"; }; azure-storage-blob = { dependencies = ["azure-storage-common" "nokogiri"]; @@ -312,14 +290,14 @@ version = "2.0.4"; }; base64 = { - groups = ["default" "development"]; + groups = ["default" "development" "pam_authentication" "production" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0cydk9p2cv25qysm0sn2pb97fcpz1isa7n3c8xm1gd99li8x6x8c"; + sha256 = "01qml0yilb9basf7is2614skjp8384h2pycfx86cr8023arfj98g"; type = "gem"; }; - version = "0.1.1"; + version = "0.2.0"; }; bcp47_spec = { groups = ["default"]; @@ -336,10 +314,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "048z3fvcknqx7ikkhrcrykxlqmf9bzc7l0y5h1cnvrc9n2qf0k8m"; + sha256 = "16a0g2q40biv93i1hch3gw8rbmhp77qnnifj1k0a6m7dng3zh444"; type = "gem"; }; - version = "3.1.18"; + version = "3.1.20"; }; better_errors = { dependencies = ["erubi" "rack" "rouge"]; @@ -352,26 +330,25 @@ }; version = "2.10.1"; }; - better_html = { - dependencies = ["actionview" "activesupport" "ast" "erubi" "parser" "smart_properties"]; - groups = ["default" "development"]; + bigdecimal = { + groups = ["default" "development" "pam_authentication" "production" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1y090dmgjxr3yzxi3pg5jgirkmyfdrmjhabmzmhg5i8ssiqr2gdz"; + sha256 = "1gi7zqgmqwi5lizggs1jhc3zlwaqayy9rx2ah80sxy24bbnng558"; type = "gem"; }; - version = "2.0.1"; + version = "3.1.8"; }; bindata = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "04y4zgh4bbcb8wmkxwfqg4saky1d1f3xw8z6yk543q13h8ky8rz5"; + sha256 = "08r67nglsqnxrbn803szf5bdnqhchhq8kf2by94f37fcl65wpp19"; type = "gem"; }; - version = "2.4.15"; + version = "2.5.0"; }; binding_of_caller = { dependencies = ["debug_inspector"]; @@ -379,20 +356,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "078n2dkpgsivcf0pr50981w95nfc2bsrp3wpf9wnxz1qsp8jbb9s"; + sha256 = "16mjj15ks5ws53v2y31hxcmf46d0qjdvdaadpk7xsij2zymh4a9b"; type = "gem"; }; - version = "1.0.0"; + version = "1.0.1"; }; blurhash = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "057afgqy73n8vm7k3cr4pbwm1hhqnm58lp4x7bgm5wzbs39m7xf8"; + sha256 = "1wni86h2mlb7sj51nq3iwsvkrzlaggls9xlf4p9dzr1ns79dphca"; type = "gem"; }; - version = "0.1.7"; + version = "0.1.8"; }; bootsnap = { dependencies = ["msgpack"]; @@ -400,20 +377,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1vcg52gwl64xhhal6kwk1pc01y1klzdlnv1awyk89kb91z010x7q"; + sha256 = "0mdgj9yw1hmx3xh2qxyjc31y8igmxzd9h0c245ay2zkz76pl4k5c"; type = "gem"; }; - version = "1.16.0"; + version = "1.18.4"; }; brakeman = { + dependencies = ["racc"]; groups = ["development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1gliwnyma9f1mpr928c79i36q51yl68dwjd3jgwvsyr4piiiqr1r"; + sha256 = "078syvjnnkbair5ffyvchxj9yd2c8215c1271kfh1gqsmaf70bl6"; type = "gem"; }; - version = "6.0.1"; + version = "6.2.1"; }; browser = { groups = ["default"]; @@ -441,10 +419,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr"; + sha256 = "0pw3r2lyagsxkm71bf44v5b74f7l9r7di22brbyji9fwz791hya9"; type = "gem"; }; - version = "3.2.4"; + version = "3.3.0"; }; bundler-audit = { dependencies = ["thor"]; @@ -452,65 +430,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0gdx0019vj04n1512shhdx7hwphzqmdpw4vva2k551nd47y1dixx"; + sha256 = "0j0h5cgnzk0ms17ssjkzfzwz65ggrs3lsp53a1j46p4616m1s1bk"; type = "gem"; }; - version = "0.9.1"; - }; - capistrano = { - dependencies = ["airbrussh" "i18n" "rake" "sshkit"]; - groups = ["development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "14pflh85rrs2l8k0m286j4vaab5vad2sfqq9dncqb31z05vy29mn"; - type = "gem"; - }; - version = "3.17.3"; - }; - capistrano-bundler = { - dependencies = ["capistrano"]; - groups = ["default" "development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "09rndb1fa9r7mhb2sc6p3k0pcarhg8mv0kfmvd1zdb0ciwwp7514"; - type = "gem"; - }; - version = "2.1.0"; - }; - capistrano-rails = { - dependencies = ["capistrano" "capistrano-bundler"]; - groups = ["development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "05lk7y4qyzadzzshjyhgfgx00ggqliq7n561wkx8m331wljv7kx7"; - type = "gem"; - }; - version = "1.6.3"; - }; - capistrano-rbenv = { - dependencies = ["capistrano" "sshkit"]; - groups = ["development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1x9m1i5zd0wx122zw3m40zprlmxk9d47bd6w61k81wr4qsvkk3rw"; - type = "gem"; - }; - version = "2.2.0"; - }; - capistrano-yarn = { - dependencies = ["capistrano"]; - groups = ["development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1zdg2s061vl5b8114n909mrjb2hc1qx0i4wqx9nacsrcjgyp07l9"; - type = "gem"; - }; - version = "2.0.2"; + version = "0.9.2"; }; capybara = { dependencies = ["addressable" "matrix" "mini_mime" "nokogiri" "rack" "rack-test" "regexp_parser" "xpath"]; @@ -518,10 +441,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "114qm5f5vhwaaw9rj1h2lcamh46zl13v1m18jiw68zl961gwmw6n"; + sha256 = "1vxfah83j6zpw3v5hic0j70h519nvmix2hbszmjwm8cfawhagns2"; type = "gem"; }; - version = "3.39.2"; + version = "3.40.0"; }; case_transform = { dependencies = ["activesupport"]; @@ -549,10 +472,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0cym7a0mrgf8wr27x07ka7fsjz3l7l9qiiyqra34f5k5ghira0c0"; + sha256 = "1c1dws56r7p8y363dhyikg7205z59a3bn4amnv2y488rrq8qm7ml"; type = "gem"; }; - version = "0.7.8"; + version = "0.7.9"; }; chewy = { dependencies = ["activesupport" "elasticsearch" "elasticsearch-dsl"]; @@ -560,10 +483,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0zca6v8i66jkxfdfjnn9xwg21pk95qn4ic8vzfvrx49d6sb8319y"; + sha256 = "0kgqj7hcs09ln7i1rds1xify08rzjk02ryzvjdvnllg1fkh3vm2b"; type = "gem"; }; - version = "7.3.4"; + version = "7.6.0"; + }; + childprocess = { + dependencies = ["logger"]; + groups = ["default" "development" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1v5nalaarxnfdm6rxb7q6fmc6nx097jd630ax6h9ch7xw95li3cs"; + type = "gem"; + }; + version = "5.1.0"; }; chunky_png = { groups = ["default"]; @@ -580,10 +514,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0q11v0iabvr6rif0d025xh078ili5frrihlj0m04zfg7lgvagxji"; + sha256 = "198aswdyqlvcw9jkd95b7b8dp3fg0wx89kd1dx9wia1z36b1icin"; type = "gem"; }; - version = "0.2.0"; + version = "1.2.0"; }; cocoon = { groups = ["default"]; @@ -631,21 +565,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "00c6x4ha7qiaaf88qdbyf240mk146zz78rbm4qwyaxmwlmk7q933"; + sha256 = "1rbdzl9n8ppyp38y75hw06s17kp922ybj6jfvhz52p83dg6xpm6m"; type = "gem"; }; - version = "1.3.0"; + version = "1.3.1"; }; crack = { - dependencies = ["rexml"]; + dependencies = ["bigdecimal" "rexml"]; groups = ["default" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1cr1kfpw3vkhysvkk3wg7c54m75kd68mbm9rs5azdjdq57xid13r"; + sha256 = "0jaa7is4fw1cxigm8vlyhg05bw4nqy4f91zjqxk7pp4c8bdyyfn8"; type = "gem"; }; - version = "0.4.5"; + version = "1.0.0"; }; crass = { groups = ["default" "development" "pam_authentication" "production" "test"]; @@ -663,10 +597,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "04q1vin8slr3k8mp76qz0wqgap6f9kdsbryvgfq9fljhrm463kpj"; + sha256 = "0xs3d0ihwg1z4h28d51hb07k926d1rlwy6c2c9ygbicg76srk0qa"; type = "gem"; }; - version = "1.14.0"; + version = "1.19.0"; + }; + csv = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0zfn40dvgjk1xv1z8l11hr9jfg3jncwsc9yhzsz4l4rivkpivg8b"; + type = "gem"; + }; + version = "3.3.0"; }; database_cleaner-active_record = { dependencies = ["activerecord" "database_cleaner-core"]; @@ -674,10 +618,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "12hdsqnws9gyc9sxiyc8pjiwr0xa7136m1qbhmd1pk3vsrrvk13k"; + sha256 = "1iz1hv2b1z7509dxvxdwzay1hhs24glxls5ldbyh688zxkcdca1j"; type = "gem"; }; - version = "2.1.0"; + version = "2.2.0"; }; database_cleaner-core = { groups = ["default" "test"]; @@ -699,15 +643,26 @@ }; version = "3.3.4"; }; + debug = { + dependencies = ["irb" "reline"]; + groups = ["development" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1z77qyzcmvz3ciny6cb24s79a243jqkybqk30b310yichp02dq28"; + type = "gem"; + }; + version = "1.9.2"; + }; debug_inspector = { groups = ["default" "development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "01l678ng12rby6660pmwagmyg8nccvjfgs3487xna7ay378a59ga"; + sha256 = "18k8x9viqlkh7dbmjzh8crbjy8w480arpa766cw1dnn3xcpa1pwv"; type = "gem"; }; - version = "1.1.0"; + version = "1.2.0"; }; devise = { dependencies = ["bcrypt" "orm_adapter" "railties" "responders" "warden"]; @@ -715,21 +670,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0vpd7d61d4pfmyb2plnnv82wmczzlhw4k4gjhd2fv4r6vq8ilqqi"; + sha256 = "1y57fpcvy1kjd4nb7zk7mvzq62wqcpfynrgblj558k3hbvz4404j"; type = "gem"; }; - version = "4.9.2"; + version = "4.9.4"; }; devise-two-factor = { - dependencies = ["activesupport" "attr_encrypted" "devise" "railties" "rotp"]; + dependencies = ["activesupport" "devise" "railties" "rotp"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1nk43p339zyp4y5vab3w3s0zbjd4xfs8qn0ymxdnz6d961dbbdm8"; + sha256 = "1yx6ym8a9szwnq9yziljidqjn6gf99blvz1yib9qdd0qcg5x5hp8"; type = "gem"; }; - version = "4.1.0"; + version = "6.0.0"; }; devise_pam_authenticatable2 = { dependencies = ["devise" "rpam2"]; @@ -747,10 +702,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0rwvjahnp7cpmracd8x732rjgnilqv2sx7d1gfrysslc3h039fa9"; + sha256 = "1znxccz83m4xgpd239nyqxlifdb7m8rlfayk6s259186nkgj6ci7"; type = "gem"; }; - version = "1.5.0"; + version = "1.5.1"; }; discard = { dependencies = ["activerecord"]; @@ -758,31 +713,30 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1xavjhccyyzn9z6fz3034vgvzprc983mbrq6n9sc0drfw7m3vrip"; + sha256 = "0rysimck60hkj1japwb2np75kaf4jq8jvfzijh2izhadrabqj8am"; type = "gem"; }; - version = "1.2.1"; + version = "1.3.0"; }; docile = { groups = ["default" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1lxqxgq71rqwj1lpl9q1mbhhhhhhdkkj7my341f2889pwayk85sz"; + sha256 = "07pj4z3h8wk4fgdn6s62vw1lwvhj0ac0x10vfbdkr9xzk7krn5cn"; type = "gem"; }; - version = "1.4.0"; + version = "1.4.1"; }; domain_name = { - dependencies = ["unf"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0lcqjsmixjp52bnlgzh4lg9ppsk52x9hpwdjd53k8jnbah2602h0"; + sha256 = "0cyr2xm576gqhqicsyqnhanni47408w2pgvrfi8pd13h2li3nsaz"; type = "gem"; }; - version = "0.5.20190701"; + version = "0.6.20240107"; }; doorkeeper = { dependencies = ["railties"]; @@ -790,41 +744,30 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1q2pywgyn6cbnm0fh3dln5z1qgd1g8hvb4x8rppjc1bpfxnfhi13"; + sha256 = "0a6nbc12nfz355am2vwm1ql2p8zck7mr941glghmnl32djaga24b"; type = "gem"; }; - version = "5.6.6"; + version = "5.7.1"; }; dotenv = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1n0pi8x8ql5h1mijvm8lgn6bhq4xjb5a500p5r1krq4s6j9lg565"; + sha256 = "0aanng90ad6vg9sm3qlq1223k456qw2xli9kcx13a3ga33kh5ibd"; type = "gem"; }; - version = "2.8.1"; + version = "3.1.4"; }; - dotenv-rails = { - dependencies = ["dotenv" "railties"]; - groups = ["default"]; + drb = { + groups = ["default" "development" "pam_authentication" "production" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0v0gcbxzypcvy6fqq4gp80jb310xvdwj5n8qw9ci67g5yjvq2nxh"; + sha256 = "0h5kbj9hvg5hb3c7l425zpds0vb42phvln2knab8nmazg2zp5m79"; type = "gem"; }; - version = "2.8.1"; - }; - ed25519 = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0zb2dr2ihb1qiknn5iaj1ha1w9p7lj9yq5waasndlfadz225ajji"; - type = "gem"; - }; - version = "1.3.0"; + version = "2.2.1"; }; elasticsearch = { dependencies = ["elasticsearch-api" "elasticsearch-transport"]; @@ -832,10 +775,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0havyxmvl157a653prspnbhgdchlx44xqxl170v1im5ggxwavcaq"; + sha256 = "11pw5x7kg6f6m8rqy2kpbzdlnvijjpmbqkj2gz8237wkbl40y27d"; type = "gem"; }; - version = "7.13.3"; + version = "7.17.11"; }; elasticsearch-api = { dependencies = ["multi_json"]; @@ -843,10 +786,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0bmssarkk7lqkjdn8c9j7jvxcnn4hg1zcmhsky8bfvc99k33b3w8"; + sha256 = "01wi43a3zylrq2vca08vir5va142g5m3jcsak3rprjck8jvggn7y"; type = "gem"; }; - version = "7.13.3"; + version = "7.17.11"; }; elasticsearch-dsl = { groups = ["default"]; @@ -859,35 +802,36 @@ version = "0.1.10"; }; elasticsearch-transport = { - dependencies = ["faraday" "multi_json"]; + dependencies = ["base64" "faraday" "multi_json"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0blfii8qvj0m6bg9sbfynxc40in7zfmw2wpi4clv7d9gclk053db"; + sha256 = "00qgyyvjyyv7z22qjd408pby1h7902gdwkh8h3z3jk2y57amg06i"; type = "gem"; }; - version = "7.13.3"; + version = "7.17.11"; }; - encryptor = { - groups = ["default"]; + email_spec = { + dependencies = ["htmlentities" "launchy" "mail"]; + groups = ["test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0s8rvfl0vn8w7k1sgkc234060jh468s3zd45xa64p1jdmfa3zwmb"; + sha256 = "049dhlyy2hcksp1wj9mx2fngk5limkm3afxysnizg1hi2dxbw8yz"; type = "gem"; }; - version = "3.0.0"; + version = "2.3.0"; }; erubi = { groups = ["default" "development" "pam_authentication" "production" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "08s75vs9cxlc4r1q2bjg4br8g9wc5lc5x5vl0vv4zq5ivxsdpgi7"; + sha256 = "0qnd6ff4az22ysnmni3730c41b979xinilahzg86bn7gv93ip9pw"; type = "gem"; }; - version = "1.12.0"; + version = "1.13.0"; }; et-orbi = { dependencies = ["tzinfo"]; @@ -905,31 +849,31 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "08r6qgbpkxxsihjmlspk3l1sr69q5hx35p1l4wp7rmkbzys89867"; + sha256 = "0ala6123d3cv965ss48iyi0q4hcbzrznfwv2f1mr91sy98cigq4h"; type = "gem"; }; - version = "0.100.0"; + version = "0.111.0"; }; fabrication = { - groups = ["test"]; + groups = ["development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0bxssmjp49whzq2zv7w751gr4nkdaiwcxd1vda0byigwyrnj6f5q"; + sha256 = "1al5iv3as21l5clci0b5cg27z136pan7gkj7plp4l0w83c6z2y9c"; type = "gem"; }; - version = "2.30.0"; + version = "2.31.0"; }; faker = { dependencies = ["i18n"]; - groups = ["test"]; + groups = ["development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0ysiqlvyy1351bzx7h92r93a35s32l8giyf9bac6sgr142sh3cnn"; + sha256 = "1xj0xx2snnxzjipxpxwiki7053441jkdg10h0rmjiri040s5lssi"; type = "gem"; }; - version = "3.2.1"; + version = "3.4.2"; }; faraday = { dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-httpclient" "faraday-multipart" "faraday-net_http" "faraday-net_http_persistent" "faraday-patron" "faraday-rack" "faraday-retry" "ruby2_keywords"]; @@ -998,10 +942,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1fi8sda5hc54v1w3mqfl5yz09nhx35kglyx72w7b8xxvdr0cwi9j"; + sha256 = "10n6wikd442mfm15hd6gzm0qb527161w1wwch4h5m4iclkz2x6b3"; type = "gem"; }; - version = "1.0.1"; + version = "1.0.2"; }; faraday-net_http_persistent = { groups = ["default"]; @@ -1079,10 +1023,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1862ydmclzy1a0cjbvm8dz7847d9rch495ib0zb64y84d3xd4bkg"; + sha256 = "1yvii03hcgqj30maavddqamqy50h7y6xcn2wcyq72wn823zl4ckd"; type = "gem"; }; - version = "1.15.5"; + version = "1.16.3"; }; ffi-compiler = { dependencies = ["ffi" "rake"]; @@ -1090,10 +1034,32 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0c2caqm9wqnbidcb8dj4wd3s902z15qmgxplwyfyqbwa0ydki7q1"; + sha256 = "1844j58cdg2q6g0rqfwg4rrambnhf059h4yg9rfmrbrcs60kskx9"; type = "gem"; }; - version = "1.0.1"; + version = "1.3.2"; + }; + flatware = { + dependencies = ["drb" "thor"]; + groups = ["default" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "13wcwdpdx1asjxvqpyxwlcazzsjisls28jjn28d9cqw9zwszcm1p"; + type = "gem"; + }; + version = "2.3.3"; + }; + flatware-rspec = { + dependencies = ["flatware" "rspec"]; + groups = ["test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0dgl20mi9a5iwcy6v9jq148ljy9rrvyjhp1rpd1sgadfw6kxzbhc"; + type = "gem"; + }; + version = "2.3.3"; }; fog-core = { dependencies = ["builder" "excon" "formatador" "mime-types"]; @@ -1101,10 +1067,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1agd6xgzk0rxrsjdpn94v4hy89s0nm2cs4zg2p880w2dan9xgrak"; + sha256 = "1vf21i2qpl1hagapds0qjlfl6gsyrbssifn2br2ifn3fg9j80yxl"; type = "gem"; }; - version = "2.1.0"; + version = "2.5.0"; }; fog-json = { dependencies = ["fog-core" "multi_json"]; @@ -1118,25 +1084,25 @@ version = "1.2.0"; }; fog-openstack = { - dependencies = ["fog-core" "fog-json" "ipaddress"]; + dependencies = ["fog-core" "fog-json"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "11j18h61d3p0pcp9k5346lbj1lahab1dqybkrx9338932lmjn7ap"; + sha256 = "1z7k3al9bb5ypzkrvi5szpfyi8sksggq68fwxrxywq6rky5lvhdq"; type = "gem"; }; - version = "0.3.10"; + version = "1.1.3"; }; formatador = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0mprf1dwznz5ld0q1jpbyl59fwnwk6azspnd0am7zz7kfg3pxhv5"; + sha256 = "1l06bv4avphbdmr1y4g0rqlczr38k6r65b3zghrbj2ynyhm3xqjl"; type = "gem"; }; - version = "0.3.0"; + version = "1.1.0"; }; fugit = { dependencies = ["et-orbi" "raabro"]; @@ -1149,27 +1115,37 @@ }; version = "1.11.1"; }; - fuubar = { - dependencies = ["rspec-core" "ruby-progressbar"]; - groups = ["test"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1028vn7j3kc5qqwswrf3has3qm4j9xva70xmzb3n29i89f0afwmj"; - type = "gem"; - }; - version = "2.5.1"; - }; globalid = { dependencies = ["activesupport"]; groups = ["default" "development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0kqm5ndzaybpnpxqiqkc41k4ksyxl41ln8qqr6kb130cdxsf2dxk"; + sha256 = "1sbw6b66r7cwdx3jhs46s4lr991969hvigkjpbdl7y3i31qpdgvh"; type = "gem"; }; - version = "1.1.0"; + version = "1.2.1"; + }; + google-protobuf = { + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0fanhdf3vzghma51w1hqpp8s585mwzxgqkwvxj5is4q9j0pgwcs3"; + type = "gem"; + }; + version = "3.25.5"; + }; + googleapis-common-protos-types = { + dependencies = ["google-protobuf"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0sqmmfdxjp3fy7hzvl35bnd0yb0ds9030np5jqh338qz4w661cap"; + type = "gem"; + }; + version = "1.15.0"; }; haml = { dependencies = ["temple" "thor" "tilt"]; @@ -1177,10 +1153,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "154svzqlkdq7gslv3p8mfih28gbw4gsj4pd8wr1wpwz6nyzmhh8m"; + sha256 = "15yxph91zswbnfy7szpdcfbdfqqn595ff290hm4f6fcnhryvhvlf"; type = "gem"; }; - version = "6.1.2"; + version = "6.3.0"; }; haml-rails = { dependencies = ["actionpack" "activesupport" "haml" "railties"]; @@ -1199,20 +1175,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1qics7sll6yw7fm499q4b1frfr5f3gav94ach0fwy49zprl9yk33"; + sha256 = "1mf24djxk6968n0ypwbib790nzijcf03m4kw0dnks8csfxj6hy9g"; type = "gem"; }; - version = "0.50.0"; + version = "0.58.0"; }; hashdiff = { groups = ["default" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1nynpl0xbj0nphqx1qlmyggq58ms1phf5i03hk64wcc0a17x1m1c"; + sha256 = "0slky0n6n12gjgimzdbdigpwyg5wgq8fysjwkzzfw33ff8b675n7"; type = "gem"; }; - version = "1.0.1"; + version = "1.1.1"; }; hashie = { groups = ["default"]; @@ -1236,14 +1212,15 @@ version = "7.1.0"; }; highline = { + dependencies = ["reline"]; groups = ["default" "development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1f8cr014j7mdqpdb9q17fp5vb5b8n1pswqaif91s3ylg5x3pygfn"; + sha256 = "1q0f7izfi542sp93gl276spm0xyws1kpqxm0alrwwmz06mz4i0ks"; type = "gem"; }; - version = "2.1.0"; + version = "3.1.1"; }; hiredis = { groups = ["default"]; @@ -1276,15 +1253,15 @@ version = "4.3.4"; }; http = { - dependencies = ["addressable" "http-cookie" "http-form_data" "llhttp-ffi"]; + dependencies = ["addressable" "base64" "http-cookie" "http-form_data" "llhttp-ffi"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1bzb8p31kzv6q5p4z5xq88mnqk414rrw0y5rkhpnvpl29x5c3bpw"; + sha256 = "05b1khh7wxga9jviy9yi8z1nckxbm3svlzv40y0zvq3nag3d77mr"; type = "gem"; }; - version = "5.1.1"; + version = "5.2.0"; }; http-cookie = { dependencies = ["domain_name"]; @@ -1333,10 +1310,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0zjsgrlvwpqsnrza4ijlxjld4550c661sgbqp2j2wp638nlnls1a"; + sha256 = "098n4dfmiydbm9if52h17kxglbli9gihjgzhcghv274ni2c9ab49"; type = "gem"; }; - version = "1.6.2"; + version = "1.7.0"; }; i18n = { dependencies = ["concurrent-ruby"]; @@ -1344,21 +1321,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1ffix518y7976qih9k1lgnc17i3v6yrlh0a3mckpxdb4wc2vrp16"; + sha256 = "0k31wcgnvcvd14snz0pfqj976zv6drfsnq6x8acz10fiyms9l8nw"; type = "gem"; }; - version = "1.14.5"; + version = "1.14.6"; }; i18n-tasks = { - dependencies = ["activesupport" "ast" "better_html" "erubi" "highline" "i18n" "parser" "rails-i18n" "rainbow" "terminal-table"]; + dependencies = ["activesupport" "ast" "erubi" "highline" "i18n" "parser" "rails-i18n" "rainbow" "terminal-table"]; groups = ["development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "19zkcsqwzc3i6vizj26mxxww6m5grv9zmp6yxyswbqq9kyzb081z"; + sha256 = "1v03380ffwwa84xzsc6dhkc57cs156qx5aij4bfdcs1j5bpxmn1s"; type = "gem"; }; - version = "1.0.12"; + version = "1.0.14"; }; idn-ruby = { groups = ["default"]; @@ -1370,15 +1347,37 @@ }; version = "0.1.5"; }; - ipaddress = { + inline_svg = { + dependencies = ["activesupport" "nokogiri"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1x86s0s11w202j6ka40jbmywkrx8fhq8xiy8mwvnkhllj57hqr45"; + sha256 = "03x1z55sh7cpb63g46cbd6135jmp13idcgqzqsnzinbg4cs2jrav"; type = "gem"; }; - version = "0.8.3"; + version = "1.10.0"; + }; + io-console = { + groups = ["default" "development" "pam_authentication" "production" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "08d2lx42pa8jjav0lcjbzfzmw61b8imxr9041pva8xzqabrczp7h"; + type = "gem"; + }; + version = "0.7.2"; + }; + irb = { + dependencies = ["rdoc" "reline"]; + groups = ["default" "development" "pam_authentication" "production" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1y40dv3caswr81dlsyln6vnmmpzf5jcal2rqjbsglvnkb0xh0xar"; + type = "gem"; + }; + version = "1.14.1"; }; jmespath = { groups = ["default"]; @@ -1395,10 +1394,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0nalhin1gda4v8ybk6lq8f407cgfrj6qzn234yra4ipkmlbfmal6"; + sha256 = "0b4qsi8gay7ncmigr0pnbxyb17y3h8kavdyhsh7nrlqwr35vb60q"; type = "gem"; }; - version = "2.6.3"; + version = "2.7.2"; }; json-canonicalization = { groups = ["default"]; @@ -1422,15 +1421,15 @@ version = "1.15.3.1"; }; json-ld = { - dependencies = ["htmlentities" "json-canonicalization" "link_header" "multi_json" "rack" "rdf"]; + dependencies = ["htmlentities" "json-canonicalization" "link_header" "multi_json" "rack" "rdf" "rexml"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1carfj87p6cpd0xnysg5sj653rqmmwnnacsmjk42xdy40j15gp88"; + sha256 = "09xbw6kc95qgmqcfjp0jjw8dnfm28lw9b5lf8bdh3p2vpy9ihlxr"; type = "gem"; }; - version = "3.3.1"; + version = "3.3.2"; }; json-ld-preloaded = { dependencies = ["json-ld" "rdf"]; @@ -1438,10 +1437,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "004s52m37b2kbw8dv4rdfm2d90h1023z1mw9zfcs0x87v8aq7zyn"; + sha256 = "1f28ipp845xmqkgd0c22lw5fpv4fiama4ms3z1z5p0kbvi22f2c1"; type = "gem"; }; - version = "3.2.2"; + version = "3.3.0"; }; json-schema = { dependencies = ["addressable"]; @@ -1449,10 +1448,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "155rygs093i8i04i38a97hs5icmqk2jkkhx76w31yxyr3bxfbgx3"; + sha256 = "0yn0k02pdb7ds1fszwadxqdsjbkm7xjkfhwpzy7iqij47g0kwv7g"; type = "gem"; }; - version = "4.0.0"; + version = "5.0.0"; }; jsonapi-renderer = { groups = ["default"]; @@ -1523,10 +1522,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "14gnkcp924v8sbay7q6vz4kn37jylbnvrhi4y5c5jcffd51fbwid"; + sha256 = "1j8z0757rb4kly4ghdzd6ihch6x5i0d53r543x2y9xa8cyrj7c4m"; type = "gem"; }; - version = "7.2.1"; + version = "7.2.2"; }; language_server-protocol = { groups = ["default" "development"]; @@ -1539,15 +1538,15 @@ version = "3.17.0.3"; }; launchy = { - dependencies = ["addressable"]; - groups = ["default" "development"]; + dependencies = ["addressable" "childprocess"]; + groups = ["default" "development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "06r43899384das2bkbrpsdxsafyyqa94il7111053idfalb4984a"; + sha256 = "0b3zi9ydbibyyrrkr6l8mcs6l7yam18a4wg22ivgaz0rl2yn1ymp"; type = "gem"; }; - version = "2.5.2"; + version = "3.0.1"; }; letter_opener = { dependencies = ["launchy"]; @@ -1555,10 +1554,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1y5d4ip4l12v58bgazadl45iv3a5j7jp2gwg96b6jy378zn42a1d"; + sha256 = "1cnv3ggnzyagl50vzs1693aacv08bhwlprcvjp8jcg2w7cp3zwrg"; type = "gem"; }; - version = "1.8.1"; + version = "1.10.0"; }; letter_opener_web = { dependencies = ["actionmailer" "letter_opener" "railties" "rexml"]; @@ -1566,10 +1565,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0vvvaz2ngaxv0s6sj25gdvp73vd8pfl8q3jharadg18p3va0m1ik"; + sha256 = "0q4qfi5wnn5bv93zjf10agmzap3sn7gkfmdbryz296wb1vz1wf9z"; type = "gem"; }; - version = "2.0.0"; + version = "3.0.0"; }; link_header = { groups = ["default"]; @@ -1587,10 +1586,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "00dh6zmqdj59rhcya0l4b9aaxq6n8xizfbil93k0g06gndyk5xz5"; + sha256 = "1yph78m8w8l6i9833fc7shy5krk4mnqjc7ys0bg9kgxw8jnl0vs9"; type = "gem"; }; - version = "0.4.0"; + version = "0.5.0"; + }; + logger = { + groups = ["default" "development" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0lwncq2rf8gm79g2rcnnyzs26ma1f4wnfjm6gs4zf2wlsdz5in9s"; + type = "gem"; + }; + version = "1.6.1"; }; lograge = { dependencies = ["actionpack" "activesupport" "railties" "request_store"]; @@ -1598,10 +1607,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "01kdw5dbzimb89rq4zf44zf8990czb5qxvib0hzja1l4hrha8cki"; + sha256 = "1qcsvh9k4c0cp6agqm9a8m4x2gg7vifryqr7yxkg2x9ph9silds2"; type = "gem"; }; - version = "0.13.0"; + version = "0.14.0"; }; loofah = { dependencies = ["crass" "nokogiri"]; @@ -1609,10 +1618,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0d5p9vg2qkqfy60i93mpd3b25kw4bdxfai034y5a94pxp5fws61c"; + sha256 = "1zkjqf37v2d7s11176cb35cl83wls5gm3adnfkn2zcc61h3nxmqh"; type = "gem"; }; - version = "2.21.4"; + version = "2.22.0"; }; mail = { dependencies = ["mini_mime" "net-imap" "net-pop" "net-smtp"]; @@ -1672,20 +1681,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1c81d68r4wx0ckbmqxlfqc2qpd94jwcmqdm0xgr0s46r48pv9k9q"; + sha256 = "1y58ba08n4lx123c0hjcc752fc4x802mjy39qj1hq50ak3vpv8br"; type = "gem"; }; - version = "1.0.1"; - }; - method_source = { - groups = ["default" "development" "pam_authentication" "production" "test"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1pnyh44qycnf9mzi1j6fywd5fkskv3x7nmsqrrws0rjn5dd4ayfp"; - type = "gem"; - }; - version = "1.0.0"; + version = "1.1.0"; }; mime-types = { dependencies = ["mime-types-data"]; @@ -1693,20 +1692,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0q8d881k1b3rbsfcdi3fx0b5vpdr5wcrhn88r2d9j7zjdkxp5mw5"; + sha256 = "1r64z0m5zrn4k37wabfnv43wa6yivgdfk6cf2rpmmirlz889yaf1"; type = "gem"; }; - version = "3.5.1"; + version = "3.5.2"; }; mime-types-data = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "17zdim7kzrh5j8c97vjqp4xp78wbyz7smdp4hi5iyzk0s9imdn5a"; + sha256 = "1vdgz66z8kgw9xrwvrzrcjb5dary9k9hwm0pkk5fq6f5h6i73zds"; type = "gem"; }; - version = "3.2023.0808"; + version = "3.2024.0820"; }; mini_mime = { groups = ["default" "development" "test"]; @@ -1733,20 +1732,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0jnpsbb2dbcs95p4is4431l2pw1l5pn7dfg3vkgb4ga464j0c5l6"; + sha256 = "1n1akmc6bibkbxkzm1p1wmfb4n9vv397knkgz0ffykb3h1d7kdix"; type = "gem"; }; - version = "5.19.0"; + version = "5.25.1"; }; msgpack = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "06n7556vxr3awh92xy1k5bli98bvq4pjm08mnl68ay4fzln7lcsg"; + sha256 = "1a5adcb7bwan09mqhj3wi9ib52hmdzmqg7q08pggn3adibyn5asr"; type = "gem"; }; - version = "1.7.1"; + version = "1.7.2"; }; multi_json = { groups = ["default"]; @@ -1763,10 +1762,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0lgyysrpl50wgcb9ahg29i4p01z0irb3p9lirygma0kkfr5dgk9x"; + sha256 = "1a5lrlvmg2kb2dhw3lxcsv6x276bwgsxpnka1752082miqxd0wlq"; type = "gem"; }; - version = "2.3.0"; + version = "2.4.1"; + }; + mutex_m = { + groups = ["default" "development" "pam_authentication" "production" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1ma093ayps1m92q845hmpk0dmadicvifkbf05rpq9pifhin0rvxn"; + type = "gem"; + }; + version = "0.2.0"; }; net-http = { dependencies = ["uri"]; @@ -1774,10 +1783,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0y55ib1v2b8prqfi9ij7hca60b1j94s2bzr6vskwi3i5735472wq"; + sha256 = "10n2n9aq00ih8v881af88l1zyrqgs5cl3njdw8argjwbl5ggqvm9"; type = "gem"; }; - version = "0.3.2"; + version = "0.4.1"; }; net-http-persistent = { dependencies = ["connection_pool"]; @@ -1792,24 +1801,24 @@ }; net-imap = { dependencies = ["date" "net-protocol"]; - groups = ["default" "development"]; + groups = ["default" "development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0lf7wqg7czhaj51qsnmn28j7jmcxhkh3m28rl1cjrqsgjxhwj7r3"; + sha256 = "0gdmhc6nh8cdq2hdlqyrmnl2pdmvab9j7s6fpfvq5kyga0fi4s74"; type = "gem"; }; - version = "0.3.7"; + version = "0.4.15"; }; net-ldap = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0xqcffn3c1564c4fizp10dzw2v5g2pabdzrcn25hq05bqhsckbar"; + sha256 = "0g9gz39bs2iy4ky4fhjphimqd9m9wdsaz50anxgwg3yjrff3famy"; type = "gem"; }; - version = "0.18.0"; + version = "0.19.0"; }; net-pop = { dependencies = ["net-protocol"]; @@ -1833,37 +1842,16 @@ }; version = "0.2.2"; }; - net-scp = { - dependencies = ["net-ssh"]; - groups = ["default" "development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1si2nq9l6jy5n2zw1q59a5gaji7v9vhy8qx08h4fg368906ysbdk"; - type = "gem"; - }; - version = "4.0.0"; - }; net-smtp = { dependencies = ["net-protocol"]; - groups = ["default" "development"]; + groups = ["default" "development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0hwiqplhi29kfjl8jm0rhl51qv6wmxfynl4qap1dhv9xdwc4bm1x"; + sha256 = "0amlhz8fhnjfmsiqcjajip57ici2xhw089x7zqyhpk51drg43h2z"; type = "gem"; }; - version = "0.3.4"; - }; - net-ssh = { - groups = ["default" "development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0yx0pb5fmziz92bw8qzbh8vf20lr56nd3s6q8h0gsgr307lki687"; - type = "gem"; - }; - version = "7.1.0"; + version = "0.5.0"; }; nio4r = { groups = ["default"]; @@ -1886,26 +1874,16 @@ }; version = "1.16.7"; }; - nsa = { - dependencies = ["activesupport" "concurrent-ruby" "sidekiq" "statsd-ruby"]; - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1narh0bj0c9pg8cb2jhpydfa9mnm3dclckzk5s6xrwa2gm99hnk4"; - type = "gem"; - }; - version = "0.3.0"; - }; oj = { + dependencies = ["bigdecimal" "ostruct"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0m4vsd6i093kmyz9gckvzpnws997laldaiaf86hg5lza1ir82x7n"; + sha256 = "1k2skb0n7mf2azznnbsa6irwghdxlmnhdxv9qs6jqg3gd0k2n4zx"; type = "gem"; }; - version = "3.16.1"; + version = "3.16.6"; }; omniauth = { dependencies = ["hashie" "rack" "rack-protection"]; @@ -1923,13 +1901,11 @@ groups = ["default"]; platforms = []; source = { - fetchSubmodules = false; - rev = "4211e6d05941b4a981f9a36b49ec166cecd0e271"; - sha256 = "1zs0xp062f6wk7xxy8w81838qr855kp7idbgpbrhpl319xzc1xkc"; - type = "git"; - url = "https://github.com/stanhu/omniauth-cas.git"; + remotes = ["https://rubygems.org"]; + sha256 = "13z686dmkdssm4d5b0k45ydavhjrzcaqzyqxvvmaqn3a0vc6klbs"; + type = "gem"; }; - version = "2.0.0"; + version = "3.0.0"; }; omniauth-rails_csrf_protection = { dependencies = ["actionpack" "omniauth"]; @@ -1937,10 +1913,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1kwswnkyl8ym6i4wv65qh3qchqbf2n0c6lbhfgbvkds3gpmnlm7w"; + sha256 = "1q2zvkw34vk1vyhn5kp30783w1wzam9i9g5ygsdjn2gz59kzsw0i"; type = "gem"; }; - version = "1.0.1"; + version = "1.0.2"; }; omniauth-saml = { dependencies = ["omniauth" "ruby-saml"]; @@ -1948,10 +1924,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "05idjrc01nmmqz4g7kv16xd9yfzzvyibxzfrxk8rcwd1p0zgsxnb"; + sha256 = "00nn24s74miy7p65y8lwpjfwgcn7fwld61f9ghngal4asgw6pfwa"; type = "gem"; }; - version = "2.1.2"; + version = "2.2.1"; }; omniauth_openid_connect = { dependencies = ["omniauth" "openid_connect"]; @@ -1980,10 +1956,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0c649921vg2l939z5cc3jwd8p1v49099pdhxfk7sb9qqx5wi5873"; + sha256 = "054d6ybgjdzxw567m7rbnd46yp6gkdbc5ihr536vxd3p15vbhjrw"; type = "gem"; }; - version = "3.1.0"; + version = "3.2.0"; }; openssl-signature_algorithm = { dependencies = ["openssl"]; @@ -1996,6 +1972,291 @@ }; version = "1.3.0"; }; + opentelemetry-api = { + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0dj0cqxz0fl2934pmq4pvnb4wpapjfcsjnzb8vll08bcspjdwcx7"; + type = "gem"; + }; + version = "1.4.0"; + }; + opentelemetry-common = { + dependencies = ["opentelemetry-api"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "160ws06d8mzx3hwjss2i954h8r86dp3sw95k2wrbq81sb121m2gy"; + type = "gem"; + }; + version = "0.21.0"; + }; + opentelemetry-exporter-otlp = { + dependencies = ["google-protobuf" "googleapis-common-protos-types" "opentelemetry-api" "opentelemetry-common" "opentelemetry-sdk" "opentelemetry-semantic_conventions"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1yl10v1vvb9krvvks0si5nbjpknz8lcbbcryqkf2g0db3kha072d"; + type = "gem"; + }; + version = "0.29.0"; + }; + opentelemetry-helpers-sql-obfuscation = { + dependencies = ["opentelemetry-common"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0v44n3lgkclnfjg9iz5jaay7fkcqvb35jrkm2b68fr2cyy778mnz"; + type = "gem"; + }; + version = "0.2.0"; + }; + opentelemetry-instrumentation-action_mailer = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-active_support" "opentelemetry-instrumentation-base"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1afibmwprdiqnkin7lb6zdxng36rqa7qbl5fl9wx0lchpc039zjj"; + type = "gem"; + }; + version = "0.1.0"; + }; + opentelemetry-instrumentation-action_pack = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base" "opentelemetry-instrumentation-rack"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "16nbkayp8jb2zkqj2rmqd4d1mz4wdf0zg6jx8b0vzkf9mxr89py5"; + type = "gem"; + }; + version = "0.9.0"; + }; + opentelemetry-instrumentation-action_view = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-active_support" "opentelemetry-instrumentation-base"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "17qild0js6rgv95rphhs19jhd6ixspv1qvpijchqxmxg8waxmwih"; + type = "gem"; + }; + version = "0.7.2"; + }; + opentelemetry-instrumentation-active_job = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1a5afx39bf0pzi0w75ic8zs8447i96993h056ww4vr23zl585f2x"; + type = "gem"; + }; + version = "0.7.7"; + }; + opentelemetry-instrumentation-active_model_serializers = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0yw98f8z6k4c8ns7p8ik2dc68p4vbi12xnavzw0vqhlnny4nx0n7"; + type = "gem"; + }; + version = "0.20.2"; + }; + opentelemetry-instrumentation-active_record = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0vr690556iaycwdipr962k3pfv97a2sgv4b6f6jwm9hg3mqfqcpg"; + type = "gem"; + }; + version = "0.7.3"; + }; + opentelemetry-instrumentation-active_support = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1q07nn9ipq2yd7xjj24hh00cbvlda269k1l0xfkc8d8iw8mixrsg"; + type = "gem"; + }; + version = "0.6.0"; + }; + opentelemetry-instrumentation-base = { + dependencies = ["opentelemetry-api" "opentelemetry-common" "opentelemetry-registry"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0psjpqigi7k0fky1kd54jzf9r779vh2c86ngjppn7ifmnh4n3r9y"; + type = "gem"; + }; + version = "0.22.6"; + }; + opentelemetry-instrumentation-concurrent_ruby = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1khlhzwb37mqnzr1vr49ljhi4bplmq9w8ndm0k8xbfsr8h8wivq4"; + type = "gem"; + }; + version = "0.21.4"; + }; + opentelemetry-instrumentation-excon = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "14g6dvk31kz9v9qbr2w6ggxk96v3kaadm8wvnw3qsrsc4pd9ycns"; + type = "gem"; + }; + version = "0.22.4"; + }; + opentelemetry-instrumentation-faraday = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0np6wnckn12df6mwcr695fvjy3x2s6541ywr7ahw8a8dszs0qjsh"; + type = "gem"; + }; + version = "0.24.6"; + }; + opentelemetry-instrumentation-http = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "05mrlg8msp59bagpc18ycr9333760kqp780gw8fgqn1798dl02qr"; + type = "gem"; + }; + version = "0.23.4"; + }; + opentelemetry-instrumentation-http_client = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0g6f5zv0bq585ppgzhm6acrpkz32j1h7zyrcy1r8n3ha41daip1z"; + type = "gem"; + }; + version = "0.22.7"; + }; + opentelemetry-instrumentation-net_http = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1l26f8sqsjjcc72a5xr9as3gibm4sgj8n004y15i5vbvdgzjfx60"; + type = "gem"; + }; + version = "0.22.7"; + }; + opentelemetry-instrumentation-pg = { + dependencies = ["opentelemetry-api" "opentelemetry-helpers-sql-obfuscation" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1lgkjp0h0hf51n6afgafqaswvm06ybsvj3yf7dxxkzjpnzgxvjvg"; + type = "gem"; + }; + version = "0.29.0"; + }; + opentelemetry-instrumentation-rack = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1dmfxcc2xz2qa4zp0sks5zrqcfr4fbpbc9xdgvcv8ys0ipf7pwn0"; + type = "gem"; + }; + version = "0.24.6"; + }; + opentelemetry-instrumentation-rails = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-action_mailer" "opentelemetry-instrumentation-action_pack" "opentelemetry-instrumentation-action_view" "opentelemetry-instrumentation-active_job" "opentelemetry-instrumentation-active_record" "opentelemetry-instrumentation-active_support" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "12k4s1k9wa257bqfny33byscb4ai86jw4q6ygrzsj3iv2bij07w9"; + type = "gem"; + }; + version = "0.31.2"; + }; + opentelemetry-instrumentation-redis = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1qrgnk2x64sks9gqb7fycfa6sass6ddqzh5dms4hdbz1bzag581f"; + type = "gem"; + }; + version = "0.25.7"; + }; + opentelemetry-instrumentation-sidekiq = { + dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0cfzw1avv52idxvq02y95g3byxsswccck78zch5hmnnzvp5f59nn"; + type = "gem"; + }; + version = "0.25.7"; + }; + opentelemetry-registry = { + dependencies = ["opentelemetry-api"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1pw87n9vpv40hf7f6gyl2vvbl11hzdkv4psbbv3x23jvccs8593k"; + type = "gem"; + }; + version = "0.3.1"; + }; + opentelemetry-sdk = { + dependencies = ["opentelemetry-api" "opentelemetry-common" "opentelemetry-registry" "opentelemetry-semantic_conventions"]; + groups = ["opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0div7n5wac7x1l9fwdpb3bllw18cns93c7xccy27r4gmvv02f46s"; + type = "gem"; + }; + version = "1.5.0"; + }; + opentelemetry-semantic_conventions = { + dependencies = ["opentelemetry-api"]; + groups = ["default" "opentelemetry"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "10anxw736pg85nw8vb11xnr5faq7qj8a1d8c62qbpjs6m0izi77y"; + type = "gem"; + }; + version = "1.10.1"; + }; orm_adapter = { groups = ["default" "pam_authentication"]; platforms = []; @@ -2006,25 +2267,35 @@ }; version = "0.5.0"; }; + ostruct = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "11dsv71gfbhy92yzj3xkckjzdai2bsz5a4fydgimv62dkz4kc5rv"; + type = "gem"; + }; + version = "0.6.0"; + }; ox = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1yq0h1niimm8z6z8p1yxb104kxqw69bvbrax84598zfjxifcxhxz"; + sha256 = "0w9gavjrvciip497hpdjpcs2c18vf6cgmlj696ynpaqv96804glr"; type = "gem"; }; - version = "2.14.17"; + version = "2.14.18"; }; parallel = { groups = ["default" "development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0jcc512l38c0c163ni3jgskvq1vc3mr8ly5pvjijzwvfml9lf597"; + sha256 = "1vy7sjs2pgz4i96v5yk9b7aafbffnvq7nn419fgvw55qlavsnsyq"; type = "gem"; }; - version = "1.23.0"; + version = "1.26.3"; }; parser = { dependencies = ["ast" "racc"]; @@ -2032,10 +2303,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1swigds85jddb5gshll1g8lkmbcgbcp9bi1d4nigwvxki8smys0h"; + sha256 = "1cqs31cyg2zp8yx2zzm3zkih0j93q870wasbviy2w343nxqvn3pk"; type = "gem"; }; - version = "3.2.2.3"; + version = "3.3.5.0"; }; parslet = { groups = ["default"]; @@ -2063,10 +2334,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0s4vskbydg5k0z86v2g5drf03lslkr4b1l421vz29531jlrsljvy"; + sha256 = "0dsgcmzc55w7i9cpghfkzhmiskzndvp1vijd8c5ryv8xvlwikmzg"; type = "gem"; }; - version = "1.5.5"; + version = "1.5.8"; }; pghero = { dependencies = ["activerecord"]; @@ -2074,10 +2345,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0gzbgq392b0z7ma1jrdnzzfppdlgjdl9akc4iajq4g46raqd4899"; + sha256 = "028icy2wr33a5wbh2szar1mf0syh42p3szd4bfxl1zwrby3cpnfa"; type = "gem"; }; - version = "3.3.4"; + version = "3.6.0"; }; premailer = { dependencies = ["addressable" "css_parser" "htmlentities"]; @@ -2085,10 +2356,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "10rzwdz43yy20lwzsr2as6aivhvwjvqh4nd48sa0ga57sizf1fb4"; + sha256 = "1ryivdnij1990hcqqmq4s0x1vjvfl0awjc9b91f8af17v2639qhg"; type = "gem"; }; - version = "1.21.0"; + version = "1.27.0"; }; premailer-rails = { dependencies = ["actionmailer" "net-smtp" "premailer"]; @@ -2101,25 +2372,37 @@ }; version = "1.12.0"; }; - private_address_check = { + propshaft = { + dependencies = ["actionpack" "activesupport" "rack" "railties"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "05phz0vscfh9chv90yc9091pifw3cpwkh76flnhrmvja1q3na4cy"; + sha256 = "0sqg0xf46xd47zdpm8d12kfnwl0y5jb2hj10imzb3bk6mwgkd2fk"; type = "gem"; }; - version = "0.5.0"; + version = "1.1.0"; + }; + psych = { + dependencies = ["stringio"]; + groups = ["default" "development" "pam_authentication" "production" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0s5383m6004q76xm3lb732bp4sjzb6mxb6rbgn129gy2izsj4wrk"; + type = "gem"; + }; + version = "5.1.2"; }; public_suffix = { groups = ["default" "development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0n9j7mczl15r3kwqrah09cxj8hxdfawiqxa60kga2bmxl9flfz9k"; + sha256 = "0vqcw3iwby3yc6avs1vb3gfd0vcp2v7q310665dvxfswmcf4xm31"; type = "gem"; }; - version = "5.0.3"; + version = "6.0.1"; }; puma = { dependencies = ["nio4r"]; @@ -2138,10 +2421,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1wb03yzy1j41822rbfh9nn77im3zh1f5v8di05cd8rsrdpws542b"; + sha256 = "0wkm850z17gy5gph5lbmaz62wx7nvkj9r690017w10phkmxd5rj3"; type = "gem"; }; - version = "2.3.0"; + version = "2.4.0"; }; raabro = { groups = ["default"]; @@ -2207,15 +2490,15 @@ version = "1.21.3"; }; rack-protection = { - dependencies = ["rack"]; + dependencies = ["base64" "rack"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1kpm67az1wxlg76h620in2r7agfyhv177ps268j5ggsanzddzih8"; + sha256 = "1zzvivmdb4dkscc58i3gmcyrnypynsjwp6xgc4ylarlhqmzvlx1w"; type = "gem"; }; - version = "3.0.6"; + version = "3.2.0"; }; rack-proxy = { dependencies = ["rack"]; @@ -2223,10 +2506,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1a62439xwn5v6hsl9s11hdk4wj58czhcbg7lminv23mnkc0ca147"; + sha256 = "12jw7401j543fj8cc83lmw72d8k6bxvkp9rvbifi88hh01blnsj4"; type = "gem"; }; - version = "0.7.6"; + version = "0.7.7"; + }; + rack-session = { + dependencies = ["rack"]; + groups = ["default" "development" "pam_authentication" "production" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0xhxhlsz6shh8nm44jsmd9276zcnyzii364vhcvf0k8b8bjia8d0"; + type = "gem"; + }; + version = "1.0.2"; }; rack-test = { dependencies = ["rack"]; @@ -2239,16 +2533,27 @@ }; version = "2.1.0"; }; + rackup = { + dependencies = ["rack" "webrick"]; + groups = ["default" "development" "pam_authentication" "production" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1wbr03334ba9ilcq25wh9913xciwj0j117zs60vsqm0zgwdkwpp9"; + type = "gem"; + }; + version = "1.0.0"; + }; rails = { dependencies = ["actioncable" "actionmailbox" "actionmailer" "actionpack" "actiontext" "actionview" "activejob" "activemodel" "activerecord" "activestorage" "activesupport" "railties"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1sv5jzd3varqzcqm8zxllwiqzgbgcymszw12ci3f9zbzlliq8hby"; + sha256 = "07n5ijqxlp4jkd29s9v9b7p9rnspi7pffn4rp4h07dvds9w9xkyz"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; rails-controller-testing = { dependencies = ["actionpack" "actionview" "activesupport"]; @@ -2267,10 +2572,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "17g05y7q7934z0ib4aph8h71c2qwjmlakkm7nb2ab45q0aqkfgjd"; + sha256 = "0fx9dx1ag0s1lr6lfr34lbx5i1bvn3bhyf3w3mx6h7yz90p725g5"; type = "gem"; }; - version = "2.1.1"; + version = "2.2.0"; }; rails-html-sanitizer = { dependencies = ["loofah" "nokogiri"]; @@ -2289,34 +2594,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1bbh5gsw46djmrgddwaq3wsjmj9rsh5dk13wkclwxf1rg9jpkn3g"; + sha256 = "0s8kvic2ia34ngssz6h15wqj0k3wwblhyh0f9v0j3gy7ly0dp161"; type = "gem"; }; - version = "7.0.7"; - }; - rails-settings-cached = { - dependencies = ["rails"]; - groups = ["default"]; - platforms = []; - source = { - fetchSubmodules = false; - rev = "86328ef0bd04ce21cc0504ff5e334591e8c2ccab"; - sha256 = "06r637gimh5miq2i6ywxn9gp7nqk8n8555yw8239mykalbzda69h"; - type = "git"; - url = "https://github.com/mastodon/rails-settings-cached.git"; - }; - version = "0.6.6"; + version = "7.0.9"; }; railties = { - dependencies = ["actionpack" "activesupport" "method_source" "rake" "thor" "zeitwerk"]; + dependencies = ["actionpack" "activesupport" "irb" "rackup" "rake" "thor" "zeitwerk"]; groups = ["default" "development" "pam_authentication" "production" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "02z7lqx0y60bzpkd4v67i9sbdh7djs0mm89h343kidx0gmq0kbh0"; + sha256 = "0njacgg01934sd942byyjkcyy3iwidysdbhp8kjrjrinackmyfal"; type = "gem"; }; - version = "7.0.8.4"; + version = "7.1.4"; }; rainbow = { groups = ["default" "development"]; @@ -2333,21 +2625,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "15whn7p9nrkxangbs9hh75q585yfn66lv0v2mhj6q6dl6x8bzr2w"; + sha256 = "17850wcwkgi30p7yqh60960ypn7yibacjjha0av78zaxwvd3ijs6"; type = "gem"; }; - version = "13.0.6"; + version = "13.2.1"; }; rdf = { - dependencies = ["bcp47_spec" "link_header"]; + dependencies = ["bcp47_spec" "bigdecimal" "link_header"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0l515w395kbyz4n7lx102x1nv9yl6l72gvk67p35z4cqa74s59nx"; + sha256 = "1mlalmbj1wkwvjha92f7v91v0pbjar9gdb2ddxdyqd24zcifn3ln"; type = "gem"; }; - version = "3.3.1"; + version = "3.3.2"; }; rdf-normalize = { dependencies = ["rdf"]; @@ -2355,10 +2647,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "12slrdq6xch5rqj1m79k1wv09264pmhs76nm300j1jsjpcfmdg0r"; + sha256 = "1glyhg7lmzbq1w7bvvf84g7kvqxcn0mw3gsh1f8w4qfvvnbl8dwj"; type = "gem"; }; - version = "0.6.1"; + version = "0.7.0"; + }; + rdoc = { + dependencies = ["psych"]; + groups = ["default" "development" "pam_authentication" "production" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0ygk2zk0ky3d88v3ll7qh6xqvbvw5jin0hqdi1xkv1dhaw7myzdi"; + type = "gem"; + }; + version = "6.7.0"; }; redcarpet = { groups = ["default"]; @@ -2407,10 +2710,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "136br91alxdwh1s85z912dwz23qlhm212vy6i3wkinz3z8mkxxl3"; + sha256 = "0ik40vcv7mqigsfpqpca36hpmnx0536xa825ai5qlkv3mmkyf9ss"; type = "gem"; }; - version = "2.8.1"; + version = "2.9.2"; + }; + reline = { + dependencies = ["io-console"]; + groups = ["default" "development" "pam_authentication" "production" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0rl1jmxs7pay58l7lkxkrn6nkdpk52k8rvnfwqsd1swjlxlwjq0n"; + type = "gem"; + }; + version = "0.5.10"; }; request_store = { dependencies = ["rack"]; @@ -2418,10 +2732,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "13ppgmsbrqah08j06bybd3cddv6dml79yzyjn7r8j1src78h98h7"; + sha256 = "0kd4w7aa0sbk59b19s39pwhd636r7fjamrqalixsw5d53hs4sb1d"; type = "gem"; }; - version = "1.5.1"; + version = "1.6.0"; }; responders = { dependencies = ["actionpack" "railties"]; @@ -2429,20 +2743,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0m9s0mkkprrz02gxhq0ijlwjy0nx1j5yrjf8ssjnhyagnx03lyrx"; + sha256 = "06ilkbbwvc8d0vppf8ywn1f79ypyymlb9krrhqv4g0q215zaiwlj"; type = "gem"; }; - version = "3.1.0"; + version = "3.1.1"; }; rexml = { groups = ["default" "development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "09shc1dvg88c4yx83d4c9wf26z838nlapa3cmlq8iqdci39a98v2"; + sha256 = "0rr145mvjgc4n28lfy0gw87aw3ab680h83bdi5i102ik8mixk3zn"; type = "gem"; }; - version = "3.3.7"; + version = "3.3.8"; }; rotp = { groups = ["default"]; @@ -2459,10 +2773,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0pym2zjwl6dwdfvbn7rbvmds32r70jx9qddhvvi6pqy6987ack1v"; + sha256 = "072qvvrcqj0yfr3b0j932mlhvn41i38bq37z7z07i3ikagndkqwy"; type = "gem"; }; - version = "4.1.2"; + version = "4.3.0"; }; rpam2 = { groups = ["default" "pam_authentication"]; @@ -2495,16 +2809,27 @@ }; version = "1.2.0"; }; + rspec = { + dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"]; + groups = ["default" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "14xrp8vq6i9zx37vh0yp4h9m0anx9paw200l1r5ad9fmq559346l"; + type = "gem"; + }; + version = "3.13.0"; + }; rspec-core = { dependencies = ["rspec-support"]; groups = ["default" "development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0l95bnjxdabrn79hwdhn2q1n7mn26pj7y1w5660v5qi81x458nqm"; + sha256 = "0s688wfw77fjldzayvczg8bgwcgh6bh552dw7qcj1rhjk3r4zalx"; type = "gem"; }; - version = "3.12.2"; + version = "3.13.1"; }; rspec-expectations = { dependencies = ["diff-lcs" "rspec-support"]; @@ -2512,10 +2837,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "05j44jfqlv7j2rpxb5vqzf9hfv7w8ba46wwgxwcwd8p0wzi1hg89"; + sha256 = "0nm4qx9bgfzwfc1q0l3sj50vf88q1mbwkkqndbzc08wrnd5bjpsn"; type = "gem"; }; - version = "3.12.3"; + version = "3.13.2"; + }; + rspec-github = { + dependencies = ["rspec-core"]; + groups = ["test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0kqjmd85v2fpb06d0rx43dc51f0igc1gmm8y3nz0wvmy7zg02njm"; + type = "gem"; + }; + version = "2.4.0"; }; rspec-mocks = { dependencies = ["diff-lcs" "rspec-support"]; @@ -2523,10 +2859,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1hfm17xakfvwya236graj6c2arr4sb9zasp35q5fykhyz8mhs0w2"; + sha256 = "0f3vgp43hajw716vmgjv6f4ar6f97zf50snny6y3fy9kkj4qjw88"; type = "gem"; }; - version = "3.12.5"; + version = "3.13.1"; }; rspec-rails = { dependencies = ["actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support"]; @@ -2534,10 +2870,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "086qdyz7c4s5dslm6j06mq7j4jmj958whc3yinhabnqqmz7i463d"; + sha256 = "1ycjggcmzbgrfjk04v26b43c3fj5jq2qic911qk7585wvav2qaxd"; type = "gem"; }; - version = "6.0.3"; + version = "7.0.1"; }; rspec-sidekiq = { dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks" "sidekiq"]; @@ -2545,41 +2881,31 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0dijmcwjn8k6lrld3yqbqfrqb5g73l57yx98y5frx54p5qxjzbzy"; + sha256 = "08sbi3cdh6pxj0mj34vzr7675rb4n2r2q5yxlgs0w9xnm5c0jpdx"; type = "gem"; }; - version = "4.0.1"; + version = "5.0.0"; }; rspec-support = { groups = ["default" "development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1ky86j3ksi26ng9ybd7j0qsdf1lpr8mzrmn98yy9gzv801fvhsgr"; + sha256 = "03z7gpqz5xkw9rf53835pa8a9vgj4lic54rnix9vfwmp2m7pv1s8"; type = "gem"; }; - version = "3.12.1"; - }; - rspec_chunked = { - groups = ["test"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0h4bsj3m7vb47qnx5bry4v0xscrb3lhg1f1vyxl524znb3i2qqzv"; - type = "gem"; - }; - version = "0.6"; + version = "3.13.1"; }; rubocop = { - dependencies = ["base64" "json" "language_server-protocol" "parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"]; + dependencies = ["json" "language_server-protocol" "parallel" "parser" "rainbow" "regexp_parser" "rubocop-ast" "ruby-progressbar" "unicode-display_width"]; groups = ["development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1i3571gchdj3c28znr5kisj0fkppy57208g9j1kv23rhk3p5q5p2"; + sha256 = "1rsyxrl647bz49gpa4flh8igg6wy7qxyh2jrp01x0kqnn5iw4y86"; type = "gem"; }; - version = "1.56.3"; + version = "1.66.1"; }; rubocop-ast = { dependencies = ["parser"]; @@ -2587,10 +2913,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "188bs225kkhrb17dsf3likdahs2p1i1sqn0pr3pvlx50g6r2mnni"; + sha256 = "03zywfpm4540q6hw8srhi8pzp0gg51w65ir8jkaw58vk3j31w820"; type = "gem"; }; - version = "1.29.0"; + version = "1.32.3"; }; rubocop-capybara = { dependencies = ["rubocop"]; @@ -2598,21 +2924,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "01fn05a87g009ch1sh00abdmgjab87i995msap26vxq1a5smdck6"; + sha256 = "1aw0n8jwhsr39r9q2k90xjmcz8ai2k7xx2a87ld0iixnv3ylw9jx"; type = "gem"; }; - version = "2.18.0"; - }; - rubocop-factory_bot = { - dependencies = ["rubocop"]; - groups = ["default" "development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0kqchl8f67k2g56sq2h1sm2wb6br5gi47s877hlz94g5086f77n1"; - type = "gem"; - }; - version = "2.23.1"; + version = "2.21.0"; }; rubocop-performance = { dependencies = ["rubocop" "rubocop-ast"]; @@ -2620,42 +2935,53 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1v3a2g3wk3aqa0k0zzla10qkxlc625zkj3yf4zcsybs86r5bm4xn"; + sha256 = "0yd616imfjvlpwsk7lw5kq9h4iz6qkmf10xlaib6b47fy5x77ncy"; type = "gem"; }; - version = "1.19.0"; + version = "1.22.1"; }; rubocop-rails = { - dependencies = ["activesupport" "rack" "rubocop"]; + dependencies = ["activesupport" "rack" "rubocop" "rubocop-ast"]; groups = ["development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "05r46ds0dm44fb4p67hbz721zck8mdwblzssz2y25yh075hvs36j"; + sha256 = "1bc4xpyx0gldjdmbl9aaqav5bjiqfc2zdw7k2r1zblmgsq4ilmpm"; type = "gem"; }; - version = "2.20.2"; + version = "2.26.2"; }; rubocop-rspec = { - dependencies = ["rubocop" "rubocop-capybara" "rubocop-factory_bot"]; + dependencies = ["rubocop"]; groups = ["development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0ylwy4afnxhbrvlaf8an9nrizj78axnzggiyfcp8v531cv8six5f"; + sha256 = "03vyjxs5rzrsn5graljffgzy1fgbyn99w5fz69y243dhn6gy5a66"; type = "gem"; }; - version = "2.23.2"; + version = "3.0.5"; + }; + rubocop-rspec_rails = { + dependencies = ["rubocop" "rubocop-rspec"]; + groups = ["development"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0ijc1kw81884k0wjq1sgwaxa854n1fdddscp4fnzfzlx7zl150c8"; + type = "gem"; + }; + version = "2.30.0"; }; ruby-prof = { groups = ["development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "13fsfw43zx9pcix1fzxb95g09yadqjvc8971k74krrjz81vbyh51"; + sha256 = "0hnalxnvli6248g34n0bj8p3v35vpabak34qjg778bbaavbqg5h5"; type = "gem"; }; - version = "1.6.3"; + version = "1.7.0"; }; ruby-progressbar = { groups = ["default" "development" "test"]; @@ -2678,6 +3004,17 @@ }; version = "1.17.0"; }; + ruby-vips = { + dependencies = ["ffi" "logger"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0nyxwib3y2fc1lciaac0s03y3i915kyfq1kn9m19hyl5yblyhnxg"; + type = "gem"; + }; + version = "2.2.2"; + }; ruby2_keywords = { groups = ["default"]; platforms = []; @@ -2726,10 +3063,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1kymrjdpbmn4yaml3aaqyj1dzj8gqmm9h030dc2rj5mvja7fpi28"; + sha256 = "0lj1jjxn1znxmaf6jnngfrz26rw85smxb69m4jl6a9yq6gwyab54"; type = "gem"; }; - version = "6.0.2"; + version = "6.1.3"; }; scenic = { dependencies = ["activerecord" "railties"]; @@ -2737,21 +3074,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "04sd4jmgnwpilr3k061x87yyryya2mj15a8602fip49lfxza5548"; + sha256 = "0w0dafg0gz3snm30247wwai0cy3j235ynwx2karyh05ayfqhm4ii"; type = "gem"; }; - version = "1.7.0"; + version = "1.8.0"; }; selenium-webdriver = { - dependencies = ["rexml" "rubyzip" "websocket"]; + dependencies = ["base64" "logger" "rexml" "rubyzip" "websocket"]; groups = ["test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0ws0mh230l1pvyxcrlcr48w01alfhprjs1jbd8yrn463drsr2yac"; + sha256 = "1md0sixm8dq8a7riv50x4q1z273q47b5jvcbv5hxympxn3ran4by"; type = "gem"; }; - version = "4.11.0"; + version = "4.25.0"; }; semantic_range = { groups = ["default"]; @@ -2763,6 +3100,17 @@ }; version = "3.0.0"; }; + shoulda-matchers = { + dependencies = ["activesupport"]; + groups = ["test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1c082vpfdf3865xq6xayxw2hwqswhnc9g030p1gi4hmk9dzvnmch"; + type = "gem"; + }; + version = "6.4.0"; + }; sidekiq = { dependencies = ["connection_pool" "rack" "redis"]; groups = ["default" "test"]; @@ -2791,10 +3139,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0p5jjs3x2pa2fy494xs39xbq642pri13809dcr1l3hjsm56qvp1h"; + sha256 = "1gnm98hdw1ndw0sryjimp4a0805yhwhjxg6njhz8xmdh5ycgljda"; type = "gem"; }; - version = "5.0.3"; + version = "5.0.6"; }; sidekiq-unique-jobs = { dependencies = ["brpoplpush-redis_script" "concurrent-ruby" "redis" "sidekiq" "thor"]; @@ -2824,10 +3172,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0z4df65w9qpri315lpvzazdxa9xb7yj0j3d77q06wf0jnpvw4mzs"; + sha256 = "0q3lwin7pk5rsxy2a663x6lph5arax9lqqk12fgwdy57i5ma749q"; type = "gem"; }; - version = "5.2.0"; + version = "5.3.1"; }; simplecov = { dependencies = ["docile" "simplecov-html" "simplecov_json_formatter"]; @@ -2850,6 +3198,16 @@ }; version = "0.12.3"; }; + simplecov-lcov = { + groups = ["test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1h8kswnshgb9zidvc88f4zjy4gflgz3854sx9wrw8ppgnwfg6581"; + type = "gem"; + }; + version = "0.8.0"; + }; simplecov_json_formatter = { groups = ["default" "test"]; platforms = []; @@ -2860,68 +3218,15 @@ }; version = "0.1.4"; }; - smart_properties = { - groups = ["default" "development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0jrqssk9qhwrpq41arm712226vpcr458xv6xaqbk8cp94a0kycpr"; - type = "gem"; - }; - version = "1.17.0"; - }; - sprockets = { - dependencies = ["concurrent-ruby" "rack"]; - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay"; - type = "gem"; - }; - version = "3.7.2"; - }; - sprockets-rails = { - dependencies = ["actionpack" "activesupport" "sprockets"]; - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1b9i14qb27zs56hlcc2hf139l0ghbqnjpmfi0054dxycaxvk5min"; - type = "gem"; - }; - version = "3.4.2"; - }; - sshkit = { - dependencies = ["net-scp" "net-ssh"]; - groups = ["default" "development"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "14a717mr2cmpgld5fcdd124cvlc5b634f96rhwlnmmc4m8bbkcp9"; - type = "gem"; - }; - version = "1.21.5"; - }; stackprof = { groups = ["development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0bhdgfb0pmw9mav1kw9fn0ka012sa0i3h5ppvqssw5xq48nhxnr8"; + sha256 = "1gdqqwnampxmc54nf6zfy9apkmkpdavzipvfssmjlhnrrjy8qh7f"; type = "gem"; }; - version = "0.2.25"; - }; - statsd-ruby = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "028136c463nbravckxb1qi5c5nnv9r6vh2cyhiry423lac4xz79n"; - type = "gem"; - }; - version = "1.5.0"; + version = "0.2.26"; }; stoplight = { dependencies = ["redlock"]; @@ -2929,10 +3234,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1vhqx7q8qpq3x9ba504n7bp0r9dxcck0r0hd73cac2iqkix6khlv"; + sha256 = "0qq3z6mwbgj1q3b9hpxxi98i63jpqycbv13fqb8362ngk7cv06x8"; type = "gem"; }; - version = "3.0.2"; + version = "4.1.0"; + }; + stringio = { + groups = ["default" "development" "pam_authentication" "production" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "07mfqb40b2wh53k33h91zva78f9zwcdnl85jiq74wnaw2wa6wiak"; + type = "gem"; + }; + version = "3.1.1"; }; strong_migrations = { dependencies = ["activerecord"]; @@ -2940,10 +3255,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0wz4zhsp4xia8zcpi98v4sgjlv2prd515l8jz4f7j0wk45dfkjs1"; + sha256 = "07ahzxbmngwa5v2jhybaxm9zb5f15wgr19pdfk38xq838hlhyxc8"; type = "gem"; }; - version = "0.8.0"; + version = "2.0.0"; }; swd = { dependencies = ["activesupport" "attr_required" "httpclient"]; @@ -2971,10 +3286,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "09p32vp94sa1mbr0if0adf02yzc4ns00lsmpwns2xbkncwpzrqm4"; + sha256 = "0fwia5hvc1xz9w7vprzjnsym3v9j5l9ggdvy70jixbvpcpz4acfz"; type = "gem"; }; - version = "0.10.2"; + version = "0.10.3"; }; terminal-table = { dependencies = ["unicode-display_width"]; @@ -2993,40 +3308,40 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0p18f05r0c5s70571gqig3z2ym74wx79s6rd45sprp207bqskzn9"; + sha256 = "0k968xzamd4y92zflrdilvc7wp8cj49n9lz34vnm95rg1j2gbqnx"; type = "gem"; }; - version = "0.6.0"; + version = "1.0.1"; }; test-prof = { groups = ["development" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1mhzw33lv7h8d7pyh65lis5svnmm8m6fnszbsfg3j3xk9hcl0an5"; + sha256 = "1mydvmcm4m5501322wyl3pwmc6i5ijvwh4kb242l085j88hiqp4n"; type = "gem"; }; - version = "1.2.3"; + version = "1.4.2"; }; thor = { groups = ["default" "development" "pam_authentication" "production" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1vq1fjp45az9hfp6fxljhdrkv75cvbab1jfrwcw738pnsiqk8zps"; + sha256 = "1nmymd86a0vb39pzj2cwv57avdrl6pl3lf5bsz58q594kqxjkw7f"; type = "gem"; }; - version = "1.3.1"; + version = "1.3.2"; }; tilt = { groups = ["default" "development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0bmjgbv8158klwp2r3klxjwaj93nh1sbl4xvj9wsha0ic478avz7"; + sha256 = "0kds7wkxmb038cwp6ravnwn8k65ixc68wpm8j5jx5bhx8ndg4x6z"; type = "gem"; }; - version = "2.2.0"; + version = "2.4.0"; }; timeout = { groups = ["default" "development"]; @@ -3044,10 +3359,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0v8y5dibsyskv1ncdgszhxwzq0gzmvb0zl7sgmx0xvsgy86dhcz1"; + sha256 = "18xc7hyasg5ja2i2vb23d9c5pd6rf316kzwqxqx5d8vbs2z1a4rw"; type = "gem"; }; - version = "0.12.0"; + version = "0.12.1"; }; tty-color = { groups = ["default"]; @@ -3096,10 +3411,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "18jr6s1cg8yb26wzkqa6874q0z93rq0y5aw092kdqazk71y6a235"; + sha256 = "0l4vh6g333jxm9lakilkva2gn17j6gb052626r1pdbmy2lhnb460"; type = "gem"; }; - version = "0.8.1"; + version = "0.8.2"; }; twitter-text = { dependencies = ["idn-ruby" "unf"]; @@ -3129,10 +3444,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0m2d0gpsgqnv29j5h2d6g57g0rayvd460b8s2vjr8sn46bqf89m5"; + sha256 = "1cw6xv9a525mcs7202bq9768aic1dwx353prm1bss4fp2nq24a3j"; type = "gem"; }; - version = "1.2023.3"; + version = "1.2024.2"; }; unf = { dependencies = ["unf_ext"]; @@ -3150,30 +3465,30 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1yj2nz2l101vr1x9w2k83a0fag1xgnmjwp8w8rw4ik2rwcz65fch"; + sha256 = "1sf6bxvf6x8gihv6j63iakixmdddgls58cpxpg32chckb2l18qcj"; type = "gem"; }; - version = "0.0.8.2"; + version = "0.0.9.1"; }; unicode-display_width = { groups = ["default" "development"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1gi82k102q7bkmfi7ggn9ciypn897ylln1jk9q67kjhr39fj043a"; + sha256 = "1d0azx233nags5jx3fqyr23qa2rhgzbhv8pxp46dgbg1mpf82xky"; type = "gem"; }; - version = "2.4.2"; + version = "2.5.0"; }; uri = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0fa49cdssxllj1j37a56kq27wsibx5lmqxkqdk1rz3452y0bsydy"; + sha256 = "07ndgxyhzd02cg94s6rnfhkb9rwx9z72lzk368sa9j78wc9qnbfz"; type = "gem"; }; - version = "0.12.2"; + version = "0.13.1"; }; validate_email = { dependencies = ["activemodel" "mail"]; @@ -3214,10 +3529,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1ri09bf640kkw4v6k2g90q2nw1mx2hsghhngaqgb7958q8id8xrz"; + sha256 = "1dwh2xrpwhbzyncb1wvgzz8fmln3r15iqz53c48q4swagpqzqig5"; type = "gem"; }; - version = "3.0.0"; + version = "3.1.0"; }; webfinger = { dependencies = ["activesupport" "httpclient"]; @@ -3236,10 +3551,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0vfispr7wd2p1fs9ckn1qnby1yyp4i1dl7qz8n482iw977iyxrza"; + sha256 = "08kixkdp41dw39kqfxf2wp5m4z9b6fxg6yfa6xin0wy7dxzka0dy"; type = "gem"; }; - version = "3.19.1"; + version = "3.24.0"; }; webpacker = { dependencies = ["activesupport" "rack-proxy" "railties" "semantic_range"]; @@ -3265,15 +3580,25 @@ }; version = "0.3.8"; }; + webrick = { + groups = ["default" "development" "pam_authentication" "production" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "089gy5494j560b242vi173wnbj2913hwlwnjkpzld58r96ilc5s3"; + type = "gem"; + }; + version = "1.8.2"; + }; websocket = { groups = ["default" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0dib6p55sl606qb4vpwrvj5wh881kk4aqn2zpfapf8ckx7g14jw8"; + sha256 = "0dr78vh3ag0d1q5gfd8960g1ca9g6arjd2w54mffid8h4i7agrxp"; type = "gem"; }; - version = "1.2.9"; + version = "1.2.11"; }; websocket-driver = { dependencies = ["websocket-extensions"]; @@ -3332,10 +3657,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "08cfb35232p9s1r4jqv8wacv38vxh699mgbr9y03ga89gx9lipqp"; + sha256 = "10cpfdswql21vildiin0q7drg5zfzf2sahnk9hv3nyzzjqwj2bdx"; type = "gem"; }; - version = "2.6.16"; + version = "2.6.18"; }; } diff --git a/pkgs/servers/mastodon/source.nix b/pkgs/servers/mastodon/source.nix index dccf253ea938..9c27b1ee3297 100644 --- a/pkgs/servers/mastodon/source.nix +++ b/pkgs/servers/mastodon/source.nix @@ -1,7 +1,7 @@ # This file was generated by pkgs.mastodon.updateScript. { fetchFromGitHub, applyPatches, patches ? [] }: let - version = "4.2.13"; + version = "4.3.0"; in ( applyPatches { @@ -9,10 +9,10 @@ in owner = "mastodon"; repo = "mastodon"; rev = "v${version}"; - hash = "sha256-+HGu02fjYJ1x6Tk9AdqmFN7JHk3UnlvCdiQ/5yMu69M="; + hash = "sha256-nZtxildQmT/7JMCTx89ZSWxb9I7xMLGHTJv7v4gfdd4="; }; patches = patches ++ []; }) // { inherit version; - yarnHash = "sha256-qoLesubmSvRsXhKwMEWHHXcpcqRszqcdZgHQqnTpNPE="; + yarnHash = "sha256-V/kBkxv6akTyzlFzdR1F53b7RD0NYtap58Xt5yOAbYA="; } diff --git a/pkgs/servers/mastodon/update.sh b/pkgs/servers/mastodon/update.sh index 8e8350431e21..6d6be16e333d 100755 --- a/pkgs/servers/mastodon/update.sh +++ b/pkgs/servers/mastodon/update.sh @@ -106,7 +106,5 @@ echo "Creating gemset.nix" bundix --lockfile="$SOURCE_DIR/Gemfile.lock" --gemfile="$SOURCE_DIR/Gemfile" echo "" >> gemset.nix # Create trailing newline to please EditorConfig checks -echo "Creating yarn-hash.nix" -YARN_HASH="$(prefetch-yarn-deps "$SOURCE_DIR/yarn.lock")" -YARN_HASH="$(nix hash to-sri --type sha256 "$YARN_HASH")" -sed -i "s/sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=/$YARN_HASH/g" source.nix +echo "Required manual update of yarn-hash" +exit 1 diff --git a/pkgs/servers/mastodon/yarn.nix b/pkgs/servers/mastodon/yarn.nix new file mode 100644 index 000000000000..3fb4018906d2 --- /dev/null +++ b/pkgs/servers/mastodon/yarn.nix @@ -0,0 +1,34 @@ +{ + stdenvNoCC, + yarn-berry, + cacert, + version, + src, + hash, +}: +stdenvNoCC.mkDerivation { + pname = "yarn-deps"; + inherit version src; + + nativeBuildInputs = [ + yarn-berry + ]; + + dontInstall = true; + + NODE_EXTRA_CA_CERTS = "${cacert}/etc/ssl/certs/ca-bundle.crt"; + + buildPhase = '' + export HOME=$(mktemp -d) + export YARN_ENABLE_TELEMETRY=0 + + cache="$(yarn config get cacheFolder)" + yarn install --immutable --mode skip-build + + mkdir -p $out + cp -r $cache/* $out/ + ''; + + outputHash = hash; + outputHashMode = "recursive"; +} diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix index 7cdda6534d45..a63ee485fec7 100644 --- a/pkgs/servers/nextcloud/default.nix +++ b/pkgs/servers/nextcloud/default.nix @@ -59,14 +59,14 @@ let in { nextcloud28 = generic { - version = "28.0.10"; - hash = "sha256-LoAVJtKJHBhf6sWYXL084pLOcKQl9Tb5GfkBuftMwhA="; + version = "28.0.11"; + hash = "sha256-S6rs7GpvFFgy28PGNdcuIM1IBKytmmZOanS5CnmB40g="; packages = nextcloud28Packages; }; nextcloud29 = generic { - version = "29.0.7"; - hash = "sha256-9TL/wxvlqDdLXgcrhv/4dl7Bn9oMhQnO45hzCB2yxUQ="; + version = "29.0.8"; + hash = "sha256-CrVLUX92zSbyvTi2/hhLn7rtMvc0JGxYwaz4NHPApLk="; packages = nextcloud29Packages; }; diff --git a/pkgs/servers/nextcloud/packages/28.json b/pkgs/servers/nextcloud/packages/28.json index 834225e95e52..ef62ba34d4fb 100644 --- a/pkgs/servers/nextcloud/packages/28.json +++ b/pkgs/servers/nextcloud/packages/28.json @@ -70,9 +70,9 @@ ] }, "forms": { - "hash": "sha256-OqqorHVWCDicQKnTxEJjeXzDrsj98vWvtWYyaRmDsUs=", - "url": "https://github.com/nextcloud-releases/forms/releases/download/v4.2.4/forms-v4.2.4.tar.gz", - "version": "4.2.4", + "hash": "sha256-JhLaTXll2kh/TaWXR1DfUCHuxaJlUMU1oY9ry9yoTTg=", + "url": "https://github.com/nextcloud-releases/forms/releases/download/v4.3.1/forms-v4.3.1.tar.gz", + "version": "4.3.1", "description": "**Simple surveys and questionnaires, self-hosted!**\n\n- **πŸ“ Simple design:** No mass of options, only the essentials. Works well on mobile of course.\n- **πŸ“Š View & export results:** Results are visualized and can also be exported as CSV in the same format used by Google Forms.\n- **πŸ”’ Data under your control!** Unlike in Google Forms, Typeform, Doodle and others, the survey info and responses are kept private on your instance.\n- **πŸ§‘β€πŸ’» Connect to your software:** Easily integrate Forms into your service with our full-fledged [REST-API](https://github.com/nextcloud/forms/blob/main/docs/API.md).\n- **πŸ™‹ Get involved!** We have lots of stuff planned like more question types, collaboration on forms, [and much more](https://github.com/nextcloud/forms/milestones)!", "homepage": "https://github.com/nextcloud/forms", "licenses": [ @@ -260,9 +260,9 @@ ] }, "spreed": { - "hash": "sha256-eMdFS5yQWJNsTVuHBZX4v0PSocP/nT+JaS7RSTYF8p0=", - "url": "https://github.com/nextcloud-releases/spreed/releases/download/v18.0.11/spreed-v18.0.11.tar.gz", - "version": "18.0.11", + "hash": "sha256-pOnL5uz8FcuHUFn7otp9NQinOqm+oCmXRHx4TM2NukI=", + "url": "https://github.com/nextcloud-releases/spreed/releases/download/v18.0.12/spreed-v18.0.12.tar.gz", + "version": "18.0.12", "description": "Chat, video & audio-conferencing using WebRTC\n\n* πŸ’¬ **Chat** Nextcloud Talk comes with a simple text chat, allowing you to share or upload files from your Nextcloud Files app or local device and mention other participants.\n* πŸ‘₯ **Private, group, public and password protected calls!** Invite someone, a whole group or send a public link to invite to a call.\n* 🌐 **Federated chats** Chat with other Nextcloud users on their servers\n* πŸ’» **Screen sharing!** Share your screen with the participants of your call.\n* πŸš€ **Integration with other Nextcloud apps** like Files, Calendar, User status, Dashboard, Flow, Maps, Smart picker, Contacts, Deck, and many more.\n* πŸŒ‰ **Sync with other chat solutions** With [Matterbridge](https://github.com/42wim/matterbridge/) being integrated in Talk, you can easily sync a lot of other chat solutions to Nextcloud Talk and vice-versa.", "homepage": "https://github.com/nextcloud/spreed", "licenses": [ @@ -311,7 +311,7 @@ }, "unsplash": { "hash": "sha256-kNDQk4HYkrBA+o+5/bNYj65ZJbViBjhnbSA87tsu6YE=", - "url": "https://github.com/nextcloud/unsplash/releases/download/v3.0.1/unsplash.tar.gz", + "url": "https://github.com/nextcloud/unsplash/releases/download/v3.0.2/unsplash.tar.gz", "version": "3.0.1", "description": "Show a new random featured nature photo in your nextcloud. Now with choosable motives!", "homepage": "https://github.com/nextcloud/unsplash/", @@ -330,9 +330,9 @@ ] }, "user_saml": { - "hash": "sha256-+oeTDRomjmfSLIM6eyP6MHg+qtOs8IPqIWUzBofahYQ=", - "url": "https://github.com/nextcloud-releases/user_saml/releases/download/v6.2.0/user_saml-v6.2.0.tar.gz", - "version": "6.2.0", + "hash": "sha256-xxabQU8kZhgI7Q9D0n7hrFygvfZWZDnAQWnB8+A1xwE=", + "url": "https://github.com/nextcloud-releases/user_saml/releases/download/v6.3.0/user_saml-v6.3.0.tar.gz", + "version": "6.3.0", "description": "Using the SSO & SAML app of your Nextcloud you can make it easily possible to integrate your existing Single-Sign-On solution with Nextcloud. In addition, you can use the Nextcloud LDAP user provider to keep the convenience for users. (e.g. when sharing)\nThe following providers are supported and tested at the moment:\n\n* **SAML 2.0**\n\t* OneLogin\n\t* Shibboleth\n\t* Active Directory Federation Services (ADFS)\n\n* **Authentication via Environment Variable**\n\t* Kerberos (mod_auth_kerb)\n\t* Any other provider that authenticates using the environment variable\n\nWhile theoretically any other authentication provider implementing either one of those standards is compatible, we like to note that they are not part of any internal test matrix.", "homepage": "https://github.com/nextcloud/user_saml", "licenses": [ diff --git a/pkgs/servers/nextcloud/packages/29.json b/pkgs/servers/nextcloud/packages/29.json index df265671698d..52a805aed8d3 100644 --- a/pkgs/servers/nextcloud/packages/29.json +++ b/pkgs/servers/nextcloud/packages/29.json @@ -70,9 +70,9 @@ ] }, "forms": { - "hash": "sha256-OqqorHVWCDicQKnTxEJjeXzDrsj98vWvtWYyaRmDsUs=", - "url": "https://github.com/nextcloud-releases/forms/releases/download/v4.2.4/forms-v4.2.4.tar.gz", - "version": "4.2.4", + "hash": "sha256-JhLaTXll2kh/TaWXR1DfUCHuxaJlUMU1oY9ry9yoTTg=", + "url": "https://github.com/nextcloud-releases/forms/releases/download/v4.3.1/forms-v4.3.1.tar.gz", + "version": "4.3.1", "description": "**Simple surveys and questionnaires, self-hosted!**\n\n- **πŸ“ Simple design:** No mass of options, only the essentials. Works well on mobile of course.\n- **πŸ“Š View & export results:** Results are visualized and can also be exported as CSV in the same format used by Google Forms.\n- **πŸ”’ Data under your control!** Unlike in Google Forms, Typeform, Doodle and others, the survey info and responses are kept private on your instance.\n- **πŸ§‘β€πŸ’» Connect to your software:** Easily integrate Forms into your service with our full-fledged [REST-API](https://github.com/nextcloud/forms/blob/main/docs/API.md).\n- **πŸ™‹ Get involved!** We have lots of stuff planned like more question types, collaboration on forms, [and much more](https://github.com/nextcloud/forms/milestones)!", "homepage": "https://github.com/nextcloud/forms", "licenses": [ @@ -140,8 +140,8 @@ ] }, "maps": { - "hash": "sha256-FmRhpPRpMnCHkJFaVvQuR6Y7Pd7vpP+tUVih919g/fQ=", - "url": "https://github.com/nextcloud/maps/releases/download/v1.4.0-1-nightly/maps-1.4.0-1-nightly.tar.gz", + "hash": "sha256-BmXs6Oepwnm+Cviy4awm3S8P9AiJTt1BnAQNb4TxVYE=", + "url": "https://github.com/nextcloud/maps/releases/download/v1.4.0/maps-1.4.0.tar.gz", "version": "1.4.0", "description": "**The whole world fits inside your cloud!**\n\n- **πŸ—Ί Beautiful map:** Using [OpenStreetMap](https://www.openstreetmap.org) and [Leaflet](https://leafletjs.com), you can choose between standard map, satellite, topographical, dark mode or even watercolor! 🎨\n- **⭐ Favorites:** Save your favorite places, privately! Sync with [GNOME Maps](https://github.com/nextcloud/maps/issues/30) and mobile apps is planned.\n- **🧭 Routing:** Possible using either [OSRM](http://project-osrm.org), [GraphHopper](https://www.graphhopper.com) or [Mapbox](https://www.mapbox.com).\n- **πŸ–Ό Photos on the map:** No more boring slideshows, just show directly where you were!\n- **πŸ™‹ Contacts on the map:** See where your friends live and plan your next visit.\n- **πŸ“± Devices:** Lost your phone? Check the map!\n- **γ€° Tracks:** Load GPS tracks or past trips. Recording with [PhoneTrack](https://f-droid.org/en/packages/net.eneiluj.nextcloud.phonetrack/) or [OwnTracks](https://owntracks.org) is planned.", "homepage": "https://github.com/nextcloud/maps", @@ -260,9 +260,9 @@ ] }, "spreed": { - "hash": "sha256-cZYE528jSNnPFgJSnqosoPyo/7V3zdUAIxnFpcOuvh4=", - "url": "https://github.com/nextcloud-releases/spreed/releases/download/v19.0.9/spreed-v19.0.9.tar.gz", - "version": "19.0.9", + "hash": "sha256-CWmVARbiZAjgMpZKofWU9FTy/LCz8zXuQdGM6UMHjZ4=", + "url": "https://github.com/nextcloud-releases/spreed/releases/download/v19.0.10/spreed-v19.0.10.tar.gz", + "version": "19.0.10", "description": "Chat, video & audio-conferencing using WebRTC\n\n* πŸ’¬ **Chat** Nextcloud Talk comes with a simple text chat, allowing you to share or upload files from your Nextcloud Files app or local device and mention other participants.\n* πŸ‘₯ **Private, group, public and password protected calls!** Invite someone, a whole group or send a public link to invite to a call.\n* 🌐 **Federated chats** Chat with other Nextcloud users on their servers\n* πŸ’» **Screen sharing!** Share your screen with the participants of your call.\n* πŸš€ **Integration with other Nextcloud apps** like Files, Calendar, User status, Dashboard, Flow, Maps, Smart picker, Contacts, Deck, and many more.\n* πŸŒ‰ **Sync with other chat solutions** With [Matterbridge](https://github.com/42wim/matterbridge/) being integrated in Talk, you can easily sync a lot of other chat solutions to Nextcloud Talk and vice-versa.", "homepage": "https://github.com/nextcloud/spreed", "licenses": [ @@ -311,7 +311,7 @@ }, "unsplash": { "hash": "sha256-kNDQk4HYkrBA+o+5/bNYj65ZJbViBjhnbSA87tsu6YE=", - "url": "https://github.com/nextcloud/unsplash/releases/download/v3.0.1/unsplash.tar.gz", + "url": "https://github.com/nextcloud/unsplash/releases/download/v3.0.2/unsplash.tar.gz", "version": "3.0.1", "description": "Show a new random featured nature photo in your nextcloud. Now with choosable motives!", "homepage": "https://github.com/nextcloud/unsplash/", @@ -330,9 +330,9 @@ ] }, "user_saml": { - "hash": "sha256-+oeTDRomjmfSLIM6eyP6MHg+qtOs8IPqIWUzBofahYQ=", - "url": "https://github.com/nextcloud-releases/user_saml/releases/download/v6.2.0/user_saml-v6.2.0.tar.gz", - "version": "6.2.0", + "hash": "sha256-xxabQU8kZhgI7Q9D0n7hrFygvfZWZDnAQWnB8+A1xwE=", + "url": "https://github.com/nextcloud-releases/user_saml/releases/download/v6.3.0/user_saml-v6.3.0.tar.gz", + "version": "6.3.0", "description": "Using the SSO & SAML app of your Nextcloud you can make it easily possible to integrate your existing Single-Sign-On solution with Nextcloud. In addition, you can use the Nextcloud LDAP user provider to keep the convenience for users. (e.g. when sharing)\nThe following providers are supported and tested at the moment:\n\n* **SAML 2.0**\n\t* OneLogin\n\t* Shibboleth\n\t* Active Directory Federation Services (ADFS)\n\n* **Authentication via Environment Variable**\n\t* Kerberos (mod_auth_kerb)\n\t* Any other provider that authenticates using the environment variable\n\nWhile theoretically any other authentication provider implementing either one of those standards is compatible, we like to note that they are not part of any internal test matrix.", "homepage": "https://github.com/nextcloud/user_saml", "licenses": [ diff --git a/pkgs/servers/nextcloud/packages/30.json b/pkgs/servers/nextcloud/packages/30.json index f4620a76062e..8d32cb8e59aa 100644 --- a/pkgs/servers/nextcloud/packages/30.json +++ b/pkgs/servers/nextcloud/packages/30.json @@ -69,6 +69,16 @@ "agpl" ] }, + "forms": { + "hash": "sha256-JhLaTXll2kh/TaWXR1DfUCHuxaJlUMU1oY9ry9yoTTg=", + "url": "https://github.com/nextcloud-releases/forms/releases/download/v4.3.1/forms-v4.3.1.tar.gz", + "version": "4.3.1", + "description": "**Simple surveys and questionnaires, self-hosted!**\n\n- **πŸ“ Simple design:** No mass of options, only the essentials. Works well on mobile of course.\n- **πŸ“Š View & export results:** Results are visualized and can also be exported as CSV in the same format used by Google Forms.\n- **πŸ”’ Data under your control!** Unlike in Google Forms, Typeform, Doodle and others, the survey info and responses are kept private on your instance.\n- **πŸ§‘β€πŸ’» Connect to your software:** Easily integrate Forms into your service with our full-fledged [REST-API](https://github.com/nextcloud/forms/blob/main/docs/API.md).\n- **πŸ™‹ Get involved!** We have lots of stuff planned like more question types, collaboration on forms, [and much more](https://github.com/nextcloud/forms/milestones)!", + "homepage": "https://github.com/nextcloud/forms", + "licenses": [ + "agpl" + ] + }, "gpoddersync": { "hash": "sha256-OMH/pnDS/icDVUb56mzxowAhBCaVY60bMGJmwsjEc0k=", "url": "https://github.com/thrillfall/nextcloud-gpodder/releases/download/3.10.0/gpoddersync.tar.gz", @@ -120,9 +130,9 @@ ] }, "mail": { - "hash": "sha256-ldrGgqgeRLjYmtWiSAcllaIkTeeUmhjQiXrcpwgb/wk=", - "url": "https://github.com/nextcloud-releases/mail/releases/download/v4.0.0/mail-v4.0.0.tar.gz", - "version": "4.0.0", + "hash": "sha256-u0h9zCT/l9cUUFppKazx4oLkHYzlgGcb0OBOy1CXOG8=", + "url": "https://github.com/nextcloud-releases/mail/releases/download/v4.0.1/mail-v4.0.1.tar.gz", + "version": "4.0.1", "description": "**πŸ’Œ A mail app for Nextcloud**\n\n- **πŸš€ Integration with other Nextcloud apps!** Currently Contacts, Calendar & Files – more to come.\n- **πŸ“₯ Multiple mail accounts!** Personal and company account? No problem, and a nice unified inbox. Connect any IMAP account.\n- **πŸ”’ Send & receive encrypted mails!** Using the great [Mailvelope](https://mailvelope.com) browser extension.\n- **πŸ™ˆ We’re not reinventing the wheel!** Based on the great [Horde](https://horde.org) libraries.\n- **πŸ“¬ Want to host your own mail server?** We do not have to reimplement this as you could set up [Mail-in-a-Box](https://mailinabox.email)!\n\n## Ethical AI Rating\n\n### Priority Inbox\n\nPositive:\n* The software for training and inferencing of this model is open source.\n* The model is created and trained on-premises based on the user's own data.\n* The training data is accessible to the user, making it possible to check or correct for bias or optimise the performance and CO2 usage.\n\n### Thread Summaries (opt-in)\n\n**Rating:** 🟒/🟑/🟠/πŸ”΄\n\nThe rating depends on the installed text processing backend. See [the rating overview](https://docs.nextcloud.com/server/latest/admin_manual/ai/index.html) for details.\n\nLearn more about the Nextcloud Ethical AI Rating [in our blog](https://nextcloud.com/blog/nextcloud-ethical-ai-rating/).", "homepage": "https://github.com/nextcloud/mail#readme", "licenses": [ @@ -240,9 +250,9 @@ ] }, "spreed": { - "hash": "sha256-p0m4s4ZbWEyiPPBRKvEGFk/0xN+IiYPETDegm/8QDWY=", - "url": "https://github.com/nextcloud-releases/spreed/releases/download/v20.0.0/spreed-v20.0.0.tar.gz", - "version": "20.0.0", + "hash": "sha256-mUJmbOMMIkm/83a+7xcW59TTar58D4l0Ek+kZoRdxG8=", + "url": "https://github.com/nextcloud-releases/spreed/releases/download/v20.0.1/spreed-v20.0.1.tar.gz", + "version": "20.0.1", "description": "Chat, video & audio-conferencing using WebRTC\n\n* πŸ’¬ **Chat** Nextcloud Talk comes with a simple text chat, allowing you to share or upload files from your Nextcloud Files app or local device and mention other participants.\n* πŸ‘₯ **Private, group, public and password protected calls!** Invite someone, a whole group or send a public link to invite to a call.\n* 🌐 **Federated chats** Chat with other Nextcloud users on their servers\n* πŸ’» **Screen sharing!** Share your screen with the participants of your call.\n* πŸš€ **Integration with other Nextcloud apps** like Files, Calendar, User status, Dashboard, Flow, Maps, Smart picker, Contacts, Deck, and many more.\n* πŸŒ‰ **Sync with other chat solutions** With [Matterbridge](https://github.com/42wim/matterbridge/) being integrated in Talk, you can easily sync a lot of other chat solutions to Nextcloud Talk and vice-versa.", "homepage": "https://github.com/nextcloud/spreed", "licenses": [ @@ -290,9 +300,9 @@ ] }, "user_saml": { - "hash": "sha256-+oeTDRomjmfSLIM6eyP6MHg+qtOs8IPqIWUzBofahYQ=", - "url": "https://github.com/nextcloud-releases/user_saml/releases/download/v6.2.0/user_saml-v6.2.0.tar.gz", - "version": "6.2.0", + "hash": "sha256-xxabQU8kZhgI7Q9D0n7hrFygvfZWZDnAQWnB8+A1xwE=", + "url": "https://github.com/nextcloud-releases/user_saml/releases/download/v6.3.0/user_saml-v6.3.0.tar.gz", + "version": "6.3.0", "description": "Using the SSO & SAML app of your Nextcloud you can make it easily possible to integrate your existing Single-Sign-On solution with Nextcloud. In addition, you can use the Nextcloud LDAP user provider to keep the convenience for users. (e.g. when sharing)\nThe following providers are supported and tested at the moment:\n\n* **SAML 2.0**\n\t* OneLogin\n\t* Shibboleth\n\t* Active Directory Federation Services (ADFS)\n\n* **Authentication via Environment Variable**\n\t* Kerberos (mod_auth_kerb)\n\t* Any other provider that authenticates using the environment variable\n\nWhile theoretically any other authentication provider implementing either one of those standards is compatible, we like to note that they are not part of any internal test matrix.", "homepage": "https://github.com/nextcloud/user_saml", "licenses": [ diff --git a/pkgs/servers/nfs-ganesha/default.nix b/pkgs/servers/nfs-ganesha/default.nix index 82f9eca8d88d..53a5601c5171 100644 --- a/pkgs/servers/nfs-ganesha/default.nix +++ b/pkgs/servers/nfs-ganesha/default.nix @@ -1,18 +1,38 @@ -{ lib, stdenv, fetchFromGitHub, cmake, pkg-config -, krb5, xfsprogs, jemalloc, dbus, libcap -, ntirpc, liburcu, bison, flex, nfs-utils, acl -} : +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + pkg-config, + sphinx, + krb5, + xfsprogs, + jemalloc, + dbus, + libcap, + ntirpc, + liburcu, + bison, + flex, + nfs-utils, + acl, +}: stdenv.mkDerivation rec { pname = "nfs-ganesha"; version = "6.1"; - outputs = [ "out" "tools" ]; + + outputs = [ + "out" + "man" + "tools" + ]; src = fetchFromGitHub { owner = "nfs-ganesha"; repo = "nfs-ganesha"; rev = "V${version}"; - sha256 = "sha256-XQpbQ7NXVGVbm99d1ZEh1ckR5fd81xwZw8HorXHaeBk="; + hash = "sha256-XQpbQ7NXVGVbm99d1ZEh1ckR5fd81xwZw8HorXHaeBk="; }; preConfigure = "cd src"; @@ -23,6 +43,7 @@ stdenv.mkDerivation rec { "-DENABLE_VFS_POSIX_ACL=ON" "-DUSE_ACL_MAPPING=ON" "-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON" + "-DUSE_MAN_PAGE=ON" ]; nativeBuildInputs = [ @@ -30,6 +51,7 @@ stdenv.mkDerivation rec { pkg-config bison flex + sphinx ]; buildInputs = [ @@ -63,6 +85,10 @@ stdenv.mkDerivation rec { platforms = platforms.linux; license = licenses.lgpl3Plus; mainProgram = "ganesha.nfsd"; - outputsToInstall = [ "out" "tools" ]; + outputsToInstall = [ + "out" + "man" + "tools" + ]; }; } diff --git a/pkgs/servers/tailscale/default.nix b/pkgs/servers/tailscale/default.nix index 4ab40c33fcf8..c01b02914221 100644 --- a/pkgs/servers/tailscale/default.nix +++ b/pkgs/servers/tailscale/default.nix @@ -15,7 +15,7 @@ }: let - version = "1.74.1"; + version = "1.76.0"; in buildGoModule { pname = "tailscale"; @@ -27,7 +27,7 @@ buildGoModule { owner = "tailscale"; repo = "tailscale"; rev = "v${version}"; - hash = "sha256-672FtDKgz7Nmoufoe4Xg/b8sA8EuKH8X+3n9PAKYjFk="; + hash = "sha256-fCUrZ+rrNJ9+XYjCtgaTUWmWczBbavtPe1pFM3L913w="; }; patches = [ @@ -39,7 +39,7 @@ buildGoModule { }) ]; - vendorHash = "sha256-HJEgBs2GOzXvRa95LdwySQmG4/+QwupFDBGrQT6Y2vE="; + vendorHash = "sha256-xCZ6YMJ0fqVzO+tKbCzF0ftV05NOB+lJbJBovLqlrtQ="; nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ makeWrapper ] ++ [ installShellFiles ]; diff --git a/pkgs/shells/zsh/zimfw/default.nix b/pkgs/shells/zsh/zimfw/default.nix index f1e7afa8c384..d37b4c8b522e 100644 --- a/pkgs/shells/zsh/zimfw/default.nix +++ b/pkgs/shells/zsh/zimfw/default.nix @@ -2,14 +2,14 @@ stdenv.mkDerivation rec { pname = "zimfw"; - version = "1.14.0"; + version = "1.15.0"; src = fetchFromGitHub { owner = "zimfw"; repo = "zimfw"; rev = "v${version}"; ## zim only needs this one file to be installed. sparseCheckout = [ "zimfw.zsh" ]; - hash = "sha256-JBMrgUMGsvjYasEHJsZ0jZAHmrN3Z0d8T8agI9FiEPs="; + hash = "sha256-8GnxUhBvMy7fhDILDKYEf/9Mhgzz7suaiZ5elRZmT0o="; }; strictDeps = true; dontConfigure = true; @@ -24,17 +24,6 @@ stdenv.mkDerivation rec { runHook postInstall ''; - ## zim automates the downloading of any plugins you specify in the `.zimrc` - ## file. To do that with Nix, you'll need $ZIM_HOME to be writable. - ## `~/.cache/zim` is a good place for that. The problem is that zim also - ## looks for `zimfw.zsh` there, so we're going to tell it here to look for - ## the `zimfw.zsh` where we currently are. - postFixup = '' - substituteInPlace $out/zimfw.zsh \ - --replace "\''${ZIM_HOME}/zimfw.zsh" "$out/zimfw.zsh" \ - --replace "\''${(q-)ZIM_HOME}/zimfw.zsh" "$out/zimfw.zsh" - ''; - meta = with lib; { description = "The Zsh configuration framework with blazing speed and modular extensions"; diff --git a/pkgs/tools/misc/archi/default.nix b/pkgs/tools/misc/archi/default.nix index 7afbce58c106..9f3edad29a3b 100644 --- a/pkgs/tools/misc/archi/default.nix +++ b/pkgs/tools/misc/archi/default.nix @@ -4,7 +4,7 @@ , makeWrapper , jdk , libsecret -, webkitgtk +, webkitgtk_4_0 , wrapGAppsHook3 , _7zz , nixosTests @@ -54,7 +54,7 @@ stdenv.mkDerivation rec { install -D -m755 Archi $out/libexec/Archi makeWrapper $out/libexec/Archi $out/bin/Archi \ - --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ webkitgtk ])} \ + --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ webkitgtk_4_0 ])} \ --set WEBKIT_DISABLE_DMABUF_RENDERER 1 \ --prefix PATH : ${jdk}/bin '' diff --git a/pkgs/tools/misc/birdfont/default.nix b/pkgs/tools/misc/birdfont/default.nix index 7b92c9e3e86b..866d56b156ea 100644 --- a/pkgs/tools/misc/birdfont/default.nix +++ b/pkgs/tools/misc/birdfont/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchurl, pkg-config, python3, xmlbird, -cairo, gdk-pixbuf, libgee, glib, gtk3, webkitgtk, libnotify, sqlite, vala, +cairo, gdk-pixbuf, libgee, glib, gtk3, webkitgtk_4_0, libnotify, sqlite, vala, gobject-introspection, gsettings-desktop-schemas, wrapGAppsHook3, autoPatchelfHook }: stdenv.mkDerivation rec { @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ python3 pkg-config vala gobject-introspection wrapGAppsHook3 autoPatchelfHook ]; - buildInputs = [ xmlbird libgee cairo gdk-pixbuf glib gtk3 webkitgtk libnotify sqlite gsettings-desktop-schemas ]; + buildInputs = [ xmlbird libgee cairo gdk-pixbuf glib gtk3 webkitgtk_4_0 libnotify sqlite gsettings-desktop-schemas ]; postPatch = '' substituteInPlace install.py \ diff --git a/pkgs/tools/misc/panoply/default.nix b/pkgs/tools/misc/panoply/default.nix index 94ff8e10bb7e..78bd166a5f6f 100644 --- a/pkgs/tools/misc/panoply/default.nix +++ b/pkgs/tools/misc/panoply/default.nix @@ -8,11 +8,11 @@ stdenvNoCC.mkDerivation rec { pname = "panoply"; - version = "5.5.2"; + version = "5.5.3"; src = fetchurl { url = "https://www.giss.nasa.gov/tools/panoply/download/PanoplyJ-${version}.tgz"; - hash = "sha256-ff7O3pW8/2CDXrd6CU+ygFeyNoGNCeTHIH7cdm+k8TE="; + hash = "sha256-TCuCLWMVp7t0JpHA6TbwUdURj/aBggzLa9I7llRY0TU="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/tools/misc/smug/default.nix b/pkgs/tools/misc/smug/default.nix index e528b2128759..8caf8e4b3f3d 100644 --- a/pkgs/tools/misc/smug/default.nix +++ b/pkgs/tools/misc/smug/default.nix @@ -2,7 +2,7 @@ buildGoModule rec { pname = "smug"; - version = "0.3.3"; + version = "0.3.5"; subPackages = [ "." ]; @@ -10,7 +10,7 @@ buildGoModule rec { owner = "ivaaaan"; repo = "smug"; rev = "v${version}"; - sha256 = "sha256-dQp9Ov8Si9DfziVtX3dXsJg+BNKYOoL9/WwdalQ5TVw="; + sha256 = "sha256-5n4EmkcHv6pw1gd9VUtJRR3QdRJsu5DYYsozJ25uggs="; }; vendorHash = "sha256-vaDUzVRmpmNn8/vUPeR1U5N6T4llFRIk9A1lum8uauU="; diff --git a/pkgs/tools/networking/burpsuite/default.nix b/pkgs/tools/networking/burpsuite/default.nix index 8bf1f080f232..0880780eb65b 100644 --- a/pkgs/tools/networking/burpsuite/default.nix +++ b/pkgs/tools/networking/burpsuite/default.nix @@ -9,20 +9,20 @@ }: let - version = "2024.8.2"; + version = "2024.8.4"; product = if proEdition then { productName = "pro"; productDesktop = "Burp Suite Professional Edition"; - hash = "sha256-8CCe/x++0djfLPc/hgDl4hkKexpIcf1tVU7c+kKXdBo="; + hash = "sha256-JWG0iNnQJgMqNsMSZIzFCmss6JhvZ9r7lFHuX46+3Mg="; } else { productName = "community"; productDesktop = "Burp Suite Community Edition"; - hash = "sha256-amaDDHIsdX+8j8ELbFu/etaXWS04XsrHGslJeg04uKU="; + hash = "sha256-a+TozSXpwyBlxPztASb4fqGZGn8Asg2/GxKzhIpEuyE="; }; src = fetchurl { diff --git a/pkgs/tools/networking/dae/default.nix b/pkgs/tools/networking/dae/default.nix index de31e4dff23e..4b26a77eca6c 100644 --- a/pkgs/tools/networking/dae/default.nix +++ b/pkgs/tools/networking/dae/default.nix @@ -4,21 +4,21 @@ fetchFromGitHub, buildGoModule, nixosTests, - gitUpdater, + nix-update-script, }: buildGoModule rec { pname = "dae"; - version = "0.7.4"; + version = "0.8.0"; src = fetchFromGitHub { owner = "daeuniverse"; repo = "dae"; rev = "v${version}"; - hash = "sha256-bJ/a/SCNCutQDbmxPp36SYY7qhji2XRv6awp7buZVc0="; + hash = "sha256-Vdh5acE5i/bJ8VXOm+9OqZQbxvqv4TS/t0DDfBs/K5g="; fetchSubmodules = true; }; - vendorHash = "sha256-CVQTBJDwu7AYz6q0MnFPMINRShcnS1JOGqH+Ro4lIRo="; + vendorHash = "sha256-0Q+1cXUu4EH4qkGlK6BIpv4dCdtSKjb1RbLi5Xfjcew="; proxyVendor = true; @@ -52,9 +52,7 @@ buildGoModule rec { inherit (nixosTests) dae; }; - passthru.updateScript = gitUpdater { - rev-prefix = "v"; - }; + passthru.updateScript = nix-update-script { }; meta = with lib; { description = "Linux high-performance transparent proxy solution based on eBPF"; diff --git a/pkgs/tools/networking/gp-saml-gui/default.nix b/pkgs/tools/networking/gp-saml-gui/default.nix index f28306880f62..1426d13ed22b 100644 --- a/pkgs/tools/networking/gp-saml-gui/default.nix +++ b/pkgs/tools/networking/gp-saml-gui/default.nix @@ -2,7 +2,7 @@ , stdenv , fetchFromGitHub , buildPythonPackage -, webkitgtk +, webkitgtk_4_0 , wrapGAppsHook3 , glib-networking , gobject-introspection @@ -29,7 +29,7 @@ buildPythonPackage rec { requests pygobject3 openconnect - ] ++ lib.optional stdenv.hostPlatform.isLinux webkitgtk; + ] ++ lib.optional stdenv.hostPlatform.isLinux webkitgtk_4_0; preFixup = '' gappsWrapperArgs+=( diff --git a/pkgs/tools/security/metasploit/Gemfile b/pkgs/tools/security/metasploit/Gemfile index 4f192e3a6c10..6a412fbea7be 100644 --- a/pkgs/tools/security/metasploit/Gemfile +++ b/pkgs/tools/security/metasploit/Gemfile @@ -1,4 +1,4 @@ # frozen_string_literal: true source "https://rubygems.org" -gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.4.29" +gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.4.30" diff --git a/pkgs/tools/security/metasploit/Gemfile.lock b/pkgs/tools/security/metasploit/Gemfile.lock index 74f56fe453df..aecfc060bfbf 100644 --- a/pkgs/tools/security/metasploit/Gemfile.lock +++ b/pkgs/tools/security/metasploit/Gemfile.lock @@ -1,9 +1,9 @@ GIT remote: https://github.com/rapid7/metasploit-framework - revision: 6f37955454995e39746353a01aeb6d9d58221d1c - ref: refs/tags/6.4.29 + revision: 8207579ba1f213b890b0125f4cb185672dec1d2c + ref: refs/tags/6.4.30 specs: - metasploit-framework (6.4.29) + metasploit-framework (6.4.30) aarch64 abbrev actionpack (~> 7.0.0) diff --git a/pkgs/tools/security/metasploit/default.nix b/pkgs/tools/security/metasploit/default.nix index 880cf0eb08ce..d412fe12d939 100644 --- a/pkgs/tools/security/metasploit/default.nix +++ b/pkgs/tools/security/metasploit/default.nix @@ -15,13 +15,13 @@ let }; in stdenv.mkDerivation rec { pname = "metasploit-framework"; - version = "6.4.29"; + version = "6.4.30"; src = fetchFromGitHub { owner = "rapid7"; repo = "metasploit-framework"; rev = "refs/tags/${version}"; - hash = "sha256-qu5zK/QC9/DapYanw3lvMLdRso8PAndKSJukQaazoZs="; + hash = "sha256-iLL6ssEfms+AfHA2VMjm4jaKxLlrYmb4QmNAB1HWNc0="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/security/metasploit/gemset.nix b/pkgs/tools/security/metasploit/gemset.nix index 92ed07649dd6..2f299e7476ae 100644 --- a/pkgs/tools/security/metasploit/gemset.nix +++ b/pkgs/tools/security/metasploit/gemset.nix @@ -724,12 +724,12 @@ platforms = []; source = { fetchSubmodules = false; - rev = "6f37955454995e39746353a01aeb6d9d58221d1c"; - sha256 = "16x1nfk4394v9157f0hgiyr53drhdxww79w6lpdg1xq2yhmp7vma"; + rev = "8207579ba1f213b890b0125f4cb185672dec1d2c"; + sha256 = "1k9msr8hfh338bw6cqkbp728ldp2wv458dkhgj0cz6hzq6rgmcl8"; type = "git"; url = "https://github.com/rapid7/metasploit-framework"; }; - version = "6.4.29"; + version = "6.4.30"; }; metasploit-model = { groups = ["default"]; diff --git a/pkgs/tools/security/mitmproxy2swagger/default.nix b/pkgs/tools/security/mitmproxy2swagger/default.nix index 6731d7c21c53..baf318573ee7 100644 --- a/pkgs/tools/security/mitmproxy2swagger/default.nix +++ b/pkgs/tools/security/mitmproxy2swagger/default.nix @@ -1,29 +1,29 @@ -{ lib -, fetchFromGitHub -, python3 +{ + lib, + fetchFromGitHub, + python3, }: python3.pkgs.buildPythonApplication rec { pname = "mitmproxy2swagger"; version = "0.13.0"; - format = "pyproject"; + pyproject = true; src = fetchFromGitHub { owner = "alufers"; - repo = pname; + repo = "mitmproxy2swagger"; rev = "refs/tags/${version}"; hash = "sha256-VHxqxee5sQWRS13V4SfY4LWaN0oxxWsNVDOEqUyKHfg="; }; - nativeBuildInputs = with python3.pkgs; [ - poetry-core - ]; - pythonRelaxDeps = [ + "mitmproxy" "ruamel.yaml" ]; - propagatedBuildInputs = with python3.pkgs; [ + build-system = with python3.pkgs; [ poetry-core ]; + + dependencies = with python3.pkgs; [ json-stream mitmproxy ruamel-yaml @@ -32,16 +32,14 @@ python3.pkgs.buildPythonApplication rec { # No tests available doCheck = false; - pythonImportsCheck = [ - "mitmproxy2swagger" - ]; + pythonImportsCheck = [ "mitmproxy2swagger" ]; meta = with lib; { description = "Tool to automagically reverse-engineer REST APIs"; - mainProgram = "mitmproxy2swagger"; homepage = "https://github.com/alufers/mitmproxy2swagger"; changelog = "https://github.com/alufers/mitmproxy2swagger/releases/tag/${version}"; license = licenses.mit; maintainers = with maintainers; [ fab ]; + mainProgram = "mitmproxy2swagger"; }; } diff --git a/pkgs/tools/typesetting/fop/default.nix b/pkgs/tools/typesetting/fop/default.nix index 94a24211f9a3..4981ec2a7a0c 100644 --- a/pkgs/tools/typesetting/fop/default.nix +++ b/pkgs/tools/typesetting/fop/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchurl +, fetchpatch , ant , jdk , jre @@ -17,6 +18,14 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-b7Av17wu6Ar/npKOiwYqzlvBFSIuXTpqTacM1sxtBvc="; }; + patches = [ + (fetchpatch { + name = "CVE-2024-28168.patch"; + url = "https://github.com/apache/xmlgraphics-fop/commit/d96ba9a11710d02716b6f4f6107ebfa9ccec7134.patch"; + hash = "sha256-zmUA1Tq6iZtvNECCiXebXodp6AikBn10NTZnVHpPMlw="; + }) + ]; + nativeBuildInputs = [ ant jdk diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 448909ee840f..20d0cbbf86ad 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -112,6 +112,7 @@ mapAliases { antennas = throw "antennas has been removed as it only works with tvheadend, which nobody was willing to maintain and was stuck on an unmaintained version that required FFmpeg 4; please see https://github.com/NixOS/nixpkgs/pull/332259 if you are interested in maintaining a newer version"; # Added 2024-08-21 androidndkPkgs_23b = lib.warn "The package set `androidndkPkgs_23b` has been renamed to `androidndkPkgs_23`." androidndkPkgs_23; # Added 2024-07-21 ankisyncd = throw "ankisyncd is dead, use anki-sync-server instead"; # Added 2024-08-10 + ao = libfive; # Added 2024-10-11 apacheAnt_1_9 = throw "Ant 1.9 has been removed since it's not used in nixpkgs anymore"; # Added 2023-11-12 apacheKafka_2_8 = throw "apacheKafka_2_8 through _3_5 have been removed from nixpkgs as outdated"; # Added 2024-02-12 apacheKafka_3_0 = throw "apacheKafka_2_8 through _3_5 have been removed from nixpkgs as outdated"; # Added 2024-02-12 @@ -560,6 +561,12 @@ mapAliases { gmtp = throw "'gmtp' has been removed due to lack of maintenance upstream. Consider using 'gnome-music' instead"; # Added 2024-09-14 gnome-latex = throw "'gnome-latex' has been superseded by 'enter-tex'"; # Added 2024-09-18 gnu-cobol = gnucobol; # Added 2024-09-17 + gogs = throw '' + Gogs development has stalled. Also, it has several unpatched, critical vulnerabilities that + weren't addressed within a year: https://github.com/gogs/gogs/issues/7777 + + Consider migrating to forgejo or gitea. + ''; # Added 2024-10-12 go-dependency-manager = throw "'go-dependency-manager' is unmaintained and the go community now uses 'go.mod' mostly instead"; # Added 2023-10-04 gotktrix = throw "'gotktrix' has been removed, as it was broken and unmaintained"; # Added 2023-12-06 git-backup = throw "git-backup has been removed, as it has been abandoned upstream. Consider using git-backup-go instead."; @@ -712,6 +719,7 @@ mapAliases { hip-common = throw "'hip-common' has been replaced with 'rocmPackages.hip-common'"; # Added 2023-10-08 hip-nvidia = throw "'hip-nvidia' has been removed in favor of 'rocmPackages.clr'"; # Added 2023-10-08 hll2390dw-cups = throw "The hll2390dw-cups package was dropped since it was unmaintained."; # Added 2024-06-21 + hop-cli = throw "hop-cli has been removed as the service has been shut-down"; # Added 2024-08-13 ht-rust = xh; # Added 2021-02-13 hydra_unstable = hydra; # Added 2024-08-22 hydron = throw "hydron has been removed as the project has been archived upstream since 2022 and is affected by a severe remote code execution vulnerability"; @@ -1696,6 +1704,7 @@ mapAliases { waypoint = throw "waypoint has been removed from nixpkgs as the upstream project was archived"; # Added 2024-04-24 wcm = throw "'wcm' has been renamed to/replaced by 'wayfirePlugins.wcm'"; # Add 2023-07-29 webkitgtk_5_0 = throw "'webkitgtk_5_0' has been superseded by 'webkitgtk_6_0'"; # Added 2023-02-25 + webkitgtk = lib.warn "Explicitly set the ABI version of 'webkitgtk'" webkitgtk_4_0; wineWayland = wine-wayland; win-qemu = throw "'win-qemu' has been replaced by 'virtio-win'"; # Added 2023-08-16 win-virtio = virtio-win; # Added 2023-10-17 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e9d389fa512a..e8d16d8139fd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7893,8 +7893,6 @@ with pkgs; gitqlient = libsForQt5.callPackage ../applications/version-management/gitqlient { }; - gogs = callPackage ../applications/version-management/gogs { }; - git-latexdiff = callPackage ../tools/typesetting/git-latexdiff { }; gokart = callPackage ../development/tools/gokart { }; @@ -14543,6 +14541,7 @@ with pkgs; flutterPackages-source = recurseIntoAttrs (callPackage ../development/compilers/flutter { useNixpkgsEngine = true; }); flutterPackages = flutterPackages-bin; flutter = flutterPackages.stable; + flutter326 = flutterPackages.v3_26; flutter324 = flutterPackages.v3_24; flutter319 = flutterPackages.v3_19; @@ -14999,8 +14998,6 @@ with pkgs; hop = callPackage ../development/compilers/hop { }; - hop-cli = throw "hop-cli has been removed as the service has been shut-down"; #Added 2024-08-13 - falcon = callPackage ../development/interpreters/falcon { stdenv = gcc10Stdenv; }; @@ -19074,7 +19071,7 @@ with pkgs; captive-browser = callPackage ../applications/networking/browsers/captive-browser { }; - catboost = callPackage ../development/libraries/catboost { + catboost = callPackage ../by-name/ca/catboost/package.nix { # https://github.com/catboost/catboost/issues/2540 cudaPackages = cudaPackages_11; }; @@ -23530,17 +23527,17 @@ with pkgs; wcslib = callPackage ../development/libraries/science/astronomy/wcslib { }; - webkitgtk = callPackage ../development/libraries/webkitgtk { + webkitgtk_4_0 = callPackage ../development/libraries/webkitgtk { harfbuzz = harfbuzzFull; inherit (gst_all_1) gst-plugins-base gst-plugins-bad; inherit (darwin) apple_sdk; }; - webkitgtk_4_1 = webkitgtk.override { + webkitgtk_4_1 = webkitgtk_4_0.override { libsoup = libsoup_3; }; - webkitgtk_6_0 = webkitgtk.override { + webkitgtk_6_0 = webkitgtk_4_0.override { libsoup = libsoup_3; gtk3 = gtk4; }; @@ -24511,8 +24508,10 @@ with pkgs; maker-panel = callPackage ../tools/misc/maker-panel { }; mastodon = callPackage ../servers/mastodon { - nodejs-slim = nodejs-slim_20; - ruby = ruby_3_2; + nodejs-slim = nodejs-slim_22; + python3 = python311; + ruby = ruby_3_3; + yarn-berry = yarn-berry.override { nodejs = nodejs-slim_22; }; }; gotosocial = callPackage ../servers/gotosocial { }; @@ -25990,8 +25989,6 @@ with pkgs; kmod = callPackage ../os-specific/linux/kmod { }; - kmod-blacklist-ubuntu = callPackage ../os-specific/linux/kmod-blacklist-ubuntu { }; - kmod-debian-aliases = callPackage ../os-specific/linux/kmod-debian-aliases { }; libcap = callPackage ../os-specific/linux/libcap { }; @@ -26568,6 +26565,7 @@ with pkgs; ubootBananaPim64 ubootAmx335xEVM ubootClearfog + ubootCM3588NAS ubootCubieboard2 ubootGuruplug ubootJetsonTK1 @@ -26580,6 +26578,7 @@ with pkgs; ubootOlimexA64Olinuxino ubootOlimexA64Teres1 ubootOrangePi3 + ubootOrangePi3B ubootOrangePi5 ubootOrangePi5Plus ubootOrangePiPc @@ -28103,8 +28102,6 @@ with pkgs; anytone-emu = callPackage ../applications/radio/anytone-emu { }; - ao = libfive; - apache-directory-studio = callPackage ../applications/networking/apache-directory-studio { }; apkeep = callPackage ../tools/misc/apkeep { @@ -29153,11 +29150,6 @@ with pkgs; foliate = callPackage ../applications/office/foliate { }; - font-manager = callPackage ../by-name/fo/font-manager/package.nix { - libsoup = libsoup_3; - webkitgtk = webkitgtk_6_0; - }; - fontfinder = callPackage ../applications/misc/fontfinder { }; fontpreview = callPackage ../applications/misc/fontpreview { }; @@ -29365,7 +29357,7 @@ with pkgs; wavrsocvt = callPackage ../applications/misc/audio/wavrsocvt { }; - welle-io = libsForQt5.callPackage ../applications/radio/welle-io { }; + welle-io = qt6Packages.callPackage ../applications/radio/welle-io { }; wireshark = qt6Packages.callPackage ../applications/networking/sniffers/wireshark { inherit (darwin.apple_sdk_11_0.frameworks) ApplicationServices SystemConfiguration; @@ -30747,10 +30739,7 @@ with pkgs; lifelines = callPackage ../applications/misc/lifelines { }; - liferea = callPackage ../applications/networking/newsreaders/liferea { - libsoup = libsoup_3; - webkitgtk = webkitgtk_4_1; - }; + liferea = callPackage ../applications/networking/newsreaders/liferea { }; lightworks = callPackage ../applications/video/lightworks { }; @@ -31305,9 +31294,7 @@ with pkgs; netmaker = callPackage ../applications/networking/netmaker {subPackages = ["."];}; netmaker-full = callPackage ../applications/networking/netmaker { }; - newsflash = callPackage ../applications/networking/feedreaders/newsflash { - webkitgtk = webkitgtk_6_0; - }; + newsflash = callPackage ../applications/networking/feedreaders/newsflash { }; nice-dcv-client = callPackage ../applications/networking/remote/nice-dcv-client { }; @@ -32174,7 +32161,7 @@ with pkgs; }; quodlibet-full = quodlibet.override { - inherit gtksourceview webkitgtk; + inherit gtksourceview webkitgtk_4_0; kakasi = kakasi; keybinder3 = keybinder3; libappindicator-gtk3 = libappindicator-gtk3; @@ -38179,7 +38166,9 @@ with pkgs; wcalc = callPackage ../applications/misc/wcalc { }; - webkit2-sharp = callPackage ../development/libraries/webkit2-sharp { }; + webkit2-sharp = callPackage ../development/libraries/webkit2-sharp { + webkitgtk = webkitgtk_4_0; + }; websocketd = callPackage ../applications/networking/websocketd { }; diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix index 4255d0c036e8..b1e4cbd2d53f 100644 --- a/pkgs/top-level/linux-kernels.nix +++ b/pkgs/top-level/linux-kernels.nix @@ -367,10 +367,7 @@ in { intel-speed-select = if lib.versionAtLeast kernel.version "5.3" then callPackage ../os-specific/linux/intel-speed-select { } else null; - ipu6-drivers = - if kernelOlder "6.10" - then callPackage ../os-specific/linux/ipu6-drivers {} - else null; + ipu6-drivers = callPackage ../os-specific/linux/ipu6-drivers {}; ivsc-driver = callPackage ../os-specific/linux/ivsc-driver {}; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6a3a4e1926e6..c46c37d101b9 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6333,6 +6333,8 @@ self: super: with self; { jaeger-client = callPackage ../development/python-modules/jaeger-client { }; + jalali-core = callPackage ../development/python-modules/jalali-core { }; + jamo = callPackage ../development/python-modules/jamo { }; janus = callPackage ../development/python-modules/janus { }; @@ -9399,6 +9401,8 @@ self: super: with self; { opentelemetry-instrumentation-celery = callPackage ../development/python-modules/opentelemetry-instrumentation-celery { }; + opentelemetry-instrumentation-botocore = callPackage ../development/python-modules/opentelemetry-instrumentation-botocore { }; + opentelemetry-instrumentation-dbapi = callPackage ../development/python-modules/opentelemetry-instrumentation-dbapi { }; opentelemetry-instrumentation-django = callPackage ../development/python-modules/opentelemetry-instrumentation-django { }; @@ -9417,6 +9421,8 @@ self: super: with self; { opentelemetry-instrumentation-wsgi = callPackage ../development/python-modules/opentelemetry-instrumentation-wsgi { }; + opentelemetry-propagator-aws-xray = callPackage ../development/python-modules/opentelemetry-propagator-aws-xray { }; + opentelemetry-proto = callPackage ../development/python-modules/opentelemetry-proto { }; opentelemetry-semantic-conventions = callPackage ../development/python-modules/opentelemetry-semantic-conventions { }; @@ -11617,6 +11623,8 @@ self: super: with self; { pylion = callPackage ../development/python-modules/pylion { }; + pylitejet = callPackage ../development/python-modules/pylitejet { }; + pylitterbot = callPackage ../development/python-modules/pylitterbot { }; py-libzfs = callPackage ../development/python-modules/py-libzfs { }; diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix index 57c07c1bde4c..d2a1f8a25887 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -143,7 +143,7 @@ in util-linux = linux; util-linuxMinimal = linux; w3m = all; - webkitgtk = linux; + webkitgtk_4_0 = linux; wget = all; which = all; wirelesstools = linux; diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix index 0f5974d83cb8..bf69d13c98f1 100644 --- a/pkgs/top-level/release.nix +++ b/pkgs/top-level/release.nix @@ -31,6 +31,11 @@ , nixpkgsArgs ? { config = { allowUnfree = false; inHydra = true; + # Exceptional unsafe packages that we still build and distribute, + # so users choosing to allow don't have to rebuild them every time. + permittedInsecurePackages = [ + "olm-3.2.16" # see PR #347899 + ]; }; } # This flag, if set to true, will inhibit the use of `mapTestOn`