Commit Graph

657 Commits

Author SHA1 Message Date
Thomas Lamprecht
9aca936503 require newer rest-server, auth-api and s3-client
To ensure fixes for HttpOnly cookies and overly strict S3 region regex
are available.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-25 17:27:58 +02:00
Thomas Lamprecht
b1fa35ddf4 bump version to 4.0.6-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-24 15:31:24 +02:00
Thomas Lamprecht
6ca2162074 d/postinst: fix setting up pbs-test repo for beta
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-24 15:30:52 +02:00
Thomas Lamprecht
6dbe44cfd6 bump version to 4.0.6-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-24 13:57:03 +02:00
Thomas Lamprecht
fa9ccbe549 d/postinst: fix-up file name for beta sources file
Reported-by: Friedrich Weber <f.weber@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-24 11:21:36 +02:00
Thomas Lamprecht
a207cb37bd d/postinst: add pbs-test repo on fresh installation during the beta
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-24 00:51:00 +02:00
Thomas Lamprecht
f6c1bb8e6c d/postinst: drop migration steps from PBS 2.x times
There is no direct upgrade path from PBS 2 to 4 possible, so we can
safely drop them now.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-24 00:50:21 +02:00
Thomas Lamprecht
7616c0a2ed bump version to 4.0.5-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-23 21:53:53 +02:00
Thomas Lamprecht
d2011ce6b6 avoid leaking internal s3client struct name to the outside, favor s3-endpoint
Mostly affects docs and some JS UI components, but also changes the
section type name of the s3 client endpoints.

While the s3 client crate is aptly named, the config actually
describing how to access an S3 object storage is not really a client,
but a definition of an endpoint/remote/repo/address.

This is really no problem per se, but such internal names tend to leak
and can cause (a tiny bit!) confusion for users if they see with e.g.
"S3 Endpoints" in the UI but the same thing now uses "s3client" in the
config file.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-23 21:29:02 +02:00
Thomas Lamprecht
81b0ee0b68 d/postinst: drop outdated comment
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-23 13:56:02 +02:00
Thomas Lamprecht
ce37fcb74b d/postinst: drop useless no-op true command invocations
They do nothing as standalone command, would only ever make sense
in combination as `command-that-can fail || true`, but for these
situations it's almost always better to output an error message as
`command-that-can fail || echo "..."` instead, which we already do.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-23 13:56:02 +02:00
Thomas Lamprecht
36152566f0 bump version to 4.0.4-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-22 22:26:17 +02:00
Thomas Lamprecht
b8bf7e39fd update pbs-api-types to 1.0.2
For S3 backend for datacenter config and run-on-mount sync job config.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-22 21:56:33 +02:00
Thomas Lamprecht
15bcf787c6 update proxmox-s3-client crate dependency to 1.0.3
and track in d/control.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-22 21:56:11 +02:00
Thomas Lamprecht
a740264063 bump version to 4.0.3-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-19 20:05:31 +02:00
Thomas Lamprecht
b19d2c393f bump version to 4.0.2-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-16 01:52:15 +02:00
Thomas Lamprecht
57d82fde86 d/postinst: fix version used for notification-mode update guard
This wasn't known at development time as it needs to be lesser than
the version this was first shipped with.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-16 01:52:15 +02:00
Lukas Wagner
f645974503 d/postinst: migrate notification mode default on update
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Link: https://lore.proxmox.com/20250623141315.288681-5-l.wagner@proxmox.com
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-16 01:52:15 +02:00
Lukas Wagner
9526aee10a cli: manager: move update-to-prune-jobs command to new migrate-config sub-command
The new subcommand is introduced so that we have a common name space for
any config migration tasks which are triggered by d/postinst (or potentially
by hand).

No functional changes.

Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Link: https://lore.proxmox.com/20250623141315.288681-3-l.wagner@proxmox.com
2025-07-16 01:12:47 +02:00
Thomas Lamprecht
99129bbbd1 require pbs-api-types 1.0.1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-16 01:00:45 +02:00
Lukas Wagner
fa89533da5 fixup Makefile and lintian-overrides for deb822 format sources file
These were forgotten in the original commit and unfortunately broke
`make deb`.

Fixes: 82a986ee67 ("update apt sources for Trixie based release and move to deb822 format")
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Link: https://lore.proxmox.com/20250714091001.132118-1-l.wagner@proxmox.com
2025-07-15 22:34:35 +02:00
Christian Ebner
11b1bd5bc0 build: Adapt from pbs2to3 to pbs3to4
Build and package the new version of the upgrade check binary,
ropping the no longer required old one.

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Link: https://lore.proxmox.com/20250714101217.4178-1-c.ebner@proxmox.com
2025-07-15 22:20:03 +02:00
Lukas Wagner
82a986ee67 update apt sources for Trixie based release and move to deb822 format
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Link: https://lore.proxmox.com/20250711091516.82731-1-l.wagner@proxmox.com
2025-07-11 11:17:31 +02:00
Thomas Lamprecht
c6c58a0fc9 bump version to 4.0.1-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-08 20:03:00 +02:00
Thomas Lamprecht
16a10e64dc d/control: update SCSI library to libsgutils2-1.48 from Debian Trixie
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-08 20:02:19 +02:00
Thomas Lamprecht
43143681a1 bump version to 4.0.1-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-07-08 19:28:32 +02:00
Fabian Grünbichler
4db56a0478 fix static build
`cargo rustc` only passes the flags (like `target-feature` in this case) for
the final invocation, not for any dependency compilation.

unfortunately, switching to `cargo build` is not straight-forward:
- during a package build, $CARGO is the cargo wrapper which only honors
  RUSTFLAGS in its `prepare-debian` invocation
- rustflags in cargo's config.toml are global/per target
- the unstable override that would allow setting them per profile is broken
- and it would only work for the final invocation anyway, just like `cargo rustc`

as a stop-gap measure, let's duplicate and adapt the generated config.toml, and
select it explicitly when doing the static compilation as part of the package
build. manual `make proxmox-backup-client-static` can still just pass RUSTFLAGS
via the environment..

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
[WB: separate -i and -e in sed invocation, add -r, drop backslashes]
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2025-06-30 15:01:38 +02:00
Thomas Lamprecht
d5e4a2bb71 bump version to 4.0.0-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-06-16 14:53:46 +02:00
Thomas Lamprecht
d9df824402 d/lintian: update override for unusual target to moved systemd unit path
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-06-16 14:53:23 +02:00
Thomas Lamprecht
02a204cab8 d/lintian: fix overrides for static package
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-06-16 14:41:23 +02:00
Thomas Lamprecht
3117a8e790 d/lintian-overrides: allow embedded library in static package build
We want the library to be embedded in the static build after all.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-06-16 14:29:28 +02:00
Thomas Lamprecht
e245786bfb udev rules: update comment and add file endings
no semantic change intended.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-06-16 14:29:28 +02:00
Thomas Lamprecht
c2173520d2 install systemd services in /usr to avoid aliased-location
For better compat with the usrmerge/hermetic-/usr philosophies, and,
well, lintian complaining about this.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-06-16 14:29:28 +02:00
Thomas Lamprecht
f4b78e35d9 workspace: require proxmox-router >= 3.2.2
To ensure the ReST synopsis documentation output is compatible with
the Sphinx version from Trixie.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-06-16 14:08:53 +02:00
Wolfgang Bumiller
2f30b8404a d/control: update to trixie crate versions
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-06-16 13:59:37 +02:00
Thomas Lamprecht
ec54686bc0 ui: replace eslint with biome
While eslint is an OK linter, its code formatting capabilities are
rather limited, so replace it with [Biome], which has both a good (and
fast!) linter and code formatter.

[Biome]: https://github.com/biomejs/biome

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-06-16 13:59:27 +02:00
Fabian Grünbichler
37f1949335 bump version to 3.4.2-1
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2025-06-04 15:00:05 +02:00
Wolfgang Bumiller
3c2e866b44 bump proxmox-section-config dep to 3
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2025-05-06 11:54:39 +02:00
Thomas Lamprecht
58fb448be5 bump version to 3.4.1-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-16 14:45:45 +02:00
Christian Ebner
c644f7bc85 build: include pxar in static binary compilation and package
The debian package providing the dynamically linked version of the
proxmox-backup-client is packaged together with the pxar executable.

To be in line and for user convenience, include a statically linked
version of pxar to the static package as well.

Renames STATIC_BIN env variable to STATIC_BINS to reflect that this
now covers multiple binaries and store rustc flags in its own
variable so they can be reused since `cargo rustc` does not allow
invocations with multiple `--package` arguments at once.

Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
2025-04-15 12:16:51 +02:00
Thomas Lamprecht
cdc710a736 d/control: normalize with wrap-and-sort -tkn
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-09 18:16:35 +02:00
Thomas Lamprecht
36ef1b01f7 bump version to 3.4.0-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-09 18:00:47 +02:00
Christian Ebner
83e7b9de88 client: http: Use custom resolver for statically linked binary
The dependency on the `getaddrinfo` based `GaiResolver` used by
default for the `HttpClient` is not suitable for the statically
linked binary of the `proxmox-backup-client`, because of the
dependency on glibc NSS libraries, as described in glibc's FAQs [0].

As a workaround, conditionally compile the binary using the `hickory-dns`
resolver.

[0] https://sourceware.org/glibc/wiki/FAQ#Even_statically_linked_programs_need_some_shared_libraries_which_is_not_acceptable_for_me.__What_can_I_do.3F

Suggested-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Tested-by: Lukas Wagner <l.wagner@proxmox.com>
FG: bump proxmox-http dependency
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2025-04-09 15:23:14 +02:00
Christian Ebner
601a84ae74 fix #4788: build static version of client
Fixes: https://bugzilla.proxmox.com/show_bug.cgi?id=4788

Build and package the a statically linked binary version of
proxmox-backup-client to facilitate updates and distribution.
This provides a mechanism to obtain and repackage the client for
external parties and Linux distributions.

The statically linked client is provided as dedicated package,
conflicting with the regular package.

Since the RUSTFLAGS env variables are not preserved when building
with dpkg-buildpackage, invoke via `cargo rustc` instead which allows
to set the recquried arguments.

Credit goes also to Christoph Heiss, as this patch is loosely based
on his pre-existing work for the proxmox-auto-install-assistant [0],
which provided a good template.

Also, place the libsystemd stub into its own subdirectory for cleaner
separation from the compiled artifacts.

[0] https://lore.proxmox.com/pve-devel/20240816161942.2044889-1-c.heiss@proxmox.com/

Suggested-by: Christoph Heiss <c.heiss@proxmox.com>
Originally-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
FG: fold in fixups
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2025-04-09 15:23:14 +02:00
Thomas Lamprecht
f7f61002ee cargo: require proxmox-rest-server 0.8.9
To ensure the accepted HTTP request body size is 512 kIB for the
consent banner stuff.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-08 17:07:13 +02:00
Thomas Lamprecht
254169f622 cargo: update proxmox-sys to 0.6.7
To ensure the updated memory usage calculation [0] gets used.

[0]: https://git.proxmox.com/?p=proxmox.git;a=commit;h=58d6e8d4925b342a0ab4cfa4bfde76f092e2465a

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-07 21:19:16 +02:00
Thomas Lamprecht
dfc0278248 bump version to 3.3.7-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-05 19:00:38 +02:00
Thomas Lamprecht
a3815aff82 cargo: require newer pbs-api-types crate
To ensure all the new fields for the datacenter tuning options and
realms are available.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-05 17:40:10 +02:00
Thomas Lamprecht
b48427720a bump version to 3.3.6-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-03 17:57:16 +02:00
Thomas Lamprecht
7fbe029ceb bump version to 3.3.5-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2025-04-02 19:57:51 +02:00