Table of contents:
nixshareDevelNixshare is not very complex, it is built around a simple plain text database.
DirectoriesNixshare 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.shDescription
The database menu.
Usage
dbgui.sh
TODO
- Add more help text, etc
- Allow renaming databases.
dgui.shDescription
The download menu.
Usage
dbgui.sh
TODO
- Make adding new download by hash possible with Xdialog.
- Add a stop all downloads entry ??
download.shDescription
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.shDescription
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
nixshareDescription
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.shDescription
Server script that should be run by faucet or equivalent.
Usage
runcgi.sh
TODO
search.shDescription
Command line search frontend.
Usage
search.sh [-gopt opts] [-pipe cmd] [-sort] patern
TODO
- Cleanup the code, remove dead options, etc
sgui.shDescription
The search menu
Usage
sgui.sh
TODO
- Some more testing
- Save the search options
dbmng.shDescription
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.shDescription
Some common things, it also initialize some configurations things.
TODO
- Rename to common.sh or something else ??
|