On Jan 23, 2015, at 17:20, Garrett Cooper <yaneurabeya_at_gmail.com> wrote: > On Jan 23, 2015, at 17:16, Dmitry Marakasov <amdmi3_at_amdmi3.ru> wrote: > >> * Garrett Cooper (yaneurabeya_at_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_at_, though removed later by brooks_at_ [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!
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:55 UTC