Summary: | Use py-freebsd module for the remaining flags mangling python side | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Diego Elio Pettenò (RETIRED) <flameeyes> |
Component: | Core | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | bsd+disabled |
Priority: | High | Keywords: | InVCS |
Version: | 2.1 | ||
Hardware: | All | ||
OS: | FreeBSD | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 193766, 181949 | ||
Attachments: | portage-2.1.2_pre3-pyfreebsd.patch |
Description
Diego Elio Pettenò (RETIRED)
2006-10-27 18:09:32 UTC
Created attachment 100629 [details, diff]
portage-2.1.2_pre3-pyfreebsd.patch
Thanks, the mtree patch is in trunk r4863 and the 2.1.2 branch r4864. Apparently the py-freebsd patch makes the preinst/postinst mtree stuff unnecessary, but the mtree stuff in prepall will still be needed. I guess I'll merge the py-freebsd stuff into trunk sometime before the first 2.1.3_pre release. Are you sure that you don't want the py-freebsd stuff in 2.1.2? Are there any technical issues preventing it, such as backward compatibility? After thinking about the mtree patch some more, I'm wondering if it's possible for the postinst mtree command to change the flags on existing directories in ways that you didn't intend. Well, starting from the fact that no directory should have immutable flag anyway, and I somehow don't like the current way portage handle that (effectively bypassing the immutable flag set on directories), mtree might just reset the flags to none as they supposed to be. It's not a 100% perfect implementation but it's not that bad either, it actually solves a few issues with the previous implementation, too. And this patch using py-freebsd does not replace the mtree(1), as without mtree(1) usage, the installed files will have no flags at all... the py-freebsd usage instead removes the code currently handled by mtree from the python side (making exceptions really exceptional cases) and removing the need for having a custom module implemented to access chflags. These two patches are complementary basically. And the main reason for not having this in 2.1.2, while having mtree(1) there is that I'd like 2.1.2 being the latest version available for 6.1 profile, adding sandbox dependency on the next version for 6.2 profile. The mtree patch has been released in 2.1.2_rc1-r1. In svn r5870 py-freebsd replaces our old chflags module. This has been released in 2.1.3_rc1. |