💽 rip
bash scripts for batch ripping computer CDs/DVDs and uploading to archive.org
▶️ SETUP.EXE
It’ll grumble at startup if you don’t have the following:
sudo apt install tmux gddrescue tree xz-utils imagemagick \
eject genisoimage archivemount icoutils \
imagemagick
pip install "internetarchive~=5.3"
Configure internetarchive
with ia configure
or it’ll cry when you run it.
🖼️ PIC.ICO
🏃 Autorun.inf
Either run ./scrip/n.stage.sh
as background tasks, or run it in tmux:
./rip.sh
This will create a session with a general monitor pane, plus outputs from each stage of the pipeline:
rip
- taking a CD or DVD from the drive and reading it withddrescue
. The log files are included.rip-all
launches one process per drive, which is default.snip
- collects metadata, like the file date of the youngest file, the file treezip
- compresses the image withxz
.ship
- uploads it to archive.orgsip
- is what you do when you’re finished 🍻
Each step in the pipeline is just a dir with files in it. The main dir name is
the name of the internet archive item, and everything that doesn’t begin with
.
will be uploaded. If something fails, see archive.log
to see why.
Metadata is kept in the .meta
dir, with tags as subdirs. You can inspect and
edit the metadata with dip
.
🤓 MANUAL.DOC
Since everything is just a dir containing files, you can move them about and
mess with them to re-queue them. So you don’t need to just use it with
CDs/DVDs; you can add whatever work you like to the ship
dir.
You can also source ./scrip/libs.sh
and use the functions manually. By
convention these start with name_
from the lib_name.sh
.
ℹ️ META.INF
The name of the dir itself becomes the IA item name.
All files that don’t start with a .
will be uploaded.
Metadata fields are stored in .meta/name/n
and can be added with the helper
in lib_upload.sh
like so:
echo "weather" | meta_add subject "./met-office-climate-data"
echo "historical" | meta_add subject "./met-office-climate-data"
🔗 PROJECT.LNK
🌍 RELATED.LNK
- 📺 yt-mpv - archive youtube videos after watching them in an ad-free player.
- 🤷 shruggingface - library to take AI models out of HuggingFace’s walled garden.
⚖️ LICENSE.TXT
WTFPL with one additional clause:
- Don’t blame me.