From 79f205dfb4cd44e28fe806ba61628dfaaf325566 Mon Sep 17 00:00:00 2001 From: Rob Weber Date: Thu, 19 Apr 2012 18:30:46 -0500 Subject: [PATCH] added new icon file as well as updated README information for usage --- README.txt | 17 +++++++++++++++++ addon.xml | 6 +++--- changelog.txt | 3 +++ icon.jpg | Bin 0 -> 15788 bytes 4 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 icon.jpg diff --git a/README.txt b/README.txt index e69de29..81120f6 100644 --- a/README.txt +++ b/README.txt @@ -0,0 +1,17 @@ +XBMC Backup + +About: +I've had to recover my database, thumbnails, and source configuration enough times that I just wanted a quick easy way to back them up. That is what this addon is meant to do. + +Usage: + +In the addon settings you can define a remote path for the destination of your xbmc files. You must also include a backup folder name, all of your files will be in this folder once the backup runs. + +On the Backup Selection page you can select which items from your user profile folder will be sent to the backup location. By default all are turned on except the Addon Data directory. + +What this Addon Will Not Do: + +This is not meant as an XBMC file sync solution. If you have multiple frontends you want to keep in sync this addon may work in a "poor man's" sort of way but it is not intended for that. + +Your remote folder will not be "pruned" of files you have deleted. Mostly this is due to limitations with the xbmcvfs python module, it cannot list files, only tell if they exist. This behavior may change in the future but right now it is up to you to remove obsolete items from the remote path. The easiest way is to just delete the remote folder before doing a full backup. + diff --git a/addon.xml b/addon.xml index 1b776a5..7c6bcf0 100644 --- a/addon.xml +++ b/addon.xml @@ -1,6 +1,6 @@ + name="XBMC Backup" version="0.0.2" provider-name="robweber"> @@ -8,8 +8,8 @@ executable - - + Backup your XBMC database and configuration files before an upgrade or in the even of a crash. + Ever hosed your XBMC configuration and wished you'd had a backup? Now you can with one easy click. You can export your database, playlist, thumbnails, addons and other configuration details to any source writeable by XBMC. all diff --git a/changelog.txt b/changelog.txt index e69de29..c28aea7 100644 --- a/changelog.txt +++ b/changelog.txt @@ -0,0 +1,3 @@ +[b]Version 0.0.2[/b] + +First version, should backup directories as needed diff --git a/icon.jpg b/icon.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7f8f39c3da253092c32473d1640e5829fdd00cc2 GIT binary patch literal 15788 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%0Doe?EvaI=CX+w%eju_HK4Q@pscQ1Vvx}^%Fq0| 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 Y$QmcjEdvnbKsuz>YYLL71Yz_40crK>1poj5 literal 0 HcmV?d00001