Compare commits

..

4 Commits

Author SHA1 Message Date
madomado d04536d882 Merge branch 'frawhide' into c/revisiting-mesa 2024-08-15 23:43:04 +08:00
Cappy Ishihara 6ff3041cf1 every package must require the main package with the same version-release 2024-08-15 22:18:33 +07:00
Cappy Ishihara 4bb1e6cd15 libgallium 2024-08-15 20:39:13 +07:00
Cappy Ishihara b1009af93e add back terra-mesa 2024-08-15 20:29:05 +07:00
627 changed files with 9389 additions and 11331 deletions
+3 -2
View File
@@ -5,5 +5,6 @@ RUN useradd -m vscode
RUN groupadd mock
RUN usermod -aG mock vscode
RUN echo vscode ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/vscode
RUN curl -Lo /etc/yum.repos.d/terra.repo https://raw.githubusercontent.com/terrapkg/subatomic-repos/main/terra.repo
RUN dnf -y install git mock createrepo_c anda terra-mock-configs
RUN dnf -y install git 'dnf-command(config-manager)' mock createrepo_c
RUN dnf config-manager --add-repo='https://raw.githubusercontent.com/terrapkg/subatomic-repos/main/terra.repo'
RUN dnf -y install anda terra-mock-configs
+3 -4
View File
@@ -44,7 +44,7 @@ jobs:
fail-fast: false
runs-on: ${{ matrix.pkg.arch == 'aarch64' && 'ARM64' || matrix.pkg.labels['large'] && 'x86-64-lg' || 'ubuntu-latest' }}
container:
image: ghcr.io/terrapkg/builder:f${{ matrix.version }}
image: ghcr.io/terrapkg/builder:f${{ matrix.version}}
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
@@ -55,7 +55,6 @@ jobs:
- name: Checkout latest Mock configs
uses: actions/checkout@v4
with:
fetch-depth: 0
repository: terrapkg/mock-configs
path: mock-configs
@@ -95,7 +94,7 @@ jobs:
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra${{ matrix.version }}${{ matrix.pkg.labels['extra'] && '-extras' }} anda-build/rpm/rpms/*
terra${{ matrix.version }} anda-build/rpm/rpms/*
- name: Upload source packages to subatomic
if: github.event_name == 'push'
@@ -103,7 +102,7 @@ jobs:
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra${{ matrix.version }}${{ matrix.pkg.labels['extra'] && '-extras' }}-source anda-build/rpm/srpm/*
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
- name: Notify Madoguchi (Success)
if: success() && github.event_name == 'push'
+3 -5
View File
@@ -11,9 +11,10 @@ jobs:
matrix:
branch:
- frawhide
- f39
- f40
- f41
- el10
- el9
container:
image: ghcr.io/terrapkg/builder:frawhide
options: --cap-add=SYS_ADMIN --privileged
@@ -33,10 +34,7 @@ jobs:
git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Run Update
run: |
nbranch="${{ matrix.branch }}"
[ "$nbranch" = 'frawhide' ] && nbranch='f42'
anda update --filters updbranch=1 --labels branch=${{ matrix.branch }},nbranch=$nbranch
run: anda update -vv --filters updbranch=1 --labels branch=${{ matrix.branch }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RUST_BACKTRACE: full
+1 -2
View File
@@ -4,9 +4,8 @@ on:
push:
branches:
- frawhide
- f41
- f40
- el10
- f39
paths:
- comps.xml
workflow_dispatch:
+5 -5
View File
@@ -25,10 +25,9 @@ jobs:
git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Run Nightly Update
run: anda update --filters nightly=1
run: anda update -vv --filters nightly=1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RUST_BACKTRACE: full
- name: Save
run: |
@@ -39,15 +38,16 @@ jobs:
git config user.signingkey "${{ runner.temp }}/signing_key"
msg="bump(nightly): $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
git commit -S -a -m "$msg"
git format-patch HEAD^
copy_over () {
git format-patch HEAD^
git checkout $1
git apply *.patch || true
git add anda
rm *.patch
git add *
git commit -S -a -m "$msg"
}
copy_over f39 || true
copy_over f40 || true
copy_over f41 || true
copy_over el10 || true
git push -u origin --all
fi
-53
View File
@@ -1,53 +0,0 @@
name: Weekly Update
on:
schedule:
- cron: "0 0 * * 0"
workflow_dispatch:
jobs:
autoupdate:
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:frawhide
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
- name: Install SSH signing key & Set up git repository
run: |
mkdir -p ${{ runner.temp }}
echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key
chmod 0700 ${{ runner.temp }}/signing_key
git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Run Weekly Update
run: anda update --filters weekly=1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RUST_BACKTRACE: full
- name: Save
run: |
if [[ `git status --porcelain` ]]; then
git config user.name "Raboneko"
git config user.email "raboneko@fyralabs.com"
git config gpg.format "ssh"
git config user.signingkey "${{ runner.temp }}/signing_key"
msg="bump(weekly): $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
git commit -S -a -m "$msg"
git format-patch HEAD^
copy_over () {
git checkout $1
git apply *.patch || true
git add anda
git commit -S -a -m "$msg"
}
copy_over f40 || true
copy_over f41 || true
copy_over el10 || true
git push -u origin --all
fi
+5 -4
View File
@@ -25,7 +25,7 @@ jobs:
git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Run Update
run: anda update --excludes nightly=1 --excludes weekly=1 --excludes updbranch=1
run: anda update -vv --excludes nightly=1 --excludes updbranch=1
env:
GITHUB_TOKEN: ${{ secrets.AUTOUPDATE_GH_TOKEN }}
RUST_BACKTRACE: full
@@ -39,15 +39,16 @@ jobs:
git config user.signingkey "${{ runner.temp }}/signing_key"
msg="bump: $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
git commit -S -a -m "$msg"
git format-patch HEAD^
copy_over () {
git format-patch HEAD^
git checkout $1
git apply *.patch || true
git add anda
rm *.patch
git add *
git commit -S -a -m "$msg"
}
copy_over f39 || true
copy_over f40 || true
copy_over f41 || true
copy_over el10 || true
git push -u origin --all
fi
-1
View File
@@ -1 +0,0 @@
https://fyralabs.com/funding.json
+2 -2
View File
@@ -1,7 +1,7 @@
# Terra Sources
[![Repository status](https://repology.org/badge/repository-big/terra_39.svg?header=Terra+39)](https://repology.org/repository/terra_39)
[![Repository status](https://repology.org/badge/repository-big/terra_40.svg?header=Terra+40)](https://repology.org/repository/terra_40)
[![Repository status](https://repology.org/badge/repository-big/terra_41.svg?header=Terra+41)](https://repology.org/repository/terra_41)
[![Repository status](https://repology.org/badge/repository-big/terra_rawhide.svg?header=Terra+Rawhide)](https://repology.org/repository/terra_rawhide)
Terra is a rolling-release Fedora repository for all the software you need.
@@ -14,7 +14,7 @@ This monorepo contains the package manifests for all packages in Terra.
## Installation
```bash
sudo dnf install --nogpgcheck --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' terra-release
sudo dnf install --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' --setopt='terra.gpgkey=https://repos.fyralabs.com/terra$releasever/key.asc' terra-release
```
If you are using immutable/atomic editions of Fedora, run the following commands instead:
+4 -4
View File
@@ -1,9 +1,9 @@
%global xurl https://files.pythonhosted.org/packages/ef/fa/6c86371d0e3b71129d2a79e63fc3fdc17733c9ebbf77345c62caad8c9fca/anki-24.11-cp39-abi3-manylinux_2_28_x86_64.whl
%global aurl https://files.pythonhosted.org/packages/58/6e/9f2d4853a83e57cea48ccae3bc2d887bf7c0550042185e156bab23f524bf/anki-24.11-cp39-abi3-manylinux_2_31_aarch64.whl
%global qurl https://files.pythonhosted.org/packages/40/3c/b70ef91f1dad8248332971c0cbb2922277512789cadc33cb16233e360a56/aqt-24.11-py3-none-any.whl
%global xurl https://files.pythonhosted.org/packages/51/5f/6f52b958fe38a36a0799c01fbd56a742ebdfcf41f89438dbee998b8ce692/anki-24.06.3-cp39-abi3-manylinux_2_28_x86_64.whl
%global aurl https://files.pythonhosted.org/packages/df/bb/b0bfbc6a06a598b0b614d18dd8c4f40827828649f9742f1f44a4e44d6a2c/anki-24.06.3-cp39-abi3-manylinux_2_31_aarch64.whl
%global qurl https://files.pythonhosted.org/packages/21/2a/d8e22a9521be04ef29a30d21a2c3008783ab03b6f07cc14696a040f747a4/aqt-24.06.3-py3-none-any.whl
Name: anki-bin
Version: 24.11
Version: 24.06.3
Release: 1%?dist
Summary: Flashcard program for using space repetition learning (Installed with wheel)
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
+1 -1
View File
@@ -1,5 +1,5 @@
Name: anki-qt5
Version: 24.11
Version: 24.06.3
Release: 1%?dist
Summary: Flashcard program for using space repetition learning
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
+1
View File
@@ -1,4 +1,5 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "anki.spec"
}
+13 -31
View File
@@ -1,15 +1,12 @@
%define debug_package %nil
Name: anki
Version: 24.11
Version: 24.06.3
Release: 1%?dist
Summary: Flashcard program for using space repetition learning
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
URL: https://apps.ankiweb.net/
BuildRequires: python3-devel python3-setuptools python3-waitress python3-protobuf python3-pysocks rpm_macro(fdupes)
BuildRequires: python3-distro python3-flask-cors python3-jsonschema python3-send2trash python3-certifi python3-simplejson
BuildRequires: python3-installer python-unversioned-command python3-pyqt6-webengine python3-pyqt6
BuildRequires: anda-srpm-macros make mold cargo git protobuf-compiler rsync yarnpkg ninja-build pnpm libxcrypt-compat nodejs gcc
BuildRequires: python3-installer make mold cargo git rsync ninja-build libxcrypt-compat nodejs python3.9 python-unversioned-command gcc python3-pyqt6-webengine
Requires: hicolor-icon-theme python3-sqlalchemy python3-simplejson python3-matplotlib python3-decorator python3-markdown python3-send2trash
Requires: python3-requests python3-pygame python3-beautifulsoup4 python3-httplib2 python3-pyaudio python3-jsonschema sox libxcrypt-compat python3-pyqt6-webengine
Recommends: mpv
@@ -23,37 +20,19 @@ phrases in a foreign language) as easily, quickly and efficiently as possible.
Anki is based on a theory called spaced repetition.
%prep
%git_clone https://github.com/ankitects/anki
rm -rf *
git clone https://github.com/ankitects/anki .
git checkout %{version}
%patch 0 -p1
# See https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=anki
# See https://git.alpinelinux.org/aports/tree/testing/anki/APKBUILD
export CARGO_HOME="./.cargo}" # do not litter in ~
export YARN_CACHE_FOLDER="./.yarn}" # do not litter in ~
# fetch rust packages
cargo fetch --locked --target "%_arch-unknown-linux-gnu" &
# fetch node packages already in prepare()
yarn install --immutable --modules-folder out/node_modules --ignore-scripts
ln -sf out/node_modules ./
wait
%build
export RELEASE=2
export PYTHONPATH=%python3_sitelib
export PYTHON_BINARY=%__python3
export PROTOC_BINARY=$(which protoc)
export NODE_BINARY=$(which node)
export YARN_BINARY=$(which pnpm)
export CARGO_HOME="./.cargo}" # do not litter in ~
export YARN_CACHE_FOLDER="./.yarn}" # do not litter in ~
cargo update
export RELEASE=1
export PYTHONPATH=%_libdir/python3/dist-packages
mold -run ./tools/build
%install
for file in out/wheels/*.whl; do
python -m installer --destdir="%{buildroot}" $file
@@ -62,7 +41,9 @@ done
install -Dm644 qt/bundle/lin/anki.desktop %{buildroot}/%{_datadir}/applications/anki.desktop
install -Dm644 qt/bundle/lin/anki.png %{buildroot}/%{_datadir}/pixmaps/anki.png
sed -i "s*^#!/usr/bin/python\$*#!/usr/bin/python3*" %{buildroot}/%{_bindir}/anki
sed "s*^#!/usr/bin/python\$*#!/usr/bin/python3*" %{buildroot}/%{_bindir}/anki > %{buildroot}/%{_bindir}/anki1
rm %{buildroot}/%{_bindir}/anki
mv %{buildroot}/%{_bindir}/anki1 %{buildroot}/%{_bindir}/anki
find %{buildroot} -iname __pycache__ | xargs -r rm -rf
find %{buildroot} -iname direct_url.json | xargs -r rm -rf
@@ -84,6 +65,7 @@ chmod 755 %{buildroot}%{_bindir}/anki
%_libdir/python*/site-packages/anki/
%_libdir/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
+5
View File
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "armcord-bin.spec"
}
}
+78
View File
@@ -0,0 +1,78 @@
%define debug_package %nil
%global _build_id_links none
%ifarch x86_64
%global src ArmCord-%version
%elifarch aarch64
%global src ArmCord-%version-arm64
%elifarch armv7l
%global src ArmCord-%version-armv7l
%endif
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/armcord/.*\\.so
Name: armcord-bin
Version: 3.2.8
Release: 1%?dist
License: OSL-3.0
Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/ArmCord/ArmCord
Group: Applications/Internet
Source0: %url/releases/download/v%version/%src.tar.gz
Source1: armcord.png
Source2: https://raw.githubusercontent.com/ArmCord/ArmCord/v%version/README.md
Requires: electron xdg-utils
ExclusiveArch: x86_64 aarch64 armv7l
Conflicts: armcord
BuildRequires: add-determinism
%description
ArmCord is a custom client designed to enhance your Discord experience
while keeping everything lightweight.
%prep
%autosetup -n %src
cat <<EOF > .armcord.desktop
[Desktop Entry]
Name=ArmCord
Comment=%summary
GenericName=Internet Messenger
Type=Application
Exec=%_bindir/armcord
Icon=armcord
Categories=Network;InstantMessaging;
StartupWMClass=armcord
Keywords=discord;armcord;vencord;shelter;electron;
EOF
%build
%install
mkdir -p %buildroot%_bindir %buildroot%_datadir/applications %buildroot%_datadir/pixmaps %buildroot%_datadir/armcord %buildroot%_docdir/%name
cp -a * %buildroot%_datadir/armcord/
ln -s %_datadir/armcord/armcord %buildroot%_bindir/armcord
chmod +x -R %buildroot%_datadir/armcord/*
chmod 755 %buildroot%_datadir/armcord/armcord
install -Dm644 .armcord.desktop %buildroot%_datadir/applications/ArmCord.desktop
install -Dm644 %SOURCE1 %buildroot%_datadir/pixmaps/armcord.png
install -Dm644 %SOURCE2 %buildroot%_docdir/%name/
%files
%doc README.md
%_datadir/armcord
%_bindir/armcord
%_datadir/applications/ArmCord.desktop
%_datadir/pixmaps/armcord.png
%changelog
* 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.
- Use /usr/share/ instead of /opt/
* Sat May 6 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
- Initial package

Before

Width:  |  Height:  |  Size: 81 KiB

After

Width:  |  Height:  |  Size: 81 KiB

+1
View File
@@ -0,0 +1 @@
rpm.version(gh("ArmCord/ArmCord"));
@@ -1,6 +1,6 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "legcord.spec"
spec = "armcord.spec"
}
}
+67
View File
@@ -0,0 +1,67 @@
%define debug_package %nil
Name: armcord
Version: 3.2.8
Release: 1%?dist
License: OSL-3.0
Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/ArmCord/ArmCord
Group: Applications/Internet
Source1: launch.sh
Requires: electron xdg-utils
BuildRequires: nodejs-npm git add-determinism
Conflicts: armcord-bin
BuildArch: noarch
%description
ArmCord is a custom client designed to enhance your Discord experience
while keeping everything lightweight.
%prep
rm -rf *
git clone %url .
git checkout v%version
cat <<EOF > armcord.desktop
[Desktop Entry]
Name=ArmCord
Comment=%summary
GenericName=Internet Messenger
Type=Application
Exec=/usr/bin/armcord
Icon=armcord
Categories=Network;InstantMessaging;
StartupWMClass=armcord
Keywords=discord;armcord;vencord;shelter;electron;
EOF
%build
npx pnpm@7 install --no-frozen-lockfile
npm run packageQuick
%install
install -Dm644 dist/*-unpacked/resources/app.asar %buildroot/usr/share/armcord/app.asar
install -Dm755 %SOURCE1 %buildroot/usr/bin/armcord
install -Dm644 armcord.desktop %buildroot/usr/share/applications/ArmCord.desktop
install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/armcord.png
%files
%doc README.md
%license LICENSE
/usr/bin/armcord
/usr/share/applications/ArmCord.desktop
/usr/share/pixmaps/armcord.png
/usr/share/armcord/app.asar
%changelog
* 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 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
- Initial package
+1
View File
@@ -0,0 +1 @@
rpm.version(gh("ArmCord/ArmCord"));
-8
View File
@@ -1,8 +0,0 @@
project pkg {
rpm {
spec = "coolercontrol.spec"
}
labels {
large = 1
}
}
-159
View File
@@ -1,159 +0,0 @@
%bcond_without mold
%global _desc %{expand:
CoolerControl is a feature-rich cooling device control application for Linux. It has a system daemon
for background device management, as well as a GUI to expertly customize your settings.
}
%global rdnn org.coolercontrol.CoolerControl
# Don't mangle shebangs
%global __brp_mangle_shebangs %{nil}
Name: coolercontrol
Version: 1.4.5
Release: 1%?dist
Summary: Cooling device control for Linux
License: GPL-3.0-or-later
URL: https://gitlab.com/coolercontrol/coolercontrol
Source0: %url/-/archive/%version/coolercontrol-%version.tar.gz
Packager: madonuko <mado@fyralabs.com>
Provides: coolercontrol-ui
Provides: coolercontrol-gui
Requires: hicolor-icon-theme
Requires: webkit2gtk4.1
Requires: libappindicator-gtk3
Requires: coolercontrold
BuildRequires: git-core make nodejs-npm libdrm-devel curl wget file mold
BuildRequires: systemd-rpm-macros anda-srpm-macros cargo >= 1.75.0 cargo-rpm-macros
BuildRequires: autoconf automake binutils bison flex gcc gcc-c++ gdb libtool pkgconf strace
BuildRequires: pkgconfig(webkit2gtk-4.1) pkgconfig(openssl) pkgconfig(librsvg-2.0)
BuildRequires: libappindicator-gtk3-devel
BuildRequires: python3-devel python3-wheel python3-liquidctl python3-setproctitle python3-fastapi python3-uvicorn python3-pip
BuildRequires: libappstream-glib
BuildRequires: desktop-file-utils
%description %_desc
%package liqctld
Summary: CoolerControl daemon for interacting with liquidctl devices on a system level
Requires: coolercontrold
%description liqctld %_desc
coolercontrol-liqctld is a CoolerControl daemon for interacting with liquidctl devices on a system level, and is
installed as the coolercontrol-liqctld application. Its main purpose is to wrap the underlying
liquidctl library providing an API interface that the main coolercontrol daemon interacts with.
It also enables parallel device communication and access to specific device properties.
%package -n coolercontrold
Summary: Monitor and control your cooling devices.
Requires: coolercontrol-liqctld
%description -n coolercontrold %_desc
coolercontrold is the main daemon containing the core logic for interfacing with devices, and installed as
"coolercontrold". It is meant to run in the background as a system daemon. It handles all device
communication and data management, additionally connecting to the liqctld daemon for liquidctl
supported devices. It has an API that services client programs like the coolercontrol-gui.
%prep
%autosetup
pushd coolercontrold
%cargo_prep_online &
popd
pushd coolercontrol-ui
npm ci --prefer-offline &
pushd src-tauri
%cargo_prep_online &
popd
popd
wait
%build
pushd coolercontrold
%{cargo_license_online} > LICENSE.dependencies &
%cargo_build -- &
popd
pushd coolercontrol-liqctld
%pyproject_wheel
popd
pushd coolercontrol-ui
npm run build &
pushd src-tauri
%{cargo_license_online} > LICENSE.dependencies &
wait
%cargo_build -f custom-protocol
popd
popd
%install
pushd coolercontrol-liqctld
#define _pyproject_wheeldir .
%pyproject_install
%pyproject_save_files coolercontrol_liqctld
popd
pushd coolercontrold
install -Dpm755 target/rpm/coolercontrold %buildroot%_bindir/coolercontrold
install -Dpm644 LICENSE.dependencies %buildroot%_datadir/licenses/coolercontrold/LICENSE.dependencies
popd
pushd coolercontrol-ui/src-tauri
install -Dpm755 target/rpm/coolercontrol %buildroot%_bindir/coolercontrol
install -Dpm644 LICENSE.dependencies %buildroot%_datadir/licenses/%name/LICENSE.dependencies
popd
install -Dpm644 packaging/systemd/coolercontrol-liqctld.service %buildroot%_unitdir/coolercontrol-liqctld.service
desktop-file-install --dir=%buildroot%_datadir/applications packaging/metadata/%rdnn.desktop
install -Dpm644 packaging/metadata/%rdnn.svg %buildroot%_iconsdir/hicolor/scalable/apps/%rdnn.svg
install -Dpm644 packaging/metadata/%rdnn.png %buildroot%_iconsdir/hicolor/256x256/apps/%rdnn.svg
for f in packaging/systemd/*.service; do
install -Dpm644 $f %buildroot%_unitdir/$(basename $f)
done
install -Dpm644 packaging/metadata/%rdnn.metainfo.xml %buildroot%_metainfodir/%rdnn.metainfo.xml
%check
appstream-util validate-relax --nonet %buildroot%_metainfodir/%rdnn.metainfo.xml
%pyproject_check_import
%post -n coolercontrold
%systemd_post coolercontrold.service
%preun -n coolercontrold
%systemd_preun coolercontrold.service
%postun -n coolercontrold
%systemd_postun_with_restart coolercontrold.service
# coolercontrold.service automatically uses the liqctld service, so there are
# no scriptlets for liqctld.
%files
%doc README.md
%license LICENSE
%license LICENSE.dependencies
%_bindir/coolercontrol
%_datadir/applications/%rdnn.desktop
%_datadir/metainfo/%rdnn.metainfo.xml
%_iconsdir/hicolor/*/apps/%rdnn.svg
%files -n coolercontrold
%doc coolercontrold/README.md
%license LICENSE
%license LICENSE.dependencies
%_bindir/coolercontrold
%_unitdir/coolercontrold.service
%files liqctld -f %pyproject_files
%doc coolercontrol-liqctld/README.md
%license LICENSE
%_bindir/coolercontrol-liqctld
%_unitdir/coolercontrol-liqctld.service
%changelog
* Thu Aug 15 2024 madonuko <mado@fyralabs.com> - 1.4.0-1
- Initial package
-1
View File
@@ -1 +0,0 @@
rpm.version(gitlab("30707566"));
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-canary-openasar
Version: 0.0.550
Version: 0.0.471
Release: 1%?dist
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
@@ -1 +1,3 @@
rpm.version(get("https://discord.com/api/canary/updates?platform=linux").json().name);
let html = get("https://discordapp.com/api/download/canary?platform=linux&format=tar.gz");
let newver = find("https://dl-canary\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
rpm.version(newver);
+1 -1
View File
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-canary
Version: 0.0.550
Version: 0.0.471
Release: 1%?dist
Summary: Free Voice and Text Chat for Gamers
URL: discord.com
+3 -1
View File
@@ -1 +1,3 @@
rpm.version(get("https://discord.com/api/canary/updates?platform=linux").json().name);
let html = get("https://discordapp.com/api/download/canary?platform=linux&format=tar.gz");
let newver = find("https://dl-canary\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
rpm.version(newver);
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-openasar
Version: 0.0.78
Version: 0.0.64
Release: 1%?dist
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
+3 -1
View File
@@ -1 +1,3 @@
rpm.version(get("https://discord.com/api/stable/updates?platform=linux").json().name);
let html = get("https://discordapp.com/api/download?platform=linux&format=tar.gz");
let newver = find("https://dl\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
rpm.version(newver);
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-ptb-openasar
Version: 0.0.124
Version: 0.0.99
Release: 1%?dist
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
+3 -1
View File
@@ -1 +1,3 @@
rpm.version(get("https://discord.com/api/ptb/updates?platform=linux").json().name);
let html = get("https://discordapp.com/api/download/ptb?platform=linux&format=tar.gz");
let newver = find("https://dl-ptb\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
rpm.version(newver);
+1 -1
View File
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-ptb
Version: 0.0.124
Version: 0.0.99
Release: 1%?dist
Summary: Free Voice and Text Chat for Gamers.
URL: https://discord.com
+3 -1
View File
@@ -1 +1,3 @@
rpm.version(get("https://discord.com/api/ptb/updates?platform=linux").json().name);
let html = get("https://discordapp.com/api/download/ptb?platform=linux&format=tar.gz");
let newver = find("https://dl-ptb\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
rpm.version(newver);
+1 -1
View File
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord
Version: 0.0.78
Version: 0.0.64
Release: 1%?dist
Summary: Free Voice and Text Chat for Gamers
URL: https://discord.com
+3 -1
View File
@@ -1 +1,3 @@
rpm.version(get("https://discord.com/api/stable/updates?platform=linux").json().name);
let html = get("https://discordapp.com/api/download?platform=linux&format=tar.gz");
let newver = find("https://dl\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
rpm.version(newver);
+6 -7
View File
@@ -1,5 +1,5 @@
%global commit e69a7a9bd62bef27f3d84b8d037bafe55bbed483
%global commit_date 20241222
%global commit 58ceb44984ffbace79ed5eddf5c426362ad23ae7
%global commit_date 20240814
%global shortcommit %(c=%{commit}; echo ${c:0:7})
Name: envision
@@ -21,7 +21,6 @@ BuildRequires: openxr-devel
BuildRequires: libappstream-glib
BuildRequires: desktop-file-utils
BuildRequires: glib2-devel
BuildRequires: git-core
Recommends: android-tools
%description
@@ -41,8 +40,8 @@ Recommends: android-tools
%doc README.md
%license LICENSE
%_bindir/envision
%_datadir/applications/org.gabmus.envision.Devel.desktop
%_datadir/applications/org.gabmus.envision.desktop
%_datadir/envision/
%_iconsdir/hicolor/scalable/apps/org.gabmus.envision.Devel.svg
%_iconsdir/hicolor/symbolic/apps/org.gabmus.envision.Devel-symbolic.svg
%_metainfodir/org.gabmus.envision.Devel.appdata.xml
%_iconsdir/hicolor/scalable/apps/org.gabmus.envision.svg
%_iconsdir/hicolor/symbolic/apps/org.gabmus.envision-symbolic.svg
%_metainfodir/org.gabmus.envision.appdata.xml
+1 -1
View File
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: feishin
Version: 0.12.1
Version: 0.7.3
Release: 1%?dist
Summary: A modern self-hosted music player
License: GPL-3.0
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "fontviewer.spec"
}
}
-43
View File
@@ -1,43 +0,0 @@
%global commit 03864bcad5c751646404bbe14e489dd67c9d1582
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20241224
Name: fontviewer
Version: %{commit_date}.git~%{shortcommit}
Release: 1%?dist
Summary: View and install fonts
License: GPL-2.0
URL: https://github.com/chocolateimage/%{name}
Source0: %{url}/archive/%{commit}.tar.gz
BuildRequires: gcc-c++
BuildRequires: meson
BuildRequires: pkgconfig(cairomm-1.0)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(freetype2)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(gtkmm-3.0)
Requires: gtk3 fontconfig
Packager: sadlerm <sad_lerm@hotmail.com>
%description
A platform-agnostic GTK+ 3 alternative to GNOME's Font Viewer
%prep
%autosetup -n %{name}-%{commit} -p1
%build
%meson
%meson_build
%install
%meson_install
%files
%license LICENSE
%doc README.md
%{_bindir}/%{name}
%{_datadir}/applications/%{name}.desktop
-5
View File
@@ -1,5 +0,0 @@
rpm.global("commit", gh_commit("chocolateimage/fontviewer"));
if rpm.changed() {
rpm.release();
rpm.global("commit_date", date());
}
+1 -1
View File
@@ -5,7 +5,7 @@
%global pure_protobuf_version 2.0.0
Name: komikku
Version: 1.66.0
Version: 1.53.0
%forgemeta
Release: 1%?dist
Summary: A manga reader for GNOME
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "legcord-bin.spec"
}
}
-95
View File
@@ -1,95 +0,0 @@
%define debug_package %nil
%global _build_id_links none
%ifarch x86_64
%global src LegCord-%version-linux-x64
%elifarch aarch64
%global src LegCord-%version-linux-arm64
%elifarch armv7l
%global src LegCord-%version-linux-armv7l
%endif
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/(armcord|legcord)/.*\\.so
Name: legcord-bin
Version: 1.0.5
Release: 1%?dist
License: OSL-3.0
Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/LegCord/LegCord
Group: Applications/Internet
Source0: %url/releases/download/v%version/%src.zip
Source1: legcord.png
Source2: https://raw.githubusercontent.com/LegCord/LegCord/v%version/README.md
Requires: xdg-utils
BuildRequires: unzip
ExclusiveArch: x86_64 aarch64 armv7l
Conflicts: legcord
BuildRequires: add-determinism
Obsoletes: armcord < 3.3.2-1
%description
LegCord is a custom client designed to enhance your Discord experience
while keeping everything lightweight.
%prep
mkdir legcord
cd legcord
unzip %SOURCE0
cat <<EOF > .legcord.desktop
[Desktop Entry]
Name=LegCord
Comment=%summary
GenericName=Internet Messenger
Type=Application
Exec=%_bindir/legcord
Icon=legcord
Categories=Network;InstantMessaging;
StartupWMClass=legcord
Keywords=discord;armcord;legcord;vencord;shelter;electron;
EOF
%build
%install
cd legcord
mkdir -p %buildroot%_bindir %buildroot%_datadir/applications %buildroot%_datadir/pixmaps %buildroot%_datadir/legcord %buildroot%_docdir/%name
cp -a * %buildroot%_datadir/legcord/
ln -s %_datadir/legcord/legcord %buildroot%_bindir/legcord
ln -s %_datadir/legcord %buildroot%_datadir/armcord
chmod +x -R %buildroot%_datadir/legcord/*
chmod 755 %buildroot%_datadir/legcord/legcord
install -Dm644 .legcord.desktop %buildroot%_datadir/applications/LegCord.desktop
install -Dm644 %SOURCE1 %buildroot%_datadir/pixmaps/legcord.png
install -Dm644 %SOURCE2 %buildroot%_docdir/%name/
# HACK: rpm bug for unability to replace existing files on system.
%pre
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
echo "Found old %_datadir/armcord directory, removing"
rm -rf %_datadir/armcord
fi
%files
%doc README.md
%_datadir/legcord
%_datadir/armcord
%_bindir/legcord
%_datadir/applications/LegCord.desktop
%_datadir/pixmaps/legcord.png
%changelog
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
- Rename to LegCord.
* Sat Jun 17 2023 madonuko <mado@fyralabs.com> - 3.2.0-2
- Remove libnotify dependency.
- Fix desktop entry.
- Set as noarch package because there are not binary files.
- Use /usr/share/ instead of /opt/
* Sat May 6 2023 madonuko <mado@fyralabs.com> - 3.1.7-1
- Initial package
-1
View File
@@ -1 +0,0 @@
rpm.version(gh("LegCord/LegCord"));
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "legcord-bin.spec"
}
}
@@ -1,96 +0,0 @@
%define debug_package %nil
%global _build_id_links none
%ifarch x86_64
%global src LegCord-%version-linux-x64
%elifarch aarch64
%global src LegCord-%version-linux-arm64
%elifarch armv7l
%global src LegCord-%version-linux-armv7l
%endif
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/(armcord|legcord)/.*\\.so
Name: legcord-bin
Version: 1.0.5
Release: 1%?dist
License: OSL-3.0
Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/LegCord/LegCord
Group: Applications/Internet
Source0: %url/releases/download/v%version/%src.zip
Source1: legcord.png
Source2: https://raw.githubusercontent.com/LegCord/LegCord/v%version/README.md
Requires: xdg-utils
BuildRequires: unzip
ExclusiveArch: x86_64 aarch64 armv7l
Conflicts: legcord
Conflicts: legcord-nightly
BuildRequires: add-determinism
Obsoletes: armcord < 3.3.2-1
%description
LegCord is a custom client designed to enhance your Discord experience
while keeping everything lightweight.
%prep
mkdir legcord
cd legcord
unzip %SOURCE0
cat <<EOF > .legcord.desktop
[Desktop Entry]
Name=LegCord
Comment=%summary
GenericName=Internet Messenger
Type=Application
Exec=%_bindir/legcord
Icon=legcord
Categories=Network;InstantMessaging;
StartupWMClass=legcord
Keywords=discord;armcord;legcord;vencord;shelter;electron;
EOF
%build
%install
cd legcord
mkdir -p %buildroot%_bindir %buildroot%_datadir/applications %buildroot%_datadir/pixmaps %buildroot%_datadir/legcord %buildroot%_docdir/%name
cp -a * %buildroot%_datadir/legcord/
ln -s %_datadir/legcord/legcord %buildroot%_bindir/legcord
ln -s %_datadir/legcord %buildroot%_datadir/armcord
chmod +x -R %buildroot%_datadir/legcord/*
chmod 755 %buildroot%_datadir/legcord/legcord
install -Dm644 .legcord.desktop %buildroot%_datadir/applications/LegCord.desktop
install -Dm644 %SOURCE1 %buildroot%_datadir/pixmaps/legcord.png
install -Dm644 %SOURCE2 %buildroot%_docdir/%name/
# HACK: rpm bug for unability to replace existing files on system.
%pre
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
echo "Found old %_datadir/armcord directory, removing"
rm -rf %_datadir/armcord
fi
%files
%doc README.md
%_datadir/legcord
%_datadir/armcord
%_bindir/legcord
%_datadir/applications/LegCord.desktop
%_datadir/pixmaps/legcord.png
%changelog
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
- Rename to LegCord.
* Sat Jun 17 2023 madonuko <mado@fyralabs.com> - 3.2.0-2
- Remove libnotify dependency.
- Fix desktop entry.
- Set as noarch package because there are not binary files.
- Use /usr/share/ instead of /opt/
* Sat May 6 2023 madonuko <mado@fyralabs.com> - 3.1.7-1
- Initial package
Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

@@ -1 +0,0 @@
rpm.version(gh("LegCord/LegCord"));
-9
View File
@@ -1,9 +0,0 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "legcord-nightly.spec"
}
labels {
nightly = 1
}
}
@@ -1,91 +0,0 @@
%global commit fa72d91d14e538bd0054ab7793f912aa0de64e0f
%global commit_date 20241218
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%define debug_package %nil
Name: legcord-nightly
Version: %commit_date.%shortcommit
Release: 1%?dist
License: OSL-3.0
Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/LegCord/LegCord
Group: Applications/Internet
Source0: %url/archive/%commit/legcord-%commit.tar.gz
Source1: launch.sh
Packager: Owen <owen@fyralabs.com>
Requires: electron xdg-utils
Provides: armcord-nightly
Obsoletes: armcord < 3.3.2-1
Conflicts: legcord-bin
Conflicts: legcord
BuildArch: noarch
BuildRequires: anda-srpm-macros pnpm
%description
legcord is a custom client designed to enhance your Discord experience
while keeping everything lightweight.
%prep
%autosetup -n Legcord-%commit
cat <<EOF > legcord.desktop
[Desktop Entry]
Name=LegCord
Comment=%summary
GenericName=Internet Messenger
Type=Application
Exec=/usr/bin/legcord
Icon=legcord
Categories=Network;InstantMessaging;
StartupWMClass=legcord
Keywords=discord;armcord;legcord;vencord;shelter;electron;
EOF
%build
pnpm install --no-frozen-lockfile
pnpm run packageQuick
%install
install -Dm644 dist/*-unpacked/resources/app.asar %buildroot/usr/share/legcord/app.asar
install -Dm755 %SOURCE1 %buildroot/usr/bin/legcord
install -Dm644 legcord.desktop %buildroot/usr/share/applications/LegCord.desktop
install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/legcord.png
ln -s %_datadir/legcord %buildroot%_datadir/armcord
# HACK: rpm bug for unability to replace existing files on system.
%pre
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
echo "Found old %_datadir/armcord directory, removing"
rm -rf %_datadir/armcord
fi
%files
%doc README.md
%license license.txt
/usr/bin/legcord
/usr/share/applications/LegCord.desktop
/usr/share/pixmaps/legcord.png
/usr/share/legcord/app.asar
/usr/share/armcord
%changelog
* Fri Nov 22 2024 owen <owen@fyralabs.com> - 1.0.2-2
- Add nightly package.
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
- Rename to LegCord.
* Mon Aug 26 2024 madonuko <mado@fyralabs.com> - 3.3.0-1
- Update to license.txt
* 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 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
- Initial package
-5
View File
@@ -1,5 +0,0 @@
rpm.global("commit", gh_commit("Legcord/Legcord"));
if rpm.changed() {
rpm.release();
rpm.global("commit_date", date());
}
-13
View File
@@ -1,13 +0,0 @@
#!/bin/sh
electron=/usr/bin/electron
CONFIG=${XDG_CONFIG_HOME:-~/.config}
FLAGS="$CONFIG/armcord-flags.conf"
# Allow users to override command-line options
if [ -f "$FLAGS" ]; then
USER_FLAGS="$(cat "$FLAGS")"
fi
# shellcheck disable=SC2086 # USER_FLAGS has to be unquoted
"$electron" /usr/share/armcord/app.asar $USER_FLAGS "$@"
-88
View File
@@ -1,88 +0,0 @@
%define debug_package %nil
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/(armcord|legcord)/.*\\.so
Name: legcord
Version: 1.0.5
Release: 1%?dist
License: OSL-3.0
Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/LegCord/LegCord
Group: Applications/Internet
Source1: launch.sh
Packager: madonuko <mado@fyralabs.com>
Requires: electron xdg-utils
Provides: armcord
Obsoletes: armcord < 3.3.2-1
Conflicts: legcord-bin
Conflicts: legcord-nightly
BuildArch: noarch
BuildRequires: anda-srpm-macros pnpm
%description
legcord is a custom client designed to enhance your Discord experience
while keeping everything lightweight.
%prep
%git_clone %url v%version
cat <<EOF > legcord.desktop
[Desktop Entry]
Name=Legcord
Comment=%summary
GenericName=Internet Messenger
Type=Application
Exec=/usr/bin/legcord
Icon=legcord
Categories=Network;InstantMessaging;
StartupWMClass=legcord
Keywords=discord;armcord;legcord;vencord;shelter;electron;
EOF
%build
pnpm install --no-frozen-lockfile
pnpm run packageQuick
%install
install -Dm644 dist/*-unpacked/resources/app.asar %buildroot/usr/share/legcord/app.asar
install -Dm755 %SOURCE1 %buildroot/usr/bin/legcord
install -Dm644 legcord.desktop %buildroot/usr/share/applications/LegCord.desktop
install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/legcord.png
ln -s %_datadir/legcord %buildroot%_datadir/armcord
# HACK: rpm bug for unability to replace existing files on system.
%pre
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
echo "Found old %_datadir/armcord directory, removing"
rm -rf %_datadir/armcord
fi
%files
%doc README.md
%license license.txt
/usr/bin/legcord
/usr/share/applications/LegCord.desktop
/usr/share/pixmaps/legcord.png
/usr/share/legcord/app.asar
/usr/share/armcord
%changelog
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
- Rename to LegCord.
* Mon Aug 26 2024 madonuko <mado@fyralabs.com> - 3.3.0-1
- Update to license.txt
* 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 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
- Initial package
-1
View File
@@ -1 +0,0 @@
rpm.version(gh("LegCord/LegCord"));
+4 -4
View File
@@ -1,7 +1,7 @@
%global commit d82701962f99051a18d65c215b70d41ebadd9a22
%global commit acc69e082fff67398834de3045ef48d33d2f4d54
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20241222
%global ver 0.39.0
%global commit_date 20240814
%global ver 0.38.0
Name: mpv-nightly
Version: %ver^%commit_date.%shortcommit
@@ -42,7 +42,6 @@ BuildRequires: pkgconfig(libavutil) >= 57.24.100
BuildRequires: pkgconfig(libbluray)
BuildRequires: pkgconfig(libcdio)
BuildRequires: pkgconfig(libcdio_paranoia)
BuildRequires: pkgconfig(libdisplay-info)
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libjpeg)
BuildRequires: pkgconfig(libpipewire-0.3) >= 0.3.19
@@ -183,6 +182,7 @@ sed -e "s|/usr/local/etc|%{_sysconfdir}/mpv|" -i etc/mpv.conf
-Dvdpau-gl-x11=enabled \
-Dvdpau=enabled \
-Dvector=enabled \
-Dvulkan-interop=disabled \
-Dvulkan=enabled \
-Dwayland=enabled \
-Dwerror=false \
-11
View File
@@ -1,11 +0,0 @@
--- a/desktop/packages/linux/rs.ruffle.Ruffle.desktop
+++ b/desktop/packages/linux/rs.ruffle.Ruffle.desktop
@@ -47,7 +47,7 @@ Comment[zh_CN]=播放 Flash 游戏和动画
Comment[zh_TW]=播放 Flash 遊戲和動畫
Comment=Play Flash games & movies
Icon=rs.ruffle.Ruffle
-Exec=ruffle %u
+Exec=ruffle_desktop %u
MimeType=application/x-shockwave-flash;application/vnd.adobe.flash.movie
Categories=AudioVideo;Player;Graphics;Viewer;VectorGraphics;Game
Keywords[ar]=الفلاش;swf;مشغل;محاكي;رَسْت
+21 -10
View File
@@ -1,4 +1,4 @@
%global ver 2024-12-24
%global ver 2024-08-15
%global goodver %(echo %ver | sed 's/-//g')
%global __brp_mangle_shebangs %{nil}
%bcond_without mold
@@ -14,10 +14,9 @@ Summary: A Flash Player emulator written in Rust
License: Apache-2.0 OR MIT
URL: https://ruffle.rs/
Source0: https://github.com/ruffle-rs/ruffle/archive/refs/tags/nightly-%ver.tar.gz
Patch0: desktop_file_patch.diff
Provides: ruffle
BuildRequires: cargo-rpm-macros >= 24
BuildRequires: anda-srpm-macros mold
BuildRequires: anda-srpm-macros
BuildRequires: gcc-c++ cmake java
BuildRequires: java-latest-openjdk-headless
BuildRequires: pkgconfig(alsa)
@@ -33,23 +32,35 @@ Packager: madonuko <mado@fyralabs.com>
%license LICENSE.md
%license LICENSE.dependencies
%_bindir/ruffle_desktop
%_datadir/applications/rs.ruffle.Ruffle.desktop
%_iconsdir/hicolor/scalable/apps/rs.ruffle.Ruffle.svg
%_metainfodir/rs.ruffle.Ruffle.metainfo.xml
%_datadir/applications/ruffle_desktop.desktop
%_iconsdir/hicolor/scalable/apps/ruffle_desktop.svg
%prep
%autosetup -n ruffle-nightly-%ver -p1
%autosetup -n ruffle-nightly-%ver
%cargo_prep_online
cat<<EOF > ruffle_desktop.desktop
[Desktop Entry]
Version=1.0
Type=Application
Name=Ruffle Desktop
Comment=%summary
Exec=%_bindir/ruffle_desktop
Icon=ruffle_desktop
Terminal=false
StartupNotify=false
Categories=Application;
MimeType=application/x-shockwave-flash;
EOF
%build
%{cargo_license_online} > LICENSE.dependencies
%install
cd desktop
%cargo_install
install -Dm644 packages/linux/rs.ruffle.Ruffle.svg %buildroot%_iconsdir/hicolor/scalable/apps/rs.ruffle.Ruffle.svg
install -Dm644 packages/linux/rs.ruffle.Ruffle.desktop %buildroot%_datadir/applications/rs.ruffle.Ruffle.desktop
install -Dm644 packages/linux/rs.ruffle.Ruffle.metainfo.xml %buildroot%_metainfodir/rs.ruffle.Ruffle.metainfo.xml
install -Dm644 assets/icon.svg %buildroot%_iconsdir/hicolor/scalable/apps/ruffle_desktop.svg
install -Dm644 ../ruffle_desktop.desktop %buildroot%_datadir/applications/ruffle_desktop.desktop
%changelog
* Mon Jul 29 2024 madonuko <mado@fyralabs.com>
@@ -13,8 +13,8 @@
%global crate sccache
Name: rust-sccache
Version: 0.9.0
Release: 1%?dist
Version: 0.8.1
Release: %autorelease
Summary: Ccache-like tool
License: Apache-2.0
@@ -23,13 +23,14 @@ Source: %{crates_source}
# Automatically generated patch to strip dependencies and normalize metadata
Patch: sccache-fix-metadata-auto.diff
ExclusiveArch: %{rust_arches}
BuildRequires: cargo-rpm-macros >= 24
BuildRequires: anda-srpm-macros
BuildRequires: openssl-devel
BuildRequires: gcc
BuildRequires: perl
BuildRequires: rust-packaging
BuildRequires: mold
%global _description %{expand:
Sccache is a ccache-like tool. It is used as a compiler wrapper and
@@ -47,7 +48,6 @@ License: MIT
%files -n %{crate}
%license LICENSE
#license LICENSE.dependencies
%doc CODE_OF_CONDUCT.md
%doc README.md
%{_bindir}/sccache
@@ -68,9 +68,6 @@ This package contains library source intended for building other packages which
use the "%{crate}" crate.
%files devel
%license %{crate_instdir}/LICENSE
%doc %{crate_instdir}/CODE_OF_CONDUCT.md
%doc %{crate_instdir}/README.md
%{crate_instdir}/
%package -n %{name}+default-devel
@@ -474,7 +471,6 @@ use the "webdav" feature of the "%{crate}" crate.
%endif
%install
rm -rf .git || true
%if %{with dist_server}
%cargo_install -f dist-server
%else
@@ -0,0 +1,16 @@
--- sccache-0.8.1/Cargo.toml 1970-01-01T00:00:01+00:00
+++ sccache-0.8.1/Cargo.toml 2024-07-10T16:31:31.705674+00:00
@@ -403,13 +403,3 @@
[target."cfg(unix)".dependencies.daemonize]
version = "0.5"
-[target."cfg(windows)".dependencies.winapi]
-version = "0.3"
-features = [
- "fileapi",
- "handleapi",
- "stringapiset",
- "winnls",
- "processenv",
- "std",
-]
@@ -6,7 +6,7 @@
Name: vencord-desktop
Provides: VencordDesktop = %{version}-%{release}
Version: 1.5.4
Version: 1.5.3
Release: 1%?dist
License: GPL-3.0
Summary: Vesktop is a cross platform desktop app aiming to give you a snappier Discord experience with Vencord pre-installed
+2 -2
View File
@@ -6,14 +6,14 @@
# do not perform compression in cpio
%define _source_payload w0.ufdio
%define _binary_payload w19.zstdio
%define _binary_payload w0.gzdio
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: voicevox
Version: 0.21.1
Version: 0.20.0
Release: 1%?dist
Summary: Free Japanese text-to-speech editor
License: LGPL-3.0
-50
View File
@@ -1,50 +0,0 @@
Name: WoeUSB-ng
Version: 0.2.12
Release: 1%?dist
Summary: Simple tool that enable you to create your own usb stick with Windows installer
License: GPL-3.0-only
Requires: parted dosfstools ntfsprogs p7zip p7zip-plugins xdg-utils grub2-tools
URL: https://github.com/WoeUSB/WoeUSB-ng
Source: https://github.com/WoeUSB/WoeUSB-ng/archive/refs/tags/v%version.tar.gz
Patch0: https://patch-diff.githubusercontent.com/raw/WoeUSB/WoeUSB-ng/pull/79.patch
BuildArch: noarch
BuildRequires: python3-devel python3-installer
%global _description %{expand:
WoeUSB-ng is a simple tool that enable you to create your own usb stick windows installer from an iso image or a real DVD. This is a rewrite of original WoeUSB.}
%description %_description
%prep
%autosetup -p1
%generate_buildrequires
%pyproject_buildrequires
%build
%pyproject_wheel
%install
%pyproject_install
%pyproject_save_files WoeUSB
install -Dpm644 miscellaneous/WoeUSB-ng.desktop %buildroot%_datadir/applications/WoeUSB-ng.desktop
install -Dpm644 miscellaneous/com.github.woeusb.woeusb-ng.policy %buildroot%_datadir/polkit-1/actions/com.github.woeusb.woeusb-ng.policy
%check
#pyproject_check_import
%files -f %{pyproject_files}
%_bindir/woeusb
%_bindir/woeusbgui
%_datadir/applications/WoeUSB-ng.desktop
%_iconsdir/hicolor/scalable/apps/woeusb-logo.png
%_datadir/polkit-1/actions/com.github.woeusb.woeusb-ng.policy
%changelog
%autochangelog
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "WoeUSB-ng.spec"
}
}
-1
View File
@@ -1 +0,0 @@
rpm.version(gh_tag("WoeUSB/WoeUSB-ng"));
+2 -2
View File
@@ -5,8 +5,8 @@
%global pnpm npx pnpm@%{pnpm_version}
Name: youtube-music
Version: 3.6.2
Release: 1%?dist
Version: 3.5.1
Release: 1%{?dist}
Summary: YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)
Source1: youtube-music.desktop
License: MIT
@@ -1,114 +1,115 @@
Name: budgie-extras
Version: 1.8.0
Release: 2%{?dist}
Name: budgie-extras
Version: 1.8.0
Release: 1%{?dist}
License: GPL-3.0
Summary: Additional Budgie Desktop enhancements for user experience
URL: https://ubuntubudgie.org/
License: GPL-3.0
Summary: Additional Budgie Desktop enhancements for user experience
URL: https://ubuntubudgie.org/
Source0: https://github.com/UbuntuBudgie/budgie-extras/releases/download/v%{version}/budgie-extras-%{version}.tar.xz
Patch0: 0001-fix-weathershow-desktop-widget-icon-path.patch
Source0: https://github.com/UbuntuBudgie/budgie-extras/releases/download/v%{version}/budgie-extras-%{version}.tar.xz
Patch0: 0001-fix-weathershow-desktop-widget-icon-path.patch
BuildRequires: rpm_macro(fdupes)
BuildRequires: cmake
BuildRequires: meson
BuildRequires: vala
BuildRequires: intltool
BuildRequires: rpm_macro(fdupes)
BuildRequires: cmake
BuildRequires: meson
BuildRequires: vala
BuildRequires: intltool
BuildRequires: pkgconfig(budgie-1.0)
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(gnome-settings-daemon)
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(keybinder-3.0)
BuildRequires: pkgconfig(libgnome-menu-3.0)
BuildRequires: pkgconfig(libnm)
BuildRequires: pkgconfig(libnma)
BuildRequires: pkgconfig(libnotify)
BuildRequires: pkgconfig(libsoup-2.4)
BuildRequires: pkgconfig(libwnck-3.0)
BuildRequires: pkgconfig(budgie-1.0)
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(gnome-settings-daemon)
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(keybinder-3.0)
BuildRequires: pkgconfig(libgnome-menu-3.0)
BuildRequires: pkgconfig(libnm)
BuildRequires: pkgconfig(libnma)
BuildRequires: pkgconfig(libnotify)
BuildRequires: pkgconfig(libsoup-2.4)
BuildRequires: pkgconfig(libwnck-3.0)
BuildRequires: pkgconfig(appstream)
BuildRequires: pkgconfig(granite)
BuildRequires: pkgconfig(libhandy-1)
BuildRequires: pkgconfig(zeitgeist-2.0)
BuildRequires: pkgconfig(appstream)
BuildRequires: pkgconfig(granite)
BuildRequires: pkgconfig(libhandy-1)
BuildRequires: pkgconfig(zeitgeist-2.0)
Requires: budgie-applet-app-launcher
Requires: budgie-applet-applications-menu
Requires: budgie-applet-brightness-controller
Requires: budgie-applet-clockworks
Requires: budgie-applet-countdown
Requires: budgie-applet-dropby
Requires: budgie-applet-fuzzyclock
Requires: budgie-applet-hotcorners
Requires: budgie-applet-kangaroo
Requires: budgie-applet-keyboard-autoswitch
Requires: budgie-applet-network-manager
Requires: budgie-applet-quickchar
Requires: budgie-applet-quicknote
Requires: budgie-applet-recentlyused
Requires: budgie-applet-rotation-lock
Requires: budgie-applet-showtime
Requires: budgie-applet-takeabreak
Requires: budgie-applet-visualspace
Requires: budgie-applet-wallstreet
Requires: budgie-applet-weathershow
Requires: budgie-applet-window-shuffler
Requires: budgie-applet-workspace-stopwatch
Requires: budgie-applet-wpreviews
Requires: budgie-applet-wswitcher
Requires: budgie-applet-applications-menu
Requires: budgie-applet-weathershow
Requires: budgie-applet-app-launcher
Requires: budgie-applet-brightness-controller
Requires: budgie-applet-clockworks
Requires: budgie-applet-countdown
Requires: budgie-applet-dropby
Requires: budgie-applet-fuzzyclock
Requires: budgie-applet-hotcorners
Requires: budgie-applet-kangaroo
Requires: budgie-applet-keyboard-autoswitch
Requires: budgie-applet-network-manager
Requires: budgie-applet-quickchar
Requires: budgie-applet-quicknote
Requires: budgie-applet-recentlyused
Requires: budgie-applet-rotation-lock
Requires: budgie-applet-showtime
Requires: budgie-applet-takeabreak
Requires: budgie-applet-visualspace
Requires: budgie-applet-wallstreet
Requires: budgie-applet-window-shuffler
Requires: budgie-applet-workspace-stopwatch
Requires: budgie-applet-wpreviews
Requires: budgie-applet-wswitcher
# Fix for https://github.com/UbuntuBudgie/budgie-extras/issues/233, don't know how stenstorp did not notice this
Requires: xinput
Requires: xinput
%description
This is part of a suite of python3 and Vala based applets for the Budgie
Desktop that provide additional user orientated capabilities.
The applets can be used individually or as a set.
%package common
Requires: budgie-desktop
Summary: Shared component of budgie-extras applets
BuildArch: noarch
%description common
%package common
Requires: budgie-desktop
Summary: Shared component of budgie-extras applets
BuildArch: noarch
%description common
The shared component provides for capabilities that are utilised between
budgie-extra applets.
%package daemon
Summary: Manages keyboard shortcuts
Requires: budgie-extras-common
%description daemon
%package daemon
Summary: Manages keyboard shortcuts
Requires: budgie-extras-common
%description daemon
This on logon process manages keyboard shortcuts delivered via .bde files for
various extras-plugins.
%package -n budgie-applet-app-launcher
Requires: budgie-extras-common
Summary: Applet to provide an alternative means to launch applications
Requires: budgie-extras-common
Summary: Applet to provide an alternative means to launch applications
%description -n budgie-applet-app-launcher
The app-launcher applet allows the ability to add favorite apps to the
panel as well as finding and launching applications. The list of
applications listed can be easily configured to be visible or hidden.
%package -n budgie-applet-applications-menu
Requires: budgie-extras-common
Summary: Lightweight and stylish app launcher
Requires: budgie-extras-common
Summary: Lightweight and stylish app launcher
%description -n budgie-applet-applications-menu
%{summary}
%package -n budgie-applet-brightness-controller
Requires: budgie-extras-common
Summary: A Budgie Desktop applet for productivity
Requires: budgie-extras-common
Summary: A Budgie Desktop applet for productivity
%description -n budgie-applet-brightness-controller
%{summary}
%package -n budgie-applet-clockworks
Requires: budgie-extras-common
Summary: Applet to display clock across multiple time zones
Requires: budgie-extras-common
Summary: Applet to display clock across multiple time zones
%description -n budgie-applet-clockworks
The Clockworks applet displays the current time across multiple
time zones.
%package -n budgie-applet-countdown
Requires: budgie-extras-common
Summary: Applet providing a countdown capability on the Budgie Desktop
Requires: budgie-extras-common
Summary: Applet providing a countdown capability on the Budgie Desktop
%description -n budgie-applet-countdown
The Countdown applet provides the user the ability to start an
action when the countdown reaches 0 seconds. Actions include flashing
@@ -116,8 +117,8 @@ an icon in the panel, opening a notification window, sounding a
bell or running a custom command.
%package -n budgie-applet-dropby
Requires: budgie-extras-common
Summary: Applet to popup when a USB device is connected
Requires: budgie-extras-common
Summary: Applet to popup when a USB device is connected
%description -n budgie-applet-dropby
The DropBy applet pops up in the panel when connecting a usb device.
The applet subsequently offers the option(s) to mount, unmount/eject
@@ -125,29 +126,29 @@ and in case of a flash drive, to make a local copy of the drive's
content. The info shows the free space on the volume.
%package -n budgie-applet-fuzzyclock
Requires: budgie-extras-common
Summary: Shows the time in a Fuzzy Way
Requires: budgie-extras-common
Summary: Shows the time in a Fuzzy Way
%description -n budgie-applet-fuzzyclock
%{summary}
%package -n budgie-applet-hotcorners
Requires: budgie-extras-common
Summary: Applet providing hotcorners capabilities for the Budgie Desktop
Requires: budgie-extras-common
Summary: Applet providing hotcorners capabilities for the Budgie Desktop
%description -n budgie-applet-hotcorners
The hotcorners applet allow user defined commands to be executed
when the mouse cursor is pushed into a corner of the main desktop.
%package -n budgie-applet-kangaroo
Requires: budgie-extras-common
Summary: Applet to allow quick file-browsing
Requires: budgie-extras-common
Summary: Applet to allow quick file-browsing
%description -n budgie-applet-kangaroo
The kangaroo applet allows for quick & easy browsing, across
(possibly) many directory layers, without having to do a single mouse
click.
%package -n budgie-applet-keyboard-autoswitch
Requires: budgie-extras-common
Summary: Applet adding the ability to set a different keyboard layout per application
Requires: budgie-extras-common
Summary: Applet adding the ability to set a different keyboard layout per application
%description -n budgie-applet-keyboard-autoswitch
The Keyboard Auto Switcher applet provides the user the ability to set
a different keyboard layout per application. Exceptions to the default
@@ -155,51 +156,50 @@ layout can be set by simply choosing a different layout using the
Keyboard Layout applet.
%package -n budgie-applet-network-manager
Requires: budgie-extras-common
Summary: A fork of Wingpanel Network Indicator, ported to budgie desktop
Requires: budgie-extras-common
Summary: A fork of Wingpanel Network Indicator, ported to budgie desktop
%description -n budgie-applet-network-manager
%{summary}
%package -n budgie-applet-quickchar
Requires: budgie-extras-common
Requires: budgie-extras-daemon
Summary: A mini-app to quickly choose and insert equivalents of ascii characters
Requires: budgie-extras-common
Summary: A mini-app to quickly choose and insert equivalents of ascii characters
%description -n budgie-applet-quickchar
QuickChar is a mini-app to quickly choose and insert equivalents of ascii
characters. QuickChar is activated via the Budgie Menu.
%package -n budgie-applet-quicknote
Requires: budgie-extras-common
Summary: Applet providing simple notes capability for the Budgie Desktop
Requires: budgie-extras-common
Summary: Applet providing simple notes capability for the Budgie Desktop
%description -n budgie-applet-quicknote
The quicknote applet allows a user to record a text based note.
The applet supports multiple undo and redo capabilities.
%package -n budgie-applet-recentlyused
Requires: budgie-extras-common
Summary: Applet displays files recently accessed for the Budgie Desktop
Requires: budgie-extras-common
Summary: Applet displays files recently accessed for the Budgie Desktop
%description -n budgie-applet-recentlyused
The recentlyused applet displays the users files that have been opened
or created within a configurable period of time.
%package -n budgie-applet-rotation-lock
Requires: budgie-extras-common
Summary: Applet to lock or unlock the screen rotation
Requires: budgie-extras-common
Summary: Applet to lock or unlock the screen rotation
%description -n budgie-applet-rotation-lock
The Rotation Lock applet provides the user an easy way to lock or
unlock the screen rotation.
%package -n budgie-applet-showtime
Requires: budgie-extras-common
Summary: Applet displaying date and time on the Budgie Desktop
Requires: budgie-extras-common
Summary: Applet displaying date and time on the Budgie Desktop
%description -n budgie-applet-showtime
The ShowTime applet is a digital desktop clock, showing time and/or
date. Text color of both the displayed time and date can be set
separately from the applet's menu
%package -n budgie-applet-takeabreak
Requires: budgie-extras-common
Summary: A pomodoro-like applet, to make sure to take regular breaks from working
Requires: budgie-extras-common
Summary: A pomodoro-like applet, to make sure to take regular breaks from working
%description -n budgie-applet-takeabreak
Budgie TakeaBreak is a pomodoro- like applet, to make sure to take regular
breaks from working. Options from Budgie Settings include turning the screen
@@ -208,36 +208,35 @@ time. The applet can be accessed quickly from the panel to temporarily switch
it off.
%package -n budgie-applet-visualspace
Requires: budgie-extras-common
Summary: Shows the current workspace(s), as bullet(s)
Requires: budgie-extras-common
Summary: Shows the current workspace(s), as bullet(s)
%description -n budgie-applet-visualspace
Budgie VisualSpace shows the current workspace(s), as bullet(s). The applet
includes a menu to navigate to either one of the windows or their
corresponding workspace.
%package -n budgie-applet-wallstreet
Requires: budgie-extras-common
Summary: A mini-app to switch wallpapers on regular intervalls
Requires: budgie-extras-common
Summary: A mini-app to switch wallpapers on regular intervalls
%description -n budgie-applet-wallstreet
Budgie WallStreet is a mini-app to switch wallpapers on regular intervalls.
%package -n budgie-applet-weathershow
Requires: budgie-extras-common
Summary: Applet to display the weather and forecast
Requires: budgie-extras-common
Summary: Applet to display the weather and forecast
%description -n budgie-applet-weathershow
The weathershow applet displays daily and three hourly weather
forecasts on both the desktop and a Popover.
%package -n budgie-applet-window-shuffler
Requires: budgie-extras-common
Requires: budgie-extras-daemon
Summary: Budgie Window Shuffler
Requires: budgie-extras-common
Summary: Budgie Window Shuffler
%description -n budgie-applet-window-shuffler
%{summary}
%package -n budgie-applet-workspace-stopwatch
Requires: budgie-extras-common
Summary: An applet to keep track of usage per workspace
Requires: budgie-extras-common
Summary: An applet to keep track of usage per workspace
%description -n budgie-applet-workspace-stopwatch
Workspace Timer Applet is an applet to keep track of usage per workspace, e.g.
to find out how much minutes/hours were actually spent on a job. Workspaces can
@@ -247,16 +246,14 @@ onworkspace switch/clicking the icon for popup or else every 30 seconds. Time
during suspend is automatically retracted from a workspace' time.
%package -n budgie-applet-wpreviews
Requires: budgie-extras-common
Requires: budgie-extras-daemon
Requires: budgie-extras-common
Summary: Applet providing window previews capabilities for the Budgie Desktop
%description -n budgie-applet-wpreviews
The Previews applet shows an overview of windows in an expose like way.
%package -n budgie-applet-wswitcher
Requires: budgie-extras-common
Requires: budgie-extras-daemon
Summary: An applet to show a different wallpaper on each of the workspaces
Requires: budgie-extras-common
Summary: An applet to show a different wallpaper on each of the workspaces
%description -n budgie-applet-wswitcher
Budgie Wallpaper Workspace Switcher is an application (applet) to show a
different wallpaper on each of the workspaces. Usage is simple: add the applet
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "ctwm.spec"
}
}
-7
View File
@@ -1,7 +0,0 @@
[Desktop Entry]
Name=CTWM
Comment=Claude's Tab Window Manager
TryExec=ctwm
Exec=ctwm
Type=Xsession
Encoding=UTF-8
-55
View File
@@ -1,55 +0,0 @@
Summary: Lightweight window manager with virtual workspaces
Name: ctwm
Version: 4.1.0
Release: 1%?dist
URL: https://ctwm.org
BuildRequires: libjpeg-turbo-devel libX11-devel libXext-devel libXmu-devel libXpm-devel libXt-devel libXrandr-devel cmake gcc m4
Source0: https://www.ctwm.org/dist/%{name}-%{version}.tar.xz
Source1: %{name}.desktop
License: MIT
Requires: m4
# Derived from RPMSphere's packaging
%description
CTWM is a window manager based on TWM (with virtual workspaces added).
%prep
%setup -q
%build
%cmake
%cmake_build
%install
%cmake_install
%{__install} -Dm644 %{SOURCE1} %{buildroot}%{_datadir}/xsessions/%{name}.desktop
%files
%doc README.md CHANGES.md
%license COPYRIGHT
%{_bindir}/%{name}
%{_mandir}/man1/%{name}*
%{_datadir}/xsessions/%{name}.desktop
%{_datadir}/ctwm
%{_datadir}/doc/ctwm/ctwm.1.html
%{_datadir}/examples/ctwm/system.ctwmrc
%changelog
* Tue Dec 17 2024 Owen Zimmerman <owen@fyralabs.com>
- Add .desktop and .rhai file, fix dependancies, and switch to .tar.xz source (smaller download)
* Thu Jun 27 2024 Jaiden Riordan <jade@fyralabs.com> - 4.1.0
- Rewrite for Terra, Thanks RPMSphere
* Tue Dec 24 2019 Wei-Lun Chao <bluebat@member.fsf.org> - 4.0.3
- Rebuilt for Fedora
* Sat Apr 9 2011 Agnelo de la Crotche <agnelo@unixversal.com>
- package for openSUSE 11.3/11.4
* Thu Feb 16 2006 Richard Levitte <richard@levitte.org>
- Release ctwm 3.8a.
* Wed May 4 2005 Rudolph T Maceyko <rm55@pobox.com>
- Tweaks. Added all .ctwmrc files as well as sound and VMS docs.
* Wed May 4 2005 Richard Levitte <richard@levitte.org>
- Changed some directory specifications to RedHat-ish standards.
* Tue May 3 2005 Richard Levitte <richard@levitte.org>
- Received the original from Johan Vromans. Adjusted it to become
an official .spec file.
-1
View File
@@ -1 +0,0 @@
rpm.version(find("<p>Current release: ([\\d.]+)</p>", get("https://www.ctwm.org/download.html"), 1));
@@ -0,0 +1,99 @@
diff --git a/src/Core/Package.vala b/src/Core/Package.vala
index 62d206fa..cbf05983 100644
--- a/src/Core/Package.vala
+++ b/src/Core/Package.vala
@@ -42,8 +42,29 @@ public enum RuntimeStatus {
}
public class AppCenterCore.Package : Object {
+ // locally installed packages
public const string APPCENTER_PACKAGE_ORIGIN = "appcenter";
- private const string ELEMENTARY_STABLE_PACKAGE_ORIGIN = "elementary-stable-jammy-main";
+
+ // Fedora repositories
+ private const string FEDORA_STABLE_PACKAGE_ORIGIN = "fedora";
+ private const string FEDORA_UPDATES_PACKAGE_ORIGIN = "updates";
+ private const string FEDORA_TESTING_PACKAGE_ORIGIN = "updates-testing";
+
+ // RPMFusion repositories
+ private const string RPMFUSION_FREE_STABLE_PACKAGE_ORIGIN = "rpmfusion-free";
+ private const string RPMFUSION_FREE_UPDATES_PACKAGE_ORIGIN = "rpmfusion-free-updates";
+ private const string RPMFUSION_FREE_TESTING_PACKAGE_ORIGIN = "rpmfusion-free-updates-testing";
+ private const string RPMFUSION_NONFREE_STABLE_PACKAGE_ORIGIN = "rpmfusion-nonfree";
+ private const string RPMFUSION_NONFREE_UPDATES_PACKAGE_ORIGIN = "rpmfusion-nonfree-updates";
+ private const string RPMFUSION_NONFREE_TESTING_PACKAGE_ORIGIN = "rpmfusion-nonfree-updates-testing";
+
+ // Ultramarine repositories
+ private const string ULTRAMARINE_PACKAGE_ORIGIN = "ultramarine";
+ private const string AKMODS_SECUREBOOT_PACKAGE_ORIGIN = "copr::egeretto:akmods-secureboot";
+ private const string KMODTOOL_SECUREBOOT_PACKAGE_ORIGIN = "copr::egeretto:kmodtool-secureboot";
+
+ // Terra repositories
+ private const string TERRA_PACKAGE_ORIGIN = "terra";
public RuntimeStatus runtime_status { get; set; default = RuntimeStatus.UP_TO_DATE; }
@@ -216,8 +237,12 @@ public class AppCenterCore.Package : Object {
public bool is_native {
get {
switch (component.get_origin ()) {
- case APPCENTER_PACKAGE_ORIGIN:
- case ELEMENTARY_STABLE_PACKAGE_ORIGIN:
+ case FEDORA_STABLE_PACKAGE_ORIGIN:
+ case FEDORA_UPDATES_PACKAGE_ORIGIN:
+ case FEDORA_TESTING_PACKAGE_ORIGIN:
+ case ULTRAMARINE_PACKAGE_ORIGIN:
+ case AKMODS_SECUREBOOT_PACKAGE_ORIGIN:
+ case KMODTOOL_SECUREBOOT_PACKAGE_ORIGIN:
return true;
default:
return false;
@@ -328,12 +353,33 @@ public class AppCenterCore.Package : Object {
owned get {
unowned string origin = component.get_origin ();
if (backend is PackageKitBackend) {
- if (origin == APPCENTER_PACKAGE_ORIGIN) {
- return _("AppCenter");
- } else if (origin == ELEMENTARY_STABLE_PACKAGE_ORIGIN) {
- return _("elementary Updates");
- } else if (origin.has_prefix ("ubuntu-")) {
- return _("Ubuntu (non-curated)");
+ switch (origin) {
+ case FEDORA_STABLE_PACKAGE_ORIGIN:
+ return "Fedora";
+ case FEDORA_UPDATES_PACKAGE_ORIGIN:
+ return "Fedora Updates";
+ case FEDORA_TESTING_PACKAGE_ORIGIN:
+ return "Fedora Updates (Testing)";
+ case RPMFUSION_FREE_STABLE_PACKAGE_ORIGIN:
+ return "RPMFusion";
+ case RPMFUSION_FREE_UPDATES_PACKAGE_ORIGIN:
+ return "RPMFusion Updates";
+ case RPMFUSION_FREE_TESTING_PACKAGE_ORIGIN:
+ return "RPMFusion Updates (Testing)";
+ case RPMFUSION_NONFREE_STABLE_PACKAGE_ORIGIN:
+ return "RPMFusion (Non-free Software)";
+ case RPMFUSION_NONFREE_UPDATES_PACKAGE_ORIGIN:
+ return "RPMFusion (Non-free Software) Updates";
+ case RPMFUSION_NONFREE_TESTING_PACKAGE_ORIGIN:
+ return "RPMFusion (Non-free Software) Updates (Testing)";
+ case ULTRAMARINE_PACKAGE_ORIGIN:
+ return "Ultramarine";
+ case AKMODS_SECUREBOOT_PACKAGE_ORIGIN:
+ return "Secureboot support for akmods";
+ case KMODTOOL_SECUREBOOT_PACKAGE_ORIGIN:
+ return "Secureboot support for kmodtool";
+ case TERRA_PACKAGE_ORIGIN:
+ return "Terra";
}
} else if (backend is FlatpakBackend) {
var fp_package = this as FlatpakPackage;
@@ -342,8 +388,6 @@ public class AppCenterCore.Package : Object {
}
return fp_package.remote_title;
- } else if (backend is UbuntuDriversBackend) {
- return _("Ubuntu Drivers");
}
return _("Unknown Origin (non-curated)");
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-appcenter.spec"
}
}
@@ -0,0 +1,10 @@
# false positives
addFilter("E: invalid-lc-messages-dir /usr/share/locale/bh*")
addFilter("E: invalid-lc-messages-dir /usr/share/locale/mo*")
# don't care about manpages
addFilter("W: no-manual-page-for-binary io.elementary.appcenter*")
# don't care about no documentation for sub-packages
addFilter("W: no-documentation*")
@@ -0,0 +1,315 @@
%global appname io.elementary.appcenter
Name: elementary-appcenter
Summary: Software Center from elementary
Version: 8.0.0
Release: 1%?dist
License: GPL-3.0
Provides: appcenter = %{version}-%{release}
Obsoletes: appcenter < 7.2.1-2
URL: https://github.com/elementary/appcenter
Source0: %url/archive/%{version}/appcenter-%{version}.tar.gz
Patch0: pr2099.patch
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: vala
BuildRequires: appstream-vala
BuildRequires: pkgconfig(appstream) >= 0.10.0
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(flatpak)
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(granite) >= 6.0.0
BuildRequires: pkgconfig(gtk+-3.0) >= 3.10
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(libhandy-1)
BuildRequires: pkgconfig(libsoup-2.4)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(packagekit-glib2)
BuildRequires: pkgconfig(polkit-gobject-1)
Requires: PackageKit
Requires: hicolor-icon-theme
%description
AppCenter is a native Gtk+ app store built on AppStream and Packagekit.
%package gnome-shell-search-provider
Summary: Software Center from elementary (gnome-shell search provider)
Provides: appcenter-gnome-shell-search-provider = %{version}-%{release}
Obsoletes: appcenter-gnome-shell-search-provider < 7.2.1-2
BuildArch: noarch
Requires: %{name} = %{version}-%{release}
Requires: gnome-shell
Supplements: (%{name} and gnome-shell)
%description gnome-shell-search-provider
AppCenter is a native Gtk+ app store built on AppStream and Packagekit.
This package contains the gnome-shell search provider.
%prep
%autosetup -p1 -n appcenter-%version
%build
%meson -Dpayments=false -Dcurated=false -Dhide_upstream_distro_apps=false
%meson_build
%install
%meson_install
%find_lang %{appname}
# remove empty hidden apps file
rm -r %{buildroot}/%{_sysconfdir}/%{appname}/appcenter.hiddenapps
# create autostart entry symlink
mkdir -p %{buildroot}/%{_sysconfdir}/xdg/autostart/
ln -s %{_datadir}/applications/%{appname}-daemon.desktop \
%{buildroot}/%{_sysconfdir}/xdg/autostart/%{appname}-daemon.desktop
%check
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}*.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%files -f %{appname}.lang
%doc README.md
%license COPYING
%dir %{_sysconfdir}/%{appname}
%config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}-daemon.desktop
%{_bindir}/%{appname}
%{_datadir}/applications/%{appname}*.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}{,-symbolic}.svg
%{_datadir}/metainfo/%{appname}.metainfo.xml
%{_datadir}/polkit-1/actions/%{appname}.policy
%files gnome-shell-search-provider
%{_datadir}/gnome-shell/search-providers/%{appname}.search-provider.ini
%changelog
* Tue Jun 07 2022 Fabio Valentini <decathorpe@gmail.com> - 3.10.0-1
- Update to version 3.10.0.
* Tue Dec 14 2021 Fabio Valentini <decathorpe@gmail.com> - 3.9.1-1
- Update to version 3.9.1.
* Wed Nov 24 2021 Fabio Valentini <decathorpe@gmail.com> - 3.9.0-1
- Update to version 3.9.0.
* Sat Oct 30 2021 Fabio Valentini <decathorpe@gmail.com> - 3.8.2-1
- Update to version 3.8.2.
* Wed Oct 27 2021 Fabio Valentini <decathorpe@gmail.com> - 3.8.1-1
- Update to version 3.8.1.
* Tue Sep 28 2021 Fabio Valentini <decathorpe@gmail.com> - 3.8.0-1
- Update to version 3.8.0.
* Fri Sep 17 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.1-3
- Mark flatpak sources in the UI.
* Fri Sep 17 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.1-2
- Hard-code Fedora instead of ubuntu repository names.
* Tue Aug 31 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.1-1
- Update to version 3.7.1.
* Fri Aug 27 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.0-1
- Update to version 3.7.0.
* Tue Aug 17 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.3-1
- Update to version 3.6.3.
* Wed Aug 11 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.2-1
- Update to version 3.6.2.
* Thu Aug 05 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.1-1
- Update to version 3.6.1.
* Fri Jul 16 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.0-1
- Update to version 3.6.0.
* Fri Oct 09 2020 Fabio Valentini <decathorpe@gmail.com> - 3.5.1-1
- Update to version 3.5.1.
* Wed Oct 07 2020 Fabio Valentini <decathorpe@gmail.com> - 3.5.0-1
- Update to version 3.5.0.
* Fri Aug 07 2020 Fabio Valentini <decathorpe@gmail.com> - 3.4.2-1
- Update to version 3.4.2.
* Thu Jul 02 2020 Fabio Valentini <decathorpe@gmail.com> - 3.4.1-1
- Update to version 3.4.1.
* Thu May 28 2020 Fabio Valentini <decathorpe@gmail.com> - 3.4.0-1
- Update to version 3.4.0.
* Thu Apr 30 2020 Fabio Valentini <decathorpe@gmail.com> - 3.3.0-1
- Update to version 3.3.0.
* Thu Apr 09 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.4-1
- Update to version 3.2.4.
* Thu Apr 02 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.3-1
- Update to version 3.2.3.
* Mon Mar 23 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.2-1
- Update to version 3.2.2.
* Fri Feb 28 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.1-1
- Update to version 3.2.1.
* Fri Feb 15 2019 Fabio Valentini <decathorpe@gmail.com> - 3.1.1-1
- Update to version 3.1.1.
* Wed Jan 02 2019 Fabio Valentini <decathorpe@gmail.com> - 3.1.0-1
- Update to version 3.1.0.
- Remove empty blacklist file.
* Fri Nov 30 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0.1-2
- Drop elementaryOS blacklist in favor of the version shipped with appcenter.
* Thu Oct 25 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0.1-1
- Update to version 3.0.1.
* Tue Oct 16 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0-2
- Add missing autostart entry symlink for the daemon.
* Tue Oct 16 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0-1
- Update to version 3.0.
- Add gnome-shell search provider sub-package.
- Explicitly disable payment system and curated applications.
- Update blacklist file to current version from elementaryOS.
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.9-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Jun 13 2018 Fabio Valentini <decathorpe@gmail.com> - 0.2.9-2
- Rebuild for granite5 soname bump.
* Thu Mar 08 2018 Fabio Valentini <decathorpe@gmail.com> - 0.2.9-1
- Update to version 0.2.9.
- Add patch to fix build with the newer vala and PackageKit on f28+.
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Fri Jan 26 2018 Fabio Valentini <decathorpe@gmail.com> - 0.2.8-1
- Update to version 0.2.8.
* Tue Nov 07 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.7-1
- Update to version 0.2.7.
* Fri Nov 03 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.6-2
- Rebuild for granite soname bump.
* Mon Sep 18 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.6-1
- Update to version 0.2.6.
* Sat Aug 05 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.5-1
- Update to version 0.2.5.
- Include fedora-specific blacklist adapted from elementaryOS.
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Tue Jul 04 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.4-1
- Update to version 0.2.4.
* Thu Jun 01 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.3-1
- Update to version 0.2.3.
* Mon May 22 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.2-1
- Update to version 0.2.2.
* Sat May 20 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.1-1
- Update to version 0.2.1.
* Wed May 17 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2-1
- Update to version 0.2.
* Thu Mar 16 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.4-1
- Update to version 0.1.4.
- Depend on generic icon again, since it _should_ work.
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Jan 27 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-7
- Add patch to rename generic icon to something branded.
* Wed Jan 25 2017 Fabio Valentini <decathorpe@gmail.com>
- Remove explicit BR: /usr/bin/pkgconfig.
* Mon Jan 23 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-6
- Explicitly depend on /usr/bin/pkg-config.
* Mon Jan 23 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-5
- Add missing scriptlets.
* Sat Jan 21 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-4
- Include icon to fix appdata metadata generation.
* Tue Jan 10 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-3
- Clean up spec file.
* Sat Dec 24 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-2
- Enable libunity support.
* Mon Dec 05 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-1
- Update to version 0.1.3.
* Sun Nov 20 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.2-2
- Build out of tree.
* Sat Oct 29 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.2-1
- Update to version 0.1.2.
* Fri Oct 07 2016 Neal Gompa <ngompa13@gmail.com> - 0.1.1-4
- Add patch to support AppStream 0.10.0 in F25 (LP#1626398)
* Thu Sep 29 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.1-3
- Mass rebuild.
* Wed Sep 28 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.1-2
- Spec file cleanups.
* Tue Sep 27 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.1-1
- Update to version 0.1.1.
* Sat Sep 17 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1-2
- Require PackageKit.
* Thu Aug 18 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1-1
- Update to version 0.1.
@@ -0,0 +1,311 @@
commit fce55d9373bfb82953191b32e276a2129ffcb8c1
Author: Marius Meisenzahl <meisenzahl@users.noreply.github.com>
Date: Wed Feb 7 00:14:43 2024 +0100
Add support for AppStream 1.0 (#2099)
diff --git a/src/Core/FlatpakBackend.vala b/src/Core/FlatpakBackend.vala
index 98931505..10f2baab 100644
--- a/src/Core/FlatpakBackend.vala
+++ b/src/Core/FlatpakBackend.vala
@@ -400,8 +400,13 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
var category_array = new GLib.GenericArray<AppStream.Category> ();
category_array.add (category);
+#if HAS_APPSTREAM_1_0
+ AppStream.utils_sort_components_into_categories (user_appstream_pool.get_components ().as_array (), category_array, false);
+ AppStream.utils_sort_components_into_categories (system_appstream_pool.get_components ().as_array (), category_array, false);
+#else
AppStream.utils_sort_components_into_categories (user_appstream_pool.get_components (), category_array, false);
AppStream.utils_sort_components_into_categories (system_appstream_pool.get_components (), category_array, false);
+#endif
components = category.get_components ();
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
@@ -417,13 +422,21 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
var comps = user_appstream_pool.search (query);
if (category == null) {
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var packages = get_packages_for_component_id (comp.get_id ());
apps.add_all (packages);
});
} else {
var cat_packages = get_applications_for_category (category);
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var packages = get_packages_for_component_id (comp.get_id ());
foreach (var package in packages) {
if (package in cat_packages) {
@@ -435,13 +448,21 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
comps = system_appstream_pool.search (query);
if (category == null) {
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var packages = get_packages_for_component_id (comp.get_id ());
apps.add_all (packages);
});
} else {
var cat_packages = get_applications_for_category (category);
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var packages = get_packages_for_component_id (comp.get_id ());
foreach (var package in packages) {
if (package in cat_packages) {
@@ -510,7 +531,11 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
continue;
}
+#if HAS_APPSTREAM_1_0
+ if (package.component.get_developer ().get_name () == author) {
+#else
if (package.component.developer_name == author) {
+#endif
package_ids.add (package.component.id);
AppCenterCore.Package? user_package = null;
@@ -1095,7 +1120,11 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
warning ("Errors found in flatpak appdata, some components may be incomplete/missing: %s", e.message);
} finally {
var comp_validator = ComponentValidator.get_default ();
+#if HAS_APPSTREAM_1_0
+ user_appstream_pool.get_components ().as_array ().foreach ((comp) => {
+#else
user_appstream_pool.get_components ().foreach ((comp) => {
+#endif
if (!comp_validator.validate (comp)) {
return;
}
@@ -1133,7 +1162,11 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
warning ("Errors found in flatpak appdata, some components may be incomplete/missing: %s", e.message);
} finally {
var comp_validator = ComponentValidator.get_default ();
+#if HAS_APPSTREAM_1_0
+ system_appstream_pool.get_components ().as_array ().foreach ((comp) => {
+#else
system_appstream_pool.get_components ().foreach ((comp) => {
+#endif
if (!comp_validator.validate (comp)) {
return;
}
diff --git a/src/Core/Package.vala b/src/Core/Package.vala
index 0f9a90c4..ed141292 100644
--- a/src/Core/Package.vala
+++ b/src/Core/Package.vala
@@ -306,7 +306,11 @@ public class AppCenterCore.Package : Object {
return _author;
}
+#if HAS_APPSTREAM_1_0
+ _author = component.get_developer ().get_name ();
+#else
_author = component.developer_name;
+#endif
if (_author == null) {
var project_group = component.project_group;
@@ -677,7 +681,11 @@ public class AppCenterCore.Package : Object {
}
try {
+#if HAS_APPSTREAM_1_0
+ description = AppStream.markup_convert (description, TEXT);
+#else
description = AppStream.markup_convert_simple (description);
+#endif
} catch (Error e) {
warning ("Failed to convert description to markup: %s", e.message);
}
@@ -919,7 +927,11 @@ public class AppCenterCore.Package : Object {
}
public AppStream.Release? get_newest_release () {
+#if HAS_APPSTREAM_1_0
+ var releases = component.get_releases_plain ().get_entries ();
+#else
var releases = component.get_releases ();
+#endif
releases.sort_with_data ((a, b) => {
if (a.get_version () == null || b.get_version () == null) {
if (a.get_version () != null) {
diff --git a/src/Core/PackageKitBackend.vala b/src/Core/PackageKitBackend.vala
index 09da4074..a108831e 100644
--- a/src/Core/PackageKitBackend.vala
+++ b/src/Core/PackageKitBackend.vala
@@ -275,7 +275,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
} finally {
var new_package_list = new Gee.HashMap<string, Package> ();
var comp_validator = ComponentValidator.get_default ();
+#if HAS_APPSTREAM_1_0
+ appstream_pool.get_components ().as_array ().foreach ((comp) => {
+#else
appstream_pool.get_components ().foreach ((comp) => {
+#endif
if (!comp_validator.validate (comp)) {
return;
}
@@ -317,7 +321,12 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
component.set_id (id);
component.set_origin (Package.APPCENTER_PACKAGE_ORIGIN);
-#if HAS_APPSTREAM_0_15
+#if HAS_APPSTREAM_1_0
+ var components = new AppStream.ComponentBox (AppStream.ComponentBoxFlags.NONE);
+ components.add (component);
+
+ appstream_pool.add_components (components);
+#elif HAS_APPSTREAM_0_15
var components = new GenericArray<AppStream.Component> ();
components.add (component);
@@ -430,7 +439,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
break;
}
+#if HAS_APPSTREAM_1_0
+ if (package.component.get_developer ().get_name () == author) {
+#else
if (package.component.developer_name == author) {
+#endif
packages.add (package);
}
}
@@ -447,7 +460,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
var category_array = new GLib.GenericArray<AppStream.Category> ();
category_array.add (category);
+#if HAS_APPSTREAM_1_0
+ AppStream.utils_sort_components_into_categories (appstream_pool.get_components ().as_array (), category_array, true);
+#else
AppStream.utils_sort_components_into_categories (appstream_pool.get_components (), category_array, true);
+#endif
components = category.get_components ();
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
@@ -465,7 +482,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
var comps = appstream_pool.search (query);
if (category == null) {
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var package = get_package_for_component_id (comp.get_id ());
if (package != null) {
apps.add (package);
@@ -473,7 +494,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
});
} else {
var cat_packages = get_applications_for_category (category);
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var package = get_package_for_component_id (comp.get_id ());
if (package != null && package in cat_packages) {
apps.add (package);
diff --git a/src/Views/AppInfoView.vala b/src/Views/AppInfoView.vala
index 5a3a361a..bef37f0e 100644
--- a/src/Views/AppInfoView.vala
+++ b/src/Views/AppInfoView.vala
@@ -310,8 +310,16 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
oars_flowbox.add (uncurated);
}
#endif
+
+#if HAS_APPSTREAM_1_0
+ var active_locale = "en-US";
+ if (package_component.get_context () != null) {
+ active_locale = package_component.get_context ().get_locale () ?? "en-US";
+ }
+#else
var active_locale = package_component.get_active_locale ();
- if (active_locale != "en_US") {
+#endif
+ if (active_locale != "en_US" && active_locale != "en-US") {
var percent_translated = package_component.get_language (
// Expects language without locale
active_locale.split ("_")[0]
@@ -492,7 +500,11 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
}
}
+#if HAS_APPSTREAM_1_0
+ screenshots = package_component.get_screenshots_all ();
+#else
screenshots = package_component.get_screenshots ();
+#endif
if (screenshots.length > 0) {
screenshot_carousel = new Hdy.Carousel () {
@@ -1030,7 +1042,11 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
get_app_download_size.begin ();
Idle.add (() => {
+#if HAS_APPSTREAM_1_0
+ var releases = package.component.get_releases_plain ().get_entries ();
+#else
var releases = package.component.get_releases ();
+#endif
foreach (unowned var release in releases) {
if (release.get_version () == null) {
@@ -1049,7 +1065,11 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
release_carousel.add (release_row);
+#if HAS_APPSTREAM_1_0
+ if (package.installed && AppStream.vercmp_simple (release.get_version (), package.get_version ()) <= 0) {
+#else
if (package.installed && AppStream.utils_compare_versions (release.get_version (), package.get_version ()) <= 0) {
+#endif
break;
}
}
diff --git a/src/Widgets/ReleaseRow.vala b/src/Widgets/ReleaseRow.vala
index 3b487914..36fcbc76 100644
--- a/src/Widgets/ReleaseRow.vala
+++ b/src/Widgets/ReleaseRow.vala
@@ -116,7 +116,11 @@ public class AppCenter.Widgets.ReleaseRow : Gtk.Box {
private string format_release_description (string? description ) {
if (description != null) {
try {
+#if HAS_APPSTREAM_1_0
+ var markup = AppStream.markup_convert (description, TEXT);
+#else
var markup = AppStream.markup_convert_simple (description);
+#endif
if (markup.strip () != "") {
return markup;
diff --git a/src/meson.build b/src/meson.build
index d3d558ef..df69a0bf 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -78,6 +78,10 @@ if appstream.version().version_compare('>=0.16')
args += '--define=HAS_APPSTREAM_0_16'
endif
+if appstream.version().version_compare('>=1.0')
+ args += '--define=HAS_APPSTREAM_1_0'
+endif
+
if get_option('packagekit_backend')
appcenter_files += files(
'Core/PackageKitBackend.vala',
@@ -0,0 +1 @@
rpm.version(gh("elementary/appcenter"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "contractor.spec"
}
}
@@ -0,0 +1,58 @@
Name: contractor
Version: 0.3.5
Release: 1%{?dist}
Summary: Desktop-wide extension service
License: GPL-3.0-or-later
URL: https://github.com/elementary/contractor
Source0: %{url}/archive/%{version}/contractor-%{version}.tar.gz
BuildRequires: gcc
BuildRequires: vala
BuildRequires: meson
# data/meson.build
BuildRequires: pkgconfig(dbus-1)
# src/meson.build
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(gio-unix-2.0)
BuildRequires: pkgconfig(glib-2.0)
# For %%{_datadir}/dbus-1/services/ directory:
Requires: dbus-common
%description
An extension service that allows apps to use the exposed functionality
of registered apps. This way, apps don't have to have the functions hard
coded into them.
%prep
%autosetup
%build
%meson
%meson_build
%install
%meson_install
# Create the the directory where other programs put their contracts
mkdir -p %{buildroot}/%{_datadir}/contractor
%files
%doc README.md
%license COPYING
%{_bindir}/contractor
%dir %{_datadir}/contractor
%{_datadir}/dbus-1/services/org.elementary.contractor.service
%changelog
%autochangelog
@@ -0,0 +1 @@
rpm.version(gh("elementary/contractor"))
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-calculator.spec"
}
}
@@ -0,0 +1,74 @@
%global srcname calculator
%global appname io.elementary.calculator
Name: elementary-calculator
Summary: Calculator app designed for elementary
Version: 8.0.0
Release: 1%?dist
License: GPL-3.0-or-later
URL: https://github.com/elementary/%{srcname}
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson >= 0.49
BuildRequires: vala
BuildRequires: pkgconfig(granite-7) >= 7.0.0
BuildRequires: pkgconfig(gtk4)
BuildRequires: fdupes
Requires: hicolor-icon-theme
Provides: pantheon-calculator = %{version}-%{release}
Obsoletes: pantheon-calculator < 0.1.3-5
%description
A simple calculator for everyday use.
It supports basic and some scientific calculations, including trigonometry
functions (sin, cos, and tan).
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
%meson
%meson_build
%install
%meson_install
%find_lang %{appname}
%fdupes %buildroot/%_datadir/icons/hicolor
%check
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%files -f %{appname}.lang
%license COPYING
%doc README.md
%{_bindir}/%{appname}
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
%{_datadir}/metainfo/%{appname}.metainfo.xml
%changelog
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 1.7.2-1
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/calculator"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-calendar.spec"
}
}
@@ -0,0 +1,109 @@
%global srcname calendar
%global appname io.elementary.calendar
%global __provides_exclude_from ^%{_libdir}/%{appname}/.*\\.so$
Name: elementary-calendar
Summary: Desktop calendar app designed for elementary
Version: 8.0.0
Release: 1%?dist
License: GPL-3.0-or-later
URL: https://github.com/elementary/calendar
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: pkgconfig(champlain-0.12)
BuildRequires: pkgconfig(libecal-2.0)
BuildRequires: pkgconfig(granite)
BuildRequires: pkgconfig(libhandy-1)
# BuildRequires: pkgconfig(libportal)
BuildRequires: pkgconfig(libportal-gtk3)
BuildRequires: folks-devel
BuildRequires: libgee-devel
BuildRequires: pkgconfig(geocode-glib-2.0)
BuildRequires: geoclue2-devel
BuildRequires: glib2-devel
BuildRequires: gtk+-devel
BuildRequires: libical
BuildRequires: libhandy >= 0.90.0
BuildRequires: meson
BuildRequires: vala
BuildRequires: evolution-data-server-devel
BuildRequires: fdupes
Requires: hicolor-icon-theme
%description
A slim, lightweight calendar app that syncs and manages multiple
calendars in one place, like Google Calendar, Outlook and CalDAV.
%package devel
Summary: The official elementary calendar (devel files)
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
A slim, lightweight calendar app that syncs and manages multiple
calendars in one place, like Google Calendar, Outlook and CalDAV.
This package contains the development files.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
%meson
%meson_build
%install
%meson_install
%find_lang %{appname}
%fdupes %buildroot/%_datadir/icons/hicolor
%check
%dnl desktop-file-validate %{buildroot}/%{_sysconfdir}/xdg/autostart/%{appname}-daemon.desktop
desktop-file-validate %{buildroot}/%{_datadir}/applications/%{appname}.desktop
appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%files -f %{appname}.lang
%doc README.md
%license COPYING
%dnl %config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}-daemon.desktop
%{_bindir}/%{appname}
%{_libdir}/lib%{name}.so.0*
%{_libdir}/%{appname}/
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
%{_datadir}/metainfo/%{appname}.metainfo.xml
%files devel
%{_includedir}/%{name}/
%{_libdir}/lib%{name}.so
%{_libdir}/pkgconfig/%{name}.pc
%{_datadir}/vala/vapi/%{name}.deps
%{_datadir}/vala/vapi/%{name}.vapi
%changelog
* Thu Nov 17 2022 windowsboy111 <wboy111@outlook.com> - 6.1.2-1
- new version
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com>
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/calendar"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-camera.spec"
}
}
@@ -0,0 +1,79 @@
%global srcname camera
%global appname io.elementary.camera
Name: elementary-camera
Summary: Camera app designed for elementary
Version: 8.0.0
Release: 1%?dist
License: GPL-3.0
URL: https://github.com/elementary/camera
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson >= 0.46
BuildRequires: vala
BuildRequires: fdupes
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(granite) >= 6.0.0
BuildRequires: pkgconfig(gstreamer-1.0)
BuildRequires: pkgconfig(gstreamer-pbutils-1.0)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libcanberra)
BuildRequires: pkgconfig(libhandy-1) >= 0.90.0
Requires: hicolor-icon-theme
%description
Camera is a simple app to take photos with a webcam.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
%meson
%meson_build
%install
%meson_install
%find_lang %{appname}
%fdupes %buildroot/%_datadir/icons/hicolor
%check
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%files -f %{appname}.lang
%license COPYING
%doc README.md
%{_bindir}/%{appname}
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
%{_datadir}/metainfo/%{appname}.metainfo.xml
%changelog
* Tue Dec 06 2022 root - 6.2.1-1
- new version
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com>
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/camera"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-capnet-assist.spec"
}
}
@@ -0,0 +1,86 @@
%global srcname capnet-assist
%global appname io.elementary.%{srcname}
Name: elementary-capnet-assist
Summary: Captive Portal Assistant for elementary
Version: 8.0.0
Release: 1%?dist
License: GPL-3.0-or-later
URL: https://github.com/elementary/capnet-assist
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: vala
BuildRequires: pkgconfig(gcr-3)
BuildRequires: pkgconfig(gcr-ui-3)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(granite-7)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libhandy-1) >= 1.0.0
BuildRequires: pkgconfig(webkit2gtk-4.1)
BuildRequires: pkgconfig(gcr-4)
BuildRequires: pkgconfig(libadwaita-1)
BuildRequires: pkgconfig(webkitgtk-6.0)
BuildRequires: fdupes
Requires: NetworkManager
Requires: hicolor-icon-theme
%description
Assists users in connective to Captive Portals such as those found on
public access points in train stations, coffee shops, universities,
etc.
Upon detection, the assistant appears showing the captive portal. Once
a connection is known to have been established, it dismisses itself.
Written in Vala and using WebkitGtk+.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
%meson
%meson_build
%install
%meson_install
%find_lang %{appname}
%fdupes %buildroot%_datadir/icons/hicolor/
%check
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%files -f %{appname}.lang
%doc README.md
%license COPYING
%{_bindir}/%{appname}
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
%{_datadir}/metainfo/%{appname}.metainfo.xml
%changelog
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 2.4.2-1
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/capnet-assist"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-code.spec"
}
}
@@ -0,0 +1,107 @@
%global srcname code
%global appname io.elementary.code
%global __provides_exclude_from ^%{_libdir}/%{appname}/.*\\.so$
Name: elementary-code
Summary: Code editor from elementary
Version: 7.3.0
Release: 1%?dist
License: GPL-3.0
URL: https://github.com/elementary/%{srcname}
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: vala
BuildRequires: polkit-devel
# keep in sync with the available version of vala
BuildRequires: pkgconfig(libvala-0.56)
BuildRequires: pkgconfig(editorconfig)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(gee-0.8) >= 0.8.5
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.20
BuildRequires: pkgconfig(glib-2.0) >= 2.30.0
BuildRequires: pkgconfig(granite) >= 6.0.0
BuildRequires: pkgconfig(gtksourceview-4)
BuildRequires: pkgconfig(gtkspell3-3.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 3.6.0
BuildRequires: pkgconfig(libgit2-glib-1.0)
BuildRequires: pkgconfig(libhandy-1) >= 0.90.0
BuildRequires: pkgconfig(libpeas-1.0)
BuildRequires: pkgconfig(libpeas-gtk-1.0)
BuildRequires: pkgconfig(libsoup-2.4)
BuildRequires: pkgconfig(pangoft2)
BuildRequires: pkgconfig(vte-2.91)
BuildRequires: fdupes
Requires: hicolor-icon-theme
%description
%{summary}.
%package devel
Summary: The text editor that works (development files)
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
%{summary}.
This package contains the development headers.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
%meson
%meson_build
%install
%meson_install
%find_lang %{appname}
%fdupes %buildroot%_datadir/icons/hicolor/
%files -f %{appname}.lang
%doc README.md
%license COPYING
%{_bindir}/%{appname}
%{_libdir}/%{appname}/
%{_libdir}/libcodecore.so.0
%{_libdir}/libcodecore.so.0.0
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/glib-2.0/schemas/%{appname}*.gschema.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
%{_datadir}/%{appname}/
%{_datadir}/gtksourceview-4/styles/elementary-dark.xml
%{_datadir}/gtksourceview-4/styles/elementary-light.xml
%{_datadir}/metainfo/io.elementary.code.metainfo.xml
%{_datadir}/polkit-1/actions/%{appname}.policy
%{_mandir}/man1/%{appname}.1.gz
%files devel
%{_includedir}/codecore.h
%{_libdir}/libcodecore.so
%{_libdir}/pkgconfig/codecore.pc
%{_datadir}/vala/vapi/codecore.deps
%{_datadir}/vala/vapi/codecore.vapi
%changelog
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 6.2.0-1
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/code"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-files.spec"
}
}
@@ -0,0 +1,151 @@
%global srcname files
%global appname io.elementary.files
%global __provides_exclude_from ^%{_libdir}/%{appname}/.*\\.so$
Name: elementary-files
Summary: File manager from elementary
Version: 7.0.0
Release: 1%?dist
License: GPL-3.0
URL: https://github.com/elementary/%{srcname}
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
# contracts for compressing/uncompressing files with file-roller
Source1: file-roller-compress.contract
Source2: file-roller-extract-here.contract
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson >= 0.50.0
BuildRequires: vala >= 0.48.2
BuildRequires: fdupes
BuildRequires: pkgconfig(cloudproviders) >= 0.3.0
BuildRequires: pkgconfig(gdk-x11-3.0)
BuildRequires: pkgconfig(gdk-wayland-3.0)
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(gio-2.0) >= 2.40
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.40
BuildRequires: pkgconfig(glib-2.0) >= 2.40
BuildRequires: pkgconfig(gmodule-2.0) >= 2.40
BuildRequires: pkgconfig(gobject-2.0) >= 2.40
BuildRequires: pkgconfig(granite) >= 6.1.0
BuildRequires: pkgconfig(gtk+-3.0) >= 3.22.25
BuildRequires: pkgconfig(libcanberra) >= 0.30
BuildRequires: pkgconfig(libgit2-glib-1.0)
BuildRequires: pkgconfig(libhandy-1) >= 0.83.0
BuildRequires: pkgconfig(libnotify) >= 0.7.2
BuildRequires: pkgconfig(pango) >= 1.1.2
BuildRequires: pkgconfig(plank) >= 0.10.9
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(systemd) >= 206
BuildRequires: pkgconfig(libportal)
BuildRequires: pkgconfig(libportal-gtk3)
Requires: contractor
Requires: file-roller
%description
The simple, powerful, and sexy file manager from elementary.
%package portal
Summary: File manager from elementary (flatpak file chooser portal)
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: xdg-desktop-portal
%description portal
The simple, powerful, and sexy file manager from elementary.
This package contains a file chooser portal implementation for flatpak.
%package devel
Summary: File manager from elementary (development headers)
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
The simple, powerful, and sexy file manager from elementary.
This package contains the development headers.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
CFLAGS="$CFLAGS -Wno-implicit-function-declaration"
%meson -Dwith-zeitgeist=disabled
%meson_build
%install
%meson_install
%find_lang %{appname}
# install file-roller contracts
mkdir -p %{buildroot}/%{_datadir}/contractor
cp -pav %{SOURCE1} %{buildroot}/%{_datadir}/contractor/
cp -pav %{SOURCE2} %{buildroot}/%{_datadir}/contractor/
%check
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%post portal
%systemd_user_post %{appname}.xdg-desktop-portal.service
%preun portal
%systemd_user_preun %{appname}.xdg-desktop-portal.service
%files -f %{appname}.lang
%doc AUTHORS README.md
%license COPYING
%{_bindir}/%{appname}
%{_bindir}/%{appname}-daemon
%{_bindir}/%{appname}-pkexec
%{_libdir}/%{appname}/
%{_libdir}/libpantheon-files-core.so.*
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/contractor/*.contract
%{_datadir}/dbus-1/services/%{appname}.service
%{_datadir}/dbus-1/services/%{appname}.Filemanager1.service
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/metainfo/%{appname}.metainfo.xml
%{_datadir}/polkit-1/actions/%{appname}.policy
%files portal
%{_libexecdir}/%{appname}.xdg-desktop-portal
%{_userunitdir}/%{appname}.xdg-desktop-portal.service
%{_datadir}/dbus-1/services/org.freedesktop.impl.portal.desktop.elementary.files.service
%{_datadir}/xdg-desktop-portal/portals/io.elementary.files.portal
%files devel
%{_includedir}/pantheon-files-core/
%{_libdir}/libpantheon-files-core.so
%{_libdir}/pkgconfig/pantheon-files-core.pc
%{_datadir}/vala/vapi/pantheon-files-core.vapi
%changelog
* Thu Nov 17 2022 windowsboy111 <wboy111@outlook.com> - 6.2.1-1
- new version
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com>
- Repackaged for Terra
@@ -0,0 +1,7 @@
[Contractor Entry]
Name=Compress
Icon=add-files-to-archive
Description=Create a compressed archive with the selected objects
MimeType=!archive;inode/blockdevice;inode/chardevice;inode/fifo;inode/socket;
Exec=file-roller --add %U
Gettext-Domain=file-roller

Some files were not shown because too many files have changed in this diff Show More