Is there a way to perform a clean installworld ?

If I set `WITHOUT_LPR=1` in /etc/src.conf the printing binaries are no longer installed when I run `make installworld`. But they're no longer updated and they're installed setuid, unless manually removed.

How to deinstall them?

The same applies to `WITHOUT_LIB32=1`, etc. Is there a way to perform such a clean installworld?
 
The cleanest way would be to make a new filesystem on a new disk, then do installworld with those options targetting the new filesystem, then switch boot disks.
 
But they're no longer updated and they're installed setuid, unless manually removed.

How to deinstall them?
You run make delete-old and make delete-old-libs. You can set BATCH_DELETE_OLD_FILES or else it will ask for each file it wants to remove.

Code:
     Convenience targets for cleaning up the install destination directory
     denoted by variable DESTDIR include:

     check-old        Print a list of old files and directories in the system.

     delete-old       Delete obsolete base system files and directories
                      interactively.  When -DBATCH_DELETE_OLD_FILES is
                      specified at the command line, the delete operation will
                      be non-interactive.  The variables DESTDIR, TARGET_ARCH
                      and TARGET should be set as with “make installworld”.

     delete-old-libs  Delete obsolete base system libraries interactively.
                      This target should only be used if no third party
                      software uses these libraries.  When
                      -DBATCH_DELETE_OLD_FILES is specified at the command
                      line, the delete operation will be non-interactive.  The
                      variables DESTDIR, TARGET_ARCH and TARGET should be set
                      as with “make installworld”.
build(7)
 
Thank you SirDice ! After checking with `make check-old`, this command worked like a charm:

`make -DBATCH_DELETE_OLD_FILES delete-old delete-old-libs`
 
Back
Top