Nedalo mi to a o víkendu jsem se věnoval beta-testování programu dsgui
. Výtku, kterou jsem měl, tzn. nedostatečnou podporu pro zálohování datových zpráv, jsem se rozhodl opravit svépomocí.
S lehkým překvapením jsem zjistil, že jsem několik měsíců žil v bludu, domnívaje se, že soubory s příponou ZFO, které ukládám do archivu datových zpráv, jsou zazipované soubory ve standardním formátu XML-FO. Omyl: je to proprietární formát ISDS.
Překonav svůj omyl, zbytek byl víceméně hračkou:
#! /bin/bash
sql='sqlite3'
home='/home/tompecina'
dbf="$home/.dsgui/$(cat $home/.dsuserid)___0.db"
if [ ! -d "$1" ]; then
echo 'Existing target directory must be specified'
exit 1
fi
dir="${1%/}"
for mid in $(echo "select message_id from raw_message_data;" | $sql $dbf); do
[ -e $dir/[OD]DZ_$mid.zfo ] && continue
[ $(echo "select read_locally from supplementary_message_data where message_id='$mid';" |\
$sql $dbf) -ne 1 ] && continue
mtype=$(echo "select message_type from supplementary_message_data where message_id='$mid';" |\
$sql $dbf)
if [ $mtype -eq 1 ]; then
pref='D'
elif [ $mtype -eq 2 ]; then
pref='O'
else
continue
fi
echo "select data from raw_message_data where message_id='$mid';" | $sql $dbf |\
openssl base64 -d -out "$dir/${pref}DZ_$mid.zfo"
done
Skript projde databasi zpráv a uloží všechny, které dosud nemám staženy, do adresáře zadaného jako parametr. dsgui
zatím neumí ukládat zprávy odeslané přes webové rozhraní, nicméně jakmile to zvládne, měl by skript automaticky archivovat i tyto soubory.
Program dsgui
je pro mě zajímavý jednak tím, že se zdá být dobře a přehledně naprogramován, a jednak očekávanou podporou pro mobilní zařízení: na mé Nokii N900 v nejnovější versi momentálně nefunguje jen proto, že zatím nejsou portovány všechny potřebné pythonové moduly, což je vada, která bude jistě časem překonána.
Komentáře
Na MeeGo jsem zvědav, podle prvních screenshotů vypadá hodně obrázkové (ve stylu Chrome), což nemám rád, ale možná je to jen první dojem.
Pro čtení dokumentů má snad být pod Maemo portován AbiWord, nevím, v jakém je stavu, neměl jsem čas ho vyzkoušet.
RSS kanál komentářů k tomuto článku