From 785bde84dd4888817bb9825ba5ab388ec2b7c4b7 Mon Sep 17 00:00:00 2001 From: neodarz Date: Thu, 4 May 2017 03:27:33 +0200 Subject: Update to date --- source/blog/2014-10-25-os-x-package-receipts.md | 19 ------------------- 1 file changed, 19 deletions(-) delete mode 100644 source/blog/2014-10-25-os-x-package-receipts.md (limited to 'source/blog/2014-10-25-os-x-package-receipts.md') diff --git a/source/blog/2014-10-25-os-x-package-receipts.md b/source/blog/2014-10-25-os-x-package-receipts.md deleted file mode 100644 index e04f026a..00000000 --- a/source/blog/2014-10-25-os-x-package-receipts.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: "OS X package receipts" -date: 2014-10-25T13:26:02-0700 -date_display: October 25, 2014 ---- - -I just learned something new. Whenever you install a `pkg` on OS X, OS X stores a receipt of what was installed in `/var/db/receipts` (I'm running OS X 10.9.5 at the time of writing), called a **bom** — bill of materials (I’d rather call it a manifest, whatever). This feature was introduced in NeXTSTEP. From `man 5 bom`: - -> The Mac OS X Installer uses a file system "bill of materials" to determine which files to install, remove, or upgrade. A bill of materials, **bom**, contains all the files within a directory, along with some information about each file. File information includes: the file's UNIX permissions, its owner and group, its size, its time of last modification, and so on. Also included are a checksum of each file and information about hard links. - -`man 5 bom` is actually badly maintained, as it says "The bill of materials for installed packages are found within the package receipts located in /Library/Receipts," whereas those have been migrated to `/var/db/receipts` a long time ago. - -`.bom` files are binary, but you can access the contents via `lsbom`. For instance, to list the files installed, - - lsbom -f /var/db/receipts/org.macports.MacPorts.bom - -Note that the paths printed are always relative to `/`. See `man 1 lsbom` for detailed option listing. - -(Beware when you try to clean up unwanted packages using the `lsbom` listing. Packages might overwrite files, so make sure you review the listing first and know what you are doing. "Knowing what you are doing" is the prerequisite for using `sudo` anyway.) -- cgit v1.2.1