Go to file
Raphaël Vinot 27f44d086f Update changelog 2015-03-10 15:28:44 +01:00
deb Fix #11 2013-10-09 17:33:54 +02:00
diode_controller Make sure the led is always on. 2013-10-09 10:46:28 +02:00
doc Add initial code for LED button and state diagram. 2015-03-02 17:02:35 +01:00
fs Do not wait for user input if an archive is protected with a password 2015-03-09 18:37:23 +01:00
fs_shell/etc Re-enable updates of the system 2014-05-09 18:43:33 +02:00
kernel_config Re-enable updates of the system 2014-05-09 18:43:33 +02:00
ledButton_controller Add initial code for LED button and state diagram. 2015-03-02 17:02:35 +01:00
midi midi grooming tunes 2013-10-09 21:41:25 +01:00
tests Use wheezy (+backports) again (remove systemd support). 2015-03-09 18:35:48 +01:00
.gitignore Add initial code for LED button and state diagram. 2015-03-02 17:02:35 +01:00
CHANGELOG Update changelog 2015-03-10 15:28:44 +01:00
LICENSE LICENCE->LICENSE 2014-07-08 13:07:17 +02:00
NOTES doc update 2013-05-25 00:33:58 +02:00
README.md Update README.md 2014-06-25 08:16:24 +02:00
README_initial_setup.md add forgotten dependency 2015-03-10 15:13:40 +01:00
TODO doc ++ 2013-05-17 17:22:33 +02:00
copy_force_shell.sh add a bunch of script to boot the rpi in qemu, and get a root shell 2014-05-07 19:18:27 +02:00
copy_to_final.sh only try to copy the binary to make the LED blink if it exists. 2014-10-05 17:38:48 +02:00
create_user.sh add sudoers file, ensuring no users are sudoers with no or default passwd 2013-11-20 15:40:29 +01:00
get_shell.exp Use newest version of Raspian, updated to jessie. 2014-07-30 21:50:42 +02:00
get_shell.sh Re-enable updates of the system 2014-05-09 18:43:33 +02:00
mount_image.sh Use wheezy (+backports) again (remove systemd support). 2015-03-09 18:35:48 +01:00
prepare_rPI.sh Use pmount, remove sudoer rights to the user 2014-07-30 21:49:00 +02:00
prepare_rPI_builder.sh Update helpers to Debian Jessie. 2014-03-26 16:42:20 +01:00
proper_chroot.sh make it easyer to run the tests 2014-03-27 00:02:48 +01:00
resize_img.md Use wheezy (+backports) again (remove systemd support). 2015-03-09 18:35:48 +01:00
run_tests.sh add a bunch of script to boot the rpi in qemu, and get a root shell 2014-05-07 19:18:27 +02:00
update_builder.sh Use most recent image 2014-09-30 16:22:14 +02:00

README.md

CIRCLean

Cleaner in action

How To

Graphical how-to and pre-build image.

To prepare the SD card on Windows, you can use [Win32DiskImager] (http://sourceforge.net/projects/win32diskimager/).

And the linux way is in the command line, via dd (see in copy_to_final.sh)

Why/What

This project aims to be used in case you got an USB key you do not know what is contains but still want to have a look.

Work in progress, contributions welcome:

The content of the first key will be copyed or/and converted to the second key following theses rules (based on the mime type):

  • direct copy of plain text files (mime type: text/*)
  • direct copy of audio files (mime type: audio/*)
  • direct copy of image files (mime type: image/*)
  • direct copy of video files (mime type: video/*)
  • direct copy of example files (mime type: example/*)
  • direct copy of message files (mime type: message/*)
  • direct copy of model files (mime type: model/*)
  • direct copy of multipart files (mime type: multipart/*)
  • Copying or converting the application files this way (mime type: application/*):
    • pdf => HTML
    • msword|vnd.openxmlformats-officedocument.|vnd.ms-|vnd.oasis.opendocument* => pdf => html
    • xml => copy as a text file
    • x-dosexec (executable) => prepend and append DANGEROUS to the filename
    • x-gzip|x-tar|x-7z-compressed => compressed file
    • octet-stream => direct copy

Compressed files (zip|x-rar|x-bzip2|x-lzip|x-lzma|x-lzop|x-xz|x-compress|x-gzip|x-tar|*compressed):

  • Unpacking of archives
  • Recursively run the rules on the unpacked files

Usage

  1. Power off the device

  2. Plug the untrusted key in the top usb slot of the Raspberry Pi

  3. Plug your own key in the bottom usb slot

    Note: This key should be bigger than the original one because the archives will be copyed

  4. Optional: connect the HDMI cable to a screen to see what happen

  5. Connect the power to the micro USB

    Note: 5V, 700mA regulated power supply

  6. Wait until you do not see any blinking green light on the board, or if you connected the HDMI cable, check the screen it's slow and can take 30-60 minutes depending on how many document conversions take place

  7. Power off the device and disconnect the drives

Helper scripts

You should use them as example when you are creating a new image and probably not run them blindly as you will most probably have to change constraints accordingly to your configuration.

IN ALL CASES, PLEASE READ THE COMMENTS IN THE SCRIPTS AT LEAST ONCE.

  • proper_chroot.sh: uses qemu to chroot into a raspbian instance (.img or SD Card)
  • prepare_rPI_builder.sh: update the system, add the repositories and install all the dependencies needed to compile poppler and pdf2htmlEX on a rPi
  • update_builder.sh: compile the latest version of poppler from debian experimental, pull and compile the latest version of pdf2htmlEX from the git repository
  • prepare_rPI.sh: update the system, install the dependencies of poppler and pdf2htmlEX, install poppler and pdf2htmlEX (the deb packages compiled in the builder)
  • create_user.sh: create the user who will run the scripts, assign the proper sudo rights.
  • copy_to_final.sh: populate the content of the directory fs/ in the image, contains a sample of dd command to write the image on the SD card. TAKE CARE NOT USING THE WRONG DESTINATION