Compare commits

..

15 Commits

Author SHA1 Message Date
madomado 06f61cc2f2 Update graalvm.spec
Signed-off-by: madomado <wboy111@outlook.com>
2023-07-22 02:52:01 +08:00
madomado 998fac79b3 Update graalvm.spec
Signed-off-by: madomado <wboy111@outlook.com>
2023-07-21 01:08:43 +08:00
madomado 5b2ca7855d Update graalvm.spec
Signed-off-by: madomado <wboy111@outlook.com>
2023-07-21 00:28:20 +08:00
madomado ad966c81cc use jvmci
Signed-off-by: madomado <wboy111@outlook.com>
2023-07-21 00:24:57 +08:00
madomado e3a946b4b9 Update graalvm.spec 2023-07-20 21:23:07 +08:00
madomado 41fd80a888 Update graalvm.spec
Signed-off-by: madomado <wboy111@outlook.com>
2023-07-20 21:15:44 +08:00
madomado 236eefc62b Update graalvm.spec
Signed-off-by: madomado <wboy111@outlook.com>
2023-07-20 20:54:30 +08:00
madomado 3ac1e99229 Update graalvm.spec
Signed-off-by: madomado <wboy111@outlook.com>
2023-07-20 20:47:33 +08:00
windowsboy111 8bda74f818 fix: javahome 2023-07-20 18:56:56 +08:00
madomado ae7329fd0f change alternative use
Signed-off-by: madomado <wboy111@outlook.com>
2023-07-20 16:32:25 +08:00
windowsboy111 3744c62071 stuff 2023-07-20 14:51:56 +08:00
windowsboy111 b52b9e3da2 add dep git for graalvm 2023-07-20 14:41:45 +08:00
windowsboy111 6031fa1cd7 Merge branch 'f38' into w/graalvm 2023-07-20 14:36:30 +08:00
windowsboy111 3e2457d3d0 fix(lint): ~ 2023-07-20 14:36:02 +08:00
windowsboy111 fc2014cce7 fix: graalvm 2023-07-20 14:29:25 +08:00
807 changed files with 3686 additions and 17504 deletions
-9
View File
@@ -1,9 +0,0 @@
{
"repoOwner": "terrapkg",
"repoName": "packages",
"resetAuthor": true,
"targetBranchChoices": ["f39", "f40", "frawhide"],
"branchLabelMapping": {
"^sync-(.+)$": "$1"
}
}
+1 -1
View File
@@ -1,4 +1,4 @@
ARG VARIANT="rawhide"
ARG VARIANT="38"
FROM fedora:${VARIANT}
RUN useradd -m vscode
+1 -1
View File
@@ -2,7 +2,7 @@
"name": "Fedora",
"build": {
"dockerfile": "Dockerfile",
"args": { "VARIANT": "rawhide" }
"args": { "VARIANT": "38" }
},
"remoteUser": "vscode",
"runArgs": [
+82 -38
View File
@@ -6,13 +6,13 @@ on:
paths:
- anda/**
branches:
- frawhide
- f38
pull_request:
branches:
- frawhide
- f38
merge_group:
branches:
- frawhide
- f38
workflow_dispatch:
workflow_call:
@@ -23,13 +23,13 @@ jobs:
outputs:
build_matrix: ${{ steps.generate_build_matrix.outputs.build_matrix }}
container:
image: ghcr.io/terrapkg/builder:frawhide
image: ghcr.io/terrapkg/builder:f38
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Set workspace as safe
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Generate build matrix
@@ -40,38 +40,33 @@ jobs:
strategy:
matrix:
pkg: ${{ fromJson(needs.manifest.outputs.build_matrix) }}
version: ["rawhide"]
version: ["38"]
fail-fast: false
runs-on: ${{ matrix.pkg.arch == 'aarch64' && 'ARM64' || matrix.pkg.labels['large'] && 'x86-64-lg' || 'ubuntu-latest' }}
runs-on: ${{ matrix.pkg.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
container:
image: ghcr.io/terrapkg/builder:f${{ matrix.version}}
image: ghcr.io/terrapkg/builder:f38
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Checkout latest Mock configs
uses: actions/checkout@v4
with:
repository: terrapkg/mock-configs
path: mock-configs
- name: Set up git repository
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Cache buildroot
id: br-cache
uses: actions/cache@v3
with:
path: /var/cache
key: ${{ runner.os }}-br-${{ matrix.version }}-${{ matrix.pkg.arch }}-${{ matrix.pkg.pkg }}
- name: Include custom build template instead of package default
run: |
cp -v mock-configs/terra.tpl /etc/mock/templates/terra.tpl
cp -v anda/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-${{ 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-${{ matrix.version }}-i386.cfg
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c anda/mock-configs/terra-${{ matrix.version }}-${{ matrix.pkg.arch }}.cfg
- name: Generating artifact name
id: art
@@ -80,13 +75,10 @@ jobs:
x=${NAME//\//@}
echo "name=$x" >> $GITHUB_OUTPUT
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v3
with:
name: ${{ steps.art.outputs.name }}
compression-level: 0 # The RPMs are already compressed :p
path: |
anda-build/rpm/rpms/*
anda-build/rpm/srpm/*
path: anda-build/rpm/rpms/*
- name: Upload packages to subatomic
if: github.event_name == 'push'
@@ -96,17 +88,69 @@ jobs:
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra${{ matrix.version }} anda-build/rpm/rpms/*
- name: Upload source packages to subatomic
if: github.event_name == 'push'
run: |
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
- name: Notify Madoguchi (Success)
if: success() && github.event_name == 'push'
run: ./.github/workflows/mg.sh true ${{matrix.pkg.pkg}} ${{matrix.version}} ${{matrix.pkg.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}} $GITHUB_SHA
run: ./.github/workflows/mg.sh true ${{matrix.pkg.pkg}} ${{matrix.version}} ${{matrix.pkg.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}}
- name: Notify Madoguchi (Failure)
if: ( cancelled() || failure() ) && github.event_name == 'push'
run: ./.github/workflows/mg.sh false ${{matrix.pkg.pkg}} ${{matrix.version}} ${{matrix.pkg.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}} $GITHUB_SHA
run: ./.github/workflows/mg.sh false ${{matrix.pkg.pkg}} ${{matrix.version}} ${{matrix.pkg.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}}
- name: Lint RPMs and SRPMs
id: lint
if: success()
run: |
echo 'LINT_ERR=false' >> $GITHUB_ENV
rpmlint anda-build/ > rpmlint.txt || f=1
if [[ $f -eq 1 ]]; then
EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64)
echo "ESC_LINT_OUT<<$EOF" >> $GITHUB_ENV
cat rpmlint.txt | sed 's/`/\\`/g' | sed 's/"/\"/g' >> $GITHUB_ENV
echo $EOF >> $GITHUB_ENV
echo "lint_out<<$EOF" >> $GITHUB_ENV
echo '```' >> $GITHUB_ENV
cat rpmlint.txt >> $GITHUB_ENV
echo '```' >> $GITHUB_ENV
echo $EOF >> $GITHUB_ENV
echo 'LINT_ERR=true' >> $GITHUB_ENV
fi
- name: Try to install package
id: dnf
if: success()
run: |
echo 'INSTALL_ERR=false' >> $GITHUB_ENV
touch out
for f in anda-build/rpm/rpms/*.rpm; do
dnf in --downloadonly -y $f > $f.dnfout.txt 2>&1 || fail=1
if [[ $fail -eq 1 ]]; then
echo "### $f" >> out
echo '```' >> out
cat $f.dnfout.txt >> out
echo '```' >> out
echo >> out
echo 'INSTALL_ERR=true' >> $GITHUB_ENV
fi
done
cat out
EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64)
echo "ESC_DNF_OUT<<$EOF" >> $GITHUB_ENV
cat out | sed 's/`/\\`/g' | sed 's/"/\"/g' >> $GITHUB_ENV
echo $EOF >> $GITHUB_ENV
echo "dnf_out<<$EOF" >> $GITHUB_ENV
cat out >> $GITHUB_ENV
echo $EOF >> $GITHUB_ENV
- name: Generate RPMLint/DNF summary
if: success()
run: |
# Remind me to make all of this not weird later ~ lleyton
if [[ $LINT_ERR == "true" ]]; then
echo -e "## ❌ Lint: [${{matrix.pkg.pkg}} (${{matrix.pkg.arch}})](https://github.com/terrapkg/packages/actions/runs/${{github.run_id}})\n" >> $GITHUB_STEP_SUMMARY
echo -e "```\n${{ env.ESC_LINT_OUT }}\n```\n" >> $GITHUB_STEP_SUMMARY
fi
if [[ $INSTALL_ERR == "true" ]]; then
echo -e "## ❌ DNF: [${{matrix.pkg.pkg}} (${{matrix.pkg.arch}})](https://github.com/terrapkg/packages/actions/runs/${{github.run_id}})\n" >> $GITHUB_STEP_SUMMARY
echo "${{ env.ESC_DNF_OUT }}" >> $GITHUB_STEP_SUMMARY
fi
+34 -33
View File
@@ -7,55 +7,56 @@ jobs:
bootstrap:
strategy:
matrix:
version: ["rawhide"]
version: ["38"]
arch: ["x86_64", "aarch64"]
fail-fast: true
runs-on: ${{ matrix.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
container:
image: registry.fedoraproject.org/fedora-minimal:${{ matrix.version }}
image: fedora:38
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Install repositories
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
- uses: actions/setup-go@v3
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 fedora-${{ matrix.version }}-${{ matrix.arch }} anda/terra/mock-configs/pkg -p rpm
- name: Install terra-mock-configs
run: dnf5 install -y anda-build/rpm/rpms/terra-mock-configs*.rpm
go-version: "^1.19"
- name: Build anda-srpm-macros
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/terra/srpm-macros/pkg
- name: Install repositories
run: |
sudo dnf install -y dnf-plugins-core
sudo dnf config-manager --add-repo https://github.com/terrapkg/subatomic-repos/raw/main/terra${{ matrix.version }}.repo
sudo dnf install -y mock createrepo_c rpm-build terra-mock-configs gcc curl wget git-core openssl-devel
- uses: actions/checkout@v3
with:
repository: FyraLabs/subatomic
set-safe-directory: true
fetch-depth: 1
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: Install Anda
uses: actions-rs/cargo@v1
with:
command: install
args: anda
- name: Build Subatomic
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/tools/buildsys/subatomic/pkg
run: |
git config --global --add safe.directory "$GITHUB_WORKSPACE"
anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} subatomic -p rpm -D "autogitcommit $(git log -1 --format='%H')"
- name: Install Subatomic
run: dnf5 install -y ./anda-build/rpm/rpms/subatomic-*.rpm
run: sudo dnf install -y ./anda-build/rpm/rpms/subatomic-*.rpm
- uses: actions/checkout@v3
with:
repository: FyraLabs/anda
- name: Build Andaman
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/tools/buildsys/anda/pkg
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda -p rpm
- name: Upload packages to subatomic
- name: Upload to Subatomic
run: |
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra${{ matrix.version }} anda-build/rpm/rpms/*
- name: Upload source packages to subatomic
if: github.event_name == 'push'
run: |
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
+19 -56
View File
@@ -5,73 +5,46 @@ on:
packages:
description: "Packages to Build"
required: true
custom_builder:
description: "Custom Builder"
required: false
default: ""
architecture:
description: "Architecture"
required: false
default: all
type: string
jobs:
parse:
outputs:
pkgs: ${{ steps.parsing.outputs.pkgs }}
builder: ${{ inputs.custom_builder }}
arch: ${{ steps.parsing.outputs.arch }}
runs-on: "ubuntu-latest"
steps:
- name: Parse Input
id: parsing
run: |
echo "${{ inputs.packages }}" | sed 's/ /\n/g' | sed 's/$/\//g' | jq -R . | jq -s . | jq -c . | sed 's/^/pkgs=/' >> $GITHUB_OUTPUT
echo "builder=${{ inputs.custom_builder }}" >> $GITHUB_OUTPUT
arch="${{ inputs.architecture }}"
# Convert to json array using jq
# if arch is not all, convert to array
if [ "$arch" != "all" ]; then
# jq, array with single element as string
arch=$(echo $arch | sed 's/,/\n/g')
echo "arch=$(echo $arch | jq -Rs 'split("\n")' | jq 'map(select(length > 0))' | jq -c .)" >> $GITHUB_OUTPUT
else
echo "arch=$(echo '["aarch64", "x86_64"]' | jq -c .)" >> $GITHUB_OUTPUT
fi
run: echo "${{ inputs.packages }}" | sed 's/ /\n/g' | sed 's/$/\//g' | jq -R . | jq -s . | jq -c . | sed 's/^/pkgs=/' >> $GITHUB_OUTPUT
build:
needs: parse
strategy:
matrix:
pkg: ${{ fromJson(needs.parse.outputs.pkgs) }}
version: ["rawhide"]
arch: ${{ fromJson(needs.parse.outputs.arch) }}
version: ["38"]
arch: ["x86_64", "aarch64"]
fail-fast: false
runs-on: ${{ matrix.arch == 'aarch64' && 'ARM64' || needs.parse.outputs.builder && needs.parse.outputs.builder || 'ubuntu-latest' }}
runs-on: ${{ matrix.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
container:
image: ghcr.io/terrapkg/builder:f${{ matrix.version }}
image: ghcr.io/terrapkg/builder:f38
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Checkout latest Mock configs
uses: actions/checkout@v4
with:
repository: terrapkg/mock-configs
path: mock-configs
- name: Set up git repository
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Include custom build template instead of package default
run: |
cp -v mock-configs/terra.tpl /etc/mock/templates/terra.tpl
- name: Cache buildroot
id: br-cache
uses: actions/cache@v3
with:
path: /var/cache
key: ${{ runner.os }}-br-${{ matrix.version }}-${{ matrix.arch }}-${{ matrix.pkg }}
- name: Build with Andaman
run: anda build anda/${{ matrix.pkg }}pkg --package rpm -c mock-configs/terra-${{ matrix.version }}-${{ matrix.arch }}.cfg
run: anda build anda/${{ matrix.pkg }}pkg --package rpm -c anda/mock-configs/terra-${{ matrix.version }}-${{ matrix.arch }}.cfg
- name: Generating artifact name
id: art
@@ -80,13 +53,10 @@ jobs:
x=${NAME//\//@}
echo "name=$x" >> $GITHUB_OUTPUT
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v3
with:
name: ${{ steps.art.outputs.name }}
compression-level: 0 # The RPMs are already compressed :p
path: |
anda-build/rpm/rpms/*
anda-build/rpm/srpm/*
path: anda-build/rpm/rpms/*
- name: Upload packages to subatomic
run: |
@@ -95,16 +65,9 @@ jobs:
--token ${{ secrets.SUBATOMIC_TOKEN }} \
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${{ matrix.version }}-source anda-build/rpm/srpm/*
- name: Notify Madoguchi (Success)
if: success()
run: ./.github/workflows/mg.sh true ${{matrix.pkg}} ${{matrix.version}} ${{matrix.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}} $GITHUB_SHA
if: success() && github.event_name == 'push'
run: ./.github/workflows/mg.sh true ${{matrix.pkg}} ${{matrix.version}} ${{matrix.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}}
- name: Notify Madoguchi (Failure)
if: cancelled() || failure()
run: ./.github/workflows/mg.sh false ${{matrix.pkg}} ${{matrix.version}} ${{matrix.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}} $GITHUB_SHA
if: ( cancelled() || failure() ) && github.event_name == 'push'
run: ./.github/workflows/mg.sh false ${{matrix.pkg}} ${{matrix.version}} ${{matrix.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}}
+16 -31
View File
@@ -11,33 +11,29 @@ jobs:
strategy:
matrix:
pkg: ${{ fromJson(inputs.packages) }}
version: ["rawhide"]
version: ["38"]
fail-fast: false
runs-on: ${{ matrix.pkg.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
container:
image: ghcr.io/terrapkg/builder:f${{ matrix.version }}
image: ghcr.io/terrapkg/builder:f38
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Checkout latest Mock configs
uses: actions/checkout@v4
with:
repository: terrapkg/mock-configs
path: mock-configs
- name: Set up git repository
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Include custom build template instead of package default
run: |
cp -v mock-configs/terra.tpl /etc/mock/templates/terra.tpl
- name: Cache buildroot
id: br-cache
uses: actions/cache@v3
with:
path: /var/cache
key: ${{ runner.os }}-br-${{ matrix.version }}-${{ matrix.pkg.arch }}-${{ matrix.pkg.pkg }}
- name: Build with Andaman
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c mock-configs/terra-${{ matrix.version }}-${{ matrix.pkg.arch }}.cfg
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c anda/mock-configs/terra-${{ matrix.version }}-${{ matrix.pkg.arch }}.cfg
- name: Generating artifact name
id: art
@@ -46,13 +42,10 @@ jobs:
x=${NAME//\//@}
echo "name=$x" >> $GITHUB_OUTPUT
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v3
with:
name: ${{ steps.art.outputs.name }}
compression-level: 0 # The RPMs are already compressed :p
path: |
anda-build/rpm/rpms/*
anda-build/rpm/srpm/*
path: anda-build/rpm/rpms/*
- name: Upload packages to subatomic
run: |
@@ -61,17 +54,9 @@ jobs:
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra${{ matrix.version }} anda-build/rpm/rpms/*
- name: Upload source packages to subatomic
if: github.event_name == 'push'
run: |
subatomic-cli upload --prune \
--server https://subatomic.fyralabs.com \
--token ${{ secrets.SUBATOMIC_TOKEN }} \
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
- name: Notify Madoguchi (Success)
if: success()
run: ./.github/workflows/mg.sh true ${{matrix.pkg.pkg}} ${{matrix.version}} ${{matrix.pkg.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}} $GITHUB_SHA
if: success() && github.event_name == 'push'
run: ./.github/workflows/mg.sh true ${{matrix.pkg.pkg}} ${{matrix.version}} ${{matrix.pkg.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}}
- name: Notify Madoguchi (Failure)
if: cancelled() || failure()
run: ./.github/workflows/mg.sh false ${{matrix.pkg.pkg}} ${{matrix.version}} ${{matrix.pkg.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}} $GITHUB_SHA
if: ( cancelled() || failure() ) && github.event_name == 'push'
run: ./.github/workflows/mg.sh false ${{matrix.pkg.pkg}} ${{matrix.version}} ${{matrix.pkg.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}}
+5 -5
View File
@@ -3,20 +3,20 @@ name: Lint
on:
push:
branches:
- frawhide
- f38
pull_request:
branches:
- frawhide
- f38
merge_group:
branches:
- frawhide
- f38
jobs:
lint:
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:frawhide
image: ghcr.io/terrapkg/builder:f38
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v3
- name: Lint spec files
run: rpmlint $(find anda -type f -name "*.spec" -type f)
+2 -2
View File
@@ -2,7 +2,7 @@ set -x
dirs=$2
dirs=${dirs/\/pkg/}
export p="{\"id\":\"$5\",\"ver\":\"%v\",\"rel\":\"%r\",\"arch\":\"$4\",\"dirs\":\"$dirs\",\"succ\":$1,\"commit\":\"$7\"}"
export p="{\"id\":\"$5\",\"ver\":\"%v\",\"rel\":\"%r\",\"arch\":\"$4\",\"dirs\":\"$dirs\",\"succ\":$1}"
if [[ $1 == false ]]; then
d=${p/\%v/?}
@@ -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$3/builds/$n -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/$n -X PUT -H "Content-Type: application/json" -d $d --fail-with-body
done
-37
View File
@@ -1,37 +0,0 @@
name: Automatic backport/sync action
on:
pull_request_target:
types: ["labeled", "closed"]
jobs:
backport:
name: Backport/sync PR
runs-on: ubuntu-latest
if: github.event.pull_request.merged
steps:
- name: Install SSH signing key
run: |
mkdir -p ${{ runner.temp }}
echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key
chmod 0700 ${{ runner.temp }}/signing_key
- name: Setup Raboneko Signing
run: |
git config --global gpg.format "ssh"
git config --global user.signingkey "${{ runner.temp }}/signing_key"
git config --global commit.gpgsign true
- name: Backport Action
uses: sorenlouv/backport-github-action@v9.3.0
with:
github_token: ${{ secrets.RABONEKO_BACKPORT_GITHUB_TOKEN }}
auto_backport_label_prefix: sync-
- name: Info log
if: ${{ success() }}
run: cat ~/.backport/backport.info.log
- name: Debug log
if: ${{ failure() }}
run: cat ~/.backport/backport.debug.log
+38
View File
@@ -0,0 +1,38 @@
name: Sync PR to other branches
on:
pull_request:
types:
- closed
branches:
- f38
jobs:
sync:
strategy:
matrix:
branch: ["f37"]
fail-fast: false
if: github.event.pull_request.merged == true && !contains(github.event.pull_request.labels.*.name, 'nosync')
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
ref: ${{ matrix.branch }}
- name: Install SSH key and Setup Git
run: |
mkdir -p ${{ runner.temp }}
echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key
chmod 0700 ${{ runner.temp }}/signing_key
git config --global --add safe.directory "$GITHUB_WORKSPACE"
git config user.name "Raboneko"
git config user.email "raboneko@fyralabs.com"
git config gpg.format "ssh"
git config user.signingkey "${{ runner.temp }}/signing_key"
- name: Apply patches and Push
run: |
curl https://github.com/terrapkg/packages/pull/${{ github.event.pull_request.number }}.patch > pr.patch
git am -S --keep-cr --signoff < pr.patch
git push -u origin --all
+7 -6
View File
@@ -3,9 +3,8 @@ name: Push comps updates
on:
push:
branches:
- frawhide
- f40
- f39
- f38
- f37
paths:
- comps.xml
workflow_dispatch:
@@ -14,12 +13,14 @@ jobs:
update-comps:
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:frawhide
image: ghcr.io/terrapkg/builder:38
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v3
- id: get-branch
uses: grandmasterdev/github-action-get-branch@latest
- name: Push to subatomic
run: |
branch=${{ github.ref_name }}
branch=${{steps.get-branch.outputs.branch-name}}
ver=${branch/f/}
subatomic-cli upload-comps \
--server https://subatomic.fyralabs.com \
+7 -10
View File
@@ -8,21 +8,20 @@ jobs:
autoupdate:
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:frawhide
image: ghcr.io/terrapkg/builder:f38
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
- name: Install SSH signing key & Set up git repository
- name: Install SSH signing key
run: |
mkdir -p ${{ runner.temp }}
echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key
chmod 0700 ${{ runner.temp }}/signing_key
git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Run Nightly Update
run: anda update -vv --filters nightly=1
@@ -31,6 +30,7 @@ jobs:
- name: Save
run: |
git config --global --add safe.directory "*"
if [[ `git status --porcelain` ]]; then
git config user.name "Raboneko"
git config user.email "raboneko@fyralabs.com"
@@ -38,16 +38,13 @@ jobs:
git config user.signingkey "${{ runner.temp }}/signing_key"
msg="bump(nightly): $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
git commit -S -a -m "$msg"
copy_over () {
f37 () {
git format-patch HEAD^
git checkout $1
git checkout f37
git apply *.patch || true
rm *.patch
git add *
git commit -S -a -m "$msg"
}
copy_over f39 || true
copy_over f40 || true
copy_over f41 || true
f37 || true
git push -u origin --all
fi
+10 -13
View File
@@ -1,37 +1,37 @@
name: Update
on:
schedule:
- cron: "*/10 * * * *"
- cron: "*/30 * * * *"
workflow_dispatch:
jobs:
autoupdate:
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:frawhide
image: ghcr.io/terrapkg/builder:f38
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
- name: Install SSH signing key & Set up git repository
- name: Install SSH signing key
run: |
mkdir -p ${{ runner.temp }}
echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key
chmod 0700 ${{ runner.temp }}/signing_key
git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Run Update
run: anda update -vv --excludes nightly=1
run: anda update -vv
env:
GITHUB_TOKEN: ${{ secrets.AUTOUPDATE_GH_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RUST_BACKTRACE: full
- name: Save
run: |
git config --global --add safe.directory "*"
if [[ `git status --porcelain` ]]; then
git config user.name "Raboneko"
git config user.email "raboneko@fyralabs.com"
@@ -39,16 +39,13 @@ jobs:
git config user.signingkey "${{ runner.temp }}/signing_key"
msg="bump: $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
git commit -S -a -m "$msg"
copy_over () {
f37 () {
git format-patch HEAD^
git checkout $1
git checkout f37
git apply *.patch || true
rm *.patch
git add *
git commit -S -a -m "$msg"
}
copy_over f39 || true
copy_over f40 || true
copy_over f41 || true
f37 || true
git push -u origin --all
fi
-1
View File
@@ -1,2 +1 @@
anda-build/
**/*.tar*
+30
View File
@@ -0,0 +1,30 @@
# Repository
/.github @lleyton
/.devcontainer @lleyton
/.gitignore @windowsboy111
/CODE_OF_CONDUCT.md @lleyton
/CONTRIBUTING.md @lleyton
/LICENSE @lleyton
/README.md @windowsboy111
/SECURITY.md @lleyton
/anda.hcl @lleyton
/comps.xml @lleyton
# Package maintainers
/anda/lib/libbismuth @lainsce
/anda/lib/libhelium @lainsce
/anda/others/tau-helium @lainsce
/anda/others/tau-hydrogen @lainsce
/anda/tools/melody @lleyton
/anda/go/curlie @lleyton
/anda/games/prismlauncher @getchoo
/anda/games/prismlauncher-nightly @getchoo
/anda/games/prismlauncher-qt5-nightly @getchoo
/anda/games/prismlauncher-qt5 @getchoo
/anda/srpm-macros @korewaChino
/anda/rust/starship @korewaChino
/anda/rust/zellij @korewaChino
/anda/audio/distrho @korewaChino
+4 -6
View File
@@ -1,9 +1,7 @@
# Contributing
First of all, thanks for being interested in contributing to Terra! If you have any questions about contributing, please contact us on [Discord](https://discord.gg/5fdPuxTg5Q).
First of all, thanks for being interested in contributing to Terra! If you have any questions about contributing, please contact us on [Discord](https://discord.gg/5fdPuxTg5Q). Since we use a GitHub Wiki for [documention](https://github.com/terrapkg/packages/wiki), our guidelines may be found there. See the links below:
## Documentations
* [Contribution Guide](https://developer.fyralabs.com/terra/contributing)
* [FAQ](https://developer.fyralabs.com/terra/faq)
* [Policy](https://developer.fyralabs.com/terra/policy)
* [Contribution Guide](https://github.com/terrapkg/packages/wiki/Contribute)
* [FAQ](https://github.com/terrapkg/packages/wiki/FAQ)
* [Policy](https://github.com/terrapkg/packages/wiki/Policy)
+3 -5
View File
@@ -1,8 +1,7 @@
# Terra Sources
[![Repository status](https://repology.org/badge/repository-big/terra_39.svg?header=Terra+39)](https://repology.org/repository/terra_39)
[![Repository status](https://repology.org/badge/repository-big/terra_40.svg?header=Terra+40)](https://repology.org/repository/terra_40)
[![Repository status](https://repology.org/badge/repository-big/terra_rawhide.svg?header=Terra+Rawhide)](https://repology.org/repository/terra_rawhide)
[![Repository status](https://repology.org/badge/repository-big/terra_37.svg?header=Terra+37)](https://repology.org/repository/terra_37)
[![Repository status](https://repology.org/badge/repository-big/terra_38.svg?header=Terra+38)](https://repology.org/repository/terra_38)
Terra is a rolling-release Fedora repository for all the software you need.
With Terra, you can install the latest packages knowing that quality and security are assured.
@@ -11,9 +10,8 @@ This monorepo contains the package manifests for all packages in Terra.
## Installation
```bash
sudo dnf install --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' --setopt='terra.gpgkey=https://repos.fyralabs.com/terra$releasever/key.asc' terra-release
sudo dnf config-manager --add-repo https://github.com/terrapkg/subatomic-repos/raw/main/terra.repo
```
You should also install the `terra-release` package so that when our infrastructure has any migrations, you can be assured that your Terra installation will still work as-is.
## Documentation
Our documentation can be found on our [Devdocs](https://developer.fyralabs.com/terra/). Alternatively, the GitHub Wiki contains older versions of the documentations.
+2 -2
View File
@@ -3,7 +3,7 @@
## Our Process
Fyra Labs is committed to ensuring user security and privacy.
As such, we constantly try our best to ensure that our infrastructure and process are secure, which you may read about in our [FAQ](https://developer.fyralabs.com/terra/faq#technical-details).
As such, we constantly try our best to ensure that our infrastructure and process are secure, which you may read about in our [FAQ](https://github.com/terrapkg/packages/wiki/FAQ#technical-details).
As a part of Fyra Labs's transparency measures, we will publicize details of any known breaches. This information will include, but will not be limited to:
* Affected users, infrastructure, and data.
@@ -11,7 +11,7 @@ As a part of Fyra Labs's transparency measures, we will publicize details of any
* An in-depth explanation of how the breach occurred, including relevant security vulnerabilities.
* How Fyra Labs will better protect user data in the future, ensuring our commitment to security and privacy.
We will publish these updates on our [Twitter](https://twitter.com/TeamFyraLabs), [Fedi](https://fedi.fyralabs.com/@hq), and [Discord](https://discord.gg/5fdPuxTg5Q).
We will publish these updates on our [Twitter](https://twitter.com/TeamFyraLabs) and [Discord](https://discord.gg/5fdPuxTg5Q).
## Reporting a Vulnerability
+19 -36
View File
@@ -1,26 +1,17 @@
%global xurl https://files.pythonhosted.org/packages/51/5f/6f52b958fe38a36a0799c01fbd56a742ebdfcf41f89438dbee998b8ce692/anki-24.06.3-cp39-abi3-manylinux_2_28_x86_64.whl
%global aurl https://files.pythonhosted.org/packages/df/bb/b0bfbc6a06a598b0b614d18dd8c4f40827828649f9742f1f44a4e44d6a2c/anki-24.06.3-cp39-abi3-manylinux_2_31_aarch64.whl
%global qurl https://files.pythonhosted.org/packages/21/2a/d8e22a9521be04ef29a30d21a2c3008783ab03b6f07cc14696a040f747a4/aqt-24.06.3-py3-none-any.whl
Name: anki-bin
Version: 24.06.3
Release: 1%?dist
Version: 2.1.65
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 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
Requires: libxcrypt-compat hicolor-icon-theme sox mpv
BuildRequires: python3-installer python3.11 rpm_macro(fdupes)
Requires: hicolor-icon-theme python3-sqlalchemy python3-simplejson python3-matplotlib python3-decorator python3-markdown python3-send2trash
Requires: python3-requests python3-pygame python3-beautifulsoup4 python3-httplib2 python3-pyaudio python3-jsonschema sox libxcrypt-compat
Requires: python3-flask-cors python3-protobuf python3-requests python3-waitress
ExclusiveArch: x86_64
Conflicts: anki
%ifarch x86_64
Source0: %xurl
%elifarch aarch64
Source0: %aurl
%endif
Source1: %qurl
Source0: https://files.pythonhosted.org/packages/cp39/a/anki/anki-%{version}-cp39-abi3-manylinux_2_28_%{_arch}.whl
Source1: https://files.pythonhosted.org/packages/py3/a/aqt/aqt-%{version}-py3-none-any.whl
Source2: https://raw.githubusercontent.com/ankitects/anki/%{version}/qt/runanki.py
Source3: https://raw.githubusercontent.com/ankitects/anki/%{version}/qt/bundle/lin/anki.desktop
Source4: https://raw.githubusercontent.com/ankitects/anki/%{version}/qt/bundle/lin/anki.png
@@ -37,37 +28,29 @@ Anki is based on a theory called spaced repetition.
%build
%install
pip3 install --root=%{buildroot} %SOURCE0 %SOURCE1
python3.11 -m installer --destdir="%{buildroot}" %{SOURCE0}
python3.11 -m installer --destdir="%{buildroot}" %{SOURCE1}
install -Dm755 %{SOURCE2} "%{buildroot}/usr/bin/anki"
install -Dm644 %{SOURCE3} "%{buildroot}/usr/share/applications/anki.desktop"
install -Dm644 %{SOURCE4} "%{buildroot}/usr/share/pixmaps/anki.png"
install -Dm644 %{SOURCE5} "%{buildroot}/%{_datadir}/licenses/%{name}/LICENSE"
install -Dm644 %{SOURCE6} "%{buildroot}/%{_datadir}/doc/%{name}/README.md"
cp -r %buildroot%_libdir/python3*/site-packages/{_aqt,anki*,aqt*} .
rm -rf %buildroot{%_libdir,/usr/lib}/python3*/site-packages/*
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/
%fdupes %_libdir/python*/site-packages/_aqt/data/
%files
%license LICENSE
%doc README.md
%_bindir/anki
/usr/lib/python*/site-packages/_aqt/
/usr/lib/python*/site-packages/anki-%{version}.dist-info/
/usr/lib/python*/site-packages/anki/
/usr/lib/python*/site-packages/aqt-%{version}.dist-info/
/usr/lib/python*/site-packages/aqt/
%_datadir/applications/anki.desktop
%_datadir/pixmaps/anki.png
/usr/bin/anki
/usr/lib64/python*/site-packages/_aqt/
/usr/lib64/python*/site-packages/anki-%{version}.dist-info/
/usr/lib64/python*/site-packages/anki/
/usr/lib64/python*/site-packages/aqt-%{version}.dist-info/
/usr/lib64/python*/site-packages/aqt/
/usr/share/applications/anki.desktop
/usr/share/pixmaps/anki.png
%changelog
* Fri Nov 10 2023 hazel-bunny <dabiswas112@gmail.com> - 23.10-2
- Add python3-orjson and mpv as dependencies
* Wed Jan 11 2023 windowsboy111 <windowsboy111@fyralabs.com> - 2.1.60
- Initial package
+1 -15
View File
@@ -1,15 +1 @@
let aarch64_regex = `<a href="https://files\.pythonhosted\.org/packages/(..)/(..)/(.{60})/anki-([\d.]+)-cp(\d+)-abi3-manylinux_.+?_aarch64.whl">`;
let html = get("https://pypi.org/project/anki/");
let relevant = find(aarch64_regex, html, 0);
let ver = find(aarch64_regex, relevant, 4);
rpm.version(ver);
if rpm.changed() {
rpm.release();
rpm.global("aurl", find(`"(.+)"`, relevant, 1));
let cp = find(aarch64_regex, relevant, 5);
let x86_64_regex = `<a href="https://files\.pythonhosted\.org/packages/(..)/(..)/(.{60})/anki-${ver}-cp${cp}-abi3-manylinux_.+?_x86_64.whl">`;
let relevant1 = find(x86_64_regex, html, 0);
rpm.global("xurl", find(`"(.+)"`, relevant1, 1));
let qhtml = get("https://pypi.org/project/aqt/");
rpm.global("qurl", find(`<a href="(https://files\.pythonhosted\.org/packages/../../.{60}/aqt-${ver}-py3-none.any.whl)">`, qhtml, 1));
}
rpm.version(gh("ankitects/anki"));
+8 -8
View File
@@ -1,20 +1,20 @@
--- a/qt/aqt/qt/__init__.py
+++ b/qt/aqt/qt/__init__.py
@@ -9,16 +9,7 @@ import sys
diff -uNr anki-2.1.55.old/qt/aqt/qt/__init__.py anki-2.1.55/qt/aqt/qt/__init__.py
--- anki-2.1.55.old/qt/aqt/qt/__init__.py 2023-01-02 18:34:13.716216913 +0800
+++ anki-2.1.55/qt/aqt/qt/__init__.py 2023-01-02 18:34:00.410033708 +0800
@@ -9,16 +9,7 @@
import traceback
from typing import Callable, TypeVar, Union
-try:
- import PyQt6
-except:
- from .qt5 import * # type: ignore
-else:
- if os.getenv("ENABLE_QT5_COMPAT"):
- if not os.getenv("DISABLE_QT5_COMPAT"):
- print("Running with temporary Qt5 compatibility shims.")
- print("Run with DISABLE_QT5_COMPAT=1 to confirm compatibility with Qt6.")
- from . import qt5_compat # needs to be imported first
- from .qt6 import *
-
+from .qt5 import * # type: ignore
from anki.utils import is_mac, is_win
# fix buggy ubuntu12.04 display of language selector
+16 -12
View File
@@ -1,13 +1,17 @@
diff --git a/qt/aqt/update.py b/qt/aqt/update.py
index 212ddf93d..6f716cc04 100644
--- a/qt/aqt/update.py
+++ b/qt/aqt/update.py
@@ -11,6 +11,8 @@ from aqt.utils import openLink, show_warning, showText, tr
diff -uNr anki-2.1.55.old/qt/aqt/profiles.py anki-2.1.55/qt/aqt/profiles.py
--- anki-2.1.55.old/qt/aqt/profiles.py 2023-01-02 18:35:44.574467892 +0800
+++ anki-2.1.55/qt/aqt/profiles.py 2023-01-02 18:34:00.412033736 +0800
@@ -77,11 +77,11 @@
def check_for_update() -> None:
+ return
+
from aqt import mw
def do_check(_col: Collection) -> CheckForUpdateResponse:
metaConf = dict(
ver=0,
- updates=True,
+ updates=False,
created=int_time(),
id=random.randrange(0, 2**63),
lastMsg=-1,
- suppressUpdate=False,
+ suppressUpdate=True,
firstRun=True,
defaultLang=None,
)
+6 -6
View File
@@ -1,14 +1,14 @@
Name: anki-qt5
Version: 24.06.3
Release: 1%?dist
Version: 2.1.65
Release: 1%{?dist}
Summary: Flashcard program for using space repetition learning
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
URL: https://apps.ankiweb.net/
BuildRequires: python3-devel python3-setuptools python3-waitress python3-protobuf python3-pysocks rpm_macro(fdupes)
BuildRequires: python3-distro python3-flask-cors python3-jsonschema python3-send2trash python3-certifi python3-simplejson 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
Requires: python3-requests python3-pygame python3-beautifulsoup4 python3-httplib2 python3-pyaudio python3-jsonschema sox libxcrypt-compat python3-pyqt5-sip
Requires: hicolor-icon-theme python3-sqlalchemy python3-simplejson python3-matplotlib python3-decorator python3-markdown python3-send2trash
Requires: python3-requests python3-pygame python3-beautifulsoup4 python3-httplib2 python3-pyaudio python3-jsonschema sox libxcrypt-compat
ExclusiveArch: x86_64
Conflicts: anki
Patch0: 0001-No-update.patch
@@ -20,10 +20,10 @@ phrases in a foreign language) as easily, quickly and efficiently as possible.
Anki is based on a theory called spaced repetition.
%prep
rm -rf ./*
git clone https://github.com/ankitects/anki .
git checkout %version
%patch 1 -p1
%patch0 -p1
%patch1 -p1
# See https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=anki-qt5
+16 -12
View File
@@ -1,13 +1,17 @@
diff --git a/qt/aqt/update.py b/qt/aqt/update.py
index 212ddf93d..6f716cc04 100644
--- a/qt/aqt/update.py
+++ b/qt/aqt/update.py
@@ -11,6 +11,8 @@ from aqt.utils import openLink, show_warning, showText, tr
diff -uNr anki-2.1.55.old/qt/aqt/profiles.py anki-2.1.55/qt/aqt/profiles.py
--- anki-2.1.55.old/qt/aqt/profiles.py 2023-01-02 18:35:44.574467892 +0800
+++ anki-2.1.55/qt/aqt/profiles.py 2023-01-02 18:34:00.412033736 +0800
@@ -77,11 +77,11 @@
def check_for_update() -> None:
+ return
+
from aqt import mw
def do_check(_col: Collection) -> CheckForUpdateResponse:
metaConf = dict(
ver=0,
- updates=True,
+ updates=False,
created=int_time(),
id=random.randrange(0, 2**63),
lastMsg=-1,
- suppressUpdate=False,
+ suppressUpdate=True,
firstRun=True,
defaultLang=None,
)
-1
View File
@@ -1,5 +1,4 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "anki.spec"
}
+4 -5
View File
@@ -1,14 +1,14 @@
Name: anki
Version: 24.06.3
Release: 1%?dist
Version: 2.1.65
Release: 1%{?dist}
Summary: Flashcard program for using space repetition learning
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
URL: https://apps.ankiweb.net/
BuildRequires: python3-devel python3-setuptools python3-waitress python3-protobuf python3-pysocks rpm_macro(fdupes)
BuildRequires: python3-distro python3-flask-cors python3-jsonschema python3-send2trash python3-certifi python3-simplejson
BuildRequires: python3-installer make mold cargo git rsync ninja-build libxcrypt-compat nodejs python3.9 python-unversioned-command gcc python3-pyqt6-webengine
BuildRequires: python3-installer make mold cargo git rsync ninja-build libxcrypt-compat nodejs python3.9 python-unversioned-command gcc python3-pyqt6-devel python3-pyqt6
Requires: hicolor-icon-theme python3-sqlalchemy python3-simplejson python3-matplotlib python3-decorator python3-markdown python3-send2trash
Requires: python3-requests python3-pygame python3-beautifulsoup4 python3-httplib2 python3-pyaudio python3-jsonschema sox libxcrypt-compat python3-pyqt6-webengine
Requires: python3-requests python3-pygame python3-beautifulsoup4 python3-httplib2 python3-pyaudio python3-jsonschema sox libxcrypt-compat python3-qt5-webengine python3-pyqt6
Recommends: mpv
Obsoletes: anki <= 2.1.15
Conflicts: anki-qt5
@@ -20,7 +20,6 @@ phrases in a foreign language) as easily, quickly and efficiently as possible.
Anki is based on a theory called spaced repetition.
%prep
rm -rf *
git clone https://github.com/ankitects/anki .
git checkout %{version}
%patch 0 -p1
+2 -8
View File
@@ -1,5 +1,4 @@
%define debug_package %nil
%global _build_id_links none
%ifarch x86_64
%global src ArmCord-%version
@@ -9,13 +8,9 @@
%global src ArmCord-%version-armv7l
%endif
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/armcord/.*\\.so
Name: armcord-bin
Version: 3.2.7
Release: 1%?dist
Version: 3.2.1
Release: 1%{?dist}
License: OSL-3.0
Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/ArmCord/ArmCord
@@ -26,7 +21,6 @@ Source2: https://raw.githubusercontent.com/ArmCord/ArmCord/v%version/README.md
Requires: electron xdg-utils
ExclusiveArch: x86_64 aarch64 armv7l
Conflicts: armcord
BuildRequires: add-determinism
%description
ArmCord is a custom client designed to enhance your Discord experience
+15 -16
View File
@@ -1,26 +1,25 @@
%define debug_package %nil
Name: armcord
Version: 3.2.7
Release: 1%?dist
License: OSL-3.0
Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/ArmCord/ArmCord
Group: Applications/Internet
Source1: launch.sh
Requires: electron xdg-utils
BuildRequires: nodejs-npm git add-determinism
Conflicts: armcord-bin
BuildArch: noarch
Name: armcord
Version: 3.2.1
Release: 1%{?dist}
License: OSL-3.0
Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/ArmCord/ArmCord
Group: Applications/Internet
Source0: %url/archive/refs/tags/v%version.tar.gz
Source1: launch.sh
Requires: electron xdg-utils
BuildRequires: nodejs-npm
Conflicts: armcord-bin
BuildArch: noarch
%description
ArmCord is a custom client designed to enhance your Discord experience
while keeping everything lightweight.
%prep
rm -rf *
git clone %url .
git checkout v%version
%autosetup -n ArmCord-%version
cat <<EOF > armcord.desktop
[Desktop Entry]
@@ -37,7 +36,7 @@ EOF
%build
npx pnpm@7 install --no-frozen-lockfile
npx pnpm@7 install --frozen-lockfile --ignore-scripts
npm run packageQuick
+2 -9
View File
@@ -1,17 +1,10 @@
%define debug_package %nil
%global _build_id_links none
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: authy
Version: 2.5.0
Version: 2.4.0
Release: 1%{?dist}
Summary: Two factor authentication desktop application
License: Unlicense
URL: https://authy.com/
Source0: https://api.snapcraft.io/api/v1/snaps/download/H8ZpNgIoPyvmkgxOWw5MSzsXK1wRZiHn_23.snap
Source0: https://api.snapcraft.io/api/v1/snaps/download/H8ZpNgIoPyvmkgxOWw5MSzsXK1wRZiHn_20.snap
Requires: gtk3
Requires: nss
BuildRequires: squashfs-tools desktop-file-utils
@@ -1,58 +0,0 @@
Name: blackbox-terminal
Version: 0.14.0
Release: 1%{?dist}
Summary: A beautiful GTK 4 terminal
License: GPL-3.0
URL: https://gitlab.gnome.org/raggesilver/blackbox
BuildRequires: vala meson gettext
BuildRequires: pkgconfig(gtk4) >= 4.6.2
BuildRequires: pkgconfig(gio-2.0) >= 2.50
BuildRequires: libadwaita-devel >= 1.1
BuildRequires: pkgconfig(pqmarble) >= 2
BuildRequires: pkgconfig(vte-2.91-gtk4) >= 0.69.0
BuildRequires: pkgconfig(json-glib-1.0) >= 1.4.4
BuildRequires: pkgconfig(libxml-2.0) >= 2.9.12
BuildRequires: pkgconfig(librsvg-2.0) >= 2.54.0
BuildRequires: pkgconfig(libpcre2-8)
BuildRequires: pkgconfig(graphene-gobject-1.0)
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: desktop-file-utils libappstream-glib cmake
Source0: %url/-/archive/v%version/blackbox-v%version.tar.gz
%description
%{summary}.
%prep
%autosetup -p1 -n blackbox-v%version
%build
%meson
%meson_build
%install
%meson_install
%check
appstream-util validate-relax --nonet %buildroot/%_datadir/metainfo/com.raggesilver.BlackBox.metainfo.xml
%files
%doc README.md
%license COPYING
%_bindir/blackbox
%_bindir/terminal-toolbox
%_datadir/applications/com.raggesilver.BlackBox.desktop
%_datadir/metainfo/com.raggesilver.BlackBox.metainfo.xml
%_datadir/blackbox/
%_datadir/glib-2.0/schemas/com.raggesilver.BlackBox.gschema.xml
%_datadir/icons/hicolor/scalable/actions/com.raggesilver.BlackBox-fullscreen-symbolic.svg
%_datadir/icons/hicolor/scalable/actions/com.raggesilver.BlackBox-show-headerbar-symbolic.svg
%_datadir/icons/hicolor/scalable/actions/external-link-symbolic.svg
%_datadir/icons/hicolor/scalable/actions/settings-symbolic.svg
%_datadir/icons/hicolor/scalable/apps/com.raggesilver.BlackBox.svg
%_datadir/locale/*/LC_MESSAGES/blackbox.mo
%changelog
* Sun Oct 23 2022 windowsboy111 <windowsboy111@fyralabs.com>
- Initial package
@@ -1,13 +1,8 @@
%define debug_package %{nil}
%global _build_id_links none
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-canary-openasar
Version: 0.0.464
Release: 1%?dist
Version: 0.0.162
Release: 1%{?dist}
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
URL: https://github.com/GooseMod/OpenAsar
@@ -34,7 +29,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 +37,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
@@ -60,4 +52,4 @@ ln -s %_datadir/discord-canary-openasar/DiscordCanary %buildroot%_bindir/discord
- Bundle discord-canary
* Thu Oct 20 2022 Cappy Ishihara <cappy@cappuchino.xyz>
-
-
+5 -12
View File
@@ -1,13 +1,8 @@
%define debug_package %{nil}
%global _build_id_links none
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-canary
Version: 0.0.464
Release: 1%?dist
Version: 0.0.162
Release: 1%{?dist}
Summary: Free Voice and Text Chat for Gamers
URL: discord.com
Source0: https://dl-canary.discordapp.net/apps/linux/%{version}/discord-canary-%{version}.tar.gz
@@ -16,8 +11,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 +22,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
@@ -1,13 +1,8 @@
%define debug_package %{nil}
%global _build_id_links none
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-openasar
Version: 0.0.62
Release: 1%?dist
Version: 0.0.28
Release: 1%{?dist}
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
URL: https://github.com/GooseMod/OpenAsar
@@ -34,7 +29,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 +37,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
@@ -1,13 +1,8 @@
%define debug_package %{nil}
%global _build_id_links none
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-ptb-openasar
Version: 0.0.97
Release: 1%?dist
Version: 0.0.44
Release: 1%{?dist}
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
URL: https://github.com/GooseMod/OpenAsar
@@ -34,7 +29,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 +39,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
+5 -12
View File
@@ -1,13 +1,8 @@
%define debug_package %{nil}
%global _build_id_links none
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-ptb
Version: 0.0.97
Release: 1%?dist
Version: 0.0.44
Release: 1%{?dist}
Summary: Free Voice and Text Chat for Gamers.
URL: https://discord.com
Source0: https://dl-ptb.discordapp.net/apps/linux/%{version}/discord-ptb-%{version}.tar.gz
@@ -20,8 +15,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 +26,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
+5 -12
View File
@@ -1,13 +1,8 @@
%define debug_package %{nil}
%global _build_id_links none
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord
Version: 0.0.62
Release: 1%?dist
Version: 0.0.28
Release: 1%{?dist}
Summary: Free Voice and Text Chat for Gamers
URL: https://discord.com
Source0: https://dl.discordapp.net/apps/linux/%{version}/discord-%{version}.tar.gz
@@ -20,8 +15,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 +26,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
-8
View File
@@ -1,8 +0,0 @@
project pkg {
rpm {
spec = "envision.spec"
}
labels {
nightly = 1
}
}
-47
View File
@@ -1,47 +0,0 @@
%global commit 5eb42335e0ccbf3558b1d285348d7c02906c931d
%global commit_date 20240801
%global shortcommit %(c=%{commit}; echo ${c:0:7})
Name: envision
Version: %commit_date.%shortcommit
Release: 1%?dist
Summary: UI for building, configuring and running Monado, the open source OpenXR runtime
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: 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-engine
BuildRequires: openxr-devel
BuildRequires: libappstream-glib
BuildRequires: desktop-file-utils
BuildRequires: glib2-devel
Recommends: android-tools
%description
%summary.
%prep
%autosetup -n envision-%commit
%build
%meson
%meson_build
%install
%meson_install
%files
%doc README.md
%license LICENSE
%_bindir/envision
%_datadir/applications/org.gabmus.envision.desktop
%_datadir/envision/
%_iconsdir/hicolor/scalable/apps/org.gabmus.envision.svg
%_iconsdir/hicolor/symbolic/apps/org.gabmus.envision-symbolic.svg
%_metainfodir/org.gabmus.envision.appdata.xml
-5
View File
@@ -1,5 +0,0 @@
rpm.global("commit", gitlab_commit("gitlab.com", "46446166", "main"));
if rpm.changed() {
rpm.global("commit_date", date());
rpm.release();
}
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "feishin.spec"
}
}
-69
View File
@@ -1,69 +0,0 @@
%define debug_package %nil
%global _build_id_links none
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: feishin
Version: 0.7.3
Release: 1%?dist
Summary: A modern self-hosted music player
License: GPL-3.0
URL: https://github.com/jeffvli/feishin
Source0: %url/archive/refs/tags/v%version.tar.gz
Requires: fuse mpv
BuildRequires: nodejs-npm jq libxcrypt-compat
%description
%summary.
%prep
%autosetup
cat package.json | jq '.author += { "email": "jeffvictorli@gmail.com" }' | jq '.build.linux += { "maintainer": "mado@fyralabs.com", "vendor": "Fyra Labs Terra" }' > a
mv a package.json
cat package.json
cat<<EOF > feishin.desktop
[Desktop Entry]
Type=Application
Name=Feishin
Comment=Rewrite of Sonixd
Exec=/usr/bin/feishin
Icon=feishin
Terminal=false
Categories=Network;Audio;Music
Keywords=Music;Jellyfin;Audio;Stream;Sonixd
EOF
%build
npm install --legacy-peer-deps
npm run postinstall
npm run build
%ifarch x86_64
%define a linux
%elifarch aarch64
%define a arm64
%endif
npx electron-builder --linux dir --%a
%install
mkdir -p %buildroot%_datadir/{pixmaps,applications} %buildroot%_bindir
mv release/build/*-unpacked %buildroot%_datadir/feishin
install -Dm644 assets/icons/icon.png %buildroot%_datadir/pixmaps/feishin.png
ln -s %_datadir/feishin/feishin %buildroot%_bindir/feishin
install -Dm644 feishin.desktop %buildroot%_datadir/applications/
%files
%doc README.md CHANGELOG.md
%license LICENSE
%_bindir/feishin
%_datadir/feishin/
%_datadir/applications/feishin.desktop
%_datadir/pixmaps/feishin.png
%changelog
%autochangelog
-1
View File
@@ -1 +0,0 @@
rpm.version(gh("jeffvli/feishin"));
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "komikku.spec"
}
}
-109
View File
@@ -1,109 +0,0 @@
%global appname Komikku
%global uuid info.febvre.%{appname}
%global gtk4_version 4.14.4
%global libadwaita_version 1.5.1
%global pure_protobuf_version 2.0.0
Name: komikku
Version: 1.51.1
%forgemeta
Release: %autorelease
Summary: A manga reader for GNOME
BuildArch: noarch
License: GPL-3.0-or-later
URL: https://valos.gitlab.io/Komikku
Source0: https://codeberg.org/valos/%{appname}/archive/v%{version}.tar.gz#/%{name}-v%{version}.tar.gz
BuildRequires: desktop-file-utils
BuildRequires: intltool
BuildRequires: libappstream-glib
BuildRequires: meson >= 0.59.0
BuildRequires: python3-devel >= 3.8
BuildRequires: blueprint-compiler
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.35.9
BuildRequires: pkgconfig(gtk4) >= %{gtk4_version}
BuildRequires: pkgconfig(libadwaita-1) >= %{libadwaita_version}
Requires: hicolor-icon-theme
Requires: gtk4 >= %{gtk4_version}
Requires: libadwaita >= %{libadwaita_version}
Requires: libnotify
Requires: webkitgtk6.0
Requires: python3-beautifulsoup4
Requires: python3-brotli
Requires: python3-colorthief
Requires: python3-dateparser %dnl >= 1.1.4 | https://bugzilla.redhat.com/show_bug.cgi?id=2115204
Requires: python3-emoji
Requires: python3-gobject
Requires: python3-keyring >= 21.6.0
Requires: python3-lxml
Requires: python3-natsort
Requires: python3-file-magic
Requires: python3-piexif
Requires: python3-pillow
Requires: python3-pillow-heif
Requires: python3-pure-protobuf >= %{pure_protobuf_version}
Requires: python3-rarfile
Requires: python3-requests
Requires: python3-unidecode
%description
Komikku is a manga reader for GNOME. It focuses on providing a clean, intuitive
and adaptive interface.
Keys features
* Online reading from dozens of servers
* Offline reading of downloaded comics
* Categories to organize your library
* RTL, LTR, Vertical and Webtoon reading modes
* Several types of navigation:
* Keyboard arrow keys
* Right and left navigation layout via mouse click or tapping
(touchpad/touch screen)
* Mouse wheel
* 2-fingers swipe gesture (touchpad)
* Swipe gesture (touch screen)
* Automatic update of comics
* Automatic download of new chapters
* Reading history
* Light and dark themes
%prep
%autosetup -n %{name} -p1
%build
%meson
%meson_build
%install
%meson_install
%find_lang %{name}
%check
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
%files -f %{name}.lang
%license LICENSE
%doc README.md
%{_bindir}/%{name}
%{_datadir}/%{name}/
%{_datadir}/applications/*.desktop
%{_datadir}/glib-2.0/schemas/*.gschema.xml
%{_datadir}/icons/hicolor/scalable/*/*.svg
%{_datadir}/icons/hicolor/symbolic/*/*.svg
%{_metainfodir}/*.xml
%{python3_sitelib}/%{name}/
%changelog
* Thu Jul 11 2024 Trung Lê <8@tle.id.au> - 1.51.1-0
- Initial RPM package
-3
View File
@@ -1,3 +0,0 @@
let latest_tag = get("https://codeberg.org/api/v1/repos/valos/Komikku/tags").json_arr()[0].name;
let new_version = find("([\\.\\d]+)", latest_tag, 1);
rpm.version(new_version);
@@ -1,10 +1,10 @@
%global forgeurl https://gitlab.com/ubports/development/core/lomiri-system-settings
%global commit 0f9ce94e628a245cb3a7e97a7a169cb94e04c9ea
%global commit 42b4b88db8f6ce1ef1cf085e8fd8de6d4484f5d4
%forgemeta
Name: lomiri-system-settings
Version: 1.2.0
Release: 1%?dist
Version: 1.0.1
Release: %autorelease
Summary: The system settings application for Lomiri
License: GPLv3
URL: https://gitlab.com/ubports/development/core/lomiri-system-settings
@@ -20,7 +20,6 @@ BuildRequires: pkgconfig(geonames)
BuildRequires: pkgconfig(icu-i18n)
#BuildRequires: pkgconfig(libandroid-properties)
BuildRequires: pkgconfig(click-0.4)
BuildRequires: pkgconfig(deviceinfo)
BuildRequires: pkgconfig(gsettings-qt)
BuildRequires: pkgconfig(QtGui)
BuildRequires: pkgconfig(gnome-desktop-3.0)
-8
View File
@@ -1,8 +0,0 @@
project pkg {
rpm {
spec = "mpv-nightly.spec"
}
labels {
nightly = "1"
}
}
-230
View File
@@ -1,230 +0,0 @@
%global commit dcb4b491b2077be370cf5295ff4021d1e6182817
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20240801
%global ver 0.38.0
Name: mpv-nightly
Version: %ver^%commit_date.%shortcommit
Release: 1%?dist
License: GPL-2.0-or-later AND LGPL-2.1-or-later
Summary: Movie player playing most video formats and DVDs
URL: https://mpv.io/
Source0: https://github.com/mpv-player/mpv/archive/%commit/mpv-%commit.tar.gz
Conflicts: mpv
BuildRequires: desktop-file-utils
BuildRequires: gcc
BuildRequires: libappstream-glib
BuildRequires: libatomic
BuildRequires: meson
BuildRequires: python3-docutils
BuildRequires: perl(Encode)
BuildRequires: perl(Math::BigInt)
BuildRequires: perl(Math::BigRat)
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(caca)
BuildRequires: pkgconfig(dvdnav)
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(ffnvcodec)
BuildRequires: pkgconfig(gbm)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(lcms2)
BuildRequires: pkgconfig(libarchive) >= 3.4.0
BuildRequires: pkgconfig(libass)
BuildRequires: pkgconfig(libavcodec) >= 59.27.100
BuildRequires: pkgconfig(libavdevice) >= 58.13.100
BuildRequires: pkgconfig(libavfilter) >= 7.110.100
BuildRequires: pkgconfig(libavformat) >= 59.24.100
BuildRequires: pkgconfig(libavutil) >= 57.24.100
BuildRequires: pkgconfig(libbluray)
BuildRequires: pkgconfig(libcdio)
BuildRequires: pkgconfig(libcdio_paranoia)
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libjpeg)
BuildRequires: pkgconfig(libpipewire-0.3) >= 0.3.19
BuildRequires: pkgconfig(libplacebo) >= 6.338.0
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(libswresample) >= 3.9.100
BuildRequires: pkgconfig(libswscale) >= 5.9.100
BuildRequires: pkgconfig(libva)
BuildRequires: pkgconfig(lua-5.1)
BuildRequires: pkgconfig(mujs)
BuildRequires: pkgconfig(openal)
BuildRequires: pkgconfig(rubberband)
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(shaderc)
BuildRequires: pkgconfig(uchardet) >= 0.0.5
BuildRequires: pkgconfig(vapoursynth)
BuildRequires: pkgconfig(vdpau)
BuildRequires: pkgconfig(vulkan)
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-cursor)
BuildRequires: pkgconfig(wayland-egl)
BuildRequires: pkgconfig(wayland-protocols)
BuildRequires: pkgconfig(wayland-scanner)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xdamage)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(xinerama)
BuildRequires: pkgconfig(xkbcommon)
BuildRequires: pkgconfig(xpresent)
BuildRequires: pkgconfig(xrandr)
BuildRequires: pkgconfig(xscrnsaver)
BuildRequires: pkgconfig(xv)
BuildRequires: pkgconfig(zimg) >= 2.9
BuildRequires: pkgconfig(zlib)
Requires: hicolor-icon-theme
Provides: mplayer-backend
Recommends: (yt-dlp or youtube-dl)
Suggests: yt-dlp
%description
Mpv is a movie player based on MPlayer and mplayer2. It supports a wide variety
of video file formats, audio and video codecs, and subtitle types. Special
input URL types are available to read input from a variety of sources other
than disk files. Depending on platform, a variety of different video and audio
output methods are supported.
Mpv has an OpenGL, Vulkan, and D3D11 based video output that is capable of many
features loved by videophiles, such as video scaling with popular high quality
algorithms, color management, frame timing, interpolation, HDR, and more.
While mpv strives for minimalism and provides no real GUI, it has a small
controller on top of the video for basic control.
Mpv can leverage most hardware decoding APIs on all platforms. Hardware
decoding can be enabled at runtime on demand.
Powerful scripting capabilities can make the player do almost anything. There
is a large selection of user scripts on the wiki.
A straightforward C API was designed from the ground up to make mpv usable as
a library and facilitate easy integration into other applications.
%package libs
Summary: Dynamic library for Mpv frontends
%description libs
This package contains the dynamic library libmpv, which provides access to Mpv.
%package devel
Summary: Development package for libmpv
Provides: mpv-libs-devel = %{?epoch:%{epoch}:}%{version}-%{release}
Provides: mpv-nightly-libs-devel = %{?epoch:%{epoch}:}%{version}-%{release}
Obsoletes: mpv-libs-devel < %{?epoch:%{epoch}:}%{version}-%{release}
Obsoletes: mpv-nightly-libs-devel < %{?epoch:%{epoch}:}%{version}-%{release}
Requires: mpv-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: mpv-nightly-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
%description devel
This package contains development header files and libraries for Mpv.
%prep
%autosetup -p1 -n mpv-%commit
sed -e "s|/usr/local/etc|%{_sysconfdir}/mpv|" -i etc/mpv.conf
%build
%meson --auto-features=auto \
-Dalsa=enabled \
-Dbuild-date=false \
-Dcaca=enabled \
-Dcdda=enabled \
-Dcplayer=true \
-Dcplugins=enabled \
-Dcuda-hwaccel=enabled \
-Dcuda-interop=enabled \
-Ddmabuf-wayland=enabled \
-Ddrm=enabled \
-Ddvbin=enabled \
-Ddvdnav=enabled \
-Degl-drm=enabled \
-Degl-wayland=enabled \
-Degl-x11=enabled \
-Degl=enabled \
-Dgbm=enabled \
-Dgl-x11=enabled \
-Dgl=enabled \
-Dhtml-build=enabled \
-Diconv=enabled \
-Djack=enabled \
-Djavascript=enabled \
-Djpeg=enabled \
-Dlcms2=enabled \
-Dlibarchive=enabled \
-Dlibavdevice=enabled \
-Dlibbluray=enabled \
-Dlibmpv=true \
-Dlua=enabled \
-Dmanpage-build=enabled \
-Dopenal=enabled \
-Dopensles=disabled \
-Doss-audio=disabled \
-Dpipewire=enabled \
-Dplain-gl=enabled \
-Dpulse=enabled \
-Drubberband=enabled \
-Dsdl2-audio=enabled \
-Dsdl2-gamepad=enabled \
-Dsdl2-video=enabled \
-Dsdl2=enabled \
-Dsndio=disabled \
-Dspirv-cross=disabled \
-Duchardet=enabled \
-Dvaapi-drm=enabled \
-Dvaapi-wayland=enabled \
-Dvaapi-x11=enabled \
-Dvaapi=enabled \
-Dvapoursynth=enabled \
-Dvdpau-gl-x11=enabled \
-Dvdpau=enabled \
-Dvector=enabled \
-Dvulkan-interop=disabled \
-Dvulkan=enabled \
-Dwayland=enabled \
-Dwerror=false \
-Dx11=enabled \
-Dxv=enabled \
-Dzimg=enabled \
-Dzlib=enabled
%meson_build
%install
%meson_install
%check
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/mpv.metainfo.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/mpv.desktop
%files
%docdir %{_docdir}/mpv/
%license LICENSE.GPL LICENSE.LGPL Copyright
%{_docdir}/mpv/
%{_bindir}/mpv
%{_datadir}/applications/mpv.desktop
%dir %{_datadir}/bash-completion/
%dir %{_datadir}/bash-completion/completions/
%{_datadir}/bash-completion/completions/mpv
%{_datadir}/icons/hicolor/*/apps/mpv*.*
%dir %{_datadir}/zsh/
%dir %{_datadir}/zsh/site-functions/
%{_datadir}/zsh/site-functions/_mpv
%{_mandir}/man1/mpv.*
%{_metainfodir}/mpv.metainfo.xml
%dir %{_sysconfdir}/mpv/
%config(noreplace) %{_sysconfdir}/mpv/encoding-profiles.conf
%files libs
%license LICENSE.GPL LICENSE.LGPL Copyright
%{_libdir}/libmpv.so.2{,.*}
%files devel
%{_includedir}/mpv/
%{_libdir}/libmpv.so
%{_libdir}/pkgconfig/mpv.pc
%changelog
%autochangelog
-12
View File
@@ -1,12 +0,0 @@
if filters.contains("nightly") {
rpm.global("commit", gh_commit("mpv-player/mpv"));
if rpm.changed() {
let v = gh("mpv-player/mpv");
if v.starts_with("v") {
v.crop(1);
}
rpm.global("ver", v);
rpm.global("commit_date", date());
rpm.release();
}
}
-6
View File
@@ -1,6 +0,0 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "mugshot.spec"
}
}
-62
View File
@@ -1,62 +0,0 @@
%global app org.bluesabre.Mugshot
%global _description %{expand:
Mugshot is a lightweight user configuration utility for Linux designed for simplicity and ease of
use. Quickly update your personal profile and sync your updates across applications.}
Name: python-mugshot
Version: 0.4.3
Release: 1%?dist
Summary: User Management Utility for Linux
License: GPL-3.0
URL: https://github.com/bluesabre/mugshot
Source0: %url/archive/refs/tags/mugshot-%version.tar.gz
BuildArch: noarch
BuildRequires: python3-devel
BuildRequires: python3-pip
BuildRequires: python3-distutils-extra
BuildRequires: python3-wheel
BuildRequires: python3-setuptools
BuildRequires: glib2
BuildRequires: desktop-file-utils
BuildRequires: libappstream-glib
%description %_description
%package -n mugshot
Requires: util-linux-user
Requires: python3-cairo
Requires: python3-pexpect
Requires: python3-gobject
Summary: User Management Utility for Linux
%description -n mugshot %_description
%prep
%autosetup -n mugshot-mugshot-%version
%build
%pyproject_wheel
%install
%pyproject_install
%pyproject_save_files -L 'mugshot*'
install -Dm644 data/glib-2.0/schemas/%{lower:%app}.gschema.xml %buildroot%_datadir/glib-2.0/schemas/
%find_lang mugshot
%check
#pyproject_check_import
desktop-file-validate %buildroot%_datadir/applications/%app.desktop
appstream-util validate-relax --nonet %buildroot%_metainfodir/mugshot.appdata.xml
%files -n mugshot -f %{pyproject_files} -f mugshot.lang
%doc README.md NEWS
%license COPYING
%_bindir/mugshot
%_datadir/glib-2.0/schemas/%{lower:%app}.gschema.xml
%_datadir/applications/%app.desktop
%_datadir/mugshot/
%_metainfodir/mugshot.appdata.xml
%_mandir/man1/mugshot.1.gz
%_iconsdir/hicolor/*/apps/mugshot.svg
-3
View File
@@ -1,3 +0,0 @@
let v = gh("bluesabre/mugshot");
v.crop(8);
rpm.version(v);
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "ruffle-nightly.spec"
}
}
-67
View File
@@ -1,67 +0,0 @@
%global ver 2024-08-01
%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/logo.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();
}
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "rust-sccache.spec"
}
}
-492
View File
@@ -1,492 +0,0 @@
# Generated by rust2rpm 26
%bcond_with check
# aarch64 dist is not available
%ifarch aarch64
%bcond_with dist_server
%else
%bcond_without dist_server
%endif
# Don't mangle shebangs
%global __brp_mangle_shebangs %{nil}
%global crate sccache
Name: rust-sccache
Version: 0.8.1
Release: %autorelease
Summary: Ccache-like tool
License: Apache-2.0
URL: https://crates.io/crates/sccache
Source: %{crates_source}
# Automatically generated patch to strip dependencies and normalize metadata
Patch: sccache-fix-metadata-auto.diff
ExclusiveArch: %{rust_arches}
BuildRequires: cargo-rpm-macros >= 24
BuildRequires: anda-srpm-macros
BuildRequires: openssl-devel
BuildRequires: gcc
BuildRequires: perl
BuildRequires: rust-packaging
%global _description %{expand:
Sccache is a ccache-like tool. It is used as a compiler wrapper and
avoids compilation when possible. Sccache has the capability to utilize
caching in remote storage environments, including various cloud storage
options, or alternatively, in local storage.}
%description %{_description}
%package -n %{crate}
Summary: %{summary}
License: MIT
%description -n %{crate} %{_description}
%files -n %{crate}
%license LICENSE
%doc CODE_OF_CONDUCT.md
%doc README.md
%{_bindir}/sccache
%if %{with dist_server}
%{_bindir}/sccache-dist
%endif
%package devel
Summary: %{summary}
BuildArch: noarch
Provides: crate(sccache) = 0.7.4
Requires: cargo
Requires: rust >= 1.67.1
%description devel %{_description}
This package contains library source intended for building other packages which
use the "%{crate}" crate.
%files devel
%{crate_instdir}/
%package -n %{name}+default-devel
Summary: %{summary}
BuildArch: noarch
Provides: crate(sccache/default) = 0.7.4
Requires: cargo
Requires: crate(sccache) = 0.7.4
Requires: crate(sccache/all) = 0.7.4
%description -n %{name}+default-devel %{_description}
This package contains library source intended for building other packages which
use the "default" feature of the "%{crate}" crate.
%files -n %{name}+default-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+all-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+all-devel %{_description}
This package contains library source intended for building other packages which
use the "all" feature of the "%{crate}" crate.
%files -n %{name}+all-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+azure-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+azure-devel %{_description}
This package contains library source intended for building other packages which
use the "azure" feature of the "%{crate}" crate.
%files -n %{name}+azure-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+dist-client-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+dist-client-devel %{_description}
This package contains library source intended for building other packages which
use the "dist-client" feature of the "%{crate}" crate.
%files -n %{name}+dist-client-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+dist-server-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+dist-server-devel %{_description}
This package contains library source intended for building other packages which
use the "dist-server" feature of the "%{crate}" crate.
%files -n %{name}+dist-server-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+dist-tests-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+dist-tests-devel %{_description}
This package contains library source intended for building other packages which
use the "dist-tests" feature of the "%{crate}" crate.
%files -n %{name}+dist-tests-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+flate2-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+flate2-devel %{_description}
This package contains library source intended for building other packages which
use the "flate2" feature of the "%{crate}" crate.
%files -n %{name}+flate2-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+gcs-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+gcs-devel %{_description}
This package contains library source intended for building other packages which
use the "gcs" feature of the "%{crate}" crate.
%files -n %{name}+gcs-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+gha-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+gha-devel %{_description}
This package contains library source intended for building other packages which
use the "gha" feature of the "%{crate}" crate.
%files -n %{name}+gha-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+http-body-util-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+http-body-util-devel %{_description}
This package contains library source intended for building other packages which
use the "http-body-util" feature of the "%{crate}" crate.
%files -n %{name}+http-body-util-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+hyper-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+hyper-devel %{_description}
This package contains library source intended for building other packages which
use the "hyper" feature of the "%{crate}" crate.
%files -n %{name}+hyper-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+hyper-util-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+hyper-util-devel %{_description}
This package contains library source intended for building other packages which
use the "hyper-util" feature of the "%{crate}" crate.
%files -n %{name}+hyper-util-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+jwt-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+jwt-devel %{_description}
This package contains library source intended for building other packages which
use the "jwt" feature of the "%{crate}" crate.
%files -n %{name}+jwt-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+libmount-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+libmount-devel %{_description}
This package contains library source intended for building other packages which
use the "libmount" feature of the "%{crate}" crate.
%files -n %{name}+libmount-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+memcached-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+memcached-devel %{_description}
This package contains library source intended for building other packages which
use the "memcached" feature of the "%{crate}" crate.
%files -n %{name}+memcached-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+native-zlib-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+native-zlib-devel %{_description}
This package contains library source intended for building other packages which
use the "native-zlib" feature of the "%{crate}" crate.
%files -n %{name}+native-zlib-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+nix-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+nix-devel %{_description}
This package contains library source intended for building other packages which
use the "nix" feature of the "%{crate}" crate.
%files -n %{name}+nix-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+opendal-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+opendal-devel %{_description}
This package contains library source intended for building other packages which
use the "opendal" feature of the "%{crate}" crate.
%files -n %{name}+opendal-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+openssl-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+openssl-devel %{_description}
This package contains library source intended for building other packages which
use the "openssl" feature of the "%{crate}" crate.
%files -n %{name}+openssl-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+oss-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+oss-devel %{_description}
This package contains library source intended for building other packages which
use the "oss" feature of the "%{crate}" crate.
%files -n %{name}+oss-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+redis-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+redis-devel %{_description}
This package contains library source intended for building other packages which
use the "redis" feature of the "%{crate}" crate.
%files -n %{name}+redis-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+reqsign-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+reqsign-devel %{_description}
This package contains library source intended for building other packages which
use the "reqsign" feature of the "%{crate}" crate.
%files -n %{name}+reqsign-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+reqwest-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+reqwest-devel %{_description}
This package contains library source intended for building other packages which
use the "reqwest" feature of the "%{crate}" crate.
%files -n %{name}+reqwest-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+rouille-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+rouille-devel %{_description}
This package contains library source intended for building other packages which
use the "rouille" feature of the "%{crate}" crate.
%files -n %{name}+rouille-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+s3-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+s3-devel %{_description}
This package contains library source intended for building other packages which
use the "s3" feature of the "%{crate}" crate.
%files -n %{name}+s3-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+sha2-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+sha2-devel %{_description}
This package contains library source intended for building other packages which
use the "sha2" feature of the "%{crate}" crate.
%files -n %{name}+sha2-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+syslog-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+syslog-devel %{_description}
This package contains library source intended for building other packages which
use the "syslog" feature of the "%{crate}" crate.
%files -n %{name}+syslog-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+unstable-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+unstable-devel %{_description}
This package contains library source intended for building other packages which
use the "unstable" feature of the "%{crate}" crate.
%files -n %{name}+unstable-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+url-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+url-devel %{_description}
This package contains library source intended for building other packages which
use the "url" feature of the "%{crate}" crate.
%files -n %{name}+url-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+vendored-openssl-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+vendored-openssl-devel %{_description}
This package contains library source intended for building other packages which
use the "vendored-openssl" feature of the "%{crate}" crate.
%files -n %{name}+vendored-openssl-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+version-compare-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+version-compare-devel %{_description}
This package contains library source intended for building other packages which
use the "version-compare" feature of the "%{crate}" crate.
%files -n %{name}+version-compare-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+webdav-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+webdav-devel %{_description}
This package contains library source intended for building other packages which
use the "webdav" feature of the "%{crate}" crate.
%files -n %{name}+webdav-devel
%ghost %{crate_instdir}/Cargo.toml
%prep
%autosetup -n %{crate}-%{version} -p1
%cargo_prep_online
%build
%if %{with dist_server}
%cargo_build -f dist-server
%else
%cargo_build
%endif
%install
%if %{with dist_server}
%cargo_install -f dist-server
%else
%cargo_install
%endif
%if %{with check}
%check
%if %{with dist_server}
%cargo_test -f dist-server
%else
%cargo_test
%endif
%endif
%changelog
* Mon Dec 18 2023 Cappy Ishihara <cappy@cappuchino.xyz> - 0.7.4-1
- Initial package
@@ -1,16 +0,0 @@
--- sccache-0.8.1/Cargo.toml 1970-01-01T00:00:01+00:00
+++ sccache-0.8.1/Cargo.toml 2024-07-10T16:31:31.705674+00:00
@@ -403,13 +403,3 @@
[target."cfg(unix)".dependencies.daemonize]
version = "0.5"
-[target."cfg(windows)".dependencies.winapi]
-version = "0.3"
-features = [
- "fileapi",
- "handleapi",
- "stringapiset",
- "winnls",
- "processenv",
- "std",
-]
-1
View File
@@ -1 +0,0 @@
rpm.version(crates("sccache"));
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "tuxclocker.spec"
}
}
-42
View File
@@ -1,42 +0,0 @@
Name: tuxclocker
Version: 1.5.1
Release: 1%?dist
Summary: Qt overclocking tool for GNU/Linux
License: GPL-3.0
URL: https://github.com/Lurkki14/tuxclocker
# boost qt5-qtbase qt5-qtcharts
Requires: hicolor-icon-theme
BuildRequires: git-core meson hwdata qt5-qttools gettext anda-srpm-macros
BuildRequires: boost-devel qt5-qtbase-devel qt5-qtcharts-devel libdrm-devel libXNVCtrl-devel openssl-devel
Recommends: xorg-x11-drv-nvidia libdrm libXNVCtrl hwdata
%description
TuxClocker is a hardware controlling and monitoring program.
TuxClocker consists of a DBus daemon and a Qt GUI that uses the daemon.
%prep
git clone --recursive %url .
git checkout %version
%build
%meson
%meson_build
%install
%meson_install
%files
%doc README.md
%license LICENSE
%_bindir/tuxclocker-qt
%_bindir/tuxclockerd
%_libdir/libtuxclocker.so
%_libdir/tuxclocker/
%_datadir/applications/tuxclocker.desktop
%_datadir/dbus-1/system-services/org.tuxclocker.service
%_datadir/dbus-1/system.d/org.tuxclocker.conf
%_datadir/locale/*/LC_MESSAGES/tuxclocker.mo
%_iconsdir/hicolor/scalable/apps/tuxclocker-logo.svg
%changelog
%autochangelog
-1
View File
@@ -1 +0,0 @@
rpm.version(gh("Lurkki14/tuxclocker"));
@@ -1,13 +1,12 @@
%global forgeurl https://gitlab.com/vala-panel-project/vala-panel-appmenu
%global commit 7631683adb35cd4fae387abf7ff1552aab4d2249
%global commit 76442be6195385193cb5931d0004122310d40c95
%forgemeta
Name: vala-panel-appmenu
Version: 24.05
Release: 1%?dist
Version: 0.7.6
Release: 2%?dist
License: LGPL-3.0-or-later
Summary: Application Menu plugin for vala-panel
Group: System/GUI/Other
URL: %{forgeurl}
Source: %{forgesource}
@@ -21,7 +20,6 @@ BuildRequires: vala
BuildRequires: systemd-rpm-macros
BuildRequires: pkgconfig(libxfce4panel-2.0)
BuildRequires: pkgconfig(gtk+-2.0)
BuildRequires: java-devel
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libxfconf-0)
BuildRequires: pkgconfig(budgie-1.0)
@@ -83,13 +81,6 @@ Summary: Gtk3MenuShell D-Bus exporter
%description -n vala-panel-appmenu-gtk-module
GTK (2, 3) module that exports GtkMenuShells over D-Bus.
%package -n vala-panel-appmenu-jayatana-module
Summary: Vala appmenu support for Java Swing applications
%description -n vala-panel-appmenu-jayatana-module
Vala appmenu support for Java Swing applications.
%prep
%forgeautosetup
@@ -117,11 +108,6 @@ Vala appmenu support for Java Swing applications.
%{_datadir}/dbus-1/services/com.canonical.AppMenu.Registrar.service
%{_datadir}/glib-2.0/schemas/org.valapanel.appmenu.gschema.xml
%{_datadir}/vala-panel/applets/org.valapanel.appmenu.plugin
%{_datadir}/vala/vapi/appmenu-glib-translator.*
%{_datadir}/gir-1.0/AppmenuGLibTranslator-*.gir
%{_includedir}/appmenu-glib-translator/importer.h
%{_libdir}/girepository-1.0/AppmenuGLibTranslator-*.typelib
%{_libdir}/libappmenu-glib-translator.*
%files -n vala-panel-appmenu-gtk-module
%{_userunitdir}/appmenu-gtk-module.service
@@ -131,11 +117,6 @@ Vala appmenu support for Java Swing applications.
%{_libdir}/gtk-3.0/modules/libappmenu-gtk-module.so
%{_datadir}/glib-2.0/schemas/org.appmenu.gtk-module.gschema.xml
%files -n vala-panel-appmenu-jayatana-module
%{_datadir}/java/*.jar
%dir %{_libdir}/jayatana
%{_libdir}/jayatana/*.so
%files -n xfce4-vala-panel-appmenu-plugin
%{_libdir}/xfce4/panel/plugins/libappmenu-xfce.so
%{_datadir}/xfce4/panel/plugins/appmenu.desktop
@@ -1,12 +1,13 @@
Name: vala-panel
Version: 24.05
%global forgeurl https://gitlab.com/vala-panel-project/vala-panel
%global commit ead4e7a36b0e4b0a2ac43c5d9ca17eb753461afe
%forgemeta
Release: 1%?dist
Name: vala-panel
Version: 0.5.0
Release: 2%?dist
License: LGPL-3.0-or-later
Summary: This package provides Application Menu plugin for vala-panel
Group: System/GUI/Other
URL: %{forgeurl}
Source: %{forgesource}
@@ -37,7 +38,7 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
%forgeautosetup
%build
%meson -Dwnck=enabled -Dplatforms='wayland,x11'
%meson -Dwnck=enabled -Dplatforms='layer-shell,x11'
%meson_build
%install
@@ -72,7 +73,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/org.valapanel.applica
%{_datadir}/vala-panel/applets/*.plugin
%dir %{_datadir}/vala-panel/images
%{_datadir}/vala-panel/images/background.png
%{_libdir}/girepository-1.0/ValaPanel-*.typelib
%files devel
%doc README.md
@@ -82,7 +82,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/org.valapanel.applica
%{_libdir}/libvalapanel.so
%{_libdir}/pkgconfig/vala-panel.pc
%{_datadir}/vala/vapi/vala-panel.*
%{_datadir}/gir-1.0/ValaPanel-*.gir
%changelog
%autochangelog
-1
View File
@@ -1 +0,0 @@
*.tar.gz
-5
View File
@@ -1,5 +0,0 @@
project "pkg" {
rpm {
spec = "vencord-desktop.spec"
}
}
-1
View File
@@ -1 +0,0 @@
rpm.version(gh_tag("Vencord/Vesktop"));
@@ -1,74 +0,0 @@
%define debug_package %nil
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/vesktop/.*\\.so
Name: vencord-desktop
Provides: VencordDesktop = %{version}-%{release}
Version: 1.5.3
Release: 1%?dist
License: GPL-3.0
Summary: Vesktop is a cross platform desktop app aiming to give you a snappier Discord experience with Vencord pre-installed
URL: https://github.com/Vencord/Vesktop
Group: Applications/Internet
#Source1: launch.sh
Source0: https://github.com/Vencord/Vesktop/archive/refs/tags/v%{version}.tar.gz
Requires: xdg-utils
BuildRequires: nodejs-npm git
# Conflicts: vesktop-bin
%description
vesktop is a custom client designed to enhance your Discord experience
while keeping everything lightweight.
%prep
git init
git remote add origin %url || :
git reset --hard
git fetch
git checkout v%version
cat <<EOF > vesktop.desktop
[Desktop Entry]
Name=Vesktop
Comment=%summary
GenericName=Internet Messenger
Type=Application
Exec=/usr/bin/vencorddesktop
Icon=vesktop
Categories=Network;InstantMessaging;
StartupWMClass=VencordDesktop
Keywords=discord;vesktop;vencord;shelter;armcord;electron;
EOF
%build
npx pnpm@8 install --no-frozen-lockfile
npx pnpm@8 package:dir
%install
mkdir -p %buildroot/usr/share/vesktop
cp -r dist/*-unpacked/. %buildroot/usr/share/vesktop/.
install -Dm755 dist/*-unpacked/vencorddesktop %buildroot/usr/bin/vencorddesktop
ln -sf /usr/share/vesktop/vencorddesktop %buildroot/usr/bin/vencorddesktop
install -Dm644 vesktop.desktop %buildroot/usr/share/applications/vesktop.desktop
install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/vesktop.png
%files
%doc README.md
%license LICENSE
/usr/bin/vencorddesktop
/usr/share/applications/vesktop.desktop
/usr/share/pixmaps/vesktop.png
/usr/share/vesktop/*
%changelog
* Tue Nov 07 2023 Cappy Ishihara <cappy@cappuchino.xyz> - 0.4.3-1
- Initial package
-1
View File
@@ -1 +0,0 @@
rpm.version(gh("VOICEVOX/voicevox"));
-54
View File
@@ -1,54 +0,0 @@
%define debug_package %nil
%global _build_id_links none
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: voicevox
Version: 0.19.2
Release: 4%?dist
Summary: Free Japanese text-to-speech editor
License: LGPL-3.0
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
BuildRequires: p7zip-plugins
ExclusiveArch: x86_64
%description
VOICEVOX is a free Japanese text-to-speech software with medium output quality.
%package doc
Summary: Documentation files for voicevox (Japanese)
%description doc
%summary.
%prep
cat<<EOF > voicevox.sh
#!/bin/sh
/usr/share/voicevox/VOICEVOX.AppImage
EOF
7z x %SOURCE0
chmod a+x VOICEVOX.AppImage
./VOICEVOX.AppImage --appimage-extract '*.desktop'
./VOICEVOX.AppImage --appimage-extract 'usr/share/icons/**'
sed -i "s|Exec=.*|Exec=/usr/share/voicevox/VOICEVOX.AppImage|" squashfs-root/voicevox.desktop
%build
%install
install -Dm755 VOICEVOX.AppImage %buildroot%_datadir/voicevox/VOICEVOX.AppImage
install -Dm755 voicevox.sh %buildroot%_bindir/voicevox
install -Dm644 squashfs-root%_iconsdir/hicolor/0x0/apps/voicevox.png %buildroot%_iconsdir/hicolor/256x256/apps/voicevox.png
install -Dm644 squashfs-root/voicevox.desktop %buildroot%_datadir/applications/voicevox.desktop
%files
%_bindir/voicevox
%_datadir/applications/voicevox.desktop
%_datadir/voicevox/VOICEVOX.AppImage
%_iconsdir/hicolor/256x256/apps/voicevox.png
@@ -0,0 +1,22 @@
From 6b8c81d1d4ac0ac562b69e7f8164c8a92dafe13a Mon Sep 17 00:00:00 2001
From: windowsboy111 <wboy111@outlook.com>
Date: Mon, 19 Jun 2023 10:33:20 +0800
Subject: [PATCH] feat: add repository entry in package.json
---
package.json | 1 +
1 file changed, 1 insertion(+)
diff --git a/package.json b/package.json
index 622756a..b3d3dfa 100644
--- a/package.json
+++ b/package.json
@@ -1,4 +1,5 @@
{
+ "repository": "github:VOICEVOX/voicevox",
"name": "voicevox",
"version": "999.999.999",
"author": "Hiroshiba Kazuyuki",
--
2.40.1
@@ -1,5 +1,4 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "voicevox.spec"
}
+9
View File
@@ -0,0 +1,9 @@
// let v = gh("VOICEVOX/voicevox");
// rpm.version(v);
// let engines = get(`https://raw.githubusercontent.com/VOICEVOX/voicevox/${v}/package.json`).json().engines;
// rpm.define("nodev", find(">=([\\d.]+)", engines.node, 1));
// rpm.define("nodev", find(">=([\\d.]+)", engines.npm, 1));
let v = "0.14.7";
let engines = get(`https://raw.githubusercontent.com/VOICEVOX/voicevox/${v}/package.json`).json().engines;
print(find(">=([\\d.]+)", engines.node, 1));
print(find(">=([\\d.]+)", engines.npm, 1));
+60
View File
@@ -0,0 +1,60 @@
%global nodev 16.17.0
%global npmv 8.11.0
%define debug_package %nil
Name: voicevox
Version: 0.14.7
Release: 1%?dist
Summary: Free Japanese text-to-speech editor
License: LGPL-3.0
URL: https://voicevox.hiroshiba.jp
Source0: https://github.com/VOICEVOX/voicevox/archive/refs/tags/%version.tar.gz
# requires specific node and npm version
%ifarch x86_64
%global a x64
%elifarch aarch64
%global a arm64
%endif
Source1: https://nodejs.org/download/release/v%nodev/node-v%nodev-linux-%a.tar.xz
Patch0: 0001-feat-add-repository-entry-in-package.json.patch
%description
VOICEVOX is a free Japanese text-to-speech software with medium output quality.
%package doc
Summary: Documentation files for voicevox (Japanese)
%description doc
%summary.
%prep
%autosetup -p1
tar xf %SOURCE1
PATH="$PATH:$PWD/node-v%nodev-linux-%a/bin/"
npx npm@%npmv i
%build
PATH="$PATH:$PWD/node-v%nodev-linux-%a/bin/"
npx browserslist@latest --update-db
PATH="$PATH:$PWD/node-v%nodev-linux-%a/bin/"
npm run electron:build
%install
rm dist_electron/linux-unpacked/README.txt # dummy
mkdir -p %buildroot%_datadir/%name %buildroot%_bindir %buildroot%_docdir/%name/res
mv dist_electron/linux-unpacked/* %buildroot%_datadir/%name/
ln -s %_datadir/%name/%name %buildroot%_bindir/%name
install -Dm644 docs/*.md %buildroot%_docdir/%name/
install -Dm644 docs/res/* %buildroot%_docdir/%name/res/
%files
%doc README.md
%license LICENSE LGPL_LICENSE
%_bindir/%name
%_datadir/%name/
%files doc
%doc %_docdir/%name/
%changelog
%autochangelog
@@ -1,7 +1,7 @@
%define debug_package %nil
Name: blahaj
Version: 2.2.0
Version: 2.1.0
Release: 1%{?dist}
Summary: Gay sharks at your local terminal - lolcat-like CLI tool
License: BSD-2-Clause
@@ -1,8 +1,8 @@
%define debug_package %nil
Name: crystal
Version: 1.13.1
Release: 1%?dist
Version: 1.9.2
Release: 1%{?dist}
Summary: The Crystal Programming Language
License: Apache-2.0
URL: https://crystal-lang.org/
+2
View File
@@ -0,0 +1,2 @@
let html = get("https://crystal-lang.org/");
rpm.version(find("Latest release <.+>(.+)</a>", html, 1))
@@ -1,8 +1,8 @@
%define debug_package %{nil}
Name: dart
Version: 3.4.4
Release: 1%?dist
Version: 3.0.6
Release: 1%{?dist}
Summary: The Dart Language
License: BSD-3-Clause
URL: https://dart.dev/
@@ -1,6 +1,6 @@
Name: budgie-extras
Version: 1.8.0
Release: 1%{?dist}
Version: 1.6.0
Release: 2%{?dist}
License: GPL-3.0
Summary: Additional Budgie Desktop enhancements for user experience
@@ -51,6 +51,7 @@ Requires: budgie-applet-recentlyused
Requires: budgie-applet-rotation-lock
Requires: budgie-applet-showtime
Requires: budgie-applet-takeabreak
Requires: budgie-applet-trash
Requires: budgie-applet-visualspace
Requires: budgie-applet-wallstreet
Requires: budgie-applet-window-shuffler
@@ -207,6 +208,14 @@ upside down, dim the screen, lock screen or show a countdown message on break
time. The applet can be accessed quickly from the panel to temporarily switch
it off.
%package -n budgie-applet-trash
Requires: budgie-extras-common
Summary: Applet allows access to trash capabilities for the Budgie Desktop
%description -n budgie-applet-trash
The trash applet allows the user access the desktop trash capabilities
from the panel including the ability to delete and restore files stored
in the trash folder.
%package -n budgie-applet-visualspace
Requires: budgie-extras-common
Summary: Shows the current workspace(s), as bullet(s)
@@ -384,6 +393,9 @@ rm -f %{buildroot}%{_bindir}/quickchar
%{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.takeabreak.gschema.xml
%{_datadir}/pixmaps/takeabreak*.svg
%files -n budgie-applet-trash
%{_libdir}/budgie-desktop/plugins/budgie-trash
%files -n budgie-applet-visualspace
%config %{_sysconfdir}/xdg/autostart/visualspace-autostart.desktop
%{_libdir}/budgie-desktop/plugins/budgie-visualspace
+2 -2
View File
@@ -1,4 +1,4 @@
%define _ubuntu_rel 22.10.20220822-0ubuntu12
%define _ubuntu_rel 22.10.20220822-0ubuntu3
%global _hardened_build 0
Name: compiz9
@@ -77,7 +77,7 @@ Compiz Config Manager helps configure Compiz Window Manager, version 0.9 series
Compiz 9 branch, which is newer then what Fedora packages and required by Unity 7.6 and higher.
%prep
%autosetup -p1 -n compiz-%version+%(echo %_ubuntu_rel | sed 's@-0ubuntu.@@')
%autosetup -p1 -n compiz
%build
# The driver blacklist hack is obselete
@@ -1,99 +0,0 @@
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)");
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "elementary-appcenter.spec"
}
}
@@ -1,10 +0,0 @@
# 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*")
@@ -1,315 +0,0 @@
%global appname io.elementary.appcenter
Name: elementary-appcenter
Summary: Software Center from elementary
Version: 8.0.0
Release: 1%?dist
License: GPL-3.0
Provides: appcenter = %{version}-%{release}
Obsoletes: appcenter < 7.2.1-2
URL: https://github.com/elementary/appcenter
Source0: %url/archive/%{version}/appcenter-%{version}.tar.gz
Patch0: pr2099.patch
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: vala
BuildRequires: appstream-vala
BuildRequires: pkgconfig(appstream) >= 0.10.0
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(flatpak)
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(granite) >= 6.0.0
BuildRequires: pkgconfig(gtk+-3.0) >= 3.10
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(libhandy-1)
BuildRequires: pkgconfig(libsoup-2.4)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(packagekit-glib2)
BuildRequires: pkgconfig(polkit-gobject-1)
Requires: PackageKit
Requires: hicolor-icon-theme
%description
AppCenter is a native Gtk+ app store built on AppStream and Packagekit.
%package gnome-shell-search-provider
Summary: Software Center from elementary (gnome-shell search provider)
Provides: appcenter-gnome-shell-search-provider = %{version}-%{release}
Obsoletes: appcenter-gnome-shell-search-provider < 7.2.1-2
BuildArch: noarch
Requires: %{name} = %{version}-%{release}
Requires: gnome-shell
Supplements: (%{name} and gnome-shell)
%description gnome-shell-search-provider
AppCenter is a native Gtk+ app store built on AppStream and Packagekit.
This package contains the gnome-shell search provider.
%prep
%autosetup -p1 -n appcenter-%version
%build
%meson -Dpayments=false -Dcurated=false -Dhide_upstream_distro_apps=false
%meson_build
%install
%meson_install
%find_lang %{appname}
# remove empty hidden apps file
rm -r %{buildroot}/%{_sysconfdir}/%{appname}/appcenter.hiddenapps
# create autostart entry symlink
mkdir -p %{buildroot}/%{_sysconfdir}/xdg/autostart/
ln -s %{_datadir}/applications/%{appname}-daemon.desktop \
%{buildroot}/%{_sysconfdir}/xdg/autostart/%{appname}-daemon.desktop
%check
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}*.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%files -f %{appname}.lang
%doc README.md
%license COPYING
%dir %{_sysconfdir}/%{appname}
%config(noreplace) %{_sysconfdir}/xdg/autostart/%{appname}-daemon.desktop
%{_bindir}/%{appname}
%{_datadir}/applications/%{appname}*.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}{,-symbolic}.svg
%{_datadir}/metainfo/%{appname}.metainfo.xml
%{_datadir}/polkit-1/actions/%{appname}.policy
%files gnome-shell-search-provider
%{_datadir}/gnome-shell/search-providers/%{appname}.search-provider.ini
%changelog
* Tue Jun 07 2022 Fabio Valentini <decathorpe@gmail.com> - 3.10.0-1
- Update to version 3.10.0.
* Tue Dec 14 2021 Fabio Valentini <decathorpe@gmail.com> - 3.9.1-1
- Update to version 3.9.1.
* Wed Nov 24 2021 Fabio Valentini <decathorpe@gmail.com> - 3.9.0-1
- Update to version 3.9.0.
* Sat Oct 30 2021 Fabio Valentini <decathorpe@gmail.com> - 3.8.2-1
- Update to version 3.8.2.
* Wed Oct 27 2021 Fabio Valentini <decathorpe@gmail.com> - 3.8.1-1
- Update to version 3.8.1.
* Tue Sep 28 2021 Fabio Valentini <decathorpe@gmail.com> - 3.8.0-1
- Update to version 3.8.0.
* Fri Sep 17 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.1-3
- Mark flatpak sources in the UI.
* Fri Sep 17 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.1-2
- Hard-code Fedora instead of ubuntu repository names.
* Tue Aug 31 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.1-1
- Update to version 3.7.1.
* Fri Aug 27 2021 Fabio Valentini <decathorpe@gmail.com> - 3.7.0-1
- Update to version 3.7.0.
* Tue Aug 17 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.3-1
- Update to version 3.6.3.
* Wed Aug 11 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.2-1
- Update to version 3.6.2.
* Thu Aug 05 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.1-1
- Update to version 3.6.1.
* Fri Jul 16 2021 Fabio Valentini <decathorpe@gmail.com> - 3.6.0-1
- Update to version 3.6.0.
* Fri Oct 09 2020 Fabio Valentini <decathorpe@gmail.com> - 3.5.1-1
- Update to version 3.5.1.
* Wed Oct 07 2020 Fabio Valentini <decathorpe@gmail.com> - 3.5.0-1
- Update to version 3.5.0.
* Fri Aug 07 2020 Fabio Valentini <decathorpe@gmail.com> - 3.4.2-1
- Update to version 3.4.2.
* Thu Jul 02 2020 Fabio Valentini <decathorpe@gmail.com> - 3.4.1-1
- Update to version 3.4.1.
* Thu May 28 2020 Fabio Valentini <decathorpe@gmail.com> - 3.4.0-1
- Update to version 3.4.0.
* Thu Apr 30 2020 Fabio Valentini <decathorpe@gmail.com> - 3.3.0-1
- Update to version 3.3.0.
* Thu Apr 09 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.4-1
- Update to version 3.2.4.
* Thu Apr 02 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.3-1
- Update to version 3.2.3.
* Mon Mar 23 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.2-1
- Update to version 3.2.2.
* Fri Feb 28 2020 Fabio Valentini <decathorpe@gmail.com> - 3.2.1-1
- Update to version 3.2.1.
* Fri Feb 15 2019 Fabio Valentini <decathorpe@gmail.com> - 3.1.1-1
- Update to version 3.1.1.
* Wed Jan 02 2019 Fabio Valentini <decathorpe@gmail.com> - 3.1.0-1
- Update to version 3.1.0.
- Remove empty blacklist file.
* Fri Nov 30 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0.1-2
- Drop elementaryOS blacklist in favor of the version shipped with appcenter.
* Thu Oct 25 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0.1-1
- Update to version 3.0.1.
* Tue Oct 16 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0-2
- Add missing autostart entry symlink for the daemon.
* Tue Oct 16 2018 Fabio Valentini <decathorpe@gmail.com> - 3.0-1
- Update to version 3.0.
- Add gnome-shell search provider sub-package.
- Explicitly disable payment system and curated applications.
- Update blacklist file to current version from elementaryOS.
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.9-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Jun 13 2018 Fabio Valentini <decathorpe@gmail.com> - 0.2.9-2
- Rebuild for granite5 soname bump.
* Thu Mar 08 2018 Fabio Valentini <decathorpe@gmail.com> - 0.2.9-1
- Update to version 0.2.9.
- Add patch to fix build with the newer vala and PackageKit on f28+.
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Fri Jan 26 2018 Fabio Valentini <decathorpe@gmail.com> - 0.2.8-1
- Update to version 0.2.8.
* Tue Nov 07 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.7-1
- Update to version 0.2.7.
* Fri Nov 03 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.6-2
- Rebuild for granite soname bump.
* Mon Sep 18 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.6-1
- Update to version 0.2.6.
* Sat Aug 05 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.5-1
- Update to version 0.2.5.
- Include fedora-specific blacklist adapted from elementaryOS.
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Tue Jul 04 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.4-1
- Update to version 0.2.4.
* Thu Jun 01 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.3-1
- Update to version 0.2.3.
* Mon May 22 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.2-1
- Update to version 0.2.2.
* Sat May 20 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2.1-1
- Update to version 0.2.1.
* Wed May 17 2017 Fabio Valentini <decathorpe@gmail.com> - 0.2-1
- Update to version 0.2.
* Thu Mar 16 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.4-1
- Update to version 0.1.4.
- Depend on generic icon again, since it _should_ work.
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.1.3-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Jan 27 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-7
- Add patch to rename generic icon to something branded.
* Wed Jan 25 2017 Fabio Valentini <decathorpe@gmail.com>
- Remove explicit BR: /usr/bin/pkgconfig.
* Mon Jan 23 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-6
- Explicitly depend on /usr/bin/pkg-config.
* Mon Jan 23 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-5
- Add missing scriptlets.
* Sat Jan 21 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-4
- Include icon to fix appdata metadata generation.
* Tue Jan 10 2017 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-3
- Clean up spec file.
* Sat Dec 24 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-2
- Enable libunity support.
* Mon Dec 05 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.3-1
- Update to version 0.1.3.
* Sun Nov 20 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.2-2
- Build out of tree.
* Sat Oct 29 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.2-1
- Update to version 0.1.2.
* Fri Oct 07 2016 Neal Gompa <ngompa13@gmail.com> - 0.1.1-4
- Add patch to support AppStream 0.10.0 in F25 (LP#1626398)
* Thu Sep 29 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.1-3
- Mass rebuild.
* Wed Sep 28 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.1-2
- Spec file cleanups.
* Tue Sep 27 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1.1-1
- Update to version 0.1.1.
* Sat Sep 17 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1-2
- Require PackageKit.
* Thu Aug 18 2016 Fabio Valentini <decathorpe@gmail.com> - 0.1-1
- Update to version 0.1.
@@ -1,311 +0,0 @@
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',
@@ -1 +0,0 @@
rpm.version(gh("elementary/appcenter"));

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