Phlo stands for 'Perl Hard Link Optimizer'. This utility was made beccause one day, I was lacking space on one of my VM. I look at the directories using a lot of space, and my perlbrew was one of them, that made think about all the duplicates files that were there (Same modules in all Perl versions, same licenses/generated files everywhere...). As I had already made a short script to find and delete all the duplicates in my multimedia files collection (ebooks, mp3, movies...) I decided to try to hard link the duplicates.
I test it on my perl5/perlbrew directory:
$diff -r perl5.phlowed perl5.ori
showed no differences, but:
$du -sh perl5 perl5.ori 680M perl5.ori 590M perl5.phlowed
And most importantly the test suites of the modules I was working on still pass with the differents Perl installed...
I tought at first that it would be a good patch for perlbrew if it worked. But thinking about it, there is probably a need for a general tool of its own: Everytime read-only data are duplicated on a same filesystem (hard link) phlo can be used...
So here is my attempt to provide such a tool.
To install this module, type the following:
perl Build.PL
./Build
./Build test
./Build install
or
perl Makefile.PL
make
make test
make install
Copyright (c) 2012 Arnaud "Arhuman" Assad App::Phlo is released under the same terms as Perl.
s program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. That being said, let met put it clearly : Use at your own risk. This program deletes files, creates hardlinks, among other things. Even if I'll do my best to prevent any dataloss, please consider doing backup before use.