Предотвращение Отклоняет от обновления мерзавца полному мерзавцу

Другие ответы хороши, но мне нравится давать демонстрацию.

% echo $SHELL
/bin/zsh
% which bash
/bin/bash
  • Первая команда говорит мне, которым будет выполняться оболочка login когда Вы входите в систему. В моем случае, /bin/zsh.
  • Вторая команда говорит мне первое вхождение в моем $PATH bash команда может быть найдена.

Каждый не подразумевает второе, ни наоборот.

Я не собираюсь вновь заявлять об ответах других людей, но в дополнение к этому я хочу указать на некоторые вещи.

  • Оболочка по умолчанию на Солярисе /bin/bash
  • На Солярисе /bin символьная ссылка на ./usr/bin
  • Значение по умолчанию $PATH на Солярисе /usr/bin:/bin

Вот почему Вы видите это поведение.

8
19.03.2015, 18:46
1 ответ

Прежде чем я пойду и отвечу на этого, я хотел бы объяснить, как именование работ пакетов в Отклоняет.

Имя, к которому Вы обращаетесь, является именем деривации, которое не уникально (несколько пакетов, скомпилированных по-разному, могут быть git-1.9.0).

Если Вы хотите сослаться на пакет уникальным способом, атрибут, определенное имя является путем.

Для распечатывания атрибута определяет имя при запросах (примечание -P:

nix-env -qaP | grep git

Обновить пакет уникальным именем:

nix-env -uA git

В Вашем случае это - результат того, что оба пакета называют git-version. Отклоните твердость, какой взят приоритетом. Для понижения приоритета для одного текущего установите:

nix-env --set-flag priority 10 git
nix-env -u
4
27.01.2020, 20:13

Теги

Похожие вопросы