.oO  |  List directory  |  History  |  Similar  |  Print version
Projects 
   ScummC 
   php edna 
   nixshare 
   concede 
   Orewar 
   AEval 
Portable Coding 
   Shell scripts 
   Standard C 
Random stuff 
   Slackware and UTF-8 
   Bit tricks 
Wiki 
   Links 
   Playground 
   Impressum 

Projects > nixshare > nixshareDevel

 
rw-rw-r--   albeu   nixshare
Table of contents:

nixshareDevel

Nixshare is not very complex, it is built around a simple plain text database.

Directories

Nixshare use two directories to store his data. The database directory contain the list of files avaible on each remote host and in each shared directory. The download directory hold the part files during downloads, log, etc.

Database directory

  • local.list
    All local files sorted by change time, used by the cgi.
  • local.list.gz
    Compressed local.list, used by the cgi.
  • remote.db.list
    List of the exported databases, used by the cgi.
  • hash.list
    All remote files sorted by hash, used by the searchs.
  • db.lock
    Lock to prevent concurrent database update.
  • dbname
    • list
      The file list, sorted by change time.
    • baseurl
      URL to the cgi or file:// URL to the shared directory.
    • private
      When this file exist the database is not exported.

Download temp directory

  • dbname.lock
    Lock to prevent concurrent downloads from the same server.
  • hash.log
    Log of the download.
  • hash
    • xxx-xxx.part
      Part files.
    • savename
      Name under which the file will be saved.
    • size
      Total size, for conivence.
    • status
      Download status using a one letter code.
    • lock
      Lock to prevent concurent download of the same file.

Scripts

dbgui.sh

Description

The database menu.

Usage

dbgui.sh

TODO

  • Add more help text, etc
  • Allow renaming databases.

dgui.sh

Description

The download menu.

Usage

dbgui.sh

TODO

  • Make adding new download by hash possible with Xdialog.
  • Add a stop all downloads entry ??

download.sh

Description

Download a file from all server that have it.

Usage

download.sh hash [savename]

TODO

  • Try to autocreate directories when saving.
  • Add some interactive progress display when it run on a tty

indexer.sh

Description

This script create and update databases of local files.

Usage

indexer.sh [-p dbname] directory [olddb]

-p show a progress status in the format needed by gauge dialogs.

TODO

  • More testing

nixshare

Description

The main and configuration menu.

Usage

nixshare

TODO

  • A better config menu when using Xdialog.
  • Change how the config is saved to have it add new options when these are not alredy there.

runcgi.sh

Description

Server script that should be run by faucet or equivalent.

Usage

runcgi.sh

TODO

  • Security cheks.

search.sh

Description

Command line search frontend.

Usage

search.sh [-gopt opts] [-pipe cmd] [-sort] patern

TODO

  • Cleanup the code, remove dead options, etc

sgui.sh

Description

The search menu

Usage

sgui.sh

TODO

  • Some more testing
  • Save the search options

dbmng.sh

Description

Command line frontend to the databases.

Usage

dbmng.sh set dbname url

dbmng.sh update [dbname ...]

dbmng.sh list

TODO

  • Add more commands: remove, etc

utils.sh

Description

Some common things, it also initialize some configurations things.

TODO

  • Rename to common.sh or something else ??


Reference http://alban.dotsec.net/Projects/NixshareDevel

Comments: 0 New comment

Prev. nixshareIntroduction