Note: You are viewing an old version of this page. View the current version.

Differences between version 9 and previous revision of KnowledgeBase/FreeBSD/UpdatePorts.

Other diffs: Previous Major Revision, Previous Author

Newer page: version 9 Last edited on Sunday, 21 March 2010 15:11:18 by CyberLeo Revert
Older page: version 8 Last edited on Sunday, 10 January 2010 13:21:04 by CyberLeo Revert
@@ -1,4 +1,7 @@
+*Note:* I just use [ports-mgmt/portmaster|http://www.freshports.org/ports-mgmt/portmaster/] now  
+----  
+  
 Sync ports tree 
 <code brush=bash> 
 csup ports-supfile 
 </code> 

version 9

Note: I just use ports-mgmt/portmaster now


Sync ports tree

csup ports-supfile

Update INDEXes

portsdb -Uu
pkgdb -u

Get a list of out-of-date ports

pkg_version -vl '<' | cut -d' ' -f1

Pull dependency information for each out-of-date port (Children must be rebuilt/reinstalled as well)

pkg_info -Rq

Do this recursively, keeping track of the depth. Once you hit bottom on all the ports and their descendants, squash the depgraph, placing deeper dependencies later. I.e.:

A
-B
-C
--D
E
-B
-D
=becomes=
A
E
B
C
D
==

BASH script is at CheckPorts.sh

Once you have a list of ports to install, and their order, you can use a convenience function in sh to build a package

makepkg() {
 rm *.tbz
 make all deinstall install package clean && mv -v *.tbz /build/pkg/
}