# not actually YAML but lets pretend: # -*- mode: yaml -*- # vim: ft=yaml: # append some arguments to the commandline; # accepts anything listed in --help (leading dashes are optional) # and inline comments are OK if there is 2 spaces before the '#' [global] p: 8086, 3939 # listen on ports 8086 and 3939 e2dsa # enable file indexing and filesystem scanning e2ts # and enable multimedia indexing z, qr # and zeroconf and qrcode (you can comma-separate arguments) # create users: [accounts] ed: 123 # username: password k: k # create volumes: [/] # create a volume at "/" (the webroot), which will . # share the contents of "." (the current directory) accs: r: * # everyone gets read-access, but rw: ed # the user "ed" gets read-write # let's specify different permissions for the "priv" subfolder # by creating another volume at that location: [/priv] ./priv accs: r: k # the user "k" can see the contents, rw: ed # while "ed" gets read-write # share /home/ed/Music/ as /music and let anyone read it # (this will replace any folder called "music" in the webroot) [/music] /home/ed/Music accs: r: * # and a folder where anyone can upload, but nobody can see the contents [/dump] /home/ed/inc accs: w: * flags: e2d # the e2d volflag enables the uploads database nodupe # the nodupe volflag rejects duplicate uploads # (see --help-flags for all available volflags to use) # and a folder where anyone can upload # and anyone can access their own uploads, but nothing else [/sharex] /home/ed/inc/sharex accs: wG: * # wG = write-upget = see your own uploads only rwmd: ed, k # read-write-modify-delete for users "ed" and "k" flags: e2d, d2t, fk: 4 # volflag "e2d" enables the uploads database, # "d2t" disables multimedia parsers (in case the uploads are malicious), # "dthumb" disables thumbnails (same reason), # "fk" enables filekeys (necessary for upget permission) (4 chars long) # -- note that its fine to combine all the volflags on # one line because only the last volflag has an argument # this entire config file can be replaced with these arguments: # -u ed:123 -u k:k -v .::r:a,ed -v priv:priv:r,k:rw,ed -v /home/ed/Music:music:r -v /home/ed/inc:dump:w:c,e2d,nodupe -v /home/ed/inc/sharex:sharex:wG:c,e2d,d2t,fk=4 # but note that the config file always wins in case of conflicts