GNU Stow
GNU Stow is a symlink farm manager which takes distinct packages
of software and/or data located in separate directories on the
filesystem, and makes them appear to be installed in the same place.
For example, /usr/local/bin
could contain symlinks to
files within /usr/local/stow/emacs/bin
,
/usr/local/stow/perl/bin
etc., and likewise recursively
for any other subdirectories such as .../share
,
.../man
, and so on.
This is particularly useful for keeping track of system-wide and per-user installations of software built from source, but can also facilitate a more controlled approach to management of configuration files in the user's home directory, especially when coupled with version control systems.
Stow is implemented as a combination of a Perl script providing a CLI interface, and a backend Perl module which does most of the work. Stow is Free Software, licensed under the GNU General Public License.
Latest news
- Sun 8 September 2024
-
Stow 2.4.1 has been released. This release contains some
minor bug-fixes — specifically, fixing
the
--dotfiles
option to work correctly with ignore lists, allowing options in.stowrc
with spaces, and avoiding a spurious warning on Perl >= 5.40. There were also some clean-ups and improvements, mostly internal and not visible to users. Read details of what's new.
- Sun 7 April 2024
-
Stow 2.4.0 has been released. This release contains some
much-wanted bug-fixes — specifically, fixing the
--dotfiles
option to work withdot-foo
directories, and avoiding a spurious warning when unstowing. There were also very many clean-ups and improvements, mostly internal and not visible to users. Read details of what's new.
Downloading Stow
Stow can be found on the main GNU ftp server: http://ftp.gnu.org/gnu/stow/ (via HTTP) and ftp://ftp.gnu.org/gnu/stow/ (via FTP). It can also be found on the GNU mirrors; please use a mirror if possible.
There is also a git repository containing the latest development code.
Documentation
Documentation for Stow is available online, as is documentation for most GNU software. You may also find more information about Stow by running info stow or man stow, or by looking at /usr/share/doc/stow/, /usr/local/doc/stow/, or similar directories on your system. A brief summary is available by running stow --help.
Mailing lists
Stow has the following mailing lists:
- help-stow is for general user help and discussion.
- stow-devel is used to discuss most aspects of Stow, including development and enhancement requests.
- bug-stow is for bug reports.
Announcements about Stow are posted to info-stow and also, as with most other GNU software, to info-gnu (archive).
Security reports that should not be made immediately public can be sent directly to the maintainer. If there is no response to an urgent issue, you can escalate to the general security mailing list for advice.
The Savannah project also has a mailing lists page.
Getting involved
Development of Stow, and GNU in general, is a volunteer effort, and you can contribute. For information, please read How to help GNU. If you'd like to get involved, it's a good idea to join the stow-devel mailing list.
- Bug reporting
- Please send bug reports to the bug-stow mailing list (see Mailing lists above).
- Development
- For development sources and other information, please see the Stow project page at savannah.gnu.org. There is also a stow-devel mailing list (see Mailing lists above).
- Translating Stow
- Stow is not currently multi-lingual, but patches would be gratefully accepted. Please e-mail stow-devel if you intend to work on this.
- Maintainers
- Stow is currently being maintained by Adam Spiers. Please use the mailing lists for contact.
Licensing
Stow is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.