
я используюNixOS:
$ nixos-version
16.03pre71289.7ae05ed (Emu)
$ nix-env --version
nix-env (Nix) 1.10
$ nix-channel --list
$ sudo nix-channel --list
nixos https://nixos.org/channels/nixos-unstable
Установка чего-либо через nix-env
выводит информацию, например:
$ nix-env -i rogue
installing ‘rogue-5.4.4’
these paths will be fetched (0.09 MiB download, 0.28 MiB unpacked):
/nix/store/rvkjrq24fy510m9dwd12lhry1zkx57iy-rogue-5.4.4
fetching path ‘/nix/store/rvkjrq24fy510m9dwd12lhry1zkx57iy-rogue-5.4.4’...
*** Downloading ‘https://cache.nixos.org/nar/0jpxvn40r27zz9pz54kvfrsy2lwafysbpr6pkhkafizzxqgb2a0c.nar.xz’ (signed by ‘cache.nixos.org-1’) to ‘/nix/store/rvkjrq24fy510m9dwd12lhry1zkx57iy-rogue-5.4.4’...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 95184 100 95184 0 0 104k 0 --:--:-- --:--:-- --:--:-- 104k
building path(s) ‘/nix/store/y8z7yi655sslnmx4b7zb1vaqp49ac8i6-user-environment’
created 839 symlinks in user environment
ЧтениеРуководство пользователя Nixпредложил nix-store
команду, но я не уверен, как ее использовать.
Как мне просмотреть логи того, что я когда-либо устанавливал nix-env
? Как мне просмотреть логи того, что я когда-либо устанавливал sudo nixos-rebuild switch
?
решение1
Насколько я могу судить, у nix нет журнала. Я предполагаю, что причина исключения этой функции любого другого менеджера пакетов в том, что nixos является декларативным, а не императивным, поэтому процесс, который он прошел, чтобы перевести вашу систему из одного состояния в другоедолжно бытьне имеющий отношения.
Что подводит нас к тому, что, как я подозреваю, вы на самом деле хотите знать:Как я могу сравнить нынешнее поколение с предыдущим?
Я нашелnixos-скрипты' diff-generations
команда очень полезна для этого. Например, если вы находитесь на поколении 115, вы можете получить разницу установленных пакетов с помощью:
nix-script diff-generations -s -n 114..115