Last active
August 29, 2015 13:57
-
-
Save peczenyj/9725430 to your computer and use it in GitHub Desktop.
This script creates one fuse filesystem with one file, cat.jpg, with a random kitten image (from thecatapi.com)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
NEW! you can install via cpan: https://metacpan.org/release/PACMAN/Acme-CatFS-0.001 | |
1. you should install LWP::Simple and Fuse:Simple - use cpan or cpanm | |
2. you should configure the local fuse install to run as root or as common user | |
3. don't forget 'fusermount -u <mountpoint>' after finish the script | |
to install dependencies | |
you can use regular cpan OR cpanminus ( http://search.cpan.org/~miyagawa/App-cpanminus-1.7001/lib/App/cpanminus.pm ) | |
$ cpan LWP::Simple | |
$ cpan Fuse:Simple ( maybe you need install via apt-get libfuse-dev too ) | |
the difference is: cpanminus is more indicate if you want install something without change the default perl instalation in your operational system. 90% of the cases you can install with regular cpan ( built in ). | |
to test | |
$ chmod +x cats.pl | |
$ mkdir catfs | |
$ ./cats.pl catfs | |
# in other terminal | |
$ ls catfs | |
cat.jpg | |
$ gimp catfs/cat.jpg # will open a different kitten pic each time | |
# after finish the script | |
$ fusermount -u catfs | |
Fork if you want: | |
https://github.com/peczenyj/catfs |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env perl | |
use strict; | |
use warnings; | |
use LWP::Simple; | |
use Fuse::Simple qw(main); | |
my $mountpoint = $ARGV[0]; | |
die "usage: $0 <directory>\n" if ! defined $mountpoint || ! -d $mountpoint; | |
main( | |
mountpoint => $mountpoint, | |
"/" => { | |
'cat.jpg' => sub { | |
get('http://thecatapi.com/api/images/get?format=src&type=jpg'); | |
}, | |
}, | |
); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment