mirror of
https://github.com/terrapkg/packages.git
synced 2026-05-31 17:11:56 +00:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 56a2e73176 | |||
| f7915c8adf | |||
| 1ce7b2f873 | |||
| fc3c1dcc3a | |||
| 177153e227 | |||
| 47bad035e5 | |||
| ec642693d1 | |||
| 9f79730638 |
+1
-1
@@ -2,7 +2,7 @@
|
||||
"repoOwner": "terrapkg",
|
||||
"repoName": "packages",
|
||||
"resetAuthor": true,
|
||||
"targetBranchChoices": ["frawhide", "f44", "f43", "f42", "el10"],
|
||||
"targetBranchChoices": ["frawhide", "f43", "f42", "el10"],
|
||||
"branchLabelMapping": {
|
||||
"^sync-(.+)$": "$1"
|
||||
}
|
||||
|
||||
@@ -1,66 +0,0 @@
|
||||
name: Package Bug Report
|
||||
description: Report an issue with a package.
|
||||
title: "[BUG] "
|
||||
labels: ["bug", "triage"]
|
||||
#projects: ["octo-org/1", "octo-org/44"]
|
||||
assignees:
|
||||
- hamachitan
|
||||
#type: bug
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for taking the time to fill out this bug report!
|
||||
- type: input
|
||||
id: pkg
|
||||
attributes:
|
||||
label: Full Raw Package Name (e.g. anda-0.4.14-1.fcrawhide.x86_64)
|
||||
description: |
|
||||
If you report multiple packages, only the main package is needed if applicable, or separate them with spaces otherwise. Obtain the full package name using `rpm -qa pkg-name`.
|
||||
|
||||
**The format MUST BE LITERALLY THE SAME as `anda-0.4.14-1.fc43.x86_64`. Do NOT add anything else, not even backticks.**
|
||||
placeholder: anda-0.4.14-1.fc43.x86_64 (MUST be under this format, no backticks)
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: releasever
|
||||
attributes:
|
||||
label: Release Version
|
||||
description: Which version of Terra are you using?
|
||||
options:
|
||||
- frawhide
|
||||
- f43
|
||||
- f42
|
||||
- el10
|
||||
default: 1
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Describe the Bug
|
||||
description: A clear and concise description of what the bug is. Please only report issues with packaging or Terra itself, report upstream bugs to the respective project.
|
||||
placeholder: A bug happened!
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: repro
|
||||
attributes:
|
||||
label: To Reproduce
|
||||
description: How can the bug be reproduced?
|
||||
placeholder: |
|
||||
1. `dnf install this-package`
|
||||
2. run `this-package`
|
||||
3. see error
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: expect
|
||||
attributes:
|
||||
label: Expected Behavior
|
||||
description: A clear and concise description of what you expected to happen.
|
||||
placeholder: Running it should show hello world!
|
||||
- type: textarea
|
||||
id: logs
|
||||
attributes:
|
||||
label: Relevant Log Output
|
||||
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
|
||||
render: shell
|
||||
@@ -1,14 +1,14 @@
|
||||
---
|
||||
name: Incident Report
|
||||
about: Report an issue with Terra itself
|
||||
title: '[INCIDENT] '
|
||||
labels: incident
|
||||
assignees: ['madonuko', 'korewaChino', 'lleyton']
|
||||
name: Bug report
|
||||
about: Report an issue with a package (or Terra itself)
|
||||
title: '[BUG] '
|
||||
labels: bug
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Describe the Incident**
|
||||
A clear and concise description of what is going on. **If you want to report a problem with a package, please use the Package Bug Report option instead.**
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is. Please only report issues with packaging or Terra itself, report upstream bugs to the respective project.
|
||||
|
||||
**To Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
@@ -23,7 +23,7 @@ If applicable, add screenshots to help explain your problem.
|
||||
|
||||
**Affected (please complete the following information):**
|
||||
- Distro [e.g. Fedora]
|
||||
- Other relevant environments
|
||||
- Package [e.g. melody, srpm-macros]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
@@ -30,7 +30,7 @@ jobs:
|
||||
- name: Set workspace as safe
|
||||
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Generate build matrix
|
||||
@@ -51,7 +51,7 @@ jobs:
|
||||
image: ghcr.io/terrapkg/appstream-generator:main
|
||||
steps:
|
||||
- name: Download artifacts
|
||||
uses: actions/download-artifact@v7
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
merge-multiple: true
|
||||
path: ./artifacts
|
||||
|
||||
@@ -21,7 +21,7 @@ jobs:
|
||||
dnf5 swap -y --setopt=install_weak_deps=False systemd-standalone-sysusers systemd
|
||||
dnf5 install -y --setopt=install_weak_deps=False curl wget git-core openssl-devel cargo podman fuse-overlayfs dnf5-plugins rpmbuild script
|
||||
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
ref: f${{ matrix.version }}
|
||||
fetch-depth: 1
|
||||
@@ -54,9 +54,6 @@ jobs:
|
||||
- name: Build terra-release
|
||||
run: anda build -D "vendor Terra" -rrpmbuild anda/terra/release/pkg
|
||||
|
||||
- name: Build terra-appstream-helper
|
||||
run: anda build -D "vendor Terra" -D "__python %{__python3}" -rrpmbuild anda/terra/appstream-helper/pkg
|
||||
|
||||
- name: Build Subatomic
|
||||
run: anda build -D "vendor Terra" -rrpmbuild anda/tools/buildsys/subatomic/pkg
|
||||
- name: Install Subatomic
|
||||
|
||||
@@ -29,7 +29,7 @@ jobs:
|
||||
options: --cap-add=SYS_ADMIN --privileged
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Setup Git
|
||||
|
||||
@@ -35,6 +35,12 @@ on:
|
||||
type: boolean
|
||||
default: true
|
||||
|
||||
env:
|
||||
RUSTC_WRAPPER: sccache
|
||||
# SCCACHE_NO_DAEMON: "1"
|
||||
# Disable incremental compilation so sccache works better
|
||||
CARGO_INCREMENTAL: "false"
|
||||
|
||||
jobs:
|
||||
build:
|
||||
strategy:
|
||||
@@ -48,7 +54,7 @@ jobs:
|
||||
options: --cap-add=SYS_ADMIN --privileged
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
@@ -69,12 +75,13 @@ jobs:
|
||||
dir=$(dirname ${{ matrix.pkg.pkg }})
|
||||
dnf5 builddep -y ${dir}/*.spec
|
||||
|
||||
|
||||
- name: Run sccache-cache
|
||||
uses: mozilla-actions/sccache-action@v0.0.9
|
||||
|
||||
- name: Configure sccache
|
||||
if: ${{ !contains(matrix.pkg.labels, 'sccache') }}
|
||||
run: |
|
||||
set -euo pipefail
|
||||
echo "RUSTC_WRAPPER=/usr/bin/sccache" >> $GITHUB_ENV
|
||||
echo "CARGO_INCREMENTAL=false" >> $GITHUB_ENV
|
||||
echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV
|
||||
if [ "${{ inputs.bust_cache }}" = "true" ]; then
|
||||
echo "SCCACHE_BUST_CACHE=true" >> $GITHUB_ENV
|
||||
@@ -82,7 +89,7 @@ jobs:
|
||||
|
||||
|
||||
- name: Build with Andaman
|
||||
run: anda build -D "vendor Terra" -D "__python %{__python3}" ${{ matrix.pkg.pkg }} -c terra-${{ matrix.version }}-${{ matrix.pkg.arch }} ${{ !matrix.pkg.labels.mock == '1' && '-rrpmbuild' || '' }}
|
||||
run: anda build -D "vendor Terra" ${{ matrix.pkg.pkg }} -c terra-${{ matrix.version }}-${{ matrix.pkg.arch }} ${{ !matrix.pkg.labels.mock == '1' && '-rrpmbuild' || '' }}
|
||||
|
||||
- name: Generating artifact name
|
||||
id: art
|
||||
@@ -91,7 +98,7 @@ jobs:
|
||||
x=${NAME//\//@}
|
||||
echo "name=$x" >> $GITHUB_OUTPUT
|
||||
|
||||
- uses: actions/upload-artifact@v6
|
||||
- uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ steps.art.outputs.name }}
|
||||
compression-level: 0 # The RPMs are already compressed :p
|
||||
@@ -122,4 +129,4 @@ jobs:
|
||||
run: ./.github/workflows/mg.sh true "${{matrix.pkg.pkg}}" "${{matrix.version}}" "${{matrix.pkg.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA"
|
||||
- name: Notify Madoguchi (Failure)
|
||||
if: inputs.publish && (cancelled() || failure())
|
||||
run: ./.github/workflows/mg.sh false "${{matrix.pkg.pkg}}" "${{matrix.version}}" "${{matrix.pkg.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA"
|
||||
run: ./.github/workflows/mg.sh false "${{matrix.pkg.pkg}}" "${{matrix.version}}" "${{matrix.pkg.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA"
|
||||
@@ -21,7 +21,7 @@ jobs:
|
||||
options: --cap-add=SYS_ADMIN --privileged
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: ${{ matrix.branch }}
|
||||
fetch-depth: 0
|
||||
|
||||
@@ -19,7 +19,7 @@ jobs:
|
||||
container:
|
||||
image: ghcr.io/terrapkg/builder:frawhide
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v4
|
||||
- name: Push to subatomic
|
||||
run: |
|
||||
branch=${{ github.ref_name }}
|
||||
|
||||
@@ -14,7 +14,7 @@ jobs:
|
||||
options: --cap-add=SYS_ADMIN --privileged
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
|
||||
|
||||
@@ -14,7 +14,7 @@ jobs:
|
||||
options: --cap-add=SYS_ADMIN --privileged
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
|
||||
|
||||
@@ -14,7 +14,7 @@ jobs:
|
||||
options: --cap-add=SYS_ADMIN --privileged
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
|
||||
|
||||
@@ -2,7 +2,3 @@ anda-build/
|
||||
**/*.tar*
|
||||
**/*.crate
|
||||
**/*.zip
|
||||
**/*.minisig
|
||||
**/*.nupkg
|
||||
**/*.rpm
|
||||
**/*.kate-swp
|
||||
|
||||
@@ -25,14 +25,8 @@ If you are using immutable/atomic editions of Fedora, run the following commands
|
||||
curl -fsSL https://github.com/terrapkg/subatomic-repos/raw/main/terra.repo | pkexec tee /etc/yum.repos.d/terra.repo
|
||||
sudo rpm-ostree install terra-release
|
||||
```
|
||||
#### Subrepos
|
||||
|
||||
On Fedora, you can optionally install the Terra subrepos. Extra care and caution may be needed as some of these packages may conflict with other repositories such as RPM Fusion.
|
||||
|
||||
- Install `terra-release-extras` to enable the Extras subrepo. This repo contains packages which conflict with Fedora packages in some way, such as being a patched version of the same package.
|
||||
- Install `terra-release-mesa` to install the Mesa subrepo which contains a patched and codec complete Mesa.
|
||||
- Install `terra-release-nvidia` to install the NVIDIA subrepo which contains NVIDIA drivers.
|
||||
- Install `terra-release-multimedia` for multimedia packages in Terra. This repository is currently considered a work in progress.
|
||||
Optionally, you can install `terra-release-extra` to use the Extras repository. This also installs the Nvidia, and Mesa streams but does not enable them.
|
||||
|
||||
### Enterprise Linux (EL)
|
||||
|
||||
@@ -56,7 +50,8 @@ First of all, thanks for being interested in contributing to Terra! If you have
|
||||
|
||||
- [Contribution Guide](https://developer.fyralabs.com/terra/contributing)
|
||||
- [FAQ](https://developer.fyralabs.com/terra/faq)
|
||||
- [Guidelines](https://developer.fyralabs.com/terra/guidelines)
|
||||
- [Policy](https://developer.fyralabs.com/terra/policy)
|
||||
|
||||
|
||||
## Documentation
|
||||
|
||||
@@ -72,4 +67,4 @@ Feel free to reach out by [joining our community](https://wiki.ultramarine-linux
|
||||
|
||||
- [Contribution Guide](https://developer.fyralabs.com/terra/contributing)
|
||||
- [FAQ](https://developer.fyralabs.com/terra/faq)
|
||||
- [Guidelines](https://developer.fyralabs.com/terra/guidelines)
|
||||
- [Policy](https://developer.fyralabs.com/terra/policy)
|
||||
|
||||
@@ -74,5 +74,5 @@ rm -rf %buildroot%_bindir/{distro,flask,jsonschema,markdown_py,normalizer,send2t
|
||||
* Fri Nov 10 2023 hazel-bunny <dabiswas112@gmail.com> - 23.10-2
|
||||
- Add python3-orjson and mpv as dependencies
|
||||
|
||||
* Wed Jan 11 2023 madonuko <mado@fyralabs.com> - 2.1.60
|
||||
* Wed Jan 11 2023 windowsboy111 <windowsboy111@fyralabs.com> - 2.1.60
|
||||
- Initial package
|
||||
|
||||
@@ -62,5 +62,5 @@ find %{buildroot} -iname direct_url.json | xargs -r rm -rf
|
||||
/usr/lib64/python*/site-packages/anki-%{version}.dist-info/
|
||||
|
||||
%changelog
|
||||
* Tue Jan 3 2023 madonuko <mado@fyralabs.com> - 2.1.60
|
||||
* Tue Jan 3 2023 windowsboy111 <windowsboy111@fyralabs.com> - 2.1.60
|
||||
- Initial package
|
||||
|
||||
@@ -68,5 +68,5 @@ chmod 755 %{buildroot}%{_bindir}/anki
|
||||
|
||||
|
||||
%changelog
|
||||
* Tue Jan 3 2023 madonuko <mado@fyralabs.com> - 2.1.60
|
||||
* Tue Jan 3 2023 windowsboy111 <windowsboy111@fyralabs.com> - 2.1.60
|
||||
- Initial package
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
project pkg {
|
||||
arches = ["x86_64"]
|
||||
rpm {
|
||||
spec = "bazzite-portal.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,39 +0,0 @@
|
||||
Name: bazzite-portal
|
||||
Version: 0.1.6
|
||||
Release: 2%?dist
|
||||
Summary: Bazzite Portal is a tabbed frontend for curated script execution, with a focus on distro specific QOL shortcuts
|
||||
URL: https://github.com/ublue-os/yafti-gtk
|
||||
Source0: https://github.com/ublue-os/yafti-gtk/archive/refs/tags/v%{version}.tar.gz
|
||||
License: GPL-3.0-only
|
||||
Requires: python3-gobject
|
||||
Requires: python3-PyYAML
|
||||
Requires: gtk3
|
||||
Provides: Bazzite-Portal
|
||||
BuildArch: noarch
|
||||
Packager: Zacharias Xenakis <xarishark@outlook.com>
|
||||
|
||||
%description
|
||||
%{summary}.
|
||||
|
||||
%prep
|
||||
%autosetup -n yafti-gtk-%{version}
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
install -Dm 755 yafti_gtk.py %{buildroot}%{_bindir}/yafti_gtk.py
|
||||
install -Dm 644 io.github.ublue_os.yafti_gtk.desktop %{buildroot}%{_appsdir}/io.github.ublue_os.yafti_gtk.desktop
|
||||
install -Dm 644 portal.svg %{buildroot}%{_scalableiconsdir}/io.github.ublue_os.yafti_gtk.svg
|
||||
install -Dm 644 io.github.ublue_os.yafti_gtk.metainfo.xml %{buildroot}%{_metainfodir}/io.github.ublue_os.yafti_gtk.metainfo.xml
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license LICENSE
|
||||
%{_bindir}/yafti_gtk.py
|
||||
%{_appsdir}/io.github.ublue_os.yafti_gtk.desktop
|
||||
%{_scalableiconsdir}/io.github.ublue_os.yafti_gtk.svg
|
||||
%{_metainfodir}/io.github.ublue_os.yafti_gtk.metainfo.xml
|
||||
|
||||
%changelog
|
||||
* Wed Jan 28 2026 Xarishark <xarishark@outlook.com>
|
||||
- Initial commit
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh("ublue-os/yafti-gtk"));
|
||||
@@ -1,5 +1,5 @@
|
||||
Name: bitwarden-cli.bin
|
||||
Version: 2026.1.0
|
||||
Version: 2025.12.0
|
||||
Release: 1%?dist
|
||||
Summary: Bitwarden command-line client
|
||||
License: GPL-3.0-only
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%endif
|
||||
|
||||
Name: bitwarden-cli
|
||||
Version: 2026.1.0
|
||||
Version: 2025.12.0
|
||||
Release: 1%?dist
|
||||
Summary: Bitwarden command-line client
|
||||
License: GPL-3.0-only
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%undefine __brp_mangle_shebangs
|
||||
|
||||
Name: chdig
|
||||
Version: 26.2.1
|
||||
Version: 25.12.1
|
||||
Release: 1%?dist
|
||||
Summary: Dig into ClickHouse with TUI interface
|
||||
URL: https://github.com/azat/chdig
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "chrultrabook-tools.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,74 +0,0 @@
|
||||
%undefine __brp_mangle_shebangs
|
||||
|
||||
Name: chrultrabook-tools
|
||||
Version: 3.1.3
|
||||
Release: 2%?dist
|
||||
Summary: User-friendly configuration utility for Chromebooks running an alternate OS
|
||||
URL: https://github.com/death7654/Chrultrabook-Tools
|
||||
Source0: %url/archive/refs/tags/%version.tar.gz
|
||||
License: GPL-3.0-only AND MPL-2.0 AND MIT-0 AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND (CC0-1.0 OR Apache-2.0) AND BSL-1.0 AND BlueOak-1.0.0 AND CC0-1.0 AND (BSD-3-Clause OR Apache-2.0) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-2-Clause AND ISC AND MIT AND (Apache-2.0 OR MIT) AND BSD-3-Clause AND NCSA AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Unlicense OR MIT) AND Zlib AND (Zlib OR Apache-2.0 OR MIT) AND (Apache-2.0/MIT) AND CDLA-Permissive-2.0 AND (MIT OR Zlib OR Apache-2.0) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0 OR BSD-1-Clause) AND Unlicense
|
||||
|
||||
BuildRequires: cargo
|
||||
BuildRequires: glib2
|
||||
BuildRequires: glib2-devel
|
||||
BuildRequires: gtk3
|
||||
BuildRequires: gtk3-devel
|
||||
BuildRequires: javascriptcoregtk4.1
|
||||
BuildRequires: javascriptcoregtk4.1-devel
|
||||
BuildRequires: libsoup3
|
||||
BuildRequires: libsoup3-devel
|
||||
BuildRequires: libappindicator-gtk3
|
||||
BuildRequires: libappindicator-devel
|
||||
BuildRequires: gstreamer1
|
||||
BuildRequires: gstreamer1-devel
|
||||
BuildRequires: patchelf
|
||||
BuildRequires: libstdc++-static
|
||||
BuildRequires: libxdo-devel
|
||||
BuildRequires: anda-srpm-macros
|
||||
BuildRequires: rustc
|
||||
BuildRequires: %{tauri_buildrequires -a}
|
||||
# This may seem weird, but https://github.com/nodejs/node/issues/51752#issuecomment-2970163641
|
||||
BuildRequires: nodejs-full-i18n
|
||||
|
||||
Requires: chromium-ectool
|
||||
Requires: coreboot-utils-cbmem
|
||||
Requires: libayatana-appindicator-gtk3
|
||||
Requires: libayatana-ido-gtk3
|
||||
Requires: libayatana-indicator-gtk3
|
||||
|
||||
Packager: Owen Zimmerman owen@fyralabs.com
|
||||
|
||||
%description
|
||||
%summary.
|
||||
|
||||
%prep
|
||||
%autosetup -n Chrultrabook-Tools-%version
|
||||
%tauri_prep
|
||||
|
||||
%build
|
||||
%npm_build -r build -B
|
||||
|
||||
%install
|
||||
%tauri_install
|
||||
install -Dm755 src-tauri/linux/chrultrabook-tools-root %{buildroot}%{_bindir}/chrultrabook-tools-root
|
||||
install -Dm644 src-tauri/linux/chrultrabook-tools.desktop %{buildroot}%{_appsdir}/chrultrabook-tools.desktop
|
||||
install -Dm644 src-tauri/icons/128x128.png %{buildroot}%{_hicolordir}/128x128/apps/chrultrabook-tools.png
|
||||
# Not matching, but upstream does it this way. Working with upstream to correct this issue.
|
||||
install -Dm644 src-tauri/icons/128x128@2x.png %{buildroot}%{_hicolordir}/256x256@2/apps/chrultrabook-tools.png
|
||||
install -Dm644 src-tauri/icons/32x32.png %{buildroot}%{_hicolordir}/32x32/apps/chrultrabook-tools.png
|
||||
install -Dm644 src-tauri/linux/com.chrultrabook.tools.policy %{buildroot}%{_datadir}/polkit-1/actions/com.chrultrabook.tools.policy
|
||||
%{tauri_cargo_license} > LICENSE.dependencies
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license LICENSE
|
||||
%license LICENSE.dependencies
|
||||
%{_bindir}/chrultrabook-tools
|
||||
%{_bindir}/chrultrabook-tools-root
|
||||
%{_appsdir}/chrultrabook-tools.desktop
|
||||
%{_hicolordir}/*x*/apps/chrultrabook-tools.png
|
||||
%{_datadir}/polkit-1/actions/com.chrultrabook.tools.policy
|
||||
|
||||
%changelog
|
||||
* Mon Jan 19 2026 Owen Zimmerman <owen@fyralabs.com>
|
||||
- Initial commit
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh("death7654/Chrultrabook-Tools"));
|
||||
@@ -8,7 +8,7 @@ for background device management, as well as a GUI to expertly customize your se
|
||||
%global __brp_mangle_shebangs %{nil}
|
||||
|
||||
Name: coolercontrol
|
||||
Version: 3.1.1
|
||||
Version: 3.0.2
|
||||
Release: 1%?dist
|
||||
Summary: Cooling device control for Linux
|
||||
License: GPL-3.0-or-later
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord-canary-openasar
|
||||
Version: 0.0.872
|
||||
Version: 0.0.839
|
||||
Release: 1%?dist
|
||||
Summary: A snappier Discord rewrite with features like further customization and theming
|
||||
License: MIT AND https://discord.com/terms
|
||||
@@ -54,7 +54,7 @@ ln -s %_datadir/discord-canary-openasar/DiscordCanary %buildroot%_bindir/discord
|
||||
|
||||
|
||||
%changelog
|
||||
* Wed Jan 18 2023 madonuko <mado@fyralabs.com> - 0.0.146-1
|
||||
* Wed Jan 18 2023 windowsboy111 <windowsboy111@fyralabs.com> - 0.0.146-1
|
||||
- Renamed from openasar-canary to discord-canary-openasar
|
||||
- Fix issues after removing discord-canary package
|
||||
- Bundle discord-canary
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord-canary
|
||||
Version: 0.0.872
|
||||
Version: 0.0.839
|
||||
Release: 1%?dist
|
||||
Summary: Free Voice and Text Chat for Gamers
|
||||
URL: discord.com
|
||||
@@ -45,7 +45,7 @@ ln -s %_datadir/discord-canary/DiscordCanary %buildroot%_bindir/discord-canary
|
||||
* Thu Dec 01 2022 root - 0.0.144-1
|
||||
- new version
|
||||
|
||||
* Thu Nov 17 2022 madonuko <mado@fyralabs.com> - 0.0.143-1
|
||||
* Thu Nov 17 2022 windowsboy111 <wboy111@outlook.com> - 0.0.143-1
|
||||
- new version
|
||||
|
||||
* Fri Oct 28 2022 root - 0.0.142-1
|
||||
@@ -60,10 +60,10 @@ ln -s %_datadir/discord-canary/DiscordCanary %buildroot%_bindir/discord-canary
|
||||
* Thu Oct 27 2022 root - 0.0.141-1
|
||||
- new version
|
||||
|
||||
* Wed Oct 19 2022 madonuko <mado@fyralabs.com> - 0.0.140-1
|
||||
* Wed Oct 19 2022 windowsboy111 <wboy111@outlook.com> - 0.0.140-1
|
||||
- new version
|
||||
|
||||
* Sun Oct 16 2022 madonuko <mado@fyralabs.com> - 0.0.139
|
||||
* Sun Oct 16 2022 windowsboy111 <wboy111@outlook.com> - 0.0.139
|
||||
- Repackaged for Terra
|
||||
|
||||
* Tue Feb 22 2022 Ultramarine Release Tracking Service - 0.0.133-2
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord-openasar
|
||||
Version: 0.0.125
|
||||
Version: 0.0.119
|
||||
Release: 1%?dist
|
||||
Summary: A snappier Discord rewrite with features like further customization and theming
|
||||
License: MIT AND https://discord.com/terms
|
||||
@@ -54,5 +54,5 @@ ln -s %_datadir/discord-openasar/Discord %buildroot%_bindir/discord-openasar
|
||||
|
||||
|
||||
%changelog
|
||||
* Sat Jan 21 2023 madonuko <mado@fyralabs.com> - 0.0.38-1
|
||||
* Sat Jan 21 2023 windowsboy111 <windowsboy111@fyralabs.com> - 0.0.38-1
|
||||
- Initial package
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord-ptb-openasar
|
||||
Version: 0.0.177
|
||||
Version: 0.0.171
|
||||
Release: 1%?dist
|
||||
Summary: A snappier Discord rewrite with features like further customization and theming
|
||||
License: MIT AND https://discord.com/terms
|
||||
@@ -56,5 +56,5 @@ ln -s %_datadir/discord-ptb-openasar/Discord %buildroot%_bindir/discord-ptb-open
|
||||
|
||||
|
||||
%changelog
|
||||
* Sat Jan 21 2023 madonuko <mado@fyralabs.com> - 0.0.38-1
|
||||
* Sat Jan 21 2023 windowsboy111 <windowsboy111@fyralabs.com> - 0.0.38-1
|
||||
- Initial package
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord-ptb
|
||||
Version: 0.0.177
|
||||
Version: 0.0.171
|
||||
Release: 1%?dist
|
||||
Summary: Free Voice and Text Chat for Gamers.
|
||||
URL: https://discord.com
|
||||
@@ -46,11 +46,11 @@ ln -s %_datadir/discord-ptb/Discord %buildroot%_bindir/discord-ptb
|
||||
%{_datadir}/pixmaps/discord-ptb.png
|
||||
|
||||
%changelog
|
||||
* Thu Nov 17 2022 madonuko <mado@fyralabs.com> - 0.0.35-1
|
||||
* Thu Nov 17 2022 windowsboy111 <wboy111@outlook.com> - 0.0.35-1
|
||||
- new version
|
||||
|
||||
* Thu Oct 20 2022 madonuko <mado@fyralabs.com> - 0.0.34-1
|
||||
* Thu Oct 20 2022 windowsboy111 <wboy111@outlook.com> - 0.0.34-1
|
||||
- new version
|
||||
|
||||
* Sun Oct 16 2022 madonuko <mado@fyralabs.com> - 0.0.33
|
||||
* Sun Oct 16 2022 windowsboy111 <wboy111@outlook.com> - 0.0.33
|
||||
- Initial Package.
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord
|
||||
Version: 0.0.125
|
||||
Version: 0.0.119
|
||||
Release: 1%?dist
|
||||
Summary: Free Voice and Text Chat for Gamers
|
||||
URL: https://discord.com
|
||||
@@ -46,5 +46,5 @@ ln -s %_datadir/discord/Discord %buildroot%_bindir/discord
|
||||
%{_datadir}/pixmaps/discord.png
|
||||
|
||||
%changelog
|
||||
* Thu Jan 19 2023 madonuko <mado@fyralabs.com> - 0.0.143-1
|
||||
* Thu Jan 19 2023 windowsboy111 <wboy111@outlook.com> - 0.0.143-1
|
||||
- Initial package
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
%undefine __brp_mangle_shebangs
|
||||
|
||||
Name: dorion
|
||||
Version: 6.12.0
|
||||
Version: 6.11.0
|
||||
Release: 1%?dist
|
||||
Summary: Tiny alternative Discord client with a smaller footprint, snappier startup, themes, plugins and more!
|
||||
SourceLicense: GPL-3.0-only
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "falcond-gui.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,52 +0,0 @@
|
||||
Name: falcond-gui
|
||||
Version: 1.0.2
|
||||
Release: 1%?dist
|
||||
Summary: A GTK4/LibAdwaita application to control and monitor the Falcond gaming optimization daemon
|
||||
SourceLicense: MIT
|
||||
License: (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND CC0-1.0 AND ISC AND (MIT OR Apache-2.0) AND MIT AND (Unlicense OR MIT)
|
||||
URL: https://git.pika-os.com/general-packages/falcond-gui
|
||||
Source0: %{url}/archive/v%{version}.tar.gz
|
||||
BuildRequires: anda-srpm-macros
|
||||
BuildRequires: cargo-rpm-macros
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: gtk4-devel
|
||||
BuildRequires: libadwaita-devel
|
||||
BuildRequires: mold
|
||||
Requires: gtk4
|
||||
Requires: falcond
|
||||
Requires: falcond-profiles
|
||||
Requires: libadwaita
|
||||
Requires(post): gtk-update-icon-cache
|
||||
Packager: Gilver E. <roachy@fyralabs.com>
|
||||
|
||||
%description
|
||||
falcond-gui provides a user-friendly graphical interface for managing falcond. It allows users to view the status of the daemon and customize its behavior.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}/%{name}
|
||||
%cargo_prep_online
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
%cargo_install
|
||||
desktop-file-install res/%{name}.desktop
|
||||
install -Dm644 res/falcond.png -t %{buildroot}%{_hicolordir}/512x512/apps/
|
||||
%{cargo_license_online} > LICENSE.dependencies
|
||||
|
||||
%check
|
||||
desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
|
||||
|
||||
%posttrans
|
||||
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor/ &>/dev/null || :
|
||||
|
||||
%files
|
||||
%doc ../README.md
|
||||
%license ../LICENSE.md
|
||||
%{_bindir}/%{name}
|
||||
%{_hicolordir}/512x512/apps/falcond.png
|
||||
%{_appsdir}/%{name}.desktop
|
||||
|
||||
%changelog
|
||||
* Thu Jan 1 2026 Gilver E. <roachy@fyralabs.com> - 1.0.0-1
|
||||
- Initial package
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(get("https://git.pika-os.com/api/v1/repos/general-packages/falcond-gui/releases").json_arr()[0].tag_name);
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: feishin
|
||||
Version: 1.6.0
|
||||
Version: 0.22.0
|
||||
Release: 1%?dist
|
||||
Summary: A modern self-hosted music player
|
||||
License: GPL-3.0
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
#? https://github.com/flameshot-org/flameshot/blob/master/packaging/rpm/fedora/flameshot.spec
|
||||
|
||||
%global ver 13.3.0
|
||||
%global commit 53d4da8fcd0e00b755b3329674b756d9777d3a89
|
||||
%global commit bee989ec55e7034a782fd18bd4e694b74a62ac32
|
||||
%global shortcommit %{sub %{commit} 1 7}
|
||||
%global commit_date 20260219
|
||||
%global commit_date 20251224
|
||||
%global devel_name QtColorWidgets
|
||||
%global _distro_extra_cflags -fuse-ld=mold
|
||||
%global _distro_extra_cxxflags -fuse-ld=mold
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
Name: flatpost
|
||||
Version: 1.2.0
|
||||
Version: 1.1.1
|
||||
Release: 1%?dist
|
||||
License: BSD-2-Clause
|
||||
Summary: Desktop environment agnostic Flathub software center.
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
%global commit 2f77c277df1650512abff175566b0386d9e2f0c5
|
||||
%global commit 8076be6b34f72b721f9bc00d9e3f8cbe26dfeb9b
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
%global commit_date 20260213
|
||||
%global ver 2.0.1^
|
||||
%global commit_date 20251226
|
||||
%global ver 1.11.4^
|
||||
%global base_name goofcord
|
||||
%global git_name GoofCord
|
||||
%global appid io.github.milkshiift.GoofCord
|
||||
|
||||
%electronmeta
|
||||
|
||||
Name: %{base_name}-nightly
|
||||
Version: %{ver}%{commit_date}.git.%{shortcommit}
|
||||
@@ -16,28 +17,25 @@ URL: https://github.com/Milkshiift/%{git_name}
|
||||
Source0: %{url}/archive/%{commit}/%{git_name}-%{commit}.tar.gz
|
||||
BuildRequires: anda-srpm-macros >= 0.2.26
|
||||
BuildRequires: bun-bin
|
||||
Packager: Gilver E. <roachy@fyralabs.com>
|
||||
|
||||
%electronmeta -D
|
||||
Packager: Gilver E. <rockgrub@disroot.org>
|
||||
|
||||
%description
|
||||
A highly configurable and privacy minded Discord client.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{git_name}-%{commit}
|
||||
%ifarch %{arm64} armv7l armv7hl armv7hnl
|
||||
sed -i '/\"x64\",/d' electron-builder.ts
|
||||
%endif
|
||||
|
||||
%build
|
||||
%bun_build
|
||||
%ifarch %{arm64} armv7hl armv7l
|
||||
sed -i '/\"x64\",/d' electron-builder.ts
|
||||
%endif
|
||||
%bun_build -r build -R
|
||||
|
||||
%install
|
||||
%electron_install -d %{base_name} -s %{base_name} -b %{base_name} -i %{base_name} -D -O -U %U -E UseOzonePlatform,WaylandWindowDecorations -I
|
||||
install -Dm644 assetsDev/%{appid}.metainfo.xml -t %{buildroot}%{_metainfodir}
|
||||
%electron_install -d %{base_name} -s %{base_name} -i %{base_name} -D -O -U %U -E UseOzonePlatform,WaylandWindowDecorations
|
||||
|
||||
%check
|
||||
%desktop_file_validate %{buildroot}%{_datadir}/applications/%{base_name}.desktop
|
||||
desktop-file-validate %{buildroot}%{_datadir}/applications/%{base_name}.desktop
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
@@ -45,15 +43,14 @@ install -Dm644 assetsDev/%{appid}.metainfo.xml -t %{buildroot}%{_metainfodir}
|
||||
%{_bindir}/%{base_name}
|
||||
%{_datadir}/applications/%{base_name}.desktop
|
||||
%{_libdir}/%{base_name}/
|
||||
%{_metainfodir}/%{appid}.metainfo.xml
|
||||
%{_hicolordir}/16x16/apps/%{base_name}.png
|
||||
%{_hicolordir}/32x32/apps/%{base_name}.png
|
||||
%{_hicolordir}/48x48/apps/%{base_name}.png
|
||||
%{_hicolordir}/64x64/apps/%{base_name}.png
|
||||
%{_hicolordir}/128x128/apps/%{base_name}.png
|
||||
%{_hicolordir}/256x256/apps/%{base_name}.png
|
||||
%{_hicolordir}/512x512/apps/%{base_name}.png
|
||||
%{_hicolordir}/1024x1024/apps/%{base_name}.png
|
||||
%{_iconsdir}/hicolor/16x16/apps/%{base_name}.png
|
||||
%{_iconsdir}/hicolor/32x32/apps/%{base_name}.png
|
||||
%{_iconsdir}/hicolor/48x48/apps/%{base_name}.png
|
||||
%{_iconsdir}/hicolor/64x64/apps/%{base_name}.png
|
||||
%{_iconsdir}/hicolor/128x128/apps/%{base_name}.png
|
||||
%{_iconsdir}/hicolor/256x256/apps/%{base_name}.png
|
||||
%{_iconsdir}/hicolor/512x512/apps/%{base_name}.png
|
||||
%{_iconsdir}/hicolor/1024x1024/apps/%{base_name}.png
|
||||
|
||||
%changelog
|
||||
* Sat Jun 28 2025 Gilver E. <rockgrub@disroot.org> - 1.10.1^20250615.git.3f5eda1
|
||||
|
||||
@@ -1,39 +1,36 @@
|
||||
%global git_name GoofCord
|
||||
%global appid io.github.milkshiift.GoofCord
|
||||
|
||||
%electronmeta
|
||||
|
||||
Name: goofcord
|
||||
Version: 2.0.1
|
||||
Release: 2%{?dist}
|
||||
Version: 1.11.4
|
||||
Release: 1%?dist
|
||||
License: OSL-3.0
|
||||
Summary: A privacy-minded Legcord fork.
|
||||
Group: Applications/Internet
|
||||
URL: https://github.com/Milkshiift/%{git_name}
|
||||
Source0: %{url}/archive/refs/tags/v%{version}.tar.gz
|
||||
BuildRequires: anda-srpm-macros >= 0.3.0
|
||||
BuildRequires: anda-srpm-macros >= 0.2.26
|
||||
BuildRequires: bun-bin
|
||||
Packager: Gilver E. <roachy@fyralabs.com>
|
||||
|
||||
%electronmeta -D
|
||||
Packager: Gilver E. <rockgrub@disroot.org>
|
||||
|
||||
%description
|
||||
A highly configurable and privacy minded Discord client.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{git_name}-%{version}
|
||||
|
||||
%build
|
||||
%ifarch %{arm64} armv7hl armv7l
|
||||
sed -i '/\"x64\",/d' electron-builder.ts
|
||||
%endif
|
||||
|
||||
%build
|
||||
%bun_build
|
||||
%bun_build -r build -R
|
||||
|
||||
%install
|
||||
%electron_install -D -O -U %U -E UseOzonePlatform,WaylandWindowDecorations -I
|
||||
|
||||
install -Dm644 assetsDev/%{appid}.metainfo.xml -t %{buildroot}%{_metainfodir}
|
||||
%electron_install -D -O -U %U -E UseOzonePlatform,WaylandWindowDecorations
|
||||
|
||||
%check
|
||||
%desktop_file_validate %{buildroot}%{_datadir}/applications/%{name}.desktop
|
||||
desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
@@ -41,15 +38,14 @@ install -Dm644 assetsDev/%{appid}.metainfo.xml -t %{buildroot}%{_metainfodir}
|
||||
%{_bindir}/%{name}
|
||||
%{_datadir}/applications/%{name}.desktop
|
||||
%{_libdir}/%{name}/
|
||||
%{_metainfodir}/%{appid}.metainfo.xml
|
||||
%{_hicolordir}/16x16/apps/%{name}.png
|
||||
%{_hicolordir}/32x32/apps/%{name}.png
|
||||
%{_hicolordir}/48x48/apps/%{name}.png
|
||||
%{_hicolordir}/64x64/apps/%{name}.png
|
||||
%{_hicolordir}/128x128/apps/%{name}.png
|
||||
%{_hicolordir}/256x256/apps/%{name}.png
|
||||
%{_hicolordir}/512x512/apps/%{name}.png
|
||||
%{_hicolordir}/1024x1024/apps/%{name}.png
|
||||
%{_iconsdir}/hicolor/16x16/apps/%{name}.png
|
||||
%{_iconsdir}/hicolor/32x32/apps/%{name}.png
|
||||
%{_iconsdir}/hicolor/48x48/apps/%{name}.png
|
||||
%{_iconsdir}/hicolor/64x64/apps/%{name}.png
|
||||
%{_iconsdir}/hicolor/128x128/apps/%{name}.png
|
||||
%{_iconsdir}/hicolor/256x256/apps/%{name}.png
|
||||
%{_iconsdir}/hicolor/512x512/apps/%{name}.png
|
||||
%{_iconsdir}/hicolor/1024x1024/apps/%{name}.png
|
||||
|
||||
%changelog
|
||||
* Sat Jun 28 2025 Gilver E. <rockgrub@disroot.org> - 1.10.1-1
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "gurk.spec"
|
||||
}
|
||||
labels {
|
||||
sccache = 0
|
||||
}
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
%undefine __brp_mangle_shebangs
|
||||
|
||||
Name: gurk
|
||||
Version: 0.8.1
|
||||
Release: 1%?dist
|
||||
Summary: Signal Messenger client for terminal
|
||||
License: AGPL-3.0-or-later AND (MIT OR Apache-2.0) AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND ISC AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-Clause AND (BSD-3-Clause OR Apache-2.0) AND (BSD-3-Clause OR MIT OR Apache-2.0) AND BSL-1.0 AND CDLA-Permissive-2.0 AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR BSD-1-Clause) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND (Unlicense OR MIT) AND Zlib AND (Zlib OR Apache-2.0 OR MIT)
|
||||
URL: https://github.com/boxdot/gurk-rs
|
||||
Source: %url/archive/refs/tags/v%version.tar.gz
|
||||
|
||||
BuildRequires: cargo-rpm-macros >= 24
|
||||
BuildRequires: glibc-devel mold perl openssl-devel protobuf-devel
|
||||
Requires: glibc libgcc sqlcipher
|
||||
|
||||
Packager: Owen Zimmerman <owen@fyralabs.com>
|
||||
|
||||
%description
|
||||
%{summary}.
|
||||
|
||||
%prep
|
||||
%autosetup -n gurk-rs-%{version}
|
||||
%cargo_prep_online
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
export LC_ALL=C.UTF-8
|
||||
export LANG=C
|
||||
unset RUSTC_WRAPPER
|
||||
%cargo_install
|
||||
%{cargo_license_online} > LICENSE.dependencies
|
||||
|
||||
%files
|
||||
%doc README.md CHANGELOG.md
|
||||
%license LICENSE-AGPL-3.0
|
||||
%{_bindir}/gurk
|
||||
|
||||
%changelog
|
||||
* Fri Feb 13 2026 Owen Zimmerman <owen@fyralabs.com>
|
||||
- Initial commit
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh("boxdot/gurk-rs"));
|
||||
@@ -4,7 +4,7 @@
|
||||
%global crate halloy
|
||||
|
||||
Name: halloy
|
||||
Version: 2026.2
|
||||
Version: 2025.12
|
||||
Release: 1%?dist
|
||||
Summary: An open-source IRC client written in Rust, with the Iced GUI library
|
||||
Packager: Yoong jin <solomoncyj@gmail.com>
|
||||
@@ -33,13 +33,14 @@ BuildRequires: pkgconfig(xcb)
|
||||
%cargo_build
|
||||
|
||||
%install
|
||||
install -Dm755 target/rpm/halloy %{buildroot}%{_bindir}/halloy
|
||||
%crate_install_bin
|
||||
desktop-file-install assets/linux/%{appid}.desktop
|
||||
install -Dpm644 assets/linux/%{appid}.appdata.xml -t %{buildroot}%{_datadir}/metainfo
|
||||
|
||||
mkdir -p %{buildroot}%{_datadir}
|
||||
cp -r assets/linux/icons -t %{buildroot}%{_datadir}
|
||||
|
||||
%cargo_license_summary_online
|
||||
%{cargo_license_online} > LICENSE.dependencies
|
||||
|
||||
%if %{with check}
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
%endif
|
||||
|
||||
Name: helium-browser-bin
|
||||
Version: 0.9.2.1
|
||||
Version: 0.7.7.1
|
||||
Release: 1%?dist
|
||||
Summary: Private, fast, and honest web browser based on Chromium
|
||||
|
||||
@@ -21,12 +21,10 @@ License: GPL-3.0-only AND BSD-3-Clause
|
||||
Source0: https://github.com/imputnet/helium-linux/releases/download/%{version}/helium-%{version}-%{arch}_linux.tar.xz
|
||||
Source1: https://github.com/imputnet/helium-linux/archive/refs/tags/%{version}.tar.gz
|
||||
Source2: net.imput.helium.metainfo.xml
|
||||
Source3: net.imput.helium.desktop
|
||||
|
||||
ExclusiveArch: x86_64 aarch64
|
||||
|
||||
BuildRequires: terra-appstream-helper
|
||||
BuildRequires: desktop-file-utils
|
||||
|
||||
Requires: xdg-utils
|
||||
Requires: liberation-fonts
|
||||
@@ -41,66 +39,71 @@ Based on ungoogled-chromium with additional privacy and usability improvements.
|
||||
%autosetup -n helium-%{version}-%{arch}_linux
|
||||
tar --strip-components=1 -zxvf %{SOURCE1}
|
||||
|
||||
sed -i \
|
||||
-e 's/Exec=chromium/Exec=%{name}/' \
|
||||
-e 's/Name=Helium$/Name=Helium Browser/' \
|
||||
-e 's/Icon=helium/Icon=%{appid}/' \
|
||||
helium.desktop
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
install -dm755 %{buildroot}%{_libdir}/%{name}
|
||||
cp -a * %{buildroot}%{_libdir}/%{name}/
|
||||
|
||||
install -Dm644 %{SOURCE3} %{buildroot}%{_appsdir}/%{appid}.desktop
|
||||
sed -i 's/exists_desktop_file || generate_desktop_file/true/' \
|
||||
%{buildroot}%{_libdir}/%{name}/chrome-wrapper
|
||||
|
||||
install -Dm644 product_logo_256.png %{buildroot}%{_hicolordir}/256x256/apps/%{appid}.png
|
||||
install -Dm644 helium.desktop %{buildroot}%{_datadir}/applications/%{name}.desktop
|
||||
install -Dm644 product_logo_256.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/%{appid}.png
|
||||
|
||||
rm -f %{buildroot}%{_libdir}/%{name}/helium.desktop
|
||||
rm -f %{buildroot}%{_libdir}/%{name}/product_logo_256.png
|
||||
|
||||
install -dm755 %{buildroot}%{_bindir}
|
||||
cat > %{buildroot}%{_bindir}/%{name} << 'EOF'
|
||||
|
||||
cat > %{buildroot}%{_bindir}/%{name} << EOF
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-"$HOME/.config"}"
|
||||
XDG_CONFIG_HOME="\${XDG_CONFIG_HOME:-\"\$HOME/.config\"}"
|
||||
|
||||
SYS_CONF="%{_sysconfdir}/helium-browser-flags.conf"
|
||||
USR_CONF="${XDG_CONFIG_HOME}/helium-browser-flags.conf"
|
||||
USR_CONF="\${XDG_CONFIG_HOME}/helium-browser-flags.conf"
|
||||
|
||||
FLAGS=()
|
||||
|
||||
append_flags_file() {
|
||||
local file="$1"
|
||||
[[ -r "$file" ]] || return 0
|
||||
local file="\$1"
|
||||
[[ -r "\$file" ]] || return 0
|
||||
local line safe_line
|
||||
while IFS= read -r line; do
|
||||
[[ "$line" =~ ^[[:space:]]*(#|$) ]] && continue
|
||||
case "$line" in
|
||||
*'$('*|*'`'*)
|
||||
echo "Warning: ignoring unsafe line in $file: $line" >&2
|
||||
[[ "\$line" =~ ^[[:space:]]*(#|\$) ]] && continue
|
||||
case "\$line" in
|
||||
*'\$('*|*'\`'*)
|
||||
echo "Warning: ignoring unsafe line in \$file: \$line" >&2
|
||||
continue
|
||||
;;
|
||||
esac
|
||||
set -f
|
||||
safe_line=${line//$/\\$}
|
||||
safe_line=${safe_line//~/\\~}
|
||||
eval "set -- $safe_line"
|
||||
safe_line=\${line//\$/\\\\\$}
|
||||
safe_line=\${safe_line//~/\\\\~}
|
||||
eval "set -- \$safe_line"
|
||||
set +f
|
||||
for token in "$@"; do
|
||||
FLAGS+=("$token")
|
||||
for token in "\$@"; do
|
||||
FLAGS+=("\$token")
|
||||
done
|
||||
done < "$file"
|
||||
done < "\$file"
|
||||
}
|
||||
|
||||
append_flags_file "$SYS_CONF"
|
||||
append_flags_file "$USR_CONF"
|
||||
append_flags_file "\$SYS_CONF"
|
||||
append_flags_file "\$USR_CONF"
|
||||
|
||||
if [[ -n "${HELIUM_USER_FLAGS:-}" ]]; then
|
||||
read -r -a ENV_FLAGS <<< "$HELIUM_USER_FLAGS"
|
||||
FLAGS+=("${ENV_FLAGS[@]}")
|
||||
if [[ -n "\${HELIUM_USER_FLAGS:-}" ]]; then
|
||||
read -r -a ENV_FLAGS <<< "\$HELIUM_USER_FLAGS"
|
||||
FLAGS+=("\${ENV_FLAGS[@]}")
|
||||
fi
|
||||
|
||||
export CHROME_WRAPPER="$(readlink -f "$0")"
|
||||
export CHROME_VERSION_EXTRA="stable"
|
||||
|
||||
exec -a "$0" %{_libdir}/%{name}/chrome "${FLAGS[@]}" "$@"
|
||||
exec %{_libdir}/%{name}/chrome-wrapper "\${FLAGS[@]}" "\$@"
|
||||
EOF
|
||||
chmod 755 %{buildroot}%{_bindir}/%{name}
|
||||
|
||||
@@ -110,15 +113,11 @@ chmod 755 %{buildroot}%{_bindir}/%{name}
|
||||
%doc README.md
|
||||
%license LICENSE LICENSE.ungoogled_chromium
|
||||
%{_libdir}/%{name}/
|
||||
# shebang reasons
|
||||
%attr(0755,root,root) %{_bindir}/%{name}
|
||||
%{_appsdir}/%{appid}.desktop
|
||||
%{_hicolordir}/256x256/apps/%{appid}.png
|
||||
%{_bindir}/%{name}
|
||||
%{_datadir}/applications/%{name}.desktop
|
||||
%{_datadir}/icons/hicolor/256x256/apps/%{appid}.png
|
||||
%{_metainfodir}/%{appid}.metainfo.xml
|
||||
|
||||
%changelog
|
||||
* Sun Feb 15 2026 Jaiden Rirordan <jade@fyralabs.com>
|
||||
- Use downstream desktop file and recombobulate
|
||||
|
||||
* Wed Dec 03 2025 Nadia P <nyadiia@pm.me> - 0.6.9.1-1
|
||||
- Initial package
|
||||
|
||||
@@ -1,229 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Helium
|
||||
|
||||
# For future reference, these translations are available in the Chromium
|
||||
# tree at chrome/installer/linux/common/desktop.template.
|
||||
#
|
||||
# Only KDE 4 seems to use GenericName, so we reuse the KDE strings.
|
||||
# From Ubuntu's language-pack-kde-XX-base packages, version 9.04-20090413.
|
||||
GenericName=Web Browser
|
||||
GenericName[ar]=متصفح الشبكة
|
||||
GenericName[bg]=Уеб браузър
|
||||
GenericName[ca]=Navegador web
|
||||
GenericName[cs]=WWW prohlížeč
|
||||
GenericName[da]=Browser
|
||||
GenericName[de]=Web-Browser
|
||||
GenericName[el]=Περιηγητής ιστού
|
||||
GenericName[en_GB]=Web Browser
|
||||
GenericName[es]=Navegador web
|
||||
GenericName[et]=Veebibrauser
|
||||
GenericName[fi]=WWW-selain
|
||||
GenericName[fr]=Navigateur Web
|
||||
GenericName[gu]=વેબ બ્રાઉઝર
|
||||
GenericName[he]=דפדפן אינטרנט
|
||||
GenericName[hi]=वेब ब्राउज़र
|
||||
GenericName[hu]=Webböngésző
|
||||
GenericName[it]=Browser Web
|
||||
GenericName[ja]=ウェブブラウザ
|
||||
GenericName[kn]=ಜಾಲ ವೀಕ್ಷಕ
|
||||
GenericName[ko]=웹 브라우저
|
||||
GenericName[lt]=Žiniatinklio naršyklė
|
||||
GenericName[lv]=Tīmekļa pārlūks
|
||||
GenericName[ml]=വെബ് ബ്രൌസര്
|
||||
GenericName[mr]=वेब ब्राऊजर
|
||||
GenericName[nb]=Nettleser
|
||||
GenericName[nl]=Webbrowser
|
||||
GenericName[pl]=Przeglądarka WWW
|
||||
GenericName[pt]=Navegador Web
|
||||
GenericName[pt_BR]=Navegador da Internet
|
||||
GenericName[ro]=Navigator de Internet
|
||||
GenericName[ru]=Веб-браузер
|
||||
GenericName[sl]=Spletni brskalnik
|
||||
GenericName[sv]=Webbläsare
|
||||
GenericName[ta]=இணைய உலாவி
|
||||
GenericName[th]=เว็บเบราว์เซอร์
|
||||
GenericName[tr]=Web Tarayıcı
|
||||
GenericName[uk]=Веб-браузер
|
||||
GenericName[zh_CN]=网页浏览器
|
||||
GenericName[zh_HK]=網頁瀏覽器
|
||||
GenericName[zh_TW]=網頁瀏覽器
|
||||
# Not translated in KDE, from Epiphany 2.26.1-0ubuntu1.
|
||||
GenericName[bn]=ওয়েব ব্রাউজার
|
||||
GenericName[fil]=Web Browser
|
||||
GenericName[hr]=Web preglednik
|
||||
GenericName[id]=Browser Web
|
||||
GenericName[or]=ଓ୍ବେବ ବ୍ରାଉଜର
|
||||
GenericName[sk]=WWW prehliadač
|
||||
GenericName[sr]=Интернет прегледник
|
||||
GenericName[te]=వెబ్ బ్రౌజర్
|
||||
GenericName[vi]=Bộ duyệt Web
|
||||
|
||||
# Gnome and KDE 3 uses Comment.
|
||||
Comment=Access the Internet
|
||||
Comment[ar]=الدخول إلى الإنترنت
|
||||
Comment[bg]=Достъп до интернет
|
||||
Comment[bn]=ইন্টারনেটটি অ্যাক্সেস করুন
|
||||
Comment[ca]=Accedeix a Internet
|
||||
Comment[cs]=Přístup k internetu
|
||||
Comment[da]=Få adgang til internettet
|
||||
Comment[de]=Internetzugriff
|
||||
Comment[el]=Πρόσβαση στο Διαδίκτυο
|
||||
Comment[en_GB]=Access the Internet
|
||||
Comment[es]=Accede a Internet.
|
||||
Comment[et]=Pääs Internetti
|
||||
Comment[fi]=Käytä internetiä
|
||||
Comment[fil]=I-access ang Internet
|
||||
Comment[fr]=Accéder à Internet
|
||||
Comment[gu]=ઇંટરનેટ ઍક્સેસ કરો
|
||||
Comment[he]=גישה אל האינטרנט
|
||||
Comment[hi]=इंटरनेट तक पहुंच स्थापित करें
|
||||
Comment[hr]=Pristup Internetu
|
||||
Comment[hu]=Internetelérés
|
||||
Comment[id]=Akses Internet
|
||||
Comment[it]=Accesso a Internet
|
||||
Comment[ja]=インターネットにアクセス
|
||||
Comment[kn]=ಇಂಟರ್ನೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ
|
||||
Comment[ko]=인터넷 연결
|
||||
Comment[lt]=Interneto prieiga
|
||||
Comment[lv]=Piekļūt internetam
|
||||
Comment[ml]=ഇന്റര്നെറ്റ് ആക്സസ് ചെയ്യുക
|
||||
Comment[mr]=इंटरनेटमध्ये प्रवेश करा
|
||||
Comment[nb]=Gå til Internett
|
||||
Comment[nl]=Verbinding maken met internet
|
||||
Comment[or]=ଇଣ୍ଟର୍ନେଟ୍ ପ୍ରବେଶ କରନ୍ତୁ
|
||||
Comment[pl]=Skorzystaj z internetu
|
||||
Comment[pt]=Aceder à Internet
|
||||
Comment[pt_BR]=Acessar a internet
|
||||
Comment[ro]=Accesaţi Internetul
|
||||
Comment[ru]=Доступ в Интернет
|
||||
Comment[sk]=Prístup do siete Internet
|
||||
Comment[sl]=Dostop do interneta
|
||||
Comment[sr]=Приступите Интернету
|
||||
Comment[sv]=Gå ut på Internet
|
||||
Comment[ta]=இணையத்தை அணுகுதல்
|
||||
Comment[te]=ఇంటర్నెట్ను ఆక్సెస్ చెయ్యండి
|
||||
Comment[th]=เข้าถึงอินเทอร์เน็ต
|
||||
Comment[tr]=İnternet'e erişin
|
||||
Comment[uk]=Доступ до Інтернету
|
||||
Comment[vi]=Truy cập Internet
|
||||
Comment[zh_CN]=访问互联网
|
||||
Comment[zh_HK]=連線到網際網路
|
||||
Comment[zh_TW]=連線到網際網路
|
||||
|
||||
Exec=helium-browser-bin %U
|
||||
StartupNotify=true
|
||||
StartupWMClass=helium
|
||||
Terminal=false
|
||||
Icon=net.imput.helium
|
||||
Type=Application
|
||||
Categories=Network;WebBrowser;
|
||||
MimeType=application/pdf;application/rdf+xml;application/rss+xml;application/xhtml+xml;application/xhtml_xml;application/xml;image/gif;image/jpeg;image/png;image/webp;text/html;text/xml;x-scheme-handler/http;x-scheme-handler/https;
|
||||
Actions=new-window;new-private-window;
|
||||
X-Desktop-File-Install-Version=0.28
|
||||
|
||||
[Desktop Action new-window]
|
||||
Name=New Window
|
||||
Name[am]=አዲስ መስኮት
|
||||
Name[ar]=نافذة جديدة
|
||||
Name[bg]=Нов прозорец
|
||||
Name[bn]=নতুন উইন্ডো
|
||||
Name[ca]=Finestra nova
|
||||
Name[cs]=Nové okno
|
||||
Name[da]=Nyt vindue
|
||||
Name[de]=Neues Fenster
|
||||
Name[el]=Νέο Παράθυρο
|
||||
Name[en_GB]=New Window
|
||||
Name[es]=Nueva ventana
|
||||
Name[et]=Uus aken
|
||||
Name[fa]=پنجره جدید
|
||||
Name[fi]=Uusi ikkuna
|
||||
Name[fil]=New Window
|
||||
Name[fr]=Nouvelle fenêtre
|
||||
Name[gu]=નવી વિંડો
|
||||
Name[hi]=नई विंडो
|
||||
Name[hr]=Novi prozor
|
||||
Name[hu]=Új ablak
|
||||
Name[id]=Jendela Baru
|
||||
Name[it]=Nuova finestra
|
||||
Name[iw]=חלון חדש
|
||||
Name[ja]=新規ウインドウ
|
||||
Name[kn]=ಹೊಸ ವಿಂಡೊ
|
||||
Name[ko]=새 창
|
||||
Name[lt]=Naujas langas
|
||||
Name[lv]=Jauns logs
|
||||
Name[ml]=പുതിയ വിന്ഡോ
|
||||
Name[mr]=नवीन विंडो
|
||||
Name[nl]=Nieuw venster
|
||||
Name[no]=Nytt vindu
|
||||
Name[pl]=Nowe okno
|
||||
Name[pt]=Nova janela
|
||||
Name[pt_BR]=Nova janela
|
||||
Name[ro]=Fereastră nouă
|
||||
Name[ru]=Новое окно
|
||||
Name[sk]=Nové okno
|
||||
Name[sl]=Novo okno
|
||||
Name[sr]=Нови прозор
|
||||
Name[sv]=Nytt fönster
|
||||
Name[sw]=Dirisha Jipya
|
||||
Name[ta]=புதிய சாளரம்
|
||||
Name[te]=క్రొత్త విండో
|
||||
Name[th]=หน้าต่างใหม่
|
||||
Name[tr]=Yeni Pencere
|
||||
Name[uk]=Нове вікно
|
||||
Name[vi]=Cửa sổ Mới
|
||||
Name[zh_CN]=新建窗口
|
||||
Name[zh_TW]=開新視窗
|
||||
Exec=helium-browser-bin
|
||||
|
||||
[Desktop Action new-private-window]
|
||||
Name=New Incognito Window
|
||||
Name[ar]=نافذة جديدة للتصفح المتخفي
|
||||
Name[bg]=Нов прозорец „инкогнито“
|
||||
Name[bn]=নতুন ছদ্মবেশী উইন্ডো
|
||||
Name[ca]=Finestra d'incògnit nova
|
||||
Name[cs]=Nové anonymní okno
|
||||
Name[da]=Nyt inkognitovindue
|
||||
Name[de]=Neues Inkognito-Fenster
|
||||
Name[el]=Νέο παράθυρο για ανώνυμη περιήγηση
|
||||
Name[en_GB]=New Incognito window
|
||||
Name[es]=Nueva ventana de incógnito
|
||||
Name[et]=Uus inkognito aken
|
||||
Name[fa]=پنجره جدید حالت ناشناس
|
||||
Name[fi]=Uusi incognito-ikkuna
|
||||
Name[fil]=Bagong Incognito window
|
||||
Name[fr]=Nouvelle fenêtre de navigation privée
|
||||
Name[gu]=નવી છુપી વિંડો
|
||||
Name[hi]=नई गुप्त विंडो
|
||||
Name[hr]=Novi anoniman prozor
|
||||
Name[hu]=Új Inkognitóablak
|
||||
Name[id]=Jendela Penyamaran baru
|
||||
Name[it]=Nuova finestra di navigazione in incognito
|
||||
Name[iw]=חלון חדש לגלישה בסתר
|
||||
Name[ja]=新しいシークレット ウィンドウ
|
||||
Name[kn]=ಹೊಸ ಅಜ್ಞಾತ ವಿಂಡೋ
|
||||
Name[ko]=새 시크릿 창
|
||||
Name[lt]=Naujas inkognito langas
|
||||
Name[lv]=Jauns inkognito režīma logs
|
||||
Name[ml]=പുതിയ വേഷ പ്രച്ഛന്ന വിന്ഡോ
|
||||
Name[mr]=नवीन गुप्त विंडो
|
||||
Name[nl]=Nieuw incognitovenster
|
||||
Name[no]=Nytt inkognitovindu
|
||||
Name[pl]=Nowe okno incognito
|
||||
Name[pt]=Nova janela de navegação anónima
|
||||
Name[pt_BR]=Nova janela anônima
|
||||
Name[ro]=Fereastră nouă incognito
|
||||
Name[ru]=Новое окно в режиме инкогнито
|
||||
Name[sk]=Nové okno inkognito
|
||||
Name[sl]=Novo okno brez beleženja zgodovine
|
||||
Name[sr]=Нови прозор за прегледање без архивирања
|
||||
Name[sv]=Nytt inkognitofönster
|
||||
Name[ta]=புதிய மறைநிலைச் சாளரம்
|
||||
Name[te]=క్రొత్త అజ్ఞాత విండో
|
||||
Name[th]=หน้าต่างใหม่ที่ไม่ระบุตัวตน
|
||||
Name[tr]=Yeni Gizli pencere
|
||||
Name[uk]=Нове вікно в режимі анонімного перегляду
|
||||
Name[vi]=Cửa sổ ẩn danh mới
|
||||
Name[zh_CN]=新建隐身窗口
|
||||
Name[zh_TW]=新增無痕式視窗
|
||||
Exec=helium-browser-bin --incognito
|
||||
@@ -1,6 +1,6 @@
|
||||
Name: juce
|
||||
Version: 8.0.12
|
||||
Release: 3%{?dist}
|
||||
Release: 2%{?dist}
|
||||
License: AGPL-3.0
|
||||
Summary: framework for audio application and plug-in development
|
||||
URL: https://juce.com
|
||||
@@ -68,7 +68,10 @@ popd
|
||||
%license LICENSE.md
|
||||
%{_bindir}/juceaide
|
||||
%{_bindir}/juce_lv2_helper
|
||||
%dir %{_libdir}/cmake/%{name}
|
||||
%{_libdir}/cmake/%{name}/*
|
||||
%dir %{_datadir}/%{name}
|
||||
%dir %{_datadir}/%{name}/modules
|
||||
%{_datadir}/%{name}/modules/*
|
||||
|
||||
%files doc
|
||||
@@ -81,3 +84,4 @@ popd
|
||||
|
||||
* Fri Dec 19 2025 metcya <metcya@gmail.com> - 8.0.12
|
||||
- Package juce
|
||||
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
%global gtk4_version 4.14.4
|
||||
%global libadwaita_version 1.5.1
|
||||
%global pure_protobuf_version 2.0.0
|
||||
%global raw_ver v1.103.0
|
||||
%global raw_ver v1.98.0
|
||||
|
||||
Name: komikku
|
||||
Version: 1.103.0
|
||||
Version: 1.98.0
|
||||
%forgemeta
|
||||
Release: 1%?dist
|
||||
Summary: A manga reader for GNOME
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "kopia.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
diff --git a/app/package.json b/app/package.json
|
||||
index bd3a699a..df05befa 100644
|
||||
--- a/app/package.json
|
||||
+++ b/app/package.json
|
||||
@@ -45,7 +45,7 @@
|
||||
],
|
||||
"directories": {
|
||||
"buildResources": "assets",
|
||||
- "output": "../dist/kopia-ui"
|
||||
+ "output": "./dist"
|
||||
},
|
||||
"nsis": {
|
||||
"oneClick": false,
|
||||
@@ -1,7 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Terminal=false
|
||||
Name=KopiaUI
|
||||
Comment=Fast and secure open-source backup/restore tool
|
||||
Exec=kopia-ui
|
||||
Icon=kopia
|
||||
@@ -1,13 +0,0 @@
|
||||
<component>
|
||||
<name>KopiaUI</name>
|
||||
<summary>
|
||||
A backup/restore tool that allows you to create encrypted snapshots
|
||||
</summary>
|
||||
<categories>
|
||||
<category>System</category>
|
||||
<category>Network</category>
|
||||
</categories>
|
||||
<provides>
|
||||
<binary>kopia-ui</binary>
|
||||
</provides>
|
||||
</component>
|
||||
@@ -1,84 +0,0 @@
|
||||
%global appid io.kopia.ui
|
||||
%global appstream_component desktop-application
|
||||
|
||||
Name: kopia
|
||||
%electronmeta -D
|
||||
Version: 0.22.3
|
||||
Release: 1%{?dist}
|
||||
Summary: A backup/restore tool that allows you to create encrypted snapshots
|
||||
|
||||
License: Apache-2.0 AND CC0-1.0 AND %{electron_license}
|
||||
URL: https://kopia.io/
|
||||
Source0: https://github.com/kopia/kopia/archive/v%{version}.tar.gz
|
||||
Source1: io.kopia.ui.desktop
|
||||
Source2: io.kopia.ui.metainfo.xml
|
||||
Patch0: fix-electron-output-dir.patch
|
||||
ExclusiveArch: %{golang_arches_future}
|
||||
Packager: metcya <metcya@gmail.com>
|
||||
|
||||
BuildRequires: go-rpm-macros
|
||||
BuildRequires: terra-appstream-helper
|
||||
|
||||
%global gui_name %{name}-ui
|
||||
|
||||
%package -n %{gui_name}
|
||||
Summary: GUI for %{name}
|
||||
Requires: %{name} = %{evr}
|
||||
ExclusiveArch: %{electron_arches}
|
||||
|
||||
%description
|
||||
Kopia is a fast and secure open-source backup/restore tool that allows you to
|
||||
create encrypted snapshots of your data and save the snapshots to remote or
|
||||
cloud storage of your choice, to network-attached storage or server, or locally
|
||||
on your machine. Kopia does not 'image' your whole machine. Rather, Kopia
|
||||
allows you to backup/restore any and all files/directories that you deem are
|
||||
important or critical.
|
||||
|
||||
%description -n %{gui_name}
|
||||
A graphical user interface for %{name}.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%global gomodulesmode GO111MODULE=on
|
||||
%gobuild -o %{name} .
|
||||
|
||||
pushd app
|
||||
%npm_build -B
|
||||
popd
|
||||
|
||||
%install
|
||||
install -Dm 755 %{name} -t %{buildroot}%{_bindir}
|
||||
|
||||
pushd app
|
||||
%electron_install -b %{gui_name} -d %{gui_name} -s %{gui_name} -I ../icons
|
||||
popd
|
||||
|
||||
# the offical package for kopia-ui includes a bundled copy of the kopia binary
|
||||
# but we'll just symlink it
|
||||
mkdir -p %{buildroot}%{_libdir}/%{gui_name}/resources/server
|
||||
%{__ln_s} %{_bindir}/%{name} %{buildroot}%{_libdir}/%{gui_name}/resources/server/%{name}
|
||||
|
||||
%desktop_file_install %{S:1}
|
||||
|
||||
%terra_appstream -o %{S:2}
|
||||
|
||||
%check
|
||||
%desktop_file_validate %{buildroot}%{_appsdir}/%{appid}.desktop
|
||||
|
||||
%files
|
||||
%license README.md
|
||||
%doc LICENSE
|
||||
%{_bindir}/%{name}
|
||||
|
||||
%files -n %{gui_name}
|
||||
%{_bindir}/%{gui_name}
|
||||
%{_libdir}/%{gui_name}/
|
||||
%{_appsdir}/%{appid}.desktop
|
||||
%{_metainfodir}/%{appid}.metainfo.xml
|
||||
%{_hicolordir}/*/apps/kopia.png
|
||||
|
||||
%changelog
|
||||
* Thu Jan 22 2026 metcya <metcya@gmail.com> - 0.22.3-1
|
||||
- Initial package
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh("kopia/kopia"));
|
||||
@@ -1,5 +1,5 @@
|
||||
%global commit 018467f2ea1f558052ef2c4046b517eaa94ae2dd
|
||||
%global commit_date 20260218
|
||||
%global commit baf407ce7cf37b279999ca22ca03b06a44415da7
|
||||
%global commit_date 20251216
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
%global debug_package %nil
|
||||
%global __strip /bin/true
|
||||
@@ -82,10 +82,10 @@ desktop-file-install --set-key=Exec --set-value="%{_datadir}/legcord/legcord %U"
|
||||
* Mon Aug 26 2024 madonuko <mado@fyralabs.com> - 3.3.0-1
|
||||
- Update to license.txt
|
||||
|
||||
* Sat Jun 17 2023 madonuko <mado@fyralabs.com> - 3.2.0-2
|
||||
* Sat Jun 17 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.2.0-2
|
||||
- Remove libnotify dependency.
|
||||
- Fix desktop entry.
|
||||
- Set as noarch package because there are not binary files.
|
||||
|
||||
* Sat May 6 2023 madonuko <mado@fyralabs.com> - 3.1.7-1
|
||||
* Sat May 6 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
|
||||
- Initial package
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
%endif
|
||||
|
||||
Name: legcord
|
||||
Version: 1.2.1
|
||||
Version: 1.1.6
|
||||
Release: 1%?dist
|
||||
License: OSL-3.0
|
||||
Summary: Custom lightweight Discord client designed to enhance your experience
|
||||
@@ -78,10 +78,10 @@ desktop-file-install --set-key=Exec --set-value="%{_datadir}/legcord/legcord %U"
|
||||
* Mon Aug 26 2024 madonuko <mado@fyralabs.com> - 3.3.0-1
|
||||
- Update to license.txt
|
||||
|
||||
* Sat Jun 17 2023 madonuko <mado@fyralabs.com> - 3.2.0-2
|
||||
* Sat Jun 17 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.2.0-2
|
||||
- Remove libnotify dependency.
|
||||
- Fix desktop entry.
|
||||
- Set as noarch package because there are not binary files.
|
||||
|
||||
* Sat May 6 2023 madonuko <mado@fyralabs.com> - 3.1.7-1
|
||||
* Sat May 6 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
|
||||
- Initial package
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
# Disable X11 for RHEL 10+
|
||||
%bcond x11 %[%{undefined rhel} || 0%{?rhel} < 10]
|
||||
|
||||
%global commit c2c081f49aff2e96eaeabd5d1bbb4051fcdf1538
|
||||
%global commit c0d989c83913fb9c990d961c44da4816b8d2de18
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
%global commit_date 20260219
|
||||
%global commit_date 20251225
|
||||
%global ver 0.41.0
|
||||
|
||||
Name: mpv-nightly
|
||||
|
||||
@@ -1,19 +1,20 @@
|
||||
%undefine __brp_mangle_shebangs
|
||||
%global __brp_mangle_shebangs %{nil}
|
||||
%global appid com.github.neohtop
|
||||
|
||||
Name: neohtop
|
||||
Version: 1.2.0
|
||||
Release: 4%?dist
|
||||
Release: 2%?dist
|
||||
Summary: System monitoring on steroids
|
||||
SourceLicense: MIT
|
||||
License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-3-Clause AND MIT) AND (BSD-3-Clause OR MIT OR Apache-2.0) AND (BSD-3-Clause OR MIT) AND BSD-3-Clause AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT)
|
||||
URL: https://abdenasser.github.io/neohtop/
|
||||
Source0: https://github.com/Abdenasser/neohtop/archive/refs/tags/v%version.tar.gz
|
||||
License: MIT
|
||||
URL: https://github.com/Abdenasser/neohtop
|
||||
Source0: %url/archive/refs/tags/v%version.tar.gz
|
||||
Source1: NeoHtop.desktop
|
||||
Source2: com.github.neohtop.metainfo.xml
|
||||
Packager: Owen Zimmerman <owen@fyralabs.com>
|
||||
BuildRequires: rust
|
||||
BuildRequires: %tauri_buildrequires
|
||||
BuildRequires: nodejs-npm
|
||||
BuildRequires: webkit2gtk4.1-devel
|
||||
BuildRequires: javascriptcoregtk4.1-devel
|
||||
BuildRequires: libsoup3-devel
|
||||
BuildRequires: gtk3-devel
|
||||
BuildRequires: rust-gdk-pixbuf-sys-devel
|
||||
@@ -30,14 +31,14 @@ Provides: NeoHtop
|
||||
|
||||
%prep
|
||||
%autosetup -n neohtop-%version
|
||||
%tauri_prep
|
||||
|
||||
%build
|
||||
%npm_build -B
|
||||
npm install
|
||||
npm run tauri build
|
||||
|
||||
%install
|
||||
install -Dpm755 src-tauri/target/rpm/NeoHtop %{buildroot}%{_bindir}/NeoHtop
|
||||
%desktop_file_install %{SOURCE1}
|
||||
install -Dpm755 src-tauri/target/release/NeoHtop %{buildroot}%{_bindir}/NeoHtop
|
||||
install -Dpm644 %{SOURCE1} %{buildroot}%{_appsdir}/NeoHtop.desktop
|
||||
# don't mind the numbers not matching, this is how the offical rpm installs these files
|
||||
install -Dpm644 src-tauri/icons/128x128@2x.png %{buildroot}%{_hicolordir}/256x256@2/apps/NeoHtop.png
|
||||
install -Dpm644 src-tauri/icons/32x32.png %{buildroot}%{_hicolordir}/32x32/apps/NeoHtop.png
|
||||
@@ -45,15 +46,12 @@ install -Dpm644 src-tauri/icons/128x128.png %{buildroot}%{_hicolordir}/128x
|
||||
|
||||
%terra_appstream -o %{SOURCE2}
|
||||
|
||||
%{tauri_cargo_license} > LICENSE.dependencies
|
||||
|
||||
%check
|
||||
%desktop_file_validate %{buildroot}%{_appsdir}/NeoHtop.desktop
|
||||
desktop-file-validate %{buildroot}%{_appsdir}/NeoHtop.desktop
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license LICENSE
|
||||
%license LICENSE.dependencies
|
||||
%{_bindir}/NeoHtop
|
||||
%{_appsdir}/NeoHtop.desktop
|
||||
%{_hicolordir}/256x256@2/apps/NeoHtop.png
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
%define debug_package %nil
|
||||
|
||||
Name: peazip
|
||||
Version: 10.9.0
|
||||
Release: 1%?dist
|
||||
Version: 10.8.0
|
||||
Release: 3%?dist
|
||||
Summary: Free Zip / Unzip software and Rar file extractor. Cross-platform file and archive manager
|
||||
License: LGPL-3.0-only
|
||||
URL: https://peazip.github.io
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
project pkg {
|
||||
arches = ["x86_64"]
|
||||
rpm {
|
||||
spec = "proton-vpn.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,67 +0,0 @@
|
||||
Name: proton-vpn-gtk-app
|
||||
Version: 4.14.1
|
||||
Release: 2%?dist
|
||||
Summary: Official ProtonVPN Linux app
|
||||
License: GPL-3.0-only
|
||||
URL: https://protonvpn.com/download-linux
|
||||
Source0: https://github.com/ProtonVPN/proton-vpn-gtk-app/archive/refs/tags/v%version.tar.gz
|
||||
Source1: https://github.com/flathub/com.protonvpn.www/blob/master/com.protonvpn.www.metainfo.xml
|
||||
BuildArch: noarch
|
||||
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: python3-build
|
||||
BuildRequires: python3-wheel
|
||||
BuildRequires: python3-pip
|
||||
BuildRequires: python3-setuptools
|
||||
BuildRequires: python3-gobject
|
||||
BuildRequires: python3-dbus
|
||||
BuildRequires: python3-packaging
|
||||
BuildRequires: gtk3
|
||||
BuildRequires: libnotify
|
||||
BuildRequires: python3-proton-vpn-api-core
|
||||
BuildRequires: librsvg2
|
||||
|
||||
Requires: gtk3
|
||||
Requires: libnotify
|
||||
Requires: python3-gobject
|
||||
Requires: python3-dbus
|
||||
Requires: python3-packaging
|
||||
Requires: python3-proton-vpn-api-core
|
||||
Requires: python3-proton-core >= 0.7.0
|
||||
Requires: librsvg2
|
||||
|
||||
Provides: protonvpn
|
||||
Provides: proton-vpn
|
||||
|
||||
Packager: Owen Zimmerman <owen@fyralabs.com>
|
||||
|
||||
%description
|
||||
The Proton VPN GTK app is intended for every Proton VPN service user,
|
||||
it provides full access to all functionalities available to authenticated users,
|
||||
with the user signup process handled on the website.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}-%{version}
|
||||
|
||||
%build
|
||||
%pyproject_wheel
|
||||
|
||||
%install
|
||||
%pyproject_install
|
||||
%pyproject_save_files proton
|
||||
install -Dm644 rpmbuild/SOURCES/proton-vpn-logo.svg %{buildroot}%{_scalableiconsdir}/proton-vpn-logo.svg
|
||||
install -Dm644 %{SOURCE1} %{buildroot}%{_metainfodir}/com.protonvpn.www.metainfo.xml
|
||||
# Match metainfo
|
||||
install -Dm644 rpmbuild/SOURCES/proton.vpn.app.gtk.desktop %{buildroot}%{_appsdir}/com.protonvpn.www.desktop
|
||||
|
||||
%files -f %{pyproject_files}
|
||||
%doc README.md CONTRIBUTING.md CODEOWNERS
|
||||
%license LICENSE COPYING.md
|
||||
%{_bindir}/protonvpn-app
|
||||
%{_appsdir}/com.protonvpn.www.desktop
|
||||
%{_scalableiconsdir}/proton-vpn-logo.svg
|
||||
%{_metainfodir}/com.protonvpn.www.metainfo.xml
|
||||
|
||||
%changelog
|
||||
* Sat Jan 17 2026 Owen Zimmerman <owen@fyralabs.com>
|
||||
- Initial commit
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh_tag("ProtonVPN/proton-vpn-gtk-app"));
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "qiqis-notebook.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,8 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Name=Qiqi's Notebook
|
||||
Exec=qiqis-notebook --ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Icon=qiqis-notebook
|
||||
StartupWMClass=qiqis-notebook
|
||||
Comment=Qiqi's Notebook desktop app
|
||||
@@ -1,89 +0,0 @@
|
||||
# Make electron_license macro properly work
|
||||
%bcond bundled_electron 1
|
||||
|
||||
|
||||
Name: qiqis-notebook
|
||||
%electronmeta -D
|
||||
Version: 1.1.6
|
||||
Release: 1%?dist
|
||||
Summary: Qiqi's Notebook desktop app
|
||||
URL: https://qiqis-notebook.com/
|
||||
Source0: https://github.com/Qiqis-Notebook/qnb-client/archive/refs/tags/v%{version}.tar.gz
|
||||
Source1: qiqis-notebook.desktop
|
||||
License: MIT AND %{electron_license}
|
||||
Packager: Yoong Jin <solomoncyj@gmail.com>
|
||||
|
||||
BuildRequires: nodejs-npm
|
||||
BuildRequires: squashfs-tools
|
||||
|
||||
Provides: qnb-client
|
||||
|
||||
%description
|
||||
Qiqi's Notebook is an application used for launcing
|
||||
user created farming routes for Genshin Impact and
|
||||
Wuthering Waves
|
||||
|
||||
%prep
|
||||
%autosetup -n qnb-client-%{version}
|
||||
|
||||
%build
|
||||
%npm_build -r package
|
||||
#npm i
|
||||
#npm run package
|
||||
cd "out/Qiqi's Notebook-linux-%{_electron_cpu}"
|
||||
mv ./* ..
|
||||
cd ..
|
||||
mv "Qiqi's Notebook" ./qiqis-notebook
|
||||
|
||||
mv ./LICENSE ./LICENSE.electron
|
||||
|
||||
%install
|
||||
cd ./out
|
||||
|
||||
install -Dm755 ./libEGL.so %{buildroot}%{_libdir}/qiqis-notebook/libEGL.so
|
||||
install -Dm755 ./libGLESv2.so %{buildroot}%{_libdir}/qiqis-notebook/libGLESv2.so
|
||||
install -Dm755 ./libffmpeg.so %{buildroot}%{_libdir}/qiqis-notebook/libffmpeg.so
|
||||
install -Dm755 ./libvk_swiftshader.so %{buildroot}%{_libdir}/qiqis-notebook/libvk_swiftshader.so
|
||||
install -Dm755 ./libvulkan.so.1 %{buildroot}%{_libdir}/qiqis-notebook/libvulkan.so.1
|
||||
install -Dm644 ./icudtl.dat %{buildroot}%{_libdir}/qiqis-notebook/icudtl.dat
|
||||
install -Dm644 ./v8_context_snapshot.bin %{buildroot}%{_libdir}/qiqis-notebook/v8_context_snapshot.bin
|
||||
install -Dm644 ./chrome_100_percent.pak %{buildroot}%{_libdir}/qiqis-notebook/chrome_100_percent.pak
|
||||
install -Dm644 ./chrome_200_percent.pak %{buildroot}%{_libdir}/qiqis-notebook/chrome_200_percent.pak
|
||||
install -Dm644 ./resources.pak %{buildroot}%{_libdir}/qiqis-notebook/resources.pak
|
||||
install -Dm644 ./vk_swiftshader_icd.json %{buildroot}%{_libdir}/qiqis-notebook/vk_swiftshader_icd.json
|
||||
install -Dm644 ./resources/app.asar %{buildroot}%{_libdir}/qiqis-notebook/resources/app.asar
|
||||
install -Dm755 ./chrome-sandbox %{buildroot}%{_libdir}/qiqis-notebook/chrome-sandbox
|
||||
install -Dm755 ./chrome_crashpad_handler %{buildroot}%{_libdir}/qiqis-notebook/chrome_crashpad_handler
|
||||
install -Dm755 ./qiqis-notebook %{buildroot}%{_libdir}/qiqis-notebook/qiqis-notebook
|
||||
|
||||
|
||||
mkdir %{buildroot}%{_libdir}/qiqis-notebook/locales/
|
||||
cp -r locales/* %{buildroot}%{_libdir}/qiqis-notebook/locales/
|
||||
chmod -R 755 %{buildroot}%{_libdir}/qiqis-notebook/locales/
|
||||
|
||||
cd ..
|
||||
|
||||
install -Dm644 assets/logo.png %{buildroot}%{_hicolordir}/1024x1024/apps/qiqis-notebook.png
|
||||
|
||||
install -Dm644 %{SOURCE1} %{buildroot}%{_appsdir}/qiqis-notebook.desktop
|
||||
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
|
||||
ln -s %{_libdir}/qiqis-notebook/qiqis-notebook %{buildroot}%{_bindir}/qiqis-notebook
|
||||
|
||||
%check
|
||||
desktop-file-validate %{buildroot}%{_appsdir}/qiqis-notebook.desktop
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license ./out/LICENSE.electron
|
||||
%license ./out/LICENSES.chromium.html
|
||||
%license LICENSE
|
||||
%{_bindir}/qiqis-notebook
|
||||
%{_libdir}/qiqis-notebook/
|
||||
%{_appsdir}/qiqis-notebook.desktop
|
||||
%{_hicolordir}/1024x1024/apps/qiqis-notebook.png
|
||||
|
||||
%changelog
|
||||
* Sat Jan 17 2026 Yoong Jin <solomoncyj@gmail.com> - 1.1.6
|
||||
- Initial package.
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh("Qiqis-Notebook/qnb-client"));
|
||||
@@ -1,5 +1,5 @@
|
||||
%global commit 605d9dd8c825b650deeaa614e1b83e8dbb41e87d
|
||||
%global commit_date 20260128
|
||||
%global commit a822eb767a330711e67714428c1c56cf3c82f044
|
||||
%global commit_date 20251118
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
|
||||
Name: rasputin
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
%global commit 605d9dd8c825b650deeaa614e1b83e8dbb41e87d
|
||||
%global commit_date 20260128
|
||||
%global commit a822eb767a330711e67714428c1c56cf3c82f044
|
||||
%global commit_date 20251118
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
|
||||
Name: appset
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
%global commit 353e04bf0bc1866cba1f599cd76050890d33ba23
|
||||
%global commit_date 20260123
|
||||
%global commit 9527e92f697ad380ce8669a2b6c61260abafab19
|
||||
%global commit_date 20251126
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
|
||||
Name: rpcc
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
%global ver 2026-02-19
|
||||
%global ver 2025-12-26
|
||||
%global goodver %(echo %ver | sed 's/-//g')
|
||||
%global __brp_mangle_shebangs %{nil}
|
||||
%bcond_without mold
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "rustnet.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,64 +0,0 @@
|
||||
Name: rustnet
|
||||
Version: 1.0.0
|
||||
Release: 1%?dist
|
||||
Summary: A cross-platform network monitoring terminal UI tool built with Rust
|
||||
License: Apache-2.0 AND (MIT OR Apache-2.0) AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-2-Clause AND (BSD-3-Clause OR Apache-2.0) AND BSL-1.0 AND ISC AND (LGPL-2.1-only OR BSD-2-Clause) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib
|
||||
URL: https://github.com/domcyrus/rustnet
|
||||
Source0: %{url}/archive/refs/tags/v%{version}.tar.gz
|
||||
|
||||
Packager: Owen Zimmerman <owen@fyralabs.com>
|
||||
|
||||
BuildRequires: cargo
|
||||
BuildRequires: rust
|
||||
BuildRequires: cargo-rpm-macros
|
||||
BuildRequires: libpcap-devel
|
||||
BuildRequires: elfutils-libelf-devel
|
||||
BuildRequires: clang
|
||||
BuildRequires: llvm
|
||||
|
||||
Requires: libpcap
|
||||
Requires: elfutils-libelf
|
||||
|
||||
%description
|
||||
A cross-platform network monitoring tool built with Rust. RustNet provides
|
||||
real-time visibility into network connections with detailed state information,
|
||||
connection lifecycle management, deep packet inspection, and a terminal user
|
||||
interface.
|
||||
|
||||
Features include:
|
||||
- Real-time Network Monitoring for TCP, UDP, ICMP, and ARP connections
|
||||
- Deep Packet Inspection (DPI) for HTTP/HTTPS, DNS, SSH, and QUIC protocols
|
||||
- Connection lifecycle management with protocol-aware timeouts
|
||||
- Process identification and service name resolution
|
||||
- Cross-platform support (Linux, macOS, Windows, BSD)
|
||||
- Advanced filtering with vim/fzf-style search
|
||||
- eBPF-enhanced process detection (enabled by default with automatic fallback)
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}-%{version}
|
||||
|
||||
%build
|
||||
export RUSTFLAGS="%{build_rustflags}"
|
||||
# Cargo macros fail due to RUSTC_BOOTSTRAP and build target
|
||||
cargo build
|
||||
|
||||
%install
|
||||
install -Dm755 target/debug/rustnet -t %{buildroot}%{_bindir}/
|
||||
install -Dm644 assets/services -t %{buildroot}%{_datadir}/%{name}/
|
||||
install -Dm644 resources/packaging/linux/graphics/rustnet.png -t %{buildroot}%{_hicolordir}/256x256/apps/
|
||||
install -Dm644 resources/packaging/linux/rustnet.desktop -t %{buildroot}%{_appsdir}/
|
||||
|
||||
%{cargo_license_online} > LICENSE.dependencies
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%license LICENSE.dependencies
|
||||
%doc *.md
|
||||
%{_bindir}/rustnet
|
||||
%{_datadir}/%{name}/services
|
||||
%{_hicolordir}/256x256/apps/rustnet.png
|
||||
%{_appsdir}/rustnet.desktop
|
||||
|
||||
%changelog
|
||||
* Mon Jan 12 2026 Owen Zimmerman <owen@fyralabs.com>
|
||||
- Initial commit
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh("domcyrus/rustnet"));
|
||||
@@ -1,38 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<component type="desktop">
|
||||
<id>org.signal.Signal</id>
|
||||
<name>Signal Desktop</name>
|
||||
<project_license>AGPL-3.0-only</project_license>
|
||||
<icon type="local">/usr/share/icons/hicolor/1024x1024/apps/signal.png</icon>
|
||||
<developer id="org.Signal">
|
||||
<name>Signal Foundation</name>
|
||||
</developer>
|
||||
<summary>A private messenger for Windows, macOS, and Linux</summary>
|
||||
<metadata_license>CC0-1.0</metadata_license>
|
||||
<url type="homepage">https://signal.org/</url>
|
||||
<url type="help">https://support.signal.org/</url>
|
||||
<url type="donation">https://signal.org/donate/</url>
|
||||
<url
|
||||
type="contribute"
|
||||
>https://github.com/signalapp/Signal-Desktop/blob/main/CONTRIBUTING.md</url>
|
||||
<launchable type="desktop-id">org.signal.Signal.desktop</launchable>
|
||||
<description>
|
||||
<p>
|
||||
Signal Desktop links with Signal on Android or iOS and lets you message from your Windows, macOS, and Linux computers.
|
||||
</p>
|
||||
</description>
|
||||
<provides>
|
||||
<binary>signal-desktop</binary>
|
||||
</provides>
|
||||
<keywords>
|
||||
<keyword>signal</keyword>
|
||||
</keywords>
|
||||
<screenshots>
|
||||
<screenshot type="default">
|
||||
<image
|
||||
type="source"
|
||||
>https://web.archive.org/web/20240219132433if_/https://signal.org/assets/images/screenshots/download-desktop-windows.png</image>
|
||||
<caption>Typical view of the window (Windows version)</caption>
|
||||
</screenshot>
|
||||
</screenshots>
|
||||
</component>
|
||||
@@ -1,25 +1,45 @@
|
||||
%define appid org.signal.Signal
|
||||
#? https://gitlab.archlinux.org/archlinux/packaging/packages/signal-desktop/-/blob/main/PKGBUILD
|
||||
%define debug_package %{nil}
|
||||
|
||||
# Make electron_license macro properly work
|
||||
%bcond bundled_electron 1
|
||||
|
||||
# Exclude private libraries
|
||||
%global __requires_exclude libffmpeg.so
|
||||
%global __provides_exclude ^lib.*\\.so.*$
|
||||
|
||||
%ifarch x86_64
|
||||
%define arch %{nil}
|
||||
%elifarch aarch64
|
||||
%define arch arm64-
|
||||
%endif
|
||||
|
||||
Name: signal-desktop
|
||||
%electronmeta -aD
|
||||
Version: 7.90.0
|
||||
Version: 7.83.0
|
||||
Release: 1%?dist
|
||||
Summary: A private messenger for Windows, macOS, and Linux
|
||||
URL: https://signal.org
|
||||
Source0: https://github.com/signalapp/Signal-Desktop/archive/refs/tags/v%{version}.tar.gz
|
||||
# signal.desktop from https://github.com/signalflatpak/signal/blob/master/org.signal.Signal.desktop
|
||||
Source1: signal.desktop
|
||||
Source2: org.signal.Signal.metainfo.xml
|
||||
License: AGPL-3.0 AND %{electron_license}
|
||||
ExclusiveArch: x86_64 aarch64
|
||||
|
||||
BuildRequires: pulseaudio-libs-devel
|
||||
BuildRequires: pulseaudio-libs-devel
|
||||
BuildRequires: libX11-devel
|
||||
BuildRequires: git-lfs
|
||||
BuildRequires: git-lfs
|
||||
BuildRequires: git-core
|
||||
BuildRequires: anda-srpm-macros
|
||||
BuildRequires: pnpm
|
||||
BuildRequires: pnpm
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: git-core
|
||||
BuildRequires: make
|
||||
BuildRequires: nodejs
|
||||
BuildRequires: nodejs-npm
|
||||
BuildRequires: python3
|
||||
BuildRequires: terra-appstream-helper
|
||||
BuildRequires: nodejs-full-i18n
|
||||
|
||||
Requires: gtk3
|
||||
Requires: libwayland-cursor
|
||||
Requires: libwayland-client
|
||||
Requires: libxkbcommon
|
||||
@@ -38,19 +58,27 @@ Requires: cairo
|
||||
Requires: xz-libs
|
||||
Requires: libxcb
|
||||
Requires: nss-util
|
||||
Requires: nss
|
||||
Requires: dbus-libs
|
||||
Requires: mesa-libgbm
|
||||
Requires: at-spi2-atk
|
||||
Requires: expat
|
||||
Requires: alsa-lib
|
||||
Requires: xdg-utils
|
||||
Requires: re2
|
||||
Requires: (libXtst or libXtst6)
|
||||
Requires: libXScrnSaver
|
||||
Requires: libnotify
|
||||
Requires: (libuuid or libuuid1)
|
||||
Requires: at-spi2-core
|
||||
Requires: c-ares
|
||||
Requires: gtk3
|
||||
Requires: minizip
|
||||
|
||||
Provides: signal
|
||||
Provides: Signal
|
||||
Provides: Signal-Desktop
|
||||
|
||||
Packager: junefish <june@fyralabs.com>
|
||||
|
||||
%description
|
||||
Signal Desktop links with Signal on Android or iOS and lets you message from your Windows, macOS, and Linux computers.
|
||||
|
||||
@@ -58,51 +86,72 @@ Signal Desktop links with Signal on Android or iOS and lets you message from you
|
||||
%autosetup -n Signal-Desktop-%{version}
|
||||
|
||||
%build
|
||||
export SIGNAL_ENV=production
|
||||
%{__pnpm} install
|
||||
%{__pnpm} run clean-transpile
|
||||
pnpm install --frozen-lockfile
|
||||
pushd sticker-creator
|
||||
%{__pnpm} install
|
||||
%{__pnpm} run build
|
||||
pnpm install --frozen-lockfile
|
||||
pnpm build
|
||||
popd
|
||||
%pnpm_build -r generate,prepare-beta-build
|
||||
pnpm run build-linux --dir
|
||||
|
||||
%install
|
||||
%electron_install -i signal -l -I build/icons/png
|
||||
install -Dm755 release/linux-%{arch}unpacked/libEGL.so %{buildroot}%{_libdir}/signal-desktop/libEGL.so
|
||||
install -Dm755 release/linux-%{arch}unpacked/libGLESv2.so %{buildroot}%{_libdir}/signal-desktop/libGLESv2.so
|
||||
install -Dm755 release/linux-%{arch}unpacked/libffmpeg.so %{buildroot}%{_libdir}/signal-desktop/libffmpeg.so
|
||||
install -Dm755 release/linux-%{arch}unpacked/libvk_swiftshader.so %{buildroot}%{_libdir}/signal-desktop/libvk_swiftshader.so
|
||||
install -Dm755 release/linux-%{arch}unpacked/libvulkan.so.1 %{buildroot}%{_libdir}/signal-desktop/libvulkan.so.1
|
||||
install -Dm644 release/linux-%{arch}unpacked/icudtl.dat %{buildroot}%{_libdir}/signal-desktop/icudtl.dat
|
||||
install -Dm644 release/linux-%{arch}unpacked/v8_context_snapshot.bin %{buildroot}%{_libdir}/signal-desktop/v8_context_snapshot.bin
|
||||
install -Dm644 release/linux-%{arch}unpacked/chrome_100_percent.pak %{buildroot}%{_libdir}/signal-desktop/chrome_100_percent.pak
|
||||
install -Dm644 release/linux-%{arch}unpacked/chrome_200_percent.pak %{buildroot}%{_libdir}/signal-desktop/chrome_200_percent.pak
|
||||
install -Dm644 release/linux-%{arch}unpacked/resources.pak %{buildroot}%{_libdir}/signal-desktop/resources.pak
|
||||
install -Dm644 release/linux-%{arch}unpacked/vk_swiftshader_icd.json %{buildroot}%{_libdir}/signal-desktop/vk_swiftshader_icd.json
|
||||
install -Dm644 release/linux-%{arch}unpacked/resources/app.asar %{buildroot}%{_libdir}/signal-desktop/resources/app.asar
|
||||
cp -r release/linux-%{arch}unpacked/resources/app.asar.unpacked %{buildroot}%{_libdir}/signal-desktop/resources/
|
||||
|
||||
%desktop_file_install %{SOURCE1}
|
||||
install -Dm755 release/linux-%{arch}unpacked/chrome-sandbox %{buildroot}%{_libdir}/signal-desktop/chrome-sandbox
|
||||
install -Dm755 release/linux-%{arch}unpacked/chrome_crashpad_handler %{buildroot}%{_libdir}/signal-desktop/chrome_crashpad_handler
|
||||
|
||||
for policy in org.signalapp.view-aep.policy org.signalapp.enable-backups.policy; do
|
||||
install -Dm644 $OUTDIR/resources/$policy %{buildroot}%{_datadir}/polkit-1/rules.d/$policy
|
||||
rm $OUTDIR/resources/$policy
|
||||
done
|
||||
install -Dm755 release/linux-%{arch}unpacked/signal-desktop %{buildroot}%{_libdir}/signal-desktop/signal-desktop
|
||||
|
||||
%terra_appstream -o %{SOURCE2}
|
||||
install -Dm644 release/linux-%{arch}unpacked/resources/org.signalapp.view-aep.policy %{buildroot}%{_datadir}/polkit-1/rules.d/org.signalapp.view-aep.policy
|
||||
install -Dm644 release/linux-%{arch}unpacked/resources/org.signalapp.enable-backups.policy %{buildroot}%{_datadir}/polkit-1/rules.d/org.signalapp.enable-backups.policy
|
||||
|
||||
%check
|
||||
%desktop_file_validate %{buildroot}%{_appsdir}/signal.desktop
|
||||
install -Dm644 build/icons/png/1024x1024.png %{buildroot}%{_iconsdir}/hicolor/1024x1024/apps/signal.png
|
||||
install -Dm644 build/icons/png/128x128.png %{buildroot}%{_iconsdir}/hicolor/128x128/apps/signal.png
|
||||
install -Dm644 build/icons/png/16x16.png %{buildroot}%{_iconsdir}/hicolor/16x16/apps/signal.png
|
||||
install -Dm644 build/icons/png/24x24.png %{buildroot}%{_iconsdir}/hicolor/24x24/apps/signal.png
|
||||
install -Dm644 build/icons/png/256x256.png %{buildroot}%{_iconsdir}/hicolor/256x256/apps/signal.png
|
||||
install -Dm644 build/icons/png/32x32.png %{buildroot}%{_iconsdir}/hicolor/32x32/apps/signal.png
|
||||
install -Dm644 build/icons/png/48x48.png %{buildroot}%{_iconsdir}/hicolor/48x48/apps/signal.png
|
||||
install -Dm644 build/icons/png/512x512.png %{buildroot}%{_iconsdir}/hicolor/512x512/apps/signal.png
|
||||
install -Dm644 build/icons/png/64x64.png %{buildroot}%{_iconsdir}/hicolor/64x64/apps/signal.png
|
||||
|
||||
install -Dm644 %{SOURCE1} %{buildroot}%{_datadir}/applications/signal.desktop
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
ln -s %{_libdir}/signal-desktop/signal-desktop %{buildroot}%{_bindir}/signal-desktop
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc README.md CONTRIBUTING.md ACKNOWLEDGMENTS.md
|
||||
%license bundled_licenses/*
|
||||
%license release/linux-%{arch}unpacked/LICENSE.electron.txt
|
||||
%license release/linux-%{arch}unpacked/LICENSES.chromium.html
|
||||
%{_bindir}/signal-desktop
|
||||
%{_libdir}/signal-desktop/
|
||||
%{_datadir}/polkit-1/rules.d/org.signalapp.view-aep.policy
|
||||
%{_datadir}/polkit-1/rules.d/org.signalapp.enable-backups.policy
|
||||
%{_appsdir}/signal.desktop
|
||||
%{_hicolordir}/*x*/apps/signal.png
|
||||
%{_metainfodir}/org.signal.Signal.metainfo.xml
|
||||
%{_datadir}/applications/signal.desktop
|
||||
%{_iconsdir}/hicolor/1024x1024/apps/signal.png
|
||||
%{_iconsdir}/hicolor/128x128/apps/signal.png
|
||||
%{_iconsdir}/hicolor/16x16/apps/signal.png
|
||||
%{_iconsdir}/hicolor/24x24/apps/signal.png
|
||||
%{_iconsdir}/hicolor/256x256/apps/signal.png
|
||||
%{_iconsdir}/hicolor/32x32/apps/signal.png
|
||||
%{_iconsdir}/hicolor/48x48/apps/signal.png
|
||||
%{_iconsdir}/hicolor/512x512/apps/signal.png
|
||||
%{_iconsdir}/hicolor/64x64/apps/signal.png
|
||||
|
||||
%changelog
|
||||
* Mon Dec 22 2025 Owen Zimmerman <owen@fyralabs.com>
|
||||
- Use more electron macros, correct build failures
|
||||
|
||||
* Wed Dec 10 2025 Owen Zimmerman <owen@fyralabs.com>
|
||||
- Add metainfo
|
||||
|
||||
* Tue Nov 11 2025 Owen Zimmerman <owen@fyralabs.com>
|
||||
- Add more Requires:, fix electron_license macro application, fix some formatting
|
||||
|
||||
* Fri Aug 8 2025 june-fish <git@june.fish>
|
||||
- Initial Package
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<component type="desktop-application">
|
||||
<id>com.github.snow</id>
|
||||
<metadata_license>CC0-1.0</metadata_license>
|
||||
<project_license>MIT</project_license>
|
||||
<icon
|
||||
type="local"
|
||||
>/usr/share/icons/hicolor/1024x1024/apps/snow_icon.png</icon>
|
||||
|
||||
<name>snow</name>
|
||||
<summary>Classic Macintosh emulator</summary>
|
||||
|
||||
<description>
|
||||
<p>
|
||||
Snow emulates classic (Motorola 68k-based) Macintosh computers.
|
||||
It features a graphical user interface to operate and debug the emulated machine.
|
||||
The aim of this project is to emulate the Macintosh on a hardware-level as much as possible,
|
||||
as opposed to emulators that patch the ROM or intercept system calls.
|
||||
</p>
|
||||
</description>
|
||||
|
||||
<launchable type="desktop-id">snow.desktop</launchable>
|
||||
|
||||
<url type="homepage">https://github.com/twvd/snow</url>
|
||||
<provides>
|
||||
<binary>snowemu</binary>
|
||||
</provides>
|
||||
|
||||
<keywords>
|
||||
<keyword>macintosh</keyword>
|
||||
</keywords>
|
||||
|
||||
<releases>
|
||||
<release version="1.2.0" />
|
||||
</releases>
|
||||
</component>
|
||||
@@ -0,0 +1,7 @@
|
||||
[Desktop Entry]
|
||||
Categories=System;Emulator;
|
||||
Comment=Classic Macintosh emulator
|
||||
Exec=snowemu
|
||||
Icon=snow_icon
|
||||
Name=snow
|
||||
Type=Application
|
||||
@@ -1,10 +1,14 @@
|
||||
%global appid com.github.snow
|
||||
|
||||
Name: snow
|
||||
Version: 1.3.0
|
||||
Release: 1%?dist
|
||||
Version: 1.2.0
|
||||
Release: 2%?dist
|
||||
Summary: Classic Macintosh emulator
|
||||
URL: https://github.com/twvd/snow
|
||||
Source0: %url/archive/refs/tags/v%version.tar.gz
|
||||
License: MIT AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND Apache-2.0 AND BSD-2-Clause AND Zlib AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (BSD-3-Clause OR Apache-2.0) AND BSD-3-Clause AND BSL-1.0 AND CC0-1.0 OR MIT-0 OR Apache-2.0 AND ISC AND (Apache-2.0 OR BSL-1.0) AND (MIT OR Apache-2.0 OR Zlib) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND
|
||||
Source1: snow.desktop
|
||||
Source2: %appid.metainfo.xml
|
||||
License: MIT
|
||||
|
||||
BuildRequires: cargo
|
||||
BuildRequires: gcc-c++
|
||||
@@ -12,6 +16,7 @@ BuildRequires: mold
|
||||
BuildRequires: anda-srpm-macros
|
||||
BuildRequires: cargo-rpm-macros
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: terra-appstream-helper
|
||||
BuildRequires: SDL2-devel
|
||||
Provides: snowemu
|
||||
|
||||
@@ -38,17 +43,26 @@ Documentation files for %{name}
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}%{_pkgdocdir}
|
||||
install -Dm755 target/rpm/snow_frontend_egui %{buildroot}%{_bindir}/snowemu
|
||||
install -Dm644 assets/snow_icon.png %{buildroot}%{_hicolordir}/1024x1024/apps/snow_icon.png
|
||||
%desktop_file_install assets/snow.desktop
|
||||
install -Dm644 assets/dev.thomasw.snow.metainfo.xml %{buildroot}%{_metainfodir}/dev.thomasw.snow.metainfo.xml
|
||||
install -Dm755 target/rpm/snow_frontend_egui %{buildroot}%{_bindir}/snowemu
|
||||
|
||||
cp -a docs/* %{buildroot}%{_pkgdocdir}/
|
||||
install -Dm644 docs/images/snow_icon.png %{buildroot}%{_hicolordir}/1024x1024/apps/snow_icon.png
|
||||
|
||||
install -Dm644 %{SOURCE1} %{buildroot}%{_appsdir}/snow.desktop
|
||||
|
||||
cp -a docs/* %{buildroot}%{_pkgdocdir}/
|
||||
rm %{buildroot}%{_pkgdocdir}/*.toml
|
||||
rm %{buildroot}%{_pkgdocdir}/images/*.icns
|
||||
rm %{buildroot}%{_pkgdocdir}/images/*.ico
|
||||
rm -r %{buildroot}%{_pkgdocdir}/theme
|
||||
|
||||
%terra_appstream -o %{SOURCE2}
|
||||
|
||||
%cargo_license_summary_online
|
||||
%{cargo_license_online} > LICENSE.dependencies
|
||||
|
||||
%check
|
||||
desktop-file-validate %{buildroot}%{_appsdir}/snow.desktop
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license LICENSE
|
||||
@@ -56,7 +70,7 @@ rm -r %{buildroot}%{_pkgdocdir}/theme
|
||||
%{_bindir}/snowemu
|
||||
%{_hicolordir}/1024x1024/apps/snow_icon.png
|
||||
%{_appsdir}/snow.desktop
|
||||
%{_metainfodir}/dev.thomasw.snow.metainfo.xml
|
||||
%{_metainfodir}/%appid.metainfo.xml
|
||||
|
||||
%files doc
|
||||
%license LICENSE
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "socktop.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,54 +0,0 @@
|
||||
%global ver v1.55.0-test2
|
||||
%global download_ver %(echo %{ver} | sed 's/v//g')
|
||||
%global sanitized_ver %(echo %{ver} | sed 's/-//g')
|
||||
|
||||
Name: socktop
|
||||
Version: %sanitized_ver
|
||||
Release: 1%?dist
|
||||
Summary: socktop is a remote system monitor with a rich TUI interface
|
||||
URL: https://github.com/jasonwitty/socktop
|
||||
Source0: %{url}/archive/refs/tags/%{ver}.tar.gz
|
||||
License: MIT
|
||||
BuildRequires: rust libdrm-devel systemd-rpm-macros cargo-rpm-macros
|
||||
Requires: libdrm
|
||||
Packager: lux8149 <julianbashirisasimp@gmail.com>
|
||||
|
||||
%description
|
||||
socktop is a remote system monitor with a rich TUI interface, inspired by `top` and `btop`,
|
||||
that communicates with a lightweight remote agent over WebSockets.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}-%{download_ver}
|
||||
%cargo_prep_online
|
||||
|
||||
%build
|
||||
%cargo_build
|
||||
|
||||
%install
|
||||
install -Dm 755 target/rpm/socktop %{buildroot}%{_bindir}/socktop
|
||||
install -Dm 755 target/rpm/socktop_agent %{buildroot}%{_bindir}/socktop_agent
|
||||
install -Dm 644 target/rpm/libsocktop_connector.so %{buildroot}%{_libdir}/libsocktop_connector.so
|
||||
install -Dm 644 docs/socktop-agent.service %{buildroot}%{_unitdir}/socktop-agent.service
|
||||
%{cargo_license_online} > LICENSE.dependencies
|
||||
|
||||
%post
|
||||
%systemd_post socktop-agent.service
|
||||
|
||||
%preun
|
||||
%systemd_preun socktop-agent.service
|
||||
|
||||
%postun
|
||||
%systemd_postun_with_restart socktop-agent.service
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license LICENSE
|
||||
%license LICENSE.dependencies
|
||||
%{_bindir}/socktop
|
||||
%{_bindir}/socktop_agent
|
||||
%{_libdir}/libsocktop_connector.so
|
||||
%{_unitdir}/socktop-agent.service
|
||||
|
||||
%changelog
|
||||
* Sun Jan 04 2026 lux8149 <julianbashirisasimp@gmail.com>
|
||||
- Initial Package
|
||||
@@ -1 +0,0 @@
|
||||
rpm.global("ver", gh("jasonwitty/socktop"));
|
||||
@@ -2,7 +2,7 @@
|
||||
%global realname subtitleedit
|
||||
|
||||
Name: %realname.bin
|
||||
Version: 4.0.15
|
||||
Version: 4.0.14
|
||||
Release: 1%?dist
|
||||
Summary: An advanced subtitle editor and converter
|
||||
License: GPL-3.0-only
|
||||
|
||||
@@ -1 +1 @@
|
||||
v1.12.22
|
||||
v1.12.14
|
||||
@@ -1,7 +1,7 @@
|
||||
#? https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=throne-git
|
||||
|
||||
Name: throne
|
||||
Version: 1.0.13
|
||||
Version: 1.0.12
|
||||
Release: 1%?dist
|
||||
Summary: Qt based cross-platform GUI proxy configuration manager (backend: sing-box)
|
||||
URL: https://github.com/throneproj/Throne
|
||||
@@ -24,6 +24,12 @@ BuildRequires: rpm_macro(cmake_build)
|
||||
BuildRequires: rpm_macro(cmake_install)
|
||||
BuildRequires: cmake
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: pkgconfig(protobuf)
|
||||
BuildRequires: pkgconfig(libcurl)
|
||||
BuildRequires: cmake(yaml-cpp)
|
||||
BuildRequires: cmake(ZXing)
|
||||
BuildRequires: cmake(absl)
|
||||
BuildRequires: cmake(cpr)
|
||||
BuildRequires: cmake(Qt6)
|
||||
BuildRequires: cmake(Qt6Svg)
|
||||
BuildRequires: cmake(Qt6Linguist)
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "ttop.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
Name: ttop
|
||||
Version: 1.5.7
|
||||
Release: 1%?dist
|
||||
Summary: System monitoring tool with historical data service, triggers and top-like TUI
|
||||
License: MIT
|
||||
URL: https://github.com/inv2004/ttop
|
||||
Source0: %url/archive/refs/tags/v%version.tar.gz
|
||||
BuildRequires: anda-srpm-macros
|
||||
BuildRequires: nim
|
||||
|
||||
Packager: Owen Zimmerman <owen@fyralabs.com>
|
||||
|
||||
%description
|
||||
%summary.
|
||||
|
||||
%prep
|
||||
%autosetup -n ttop-%version
|
||||
%nim_prep
|
||||
|
||||
%build
|
||||
%nim_c src/ttop
|
||||
|
||||
%install
|
||||
install -Dm755 src/ttop.out %{buildroot}%{_bindir}/ttop
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license LICENSE
|
||||
%{_bindir}/ttop
|
||||
|
||||
%changelog
|
||||
* Sun Jan 04 2026 Owen Zimmerman <owen@fyralabs.com>
|
||||
- Initial commit
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh("inv2004/ttop"));
|
||||
@@ -1,6 +0,0 @@
|
||||
project "pkg" {
|
||||
arches = ["x86_64"]
|
||||
rpm {
|
||||
spec = "twintaillauncher.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,77 +0,0 @@
|
||||
%undefine __brp_mangle_shebangs
|
||||
|
||||
%global toolchain clang
|
||||
|
||||
Name: twintaillauncher
|
||||
|
||||
Version: 1.1.15
|
||||
Release: 1%{?dist}
|
||||
Summary: A multi-platform launcher for your anime games
|
||||
Packager: Yoong Jin <solomoncyj@gmail.com>
|
||||
|
||||
SourceLicense: GPL-3.0-or-later
|
||||
License: GPL-3.0-or-later AND (((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR Apache-2.0 OR MIT) AND (Apache-2.0) AND (Apache-2.0 AND ISC) AND (Apache-2.0 AND MIT) AND (Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR CC0-1.0) AND (Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT) AND (Apache-2.0 OR BSD-2-Clause OR MIT) AND (Apache-2.0 OR BSD-3-Clause) AND (Apache-2.0 OR BSD-3-Clause OR MIT) AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR CC0-1.0 OR MIT-0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR LGPL-2.1-or-later OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR MIT OR Zlib) AND (Apache-2.0 WITH LLVM-exception) AND (BSD-2-Clause) AND (BSD-3-Clause) AND (BSD-3-Clause AND MIT) AND (BSD-3-Clause OR MIT) AND CC0-1.0 AND (CC0-1.0 OR MIT-0) AND (CDLA-Permissive-2.0) AND ISC AND (ISC AND (Apache-2.0 OR ISC)) AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (LGPL-3.0-or-later OR MIT) AND MIT AND (MIT OR Unlicense) AND MPL-2.0 AND Unicode-3.0 AND Zlib AND bzip2-1.0.6)
|
||||
URL: https://twintaillauncher.app/
|
||||
Source0: https://github.com/TwintailTeam/TwintailLauncher/archive/refs/tags/ttl-v%{version}.tar.gz
|
||||
|
||||
ExclusiveArch: x86_64
|
||||
|
||||
Requires: hicolor-icon-theme
|
||||
|
||||
# Build requires
|
||||
BuildRequires: pnpm
|
||||
BuildRequires: %{tauri_buildrequires}
|
||||
BuildRequires: protobuf-devel
|
||||
BuildRequires: webkit2gtk4.1-devel
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: hicolor-icon-theme
|
||||
BuildRequires: perl
|
||||
BuildRequires: zlib-ng-devel
|
||||
BuildRequires: clang
|
||||
BuildRequires: mold
|
||||
|
||||
Provides: ttl
|
||||
|
||||
%description
|
||||
Twintaillauncher is a multi-platform launcher that brings mod support, quality-of-life improvements, and advanced features to a variety of anime-styled games.
|
||||
TTL is an all-in-one tool for downloading, managing, and launching your favorite anime games. It’s designed with flexibility, ease of use, and customization in mind.
|
||||
|
||||
%prep
|
||||
%autosetup -n TwintailLauncher-ttl-v%{version}
|
||||
cd src-tauri
|
||||
cargo update
|
||||
cd ..
|
||||
%tauri_prep
|
||||
|
||||
%build
|
||||
%pnpm_build
|
||||
|
||||
|
||||
%install
|
||||
%tauri_install_bin
|
||||
%tauri_cargo_license_summary
|
||||
%{tauri_cargo_license} > LICENSE.dependencies
|
||||
|
||||
%desktop_file_install -f ./twintaillauncher.desktop
|
||||
|
||||
install -Dm644 public/launcher-icon.png %{buildroot}%{_hicolordir}/512x512/apps/%{name}.png
|
||||
install -Dm644 public/launcher-icon-128.png %{buildroot}%{_hicolordir}/128x128/apps/%{name}.png
|
||||
|
||||
|
||||
|
||||
%files
|
||||
%license LICENSE.dependencies
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
|
||||
%{_bindir}/twintaillauncher
|
||||
%{_hicolordir}/512x512/apps/%{name}.png
|
||||
%{_hicolordir}/128x128/apps/%{name}.png
|
||||
%_appsdir/twintaillauncher.desktop
|
||||
|
||||
|
||||
|
||||
|
||||
%changelog
|
||||
* Tue Feb 3 2026 Yoong Jin <solomoncyj@gmail.com> - 1.1.15-0
|
||||
- Initial Package
|
||||
@@ -1,2 +0,0 @@
|
||||
// index of 5 skips 'ttl-v'
|
||||
rpm.version(gh_tag("TwintailTeam/TwintailLauncher")[5..]);
|
||||
@@ -1,8 +1,5 @@
|
||||
%define debug_package %nil
|
||||
|
||||
%global giturl https://github.com/Vencord/Vesktop
|
||||
%global appid dev.vencord.Vesktop
|
||||
|
||||
# Exclude private libraries
|
||||
%global __requires_exclude libffmpeg.so
|
||||
%global __provides_exclude_from %{_datadir}/vesktop/.*\\.so
|
||||
@@ -10,27 +7,28 @@
|
||||
Name: vesktop
|
||||
Obsoletes: VencordDesktop < 1.5.8-1
|
||||
Obsoletes: vencord-desktop < 1.5.8-1
|
||||
Version: 1.6.5
|
||||
Version: 1.6.3
|
||||
Release: 1%?dist
|
||||
License: GPL-3.0-or-later
|
||||
License: GPL-3.0
|
||||
Summary: Vesktop is a cross platform desktop app aiming to give you a snappier Discord experience with Vencord pre-installed
|
||||
URL: https://vesktop.dev
|
||||
URL: https://github.com/Vencord/Vesktop
|
||||
Group: Applications/Internet
|
||||
Source0: %{giturl}/archive/refs/tags/v%{version}.tar.gz
|
||||
Source1: %{giturl}/releases/download/v%{version}/%{appid}.metainfo.xml
|
||||
#Source1: launch.sh
|
||||
Source0: https://github.com/Vencord/Vesktop/archive/refs/tags/v%{version}.tar.gz
|
||||
Requires: xdg-utils
|
||||
%if 0%{?fedora} >= 44
|
||||
BuildRequires: nodejs24-npm-bin git
|
||||
%else
|
||||
BuildRequires: nodejs-npm git
|
||||
%endif
|
||||
# Conflicts: vesktop-bin
|
||||
|
||||
%description
|
||||
vesktop is a custom client designed to enhance your Discord experience
|
||||
while keeping everything lightweight.
|
||||
|
||||
%prep
|
||||
%git_clone %giturl v%version
|
||||
git init
|
||||
git remote add origin %url || :
|
||||
git reset --hard
|
||||
git fetch
|
||||
git checkout v%version
|
||||
|
||||
cat <<EOF > vesktop.desktop
|
||||
[Desktop Entry]
|
||||
@@ -46,11 +44,14 @@ StartupWMClass=vesktop
|
||||
Keywords=discord;vesktop;vencord;shelter;armcord;electron;
|
||||
EOF
|
||||
|
||||
|
||||
%build
|
||||
%__npx pnpm install --no-frozen-lockfile
|
||||
%__npx pnpm package:dir
|
||||
npx pnpm install --no-frozen-lockfile
|
||||
npx pnpm package:dir
|
||||
|
||||
|
||||
%install
|
||||
|
||||
mkdir -p %buildroot/usr/share/vesktop
|
||||
cp -r dist/*-unpacked/. %buildroot/usr/share/vesktop/.
|
||||
|
||||
@@ -59,7 +60,6 @@ ln -sf /usr/share/vesktop/vesktop %buildroot/usr/bin/vesktop
|
||||
ln -sf /usr/bin/vesktop %buildroot/usr/bin/vencorddesktop
|
||||
install -Dm644 vesktop.desktop %{buildroot}%{_datadir}/applications/vesktop.desktop
|
||||
install -Dm644 build/icon.svg %{buildroot}%{_iconsdir}/hicolor/scalable/apps/vesktop.svg
|
||||
install -Dm644 %{SOURCE1} %{buildroot}%{_metainfodir}/%{appid}.metainfo.xml
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
@@ -69,12 +69,10 @@ install -Dm644 %{SOURCE1} %{buildroot}%{_metainfodir}/%{appid}.metainfo.xml
|
||||
%{_datadir}/applications/vesktop.desktop
|
||||
%{_iconsdir}/hicolor/scalable/apps/vesktop.svg
|
||||
%{_datadir}/vesktop/*
|
||||
%{_metainfodir}/%{appid}.metainfo.xml
|
||||
|
||||
%changelog
|
||||
* Wed Feb 04 2026 Kaitlyn <kaitlynyaa@kaitlynyaa.dev> - 1.6.4
|
||||
- Added appstream metainfo and fixed buildrequires to adhere to new npm package naming scheme
|
||||
* Thu Jul 24 2025 Atmois <info@atmois.com> - 1.5.8-2
|
||||
- Rename from vencord-desktop to vesktop and amend the spec file accordingly
|
||||
* Tue Nov 07 2023 Cappy Ishihara <cappy@cappuchino.xyz> - 0.4.3-1
|
||||
- Initial package
|
||||
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
From 3039aec58203513f29edb03f84471ea941a0c226 Mon Sep 17 00:00:00 2001
|
||||
From: Nicolas Chauvet <kwizart@gmail.com>
|
||||
Date: Mon, 24 Sep 2018 18:28:26 +0200
|
||||
Subject: [PATCH] Use @SYSTEM wide ciphers for gnutls
|
||||
|
||||
Gnutls upstream has support for system defined ciphers list
|
||||
This is decribed at
|
||||
https://fedoraproject.org/wiki/Packaging:CryptoPolicies
|
||||
Also found on the debian wiki
|
||||
https://wiki.debian.org/CryptoPolicy
|
||||
|
||||
Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
|
||||
---
|
||||
modules/misc/gnutls.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/modules/misc/gnutls.c b/modules/misc/gnutls.c
|
||||
index 7b63cc34c4..3ca665f3d3 100644
|
||||
--- a/modules/misc/gnutls.c
|
||||
+++ b/modules/misc/gnutls.c
|
||||
@@ -768,12 +768,14 @@ static void CloseServer (vlc_tls_creds_t *crd)
|
||||
"hash functions and compression methods can be selected. " \
|
||||
"Refer to GNU TLS documentation for detailed syntax.")
|
||||
static const char *const priorities_values[] = {
|
||||
+ "@SYSTEM",
|
||||
"PERFORMANCE",
|
||||
"NORMAL",
|
||||
"SECURE128",
|
||||
"SECURE256",
|
||||
};
|
||||
static const char *const priorities_text[] = {
|
||||
+ N_("System (default to system crypto ciphers policy)"),
|
||||
N_("Performance (prioritize faster ciphers)"),
|
||||
N_("Normal"),
|
||||
N_("Secure 128-bits (exclude 256-bits ciphers)"),
|
||||
--
|
||||
2.25.4
|
||||
|
||||
@@ -0,0 +1,775 @@
|
||||
From 81d6d56df6e5a66ed99970e2c559539858f4a0b7 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
|
||||
Date: Sat, 5 May 2018 15:28:15 +0300
|
||||
Subject: [PATCH 01/11] avcodec: avoid signedness mismatch warning
|
||||
|
||||
Bitmask should be unsigned, but ffmpeg seems confused with itself.
|
||||
|
||||
(cherry picked from commit 8544233e7fde2965435e32a445494898440ecc30)
|
||||
---
|
||||
modules/codec/avcodec/audio.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/modules/codec/avcodec/audio.c b/modules/codec/avcodec/audio.c
|
||||
index 50a76c7a18e..e5af0ca5f2f 100644
|
||||
--- a/modules/codec/avcodec/audio.c
|
||||
+++ b/modules/codec/avcodec/audio.c
|
||||
@@ -593,9 +593,9 @@ static void SetupOutputFormat( decoder_t *p_dec, bool b_trust )
|
||||
uint32_t pi_order_src[i_order_max];
|
||||
|
||||
int i_channels_src = 0;
|
||||
- int64_t channel_layout =
|
||||
+ uint64_t channel_layout =
|
||||
p_sys->p_context->channel_layout ? p_sys->p_context->channel_layout :
|
||||
- av_get_default_channel_layout( p_sys->p_context->channels );
|
||||
+ (uint64_t)av_get_default_channel_layout( p_sys->p_context->channels );
|
||||
|
||||
if( channel_layout )
|
||||
{
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From c7709e7a048eb69b656d7f9663debbc1dde1f591 Mon Sep 17 00:00:00 2001
|
||||
From: Ilkka Ollakka <ileoo@videolan.org>
|
||||
Date: Wed, 5 Jul 2023 12:51:34 +0300
|
||||
Subject: [PATCH 02/11] avcodec: use p_dec->fmt_out instead of context channels
|
||||
on audio channel-count
|
||||
|
||||
reduces the need of ifdefs when adding ch_layout support
|
||||
|
||||
(cherry picked from commit bddf5ba19111d1cc4463d9876c4bc4ba75f82d7f)
|
||||
---
|
||||
modules/codec/avcodec/audio.c | 14 +++++++-------
|
||||
1 file changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/modules/codec/avcodec/audio.c b/modules/codec/avcodec/audio.c
|
||||
index e5af0ca5f2f..26166c084e5 100644
|
||||
--- a/modules/codec/avcodec/audio.c
|
||||
+++ b/modules/codec/avcodec/audio.c
|
||||
@@ -484,15 +484,15 @@ static block_t * ConvertAVFrame( decoder_t *p_dec, AVFrame *frame )
|
||||
/* Interleave audio if required */
|
||||
if( av_sample_fmt_is_planar( ctx->sample_fmt ) )
|
||||
{
|
||||
- p_block = block_Alloc(frame->linesize[0] * ctx->channels);
|
||||
+ p_block = block_Alloc(frame->linesize[0] * p_dec->fmt_out.audio.i_channels );
|
||||
if ( likely(p_block) )
|
||||
{
|
||||
- const void *planes[ctx->channels];
|
||||
- for (int i = 0; i < ctx->channels; i++)
|
||||
+ const void *planes[p_dec->fmt_out.audio.i_channels];
|
||||
+ for (int i = 0; i < p_dec->fmt_out.audio.i_channels; i++)
|
||||
planes[i] = frame->extended_data[i];
|
||||
|
||||
aout_Interleave(p_block->p_buffer, planes, frame->nb_samples,
|
||||
- ctx->channels, p_dec->fmt_out.audio.i_format);
|
||||
+ p_dec->fmt_out.audio.i_channels, p_dec->fmt_out.audio.i_format);
|
||||
p_block->i_nb_samples = frame->nb_samples;
|
||||
}
|
||||
av_frame_free(&frame);
|
||||
@@ -511,7 +511,7 @@ static block_t * ConvertAVFrame( decoder_t *p_dec, AVFrame *frame )
|
||||
{
|
||||
aout_ChannelExtract( p_buffer->p_buffer,
|
||||
p_dec->fmt_out.audio.i_channels,
|
||||
- p_block->p_buffer, ctx->channels,
|
||||
+ p_block->p_buffer, p_dec->fmt_out.audio.i_channels,
|
||||
p_block->i_nb_samples, p_sys->pi_extraction,
|
||||
p_dec->fmt_out.audio.i_bitspersample );
|
||||
p_buffer->i_nb_samples = p_block->i_nb_samples;
|
||||
@@ -600,13 +600,13 @@ static void SetupOutputFormat( decoder_t *p_dec, bool b_trust )
|
||||
if( channel_layout )
|
||||
{
|
||||
for( unsigned i = 0; i < i_order_max
|
||||
- && i_channels_src < p_sys->p_context->channels; i++ )
|
||||
+ && i_channels_src < p_dec->fmt_out.audio.i_channels; i++ )
|
||||
{
|
||||
if( channel_layout & pi_channels_map[i][0] )
|
||||
pi_order_src[i_channels_src++] = pi_channels_map[i][1];
|
||||
}
|
||||
|
||||
- if( i_channels_src != p_sys->p_context->channels && b_trust )
|
||||
+ if( i_channels_src != p_dec->fmt_out.audio.i_channels && b_trust )
|
||||
msg_Err( p_dec, "Channel layout not understood" );
|
||||
|
||||
/* Detect special dual mono case */
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From 99b14966182995314f5b29fd972d6a9000ea3e00 Mon Sep 17 00:00:00 2001
|
||||
From: Ilkka Ollakka <ileoo@videolan.org>
|
||||
Date: Wed, 5 Jul 2023 13:33:09 +0300
|
||||
Subject: [PATCH 03/11] avcodec: audio decoder to use ch_layout
|
||||
|
||||
(cherry picked from commit 496f0f2a659c1339d1e37330d446e9b6ce96e76b)
|
||||
---
|
||||
modules/codec/avcodec/audio.c | 42 ++++++++++++++++++++++++++++-------
|
||||
1 file changed, 34 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/modules/codec/avcodec/audio.c b/modules/codec/avcodec/audio.c
|
||||
index 26166c084e5..ad8a40ab4ed 100644
|
||||
--- a/modules/codec/avcodec/audio.c
|
||||
+++ b/modules/codec/avcodec/audio.c
|
||||
@@ -139,7 +139,11 @@ static int OpenAudioCodec( decoder_t *p_dec )
|
||||
}
|
||||
|
||||
ctx->sample_rate = p_dec->fmt_in.audio.i_rate;
|
||||
+#if LIBAVCODEC_VERSION_CHECK(59, 999, 999, 24, 100)
|
||||
+ av_channel_layout_default( &ctx->ch_layout, p_dec->fmt_in.audio.i_channels );
|
||||
+#else
|
||||
ctx->channels = p_dec->fmt_in.audio.i_channels;
|
||||
+#endif
|
||||
ctx->block_align = p_dec->fmt_in.audio.i_blockalign;
|
||||
ctx->bit_rate = p_dec->fmt_in.i_bitrate;
|
||||
ctx->bits_per_coded_sample = p_dec->fmt_in.audio.i_bitspersample;
|
||||
@@ -395,12 +399,17 @@ static int DecodeBlock( decoder_t *p_dec, block_t **pp_block )
|
||||
ret = avcodec_receive_frame( ctx, frame );
|
||||
if( ret == 0 )
|
||||
{
|
||||
+#if LIBAVCODEC_VERSION_CHECK(59, 999, 999, 24, 100)
|
||||
+ int channels = frame->ch_layout.nb_channels;
|
||||
+#else
|
||||
+ int channels = ctx->channels;
|
||||
+#endif
|
||||
/* checks and init from first decoded frame */
|
||||
- if( ctx->channels <= 0 || ctx->channels > INPUT_CHAN_MAX
|
||||
+ if( channels <= 0 || channels > INPUT_CHAN_MAX
|
||||
|| ctx->sample_rate <= 0 )
|
||||
{
|
||||
msg_Warn( p_dec, "invalid audio properties channels count %d, sample rate %d",
|
||||
- ctx->channels, ctx->sample_rate );
|
||||
+ channels, ctx->sample_rate );
|
||||
goto drop;
|
||||
}
|
||||
else if( p_dec->fmt_out.audio.i_rate != (unsigned int)ctx->sample_rate )
|
||||
@@ -580,6 +589,16 @@ static void SetupOutputFormat( decoder_t *p_dec, bool b_trust )
|
||||
p_dec->fmt_out.audio.i_rate = p_sys->p_context->sample_rate;
|
||||
|
||||
/* */
|
||||
+#if LIBAVCODEC_VERSION_CHECK(59, 999, 999, 24, 100)
|
||||
+ if( p_sys->i_previous_channels == p_sys->p_context->ch_layout.nb_channels &&
|
||||
+ p_sys->i_previous_layout == p_sys->p_context->ch_layout.u.mask )
|
||||
+ return;
|
||||
+ if( b_trust )
|
||||
+ {
|
||||
+ p_sys->i_previous_channels = p_sys->p_context->ch_layout.nb_channels;
|
||||
+ p_sys->i_previous_layout = p_sys->p_context->ch_layout.u.mask;
|
||||
+ }
|
||||
+#else
|
||||
if( p_sys->i_previous_channels == p_sys->p_context->channels &&
|
||||
p_sys->i_previous_layout == p_sys->p_context->channel_layout )
|
||||
return;
|
||||
@@ -588,25 +607,32 @@ static void SetupOutputFormat( decoder_t *p_dec, bool b_trust )
|
||||
p_sys->i_previous_channels = p_sys->p_context->channels;
|
||||
p_sys->i_previous_layout = p_sys->p_context->channel_layout;
|
||||
}
|
||||
+#endif
|
||||
|
||||
const unsigned i_order_max = sizeof(pi_channels_map)/sizeof(*pi_channels_map);
|
||||
uint32_t pi_order_src[i_order_max];
|
||||
|
||||
int i_channels_src = 0;
|
||||
- uint64_t channel_layout =
|
||||
+#if LIBAVCODEC_VERSION_CHECK(59, 999, 999, 24, 100)
|
||||
+ uint64_t channel_layout_mask = p_sys->p_context->ch_layout.u.mask;
|
||||
+ int channel_count = p_sys->p_context->ch_layout.nb_channels;
|
||||
+#else
|
||||
+ uint64_t channel_layout_mask =
|
||||
p_sys->p_context->channel_layout ? p_sys->p_context->channel_layout :
|
||||
(uint64_t)av_get_default_channel_layout( p_sys->p_context->channels );
|
||||
+ int channel_count = p_sys->p_context->channels;
|
||||
+#endif
|
||||
|
||||
- if( channel_layout )
|
||||
+ if( channel_layout_mask )
|
||||
{
|
||||
for( unsigned i = 0; i < i_order_max
|
||||
- && i_channels_src < p_dec->fmt_out.audio.i_channels; i++ )
|
||||
+ && i_channels_src < channel_count; i++ )
|
||||
{
|
||||
- if( channel_layout & pi_channels_map[i][0] )
|
||||
+ if( channel_layout_mask & pi_channels_map[i][0] )
|
||||
pi_order_src[i_channels_src++] = pi_channels_map[i][1];
|
||||
}
|
||||
|
||||
- if( i_channels_src != p_dec->fmt_out.audio.i_channels && b_trust )
|
||||
+ if( i_channels_src != channel_count && b_trust )
|
||||
msg_Err( p_dec, "Channel layout not understood" );
|
||||
|
||||
/* Detect special dual mono case */
|
||||
@@ -638,7 +664,7 @@ static void SetupOutputFormat( decoder_t *p_dec, bool b_trust )
|
||||
{
|
||||
msg_Warn( p_dec, "no channel layout found");
|
||||
p_dec->fmt_out.audio.i_physical_channels = 0;
|
||||
- p_dec->fmt_out.audio.i_channels = p_sys->p_context->channels;
|
||||
+ p_dec->fmt_out.audio.i_channels = channel_count;
|
||||
}
|
||||
|
||||
aout_FormatPrepare( &p_dec->fmt_out.audio );
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From c44edb85e4f25cbc7a848211d2d3ca9f03bd46e6 Mon Sep 17 00:00:00 2001
|
||||
From: Ilkka Ollakka <ileoo@videolan.org>
|
||||
Date: Tue, 4 Jul 2023 16:52:38 +0300
|
||||
Subject: [PATCH 04/11] avcodec: use p_enc audio channels instead of context
|
||||
channels in encoder
|
||||
|
||||
Allows to have less conditions in code when adding new ch_layout use
|
||||
|
||||
(cherry-picked from commit 29747a8abb98ba53a64aa6761983891eeed2e0e4)
|
||||
---
|
||||
modules/codec/avcodec/encoder.c | 24 ++++++++++++------------
|
||||
1 file changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c
|
||||
index 4919ccf0e0e..52848de0658 100644
|
||||
--- a/modules/codec/avcodec/encoder.c
|
||||
+++ b/modules/codec/avcodec/encoder.c
|
||||
@@ -790,7 +790,7 @@ int InitVideoEnc( vlc_object_t *p_this )
|
||||
}
|
||||
}
|
||||
}
|
||||
- if( i_channels_src != p_context->channels )
|
||||
+ if( i_channels_src != p_enc->fmt_out.audio.i_channels )
|
||||
msg_Err( p_enc, "Channel layout not understood" );
|
||||
|
||||
p_sys->i_channels_to_reorder =
|
||||
@@ -897,7 +897,7 @@ int InitVideoEnc( vlc_object_t *p_this )
|
||||
if( ret )
|
||||
{
|
||||
if( p_enc->fmt_in.i_cat != AUDIO_ES ||
|
||||
- (p_context->channels <= 2 && i_codec_id != AV_CODEC_ID_MP2
|
||||
+ (p_enc->fmt_out.audio.i_channels <= 2 && i_codec_id != AV_CODEC_ID_MP2
|
||||
&& i_codec_id != AV_CODEC_ID_MP3) )
|
||||
errmsg:
|
||||
{
|
||||
@@ -922,7 +922,7 @@ errmsg:
|
||||
goto error;
|
||||
}
|
||||
|
||||
- if( p_context->channels > 2 )
|
||||
+ if( p_enc->fmt_out.audio.i_channels > 2 )
|
||||
{
|
||||
p_context->channels = 2;
|
||||
p_context->channel_layout = channel_mask[p_context->channels][1];
|
||||
@@ -1028,7 +1028,7 @@ errmsg:
|
||||
p_context->frame_size :
|
||||
AV_INPUT_BUFFER_MIN_SIZE;
|
||||
p_sys->i_buffer_out = av_samples_get_buffer_size(NULL,
|
||||
- p_sys->p_context->channels, p_sys->i_frame_size,
|
||||
+ p_enc->fmt_out.audio.i_channels, p_sys->i_frame_size,
|
||||
p_sys->p_context->sample_fmt, DEFAULT_ALIGN);
|
||||
p_sys->p_buffer = av_malloc( p_sys->i_buffer_out );
|
||||
if ( unlikely( p_sys->p_buffer == NULL ) )
|
||||
@@ -1278,7 +1278,7 @@ static block_t *handle_delay_buffer( encoder_t *p_enc, encoder_sys_t *p_sys, uns
|
||||
{
|
||||
block_t *p_block = NULL;
|
||||
//How much we need to copy from new packet
|
||||
- const size_t leftover = leftover_samples * p_sys->p_context->channels * p_sys->i_sample_bytes;
|
||||
+ const size_t leftover = leftover_samples * p_enc->fmt_out.audio.i_channels * p_sys->i_sample_bytes;
|
||||
|
||||
av_frame_unref( p_sys->frame );
|
||||
p_sys->frame->format = p_sys->p_context->sample_fmt;
|
||||
@@ -1301,7 +1301,7 @@ static block_t *handle_delay_buffer( encoder_t *p_enc, encoder_sys_t *p_sys, uns
|
||||
// We need to deinterleave from p_aout_buf to p_buffer the leftover bytes
|
||||
if( p_sys->b_planar )
|
||||
aout_Deinterleave( p_sys->p_interleave_buf, p_sys->p_buffer,
|
||||
- p_sys->i_frame_size, p_sys->p_context->channels, p_enc->fmt_in.i_codec );
|
||||
+ p_sys->i_frame_size, p_enc->fmt_out.audio.i_channels, p_enc->fmt_in.i_codec );
|
||||
else
|
||||
memcpy( p_sys->p_buffer + buffer_delay, p_aout_buf->p_buffer, leftover);
|
||||
|
||||
@@ -1319,7 +1319,7 @@ static block_t *handle_delay_buffer( encoder_t *p_enc, encoder_sys_t *p_sys, uns
|
||||
memset( p_sys->p_buffer + (leftover+buffer_delay), 0, padding_size );
|
||||
buffer_delay += padding_size;
|
||||
}
|
||||
- if( avcodec_fill_audio_frame( p_sys->frame, p_sys->p_context->channels,
|
||||
+ if( avcodec_fill_audio_frame( p_sys->frame, p_enc->fmt_out.audio.i_channels,
|
||||
p_sys->p_context->sample_fmt, p_sys->b_planar ? p_sys->p_interleave_buf : p_sys->p_buffer,
|
||||
p_sys->i_buffer_out,
|
||||
DEFAULT_ALIGN) < 0 )
|
||||
@@ -1349,7 +1349,7 @@ static block_t *EncodeAudio( encoder_t *p_enc, block_t *p_aout_buf )
|
||||
|
||||
//i_bytes_left is amount of bytes we get
|
||||
i_samples_left = p_aout_buf ? p_aout_buf->i_nb_samples : 0;
|
||||
- buffer_delay = p_sys->i_samples_delay * p_sys->i_sample_bytes * p_sys->p_context->channels;
|
||||
+ buffer_delay = p_sys->i_samples_delay * p_sys->i_sample_bytes * p_enc->fmt_out.audio.i_channels;
|
||||
|
||||
//p_sys->i_buffer_out = p_sys->i_frame_size * chan * p_sys->i_sample_bytes
|
||||
//Calculate how many bytes we would need from current buffer to fill frame
|
||||
@@ -1418,12 +1418,12 @@ static block_t *EncodeAudio( encoder_t *p_enc, block_t *p_aout_buf )
|
||||
p_sys->frame->channels = p_sys->p_context->channels;
|
||||
|
||||
const int in_bytes = p_sys->frame->nb_samples *
|
||||
- p_sys->p_context->channels * p_sys->i_sample_bytes;
|
||||
+ p_enc->fmt_out.audio.i_channels* p_sys->i_sample_bytes;
|
||||
|
||||
if( p_sys->b_planar )
|
||||
{
|
||||
aout_Deinterleave( p_sys->p_buffer, p_aout_buf->p_buffer,
|
||||
- p_sys->frame->nb_samples, p_sys->p_context->channels, p_enc->fmt_in.i_codec );
|
||||
+ p_sys->frame->nb_samples, p_enc->fmt_out.audio.i_channels, p_enc->fmt_in.i_codec );
|
||||
|
||||
}
|
||||
else
|
||||
@@ -1431,7 +1431,7 @@ static block_t *EncodeAudio( encoder_t *p_enc, block_t *p_aout_buf )
|
||||
memcpy(p_sys->p_buffer, p_aout_buf->p_buffer, in_bytes);
|
||||
}
|
||||
|
||||
- if( avcodec_fill_audio_frame( p_sys->frame, p_sys->p_context->channels,
|
||||
+ if( avcodec_fill_audio_frame( p_sys->frame, p_enc->fmt_out.audio.i_channels,
|
||||
p_sys->p_context->sample_fmt,
|
||||
p_sys->p_buffer,
|
||||
p_sys->i_buffer_out,
|
||||
@@ -1457,7 +1457,7 @@ static block_t *EncodeAudio( encoder_t *p_enc, block_t *p_aout_buf )
|
||||
if( p_aout_buf->i_nb_samples > 0 )
|
||||
{
|
||||
memcpy( p_sys->p_buffer + buffer_delay, p_aout_buf->p_buffer,
|
||||
- p_aout_buf->i_nb_samples * p_sys->i_sample_bytes * p_sys->p_context->channels);
|
||||
+ p_aout_buf->i_nb_samples * p_sys->i_sample_bytes * p_enc->fmt_out.audio.i_channels);
|
||||
p_sys->i_samples_delay += p_aout_buf->i_nb_samples;
|
||||
}
|
||||
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From b8ad80a20e9e84082dac2848070d251fa68412c7 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fran=C3=A7ois=20Cartegnie?= <fcvlcdev@free.fr>
|
||||
Date: Tue, 23 Apr 2024 13:13:30 +0700
|
||||
Subject: [PATCH 05/11] codec: avcodec: map AYUV as RAWVIDEO with ffmpeg 6.0
|
||||
|
||||
(cherry picked from commit 955ef939467a628eb8da08e0d5eaefc9a3484cba)
|
||||
---
|
||||
modules/codec/avcodec/fourcc.c | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules/codec/avcodec/fourcc.c b/modules/codec/avcodec/fourcc.c
|
||||
index 33c6cae09ab..97f3188211d 100644
|
||||
--- a/modules/codec/avcodec/fourcc.c
|
||||
+++ b/modules/codec/avcodec/fourcc.c
|
||||
@@ -182,8 +182,12 @@ static const struct vlc_avcodec_fourcc video_codecs[] =
|
||||
/* AV_CODEC_ID_V210X */
|
||||
{ VLC_CODEC_TMV, AV_CODEC_ID_TMV },
|
||||
{ VLC_CODEC_V210, AV_CODEC_ID_V210 },
|
||||
-#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 54, 50, 100 ) && LIBAVCODEC_VERSION_MICRO >= 100
|
||||
+#if LIBAVCODEC_VERSION_MICRO >= 100
|
||||
+# if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 59, 42, 102 )
|
||||
+ { VLC_CODEC_VUYA, AV_CODEC_ID_RAWVIDEO },
|
||||
+# elif LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 54, 50, 100 )
|
||||
{ VLC_CODEC_VUYA, AV_CODEC_ID_AYUV },
|
||||
+# endif
|
||||
#endif
|
||||
/* AV_CODEC_ID_DPX */
|
||||
{ VLC_CODEC_MAD, AV_CODEC_ID_MAD },
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From 58c05240c26b6eef56e7c5ab35b14ccd8377667f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fran=C3=A7ois=20Cartegnie?= <fcvlcdev@free.fr>
|
||||
Date: Thu, 13 Jun 2024 12:21:58 +0700
|
||||
Subject: [PATCH 06/11] avcodec: encoder: fix channel_layout conditionals
|
||||
|
||||
---
|
||||
modules/codec/avcodec/encoder.c | 11 ++++++++---
|
||||
1 file changed, 8 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c
|
||||
index 52848de0658..6bd58f5071d 100644
|
||||
--- a/modules/codec/avcodec/encoder.c
|
||||
+++ b/modules/codec/avcodec/encoder.c
|
||||
@@ -43,12 +43,13 @@
|
||||
#include <vlc_cpu.h>
|
||||
|
||||
#include <libavcodec/avcodec.h>
|
||||
-#include <libavutil/channel_layout.h>
|
||||
|
||||
#include "avcodec.h"
|
||||
#include "avcommon.h"
|
||||
|
||||
-#if LIBAVUTIL_VERSION_CHECK( 52,2,6,0,0 )
|
||||
+#define API_CHANNEL_LAYOUT (LIBAVUTIL_VERSION_CHECK( 52, 2, 6, 0, 100))
|
||||
+
|
||||
+#if API_CHANNEL_LAYOUT
|
||||
# include <libavutil/channel_layout.h>
|
||||
#endif
|
||||
|
||||
@@ -157,6 +158,7 @@ struct encoder_sys_t
|
||||
|
||||
|
||||
/* Taken from audio.c*/
|
||||
+#if API_CHANNEL_LAYOUT
|
||||
static const uint64_t pi_channels_map[][2] =
|
||||
{
|
||||
{ AV_CH_FRONT_LEFT, AOUT_CHAN_LEFT },
|
||||
@@ -193,6 +195,7 @@ static const uint32_t channel_mask[][2] = {
|
||||
{AOUT_CHANS_7_1, AV_CH_LAYOUT_7POINT1},
|
||||
{AOUT_CHANS_8_1, AV_CH_LAYOUT_OCTAGONAL},
|
||||
};
|
||||
+#endif
|
||||
|
||||
static const char *const ppsz_enc_options[] = {
|
||||
"keyint", "bframes", "vt", "qmin", "qmax", "codec", "hq",
|
||||
@@ -746,7 +749,7 @@ int InitVideoEnc( vlc_object_t *p_this )
|
||||
p_context->time_base.num = 1;
|
||||
p_context->time_base.den = p_context->sample_rate;
|
||||
p_context->channels = p_enc->fmt_out.audio.i_channels;
|
||||
-#if LIBAVUTIL_VERSION_CHECK( 52, 2, 6, 0, 0)
|
||||
+#if API_CHANNEL_LAYOUT
|
||||
p_context->channel_layout = channel_mask[p_context->channels][1];
|
||||
|
||||
/* Setup Channel ordering for multichannel audio
|
||||
@@ -925,7 +928,9 @@ errmsg:
|
||||
if( p_enc->fmt_out.audio.i_channels > 2 )
|
||||
{
|
||||
p_context->channels = 2;
|
||||
+#if API_CHANNEL_LAYOUT
|
||||
p_context->channel_layout = channel_mask[p_context->channels][1];
|
||||
+#endif
|
||||
|
||||
/* Change fmt_in in order to ask for a channels conversion */
|
||||
p_enc->fmt_in.audio.i_channels =
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From 3db6e677680a1a94e473fe9d9fc121af34cdcf2b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fran=C3=A7ois=20Cartegnie?= <fcvlcdev@free.fr>
|
||||
Date: Sat, 17 Aug 2024 11:22:33 +0700
|
||||
Subject: [PATCH 07/11] codec: avcodec: fix audio channel_layout conditionals
|
||||
|
||||
---
|
||||
modules/codec/avcodec/audio.c | 23 +++++++++++++++--------
|
||||
1 file changed, 15 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/modules/codec/avcodec/audio.c b/modules/codec/avcodec/audio.c
|
||||
index ad8a40ab4ed..c74757c76ae 100644
|
||||
--- a/modules/codec/avcodec/audio.c
|
||||
+++ b/modules/codec/avcodec/audio.c
|
||||
@@ -41,8 +41,11 @@
|
||||
#include <libavcodec/avcodec.h>
|
||||
#include <libavutil/mem.h>
|
||||
|
||||
-#include <libavutil/channel_layout.h>
|
||||
+#define API_CHANNEL_LAYOUT (LIBAVUTIL_VERSION_CHECK( 52, 2, 6, 0, 100))
|
||||
|
||||
+#if API_CHANNEL_LAYOUT
|
||||
+# include <libavutil/channel_layout.h>
|
||||
+#endif
|
||||
|
||||
/*****************************************************************************
|
||||
* decoder_sys_t : decoder descriptor
|
||||
@@ -598,7 +601,7 @@ static void SetupOutputFormat( decoder_t *p_dec, bool b_trust )
|
||||
p_sys->i_previous_channels = p_sys->p_context->ch_layout.nb_channels;
|
||||
p_sys->i_previous_layout = p_sys->p_context->ch_layout.u.mask;
|
||||
}
|
||||
-#else
|
||||
+#elif API_CHANNEL_LAYOUT
|
||||
if( p_sys->i_previous_channels == p_sys->p_context->channels &&
|
||||
p_sys->i_previous_layout == p_sys->p_context->channel_layout )
|
||||
return;
|
||||
@@ -612,15 +615,19 @@ static void SetupOutputFormat( decoder_t *p_dec, bool b_trust )
|
||||
const unsigned i_order_max = sizeof(pi_channels_map)/sizeof(*pi_channels_map);
|
||||
uint32_t pi_order_src[i_order_max];
|
||||
|
||||
- int i_channels_src = 0;
|
||||
+ int i_channels_src = 0, channel_count;
|
||||
+ uint64_t channel_layout_mask;
|
||||
#if LIBAVCODEC_VERSION_CHECK(59, 999, 999, 24, 100)
|
||||
- uint64_t channel_layout_mask = p_sys->p_context->ch_layout.u.mask;
|
||||
- int channel_count = p_sys->p_context->ch_layout.nb_channels;
|
||||
-#else
|
||||
- uint64_t channel_layout_mask =
|
||||
+ channel_layout_mask = p_sys->p_context->ch_layout.u.mask;
|
||||
+ channel_count = p_sys->p_context->ch_layout.nb_channels;
|
||||
+#elif API_CHANNEL_LAYOUT
|
||||
+ channel_layout_mask =
|
||||
p_sys->p_context->channel_layout ? p_sys->p_context->channel_layout :
|
||||
(uint64_t)av_get_default_channel_layout( p_sys->p_context->channels );
|
||||
- int channel_count = p_sys->p_context->channels;
|
||||
+ channel_count = p_sys->p_context->channels;
|
||||
+#else
|
||||
+ channel_layout_mask = NULL;
|
||||
+ channel_count = p_sys->p_context->channels;
|
||||
#endif
|
||||
|
||||
if( channel_layout_mask )
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From b5bb9bda03a06fc1cfd682dacb571b688b5558d9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fran=C3=A7ois=20Cartegnie?= <fcvlcdev@free.fr>
|
||||
Date: Tue, 23 Apr 2024 13:14:53 +0700
|
||||
Subject: [PATCH 08/11] demux/mux: avformat: use ch_layout from ffmpeg 5.1
|
||||
|
||||
merger pick from commit a55ec32ab3760d9edb6f05481cd3a981aa42878d
|
||||
and fixup 195f0c98599b55950c49a62f98d9d3495be310df
|
||||
---
|
||||
modules/demux/avformat/demux.c | 4 ++++
|
||||
modules/demux/avformat/mux.c | 4 ++++
|
||||
2 files changed, 8 insertions(+)
|
||||
|
||||
diff --git a/modules/demux/avformat/demux.c b/modules/demux/avformat/demux.c
|
||||
index 3b355bb3fae..830dc0157e2 100644
|
||||
--- a/modules/demux/avformat/demux.c
|
||||
+++ b/modules/demux/avformat/demux.c
|
||||
@@ -401,7 +401,11 @@ int avformat_OpenDemux( vlc_object_t *p_this )
|
||||
es_format_Init( &es_fmt, AUDIO_ES, fcc );
|
||||
es_fmt.i_original_fourcc = CodecTagToFourcc( cp->codec_tag );
|
||||
es_fmt.i_bitrate = cp->bit_rate;
|
||||
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 59, 24, 100 ) && LIBAVCODEC_VERSION_MICRO >= 100
|
||||
+ es_fmt.audio.i_channels = cp->ch_layout.nb_channels;
|
||||
+#else
|
||||
es_fmt.audio.i_channels = cp->channels;
|
||||
+#endif
|
||||
es_fmt.audio.i_rate = cp->sample_rate;
|
||||
es_fmt.audio.i_bitspersample = cp->bits_per_coded_sample;
|
||||
es_fmt.audio.i_blockalign = cp->block_align;
|
||||
diff --git a/modules/demux/avformat/mux.c b/modules/demux/avformat/mux.c
|
||||
index c708276954c..8bf8735885f 100644
|
||||
--- a/modules/demux/avformat/mux.c
|
||||
+++ b/modules/demux/avformat/mux.c
|
||||
@@ -267,7 +267,11 @@ static int AddStream( sout_mux_t *p_mux, sout_input_t *p_input )
|
||||
{
|
||||
case AUDIO_ES:
|
||||
codecpar->codec_type = AVMEDIA_TYPE_AUDIO;
|
||||
+#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT( 59, 24, 100 ) && LIBAVCODEC_VERSION_MICRO >= 100
|
||||
+ av_channel_layout_default( &codecpar->ch_layout, fmt->audio.i_channels );
|
||||
+#else
|
||||
codecpar->channels = fmt->audio.i_channels;
|
||||
+#endif
|
||||
codecpar->sample_rate = fmt->audio.i_rate;
|
||||
stream->time_base = (AVRational){1, codecpar->sample_rate};
|
||||
if (fmt->i_bitrate == 0) {
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From fa001cda7f6b22843438c39dfc078050bb54c72a Mon Sep 17 00:00:00 2001
|
||||
From: Ilkka Ollakka <ileoo@videolan.org>
|
||||
Date: Tue, 4 Jul 2023 16:53:43 +0300
|
||||
Subject: [PATCH 09/11] avcodec: add handling of new ch_layout in audio encoder
|
||||
|
||||
conditioned to avcodec version where is it added
|
||||
|
||||
(cherry picked from commit c4302ca59dd79efd7208a45a3fcdc44388fd03a8)
|
||||
---
|
||||
modules/codec/avcodec/encoder.c | 15 +++++++++++++--
|
||||
1 file changed, 13 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c
|
||||
index 6bd58f5071d..757f93b4684 100644
|
||||
--- a/modules/codec/avcodec/encoder.c
|
||||
+++ b/modules/codec/avcodec/encoder.c
|
||||
@@ -927,11 +927,14 @@ errmsg:
|
||||
|
||||
if( p_enc->fmt_out.audio.i_channels > 2 )
|
||||
{
|
||||
+#if LIBAVCODEC_VERSION_CHECK(59, 999, 999, 24, 100)
|
||||
+ av_channel_layout_default( &p_context->ch_layout, 2 );
|
||||
+#else
|
||||
p_context->channels = 2;
|
||||
-#if API_CHANNEL_LAYOUT
|
||||
+# if API_CHANNEL_LAYOUT
|
||||
p_context->channel_layout = channel_mask[p_context->channels][1];
|
||||
+# endif
|
||||
#endif
|
||||
-
|
||||
/* Change fmt_in in order to ask for a channels conversion */
|
||||
p_enc->fmt_in.audio.i_channels =
|
||||
p_enc->fmt_out.audio.i_channels = 2;
|
||||
@@ -1288,8 +1291,12 @@ static block_t *handle_delay_buffer( encoder_t *p_enc, encoder_sys_t *p_sys, uns
|
||||
av_frame_unref( p_sys->frame );
|
||||
p_sys->frame->format = p_sys->p_context->sample_fmt;
|
||||
p_sys->frame->nb_samples = leftover_samples + p_sys->i_samples_delay;
|
||||
+#if LIBAVCODEC_VERSION_CHECK(59, 999, 999, 24, 100)
|
||||
+ av_channel_layout_copy(&p_sys->frame->ch_layout, &p_sys->p_context->ch_layout);
|
||||
+#else
|
||||
p_sys->frame->channel_layout = p_sys->p_context->channel_layout;
|
||||
p_sys->frame->channels = p_sys->p_context->channels;
|
||||
+#endif
|
||||
|
||||
p_sys->frame->pts = date_Get( &p_sys->buffer_date ) * p_sys->p_context->time_base.den /
|
||||
CLOCK_FREQ / p_sys->p_context->time_base.num;
|
||||
@@ -1419,8 +1426,12 @@ static block_t *EncodeAudio( encoder_t *p_enc, block_t *p_aout_buf )
|
||||
p_sys->frame->pts = date_Get( &p_sys->buffer_date ) * p_sys->p_context->time_base.den /
|
||||
CLOCK_FREQ / p_sys->p_context->time_base.num;
|
||||
|
||||
+#if LIBAVCODEC_VERSION_CHECK(59, 999, 999, 24, 100)
|
||||
+ av_channel_layout_copy(&p_sys->frame->ch_layout, &p_sys->p_context->ch_layout);
|
||||
+#else
|
||||
p_sys->frame->channel_layout = p_sys->p_context->channel_layout;
|
||||
p_sys->frame->channels = p_sys->p_context->channels;
|
||||
+#endif
|
||||
|
||||
const int in_bytes = p_sys->frame->nb_samples *
|
||||
p_enc->fmt_out.audio.i_channels* p_sys->i_sample_bytes;
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From bb62989ccc12866d308e6f38dc1513de9cb1c6da Mon Sep 17 00:00:00 2001
|
||||
From: Ilkka Ollakka <ileoo@videolan.org>
|
||||
Date: Tue, 4 Jul 2023 16:55:28 +0300
|
||||
Subject: [PATCH 10/11] avcodec: use ch_layout for channel layout in audio
|
||||
encoder
|
||||
|
||||
channels and channel_layout has been deprecated in FFMPEG 5.1 and will be removed eventually
|
||||
|
||||
also always create the mapping, as ch_layout is always there
|
||||
|
||||
(cherry picked from commit b73dc8841d999c6be9de718cd2cd3aeb13279792)
|
||||
---
|
||||
modules/codec/avcodec/encoder.c | 53 ++++++++++++++-------------------
|
||||
1 file changed, 22 insertions(+), 31 deletions(-)
|
||||
|
||||
diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c
|
||||
index 757f93b4684..ae746c99fc8 100644
|
||||
--- a/modules/codec/avcodec/encoder.c
|
||||
+++ b/modules/codec/avcodec/encoder.c
|
||||
@@ -183,6 +183,7 @@ static const uint64_t pi_channels_map[][2] =
|
||||
{ AV_CH_STEREO_RIGHT, 0 },
|
||||
};
|
||||
|
||||
+# if !LIBAVCODEC_VERSION_CHECK(59, 999, 999, 24, 100)
|
||||
static const uint32_t channel_mask[][2] = {
|
||||
{0,0},
|
||||
{AOUT_CHAN_CENTER, AV_CH_LAYOUT_MONO},
|
||||
@@ -195,6 +196,7 @@ static const uint32_t channel_mask[][2] = {
|
||||
{AOUT_CHANS_7_1, AV_CH_LAYOUT_7POINT1},
|
||||
{AOUT_CHANS_8_1, AV_CH_LAYOUT_OCTAGONAL},
|
||||
};
|
||||
+# endif
|
||||
#endif
|
||||
|
||||
static const char *const ppsz_enc_options[] = {
|
||||
@@ -748,49 +750,36 @@ int InitVideoEnc( vlc_object_t *p_this )
|
||||
date_Set( &p_sys->buffer_date, AV_NOPTS_VALUE );
|
||||
p_context->time_base.num = 1;
|
||||
p_context->time_base.den = p_context->sample_rate;
|
||||
- p_context->channels = p_enc->fmt_out.audio.i_channels;
|
||||
-#if API_CHANNEL_LAYOUT
|
||||
- p_context->channel_layout = channel_mask[p_context->channels][1];
|
||||
|
||||
- /* Setup Channel ordering for multichannel audio
|
||||
+ /* Setup Channel ordering for audio
|
||||
* as VLC channel order isn't same as libavcodec expects
|
||||
*/
|
||||
|
||||
p_sys->i_channels_to_reorder = 0;
|
||||
|
||||
- /* Specified order
|
||||
+ /* Create channel layout for avcodec
|
||||
* Copied from audio.c
|
||||
*/
|
||||
- const unsigned i_order_max = 8 * sizeof(p_context->channel_layout);
|
||||
- uint32_t pi_order_dst[AOUT_CHAN_MAX] = { };
|
||||
+#if API_CHANNEL_LAYOUT
|
||||
+ uint32_t pi_order_dst[AOUT_CHAN_MAX] = { 0 };
|
||||
uint32_t order_mask = 0;
|
||||
int i_channels_src = 0;
|
||||
-
|
||||
- if( p_context->channel_layout )
|
||||
- {
|
||||
- msg_Dbg( p_enc, "Creating channel order for reordering");
|
||||
- for( unsigned i = 0; i < sizeof(pi_channels_map)/sizeof(*pi_channels_map); i++ )
|
||||
- {
|
||||
- if( p_context->channel_layout & pi_channels_map[i][0] )
|
||||
- {
|
||||
- msg_Dbg( p_enc, "%d %"PRIx64" mapped to %"PRIx64"", i_channels_src, pi_channels_map[i][0], pi_channels_map[i][1]);
|
||||
- pi_order_dst[i_channels_src++] = pi_channels_map[i][1];
|
||||
- order_mask |= pi_channels_map[i][1];
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
- else
|
||||
+ msg_Dbg( p_enc, "Creating channel order for reordering");
|
||||
+# if LIBAVCODEC_VERSION_CHECK(59, 999, 999, 24, 100)
|
||||
+ av_channel_layout_default( &p_context->ch_layout, p_enc->fmt_out.audio.i_channels );
|
||||
+ uint64_t channel_mask = p_context->ch_layout.u.mask;
|
||||
+# else
|
||||
+ p_context->channels = p_enc->fmt_out.audio.i_channels;
|
||||
+ p_context->channel_layout = channel_mask[p_context->channels][1];
|
||||
+ uint64_t channel_mask = p_context->channel_layout;
|
||||
+# endif
|
||||
+ for( unsigned i = 0; i < sizeof(pi_channels_map)/sizeof(*pi_channels_map); i++ )
|
||||
{
|
||||
- msg_Dbg( p_enc, "Creating default channel order for reordering");
|
||||
- /* Create default order */
|
||||
- for( unsigned int i = 0; i < __MIN( i_order_max, (unsigned)p_sys->p_context->channels ); i++ )
|
||||
+ if( channel_mask & pi_channels_map[i][0] )
|
||||
{
|
||||
- if( i < sizeof(pi_channels_map)/sizeof(*pi_channels_map) )
|
||||
- {
|
||||
- msg_Dbg( p_enc, "%d channel is %"PRIx64"", i_channels_src, pi_channels_map[i][1]);
|
||||
- pi_order_dst[i_channels_src++] = pi_channels_map[i][1];
|
||||
- order_mask |= pi_channels_map[i][1];
|
||||
- }
|
||||
+ msg_Dbg( p_enc, "%d %"PRIx64" mapped to %"PRIx64"", i_channels_src, pi_channels_map[i][0], pi_channels_map[i][1]);
|
||||
+ pi_order_dst[i_channels_src++] = pi_channels_map[i][1];
|
||||
+ order_mask |= pi_channels_map[i][1];
|
||||
}
|
||||
}
|
||||
if( i_channels_src != p_enc->fmt_out.audio.i_channels )
|
||||
@@ -799,6 +788,8 @@ int InitVideoEnc( vlc_object_t *p_this )
|
||||
p_sys->i_channels_to_reorder =
|
||||
aout_CheckChannelReorder( NULL, pi_order_dst, order_mask,
|
||||
p_sys->pi_reorder_layout );
|
||||
+#else
|
||||
+ p_context->channels = p_enc->fmt_out.audio.i_channels;
|
||||
#endif
|
||||
|
||||
if ( p_enc->fmt_out.i_codec == VLC_CODEC_MP4A )
|
||||
--
|
||||
GitLab
|
||||
|
||||
|
||||
From e020f9abb31809584e33d740593d6ae5a190771d Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fran=C3=A7ois=20Cartegnie?= <fcvlcdev@free.fr>
|
||||
Date: Mon, 12 Aug 2024 19:32:42 +0700
|
||||
Subject: [PATCH 11/11] codec: avcodec: bypass removed define for Intel
|
||||
workarounds
|
||||
|
||||
adapted from cherry picked commit 1280728ad305f00ceba3491ce11bf66107017a6c
|
||||
---
|
||||
modules/codec/avcodec/d3d11va.c | 4 ++++
|
||||
modules/codec/avcodec/dxva2.c | 4 ++++
|
||||
2 files changed, 8 insertions(+)
|
||||
|
||||
diff --git a/modules/codec/avcodec/d3d11va.c b/modules/codec/avcodec/d3d11va.c
|
||||
index e1560a9312c..5260628364f 100644
|
||||
--- a/modules/codec/avcodec/d3d11va.c
|
||||
+++ b/modules/codec/avcodec/d3d11va.c
|
||||
@@ -55,6 +55,10 @@
|
||||
#define D3D_DecoderSurface ID3D11VideoDecoderOutputView
|
||||
#include "directx_va.h"
|
||||
|
||||
+#ifndef FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO
|
||||
+# define FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO 2 // moved to libavcodec/dxva2_internal.h :/
|
||||
+#endif
|
||||
+
|
||||
static int Open(vlc_va_t *, AVCodecContext *, const AVPixFmtDescriptor *, enum PixelFormat,
|
||||
const es_format_t *, picture_sys_t *p_sys);
|
||||
static void Close(vlc_va_t *, void **);
|
||||
diff --git a/modules/codec/avcodec/dxva2.c b/modules/codec/avcodec/dxva2.c
|
||||
index 2e6809a0541..037ad7d4488 100644
|
||||
--- a/modules/codec/avcodec/dxva2.c
|
||||
+++ b/modules/codec/avcodec/dxva2.c
|
||||
@@ -43,6 +43,10 @@
|
||||
#define D3D_DecoderSurface IDirect3DSurface9
|
||||
#include "directx_va.h"
|
||||
|
||||
+#ifndef FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO
|
||||
+# define FF_DXVA2_WORKAROUND_INTEL_CLEARVIDEO 2 // moved to libavcodec/dxva2_internal.h :/
|
||||
+#endif
|
||||
+
|
||||
static int Open(vlc_va_t *, AVCodecContext *, const AVPixFmtDescriptor *, enum PixelFormat,
|
||||
const es_format_t *, picture_sys_t *p_sys);
|
||||
static void Close(vlc_va_t *, void **);
|
||||
--
|
||||
GitLab
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
From a761e1c202b632e7865d18fcf11a2b9e285ea9ae Mon Sep 17 00:00:00 2001
|
||||
From: Tristan Matthews <tmatth@videolan.org>
|
||||
Date: Wed, 1 Feb 2023 23:39:36 -0500
|
||||
Subject: [PATCH] opus_header: fix channel mapping family 1 parsing
|
||||
|
||||
Fixes #27808
|
||||
|
||||
(cherry picked from commit 79fa6af0a98921f9d34933761f4fe20ef6c35309)
|
||||
---
|
||||
modules/codec/opus_header.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules/codec/opus_header.c b/modules/codec/opus_header.c
|
||||
index 4069a5cf4613..b134b20b625b 100644
|
||||
--- a/modules/codec/opus_header.c
|
||||
+++ b/modules/codec/opus_header.c
|
||||
@@ -205,7 +205,7 @@ int opus_header_parse(const unsigned char *packet, int len, OpusHeader *h)
|
||||
h->nb_coupled = ch;
|
||||
|
||||
/* Multi-stream support */
|
||||
- if(h->channel_mapping == 2)
|
||||
+ if(h->channel_mapping <= 2)
|
||||
{
|
||||
if (h->nb_coupled + h->nb_streams > 255)
|
||||
return 0;
|
||||
--
|
||||
GitLab
|
||||
|
||||
@@ -0,0 +1,82 @@
|
||||
From a618e31cf209168ae420e95750734a37359969e1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fran=C3=A7ois=20Cartegnie?= <fcvlcdev@free.fr>
|
||||
Date: Sun, 7 Jul 2024 11:14:05 +0200
|
||||
Subject: [PATCH] mux: avformat: fix avio callbacks signature with ffmpeg 6.1
|
||||
|
||||
API signature changes introduced depending on a positive define,
|
||||
then removed later, making it break prior or post removal...
|
||||
|
||||
(adapted from commit 503c04fad9239420be26d67aab4d5f63c53eb4f7)
|
||||
---
|
||||
modules/codec/avcodec/avcommon_compat.h | 3 +++
|
||||
modules/demux/avformat/mux.c | 18 ++++++++++++++++++
|
||||
2 files changed, 21 insertions(+)
|
||||
|
||||
diff --git a/modules/codec/avcodec/avcommon_compat.h b/modules/codec/avcodec/avcommon_compat.h
|
||||
index 9d16b3dc47d9..561ad83f99f9 100644
|
||||
--- a/modules/codec/avcodec/avcommon_compat.h
|
||||
+++ b/modules/codec/avcodec/avcommon_compat.h
|
||||
@@ -77,6 +77,9 @@
|
||||
#ifndef FF_MAX_B_FRAMES
|
||||
# define FF_MAX_B_FRAMES 16 // FIXME: remove this
|
||||
#endif
|
||||
+#ifndef FF_API_AVIO_WRITE_NONCONST // removed in ffmpeg 7
|
||||
+# define FF_API_AVIO_WRITE_NONCONST (LIBAVFORMAT_VERSION_MAJOR < 61)
|
||||
+#endif
|
||||
|
||||
#endif /* HAVE_LIBAVCODEC_AVCODEC_H */
|
||||
|
||||
diff --git a/modules/demux/avformat/mux.c b/modules/demux/avformat/mux.c
|
||||
index 8bf8735885f5..033a87bdaaad 100644
|
||||
--- a/modules/demux/avformat/mux.c
|
||||
+++ b/modules/demux/avformat/mux.c
|
||||
@@ -74,11 +74,20 @@ static int AddStream( sout_mux_t *, sout_input_t * );
|
||||
static void DelStream( sout_mux_t *, sout_input_t * );
|
||||
static int Mux ( sout_mux_t * );
|
||||
|
||||
+#if FF_API_AVIO_WRITE_NONCONST
|
||||
static int IOWrite( void *opaque, uint8_t *buf, int buf_size );
|
||||
+#else
|
||||
+static int IOWrite( void *opaque, const uint8_t *buf, int buf_size );
|
||||
+#endif
|
||||
static int64_t IOSeek( void *opaque, int64_t offset, int whence );
|
||||
#if LIBAVFORMAT_VERSION_CHECK( 57, 7, 0, 40, 100 )
|
||||
+# if FF_API_AVIO_WRITE_NONCONST
|
||||
static int IOWriteTyped(void *opaque, uint8_t *buf, int buf_size,
|
||||
enum AVIODataMarkerType type, int64_t time);
|
||||
+# else
|
||||
+int IOWriteTyped(void *opaque, const uint8_t *buf, int buf_size,
|
||||
+ enum AVIODataMarkerType type, int64_t time);
|
||||
+# endif
|
||||
#endif
|
||||
|
||||
/*****************************************************************************
|
||||
@@ -411,8 +420,13 @@ static int MuxBlock( sout_mux_t *p_mux, sout_input_t *p_input )
|
||||
}
|
||||
|
||||
#if LIBAVFORMAT_VERSION_CHECK( 57, 7, 0, 40, 100 )
|
||||
+# if FF_API_AVIO_WRITE_NONCONST
|
||||
int IOWriteTyped(void *opaque, uint8_t *buf, int buf_size,
|
||||
enum AVIODataMarkerType type, int64_t time)
|
||||
+# else
|
||||
+int IOWriteTyped(void *opaque, const uint8_t *buf, int buf_size,
|
||||
+ enum AVIODataMarkerType type, int64_t time)
|
||||
+# endif
|
||||
{
|
||||
VLC_UNUSED(time);
|
||||
|
||||
@@ -512,7 +526,11 @@ static int Control( sout_mux_t *p_mux, int i_query, va_list args )
|
||||
/*****************************************************************************
|
||||
* I/O wrappers for libavformat
|
||||
*****************************************************************************/
|
||||
+#if FF_API_AVIO_WRITE_NONCONST
|
||||
static int IOWrite( void *opaque, uint8_t *buf, int buf_size )
|
||||
+#else
|
||||
+static int IOWrite( void *opaque, const uint8_t *buf, int buf_size )
|
||||
+#endif
|
||||
{
|
||||
sout_mux_t *p_mux = opaque;
|
||||
sout_mux_sys_t *p_sys = p_mux->p_sys;
|
||||
--
|
||||
GitLab
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,46 @@
|
||||
From a945944c2d50cacfacdd5b16d4ea5e7b4766a9fc Mon Sep 17 00:00:00 2001
|
||||
From: Steve Lhomme <robux4@ycbcr.xyz>
|
||||
Date: Mon, 16 Dec 2024 09:28:55 +0100
|
||||
Subject: [PATCH] nfs: fix libnfs API v2 support
|
||||
|
||||
Introduced in libnfs 6.0.0.
|
||||
|
||||
Co-authored-by: ronnie sahlberg <ronniesahlberg@gmail.com>
|
||||
Co-authored-by: Thomas Guillem <thomas@gllm.fr>
|
||||
---
|
||||
modules/access/nfs.c | 9 ++++++++-
|
||||
1 file changed, 8 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules/access/nfs.c b/modules/access/nfs.c
|
||||
index f164cda86499..3510c3fe1f14 100644
|
||||
--- a/modules/access/nfs.c
|
||||
+++ b/modules/access/nfs.c
|
||||
@@ -188,7 +188,8 @@ nfs_read_cb(int i_status, struct nfs_context *p_nfs, void *p_data,
|
||||
else
|
||||
{
|
||||
p_sys->res.read.i_len = i_status;
|
||||
- memcpy(p_sys->res.read.p_buf, p_data, i_status);
|
||||
+ if (p_sys->res.read.p_buf != NULL && p_data != NULL)
|
||||
+ memcpy(p_sys->res.read.p_buf, p_data, i_status);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -208,9 +209,15 @@ FileRead(stream_t *p_access, void *p_buf, size_t i_len)
|
||||
return 0;
|
||||
|
||||
p_sys->res.read.i_len = 0;
|
||||
+#ifdef LIBNFS_API_V2
|
||||
+ p_sys->res.read.p_buf = NULL;
|
||||
+ if (nfs_read_async(p_sys->p_nfs, p_sys->p_nfsfh, p_buf, i_len, nfs_read_cb,
|
||||
+ p_access) < 0)
|
||||
+#else
|
||||
p_sys->res.read.p_buf = p_buf;
|
||||
if (nfs_read_async(p_sys->p_nfs, p_sys->p_nfsfh, i_len, nfs_read_cb,
|
||||
p_access) < 0)
|
||||
+#endif
|
||||
{
|
||||
msg_Err(p_access, "nfs_read_async failed");
|
||||
return 0;
|
||||
--
|
||||
GitLab
|
||||
|
||||
@@ -0,0 +1,149 @@
|
||||
From ba5dc03aecc1d96f81b76838f845ebde7348cf62 Mon Sep 17 00:00:00 2001
|
||||
From: David Rosca <nowrep@gmail.com>
|
||||
Date: Fri, 20 Dec 2024 20:24:36 +0100
|
||||
Subject: [PATCH] avcodec: vaapi: Support VAAPI with latest FFmpeg
|
||||
|
||||
---
|
||||
configure.ac | 20 +------------
|
||||
modules/codec/Makefile.am | 2 +-
|
||||
modules/codec/avcodec/avcommon_compat.h | 3 ++
|
||||
modules/codec/avcodec/vaapi.c | 38 +++++++++++++++++++++++--
|
||||
4 files changed, 41 insertions(+), 22 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 00afb063c455..089339e10e0b 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2550,25 +2550,7 @@ AM_CONDITIONAL([HAVE_VAAPI], [test "${have_vaapi}" = "yes"])
|
||||
AM_CONDITIONAL([HAVE_VAAPI_DRM], [test "${have_vaapi_drm}" = "yes"])
|
||||
AM_CONDITIONAL([HAVE_VAAPI_X11], [test "${have_vaapi_x11}" = "yes"])
|
||||
AM_CONDITIONAL([HAVE_VAAPI_WL], [test "${have_vaapi_wl}" = "yes"])
|
||||
-
|
||||
-have_avcodec_vaapi="no"
|
||||
-AS_IF([test "${have_vaapi}" = "yes" -a "${have_avcodec}" = "yes"], [
|
||||
- VLC_SAVE_FLAGS
|
||||
- CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
|
||||
- CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
|
||||
- AC_CHECK_HEADERS([libavcodec/vaapi.h], [
|
||||
- AC_MSG_NOTICE([VA API acceleration activated])
|
||||
- have_avcodec_vaapi="yes"
|
||||
- ],[
|
||||
- AS_IF([test -n "${enable_libva}"], [
|
||||
- AC_MSG_ERROR([libva is present but libavcodec/vaapi.h is missing])
|
||||
- ], [
|
||||
- AC_MSG_WARN([libva is present but libavcodec/vaapi.h is missing ])
|
||||
- ])
|
||||
- ])
|
||||
- VLC_RESTORE_FLAGS
|
||||
-])
|
||||
-AM_CONDITIONAL([HAVE_AVCODEC_VAAPI], [test "${have_avcodec_vaapi}" = "yes"])
|
||||
+AM_CONDITIONAL([HAVE_AVCODEC_VAAPI], [test "${have_vaapi}" = "yes" -a "${have_avcodec}" = "yes"])
|
||||
|
||||
dnl
|
||||
dnl dxva2 needs avcodec
|
||||
diff --git a/modules/codec/Makefile.am b/modules/codec/Makefile.am
|
||||
index 6d9465fdaef9..dd04391c1bf7 100644
|
||||
--- a/modules/codec/Makefile.am
|
||||
+++ b/modules/codec/Makefile.am
|
||||
@@ -416,7 +416,7 @@ libvaapi_plugin_la_SOURCES = \
|
||||
codec/avcodec/vaapi.c hw/vaapi/vlc_vaapi.c hw/vaapi/vlc_vaapi.h
|
||||
libvaapi_plugin_la_CPPFLAGS = $(AM_CPPFLAGS)
|
||||
libvaapi_plugin_la_CFLAGS = $(AM_CFLAGS) $(AVCODEC_CFLAGS)
|
||||
-libvaapi_plugin_la_LIBADD = $(LIBVA_LIBS)
|
||||
+libvaapi_plugin_la_LIBADD = $(LIBVA_LIBS) $(AVCODEC_LIBS)
|
||||
if HAVE_AVCODEC_VAAPI
|
||||
if HAVE_VAAPI_DRM
|
||||
codec_LTLIBRARIES += libvaapi_drm_plugin.la
|
||||
diff --git a/modules/codec/avcodec/avcommon_compat.h b/modules/codec/avcodec/avcommon_compat.h
|
||||
index ac02c06d2339..8ab6910f3250 100644
|
||||
--- a/modules/codec/avcodec/avcommon_compat.h
|
||||
+++ b/modules/codec/avcodec/avcommon_compat.h
|
||||
@@ -84,6 +84,9 @@
|
||||
#ifndef FF_API_AVIO_WRITE_NONCONST // removed in ffmpeg 7
|
||||
# define FF_API_AVIO_WRITE_NONCONST (LIBAVFORMAT_VERSION_MAJOR < 61)
|
||||
#endif
|
||||
+#ifndef FF_API_STRUCT_VAAPI_CONTEXT
|
||||
+# define FF_API_STRUCT_VAAPI_CONTEXT (LIBAVCODEC_VERSION_MAJOR < 59)
|
||||
+#endif
|
||||
|
||||
#endif /* HAVE_LIBAVCODEC_AVCODEC_H */
|
||||
|
||||
diff --git a/modules/codec/avcodec/vaapi.c b/modules/codec/avcodec/vaapi.c
|
||||
index c83269e43f30..e203baaf9ee2 100644
|
||||
--- a/modules/codec/avcodec/vaapi.c
|
||||
+++ b/modules/codec/avcodec/vaapi.c
|
||||
@@ -42,12 +42,25 @@
|
||||
# include <va/va_drm.h>
|
||||
#endif
|
||||
#include <libavcodec/avcodec.h>
|
||||
+#if FF_API_STRUCT_VAAPI_CONTEXT
|
||||
#include <libavcodec/vaapi.h>
|
||||
+#else
|
||||
+#include <libavutil/hwcontext_vaapi.h>
|
||||
+#endif
|
||||
|
||||
#include "avcodec.h"
|
||||
#include "va.h"
|
||||
#include "../../hw/vaapi/vlc_vaapi.h"
|
||||
|
||||
+#if !FF_API_STRUCT_VAAPI_CONTEXT
|
||||
+struct vaapi_context
|
||||
+{
|
||||
+ VADisplay display;
|
||||
+ VAConfigID config_id;
|
||||
+ VAContextID context_id;
|
||||
+};
|
||||
+#endif
|
||||
+
|
||||
struct vlc_va_sys_t
|
||||
{
|
||||
struct vlc_vaapi_instance *va_inst;
|
||||
@@ -145,8 +158,10 @@ static void Delete(vlc_va_t *va, void **hwctx)
|
||||
|
||||
(void) hwctx;
|
||||
|
||||
- vlc_vaapi_DestroyContext(o, sys->hw_ctx.display, sys->hw_ctx.context_id);
|
||||
- vlc_vaapi_DestroyConfig(o, sys->hw_ctx.display, sys->hw_ctx.config_id);
|
||||
+ if (sys->hw_ctx.context_id != VA_INVALID_ID)
|
||||
+ vlc_vaapi_DestroyContext(o, sys->hw_ctx.display, sys->hw_ctx.context_id);
|
||||
+ if (sys->hw_ctx.config_id != VA_INVALID_ID)
|
||||
+ vlc_vaapi_DestroyConfig(o, sys->hw_ctx.display, sys->hw_ctx.config_id);
|
||||
vlc_vaapi_ReleaseInstance(sys->va_inst);
|
||||
free(sys);
|
||||
}
|
||||
@@ -196,6 +211,7 @@ static int Create(vlc_va_t *va, AVCodecContext *ctx, const AVPixFmtDescriptor *d
|
||||
sys->hw_ctx.config_id = VA_INVALID_ID;
|
||||
sys->hw_ctx.context_id = VA_INVALID_ID;
|
||||
|
||||
+#if FF_API_STRUCT_VAAPI_CONTEXT
|
||||
sys->hw_ctx.config_id =
|
||||
vlc_vaapi_CreateConfigChecked(o, sys->hw_ctx.display, i_profile,
|
||||
VAEntrypointVLD, i_vlc_chroma);
|
||||
@@ -211,6 +227,24 @@ static int Create(vlc_va_t *va, AVCodecContext *ctx, const AVPixFmtDescriptor *d
|
||||
goto error;
|
||||
|
||||
ctx->hwaccel_context = &sys->hw_ctx;
|
||||
+#else
|
||||
+ AVBufferRef *hwdev_ref = av_hwdevice_ctx_alloc(AV_HWDEVICE_TYPE_VAAPI);
|
||||
+ if (hwdev_ref == NULL)
|
||||
+ goto error;
|
||||
+
|
||||
+ AVHWDeviceContext *hwdev_ctx = (void *) hwdev_ref->data;
|
||||
+ AVVAAPIDeviceContext *vadev_ctx = hwdev_ctx->hwctx;
|
||||
+ vadev_ctx->display = va_dpy;
|
||||
+
|
||||
+ if (av_hwdevice_ctx_init(hwdev_ref) < 0)
|
||||
+ {
|
||||
+ av_buffer_unref(&hwdev_ref);
|
||||
+ goto error;
|
||||
+ }
|
||||
+
|
||||
+ ctx->hw_device_ctx = hwdev_ref;
|
||||
+#endif
|
||||
+
|
||||
va->sys = sys;
|
||||
va->description = vaQueryVendorString(sys->hw_ctx.display);
|
||||
va->get = Get;
|
||||
--
|
||||
GitLab
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user