Compare commits

..

19 Commits

Author SHA1 Message Date
madonuko 01259b79ff fix: switchboard-plug-printers 2024-07-28 01:16:34 +08:00
Raboneko 720d79499c bump: envision 2024-07-27 15:14:45 +00:00
Raboneko 2d597a2316 bump: envision 2024-07-27 14:50:47 +00:00
Raboneko 994d07fe50 bump: envision 2024-07-27 09:58:27 +00:00
Raboneko b51001bcc6 bump: starship 2024-07-27 09:27:00 +00:00
Raboneko 907540cd06 bump: sarasa-gothic limine 2024-07-27 09:15:37 +00:00
Raboneko e97e2c4a1b bump: envision 2024-07-27 08:55:50 +00:00
Raboneko c56b0c0eaa bump: envision 2024-07-27 08:18:54 +00:00
Raboneko e4a09211fd bump: envision 2024-07-27 07:56:30 +00:00
lea 1d8cafc982 fix: use mold for linking and various other fixes (#1648) 2024-07-26 20:24:21 -07:00
Raboneko 831c2b2bf2 bump(nightly): mpv nightly nim-nightly 2024-07-27 01:17:23 +00:00
Raboneko 62e80cd977 bump: envision 2024-07-26 22:21:31 +00:00
Raboneko 557ffe3063 bump: discord-ptb-openasar discord-ptb 2024-07-26 21:59:46 +00:00
Raboneko d4ddb341eb bump: discord-canary-openasar discord-canary 2024-07-26 21:28:29 +00:00
Raboneko 15fa0cc822 bump: discord-canary-openasar discord-canary 2024-07-26 20:46:16 +00:00
Raboneko e3cf473fec bump: envision 2024-07-26 19:18:38 +00:00
Raboneko ad33a79f2c bump: osu-lazer 2024-07-26 18:38:58 +00:00
Raboneko 668703f718 bump: switchboard-plug-keyboard switchboard-plug-networking switchboard-plug-onlineaccounts switchboard-plug-parental-controls switchboard-plug-printers switchboard-plug-sharing switchboard-plug-sound switchboard-plug-useraccounts 2024-07-26 17:29:02 +00:00
Raboneko 872f475b44 bump: switchboard-plug-about switchboard-plug-applications switchboard-plug-datetime switchboard-plug-locale switchboard-plug-mouse-touchpad switchboard-plug-notifications switchboard-plug-power preview libhelium tau-helium 2024-07-26 17:13:55 +00:00
358 changed files with 7107 additions and 2755 deletions
+11 -12
View File
@@ -6,13 +6,13 @@ on:
paths:
- anda/**
branches:
- el9
- frawhide
pull_request:
branches:
- el9
- frawhide
merge_group:
branches:
- el9
- frawhide
workflow_dispatch:
workflow_call:
@@ -23,7 +23,7 @@ jobs:
outputs:
build_matrix: ${{ steps.generate_build_matrix.outputs.build_matrix }}
container:
image: ghcr.io/terrapkg/builder:el9
image: ghcr.io/terrapkg/builder:frawhide
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Set workspace as safe
@@ -40,11 +40,11 @@ jobs:
strategy:
matrix:
pkg: ${{ fromJson(needs.manifest.outputs.build_matrix) }}
version: ["9"]
version: ["rawhide"]
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:el${{ matrix.version }}
image: ghcr.io/terrapkg/builder:f${{ matrix.version}}
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
@@ -63,16 +63,15 @@ jobs:
- name: Include custom build template instead of package default
run: |
cp -v mock-configs/el9.tpl /etc/mock/templates/
cp -v mock-configs/epel9.tpl /etc/mock/templates/
cp -v mock-configs/terra.tpl /etc/mock/templates/terra.tpl
- name: Build with Andaman
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c mock-configs/terra-el${{ matrix.version }}+epel-${{ matrix.pkg.arch }}.cfg
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c mock-configs/terra-${{ matrix.version }}-${{ matrix.pkg.arch }}.cfg
- name: Build with Andaman (alternate arch)
if: |
matrix.pkg.arch == 'x86_64' && matrix.pkg.labels['multilib']
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c mock-configs/terra-el${{ matrix.version }}+epel-i386.cfg
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c mock-configs/terra-${{ matrix.version }}-i386.cfg
- name: Generating artifact name
id: art
@@ -95,7 +94,7 @@ jobs:
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra-el${{ matrix.version }} 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-el${{ matrix.version }}-source anda-build/rpm/srpm/*
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
- name: Notify Madoguchi (Success)
if: success() && github.event_name == 'push'
+15 -30
View File
@@ -7,65 +7,50 @@ jobs:
bootstrap:
strategy:
matrix:
version: ["9"]
version: ["rawhide"]
arch: ["x86_64", "aarch64"]
fail-fast: true
runs-on: ${{ matrix.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
container:
image: docker.io/library/almalinux:${{ matrix.version }}
image: registry.fedoraproject.org/fedora-minimal:${{ matrix.version }}
options: --cap-add=SYS_ADMIN --privileged
steps:
- uses: actions/checkout@v4
with:
ref: el${{ matrix.version }}
fetch-depth: 1
- name: Install repositories
run: |
dnf install -y 'dnf-command(config-manager)'
dnf config-manager --set-enabled crb
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-${{ matrix.version }}.noarch.rpm
dnf install -y mock wget git-core openssl-devel cargo podman fuse-overlayfs rpm-build mock
dnf builddep -y anda/{terra/{mock-configs,srpm-macros},tools/buildsys/subatomic}/*.spec
- name: Vendor Go
run: |
rm /usr/bin/go
curl -L https://go.dev/dl/go1.22.6.linux-${{ matrix.arch == 'aarch64' && 'arm64' || 'amd64' }}.tar.gz -o go.tar.gz
tar xf go.tar.gz go/bin/go
cp go/bin/go /usr/local/bin/
run: dnf5 install -y --setopt=install_weak_deps=False mock curl wget git-core openssl-devel cargo podman fuse-overlayfs
- name: Install Anda
run: cargo install anda
- uses: actions/checkout@v4
with:
ref: f${{ matrix.version }}
fetch-depth: 1
- name: Build terra-mock-configs
run: |
echo "PATH=$PATH:/github/home/.cargo/bin" >> $GITHUB_ENV
export PATH=$PATH:/github/home/.cargo/bin
git config --global --add safe.directory "$GITHUB_WORKSPACE"
anda build -c almalinux-${{ matrix.version }}-${{ matrix.arch }} anda/terra/mock-configs/pkg --rpm-builder=rpmbuild
anda build -c fedora-${{ matrix.version }}-${{ matrix.arch }} anda/terra/mock-configs/pkg -p rpm
- name: Install terra-mock-configs
run: dnf install -y anda-build/rpm/rpms/terra-mock-configs*.rpm
run: dnf5 install -y anda-build/rpm/rpms/terra-mock-configs*.rpm
- name: Build anda-srpm-macros
run: anda build -c terra-el${{ matrix.version }}+epel-${{ matrix.arch }}.cfg anda/terra/srpm-macros/pkg --rpm-builder=rpmbuild
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/terra/srpm-macros/pkg
- name: Build Subatomic
run: anda build -c terra-el${{ matrix.version }}+epel-${{ matrix.arch }}.cfg anda/tools/buildsys/subatomic/pkg --rpm-builder=rpmbuild
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/tools/buildsys/subatomic/pkg
- name: Install Subatomic
run: dnf install -y ./anda-build/rpm/rpms/subatomic-*.rpm
run: dnf5 install -y ./anda-build/rpm/rpms/subatomic-*.rpm
- name: Install Build Dependencies for Andaman
run: dnf builddep -y anda/tools/buildsys/anda/*.spec
- name: Build Andaman
run: anda build -c terra-el${{ matrix.version }}+epel-${{ matrix.arch }} anda/tools/buildsys/anda/pkg --rpm-builder=rpmbuild
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/tools/buildsys/anda/pkg
- name: Upload packages to subatomic
run: |
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra-el${{ matrix.version }} anda-build/rpm/rpms/*
terra${{ matrix.version }} anda-build/rpm/rpms/*
- name: Upload source packages to subatomic
if: github.event_name == 'push'
@@ -73,4 +58,4 @@ jobs:
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra-el${{ matrix.version }}-source anda-build/rpm/srpm/*
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
+6 -7
View File
@@ -44,12 +44,12 @@ jobs:
strategy:
matrix:
pkg: ${{ fromJson(needs.parse.outputs.pkgs) }}
version: ["9"]
version: ["rawhide"]
arch: ${{ fromJson(needs.parse.outputs.arch) }}
fail-fast: false
runs-on: ${{ matrix.arch == 'aarch64' && 'ARM64' || needs.parse.outputs.builder && needs.parse.outputs.builder || 'ubuntu-latest' }}
container:
image: ghcr.io/terrapkg/builder:el${{ matrix.version }}
image: ghcr.io/terrapkg/builder:f${{ matrix.version }}
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
@@ -68,11 +68,10 @@ jobs:
- name: Include custom build template instead of package default
run: |
cp -v mock-configs/el9.tpl /etc/mock/templates/
cp -v mock-configs/epel9.tpl /etc/mock/templates/
cp -v mock-configs/terra.tpl /etc/mock/templates/terra.tpl
- name: Build with Andaman
run: anda build anda/${{ matrix.pkg }}pkg --package rpm -c mock-configs/terra-el${{ matrix.version }}+epel-${{ matrix.pkg.arch }}.cfg
run: anda build anda/${{ matrix.pkg }}pkg --package rpm -c mock-configs/terra-${{ matrix.version }}-${{ matrix.arch }}.pkg
- name: Generating artifact name
id: art
@@ -94,14 +93,14 @@ jobs:
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra-el${{ matrix.version }} anda-build/rpm/rpms/*
terra${{ matrix.version }} anda-build/rpm/rpms/*
- name: Upload source packages to subatomic
run: |
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra-el${{ matrix.version }}-source anda-build/rpm/srpm/*
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
- name: Notify Madoguchi (Success)
if: success()
+6 -7
View File
@@ -11,11 +11,11 @@ jobs:
strategy:
matrix:
pkg: ${{ fromJson(inputs.packages) }}
version: ["9"]
version: ["rawhide"]
fail-fast: false
runs-on: ${{ matrix.pkg.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
container:
image: ghcr.io/terrapkg/builder:el${{ matrix.version }}
image: ghcr.io/terrapkg/builder:f${{ matrix.version }}
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
@@ -34,11 +34,10 @@ jobs:
- name: Include custom build template instead of package default
run: |
cp -v mock-configs/el9.tpl /etc/mock/templates/
cp -v mock-configs/epel9.tpl /etc/mock/templates/
cp -v mock-configs/terra.tpl /etc/mock/templates/terra.tpl
- name: Build with Andaman
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c mock-configs/terra-el${{ matrix.version }}+epel-${{ matrix.pkg.arch }}.cfg
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c mock-configs/terra-${{ matrix.version }}-${{ matrix.pkg.arch }}.pkg
- name: Generating artifact name
id: art
@@ -60,7 +59,7 @@ jobs:
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra-el${{ matrix.version }} anda-build/rpm/rpms/*
terra${{ matrix.version }} anda-build/rpm/rpms/*
- name: Upload source packages to subatomic
if: github.event_name == 'push'
@@ -68,7 +67,7 @@ jobs:
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra-el${{ matrix.version }}-source anda-build/rpm/srpm/*
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
- name: Notify Madoguchi (Success)
if: success()
+2 -2
View File
@@ -7,7 +7,7 @@ export p="{\"id\":\"$5\",\"ver\":\"%v\",\"rel\":\"%r\",\"arch\":\"$4\",\"dirs\":
if [[ $1 == false ]]; then
d=${p/\%v/?}
d=${d/\%r/?}
curl -H "Authorization: Bearer $6" https://madoguchi.fyralabs.com/ci/terra-el$3/builds/f -X PUT -H "Content-Type: application/json" -d $d --fail-with-body
curl -H "Authorization: Bearer $6" https://madoguchi.fyralabs.com/ci/terra$3/builds/f -X PUT -H "Content-Type: application/json" -d $d --fail-with-body
exit 0
fi
@@ -17,5 +17,5 @@ for f in anda-build/rpm/rpms/*; do
r=$(lesspipe.sh $f | grep -E "Release\s*: " | sed "s@Release\s*: @@")
d=${p/\%v/$v}
d=${d/\%r/$r}
curl -H "Authorization: Bearer $6" https://madoguchi.fyralabs.com/ci5/terra-el$3/builds/$n -X PUT -H "Content-Type: application/json" -d $d --fail-with-body
curl -H "Authorization: Bearer $6" https://madoguchi.fyralabs.com/ci5/terra$3/builds/$n -X PUT -H "Content-Type: application/json" -d $d --fail-with-body
done
+5 -2
View File
@@ -3,7 +3,9 @@ name: Push comps updates
on:
push:
branches:
- el9
- frawhide
- f40
- f39
paths:
- comps.xml
workflow_dispatch:
@@ -18,7 +20,8 @@ jobs:
- name: Push to subatomic
run: |
branch=${{ github.ref_name }}
ver=${branch/f/}
subatomic-cli upload-comps \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
"terra-${branch}" comps.xml
"terra${ver}" comps.xml
+3 -1
View File
@@ -8,7 +8,7 @@ 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
URL: https://apps.ankiweb.net/
BuildRequires: python3-pip cargo
BuildRequires: python3-pip rpm_macro(fdupes) cargo
Requires: python3-sqlalchemy python3-simplejson python3-matplotlib python3-decorator python3-markdown python3-orjson
Requires: python3-requests python3-pygame python3-beautifulsoup4 python3-httplib2 python3-pyaudio python3-jsonschema
Requires: python3-flask-cors python3-protobuf python3-requests python3-waitress python3-pyqt6-webengine python3-send2trash
@@ -50,6 +50,8 @@ cp -r ./{_aqt,anki*,aqt*} %buildroot/usr/lib/python3*/site-packages/
rm -rf %buildroot%_bindir/{distro,flask,jsonschema,markdown_py,normalizer,send2trash,waitress-serve}
%fdupes %buildroot%_libdir/python*/site-packages/_aqt/data/
%files
%license LICENSE
+3 -1
View File
@@ -4,7 +4,7 @@ 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
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 python3-pyqt5-sip
BuildRequires: python3-installer make mold cargo git rsync ninja-build libxcrypt-compat nodejs python3.9 python-unversioned-command gcc
Requires: hicolor-icon-theme python3-sqlalchemy python3-simplejson python3-matplotlib python3-decorator python3-markdown python3-send2trash python3-orjson mpv python3-qt5-webengine
@@ -46,6 +46,8 @@ chmod 755 %{buildroot}%{_bindir}/anki
find %{buildroot} -iname __pycache__ | xargs -r rm -rf
find %{buildroot} -iname direct_url.json | xargs -r rm -rf
%fdupes %_libdir/python*/site-packages/_aqt/data/
%files
%license LICENSE*
+4 -1
View File
@@ -4,7 +4,7 @@ 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
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 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
@@ -50,6 +50,9 @@ find %{buildroot} -iname direct_url.json | xargs -r rm -rf
chmod 755 %{buildroot}%{_bindir}/anki
%fdupes %_libdir/python*/site-packages/_aqt/data/
%files
%license LICENSE*
%doc README*
+3 -3
View File
@@ -2,11 +2,11 @@
%global _build_id_links none
%ifarch x86_64
%global src ArmCord-%version-linux-x64
%global src ArmCord-%version
%elifarch aarch64
%global src ArmCord-%version-linux-arm64
%global src ArmCord-%version-arm64
%elifarch armv7l
%global src ArmCord-%version-linux-armv7l
%global src ArmCord-%version-armv7l
%endif
# Exclude private libraries
+5 -8
View File
@@ -8,9 +8,8 @@ Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/ArmCord/ArmCord
Group: Applications/Internet
Source1: launch.sh
Packager: madonuko <mado@fyralabs.com>
Requires: electron xdg-utils
BuildRequires: git-core add-determinism pnpm
BuildRequires: nodejs-npm git add-determinism
Conflicts: armcord-bin
BuildArch: noarch
@@ -38,8 +37,8 @@ EOF
%build
pnpm install --no-frozen-lockfile
pnpm run packageQuick
npx pnpm@7 install --no-frozen-lockfile
npm run packageQuick
%install
@@ -51,16 +50,13 @@ install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/armcord.png
%files
%doc README.md
%license license.txt
%license LICENSE
/usr/bin/armcord
/usr/share/applications/ArmCord.desktop
/usr/share/pixmaps/armcord.png
/usr/share/armcord/app.asar
%changelog
* 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.
@@ -68,3 +64,4 @@ install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/armcord.png
* Sat May 6 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
- Initial package
-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.0
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"));
@@ -34,7 +34,6 @@ sed "s@Discord Canary@Discord Canary OpenAsar@g" a > discord-canary.desktop
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_datadir}/discord-canary-openasar
cp -rv * %{buildroot}%{_datadir}/discord-canary-openasar
mkdir -p %{buildroot}%{_datadir}/applications/
@@ -43,11 +42,9 @@ ln -s %_datadir/discord-canary-openasar/discord-canary.desktop %{buildroot}%{_da
ln -s %_datadir/discord-canary-openasar/discord.png %{buildroot}%{_datadir}/pixmaps/discord-canary-openasar.png
cp -v %{SOURCE1} %{buildroot}%{_datadir}/discord-canary-openasar/resources/app.asar
chmod o+w %{buildroot}%{_datadir}/discord-canary-openasar/resources -R
ln -s %_datadir/discord-canary-openasar/DiscordCanary %buildroot%_bindir/discord-canary-openasar
%files
%_bindir/discord-canary-openasar
%{_datadir}/discord-canary-openasar/
%{_datadir}/applications/discord-canary-openasar.desktop
%{_datadir}/pixmaps/discord-canary-openasar.png
+3 -5
View File
@@ -16,8 +16,9 @@ Requires: glibc GConf2 nspr >= 4.13 nss >= 3.27 libX11 >= 1.6 libXtst >= 1
Group: Applications/Internet
ExclusiveArch: x86_64
%description
All-in-one voice and text chat for gamers that's free, secure, and works on
both your desktop and phone.
Imagine a place where you can belong to a school club, a gaming group, or a
worldwide art community. Where just you and a handful of friends can spend time
together. A place that makes it easy to talk every day and hang out more often.
%prep
%autosetup -n DiscordCanary
@@ -26,17 +27,14 @@ both your desktop and phone.
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_datadir}/discord-canary
cp -rv * %{buildroot}%{_datadir}/discord-canary
mkdir -p %{buildroot}%{_datadir}/applications/
mkdir -p %{buildroot}%{_datadir}/pixmaps
ln -s %_datadir/discord-canary/discord-canary.desktop %{buildroot}%{_datadir}/applications/
ln -s %_datadir/discord-canary/discord.png %{buildroot}%{_datadir}/pixmaps/discord-canary.png
ln -s %_datadir/discord/DiscordCanary %buildroot%_bindir/discord-canary
%files
%_bindir/discord-canary
%{_datadir}/discord-canary/
%{_datadir}/applications/discord-canary.desktop
%{_datadir}/pixmaps/discord-canary.png
@@ -34,7 +34,6 @@ sed "s@Discord@Discord OpenAsar@g" a > discord.desktop
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_datadir}/discord-openasar
cp -rv * %{buildroot}%{_datadir}/discord-openasar
mkdir -p %{buildroot}%{_datadir}/applications/
@@ -43,11 +42,9 @@ ln -s %_datadir/discord-openasar/discord.desktop %{buildroot}%{_datadir}/applica
ln -s %_datadir/discord-openasar/discord.png %{buildroot}%{_datadir}/pixmaps/discord-openasar.png
cp -v %{SOURCE1} %{buildroot}%{_datadir}/discord-openasar/resources/app.asar
chmod o+w %{buildroot}%{_datadir}/discord-openasar/resources -R
ln -s %_datadir/discord-openasar/Discord %buildroot%_bindir/discord-openasar
%files
%_bindir/discord-openasar
%{_datadir}/discord-openasar/
%{_datadir}/applications/discord-openasar.desktop
%{_datadir}/pixmaps/discord-openasar.png
@@ -34,7 +34,6 @@ sed "s@Discord Ptb@Discord Ptb OpenAsar@g" a > discord-ptb.desktop
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_datadir}/discord-ptb-openasar
cp -rv * %{buildroot}%{_datadir}/discord-ptb-openasar
mkdir -p %{buildroot}%{_datadir}/applications/
@@ -45,11 +44,9 @@ install discord-ptb.desktop %{buildroot}%{_datadir}/applications/discord-ptb-ope
install discord.png %{buildroot}%{_datadir}/pixmaps/discord-ptb-openasar.png
cp -v %{SOURCE1} %{buildroot}%{_datadir}/discord-ptb-openasar/resources/app.asar
chmod o+w %{buildroot}%{_datadir}/discord-ptb-openasar/resources -R
ln -s %_datadir/discord-ptb-openasar/Discord %buildroot%_bindir/discord-ptb-openasar
%files
%_bindir/discord-ptb-openasar
%{_datadir}/discord-ptb-openasar/
%{_datadir}/applications/discord-ptb-openasar.desktop
%{_datadir}/pixmaps/discord-ptb-openasar.png
+3 -5
View File
@@ -20,8 +20,9 @@ Requires: libXtst >= 1.2
Group: Applications/Internet
ExclusiveArch: x86_64
%description
All-in-one voice and text chat for gamers that's free, secure, and works on
both your desktop and phone.
Imagine a place where you can belong to a school club, a gaming group, or a
worldwide art community. Where just you and a handful of friends can spend time
together. A place that makes it easy to talk every day and hang out more often.
%prep
%autosetup -n DiscordPTB
@@ -30,17 +31,14 @@ both your desktop and phone.
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_datadir}/discord-ptb
cp -rv * %{buildroot}%{_datadir}/discord-ptb
mkdir -p %{buildroot}%{_datadir}/applications/
mkdir -p %{buildroot}%{_datadir}/pixmaps
ln -s %_datadir/discord-ptb/discord-ptb.desktop %{buildroot}%{_datadir}/applications/
ln -s %_datadir/discord-ptb/discord.png %{buildroot}%{_datadir}/pixmaps/discord-ptb.png
ln -s %_datadir/discord-ptb/Discord %buildroot%_bindir/discord-ptb
%files
%_bindir/discord-ptb
%{_datadir}/discord-ptb/
%{_datadir}/applications/discord-ptb.desktop
%{_datadir}/pixmaps/discord-ptb.png
+3 -5
View File
@@ -20,8 +20,9 @@ Requires: libXtst >= 1.2
Group: Applications/Internet
ExclusiveArch: x86_64
%description
All-in-one voice and text chat for gamers that's free, secure, and works on
both your desktop and phone.
Imagine a place where you can belong to a school club, a gaming group, or a
worldwide art community. Where just you and a handful of friends can spend time
together. A place that makes it easy to talk every day and hang out more often.
%prep
%autosetup -n Discord
@@ -30,17 +31,14 @@ both your desktop and phone.
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_datadir}/discord
cp -rv * %{buildroot}%{_datadir}/discord
mkdir -p %{buildroot}%{_datadir}/applications/
mkdir -p %{buildroot}%{_datadir}/pixmaps
ln -s %_datadir/discord/discord.desktop %{buildroot}%{_datadir}/applications/discord.desktop
ln -s %_datadir/discord/discord.png %{buildroot}%{_datadir}/pixmaps/discord.png
ln -s %_datadir/discord/Discord %buildroot%_bindir/discord
%files
%_bindir/discord
%{_datadir}/discord/
%{_datadir}/applications/discord.desktop
%{_datadir}/pixmaps/discord.png
-3
View File
@@ -2,7 +2,4 @@ project pkg {
rpm {
spec = "envision.spec"
}
labels {
nightly = 1
}
}
+6 -7
View File
@@ -9,19 +9,18 @@ Summary: UI for building, configuring and running Monado, the open source
License: AGPL-3.0-or-later
URL: https://gitlab.com/gabmus/envision/
Source0: %url/-/archive/%commit/envision-%commit.tar.gz
BuildRequires: meson ninja-build cargo
BuildRequires: meson ninja-build cargo
BuildRequires: pkgconfig(glib-2.0) >= 2.66
BuildRequires: pkgconfig(gio-2.0) >= 2.66
BuildRequires: pkgconfig(gtk4) >= 4.10.0
BuildRequires: pkgconfig(vte-2.91-gtk4) >= 0.72.0
BuildRequires: pkgconfig(libadwaita-1)
BuildRequires: pkgconfig(libusb-1.0)
BuildRequires: openssl-devel
BuildRequires: openssl-devel-engine
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
+2 -2
View File
@@ -1,6 +1,6 @@
%global commit 3c7b6db205c027d3c4f12285719367792e471b57
%global commit 6107112b32e748c55dd2d344b8871ad60c0c504c
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20240725
%global commit_date 20240727
%global ver 0.38.0
Name: mpv-nightly
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "ruffle-nightly.spec"
}
}
-67
View File
@@ -1,67 +0,0 @@
%global ver 2024-07-29
%global goodver %(echo %ver | sed 's/-//g')
%global __brp_mangle_shebangs %{nil}
%bcond_without mold
%global _description %{expand:
Ruffle is an Adobe Flash Player emulator written in the Rust programming
language. Ruffle targets both the desktop and the web using WebAssembly.}
Name: ruffle-nightly
Version: %goodver
Release: 1%?dist
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
Provides: ruffle
BuildRequires: cargo-rpm-macros >= 24
BuildRequires: anda-srpm-macros
BuildRequires: gcc-c++ cmake java
BuildRequires: java-latest-openjdk-headless
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libudev)
BuildRequires: pkgconfig(xcb-cursor)
Packager: madonuko <mado@fyralabs.com>
%description %_description
%files
%doc README.md
%license LICENSE.md
%license LICENSE.dependencies
%_bindir/ruffle_desktop
%_datadir/applications/ruffle_desktop.desktop
%_iconsdir/hicolor/scalable/apps/ruffle_desktop.svg
%prep
%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 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>
- Initial package
-13
View File
@@ -1,13 +0,0 @@
let releases = "https://api.github.com/repos/ruffle-rs/ruffle/releases".get().json_arr();
for release in releases {
let tag = release.tag_name;
if !tag.starts_with("nightly-") {
continue;
}
tag.crop(8); // remove "nightly-"
rpm.global("ver", tag);
break;
}
if rpm.changed() {
rpm.release();
}
+1 -5
View File
@@ -1,9 +1,6 @@
%define debug_package %nil
%global _build_id_links none
# do not strip binaries
%define __strip /bin/true
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
@@ -17,7 +14,6 @@ URL: https://voicevox.hiroshiba.jp
Source0: https://github.com/VOICEVOX/voicevox/releases/download/%version/VOICEVOX.AppImage.7z.001
Source1: https://github.com/VOICEVOX/voicevox/releases/download/%version/VOICEVOX.AppImage.7z.002
Source2: https://github.com/VOICEVOX/voicevox/releases/download/%version/VOICEVOX.AppImage.7z.003
Packager: madonuko <mado@fyralabs.com>
BuildRequires: p7zip-plugins
ExclusiveArch: x86_64
@@ -32,7 +28,7 @@ Summary: Documentation files for voicevox (Japanese)
%prep
cat<<EOF > voicevox.sh
#!/usr/bin/sh
#!/bin/sh
/usr/share/voicevox/VOICEVOX.AppImage
EOF
7z x %SOURCE0
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "youtube-music.spec"
}
}
-1
View File
@@ -1 +0,0 @@
rpm.version(gh("th-ch/youtube-music"));
@@ -1,10 +0,0 @@
[Desktop Entry]
Name=YouTube Music
Exec=/usr/bin/youtube-music --no-sandbox %U
TryExec=/usr/bin/youtube-music
Icon=youtube-music
Terminal=false
Type=Application
StartupWMClass=YouTube Music
Comment=YouTube Music Desktop App - including custom plugins
Categories=AudioVideo;
@@ -1,91 +0,0 @@
%define debug_package %nil
# macro shorthand for calling pnpm
%global pnpm npx pnpm@%{pnpm_version}
Name: youtube-music
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
URL: https://github.com/th-ch/youtube-music
Packager: Cappy Ishihara <cappy@fyralabs.com>
# For some unknown reason, PNPM is not working with Node.js 22 on Aarch64 devices.
# todo: investigate why
#ExclusiveArch: x86_64
BuildRequires: git-core gcc make
# Required for usocket native module built with node-gyp
BuildRequires: python3 gcc-c++
%description
YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)
%prep
rm -rf ./*
git clone --recursive %{url} .
git checkout v%{version}
%build
# Vendor PNPM directly instead of installing from packages, because we need to somehow force PNPM to use Node.js 20
# We are not using Fedora's PNPM because we need to use `pnpm env`, which PNPM does not support when not vendored directly from upstream
curl -fsSL https://get.pnpm.io/install.sh | sh -
source /builddir/.bashrc
pnpm env use --global 20
pnpm install
pnpm build
pnpm electron-builder --linux --dir
%install
# Install assets
install -d -m 0755 %{buildroot}%{_datadir}/icons/hicolor/1024x1024/apps
install -d -m 0755 %{buildroot}%{_datadir}/icons/hicolor/scalable/apps
# Copy icon files
ls -laR pack
%ifarch aarch64
pushd pack/linux-arm64-unpacked/resources/app.asar.unpacked/assets
%else
pushd pack/linux-unpacked/resources/app.asar.unpacked/assets
%endif
install -m 0644 youtube-music.png %{buildroot}%{_datadir}/icons/hicolor/1024x1024/apps/youtube-music.png
install -m 0644 youtube-music.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/youtube-music.svg
install -m 0644 youtube-music-tray-paused.png %{buildroot}%{_datadir}/icons/hicolor/1024x1024/apps/youtube-music-tray-paused.png
install -m 0644 youtube-music-tray.png %{buildroot}%{_datadir}/icons/hicolor/1024x1024/apps/youtube-music-tray.png
popd
# Actually install the app
install -d -m 0755 %{buildroot}%{_datadir}/youtube-music
# Delete unpacked asar files before copying
rm -rfv pack/linux*-unpacked/resources/app.asar.unpacked
cp -rv pack/linux*-unpacked/* %{buildroot}%{_datadir}/youtube-music
install -d -m 0755 %{buildroot}%{_bindir}
ln -svf %{_datadir}/youtube-music/youtube-music %{buildroot}%{_bindir}/youtube-music
# Install desktop file
install -D -m 0644 %{SOURCE1} %{buildroot}%{_datadir}/applications/youtube-music.desktop
%files
%license license
%doc README.md
%doc docs
%{_bindir}/youtube-music
%{_datadir}/youtube-music
%{_datadir}/icons/hicolor/*/apps/youtube-music*
%{_datadir}/applications/youtube-music.desktop
%changelog
* Sat Aug 03 2024 Cappy Ishihara <cappy@cappuchino.xyz>
- Initial Release
@@ -9,6 +9,7 @@ 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
BuildRequires: rpm_macro(fdupes)
BuildRequires: cmake
BuildRequires: meson
BuildRequires: vala
@@ -273,6 +274,8 @@ workspaces.
# Remove absolute symlink and replace with relative symlink
rm -f %{buildroot}%{_bindir}/quickchar
%fdupes %_libdir/budgie-desktop/plugins/budgie-weathershow/weather_icons
%post
%{__ln_s} -fv %{_bindir}/quickchar %{_libdir}/quickchar/quickchar
+4
View File
@@ -14,6 +14,7 @@ Patch1: gtk-extents.patch
Patch2: focus-prevention-disable.patch
Conflicts: compiz
BuildRequires: rpm_macro(fdupes)
BuildRequires: libX11-devel
BuildRequires: libdrm-devel
BuildRequires: libXcursor-devel
@@ -103,6 +104,9 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';'
mkdir -p %{buildroot}%{_datadir}/compiz/icons/hicolor/{scalable/{apps,\
categories},22x22/{categories,devices,mimetypes}}
%fdupes %buildroot%_datadir/glib-2.0/schemas/
%fdupes %buildroot%_datadir/ccsm/icons/hicolor/scalable/apps/
%files -f compiz.lang
%doc AUTHORS README NEWS
@@ -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: 7.4.0
Release: 2%{?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: 6.2.2
Release: 2%{?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,153 @@
%global srcname files
%global appname io.elementary.files
%global __provides_exclude_from ^%{_libdir}/%{appname}/.*\\.so$
Name: elementary-files
Summary: File manager from elementary
Version: 6.5.3
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
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
%meson -Dwith-zeitgeist=disabled
%meson_build
%install
%meson_install
%find_lang %{appname}
%fdupes %buildroot%_datadir/icons/hicolor/
# remove unused pixmaps
rm -r %{buildroot}/%{_datadir}/pixmaps
# 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.6*
%{_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
@@ -0,0 +1,7 @@
[Contractor Entry]
Name=Extract Here
Icon=extract-archive
Description=Extract the contents of the archives in the archive folder and quit the program
MimeType=application/x-7z-compressed;application/x-7z-compressed-tar;application/x-ace;application/x-alz;application/x-ar;application/x-arj;application/x-bzip;application/x-bzip-compressed-tar;application/x-bzip1;application/x-bzip1-compressed-tar;application/x-cabinet;application/x-cbr;application/x-cbz;application/x-cd-image;application/x-compress;application/x-compressed-tar;application/x-cpio;application/x-deb;application/x-ear;application/x-ms-dos-executable;application/x-gtar;application/x-gzip;application/x-gzpostscript;application/x-java-archive;application/x-lha;application/x-lhz;application/x-lrzip;application/x-lrzip-compressed-tar;application/x-lzip;application/x-lzip-compressed-tar;application/x-lzma;application/x-lzma-compressed-tar;application/x-lzop;application/x-lzop-compressed-tar;application/x-ms-wim;application/x-rar;application/x-rar-compressed;application/x-rpm;application/x-rzip;application/x-tar;application/x-tarz;application/x-stuffit;application/x-war;application/x-xz;application/x-xz-compressed-tar;application/x-zip;application/x-zip-compressed;application/x-zoo;application/zip;
Exec=file-roller --extract-here %U
Gettext-Domain=file-roller
@@ -0,0 +1 @@
rpm.version(gh("elementary/files"));
@@ -0,0 +1,3 @@
[Seat:*]
greeter-session=io.elementary.greeter
user-session=pantheon
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-greeter.spec"
}
}
@@ -0,0 +1,114 @@
%global srcname greeter
%global appname io.elementary.greeter
Name: elementary-greeter
Summary: LightDM Login Screen for the elementary desktop
Version: 7.0.0
Release: 1%{?dist}
License: GPL-3.0
URL: https://github.com/elementary/greeter
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
Source1: 40-%{appname}.conf
Patch0: https://github.com/elementary/greeter/compare/7.0.0..42320c266395606b0c20782603e7407124c3f7a4.patch
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: vala
BuildRequires: fdupes
BuildRequires: mesa-libEGL-devel
BuildRequires: pkgconfig(accountsservice)
BuildRequires: pkgconfig(clutter-gtk-1.0)
BuildRequires: pkgconfig(gdk-pixbuf-2.0)
BuildRequires: pkgconfig(gdk-x11-3.0)
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(gio-unix-2.0)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(gmodule-2.0)
BuildRequires: pkgconfig(gnome-desktop-3.0)
BuildRequires: pkgconfig(granite) >= 5.0
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libhandy-1)
BuildRequires: pkgconfig(liblightdm-gobject-1)
BuildRequires: pkgconfig(mutter-clutter-14)
BuildRequires: pkgconfig(mutter-cogl-14)
BuildRequires: pkgconfig(mutter-cogl-pango-14)
BuildRequires: pkgconfig(x11)
Provides: pantheon-greeter = %{version}-%{release}
Obsoletes: pantheon-greeter < 3.2.0-7
Requires: lightdm%{?_isa}
Requires: wingpanel%{?_isa}
# runtime requirement for numlock capture
Requires: numlockx
# requirements for default artwork
Requires: elementary-icon-theme
Requires: elementary-theme-gtk3
Requires: elementary-wallpapers
# requirements for accountsservice extension
Requires: pantheon-session-settings >= 30.90
# all LightDM greeters provide this
Provides: lightdm-greeter = 1.2
# alternate descriptive names
Provides: lightdm-%{name} = %{version}-%{release}
Provides: lightdm-%{name}%{?_isa} = %{version}-%{release}
%description
The elementary Greeter is a styled Login Screen for LightDM.
%prep
%autosetup -p1 -n %{srcname}-%{version}
%build
%meson
%meson_build
%install
%meson_install
%find_lang %{appname}
%fdupes %buildroot%_datadir/icons/hicolor/
# install LightDM configuration file
mkdir -p %{buildroot}%{_sysconfdir}/lightdm/lightdm.conf.d
install -pm 0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/lightdm/lightdm.conf.d/
%check
appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%files -f %{appname}.lang
%doc README.md
%license LICENSE
%config(noreplace) %{_sysconfdir}/lightdm/%{appname}.conf
%config(noreplace) %{_sysconfdir}/lightdm/lightdm.conf.d/40-%{appname}.conf
%{_bindir}/%{appname}-compositor
%{_sbindir}/%{appname}
%{_datadir}/xgreeters/%{appname}.desktop
%{_datadir}/metainfo/%{appname}.metainfo.xml
%{_datadir}/lightdm/lightdm.conf.d/40-%appname.conf
%changelog
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 6.1.0-1
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/greeter"));
@@ -0,0 +1,6 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "elementary-icon-theme.spec"
}
}
@@ -0,0 +1,111 @@
%global srcname icons
%global appname io.elementary.icons
Name: elementary-icon-theme
Summary: Icons from the Elementary Project
Version: 8.0.0
Release: 1%?dist
License: GPL-3.0-or-later
URL: https://github.com/elementary/icons
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildArch: noarch
BuildRequires: gettext
BuildRequires: libappstream-glib
# /usr/bin/rsvg-convert
BuildRequires: librsvg2-tools
BuildRequires: meson
BuildRequires: xcursorgen
BuildRequires: fdupes
%description
This is an icon theme designed to be smooth, sexy, clear, and efficient.
%package gimp-palette
Summary: Icons from the Elementary Project (GIMP palette)
Requires: %{name} = %{version}-%{release}
Requires: gimp
%description gimp-palette
This is an icon theme designed to be smooth, sexy, clear, and efficient.
This package contains a palette file for the GIMP.
%package inkscape-palette
Summary: Icons from the Elementary Project (inkscape palette)
Requires: %{name} = %{version}-%{release}
Requires: inkscape
%description inkscape-palette
This is an icon theme designed to be smooth, sexy, clear, and efficient.
This package contains a palette file for inkscape.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
# Clean up executable permissions
for i in $(find -type f -executable); do
chmod a-x $i;
done
%meson -Dvolume_icons=false
%meson_build
%install
%meson_install
# Create icon cache file
touch %{buildroot}/%{_datadir}/icons/elementary/icon-theme.cache
%fdupes %buildroot%_datadir/icons/elementary/
%check
# ignore validation until appstream-glib knows the "icon-theme" component type
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml || :
%transfiletriggerin -- %{_datadir}/icons/elementary
gtk-update-icon-cache --force %{_datadir}/icons/elementary &>/dev/null || :
%transfiletriggerpostun -- %{_datadir}/icons/elementary
gtk-update-icon-cache --force %{_datadir}/icons/elementary &>/dev/null || :
%files
%doc README.md
%license COPYING
%dir %{_datadir}/icons/elementary
%ghost %{_datadir}/icons/elementary/icon-theme.cache
%{_datadir}/icons/elementary/*
%{_datadir}/icons/elementary/cursor.theme
%{_datadir}/icons/elementary/index.theme
%{_datadir}/metainfo/%{appname}.metainfo.xml
%files gimp-palette
%{_datadir}/gimp/2.0/palettes/elementary.gpl
%files inkscape-palette
%{_datadir}/inkscape/palettes/elementary.gpl
%changelog
* Thu Nov 17 2022 windowsboy111 <wboy111@outlook.com> - 7.1.0-1
- new version
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com>
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/icons"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-music.spec"
}
}
@@ -0,0 +1,111 @@
%global srcname music
%global appname io.elementary.music
%global __provides_exclude_from ^%{_libdir}/%{appname}/.*\\.so$
%global common_description %{expand:
Music is a fast and beautiful GTK3 audio player with a focus on music
and libraries. It handles external devices, CDs, and album art. Music
utilizes Granite for a consistent and slick UI.}
Name: elementary-music
Summary: Music player and library from elementary
Version: 8.0.0
Release: 1%?dist
License: LGPL-2.0-or-later
URL: https://github.com/elementary/%{srcname}
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
# meson: remove deprecated positional arguments from i18n.merge_file calls
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: meson
BuildRequires: libappstream-glib
BuildRequires: vala >= 0.26
BuildRequires: fdupes
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0) >= 2.40
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(granite-7) >= 7.0.0
BuildRequires: pkgconfig(gstreamer-1.0)
BuildRequires: pkgconfig(gstreamer-pbutils-1.0)
BuildRequires: pkgconfig(gstreamer-tag-1.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 3.22
BuildRequires: pkgconfig(libgda-5.0)
BuildRequires: pkgconfig(libgpod-1.0)
BuildRequires: pkgconfig(libhandy-1) >= 0.83.0
BuildRequires: pkgconfig(libpeas-1.0)
BuildRequires: pkgconfig(libpeas-gtk-1.0)
BuildRequires: pkgconfig(taglib_c)
BuildRequires: pkgconfig(zeitgeist-2.0)
BuildRequires: pkgconfig(libadwaita-1)
Requires: hicolor-icon-theme
# elementary-music explicitly requires the sqlite libgda database provider
Requires: libgda-sqlite%{?_isa}
# Last.FM plugin was dropped in Fedora 34
Obsoletes: elementary-music-plugin-lastfm < 5.0.5-5
# iPod plugin was merged into the main package in Fedora 34
Obsoletes: elementary-music-plugin-ipod < 5.0.5-5
Provides: elementary-music-plugin-ipod = %{version}-%{release}
%description %{common_description}
%package devel
Summary: The official elementary music player (development headers)
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel %{common_description}
This package contains files needed for developing with Music.
%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 LICENSE
%{_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
%files devel
%changelog
* Thu Nov 17 2022 windowsboy111 <wboy111@outlook.com> - 7.0.0-1
- new version
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com>
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/music"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-notifications.spec"
}
}
@@ -0,0 +1,63 @@
%global srcname notifications
%global appname io.elementary.notifications
Name: elementary-notifications
Version: 8.0.0
Release: 1%?dist
Summary: GTK Notification server for Pantheon
License: GPL-3.0
URL: https://github.com/elementary/%{srcname}
Source0: %{url}/archive/refs/tags/%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: libappstream-glib
BuildRequires: libcanberra-devel
BuildRequires: libcanberra-gtk3
BuildRequires: pkgconfig(granite) >= 6.0.0
BuildRequires: pkgconfig(gtk+-3.0) >= 3.11.6
BuildRequires: pkgconfig(libhandy-1) >= 0.91.0
BuildRequires: meson
BuildRequires: vala
Provides: %{name} = %{version}-%{release}
%description
%summary.
%prep
%autosetup -n %{srcname}-%{version}
%build
%meson
%meson_build
%install
%meson_install
%check
appstream-util validate-relax --nonet %buildroot%_datadir/metainfo/%appname.metainfo.xml
%files
%license LICENSE
%doc README.md
%{_bindir}/%{appname}
%{_bindir}/%{appname}.demo
%{_datadir}/applications/%{appname}.demo.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_metainfodir}/%{appname}.metainfo.xml
%changelog
* Wed Nov 09 2022 Cappy Ishihara <cappy@cappuchino.xyz> - 6.0.3-1
- Packaged
@@ -0,0 +1 @@
rpm.version(gh("elementary/notifications"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-onboarding.spec"
}
}
@@ -0,0 +1,85 @@
%global srcname onboarding
%global appname io.elementary.onboarding
Name: elementary-onboarding
Summary: Onboarding app for new users
Version: 7.2.0
Release: 2%{?dist}
License: GPL-3.0-or-later
URL: https://github.com/elementary/onboarding
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
# Patch to fix "NotShowIn" in group "Desktop Entry" contains an unregistered value "Installer"
# https://github.com/elementary/onboarding/issues/154
# Patch0: %%{url}/pull/155.patch
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: vala
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(glib-2.0) >= 2.64.0
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(granite-7) >= 7.0.0
BuildRequires: pkgconfig(gtk4)
BuildRequires: pkgconfig(libadwaita-1)
Requires: hicolor-icon-theme
%description
Onboarding application for new users to the Pantheon DE.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
%meson
%meson_build
%install
%meson_install
# Remove @2 scaled icons that's not supported by hicolor-icon-theme
# - https://bugzilla.redhat.com/show_bug.cgi?id=1537318
# - https://gitlab.freedesktop.org/xdg/default-icon-theme/-/issues/2
# - https://src.fedoraproject.org/rpms/hicolor-icon-theme/pull-request/2
rm -r %{buildroot}/%{_datadir}/icons/hicolor/*@2/
%find_lang %{appname}
%check
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
desktop-file-validate \
%{buildroot}/%{_sysconfdir}/xdg/autostart/%{appname}.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%files -f %{appname}.lang
%license COPYING
%doc README.md
%config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}.desktop
%{_bindir}/%{appname}
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/metainfo/%{appname}.metainfo.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
%config %_sysconfdir/guest-session/prefs.sh
%changelog
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 6.1.0-1
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/onboarding"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-photos.spec"
}
}
@@ -0,0 +1,103 @@
%global srcname photos
%global appname io.elementary.%{srcname}
%global __provides_exclude_from ^%{_libdir}/%{appname}/.*\\.so$
Name: elementary-photos
Summary: Photo manager and viewer from elementary
Version: 8.0.0
Release: 1%?dist
License: LGPL-2.0-or-later
URL: https://github.com/elementary/photos
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson >= 0.46.0
BuildRequires: vala
BuildRequires: fdupes
BuildRequires: git-core
BuildRequires: cmake
BuildRequires: pkgconfig(gee-0.8) >= 0.8.5
BuildRequires: pkgconfig(geocode-glib-2.0)
BuildRequires: pkgconfig(gexiv2) >= 0.4.90
BuildRequires: pkgconfig(gio-2.0) >= 2.20
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.20
BuildRequires: pkgconfig(glib-2.0) >= 2.30.0
BuildRequires: pkgconfig(gmodule-2.0) >= 2.24.0
BuildRequires: pkgconfig(granite) >= 6.0.0
BuildRequires: pkgconfig(gstreamer-1.0) >= 1.0.0
BuildRequires: pkgconfig(gstreamer-base-1.0) >= 1.0.0
BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) >= 1.0.0
BuildRequires: pkgconfig(gstreamer-pbutils-1.0) >= 1.0.0
BuildRequires: pkgconfig(gtk+-3.0) >= 3.6.0
BuildRequires: pkgconfig(gudev-1.0) >= 145
BuildRequires: pkgconfig(libexif) >= 0.6.16
BuildRequires: pkgconfig(libgphoto2) >= 2.4.2
BuildRequires: pkgconfig(libhandy-1)
BuildRequires: pkgconfig(libraw) >= 0.13.2
BuildRequires: pkgconfig(libwebp) >= 0.4.4
BuildRequires: pkgconfig(sqlite3) >= 3.5.9
BuildRequires: pkgconfig(libportal)
BuildRequires: pkgconfig(libportal-gtk3)
Requires: hicolor-icon-theme
%description
The elementary continuation of Shotwell, originally written by Yorba
Foundation.
%prep
%autosetup -n %{srcname}-%{version} -N
%build
%meson
%meson_build
%install
%meson_install
%find_lang %{appname}
%fdupes %buildroot%_datadir/icons/hicolor/
%fdupes %buildroot%_datadir/locale/
%check
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.viewer.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%files -f %{appname}.lang
%doc README.md
%license COPYING
%{_bindir}/%{appname}
%{_libdir}/%{appname}/
%{_libexecdir}/%{appname}/
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/applications/%{appname}.viewer.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
%{_datadir}/icons/hicolor/*/apps/%{appname}.viewer.svg
%{_datadir}/metainfo/%{appname}.metainfo.xml
%changelog
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 2.7.5-1
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/photos"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-print.spec"
}
}
@@ -0,0 +1,74 @@
%global srcname print
%global appname io.elementary.print
Name: elementary-print
Summary: Simple shim for printing support via Contractor
Version: 0.1.3
Release: 10%{?dist}
License: GPL-3.0-or-later
URL: https://github.com/elementary/%{srcname}
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
BuildRequires: meson
BuildRequires: vala
BuildRequires: pkgconfig(gtk+-3.0)
Requires: contractor
Supplements: contractor
%description
Simple shim for printing support via Contractor.
%prep
%autosetup -n %{srcname}-%{version}
%build
%meson
%meson_build
%install
%meson_install
%files
%{_bindir}/%{appname}
%{_datadir}/contractor/%{appname}.contract
%changelog
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 0.1.3-9
- Repackaged for Terra
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Jul 09 2018 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-1
- Initial package for fedora.
@@ -0,0 +1 @@
rpm.version(gh("elementary/print"));
@@ -0,0 +1,33 @@
From 6e4a9732b926b9ac360b7f81ad467c887543601a Mon Sep 17 00:00:00 2001
From: Fabio Valentini <decathorpe@gmail.com>
Date: Wed, 13 Jul 2022 14:16:20 +0200
Subject: [PATCH] meson: remove deprecated positional arguments from
i18n.merge_file calls
---
data/meson.build | 2 --
1 file changed, 2 deletions(-)
diff --git a/data/meson.build b/data/meson.build
index cb2adc8..76dad52 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -20,7 +20,6 @@ install_data(
)
i18n.merge_file (
- 'desktop',
input: 'screenshot.desktop.in',
output: meson.project_name() + '.desktop',
install: true,
@@ -30,7 +29,6 @@ i18n.merge_file (
)
i18n.merge_file (
- 'appdata',
input: 'screenshot.appdata.xml.in',
output: meson.project_name() + '.appdata.xml',
install: true,
--
2.37.1
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-screenshot-tool.spec"
}
}
@@ -0,0 +1,77 @@
%global srcname screenshot
%global appname io.elementary.screenshot
Name: elementary-screenshot-tool
Summary: Screenshot tool designed for elementary
Version: 8.0.0
Release: 1%?dist
License: LGPL-3.0
URL: https://github.com/elementary/screenshot
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
# meson: remove deprecated positional arguments from i18n.merge_file calls
#Patch1: 0001-meson-remove-deprecated-positional-arguments-from-i1.patch
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson >= 0.46
BuildRequires: vala >= 0.24
BuildRequires: fdupes
BuildRequires: pkgconfig(gdk-pixbuf-2.0)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(granite) >= 6.0.0
BuildRequires: pkgconfig(gtk+-3.0) >= 3.12
BuildRequires: pkgconfig(libhandy-1) >= 0.83.0
Requires: hicolor-icon-theme
%description
Screenshot tool designed for elementary.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
%meson
%meson_build
%install
%meson_install
%fdupes %buildroot%_datadir/icons/hicolor/
%fdupes %buildroot%_datadir/locale
%find_lang %{appname}
%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
* Fri Dec 02 2022 root - 6.0.3-1
- new version
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 6.0.2-1
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/screenshot"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-settings-daemon.spec"
}
}
@@ -0,0 +1,96 @@
%global srcname settings-daemon
%global appname io.elementary.settings-daemon
%global iface io.elementary.SettingsDaemon.AccountsService
Name: elementary-settings-daemon
Version: 8.0.0
Release: 1%?dist
Summary: Settings Daemon and Portal for Pantheon
License: GPL-3.0-or-later
URL: https://github.com/elementary/settings-daemon
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: systemd-rpm-macros
BuildRequires: vala
BuildRequires: pkgconfig(accountsservice)
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(granite) >= 5.3.0
BuildRequires: pkgconfig(libgeoclue-2.0)
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(fwupd)
BuildRequires: pkgconfig(gexiv2)
BuildRequires: pkgconfig(packagekit-glib2)
Requires: xdg-desktop-portal
%description
%{summary}.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
%meson
%meson_build
%install
%meson_install
%find_lang %appname
%check
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%post
%systemd_user_post %{appname}.xdg-desktop-portal.service
%systemd_post %{appname}.check-for-firmware-updates.timer
%preun
%systemd_user_preun %{appname}.xdg-desktop-portal.service
%systemd_preun %{appname}.check-for-firmware-updates.timer
%files -f %appname.lang
%license LICENSE
%doc README.md
%config(noreplace) %{_datadir}/applications/%{appname}.desktop
%{_bindir}/%{appname}
%{_libexecdir}/%{appname}.xdg-desktop-portal
%{_datadir}/accountsservice/interfaces/%{iface}.xml
%{_datadir}/dbus-1/interfaces/%{iface}.xml
%{_datadir}/dbus-1/services/org.freedesktop.impl.portal.desktop.elementary.settings-daemon.service
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/metainfo/%{appname}.metainfo.xml
%{_datadir}/xdg-desktop-portal/portals/%{appname}.portal
%{_userunitdir}/%{appname}.xdg-desktop-portal.service
%{_unitdir}/%{appname}.check-for-firmware-updates.service
%{_unitdir}/%{appname}.check-for-firmware-updates.timer
%{_sysconfdir}/xdg/autostart/%appname.desktop
%changelog
%autochangelog
@@ -0,0 +1 @@
rpm.version(gh("elementary/settings-daemon"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-shortcut-overlay.spec"
}
}
@@ -0,0 +1,67 @@
%global srcname shortcut-overlay
%global appname io.elementary.shortcut-overlay
Name: elementary-shortcut-overlay
Summary: Native, OS-wide shortcut overlay
Version: 8.0.0
Release: 1%?dist
License: GPL-3.0
URL: https://github.com/elementary/shortcut-overlay
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: vala
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(granite-7) >= 7.0.0
BuildRequires: pkgconfig(gtk4)
%description
This GTK+ applet reads window manager and OS keyboard shortcuts from
dconf and exposes them to the user when launched. Inspired by the
similar feature of Ubuntu Unity introduced in Ubuntu 12.04.
The shortcut window opens centered on the primary display. The gear in
the titlebar opens the system keyboard settings.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
%meson
%meson_build
%install
%meson_install
%find_lang %{appname}
%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 LICENSE
%{_bindir}/%{appname}
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/metainfo/%{appname}.metainfo.xml
%changelog
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 2.0.1-1
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/shortcut-overlay"));
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "elementary-sideload.spec"
}
}
@@ -0,0 +1,71 @@
%global srcname sideload
%global appname io.elementary.sideload
Name: elementary-sideload
Summary: Sideload flatpaks on Pantheon
Version: 6.2.2
Release: 1%?dist
License: GPL-3.0-or-later
URL: https://github.com/elementary/sideload
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: vala
BuildRequires: fdupes
BuildRequires: pkgconfig(flatpak)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(granite-7) >= 7.0.0
BuildRequires: pkgconfig(gtk4)
BuildRequires: pkgconfig(libxml-2.0)
Requires: hicolor-icon-theme
%description
Sideload is a simple application that lets users install flatpaks on
Pantheon without needing to use a command line application.
%prep
%autosetup -n %{srcname}-%{version} -p1
%build
%meson
%meson_build
%install
%meson_install
%fdupes %buildroot%_datadir/icons/hicolor/
%find_lang %{appname}
%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 LICENSE
%doc README.md
%{_bindir}/%{appname}
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/metainfo/%{appname}.metainfo.xml
%changelog
* Tue Nov 22 2022 Lleyton Gray <lleyton@fyralabs.com> - 6.1.0-1
- Repackaged for Terra
@@ -0,0 +1 @@
rpm.version(gh("elementary/sideload"));
@@ -0,0 +1,6 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "elementary-sound-theme.spec"
}
}
@@ -0,0 +1,53 @@
%global srcname sound-theme
Name: elementary-sound-theme
Summary: Set of system sounds for elementary
Version: 1.1.0
Release: 2%?dist
License: Unlicense AND CC-BY-4.0
# Unlicense:
# - audio-volume-change
# - bell
# - dialog-information
# Creative Commons Attribution:
# - dialog-warning:
# https://notificationsounds.com/standard-ringtones/answer-quickly-45
URL: https://github.com/elementary/%{srcname}
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
BuildRequires: meson
BuildRequires: fdupes
BuildArch: noarch
%description
A set of system sounds for elementary OS. Designed to be light, natural/
physical, and pleasant.
%prep
%autosetup -n %{srcname}-%{version}
%build
%meson
%meson_build
%install
%meson_install
%fdupes %buildroot%_datadir/sounds/elementary/stereo/
%files
%doc README.md
%license LICENSE
%{_datadir}/sounds/elementary/
%changelog
%autochangelog
@@ -0,0 +1 @@
rpm.version(gh("elementary/sound-theme"));

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