Re: Installing/upgrading duplicity without PyPi etc.

Kenneth Loafman via Duplicity-talk <[email protected]> Mon, 29 Jun 2026 11:03:37 -0500
Newsgroups gmane.comp.sysutils.backup.duplicity.general
Message-ID <CAD-_Ma2aCwx=5A6pE0AqH6Qch3DH4g4mM1VLFSn3uNb478p2oA@mail.gmail.com>
--===============3862010950945491919==
Content-Type: multipart/alternative; boundary="000000000000beaac90655669a7f"

--000000000000beaac90655669a7f
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Duplicity 3.1.0 runs on Python 3.10 thru 3.14.  None of them are fettered
by the Python upper version yet.  Minimum version yes, but not upper.

The push to build under pyproject.toml and not setup.py was introduced in
Python 3.12.  A lot of packages are behind the times.  Duplicity still
needs setup.py due to having to build the extension for librsync and having
to process the language translations so it's sort of a hybrid.  They are
making things harder every release.  I don't believe we'll ever get rid of
setup.py since pyproject.toml is declarative, not imperative.  We'll see
what happens in November when Python 3.15 is released.

On Mon, Jun 29, 2026 at 8:18=E2=80=AFAM Jakob Bohm via Duplicity-talk <
[email protected]> wrote:

> Yeah, Duplicity 1.2.1 was shortly before Python added restrictions
> against local build by anyone EXCEPT the official distro maintainers, in
> particular, setup.py stopped working by default.
>
> On 29/06/2026 13:23, Kenneth Loafman wrote:
> > Hi Jacob,
> >
> > Most distros have packages named 'python3-<package>', that usually matc=
h
> > the name PyPI uses, so just replace 'pip install boto3' with 'apt
> > install python3-boto3'.
> >
> > I'm sure you can build a working duplicity with just distro packages.
> > After all, the distro maintainers do that.
> >
> > BTW, version 1.2.1 is quite old.  We're up to 3.0.10 at the moment.
> >
> > ...Thanks,,
> > ...Ken
> >
> >
> > On Mon, Jun 29, 2026 at 5:25=E2=80=AFAM Jakob Bohm via Duplicity-talk
> > <[email protected] <mailto:[email protected]>> wrote:
> >
> >     Dear Duplicity community,
> >
> >     The dedicated Monthy Python repositories such as PyPi have earned a
> >     reputation for spreading malware, which raises the major question o=
f
> >     how
> >     to install Duplicity without talking to those dangerous servers.
> >
> >     For Duplicity 1.2.1 with Python 3.11, things could be compiled and
> >     built
> >     using local tools only, but at some point Python adopted a policy o=
f
> >     making local building difficult for ordinary sysadmins who are not
> >     Python enthusiasts.  So what is the new recipe for manually buildin=
g
> >     and
> >     installing Duplicity  system-wide using only OS-bundled Python
> packages
> >     and trusted tarballs?
> >
> >
> >     Enjoy
> >
> >     Jakob
> >     --
> >     Jakob Bohm, CIO, Partner, WiseMo A/S. https://www.wisemo.com
> >     Transformervej 29, 2860 S=C3=B8borg, Denmark.  Direct +45 31 13 16 =
10
> >     This public discussion message is non-binding and may contain error=
s.
> >     WiseMo - Remote Service Management for PCs, Phones and Embedded
> >
> >
> >     _______________________________________________
> >     Duplicity-talk mailing list
> >     [email protected] <mailto:[email protected]>
> >     https://lists.nongnu.org/mailman/listinfo/duplicity-talk
> >
>
>
> Enjoy
>
> Jakob
> --
> Jakob Bohm, CIO, Partner, WiseMo A/S.  https://www.wisemo.com
> Transformervej 29, 2860 S=C3=B8borg, Denmark.  Direct +45 31 13 16 10
> This public discussion message is non-binding and may contain errors.
> WiseMo - Remote Service Management for PCs, Phones and Embedded
>
> _______________________________________________
> Duplicity-talk mailing list
> [email protected]
> https://lists.nongnu.org/mailman/listinfo/duplicity-talk
>

--000000000000beaac90655669a7f
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Duplicity 3.1.0 runs on Python 3.10 thru 3.14.=C2=A0 None =
of them are fettered by the Python upper version yet.=C2=A0 Minimum version=
 yes, but not upper.<div><br></div><div>The push to build under pyproject.t=
oml and not setup.py was introduced in Python 3.12.=C2=A0 A lot of packages=
 are behind the times.=C2=A0 Duplicity still needs setup.py due to having t=
o build the extension for librsync and having to process the language trans=
lations so it&#39;s sort of a hybrid.=C2=A0 They are making things harder e=
very release.=C2=A0 I don&#39;t believe=C2=A0we&#39;ll ever get rid of setu=
p.py since pyproject.toml is declarative, not imperative.=C2=A0 We&#39;ll s=
ee what happens in November when Python 3.15 is released.</div></div><br><d=
iv class=3D"gmail_quote gmail_quote_container"><div dir=3D"ltr" class=3D"gm=
ail_attr">On Mon, Jun 29, 2026 at 8:18=E2=80=AFAM Jakob Bohm via Duplicity-=
talk &lt;<a href=3D"mailto:[email protected]">duplicity-talk@nongnu=
.org</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"mar=
gin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1=
ex">Yeah, Duplicity 1.2.1 was shortly before Python added restrictions <br>
against local build by anyone EXCEPT the official distro maintainers, in <b=
r>
particular, setup.py stopped working by default.<br>
<br>
On 29/06/2026 13:23, Kenneth Loafman wrote:<br>
&gt; Hi Jacob,<br>
&gt; <br>
&gt; Most distros have packages named &#39;python3-&lt;package&gt;&#39;, th=
at usually match <br>
&gt; the name PyPI uses, so just replace &#39;pip install boto3&#39; with &=
#39;apt <br>
&gt; install python3-boto3&#39;.<br>
&gt; <br>
&gt; I&#39;m sure you can build a working duplicity with just distro packag=
es.=C2=A0 <br>
&gt; After all, the distro maintainers do that.<br>
&gt; <br>
&gt; BTW, version 1.2.1 is quite old.=C2=A0 We&#39;re up to 3.0.10 at=C2=A0=
the moment.<br>
&gt; <br>
&gt; ...Thanks,,<br>
&gt; ...Ken<br>
&gt; <br>
&gt; <br>
&gt; On Mon, Jun 29, 2026 at 5:25=E2=80=AFAM Jakob Bohm via Duplicity-talk =
<br>
&gt; &lt;<a href=3D"mailto:[email protected]" target=3D"_blank">dup=
[email protected]</a> &lt;mailto:<a href=3D"mailto:duplicity-talk@nong=
nu.org" target=3D"_blank">[email protected]</a>&gt;&gt; wrote:<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Dear Duplicity community,<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0The dedicated Monthy Python repositories such as Py=
Pi have earned a<br>
&gt;=C2=A0 =C2=A0 =C2=A0reputation for spreading malware, which raises the =
major question of<br>
&gt;=C2=A0 =C2=A0 =C2=A0how<br>
&gt;=C2=A0 =C2=A0 =C2=A0to install Duplicity without talking to those dange=
rous servers.<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0For Duplicity 1.2.1 with Python 3.11, things could =
be compiled and<br>
&gt;=C2=A0 =C2=A0 =C2=A0built<br>
&gt;=C2=A0 =C2=A0 =C2=A0using local tools only, but at some point Python ad=
opted a policy of<br>
&gt;=C2=A0 =C2=A0 =C2=A0making local building difficult for ordinary sysadm=
ins who are not<br>
&gt;=C2=A0 =C2=A0 =C2=A0Python enthusiasts.=C2=A0 So what is the new recipe=
 for manually building<br>
&gt;=C2=A0 =C2=A0 =C2=A0and<br>
&gt;=C2=A0 =C2=A0 =C2=A0installing Duplicity=C2=A0 system-wide using only O=
S-bundled Python packages<br>
&gt;=C2=A0 =C2=A0 =C2=A0and trusted tarballs?<br>
&gt; <br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Enjoy<br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0Jakob<br>
&gt;=C2=A0 =C2=A0 =C2=A0-- <br>
&gt;=C2=A0 =C2=A0 =C2=A0Jakob Bohm, CIO, Partner, WiseMo A/S. <a href=3D"ht=
tps://www.wisemo.com" rel=3D"noreferrer" target=3D"_blank">https://www.wise=
mo.com</a><br>
&gt;=C2=A0 =C2=A0 =C2=A0Transformervej 29, 2860 S=C3=B8borg, Denmark.=C2=A0=
 Direct +45 31 13 16 10<br>
&gt;=C2=A0 =C2=A0 =C2=A0This public discussion message is non-binding and m=
ay contain errors.<br>
&gt;=C2=A0 =C2=A0 =C2=A0WiseMo - Remote Service Management for PCs, Phones =
and Embedded<br>
&gt; <br>
&gt; <br>
&gt;=C2=A0 =C2=A0 =C2=A0_______________________________________________<br>
&gt;=C2=A0 =C2=A0 =C2=A0Duplicity-talk mailing list<br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"mailto:[email protected]" target=
=3D"_blank">[email protected]</a> &lt;mailto:<a href=3D"mailto:Dupl=
[email protected]" target=3D"_blank">[email protected]</a>&gt;<=
br>
&gt;=C2=A0 =C2=A0 =C2=A0<a href=3D"https://lists.nongnu.org/mailman/listinf=
o/duplicity-talk" rel=3D"noreferrer" target=3D"_blank">https://lists.nongnu=
.org/mailman/listinfo/duplicity-talk</a><br>
&gt; <br>
<br>
<br>
Enjoy<br>
<br>
Jakob<br>
-- <br>
Jakob Bohm, CIO, Partner, WiseMo A/S.=C2=A0 <a href=3D"https://www.wisemo.c=
om" rel=3D"noreferrer" target=3D"_blank">https://www.wisemo.com</a><br>
Transformervej 29, 2860 S=C3=B8borg, Denmark.=C2=A0 Direct +45 31 13 16 10<=
br>
This public discussion message is non-binding and may contain errors.<br>
WiseMo - Remote Service Management for PCs, Phones and Embedded<br>
<br>
_______________________________________________<br>
Duplicity-talk mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blank">Duplicity-ta=
[email protected]</a><br>
<a href=3D"https://lists.nongnu.org/mailman/listinfo/duplicity-talk" rel=3D=
"noreferrer" target=3D"_blank">https://lists.nongnu.org/mailman/listinfo/du=
plicity-talk</a><br>
</blockquote></div>

--000000000000beaac90655669a7f--


--===============3862010950945491919==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRHVwbGljaXR5
LXRhbGsgbWFpbGluZyBsaXN0CkR1cGxpY2l0eS10YWxrQG5vbmdudS5vcmcKaHR0cHM6Ly9saXN0
cy5ub25nbnUub3JnL21haWxtYW4vbGlzdGluZm8vZHVwbGljaXR5LXRhbGsK

--===============3862010950945491919==--