GNU Stow behoudt alle bestanden afzonderlijk in één directory per programma. Zo krijg je bijvoorbeeld /usr/local/stow/icinga of /usr/local/stow/perl. In die laatste directory bevindt de binary zich dan in /usr/local/stow/perl/bin/perl en de man-pagina in /usr/local/stow/perl/man/man1.

Installeren met Stow

De eerste stap om een programma met Stow te installeren is de klassieke configure/make/make install procedure, maar bij de make install-stap mag je niet vergeten de parameter prefix=/usr/local/stow/foobar-0.1 aan te geven om te verwijzen naar de directory waarin het desbetreffende programma (of bibliotheek) geïnstalleerd wordt. Een voorbeeld:

$ ./configure

$ make

$ sudo make install prefix=/usr/local/stow/foobar-0.1

Na het installeren van het programma ga je naar de hoofddirectory van Stow en voer je Stow uit op de directory van het programma:

$ cd /usr/local/stow

$ sudo stow foobar-0.1

Stow maakt nu symbolische links aan, bijvoorbeeld van /usr/local/bin/foobin naar /usr/local/stow/foobar-0.1/bin/foobin en van /usr/local/man/man1/foobin.1 naar /usr/local/stow/foobar-0.1/man/man1/foobin.1. Gebruik je de optie -v of -vv bij het 'stowen' van de directory van een programma, dan krijg je te zien welke symlinks er aangemaakt worden.

Deinstalleren

Een door Stow beheerd programma uninstallen is even eenvoudig:

$ cd /usr/local/stow

$ sudo stow -D foobar-0.1

Dit verwijdert de symlinks, maar raakt niet aan de bestanden in /usr/local/stow/foobar-0.1. Ook hier krijg je met de optie -v of -vv meer informatie te zien.

Wanneer je nu meerdere versies van hetzelfde pakket wil testen, kun je deze elk installeren in bijvoorbeeld /usr/local/stow/foobar-0.1, /usr/local/stow/foobar-0.2 en /usr/local/stow/foobar-0.3, en activeer je een specifieke versie als volgt:

$ cd /usr/local/stow

$ sudo stow -D foobar-0.1

$ sudo stow foobar-0.2