Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update duplicity with oauth and Python 3 #3823

Merged
merged 15 commits into from
May 2, 2021

Conversation

heralight
Copy link
Contributor

@heralight heralight commented Dec 16, 2019

Motivation: Update duplicity to 0.8.18 to support onedrive with their new api.

Remarks: others backends doesn't compile anymore, synocommunity docker image is to outdated.

Checklist

  • Build rule all-supported completed successfully
  • Package upgrade completed successfully
  • New installation of package completed successfully

Remarks

The current version of duply does not work with cross/bash. As DSM >= 6.0 has /bin/bash available and this version works with duply the cross/bash dependency is removed with this PR. For DSM < 6.0 only duplycity is supported, the duply script is not.

@Namlaz
Copy link

Namlaz commented Jan 11, 2020

Yes ! That would be great since v0.8 added multibackend support which enables the use of cost-effective cold/archive object storage solution for backups 👍

@ymartin59
Copy link
Contributor

Hello @heralight Thanks for your contribution. May you please update to latest duplicity version please?

@hgy59 hgy59 mentioned this pull request Dec 12, 2020
10 tasks
@hgy59 hgy59 changed the title Update duplicity to 0.8.08 with oauth Update duplicity with oauth Jan 10, 2021
@hgy59 hgy59 changed the title Update duplicity with oauth Update duplicity with oauth and Python 3 Jan 10, 2021
Copy link
Contributor

@ymartin59 ymartin59 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Still a minor improvement request to avoid copy-paste code

spk/duplicity/src/service-setup.sh Outdated Show resolved Hide resolved
@hgy59
Copy link
Contributor

hgy59 commented Jan 11, 2021

Yes ! That would be great since v0.8 added multibackend support which enables the use of cost-effective cold/archive object storage solution for backups 👍

Hi @Namlaz, are you still looking for this update? It would be great to get some feedback from a user of duplicity. You can download the packages as artifacts of the github build action.

@Namlaz
Copy link

Namlaz commented Jan 13, 2021

Yes ! That would be great since v0.8 added multibackend support which enables the use of cost-effective cold/archive object storage solution for backups 👍

Hi @Namlaz, are you still looking for this update? It would be great to get some feedback from a user of duplicity. You can download the packages as artifacts of the github build action.

Hey there, definitely, thank you for the update, I'll dive back into it shortly :)

@RomainBoulay
Copy link

It would be great to get some feedback from a user of duplicity. You can download the packages as artifacts of the github build action.

@hgy59: I just did that on my DS413 (qoriq / ppc) and that worked perfectly 👍

@heralight, @ymartin59: after addressing the merge conflicts, would that PR be ready to merge?

Anyway, thanks all for working on that duplicity update! I'm quite looking forward to using the multi-backend feature, and I imagine other users are too.

@hgy59
Copy link
Contributor

hgy59 commented Mar 20, 2021

after addressing the merge conflicts, would that PR be ready to merge?

I propose to also update python3 dependency to python38
and to rework the link creation to avoid SPK_LINKS for DSM7 compatibility.

@hgy59
Copy link
Contributor

hgy59 commented Mar 20, 2021

Now ready to merge.
But DSM7 does not install until the loging in service-setup.sh files is reworked for dsm7 (INST_LOG is not defined and does not work anymore with dsm7).

@publicarray are you already working on a soultion to support installation logs with dsm7?

my general idea is to support something like this:

echo "Installation log from service-setup" | ${INST_LOG}

and define INST_LOG differently for dsm < 7.0 and dsm7 to use ${TEE} ... for dsm7 and >> install.log for others.

This rework of install logs is for a diffent branch and OT for this duplicity update.

@hgy59
Copy link
Contributor

hgy59 commented Mar 20, 2021

@RomainBoulay I would kindly ask you to test again with the current package.

I already tested with x64 (on DSM7 with temp. modified service-setup.sh) and armv7.
but my tests covered only the trivial options --version and --help of duplicity and duply.

@RomainBoulay
Copy link

@hgy59 sorry I forgot to come back to you. This weekend I tested duplicity after your update and I can confirm my backups worked as expected 👍 From my point of view, it's good to go (DS413, DSM 6.2.3)

@ymartin59
Copy link
Contributor

@hgy59 May you please fix/rebase branch to review PR and publish package?

heralight and others added 9 commits May 1, 2021 21:42
- update duply to v2.3
- install duply to /bin
- fix symlinks
- fix dependencies and remove cross/bash
- duply script is not supported on DSM < 6.0
- use service-setup.sh and remove dsm-control.sh, installer.sh
- /tmp might be too small due to the size of the installed wheels
- use custom TMPDIR for installation
- update duplicity for USE_ALTERNATE_TMPDIR
- update homeassistant for USE_ALTERNATE_TMPDIR
- cleanup tmpdir after installation
- create link in bin folder to avoid SPK_LINKS
- use $(SYNOPKG_PKGTMP) as alternate tmpdir with dsm7
- avoid usage of /usr/local/{package-name}/
hgy59 added 5 commits May 1, 2021 21:43
- update duply
- fix default_python patch
- cffi
- librsync
- lxml
- pycparser
- use cross-cmake rules for librsync
- update requirements
- update instructions on how to update requirements.txt
- update changelog and list all included backends as bullet list
- adjust cross dependencies
- fix service-setup.sh for redesigned installer logs
@hgy59 hgy59 merged commit f310273 into SynoCommunity:master May 2, 2021
@hgy59 hgy59 added the status/published Published and activated (may take up to 48h until visible in DSM package manager) label May 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status/published Published and activated (may take up to 48h until visible in DSM package manager)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants