munki / munki-pkg

Repo for the munkipkg tool and example projects
Other
344 stars 72 forks source link

Strip extended attributes. #8

Open erikng opened 9 years ago

erikng commented 9 years ago

When exporting a bomfile, I (and Allister) noticed attribute files. This was due to testing on Dropbox (a huge no-no with git anyway).

I git pulled onto a clean location and recreated everything. https://github.com/erikng/munki-pkg-projects/commit/f63f09acae412bec37d91c5dc7338cae8d82f40b

It might be ideal to automatically remove these files or put it on the readme.

gregneagle commented 9 years ago

"It might be ideal to automatically remove these files" -- during what operation?

--export-bom-info itself would not be creating extended attributes.

erikng commented 9 years ago

during package creation.

gregneagle commented 9 years ago

Not really following. Do you mean when --export-bom-info is specified, any existing Bom.txt file should be removed (hopefully removing xattrs along with it)? When the new Bom.txt file is created, it would not have any xattrs. Is that it?

erikng commented 9 years ago

No, because that's just going to fix it for the following build.

lsbom ~/Desktop/test/Bom . 40755 0/0 ./._private 40755 0/0 0 0 ./private 40755 0/0 ./private/._tmp 40755 0/0 0 0 ./private/tmp 40755 0/0

The bom inside the created package contains these extended attributes. More than likely we don't want these files to begin with.

arubdesu commented 9 years ago

Sounds cosmetic, but also like there's potentially a judgement call that needs to be exercised by the admin. On the other hand, it may be less tricky than we think, killing these xattr's may always be considered safe:

com.macromates.bookmarks
com.macromates.crc32         
com.macromates.folded        
com.macromates.selectionRange
com.dropbox.attributes
com.apple.quarantine

etc. That seems like a list that would require maintaining/explaining to munkipkg users. Wether or not they materially affect the payload, they may contain metadata the admin doesn't want to blast out on all machines.

gregneagle commented 9 years ago

erikng: So it's not the bom you are concerned about; it's the payload files.

I don't think I'd be in favor of munkipkg automatically stripping xattrs, as there are potentially "helpful" xattrs that an admin might specifically want to include on files in a pkg

An option to strip xattrs from payload files might be possible, but Allister brings up an interesting point and a list that is I'm sure is very incomplete. In the interests of simplicity and understandability, I think we either strip them all with a --no-xattrs flag or we leave them all alone. If an admin wants to be surgical, they just need to be surgical "by hand".

erikng commented 9 years ago

Sounds good.