Desktop rebuild

illoai at illoai at
Fri Apr 27 22:58:16 UTC 2007

On 27/04/07, Derrick Ryalls <ryallsd at> wrote:
> I have a laptop that I am currently updating world to the latest from
> the v6 branch, once that is done I want to completely start fresh with
> the GUI.  Right now I have gnome in a mostly working state, a mostly
> out of date KDE and a bunch of other random crud I have installed over
> the last 16 months or so.  Instead of trying to use portupgrade and
> have it fail out/fix/restart, I was thinking life would be easier if I
> just removed anything graphical and start that from scratch.  This way
> all my settings/data remain intact and I can just do a pkg install the
> new stuff.
> Is anyone aware of a quick/safe way of blowing away nearly all
> installed apps as such to start from near scratch.  I do use bash and
> probably a couple other non-GUI installs, so I didn't necessarily want
> to kill _all_ installed ports/pkgs but I might be willing to do that
> if needed.
> Any thought on the best way to approach this?

The best method I have come up with is to first
gather a list of leaf packages with ports-mgmt/portmaster:
$ portmaster -l

and then (assuming you have ports-mgmt/portupgrade
$ pkg_deinstall -r <leaf pkg names>
$ pkg_delete -r <leaf pkg names>

ports-mgmt/pkg_cutleaves is a bit overly thorough
(and underly[1] conservative) for my tastes, but may
be more your style.

This shouldn't delete anything required by the stuff
you want to keep and should clean out most of the
kipple.  Multiple runs are suggested and deleting
root packages (as listed under portmaster -l) most
likely won't harm anything (though some of them
may be reinstalled when you upgrade).

pkg_deinstall has the advantage of being able to issue
$ pkg_deinstall -Rr kde*
, which will delete anything requiring kde and required by
kde (at least that is not required by some other package),
and the disadvantage of requiring that both perl and ruby
be installed.

[1] May not be an honistically truthifiable word.


More information about the freebsd-questions mailing list