Package: release.debian.org Severity: normal X-Debbugs-Cc: backint...@packages.debian.org, j...@debian.org Control: affects -1 + src:backintime User: release.debian....@packages.debian.org Usertags: unblock
Please unblock package backintime [ Reason ] An important (but not earth-shattering) usability bug prevents off-site backups in newly-created profiles, using SSH. Thanks to upstream's responsiveness and agility this is a new upstream release but a relatively targetted fix. There's a minor related fix to handling exceptions updating existing profiles, and some cleanup in make-tarball.sh which is not used in the Debian packaging. [ Impact ] Users have to resort to workarounds to get a first backup done with a new profile. [ Tests ] Manual testing and verification upstream and downstream. [ Risks ] Low. Small, targetted fix to a reproducible problem. [ Checklist ] [x] all changes are documented in the d/changelog [x] I reviewed all changes and I approve them [x] attach debdiff against the package in testing unblock backintime/1.5.5-1
diff -Nru backintime-1.5.4/CHANGES backintime-1.5.5/CHANGES --- backintime-1.5.4/CHANGES 2025-03-24 21:33:04.000000000 +0000 +++ backintime-1.5.5/CHANGES 2025-06-05 09:03:44.000000000 +0100 @@ -1,5 +1,8 @@ Back In Time +Version 1.5.5 (2025-06-05) +* Fixed: Unlocking SSH keys with passphrases on new created profiles (#2164) (@davidfjoh) + Version 1.5.4 (2025-03-24) * Breaking Change: Auto-remove rules "Free inodes" and "Free space" disabled by default in new created profiles (#1976) * Changed: Completed license information to conform to REUSE.software and SPDX standards. diff -Nru backintime-1.5.4/common/config.py backintime-1.5.5/common/config.py --- backintime-1.5.4/common/config.py 2025-03-24 21:33:04.000000000 +0000 +++ backintime-1.5.5/common/config.py 2025-06-05 09:03:44.000000000 +0100 @@ -1489,10 +1489,16 @@ profile_ids = self.profiles() # For each profile: cronline and the command (backintime) - cron_lines = [ - self._cron_line(pid).replace('{cmd}', self._cron_cmd(pid)) - for pid in profile_ids - ] + cron_lines = [] + for pid in profile_ids: + result = self._cron_line(pid) + + try: + cron_lines.append( + result.replace('{cmd}', self._cron_cmd(pid)) + ) + except AttributeError: + pass # Remove empty lines (profiles not scheduled) cron_lines = list(filter(None, cron_lines)) diff -Nru backintime-1.5.4/common/man/C/backintime.1 backintime-1.5.5/common/man/C/backintime.1 --- backintime-1.5.4/common/man/C/backintime.1 2025-03-24 21:33:04.000000000 +0000 +++ backintime-1.5.5/common/man/C/backintime.1 2025-06-05 09:03:44.000000000 +0100 @@ -1,4 +1,4 @@ -.TH backintime 1 "March 2025" "version 1.5.4" "USER COMMANDS" +.TH backintime 1 "March 2025" "version 1.5.5" "USER COMMANDS" .SH NAME backintime \- a simple backup tool for Linux. .PP diff -Nru backintime-1.5.4/common/man/C/backintime-askpass.1 backintime-1.5.5/common/man/C/backintime-askpass.1 --- backintime-1.5.4/common/man/C/backintime-askpass.1 2025-03-24 21:33:04.000000000 +0000 +++ backintime-1.5.5/common/man/C/backintime-askpass.1 2025-06-05 09:03:44.000000000 +0100 @@ -1,4 +1,4 @@ -.TH backintime-askpass 1 "March 2025" "version 1.5.4" "USER COMMANDS" +.TH backintime-askpass 1 "March 2025" "version 1.5.5" "USER COMMANDS" .SH NAME backintime-askpass \- a simple backup tool for Linux. .PP diff -Nru backintime-1.5.4/common/man/C/backintime-config.1 backintime-1.5.5/common/man/C/backintime-config.1 --- backintime-1.5.4/common/man/C/backintime-config.1 2025-03-24 21:33:04.000000000 +0000 +++ backintime-1.5.5/common/man/C/backintime-config.1 2025-06-05 09:03:44.000000000 +0100 @@ -1,4 +1,4 @@ -.TH backintime-config 1 "November 2024" "version 1.5.4" "USER COMMANDS" +.TH backintime-config 1 "November 2024" "version 1.5.5" "USER COMMANDS" .SH NAME config \- BackInTime configuration files. .SH SYNOPSIS diff -Nru backintime-1.5.4/common/sshtools.py backintime-1.5.5/common/sshtools.py --- backintime-1.5.4/common/sshtools.py 2025-03-24 21:33:04.000000000 +0000 +++ backintime-1.5.5/common/sshtools.py 2025-06-05 09:03:44.000000000 +0100 @@ -437,6 +437,13 @@ refresh=True, ) + if self.password: + thread.stop() + logger.debug('Provide password through temp FIFO', self) + thread = password_ipc.TempPasswordThread(self.password) + env['ASKPASS_TEMP'] = thread.temp_file + thread.start() + proc = subprocess.Popen(['ssh-add', self.private_key_file], stdin=subprocess.PIPE, stdout=subprocess.PIPE, diff -Nru backintime-1.5.4/common/version.py backintime-1.5.5/common/version.py --- backintime-1.5.4/common/version.py 2025-03-24 21:33:04.000000000 +0000 +++ backintime-1.5.5/common/version.py 2025-06-05 09:03:44.000000000 +0100 @@ -13,7 +13,7 @@ import re # Version string regularyly used by the application and presented to users. -__version__ = '1.5.4' +__version__ = '1.5.5' def is_release_candidate() -> bool: diff -Nru backintime-1.5.4/debian/changelog backintime-1.5.5/debian/changelog --- backintime-1.5.4/debian/changelog 2025-04-11 10:07:06.000000000 +0100 +++ backintime-1.5.5/debian/changelog 2025-06-17 09:00:53.000000000 +0100 @@ -1,3 +1,10 @@ +backintime (1.5.5-1) unstable; urgency=medium + + * Add sensible debian/gbp.conf + * New upstream version (closes: #1106754) + + -- Jonathan Wiltshire <j...@debian.org> Tue, 17 Jun 2025 09:00:53 +0100 + backintime (1.5.4-1) unstable; urgency=medium * New upstream version 1.5.4 (Closes: #1101208) diff -Nru backintime-1.5.4/debian/gbp.conf backintime-1.5.5/debian/gbp.conf --- backintime-1.5.4/debian/gbp.conf 2025-04-11 10:07:06.000000000 +0100 +++ backintime-1.5.5/debian/gbp.conf 2025-06-17 08:58:50.000000000 +0100 @@ -1,35 +1,9 @@ [DEFAULT] -# DEP-14 format - TODO -#debian-branch = debian/latest -#upstream-branch = upstream/latest - -# Specify branches used -upstream-branch = upstream -debian-branch = debian - -# Always use pristine tar pristine-tar = True - -# Ensure the Debian maintainer signs git tags automatically +debian-branch = debian sign-tags = True -# Ease dropping / adding patches -patch-numbers = False - -# Group debian/changelog entries with the same "[ Author ]" instead of making -# multiple ones for the same author -multimaint-merge = True - -# Ensure a human always reviews all the debian/changelog entries -spawn-editor = always - -# Ensure we always target Debian on Debian branches -dch-opt = --vendor=debian - -# If this package ever needs to be maintained for Ubuntu, remember to override -# the branch, tag and commit messages -#debian-branch = ubuntu/24.04-noble -#debian-tag = ubuntu/%(version)s -#debian-tag-msg = %(pkg)s Ubuntu release %(version)s -#dch-opt = --vendor=ubuntu - +[import-orig] +dch = False +debian-branch = debian +upstream-branch = upstream diff -Nru backintime-1.5.4/make-tarball.sh backintime-1.5.5/make-tarball.sh --- backintime-1.5.4/make-tarball.sh 2025-03-24 21:33:04.000000000 +0000 +++ backintime-1.5.5/make-tarball.sh 2025-06-05 09:03:44.000000000 +0100 @@ -22,7 +22,10 @@ # cp -aR ${CURRENT} ${NEW} # fi -cp --exclude=.git -aR ${CURRENT} ${NEW} +cp -aR ${CURRENT} ${NEW} +rm -rf ${NEW}/.git +rm -rf ${NEW}/.github +rm -rf ${NEW}/.pytest_cache rm backintime-$VER.tar.gz @@ -52,5 +55,5 @@ echo "RESULT:" realpath backintime-$VER.tar.gz -# rm -rf backintime-$VER +rm -rf ${NEW} diff -Nru backintime-1.5.4/qt/man/C/backintime-qt.1 backintime-1.5.5/qt/man/C/backintime-qt.1 --- backintime-1.5.4/qt/man/C/backintime-qt.1 2025-03-24 21:33:04.000000000 +0000 +++ backintime-1.5.5/qt/man/C/backintime-qt.1 2025-06-05 09:03:44.000000000 +0100 @@ -1,4 +1,4 @@ -.TH backintime-qt 1 "November 2024" "version 1.5.4" "USER COMMANDS" +.TH backintime-qt 1 "November 2024" "version 1.5.5" "USER COMMANDS" .SH NAME backintime-qt \- a simple backup tool. .SH SYNOPSIS diff -Nru backintime-1.5.4/VERSION backintime-1.5.5/VERSION --- backintime-1.5.4/VERSION 2025-03-24 21:33:04.000000000 +0000 +++ backintime-1.5.5/VERSION 2025-06-05 09:03:44.000000000 +0100 @@ -1 +1 @@ -1.5.4 +1.5.5