Я создаю систему nixos в сети, которая имеет доступ только к внешнему миру через веб-прокси. nixos grub configuration пытается получить доступ к репозиторию grub через URL-адрес git://
, который, очевидно, не работает в моей сети.Как изменить конфигурацию пакета nixos
Поэтому я хочу заменить URL-адрес git://
на соответствующий адрес http://
. (саванна поддерживает both.) Соответствующий nix documentation показывает, как это сделать.
Я создал файл, содержащий ~/.nixpkgs/config.nix
следующего содержания:
{
packageOverrides = pkgs: rec {
grub = pkgs.grub.override {
src.url="http://git.savannah.gnu.org/grub.git";
};
};
}
К сожалению nixos-rebuild switch
все еще пытается использовать старый URL. Что я сделал не так?
Я также прочитал customising packages документации. Из того, что мне кажется, что я мог бы добавить следующее /etc/nixos/configuration.nix
:
nixpkgs.config.packageOverrides = pkgs: {
grub = pkgs.grub.overrideDerivation (pkgs.grub (attrs: {
url = "http://git.savannah.gnu.org/grub.git";
rev = "2ae9457e6eb4c352051fb32bc6fc931a22528ab2";
sha256 = "1ik60qgkymg0xdns5az1hbxasspah2vzxg334rpbk2yy3h3nx5ln";
}));
};
Однако nixos-rebuild switchnixos-rebuild switch
все еще использует старый URL. Мне, вероятно, нужно добавить fetchurl, но я понятия не имею, как сделать это доступным в этом месте.
Ввод именно этот код в '~/.nixpkgs/config.nix' ничего не изменится. 'nixos-rebuild switch' по-прежнему пытается получить старый URL-адрес. – michas
Прочтите весь раздел по адресу http://nixos.org/nixos/manual/sec-package-management.html#sec-customising-packages – iElectric
Да, я прочитал весь раздел, но не уверен, понял ли я его правильно. Я добавил еще одну попытку к вопросу. – michas