Content bundle making script
Jump to navigation
Jump to search
intro
Quick hack of a script that takes an index page on the web and pulls it, and all the pages it references, into a library bundle. Useful for things like Wikislices.
usage
Copy the script into a directory on your machine and make it executable. usage is bundlemaker url bundlename languagecode
where
- url is the url you want to turn into your index page
- bundlename is the name you want your bundle to have (bundle.xol)
- languagecode is the 2-letter language code the materials are written in; for instance, en, es, pt
example:
./bundlemaker http://www.nlm.nih.gov/medlineplus/healthtopics.html healthbundle en
script
#!/bin/sh # usage: bundlemaker <url> <bundlename> <language> # $1 - url to download from # $2 - folder name to download to, also name of bundle # $3 - language code this content is in (en, es, pt, etc.) # make sure there are 3 arguments if [ $# -ne 3 ]; then echo 1>&2 Usage: bundlemaker URL BUNDLENAME LANGUAGECODE exit 127 fi # get the files from <url> # place them in a folder called <bundlename> in cwd # create a log at <bundlename>-log for debugging wget -rp -nH -l1 -o ${2}-log -P $2 $1 # create the metadata cd $2 mkdir library cd library # note: this is a stupid script! please fix it! # see http://wiki.laptop.org/go/Sample_library.info_file echo [Library] >> library.info echo name = $2 >> library.info echo global_name = $2 >> library.info echo long_name = $2 >> library.info echo library_version = 1 >> library.info echo host_version = 1 >> library.info echo l10n = false >> library.info echo locale = $3 >> library.info # zip and rename as bundle cd ../.. zip -9 -rq $2 $2 mv $2.zip $2.xol # delete extra files # TODO: implement exit 0