# Install or update gnome2 via port, no redundant compilation



## jronald (Feb 18, 2009)

I want to install gnome2 via port, and hope it can be faster than the precompiled one.
Then I got some questions, because of the long time for compiling and downloading:

There are many source codes to download, including gnome2 itself, and its dependencies. And its time consuming.
Does port have the following capabilities, while installing or updating:

1. download all the sources only while the bin needs to be updated (then I'll disconnect from Internet manullay)
2. compling the sources that are downloaded in step 1, and install the bins
3. clean the sources that are downloaded in step 1, and the bins that are already installed


----------



## ale (Feb 18, 2009)

jronald said:
			
		

> I want to install gnome2 via port, and hope it can be faster than the precompiled one.


How can it be?



			
				jronald said:
			
		

> Then I got some questions, because of the long time for compiling and downloading:
> 
> There are many source codes to download, including gnome2 itself, and its dependencies.


Obviously.



			
				jronald said:
			
		

> Does port have the following capabilities, while installing or updating:
> 
> 1. download all the sources only while the bin needs to be updated (then I'll disconnect from Internet manullay)


Run `# make fetch-recursive` (read ports manpage) or if you are using portinstall/portupgrade look at the -F option. Portmaster should have a similar option too and it seems, from what I heard, that it's more efficent. You may want to try yourself and use the tool you prefer.



			
				jronald said:
			
		

> 2. compling the sources that are downloaded in step 1, and install the bins


If you got all the distfiles at step 1, you can install/upgrade while you are offline. Is this what you are asking?



			
				jronald said:
			
		

> 3. clean the sources that are downloaded in step 1, and the bins that are already installed


If you are running portupgrade you can use `# portsclean -CDLPP`.
But if it's a problem for you getting the distfiles, I will not clean the sources that are downloaded in step 1 unless you are running on very low disk space, because it's possible that you have to download the same files again. For example, if just a patch from the maintainer is added to the port or if a port has to be rebuilt because of the bump of a shared library. So I'll use -P (not -PP) to delete only the obsoleted distfiles.


----------

