# Is growing a lot!



## sk8harddiefast (Mar 28, 2013)

After a clean install (a year before) I had ~ 700 packages. Today after a lot of updates and rebuilds of ports I have 830 packages!
What's wrong with that? I have more than 100 additional packages!


----------



## SirDice (Mar 28, 2013)

Perhaps a lot of them are build dependencies?


----------



## sk8harddiefast (Mar 28, 2013)

Yes but the real problem is not the number of the packages. In reality all of as we rebuild all the ports. Not every day but at least one time in 3 months.
Well. My Cpu is Intel Q6600. Is one of the first 4 cores cpu. Is a little.... old! So now for over 800 packages I need about 2 days to build them! One day I should buy an I7 for this job or better to buy 5 servers, install BSD on them and create a cluster with build servers  Î¤hey will do nothing else except to work together when I want to rebuild the system. Time to compile ~850 packages...... 20 minutes 
The only bad thing. Money to buy 5 servers x2 xeon cpus each......~8000-10000 euros 
And the real question is why so much dependencies?


----------



## jrm@ (Mar 28, 2013)

Does `% pkg autoremove` (assuming you are using pkgng) help?  You might check ports-mgmt/pkg_cutleaves as well to remove leaf ports.

Sometimes simply changing a single configuration option for a port can cause one new port to be installed that depends on a bunch of other port that depend on a bunch of other ports that depend on....


----------



## Beastie (Mar 28, 2013)

You probably use "heavy" applications that rapidly grow and frequently add new dependencies.

I have half as many installed applications/dependencies as you (build dependencies excluded).
And the numbers haven't changed much for me between late 2011 (when I was using 8.x) VS now (9.1).


----------



## sk8harddiefast (Mar 28, 2013)

> Sometimes simply changing a single configuration option for a port can cause one new port to be installed that depends on a bunch of other port that depend on a bunch of other ports that depend on....


Yes. That's true but on most cases this happens on a new update of a package. Not because I changed a flag.


> You probably use "heavy" applications that rapidly grow and frequently add new dependencies.


I use the well known for a desktop computer.
Xfce4, mozilla, transmission, gimp, geany, xfce4-terminal, xfburn, xarchiver, libreoffice, virtualbox, gcalctool, minitube, mousepad, ristretto image viewer, vlc, osmo, cairo-clock, kdenlive, supertuxcart, xtrlock. The half of them are part of xfce4 and some of them have no dependencies.
And some terminal apps as Kismet, aircrack, hydra, conky and finally some xfce4-plugins as xfce4-screenshooter, weather-plugin etc
All this are about 650 packages + xorg + nvidia driver.
With fonts, flash player, zip extentions as rar, 7zip etc we are on 700 packages. Updating this for a year, now I am on 840!


----------



## jrm@ (Mar 28, 2013)

sk8harddiefast said:
			
		

> Yes. That's true but on most cases this happens on a new update of a package. Not because I changed a flag.


Coincidentally, I dealt with this today.  I've managed to avoid having devel/dbus, sysutils/hal and friends installed.  Today, I updated graphics/libgphoto2 and it started pulling in all these ports and their dependencies.  Looking at the latest commit message for graphics/libgphoto2 sort of explains what happened.  Maybe you're dealing with something similar?

P.S. I didn't have sysutils/hal installed, so I actually think there is a little problem with that commit, or at least the description.


----------



## wblock@ (Mar 28, 2013)

sk8harddiefast said:
			
		

> In reality all of as we rebuild all the ports. Not every day but at least one time in 3 months.



Why?  No, that's not normal.  You should not need to rebuild all ports unless something major happens.


----------



## fonz (Mar 28, 2013)

wblock@ said:
			
		

> You should not need to rebuild all ports unless something major happens.


Perhaps he meant "_check_ all ports and update if necessary"?


----------



## sk8harddiefast (Mar 28, 2013)

I meant both of them. That I discovered is that when you update a package, the package is updating it self but is not downloading his new dependencies. Every 3 months, I do a complete rebuild of all ports to be sure if everything is ok. Then some dependencies are downloading and for some reason where not been downloaded when I updated my packages. So they are downloading the moment of all packages rebuild. And because update on update on update a complete rebuild for maybe some broken thing is no something bad. Just take too log.


----------



## wblock@ (Mar 28, 2013)

Why not just stop using packages, and only rebuild ports when needed?  That works pretty well.


----------



## sk8harddiefast (Mar 28, 2013)

Because I don't like that my pkg db growing but if on "all packages rebuild" downloads a dependency probably means that he need it. And how will work good if misses dependencies?


----------



## wblock@ (Mar 28, 2013)

Sorry, message not clear.  You are using packages to save time, but wasting time by rebuilding everything from ports.  Solution: stop using packages, use portmaster to handle dependencies, only rebuild what is needed.


----------



## KNOStic (Mar 29, 2013)

Not sure if anyone noticed, but the author just did another commit apparently referring to the issue:

http://svnweb.freebsd.org/ports?view=revision&revision=315503


----------



## sk8harddiefast (Mar 29, 2013)

No. I work only with ports. From my first day on FreeBSD. With ports and portupgrade tool. I like ports because I have the flags option. When I say package, I mean a port.


----------



## fonz (Mar 29, 2013)

sk8harddiefast said:
			
		

> When I say package, I mean a port.


You may want to be a bit more careful then in order to avoid confusion; packages and ports are not (entirely) the same and the words are therefore not interchangeable. 

Anyway, my usual strategy is to run the following at least once or twice a week:
`# portsnap fetch update`
`# portmaster --no-term-title -a`
Admittedly, once or twice a week may seem rather frequent, but on the upside it doesn't take very long because there are usually only a few ports that need updating. If you update your ports once a month or even less frequently, chances are good that there will be lots of ports that need updating, which in turn may take a lot of time to complete.


----------

