2 # Ian Beckwith <ianb@erislabs.net>
5 use lib '/home/ianb/projects/id3fs/id3fs/lib';
7 use Getopt::Long qw(Configure);
11 $me=($0=~/(?:.*\/)?(.*)/)[0];
18 Configure(qw(bundling no_ignore_case));
19 my $optret=GetOptions(
20 "verbose|v" => \$verbose,
21 "quiet|q" => sub { $verbose=0; },
23 "database|f=s" => \$dbpath,
26 usage() if(scalar(@ARGV) != 2 || !$optret || $help);
31 my $db=ID3FS::DB->new($me, $dbpath, $source);
32 my $fuse=ID3FS::Fuse->new($db, $source, $mountpoint, $verbose);
37 die("Usage: $me [-vqh] [-f <dbfile>] [--] <sourcedir> <mountpoint>\n".
39 " -q\t\t\tQuiet (default)\n".
40 " -h\t\t\tThis help\n".
41 " -f|--database=FILE\tPath to database file\n" .
42 " --\t\t\tEnd of options\n");
49 id3fsd - FUSE filesystem for browsing id3 tags
53 B<id3fsd> [B<-vqh>] S<B<[-f >I<dbfile>]> [B<-->] I<SOURCEDIR> I<MOUNTPOINT>
57 id3fsd provides a browsable filesystem of your music files, organised
58 into sub-directories by id3 tags (or flac/ogg comments).
60 An index should first be created with L<id3fs-index(1)>, then id3fsd
61 can mount the files in I<SOURCEDIR> on the directory I<MOUNTPOINT>.
63 If not explicitly specified (with B<-f>), the index is searched for
64 at I<SOURCEDIR>/B<.id3fs>.
66 The resulting filesystem is read-only. Tags appear as directories,
67 and files appear as symlinks to the actual files in I<SOURCEDIR>.
69 FIXME: better description, allow_others/fuse.conf, fstab, explain genre tag
77 Enable verbose operation.
81 Quiet (no output). This is the default.
85 Show a short help message.
87 =item S<B<-f >I<FILE>> | S<B<--database=>I<FILE>>
89 Use database in I<FILE>. The default is I<SOURCEDIR>/B<.id3fs>.
99 To mount an id3fs filesystem which indexes B<~/music/albums> on
102 First create the index:
104 id3fs-index -v ~/music/albums
106 If you have a large collection of music, this may take some time.
108 Then create the mountpoint:
112 and mount the filesystem:
114 id3fsd ~/music/albums ~/music/tags
116 Then explore the tags in ~/music/tags/
122 Please report any found to ianb@erislabs.net
126 L<id3fs-index(1)>, L<http://fuse.sourceforge.net>
130 Ian Beckwith <ianb@erislabs.net>
134 The latest version can be found at:
136 B<http://erislabs.net/ianb/projects/id3fs/>
140 Copyright 2010 Ian Beckwith <ianb@erislabs.net>
142 This program is free software: you can redistribute it and/or modify
143 it under the terms of the GNU General Public License as published by
144 the Free Software Foundation; either version 3 of the License, or
145 (at your option) any later version.
147 This program is distributed in the hope that it will be useful,
148 but WITHOUT ANY WARRANTY; without even the implied warranty of
149 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
150 GNU General Public License for more details.
152 You should have received a copy of the GNU General Public License
153 along with this program. If not, see <http://www.gnu.org/licenses/>.