March 2006 Archives
The easiest way to find missing shared libraries in FreeBSD is using sysutils/libchk port.
This script helps you to find:
- A list of executables that have unresolvable shared library links
- A list of shared libraries that are not referenced by any binary
- A list of binaries for each shared library that are linked with the library
As of March 2006 my favorite Firefox extensions include:
1- Adblock - Everyone loves this extension!
2- Filterset.G Updater - The ultimate companion for adblock.
3- PDF Download - When I click on a PDF, I don't really mean to open it in my browser!
4- Tab Mix Plus - A good session saver and Tab feature enhancement
5- Image Zoom - The name says it all
6- Customize Google - Adds more features and privacy to Google search output
7- Window Resizer - If you have big screens, you will miss seeing webpages in 1024x768
8- Copy Plain Text - If you hate seeing HTML styles while pasting from webpages to your docs
9- Chrome Cleaner - Cleans up theme/extension dumps from your browser and makes it faster
10- IE Tab - IE is evil. But sometimes you need it. Remember WindowsUpdate!
Playing with ports
If you are familiar with FreeBSD, you are already familiar with the concept of ports and the great portupgrade (sysutils/portupgrade) program. So I am not going through explainin them from ground up. Just a few tips that might come useful:
1- Quick way to find out which port needs to be upgraded:
portsdb -Ffu && portversion -L =
2- Quick way to upgrade installed ports, interactively:
portupgrade -ari
3- To deinstall a port and unneeded dependencies, interactively:
pkg_deinstall -ri portname
4- To re-install an already installed port (for any reason):
portupgrade -f portname
5- To cleanup your ports tree from stale working directories and distfiles:
portsclean -CD
6- To fix your packages database:
pkgdb -F
After installing and removing ports on your system, you will find out there are some packages are installed which has no use. Many of them were installed as dependency of other ports which you already deinstalled. The pkg_cutleaves package (sysutils/pkg_cutleaves) comes to help in these cases. To have a list of all installed packages that no other package depends on them run pkg_cutleaves -l. Taking a quick look to the output of this command you will see some packages that you have not installed directly and no other packages use them either. Like share libraries. You can safely run pkg_cutleaves -F that interactively asks you which of these packages should be deleted.
And as the last tip about ports: Be careful when upgrading major ports like Perl. Always look /usr/ports/UPDATING for vital information about these ports. When such major upgrade happens, you should upgrade all packages depending on the port, otherwise you will break a big part of installed ports. An example of such upgrade may look like:
portupgrade -Rr perl5
Play with the ports as much as you can to get more familiar with them. And keep them up to date. Do not forget using portaudit (security/portaudit) to audit for vulnerable ports.
