--- backintime-0.9.26.orig/debian/README.source +++ backintime-0.9.26/debian/README.source @@ -0,0 +1,5 @@ +This package uses quilt to manage all modifications to the upstream +source. Changes are stored in the source package as diffs in +debian/patches and applied during the build. + +See /usr/share/doc/quilt/README.source for a detailed explanation. --- backintime-0.9.26.orig/debian/copyright +++ backintime-0.9.26/debian/copyright @@ -0,0 +1,52 @@ +Format-Specification: http://wiki.debian.org/Proposals/CopyrightFormat +Upstream-Name: Back In Time +Upstream-Maintainer: Oprea Dan +Upstream-Source: http://www.le-web.org/back-in-time/ + +Files: * +Copyright: Copyright (C) 2008,2009 Oprea Dan +License: GPL-2+ + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + On Debian systems, the full text of the GPLv2 can be found at + /usr/share/common-licenses/GPL-2 + +Files: docbook/* +Copyright: Copyright (C) 2008 Oprea Dan +License: GFDL-1.1+ + + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.1 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license is included in the section entitled "GNU + Free Documentation License". + + On Debian systems, the full text of the GFDLv1.2 can be found at + /usr/share/common-licenses/GFDL-1.2 + +Files: debian/* +Copyright: Copyright (C) 2009 Jonathan Wiltshire +License: GPL-2+ + + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This package is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + On Debian systems, the full text of the GPLv2 can be found at + /usr/share/common-licenses/GPL-2 --- backintime-0.9.26.orig/debian/backintime-gnome.links +++ backintime-0.9.26/debian/backintime-gnome.links @@ -0,0 +1 @@ +/usr/share/man/man1/backintime.1.gz /usr/share/man/man1/backintime-gnome.1.gz --- backintime-0.9.26.orig/debian/watch +++ backintime-0.9.26/debian/watch @@ -0,0 +1,5 @@ +# See uscan(1) for format + +version=3 +opts=uversionmangle=s/(alpha|beta|rc)/~$1/ \ +http://www.le-web.org/download/backintime/backintime-(.*)_src\.tar\.gz --- backintime-0.9.26.orig/debian/backintime-kde.links +++ backintime-0.9.26/debian/backintime-kde.links @@ -0,0 +1 @@ +/usr/share/man/man1/backintime.1.gz /usr/share/man/man1/backintime-kde4.1.gz --- backintime-0.9.26.orig/debian/control +++ backintime-0.9.26/debian/control @@ -0,0 +1,53 @@ +Source: backintime +Section: utils +Priority: extra +Maintainer: Jonathan Wiltshire +Build-Depends: debhelper (>= 7.2.8), python-support (>= 1.0.2), quilt (>= 0.46-8) +Standards-Version: 3.9.0 +Homepage: http://backintime.le-web.org/ +Vcs-Browser: http://robin.powdarrmonkey.net/cgi-bin/gitweb.cgi?p=backintime +Vcs-Git: git://robin.powdarrmonkey.net/git/backintime + +Package: backintime-common +Architecture: all +Depends: rsync, python (>= 2.5), cron, ${python:Depends}, ${misc:Depends} +Description: simple backup/snapshot system + Back In Time is a framework for rsync, diff and cron for the purpose of + taking snapshots and backups of specified folders. It minimizes disk space use + by taking a snapshot only if the directory has been changed, and hard links + for unmodified files if it has. The user can schedule regular backups using + cron. + . + This is the common framework for Back In Time. You need to choose a suitable + front-end for your desktop environment, like backintime-gnome or + backintime-kde. + +Package: backintime-gnome +Architecture: all +Depends: backintime-common (>= ${source:Version}), python-gnome2 (>= 2.22), python-notify, python-gtk2, python-glade2, menu, ${python:Depends}, ${misc:Depends} +Recommends: nautilus-actions, meld +Description: GNOME front-end for backintime + Back In Time is a framework for rsync, diff and cron for the purpose of + taking snapshots and backups of specified folders. It minimizes disk space use + by taking a snapshot only if the directory has been changed, and hard links + for unmodified files if it has. The user can schedule regular backups using + cron. + . + This is the GNOME front-end for the backintime-common package. If you also + install the package nautilus-actions, it can be integrated with the Nautilus + file manager to provide context-menu options. + +Package: backintime-kde +Architecture: all +Provides: backintime-kde4 +Replaces: backintime-kde4 (<< 0.9.26-2) +Conflicts: backintime-kde4 (<< 0.9.26-2) +Depends: backintime-common (>= ${source:Version}), python-kde4, menu, ${python:Depends}, ${misc:Depends} +Description: KDE front-end for backintime + Back In Time is a framework for rsync, diff and cron for the purpose of + taking snapshots and backups of specified folders. It minimizes disk space use + by taking a snapshot only if the directory has been changed, and hard links + for unmodified files if it has. The user can schedule regular backups using + cron. + . + This is the KDE front-end for the backintime-common package. --- backintime-0.9.26.orig/debian/rules +++ backintime-0.9.26/debian/rules @@ -0,0 +1,32 @@ +#!/usr/bin/make -f +# -*- makefile -*- + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +override_dh_auto_clean: + rm -rf locale common/po/*.mo + find $(CURDIR) -name "*\.py[co]" -delete + rm -f common/Makefile gnome/Makefile kde4/Makefile + +override_dh_auto_configure: + cd common && ./configure + cd gnome && ./configure --no-check + cd kde4 && ./configure --no-check + +override_dh_auto_install: + cd common && DESTDIR=../debian/backintime-common $(MAKE) install + rm -rf $(CURDIR)/debian/backintime-common/usr/share/doc/backintime-common + rm -f $(CURDIR)/debian/backintime-common/usr/share/doc/backintime/LICENSE + + cd gnome && DESTDIR=../debian/backintime-gnome $(MAKE) install + rm -rf $(CURDIR)/debian/backintime-gnome/usr/share/doc/backintime-gnome + + cd kde4 && DESTDIR=../debian/backintime-kde $(MAKE) install + rm -rf $(CURDIR)/debian/backintime-kde/usr/share/doc/backintime-kde4 + +override_dh_pysupport: + dh_pysupport /usr/share/backintime/ + +%: + dh --with quilt $@ --- backintime-0.9.26.orig/debian/changelog +++ backintime-0.9.26/debian/changelog @@ -0,0 +1,112 @@ +backintime (0.9.26-4) unstable; urgency=low + + * debian/control: depend on the menu packages for both GNOME and KDE + front-ends, so we can use su-to-root on headless systems (LP: + #466088) + * Patch allow-root-backup.patch: allow backup of root directory, + cherry-picked from upstream (LP: #588841) - thanks to jerico + * Explicitly declare source format 1.0 + * Standards version 3.9.0 (no changes) + + -- Jonathan Wiltshire Mon, 12 Jul 2010 00:18:27 +0100 + +backintime (0.9.26-3) unstable; urgency=high + + * Fix typo in debian/rules + * New patch no-chmod-777.patch to stop common/snapshots.py from making + all files world-readable and writeable before deleting a backup. + (Closes: #543785) - thanks to Rémi Vanicat, Bart de Koning + + -- Jonathan Wiltshire Mon, 07 Sep 2009 21:53:28 +0100 + +backintime (0.9.26-2) unstable; urgency=medium + + * Standards version 3.8.3 (no changes required) + * Use printf to make common/configure portable (Closes: #543053) + * Convert all Debian modifications into Quilt patches + * Recommend meld for backintime-gnome (Closes: #542861) + * Remove transitional package backintime-kde4 + * Call dh_clean last in the clean sequence (Closes: #543168) + + -- Jonathan Wiltshire Sun, 23 Aug 2009 21:41:30 +0100 + +backintime (0.9.26-1) unstable; urgency=low + + * New upstream version: + - updated translations + - allow backup of a destination's parent folder + - improvements to the interfaces + - expert option for changing the niceness of automatic backups + * Fix inter-dependencies for the transitional package backintime-kde4 + (Closes: #529400) - thanks to JJ Luza + * Front-end checks during builds are disabled properly, not as a + direct source change + + -- Jonathan Wiltshire Tue, 19 May 2009 19:18:28 +0100 + +backintime (0.9.24-2) unstable; urgency=low + + * Rename binary package backintime-kde4 to backintime-kde (and handle + upgrades for users when it reaches the archive) + + -- Jonathan Wiltshire Mon, 18 May 2009 20:12:34 +0100 + +backintime (0.9.24-1) unstable; urgency=low + + * New upstream version (closes: #527447): + - backintime is no longer aware of 'backintime-gnome' and 'backintime-kde4' + (you need run 'backintime-gnome' for GNOME version and 'backintime-kde4' + for KDE4 version) + - fix a bug that crashes the program after taking a snapshot + * Update homepage field in debian/control (closes: #527595) + * Refactor packaging to fit new upstream build system (an almost entire + re-write of debian/rules) + * Make configure scripts use /bin/sh instead of /bin/bash (they don't use + bash features) + + -- Jonathan Wiltshire Sat, 16 May 2009 23:04:32 +0100 + +backintime (0.9.22.1-1) unstable; urgency=low + + * New upstream version: + - follow FreeDesktop directory specs + - treat "*~" files as hidden + - new user callback system + * Refactor debian/rules to fit new upstream build system + * Remove the tests for GNOME and KDE4 in ./configure (on an + autobuilder, they will always fail) + * Bump debhelper build-dependency to 7.2.8 + + -- Jonathan Wiltshire Sun, 03 May 2009 23:02:46 +0100 + +backintime (0.9.20-1) unstable; urgency=low + + * New upstream version + * Upload to unstable + + -- Jonathan Wiltshire Wed, 08 Apr 2009 16:47:28 +0100 + +backintime (0.9.18-1) experimental; urgency=low + + * New upstream version + * Make the new "run as root" desktop entries use su-to-root + Add "run as root" entry to Debian menu system + + -- Jonathan Wiltshire Fri, 03 Apr 2009 12:05:08 +0100 + +backintime (0.9.16.1-1) experimental; urgency=low + + * New upstream version + * Add versioned depends on the -common package + * Added dependency on python-gnome2 for -gnome + * Added dependency on python-notify for -gnome + * Bump standards version + * Make cron a Depends instead of a Recommends + + -- Jonathan Wiltshire Tue, 17 Mar 2009 01:54:40 +0000 + +backintime (0.9.4-1) experimental; urgency=low + + * Initial release (Closes: #508407) + + -- Jonathan Wiltshire Fri, 16 Jan 2009 15:34:42 +0000 --- backintime-0.9.26.orig/debian/menu +++ backintime-0.9.26/debian/menu @@ -0,0 +1,4 @@ +?package(backintime-common):needs="X11" section="Applications/File Management"\ + title="Back In Time" command="/usr/bin/backintime" +?package(backintime-common):needs="X11" section="Applications/File Management"\ + title="Back In Time (root)" command="/usr/bin/su-to-root -X -c /usr/bin/backintime" --- backintime-0.9.26.orig/debian/compat +++ backintime-0.9.26/debian/compat @@ -0,0 +1 @@ +7 --- backintime-0.9.26.orig/debian/source/format +++ backintime-0.9.26/debian/source/format @@ -0,0 +1 @@ +1.0 --- backintime-0.9.26.orig/debian/patches/portable-configure.patch +++ backintime-0.9.26/debian/patches/portable-configure.patch @@ -0,0 +1,71 @@ +# Use printf instead of echo in configure scripts, so they can be run by +# /bin/sh instead of /bin/bash. This matters a lot because of the transition +# to dash in Debian and Ubuntu. + +# Author: Jonathan Wiltshire +# Upstream status: sent upstream +--- backintime-0.9.26.orig/common/configure ++++ backintime-0.9.26/common/configure +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + + if [ -e Makefile ]; then + rm Makefile; +@@ -14,30 +14,29 @@ + done + + #Start Makefile +-echo -e "LANGS=$langs" >> Makefile +-echo -e "SHELL=`which bash`" >> Makefile +-echo -e "" >> Makefile ++printf "LANGS=$langs\n" >> Makefile ++#printf "SHELL=`which bash`\n" >> Makefile ++printf "\n" >> Makefile + + #add template + cat Makefile.template >> Makefile + + #translate +-echo -e "translate: $mos" >> Makefile +-echo -e "" >> Makefile ++printf "translate: $mos\n" >> Makefile ++printf "\n" >> Makefile + + for lang in $langs; do +- echo -e "po/$lang.mo: po/$lang.po" >> Makefile +- echo -e "\tmsgfmt -o po/$lang.mo po/$lang.po" >> Makefile +- echo -e "" >> Makefile ++ printf "po/$lang.mo: po/$lang.po\n" >> Makefile ++ printf "\tmsgfmt -o po/$lang.mo po/$lang.po\n" >> Makefile ++ printf "\n" >> Makefile + done + + #common langs + echo "install_translations:" >> Makefile + for lang in $langs; do +- echo -e "\tinstall -d \$(DEST)/share/locale/$lang/LC_MESSAGES" >> Makefile +- echo -e "\tinstall --mode=644 po/$lang.mo \$(DEST)/share/locale/$lang/LC_MESSAGES/backintime.mo" >> Makefile ++ printf "\tinstall -d \$(DEST)/share/locale/$lang/LC_MESSAGES\n" >> Makefile ++ printf "\tinstall --mode=644 po/$lang.mo \$(DEST)/share/locale/$lang/LC_MESSAGES/backintime.mo\n" >> Makefile + done +-echo -e "" >> Makefile + + echo "All OK. Now run:" + echo " make" +--- backintime-0.9.26.orig/gnome/configure ++++ backintime-0.9.26/gnome/configure +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + + CHECK="--check" + +--- backintime-0.9.26.orig/kde4/configure ++++ backintime-0.9.26/kde4/configure +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + + CHECK="--check" + --- backintime-0.9.26.orig/debian/patches/allow-root-backup.patch +++ backintime-0.9.26/debian/patches/allow-root-backup.patch @@ -0,0 +1,22 @@ +Description: allow backup of the root directory +Origin: https://bugs.launchpad.net/backintime/+bug/588841/comments/8 +Bug: https://bugs.launchpad.net/backintime/+bug/588841 +Last-Update: 2010-07-12 + +Index: backintime-0.9.26/common/snapshots.py +=================================================================== +--- backintime-0.9.26.orig/common/snapshots.py 2010-06-21 11:43:02.128639651 -0300 ++++ backintime-0.9.26/common/snapshots.py 2010-06-21 11:56:17.078013279 -0300 +@@ -604,9 +604,10 @@ + items = [] + items2 = [] + for include_folder in include_folders: +- self._append_item_to_list( "--include=\"%s/**\"" % include_folder, items2 ) ++ include_pattern = '%s**' if include_folder.endswith( '/' ) else '%s/**' ++ self._append_item_to_list( ( '--include="' + include_pattern + '"' ) % include_folder, items2 ) + while True: +- self._append_item_to_list( "--include=\"%s/\"" % include_folder, items ) ++ self._append_item_to_list( '--include="%s"' % include_folder, items ) + include_folder = os.path.split( include_folder )[0] + if len( include_folder ) <= 1: + break --- backintime-0.9.26.orig/debian/patches/no-chmod-777.patch +++ backintime-0.9.26/debian/patches/no-chmod-777.patch @@ -0,0 +1,33 @@ +# Stop snapshots.py from making every file world-read/write-able just before +# deleting a backup + +# Author: Jonathan Wiltshire +# with assistance from Rémi Vanicat , +# Bart de Koning +# Upstream status: sent upstream +--- backintime-0.9.26.orig/common/snapshots.py ++++ backintime-0.9.26/common/snapshots.py +@@ -314,7 +314,10 @@ + return + + path = self.get_snapshot_path( snapshot_id ) +- cmd = "chmod -R a+rwx \"%s\"" % path ++ # This is a nasty security vulnerability: ++ # cmd = "chmod -R a+rwx \"%s\"" % path ++ # Patched for Debian with: ++ cmd = "find \"%s\" -type d -exec chmod u+wx {} \\;" % path + self._execute( cmd ) + cmd = "rm -rfv \"%s\"" % path + self._execute( cmd ) +@@ -575,7 +578,10 @@ + + if os.path.exists( new_snapshot_path ): + #self._execute( "find \"%s\" -type d -exec chmod +w {} \;" % new_snapshot_path ) +- self._execute( "chmod -R a+rwx \"%s\"" % new_snapshot_path ) ++ # This is a nasty security vulnerability: ++ #self._execute( "chmod -R a+rwx \"%s\"" % new_snapshot_path ) ++ # Patched in Debian with: ++ self._execute( "find \"%s\" -type d -exec chmod u+wx {} \\;" % new_snapshot_path ) + self._execute( "rm -rf \"%s\"" % new_snapshot_path ) + + if os.path.exists( new_snapshot_path ): --- backintime-0.9.26.orig/debian/patches/desktop-su.patch +++ backintime-0.9.26/debian/patches/desktop-su.patch @@ -0,0 +1,25 @@ +# Make the root desktop entries use a sane way of getting root, instead of +# assuming about the presence of dependencies + +# Author: Jonathan Wiltshire +# Upstream status: sent upstream +--- backintime-0.9.26.orig/gnome/backintime-gnome-root.desktop ++++ backintime-0.9.26/gnome/backintime-gnome-root.desktop +@@ -1,6 +1,6 @@ + [Desktop Entry] + Name=Back In Time (root) +-Exec=gksu backintime-gnome ++Exec=su-to-root -X -c backintime-gnome + Icon=gtk-save + Terminal=false + X-MultipleArgs=false +--- backintime-0.9.26.orig/kde4/backintime-kde4-root.desktop ++++ backintime-0.9.26/kde4/backintime-kde4-root.desktop +@@ -1,6 +1,6 @@ + [Desktop Entry] + Name=Back In Time (root) +-Exec=kdesudo -c backintime-kde4 ++Exec=su-to-root -X -c backintime-kde4 + Icon=document-save + Terminal=false + X-MultipleArgs=false --- backintime-0.9.26.orig/debian/patches/series +++ backintime-0.9.26/debian/patches/series @@ -0,0 +1,4 @@ +no-chmod-777.patch +desktop-su.patch +portable-configure.patch +allow-root-backup.patch