On Wed, Aug 18, 2004 at 08:24:21PM -0700, Henrik W Lund wrote: > Curtis Vaughan wrote: > > >Made a big mistake today. I was reading in a book that I needed to > >install cvsup for doing updates. Good. So, I started installing it. > >Meanwhile I began perusing the FreeBSD website information about cvsup > >and there I read, if you not using a gui, then don't install cvsup, > >but cvsup-without-gui. So, is there a way to back out the cvsup which > >I did do as it apparently has installed a lot of stuff I don't need on > >this server. > >Or do I have to just uninstall all those packages individually? Is > >there a way then to identify which packages were installed by > >installing cvsup? > > > >Curtis > > Greetings! > > I'd say your best bet is to install sysutils/portupgrade and use the > pkg_deinstall command with the -R flag. I.e.: > > `pkg_deinstall -R cvsup' > > If you absolutely do not want any more riffraff on your box, then you > must examine the output of > > `pkg_info -r cvsup' > > and pkg_delete each of the packages listed manually, then delete cvsup. > If pkg_delete fails on any one of the packages in the list, recurse > through its dependencies until it can be deleted, then proceed to the > next package in the list, etc... Just be careful when traversing the > dependencies. Sooner or later you might deinstall something you really > want to keep, so keep your eyes open. Not all packages that cvsup > depends on is required only by cvsup, and some of them were probably > already installed when you installed cvsup. Like I said, your best bet > is to go with the sysutils/portupgrade method.
This is generally sound advice, but unfortunately, and particularly in the case of the cvsup ports, it pretty much misses the point. cvsup depends on very few other ports, all of which are also commonly dependencies of a large number of other ports: % pkg_info -r cvsup\* Information for cvsup-16.1h: Depends on: Dependency: pkgconfig-0.15.0_1 Dependency: imake-6.7.0_2 Dependency: freetype2-2.1.7_3 Dependency: expat-1.95.8 Dependency: fontconfig-2.2.3,1 Dependency: xorg-libraries-6.7.0_1 In fact, almost all those dependencies are inherited indirectly through the xorg-libraries port. The cvsup-without-gui package doesn't have *any* dependencies. Chances are the 'pkg_deinstall -R' method suggested will only remove the cvsup or cvsup-without-gui port. Of course, what I've been looking at here are *run time dependencies*. If you install cvsup from a pkg, that's all you have to bother with. However, if you install cvsup from source code there's a whole other swathe of dependencies that haven't yet been considered. Those are the *build time dependencies*. In cvsup's case, those are quite heavy: it's necessary to install a complete Modula3 compilation tool chain: % cd /usr/ports/net/cvsup % make -V BUILD_DEPENDS /usr/local/lib/m3/pkg/formsvbt/FreeBSD4/libm3formsvbt.a:/usr/ports/lang/ezm3 The situation has improved over time, and all that's required nowadays is the ezm3 port. But that's a very large port, and it takes quite a lot of effort to compile and install. You don't need ezm3 for cvsup to work from day to day. You do need it anytime you want to compile an update to cvsup from source. In principal you can get round that by just using the pkg system to get any updates, so long as you're willing to wait for a few weeks for the updated packages to come out. Personally I'd just leave ezm3 inplace and compile cvsup updates from source. As for whether the OP should install cvsup or cvsup-without-gui -- either will do just fine. The advice to install the cvsup-without-gui pkg seen in many places on the net is becuse it's a lot quicker to install that dependency-less port than it is to install various X libraries and other stuff. Additionally I'd install cvsup-without-gui if I was building a server machine *without* any X windows stuff on it at all. Otherwise, I'd just install the cvsup port. Indeed, for a brand-new install from scratch, I tend to install cvsup-without-gui temporarily and then use it to pull down the latest system and ports sources. After which that port will almost immediately be overwritten with a freshly compiled copy of the cvsup port as part of the general process of installing all of the extra ports I need. Cheers, Matthew -- Dr Matthew J Seaman MA, D.Phil. 26 The Paddocks Savill Way PGP: http://www.infracaninophile.co.uk/pgpkey Marlow Tel: +44 1628 476614 Bucks., SL7 1TH UK
Description: PGP signature