LINUX.ORG.RU
ФорумAdmin

Какой самый простой способ поиска нужной версии nixpkgs

 


0

1

Задача: найти версию коммита nixpkgs, содержащую нужную версию нужной программы.

Пример: только что искал коммит nixpkgs, который содержит playwright нужной мне версии, решил задачу с помощью nixhub: он содержит сопоставление версии playwright (например, 1.34) и коммита nixpkgs, содержащего эту версию (dfcffbd74fd6f0419370d8240e445252a39f4d10).

Что делал бы, если бы не наткнулся на nixhub, не знаю. Но подозреваю, что есть способ искать нужные версии каким то более простым и независимым от левого ресурса способом. Или нет?

Перемещено hobbit из general



Последнее исправление: sgm (всего исправлений: 1)

Ответ на: комментарий от akho

Более простым — нет. Без левого ресурса можно (git log -L ‘/version=/’,+1:pkgs/…/default.nix или типа того), но зачем?

Понятно, я примерно вот так делал еще

nixpkgs [ master][ impure (shell)]
❯ git grep 'version =' $(git rev-list --all -- pkgs/development/web/playwright/driver.nix) -- pkgs/development/web/playwright/driver.nix
4708f044b7b8e85dca952c3e5611585cd2ab62c0:pkgs/development/web/playwright/driver.nix:    version = "1.38.0";
bb74ebb72bb621a03313107f1d32401493b3c438:pkgs/development/web/playwright/driver.nix:    version = "1.40.0";
207d3c40815c0f51b6b367955532ac561aa2e39a:pkgs/development/web/playwright/driver.nix:    version = "1.40.0";
4059c4f71b3a7339261c0183e365fd8016f24bdb:pkgs/development/web/playwright/driver.nix:    version = "1.38.0";
84b273f885fbcd470f5f82ab3300b20e0bf86f3e:pkgs/development/web/playwright/driver.nix:    version = "1.37.0";
82f8be70cdec4550f2032c85023f4d71d5739dfd:pkgs/development/web/playwright/driver.nix:    version = "1.34.3";
6d9b8796028dde4e3b0c8bebac1666295b914e81:pkgs/development/web/playwright/driver.nix:    version =  "1.31.1";

sgm
() автор топика
Ответ на: комментарий от sgm

Посмотри внимательнее:

In fact, git bisect can be used to find the commit that changed any property of your project; e.g., the commit that fixed a bug, or the commit that caused a benchmark’s performance to improve. To support this more general usage, the terms «old» and «new» can be used in place of «good» and «bad», or you can choose your own terms. See section «Alternate terms» below for more information.

И https://git-scm.com/docs/git-bisect#_alternate_terms.

Там же описание и примеры использования есть.

theNamelessOne ★★★★★
()
Ответ на: комментарий от theNamelessOne

Если предлагается бисектить по правилу «версия пакета не меньше x.y.z», и определять это путем evaluation того nixpkgs, то можно устать. В nixpkgs очень много коммитов, а nix не так быстр.

akho
()