Я пропустил момент, когда в /Library/Receipts появилась sqlite3 база пакетов.
Но в момент выхода леопарда ее еще вроде как не было, что просто явно было видно по скорости
проверки прав доступа в дисковой утилите.
Теперь используется база, что тож заметно по появлению временных файлов в этот-же момент
С базой операции стали куда поприятнее, по сравнению со старым lsbom методом
Начнем-с для примера:
Открываем базу
sudo sqlite3 /Library/Receipts/db/a.receiptdb
.headers on
Смотрим список пакетов Сафари
select pkg_key, pkgid from pkgs where pkgid like '%Safari%' ;
Посмотреть список файлов, установленных Сафари4бета
Вот в таком духе ....
Но в момент выхода леопарда ее еще вроде как не было, что просто явно было видно по скорости
проверки прав доступа в дисковой утилите.
Теперь используется база, что тож заметно по появлению временных файлов в этот-же момент
С базой операции стали куда поприятнее, по сравнению со старым lsbom методом
Начнем-с для примера:
Открываем базу
sudo sqlite3 /Library/Receipts/db/a.receiptdb
.headers on
Смотрим список пакетов Сафари
select pkg_key, pkgid from pkgs where pkgid like '%Safari%' ;
Посмотреть список файлов, установленных Сафари4бета
select f.path
from paths f, pkgs p,
pkgs_paths pf
where p.pkgid = 'com.apple.pkg.Safari40BetaLeo' and pf.pkg_key = p.pkg_key and
pf.path_key = f.path_key ;
Вот в таком духе ....

Comments
И вообще, уважаю Apple за максимальное использование открытых стандартов в своих продуктах.
Edited at 2009-04-20 05:43 pm (UTC)