mirror of
https://github.com/iiab/iiab.git
synced 2025-02-13 11:42:08 +00:00
internetarchive: Oops - built README.rst in wrong place
This commit is contained in:
parent
9efac6d29b
commit
d2200d07a1
2 changed files with 231 additions and 106 deletions
106
README.rst
106
README.rst
|
@ -1,106 +0,0 @@
|
||||||
*Sharing the World’s Free Knowledge*
|
|
||||||
|
|
||||||
Internet-in-a-Box (IIAB)
|
|
||||||
========================
|
|
||||||
|
|
||||||
`Internet-in-a-Box (IIAB) <http://internet-in-a-box.org>`__ is a
|
|
||||||
“learning hotspot” that brings the Internet’s crown jewels (Wikipedia in
|
|
||||||
any language, thousands of Khan Academy videos, zoomable OpenStreetMap,
|
|
||||||
electronic books, WordPress journaling, Toys from Trash electronics
|
|
||||||
projects, ETC) to those without Internet.
|
|
||||||
|
|
||||||
You can build your own tiny, affordable server (an offline digital
|
|
||||||
library) for your school, your medical clinic, your prison, your region
|
|
||||||
and/or your very own family — accessible with any nearby smartphone,
|
|
||||||
tablet or laptop.
|
|
||||||
|
|
||||||
Internet-in-a-Box gives you the DIY tools to: 1. Download then
|
|
||||||
drag-and-drop to arrange the `very best of the World’s Free
|
|
||||||
Knowledge <http://internet-in-a-box.org/#quality-content>`__. 2. Choose
|
|
||||||
among `30 powerful educational
|
|
||||||
apps <http://wiki.laptop.org/go/IIAB/FAQ#What_services_.28IIAB_apps.29_are_suggested_during_installation.3F>`__
|
|
||||||
for your school or learning/teaching community, optionally with a
|
|
||||||
complete LMS (learning management system). 3. Exchange local/indigenous
|
|
||||||
knowledge with nearby communities, using our `Manage
|
|
||||||
Content <https://github.com/iiab/iiab-admin-console/blob/master/roles/console/files/help/InstContent.rst#manage-content>`__
|
|
||||||
interface and possible mesh networking.
|
|
||||||
|
|
||||||
FYI this `community
|
|
||||||
product <https://en.wikipedia.org/wiki/Internet-in-a-Box>`__ is enabled
|
|
||||||
by professional volunteers working
|
|
||||||
`side-by-side <http://wiki.laptop.org/go/IIAB/FAQ#What_are_the_best_places_for_community_support.3F>`__
|
|
||||||
with schools, clinics and libraries around the world. *Thank you for
|
|
||||||
being a part of our http://OFF.NETWORK grassroots
|
|
||||||
technology*\ `movement <https://meta.wikimedia.org/wiki/Internet-in-a-Box>`__\ *!*
|
|
||||||
|
|
||||||
Installation
|
|
||||||
------------
|
|
||||||
|
|
||||||
Install Internet-in-a-Box (IIAB) from
|
|
||||||
`download.iiab.io <http://download.iiab.io/>`__
|
|
||||||
|
|
||||||
Please see `FAQ.IIAB.IO <http://FAQ.IIAB.IO>`__ which has 40+ questions
|
|
||||||
and answers to help you along the way, as you put together the “local
|
|
||||||
learning hotspot” most suitable for your own teaching/learning
|
|
||||||
community.
|
|
||||||
|
|
||||||
Our `HOW-TO
|
|
||||||
videos <https://www.youtube.com/channel/UC0cBGCxr_WPBPa3IqPVEe3g>`__ can
|
|
||||||
be very helpful and the
|
|
||||||
`Installation <https://github.com/iiab/iiab/wiki/IIAB-Installation>`__
|
|
||||||
wiki page has more intricate details e.g. if you’re trying to install
|
|
||||||
Internet-in-a-Box (IIAB) onto a `different
|
|
||||||
Linux <https://github.com/iiab/iiab/wiki/IIAB-Platforms>`__ that has not
|
|
||||||
yet been tried.
|
|
||||||
|
|
||||||
After you’ve installed the software, you should `add
|
|
||||||
content <https://github.com/iiab/iiab/wiki/IIAB-Installation#add-content>`__,
|
|
||||||
which can of course take time when downloading multi-gigabyte Content
|
|
||||||
Packs!
|
|
||||||
|
|
||||||
Finally, you can `customize your Internet-in-a-Box home
|
|
||||||
page <http://wiki.laptop.org/go/IIAB/FAQ#How_do_I_customize_my_Internet-in-a-Box_home_page.3F>`__
|
|
||||||
(typically http://box or http://box.lan) using our **drag-and-drop**
|
|
||||||
Admin Console (http://box.lan/admin) — to arrange Content Packs and IIAB
|
|
||||||
Apps (services) for your local community’s needs.
|
|
||||||
|
|
||||||
Community
|
|
||||||
---------
|
|
||||||
|
|
||||||
Internet-in-a-Box (IIAB) greatly welcomes contributions from educators,
|
|
||||||
librarians *and* IT/UX/QA people of all kinds!
|
|
||||||
|
|
||||||
Please see “`How can I
|
|
||||||
help? <http://wiki.laptop.org/go/IIAB/FAQ#How_can_I_help.3F>`__” at:
|
|
||||||
`FAQ.IIAB.IO <http://FAQ.IIAB.IO>`__
|
|
||||||
|
|
||||||
To learn about our software architecture, check out our `Contributors
|
|
||||||
Guide <https://github.com/iiab/iiab/wiki/IIAB-Contributors-Guide>`__.
|
|
||||||
FYI we use
|
|
||||||
`Ansible <http://wiki.laptop.org/go/IIAB/FAQ#What_is_Ansible_and_what_version_should_I_use.3F>`__
|
|
||||||
to install, deploy, configure and manage the various software
|
|
||||||
components.
|
|
||||||
|
|
||||||
To learn more about our open community architecture for “offline”
|
|
||||||
education, start by reviewing “`What technical documentation
|
|
||||||
exists? <http://wiki.laptop.org/go/IIAB/FAQ#What_technical_documentation_exists.3F>`__”
|
|
||||||
|
|
||||||
*Thank you for helping us enable offline access to the Internet’s
|
|
||||||
free/open knowledge jewels, as well as “Sneakernet-of-Alexandria”
|
|
||||||
distribution of local/indigenous content, when mass media channels do
|
|
||||||
not serve grassroots voices.*
|
|
||||||
|
|
||||||
Versions
|
|
||||||
--------
|
|
||||||
|
|
||||||
Pre-releases of Internet-in-a-Box (IIAB) undergo continuous QA /
|
|
||||||
continuous deployment and are strongly recommended.
|
|
||||||
|
|
||||||
Install our latest pre-release using the 1-line installer at:
|
|
||||||
`download.iiab.io <http://download.iiab.io/>`__
|
|
||||||
|
|
||||||
You can also consider the official releases at:
|
|
||||||
`github.com/iiab/iiab/releases <https://github.com/iiab/iiab/releases>`__
|
|
||||||
|
|
||||||
For older versions, see: `github.com/xsce <http://github.com/xsce>`__,
|
|
||||||
`schoolserver.org <http://schoolserver.org>`__
|
|
231
roles/internetarchive/README.rst
Normal file
231
roles/internetarchive/README.rst
Normal file
|
@ -0,0 +1,231 @@
|
||||||
|
Internet Archive - Universal Library project README
|
||||||
|
===================================================
|
||||||
|
|
||||||
|
This Ansible role installs the Internet Archive’s dweb-mirror project on
|
||||||
|
Internet-in-a-Box (IIAB).
|
||||||
|
|
||||||
|
The project is a local server that allows users to browse resources from
|
||||||
|
the Internet Archive stored on local drives - including USB drives.
|
||||||
|
|
||||||
|
It includes a crawler that can regularly synchronize local collections,
|
||||||
|
against a list of Internet Archive items and collections, and those
|
||||||
|
collections can be moved between installations.
|
||||||
|
|
||||||
|
When connected to the internet, the server works as a Proxy, i.e. it
|
||||||
|
will store Internet Archive content the user views for later off-line
|
||||||
|
viewing.
|
||||||
|
|
||||||
|
There are components to integrate the IA server with decentralized tools
|
||||||
|
including IPFS, WebTorrent, GUN, WOLK, both for fetching content and for
|
||||||
|
serving it back to the net or locally.
|
||||||
|
|
||||||
|
This is an ongoing project, continually adding support for new Internet
|
||||||
|
Archive content types; new platforms; and new decentralized transports.
|
||||||
|
|
||||||
|
Using it
|
||||||
|
--------
|
||||||
|
|
||||||
|
Starting server
|
||||||
|
~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
| The server is started and restarted automatically.
|
||||||
|
| It can be turned on or off at a terminal window with
|
||||||
|
``service internetarchive start`` or ``service internetarchive stop``
|
||||||
|
|
||||||
|
Browsing
|
||||||
|
~~~~~~~~
|
||||||
|
|
||||||
|
The server can be accessed at [http://box.lan:4244] (try
|
||||||
|
[http://box.local:4244] if that doesn’t work)
|
||||||
|
|
||||||
|
If you don’t get a Archive UI then look at the server log (in browser
|
||||||
|
console) to see for any “FAILING” log lines which indicate a problem.
|
||||||
|
|
||||||
|
Expect to see errors in the Browser log for
|
||||||
|
``http://localhost:5001/api/v0/version?stream-channels=true`` which is
|
||||||
|
checking for a local IPFS server which is not started here.
|
||||||
|
|
||||||
|
Expect, on slower machines or slower network connections, to see no
|
||||||
|
images the first time, refresh after a little while and most should
|
||||||
|
appear.
|
||||||
|
|
||||||
|
Administration
|
||||||
|
--------------
|
||||||
|
|
||||||
|
Administration is carried out through the same User Interface as
|
||||||
|
browsing.
|
||||||
|
|
||||||
|
Access [http://localhost:4244/local] to see a display of local content,
|
||||||
|
this interface is under development and various admin tools will be
|
||||||
|
added here. *at some point this will become the default page*.
|
||||||
|
|
||||||
|
Access [http://localhost:4244] to get the Internet Archive main
|
||||||
|
interface if connected to the net.
|
||||||
|
|
||||||
|
While viewing an item or collection, the “Crawl” button in the top bar
|
||||||
|
indicates whether the item is being crawled or not. Clicking it will
|
||||||
|
cycle through three levels: \* No crawling \* Details - sufficient
|
||||||
|
information will be crawled to display the page, for a collection this
|
||||||
|
also means getting the thumbnails and metadata for the top items. \*
|
||||||
|
Full - crawls everything on the item, this can be a LOT of data,
|
||||||
|
including full size videos etc, so use with care if bandwidth/disk is
|
||||||
|
limited.
|
||||||
|
|
||||||
|
Disks
|
||||||
|
~~~~~
|
||||||
|
|
||||||
|
The server checks for disks in all the likely places, the list of places
|
||||||
|
it checks, in an unmodified installation can be seen at
|
||||||
|
``https://github.com/internetarchive/dweb-mirror/blob/master/configDefaults.yaml#L7``
|
||||||
|
|
||||||
|
This includes top level directories on usb drives at
|
||||||
|
``/media/pi/*/archiveorg``
|
||||||
|
|
||||||
|
You can override this in ``dweb-mirror.config.yaml`` in the home
|
||||||
|
directory of the user that runs the server, this is currently
|
||||||
|
``/root/dweb-mirror.config.yaml`` (see ‘Advanced’ below )
|
||||||
|
|
||||||
|
Items are stored in subdirectories of the first of these directories
|
||||||
|
found, but read from any of the locations.
|
||||||
|
|
||||||
|
If you disk space is getting full, its perfectly safe to delete any
|
||||||
|
subdirectories, except the ``.hashstore`` at the top level of each, the
|
||||||
|
server will refetch what it needs if you browse to the item again when
|
||||||
|
connected to the internet.
|
||||||
|
|
||||||
|
Maintenance
|
||||||
|
~~~~~~~~~~~
|
||||||
|
|
||||||
|
If you are worried about corruption, or after for example hand-editing
|
||||||
|
or moving cached items around.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
# Run everything as root
|
||||||
|
sudo sh
|
||||||
|
# cd into location for your installation
|
||||||
|
cd /opt/iiab/internetarchive/node_modules/@internetarchive/dweb-mirror
|
||||||
|
./internetarchive -m
|
||||||
|
|
||||||
|
This will usually take about 5-10 minutes depending on the amount of
|
||||||
|
material cached, just to rebuild a table of checksums.
|
||||||
|
|
||||||
|
Advanced
|
||||||
|
~~~~~~~~
|
||||||
|
|
||||||
|
Most functionality of the tool is controlled by two YAML files, the
|
||||||
|
second of which you can edit if you have access to the shell.
|
||||||
|
|
||||||
|
You can view the current configuration by going to
|
||||||
|
[http://box.lan:4244/info] or [http://localhost:4244/info] depending on
|
||||||
|
how you are connected.
|
||||||
|
|
||||||
|
The default, and user configurations are displayed as the ``0`` and
|
||||||
|
``1`` item in the ``/info`` call.
|
||||||
|
|
||||||
|
In the Repo is a `default YAML
|
||||||
|
file <https://github.com/internetarchive/dweb-mirror/blob/master/configDefaults.yaml>`__
|
||||||
|
which is commented. It would be a bad idea to edit this, so I’m not
|
||||||
|
going to tell you where it is on your installation! But anything from
|
||||||
|
this file can be overridden by lines in
|
||||||
|
``/root/dweb-mirror.config.yaml``. Make sure you understand how yaml
|
||||||
|
works before editing this file, if you break it, you can copy a new
|
||||||
|
default from `dweb-mirror.config.yaml on the
|
||||||
|
repo <https://github.com/internetarchive/dweb-mirror/blob/master/configDefaults.yaml#L7>`__
|
||||||
|
|
||||||
|
TODO Note this file will probably move location.
|
||||||
|
|
||||||
|
Note that this file is also edited automatically when the Crawl button
|
||||||
|
described above is clicked.
|
||||||
|
|
||||||
|
As the project develops, this file will be editable via a UI.
|
||||||
|
|
||||||
|
Update
|
||||||
|
------
|
||||||
|
|
||||||
|
Dweb-mirror is under rapid development, as is the Javascript UI. Its
|
||||||
|
recommended to update frequently.
|
||||||
|
|
||||||
|
From a Terminal window
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
sudo sh # Run all commands as root
|
||||||
|
cd /opt/iiab/internetarchive
|
||||||
|
yarn upgrade # Currently this can take up to about 20 minutes to run, we hope to reduce that time
|
||||||
|
|
||||||
|
Crawling
|
||||||
|
--------
|
||||||
|
|
||||||
|
The Crawler will be built into the UI fairly soon, for now it has to be
|
||||||
|
run in a terminal window.
|
||||||
|
|
||||||
|
Its highly configurable either through the YAML file described above, or
|
||||||
|
from the command line.
|
||||||
|
|
||||||
|
In a shell
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
# Run all commands as root from dweb-mirror's directory
|
||||||
|
sudo sh
|
||||||
|
|
||||||
|
# cd into location for your installation
|
||||||
|
cd /opt/iiab/internetarchive/node_modules/@internetarchive/dweb-mirror
|
||||||
|
|
||||||
|
# To get a full list of possible arguments
|
||||||
|
./internetarchive --help
|
||||||
|
|
||||||
|
# Perform a standard crawl
|
||||||
|
./internetarchive --crawl
|
||||||
|
|
||||||
|
# To fetch the "foobar" item from IA.
|
||||||
|
./internetarchive --crawl foobar
|
||||||
|
|
||||||
|
# To crawl top 10 items in the prelinger collection sufficiently to display and put
|
||||||
|
# them on a disk plugged into the /media/pi/xyz
|
||||||
|
# TODO check where pi actually put them.
|
||||||
|
./internetarchive --copydirectory /media/pi/xyz/archiveorg --crawl --rows 10 --level details prelinger
|
||||||
|
|
||||||
|
Troubleshooting
|
||||||
|
---------------
|
||||||
|
|
||||||
|
There are two logs of relevance, the browser and the server.
|
||||||
|
|
||||||
|
**Browser**: If using Chrome then this is at View / Developer Tools /
|
||||||
|
Javascript Console or something similar.
|
||||||
|
|
||||||
|
**Server**: From a Terminal window.
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
journalctl -u internetarchive
|
||||||
|
|
||||||
|
Known Issues
|
||||||
|
------------
|
||||||
|
|
||||||
|
See `github dweb-mirror
|
||||||
|
issues <https://github.com/internetarchive/dweb-mirror/issues>`__; and
|
||||||
|
`github dweb-archive
|
||||||
|
issues <https://github.com/internetarchive/dweb-archive/issues>`__;
|
||||||
|
|
||||||
|
More info
|
||||||
|
---------
|
||||||
|
|
||||||
|
Dweb-Mirror Lives on github at:
|
||||||
|
`dweb-mirror <https://github.com/internetarchive/dweb-mirror>`__;
|
||||||
|
`source <https://github.com/internetarchive/dweb-mirror>`__;
|
||||||
|
`issues <https://github.com/internetarchive/dweb-mirror/issues>`__;
|
||||||
|
`API.md <./API.md>`__ API documentation for dweb-mirror
|
||||||
|
|
||||||
|
This project is part of our larger Dweb project, see also:
|
||||||
|
`dweb-universal <https://github.com/internetarchive/dweb-universal>`__
|
||||||
|
info about others distributing the web;
|
||||||
|
`dweb-transport <https://github.com/internetarchive/dweb-transport>`__
|
||||||
|
miscellaneous inc GUN gateway and webtorrent;
|
||||||
|
`dweb-objects <https://github.com/internetarchive/dweb-objects>`__
|
||||||
|
library of dweb objects;
|
||||||
|
`dweb-archive <https://github.com/internetarchive/dweb-archive>`__
|
||||||
|
archive UI in Javascript;
|
||||||
|
`dweb-archivecontroller <https://github.com/internetarchive/dweb-archive>`__
|
||||||
|
Knows about the structure of archive objects;
|
Loading…
Reference in a new issue