README ------ -------------------------------------------------------------------------------- 1.) How to launch the hub: -------------------------------------------------------------------------------- At the current stage of code base you need to launch the hub by entering the following command at a command prompt (Win32) or console (Linux, etc.) in the root directory: php index.php app=hub Another other (later added) parameters should be added after app=hub in the same way due to the "design" of the inc/includes.php script. This file is somewhat deprecated anyway. If you want to try out an other 'node mode' just add a parameter 'mode=???' to the above command by '???' can be one of the following: mode=regular - The default mode for joining the hub network as a regular node. This mode doesn't have to be entered manually unless you changed the configuration entry in application/hub/config.php mode=boot - Your node acts as a bootstrapping-node. This mode is completely the same as the master-mode. If you can make sure that your node is up at least 99%, every downtime of a bootstrapping-node 'hurts' the network, and that you have the latest SVN changes you might want to contact me with your static IP number and port number of your node so I may add it to the hard-coded list of boostrapping-nodes. mode=list - Your node participates as a list-node in the network which 'aids' the master-nodes by maintaining an identical list of nodes. mode=master - A master-node holds a list of known nodes and which types of objects they are sharing. -------------------------------------------------------------------------------- 2.) Current development notices: -------------------------------------------------------------------------------- These modes are currently not yet finished. If you try an invalid out you get a nice small error message. Still this script lacks of a 'help' command-line parameter and many more. This should be done with a nice helper class and not just 'hey, my code runs' code. -------------------------------------------------------------------------------- 3.) Why the name "hub" -------------------------------------------------------------------------------- This software is simply called "hub". This has a simple reason that this is, first, the "working title" for it. And second, I have found no better name than "Generic Object Sharing Hub" for this. I would not shortcut it to "Gosh" or "GNU Gosh" or such other title, because the word "gosh" is English and completely misleading. So if you have a really good ("selling") name, please send it to me: roland[at]mxchange[dot]org or webmaster[at]ship-simu[dot]org if you prefer webmaster accounts... ;-) -------------------------------------------------------------------------------- 4.) How to start the cruncher -------------------------------------------------------------------------------- The cruncher is a test application (or maybe later used in a serious environment?) to find the right key for an encrypted message to decrypt it. It can be launched with this command: php index.php app=hub command=cruncher A producer application will follow which shall produce work units for the cruncher to work on. In the meanwhile the cruncher shall run test units which I will mainly use for development. -------------------------------------------------------------------------------- 5.) How to start the miner -------------------------------------------------------------------------------- The miner is a test application (or maybe later used in a serious environment?) to find hash blocks: php index.php app=hub command=miner The miner now relies on ext-scrypt. I used latest GIT/master here for developing this software so you may have to do the same. I used it directly from GIT: $ git clone https://github.com/DomBlack/php-scrypt.git Follow their build instructions (mostly involves a "configure", "make" and "make install"). Please also note that I cannot give support on 3rd-party programs or libraries like this one. You may wish to build this PHP extension outside *this* path, not to mix them both up. -------------------------------------------------------------------------------- 6.) How to start the crawler -------------------------------------------------------------------------------- The distributed crawler is a test application (or maybe later used in a serious environment?) to crawl websites and build a searchable and distributed index: php index.php app=hub command=crawler -------------------------------------------------------------------------------- 7.) How to start the chat console and use it -------------------------------------------------------------------------------- The chat console is yet another test application for the node. You can launch its "server-side" part by invoking this command: php index.php app=hub command=chat If you do so, another port xxxxx will be opened where you can telnet to: telnet localhost xxxxx After that you will be greeted and you are able to enter simple commands. Please do not try any 'interactive console' things like cursor key or so. This is (or will be) a very simple and basic telnet console. -------------------------------------------------------------------------------- 8.) How to start the apt-proxy and use it -------------------------------------------------------------------------------- The apt-proxy is yet another test application for the node and shall provide a proxy for sharing Debian packages over the node network. You can launch its connector by invoking this command: php index.php app=hub command=apt-proxy If you do so, another port xxxxx will be opened which you can use in your deb and deb-src lines: deb [arch=amd64,i386] http://localhost:xxxxx/ftp.de.debian.org/debian unstable main non-free contrib deb-src [arch=amd64,i386] http://localhost:xxxxx/ftp.de.debian.org/debian unstable main non-free contrib -------------------------------------------------------------------------------- 9.) How to start the virtual file system and use it -------------------------------------------------------------------------------- The FUSE virtual filesystem allows to access your node's properties and (later) many more through FUSE (Filesystem in User SpacE). You need the PHP extension 'fuse' enabled in your php.ini and please use latest SVN code from https://svn.php.net/repository/pecl/fuse/trunk as I also use it. If fuse.dll/so is correctly installed and enabled in php.ini, you can try to start it like this: php index.php app=hub command=fuse If all went smooth, you can then access the virtual file system through the mount point 'fuse' in root directory.