On Jan 23, 2015, at 17:20, Garrett Cooper <yaneurab...@gmail.com> wrote:
> On Jan 23, 2015, at 17:16, Dmitry Marakasov <amd...@amdmi3.ru> wrote: > >> * Garrett Cooper (yaneurab...@gmail.com) wrote: >> >>>> Some years ago I've started a project of improving >>>> OptionalObsoleteFiles.inc completeness, which allows make delete-old >>>> / delete-old-libs / delete-old-dirs targets completelty remove files >>>> which are normally installed when specific src.conf WITHOUT_* knobs >>>> are set. >>>> >>>> In other words, if a user has some WITHOUT_* set in src.conf, >>>> specific files are not installed by installworld, but not removed >>>> by remove-old, which I try to fix. >>>> >>>> In yet other words, I want to make it so `make installworld >>>> -DWITHOUT_foo=yes` and `make installworld && make delete-old >>>> -DWITHOUT_foo=yes` result in the very same file sets. >>>> >>>> Though the project seems to be useful and have real demand (added >>>> to IdeasPage by netchild@, though removed later by brooks@ [1]) >>>> and interest ([2]), the change was ignored back then and now the >>>> patch is completely rotten. I can redo it, but I need a reviewer. >>>> Here's a first small part of the patch: >>>> >>>> https://reviews.freebsd.org/D1600 >>>> >>>> The WIP branch with other changes is [3] >>>> >>>> Also there is a question of delete-old-dirs removing directories >>>> which are created by mtree run by installworld unconditionally. >>>> This seems to be incorrect - either directories should be installed >>>> conditionally or not removed by delete-old-dirs. My patch will >>>> address this issue as well, by not remiving unconditionally installed >>>> dirs. >>>> >>>> [1] >>>> https://wiki.freebsd.org/action/diff/IdeasPage?action=diff&rev1=260&rev2=261 >>>> [2] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=168341#c6 >>>> [3] https://github.com/AMDmi3/freebsd/compare/obsolete-files >>> >>> Hi Dmitry, >>> Seems like we’ve duplicated work a bit. Have you looked at >>> ^/projects/building-blocks yet ? >> >> Hm, seems so, partly. How do you gather missing entries? My way is >> pretty dumb, I just do bunch of installworlds + delete-old's and add >> diff to the file, you probably do it more cleverly. Will committing >> my changes interfere with your work? If so, it may be better to direct >> them to your branch instead. Especially if you are more aware of knob >> combinations and their effects. > > I wrote this script to track what files get installed by directories: > https://svnweb.freebsd.org/base/projects/building-blocks/tools/add-optional-obsolete-files-entries.sh?revision=275238&view=markup > . It’s not perfect (doesn’t work for “kitchen sink” directories like etc/ > and share/…), but it’s a reasonable starting point for grabbing all of the > files. > > I’m going to hold off on the rc.d deletions/rewrites for dependent services > after I do more targeted review/testing, as it might screw up boot order in > unexpected ways with services and programs that get run out of order, but I’m > reasonably confident that the contents of the branch work. > > I was going to start cherry-picking changes from the branch this weekend. Forgot to respond on one important point: reviewing and committing the higher-level changes (make remove-old) shouldn’t be a problem, and I’ll be sure to commit the overlapping changes with OptionalObsoleteFiles.inc first to reduce the diff between our branches. Thanks!
signature.asc
Description: Message signed with OpenPGP using GPGMail