Files
element-desktop-rpm/README.md
T
2026-04-27 10:25:41 -04:00

50 lines
1.3 KiB
Markdown

# Element Desktop RPM packaging
This repository builds an RPM package from the upstream Element Desktop Linux
x86_64 tarball:
`https://packages.element.io/desktop/install/linux/glibc-x86-64/element-desktop.tar.gz`
Latest upstream version tracked in this repo: `1.12.15`
## What it does
- Downloads the current upstream tarball.
- Derives the version from the tarball root directory.
- Renders a concrete spec file with that version before invoking `rpmbuild`.
- Repackages the prebuilt binaries into an RPM.
- Removes the upstream auto-update manifest so RPM remains the update path.
- Sets `resources/package-type` to `rpm`.
- Forces `rpmbuild` to target `x86_64`, which avoids COPR SRPM failures on
non-`x86_64` source builders.
- Supports COPR SCM builds through `.copr/Makefile`.
## Local builds
Build a source RPM:
```sh
make srpm
```
Build a binary RPM and source RPM:
```sh
make rpm
```
Artifacts are written to `dist/`.
## COPR
Use COPR's SCM source type with:
- Clone URL: this repository
- Spec template: `SPECS/element-desktop.spec.in`
- SRPM build method: `make srpm`
- Enable only `x86_64` binary chroots for this package
COPR will invoke `.copr/Makefile`, which calls the same SRPM generation script
used for local builds. That script downloads the upstream tarball during the
SRPM stage, so no vendored source archive is required in git.