mirror of
https://github.com/terrapkg/packages.git
synced 2026-06-17 09:00:39 +00:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| dd124b0b3e | |||
| ec5f2b54db | |||
| 19f3c5a588 |
@@ -5,5 +5,6 @@ RUN useradd -m vscode
|
||||
RUN groupadd mock
|
||||
RUN usermod -aG mock vscode
|
||||
RUN echo vscode ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/vscode
|
||||
RUN curl -Lo /etc/yum.repos.d/terra.repo https://raw.githubusercontent.com/terrapkg/subatomic-repos/main/terra.repo
|
||||
RUN dnf -y install git mock createrepo_c anda terra-mock-configs
|
||||
RUN dnf -y install git 'dnf-command(config-manager)' mock createrepo_c
|
||||
RUN dnf config-manager --add-repo='https://raw.githubusercontent.com/terrapkg/subatomic-repos/main/terra.repo'
|
||||
RUN dnf -y install anda terra-mock-configs
|
||||
|
||||
@@ -44,35 +44,22 @@ jobs:
|
||||
fail-fast: false
|
||||
runs-on: ${{ matrix.pkg.arch == 'aarch64' && 'ARM64' || matrix.pkg.labels['large'] && 'x86-64-lg' || 'ubuntu-latest' }}
|
||||
container:
|
||||
image: ghcr.io/terrapkg/builder:f${{ matrix.version }}
|
||||
image: ghcr.io/terrapkg/builder:f${{ matrix.version}}
|
||||
options: --cap-add=SYS_ADMIN --privileged
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up git repository
|
||||
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||
|
||||
- name: CI Setup Script
|
||||
- name: Include custom build template instead of package default
|
||||
run: |
|
||||
dir=$(dirname ${{ matrix.pkg.pkg }})
|
||||
if [ -f $dir/ci_setup.rhai ]; then
|
||||
anda run $dir/ci_setup.rhai --labels script_path=$dir/ci_setup.rhai
|
||||
fi
|
||||
|
||||
- name: Install Build Dependencies
|
||||
run: |
|
||||
dir=$(dirname ${{ matrix.pkg.pkg }})
|
||||
dnf5 builddep -y ${dir}/*.spec
|
||||
cp -v anda/terra/mock-configs/terra.tpl /etc/mock/templates/terra.tpl
|
||||
|
||||
- name: Build with Andaman
|
||||
run: anda build ${{ matrix.pkg.pkg }} -rrpmbuild
|
||||
|
||||
- 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 terra-${{ matrix.version }}-i386
|
||||
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c anda/terra/mock-configs/terra-${{ matrix.version }}-${{ matrix.pkg.arch }}.cfg
|
||||
|
||||
- name: Generating artifact name
|
||||
id: art
|
||||
@@ -95,7 +82,7 @@ jobs:
|
||||
subatomic-cli upload --prune \
|
||||
--server https://subatomic.fyralabs.com \
|
||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||
terra${{ matrix.version }}${{ matrix.pkg.labels['extra'] && '-extras' }} anda-build/rpm/rpms/*
|
||||
terra${{ matrix.version }} anda-build/rpm/rpms/*
|
||||
|
||||
- name: Upload source packages to subatomic
|
||||
if: github.event_name == 'push'
|
||||
@@ -103,11 +90,11 @@ jobs:
|
||||
subatomic-cli upload --prune \
|
||||
--server https://subatomic.fyralabs.com \
|
||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||
terra${{ matrix.version }}${{ matrix.pkg.labels['extra'] && '-extras' }}-source anda-build/rpm/srpm/*
|
||||
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
|
||||
|
||||
- name: Notify Madoguchi (Success)
|
||||
if: success() && github.event_name == 'push'
|
||||
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}}
|
||||
|
||||
@@ -16,9 +16,7 @@ jobs:
|
||||
options: --cap-add=SYS_ADMIN --privileged
|
||||
steps:
|
||||
- name: Install repositories
|
||||
run: |
|
||||
dnf5 install -y --setopt=install_weak_deps=False curl wget git-core openssl-devel cargo podman fuse-overlayfs
|
||||
dnf5 builddep -y anda/terra/{mock-configs,srpm-macros}/*.spec anda/tools/buildsys/{anda,subatomic}/*.spec
|
||||
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
|
||||
@@ -32,20 +30,20 @@ jobs:
|
||||
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 -rrpmbuild anda/terra/mock-configs/pkg
|
||||
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
|
||||
|
||||
- name: Build anda-srpm-macros
|
||||
run: anda build -rrpmbuild anda/terra/srpm-macros/pkg
|
||||
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/terra/srpm-macros/pkg
|
||||
|
||||
- name: Build Subatomic
|
||||
run: anda build -rrpmbuild anda/tools/buildsys/subatomic/pkg
|
||||
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/tools/buildsys/subatomic/pkg
|
||||
- name: Install Subatomic
|
||||
run: dnf5 install -y ./anda-build/rpm/rpms/subatomic-*.rpm
|
||||
|
||||
- name: Build Andaman
|
||||
run: anda build -rrpmbuild anda/tools/buildsys/anda/pkg
|
||||
run: anda build -c terra-${{ matrix.version }}-${{ matrix.arch }} anda/tools/buildsys/anda/pkg
|
||||
|
||||
- name: Upload packages to subatomic
|
||||
run: |
|
||||
|
||||
+25
-25
@@ -14,6 +14,8 @@ on:
|
||||
required: false
|
||||
default: all
|
||||
type: string
|
||||
|
||||
|
||||
|
||||
jobs:
|
||||
parse:
|
||||
@@ -26,18 +28,18 @@ jobs:
|
||||
- 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
|
||||
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
|
||||
|
||||
build:
|
||||
needs: parse
|
||||
@@ -56,19 +58,18 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up git repository
|
||||
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||
|
||||
- name: CI Setup Script
|
||||
run: |
|
||||
dir=${{ matrix.pkg }}
|
||||
if [ -f $dir/ci_setup.rhai ]; then
|
||||
anda run $dir/ci_setup.rhai --labels script_path=$dir/ci_setup.rhai
|
||||
fi
|
||||
- name: Cache buildroot
|
||||
id: br-cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: /var/cache
|
||||
key: ${{ runner.os }}-br-${{ matrix.version }}-${{ matrix.arch }}-${{ matrix.pkg }}
|
||||
|
||||
- name: Build with Andaman
|
||||
run: anda build -rrpmbuild anda/${{ matrix.pkg }}pkg
|
||||
run: anda build anda/${{ matrix.pkg }}pkg --package rpm -c anda/terra/mock-configs/terra-${{ matrix.version }}-${{ matrix.arch }}.cfg
|
||||
|
||||
- name: Generating artifact name
|
||||
id: art
|
||||
@@ -76,7 +77,6 @@ jobs:
|
||||
NAME=${{ matrix.pkg }}-${{ matrix.arch }}-${{ matrix.version }}
|
||||
x=${NAME//\//@}
|
||||
echo "name=$x" >> $GITHUB_OUTPUT
|
||||
echo "labels=$(anda run andax/get_proj_label.rhai -l project=anda/${{ matrix.pkg }}anda.hcl)" >> $GITHUB_OUTPUT
|
||||
|
||||
- uses: actions/upload-artifact@v4
|
||||
with:
|
||||
@@ -91,18 +91,18 @@ jobs:
|
||||
subatomic-cli upload --prune \
|
||||
--server https://subatomic.fyralabs.com \
|
||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||
terra${{ matrix.version }}${{ fromJson(steps.art.outputs.labels)['extra'] && '-extras' }} anda-build/rpm/rpms/*
|
||||
terra${{ matrix.version }} anda-build/rpm/rpms/*
|
||||
|
||||
- name: Upload source packages to subatomic
|
||||
run: |
|
||||
subatomic-cli upload --prune \
|
||||
--server https://subatomic.fyralabs.com \
|
||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||
terra${{ matrix.version }}${{ fromJson(steps.art.outputs.labels)['extra'] && '-extras' }}-source anda-build/rpm/srpm/*
|
||||
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
|
||||
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
|
||||
run: ./.github/workflows/mg.sh false ${{matrix.pkg}} ${{matrix.version}} ${{matrix.arch}} ${{github.run_id}} ${{secrets.MADOGUCHI_JWT}}
|
||||
|
||||
@@ -22,24 +22,18 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up git repository
|
||||
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||
|
||||
- name: CI Setup Script
|
||||
run: |
|
||||
dir=$(dirname ${{ matrix.pkg.pkg }})
|
||||
if [ -f $dir/ci_setup.rhai ]; then
|
||||
anda run $dir/ci_setup.rhai --labels script_path=$dir/ci_setup.rhai
|
||||
fi
|
||||
|
||||
- name: Install Build Dependencies
|
||||
run: |
|
||||
dir=$(dirname ${{ matrix.pkg.pkg }})
|
||||
dnf5 builddep -y ${dir}/*.spec
|
||||
- name: Cache buildroot
|
||||
id: br-cache
|
||||
uses: actions/cache@v4
|
||||
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 }} -rrpmbuild
|
||||
run: anda build ${{ matrix.pkg.pkg }} --package rpm -c anda/terra/mock-configs/terra-${{ matrix.version }}-${{ matrix.pkg.arch }}.cfg
|
||||
|
||||
- name: Generating artifact name
|
||||
id: art
|
||||
@@ -61,18 +55,19 @@ jobs:
|
||||
subatomic-cli upload --prune \
|
||||
--server https://subatomic.fyralabs.com \
|
||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||
terra${{ matrix.version }}${{ matrix.pkg.labels['extra'] && '-extras' }} anda-build/rpm/rpms/*
|
||||
terra${{ matrix.version }} anda-build/rpm/rpms/*
|
||||
|
||||
- name: Upload source packages to subatomic
|
||||
if: github.event_name == 'push'
|
||||
run: |
|
||||
subatomic-cli upload --prune \
|
||||
--server https://subatomic.fyralabs.com \
|
||||
--token ${{ secrets.SUBATOMIC_TOKEN }} \
|
||||
terra${{ matrix.version }}${{ matrix.pkg.labels['extra'] && '-extras' }}-source anda-build/rpm/srpm/*
|
||||
terra${{ matrix.version }}-source anda-build/rpm/srpm/*
|
||||
|
||||
- name: Notify Madoguchi (Success)
|
||||
if: success()
|
||||
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()
|
||||
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}}
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
name: Lint
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- frawhide
|
||||
pull_request:
|
||||
branches:
|
||||
- frawhide
|
||||
merge_group:
|
||||
branches:
|
||||
- frawhide
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/terrapkg/builder:frawhide
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
- name: Lint spec files
|
||||
run: rpmlint $(find anda -type f -name "*.spec" -type f)
|
||||
@@ -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
|
||||
|
||||
@@ -1,54 +0,0 @@
|
||||
name: Update per branch
|
||||
on:
|
||||
schedule:
|
||||
- cron: "*/30 * * * *"
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
autoupdate:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
branch:
|
||||
- frawhide
|
||||
- f40
|
||||
- f41
|
||||
- el10
|
||||
container:
|
||||
image: ghcr.io/terrapkg/builder:frawhide
|
||||
options: --cap-add=SYS_ADMIN --privileged
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: ${{ matrix.branch }}
|
||||
fetch-depth: 0
|
||||
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
|
||||
|
||||
- name: Install SSH signing key & Set up git repository
|
||||
run: |
|
||||
mkdir -p ${{ runner.temp }}
|
||||
echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key
|
||||
chmod 0700 ${{ runner.temp }}/signing_key
|
||||
git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||
|
||||
- name: Run Update
|
||||
run: |
|
||||
nbranch="${{ matrix.branch }}"
|
||||
[ "$nbranch" = 'frawhide' ] && nbranch='f42'
|
||||
anda update --filters updbranch=1 --labels branch=${{ matrix.branch }},nbranch=$nbranch
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
RUST_BACKTRACE: full
|
||||
|
||||
- name: Save
|
||||
run: |
|
||||
if [[ `git status --porcelain` ]]; then
|
||||
git config user.name "Raboneko"
|
||||
git config user.email "raboneko@fyralabs.com"
|
||||
git config gpg.format "ssh"
|
||||
git config user.signingkey "${{ runner.temp }}/signing_key"
|
||||
msg="bump(branch): $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
|
||||
git commit -S -a -m "$msg"
|
||||
git push -u origin --all
|
||||
fi
|
||||
@@ -4,9 +4,8 @@ on:
|
||||
push:
|
||||
branches:
|
||||
- frawhide
|
||||
- f41
|
||||
- f40
|
||||
- el10
|
||||
- f39
|
||||
paths:
|
||||
- comps.xml
|
||||
workflow_dispatch:
|
||||
|
||||
@@ -25,10 +25,9 @@ jobs:
|
||||
git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||
|
||||
- name: Run Nightly Update
|
||||
run: anda update --filters nightly=1
|
||||
run: anda update -vv --filters nightly=1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
RUST_BACKTRACE: full
|
||||
|
||||
- name: Save
|
||||
run: |
|
||||
@@ -39,15 +38,15 @@ jobs:
|
||||
git config user.signingkey "${{ runner.temp }}/signing_key"
|
||||
msg="bump(nightly): $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
|
||||
git commit -S -a -m "$msg"
|
||||
git format-patch HEAD^
|
||||
copy_over () {
|
||||
git format-patch HEAD^
|
||||
git checkout $1
|
||||
git apply *.patch || true
|
||||
git add anda
|
||||
rm *.patch
|
||||
git add *
|
||||
git commit -S -a -m "$msg"
|
||||
}
|
||||
copy_over f39 || true
|
||||
copy_over f40 || true
|
||||
copy_over f41 || true
|
||||
copy_over el10 || true
|
||||
git push -u origin --all
|
||||
fi
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
name: Weekly Update
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 0 * * 0"
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
autoupdate:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/terrapkg/builder:frawhide
|
||||
options: --cap-add=SYS_ADMIN --privileged
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
|
||||
|
||||
- name: Install SSH signing key & Set up git repository
|
||||
run: |
|
||||
mkdir -p ${{ runner.temp }}
|
||||
echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key
|
||||
chmod 0700 ${{ runner.temp }}/signing_key
|
||||
git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||
|
||||
- name: Run Weekly Update
|
||||
run: anda update --filters weekly=1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
RUST_BACKTRACE: full
|
||||
|
||||
- name: Save
|
||||
run: |
|
||||
if [[ `git status --porcelain` ]]; then
|
||||
git config user.name "Raboneko"
|
||||
git config user.email "raboneko@fyralabs.com"
|
||||
git config gpg.format "ssh"
|
||||
git config user.signingkey "${{ runner.temp }}/signing_key"
|
||||
msg="bump(weekly): $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
|
||||
git commit -S -a -m "$msg"
|
||||
git format-patch HEAD^
|
||||
copy_over () {
|
||||
git checkout $1
|
||||
git apply *.patch || true
|
||||
git add anda
|
||||
git commit -S -a -m "$msg"
|
||||
}
|
||||
copy_over f40 || true
|
||||
copy_over f41 || true
|
||||
copy_over el10 || true
|
||||
git push -u origin --all
|
||||
fi
|
||||
@@ -25,7 +25,7 @@ jobs:
|
||||
git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
||||
|
||||
- name: Run Update
|
||||
run: anda update --excludes nightly=1 --excludes weekly=1 --excludes updbranch=1
|
||||
run: anda update -vv
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.AUTOUPDATE_GH_TOKEN }}
|
||||
RUST_BACKTRACE: full
|
||||
@@ -39,15 +39,15 @@ jobs:
|
||||
git config user.signingkey "${{ runner.temp }}/signing_key"
|
||||
msg="bump: $(git status | grep modified | sed -r 's@.+/([^/]+)/[^/]+\n?@\1 @g' | tr -d '\n')"
|
||||
git commit -S -a -m "$msg"
|
||||
git format-patch HEAD^
|
||||
copy_over () {
|
||||
git format-patch HEAD^
|
||||
git checkout $1
|
||||
git apply *.patch || true
|
||||
git add anda
|
||||
rm *.patch
|
||||
git add *
|
||||
git commit -S -a -m "$msg"
|
||||
}
|
||||
copy_over f39 || true
|
||||
copy_over f40 || true
|
||||
copy_over f41 || true
|
||||
copy_over el10 || true
|
||||
git push -u origin --all
|
||||
fi
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
anda-build/
|
||||
**/*.tar*
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
https://fyralabs.com/funding.json
|
||||
+6
-4
@@ -1,7 +1,9 @@
|
||||
# Contributing
|
||||
|
||||
First of all, thanks for being interested in contributing to Terra! If you have any questions about contributing, please [join our chats](https://wiki.ultramarine-linux.org/en/community/community/).
|
||||
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).
|
||||
|
||||
- [Contribution Guide](https://developer.fyralabs.com/terra/contributing)
|
||||
- [FAQ](https://developer.fyralabs.com/terra/faq)
|
||||
- [Policy](https://developer.fyralabs.com/terra/policy)
|
||||
## Documentations
|
||||
|
||||
* [Contribution Guide](https://developer.fyralabs.com/terra/contributing)
|
||||
* [FAQ](https://developer.fyralabs.com/terra/faq)
|
||||
* [Policy](https://developer.fyralabs.com/terra/policy)
|
||||
|
||||
@@ -1,37 +1,22 @@
|
||||
# Terra Sources
|
||||
|
||||
[](https://repology.org/repository/terra_39)
|
||||
[](https://repology.org/repository/terra_40)
|
||||
[](https://repology.org/repository/terra_41)
|
||||
[](https://repology.org/repository/terra_rawhide)
|
||||
|
||||
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.
|
||||
|
||||
See the introduction at [our website](https://terra.fyralabs.com).
|
||||
|
||||
This monorepo contains the package manifests for all packages in Terra.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
sudo dnf install --nogpgcheck --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' terra-release
|
||||
```
|
||||
|
||||
If you are using immutable/atomic editions of Fedora, run the following commands instead:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://github.com/terrapkg/subatomic-repos/raw/main/terra.repo | pkexec tee /etc/yum.repos.d/terra.repo
|
||||
sudo rpm-ostree install terra-release
|
||||
sudo dnf install --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' --setopt='terra.gpgkey=https://repos.fyralabs.com/terra$releasever/key.asc' terra-release
|
||||
```
|
||||
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/).
|
||||
Our documentation can be found on our [Devdocs](https://developer.fyralabs.com/terra/). Alternatively, the GitHub Wiki contains older versions of the documentations.
|
||||
|
||||
## Questions?
|
||||
|
||||
Feel free to reach out by [joining our community](https://wiki.ultramarine-linux.org/en/community/community/). We're always happy to help!
|
||||
|
||||
- [Contribution Guide](https://developer.fyralabs.com/terra/contributing)
|
||||
- [FAQ](https://developer.fyralabs.com/terra/faq)
|
||||
- [Policy](https://developer.fyralabs.com/terra/policy)
|
||||
Feel free to reach out on [Discord](https://discord.gg/5fdPuxTg5Q). We're always happy to help!
|
||||
|
||||
@@ -1,26 +1,18 @@
|
||||
%global xurl https://files.pythonhosted.org/packages/ef/fa/6c86371d0e3b71129d2a79e63fc3fdc17733c9ebbf77345c62caad8c9fca/anki-24.11-cp39-abi3-manylinux_2_28_x86_64.whl
|
||||
%global aurl https://files.pythonhosted.org/packages/58/6e/9f2d4853a83e57cea48ccae3bc2d887bf7c0550042185e156bab23f524bf/anki-24.11-cp39-abi3-manylinux_2_31_aarch64.whl
|
||||
%global qurl https://files.pythonhosted.org/packages/40/3c/b70ef91f1dad8248332971c0cbb2922277512789cadc33cb16233e360a56/aqt-24.11-py3-none-any.whl
|
||||
|
||||
Name: anki-bin
|
||||
Version: 24.11
|
||||
Version: 24.06.3
|
||||
Release: 1%?dist
|
||||
Summary: Flashcard program for using space repetition learning (Installed with wheel)
|
||||
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
|
||||
URL: https://apps.ankiweb.net/
|
||||
BuildRequires: python3-pip rpm_macro(fdupes) cargo
|
||||
BuildRequires: python3-pip rpm_macro(fdupes)
|
||||
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
|
||||
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
|
||||
|
||||
@@ -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"));
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
Name: anki-qt5
|
||||
Version: 24.11
|
||||
Version: 24.06.3
|
||||
Release: 1%?dist
|
||||
Summary: Flashcard program for using space repetition learning
|
||||
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
|
||||
@@ -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 1 -p1
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
Name: anki
|
||||
Version: 24.11
|
||||
Version: 24.06.3
|
||||
Release: 1%?dist
|
||||
Summary: Flashcard program for using space repetition learning
|
||||
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
|
||||
@@ -30,7 +30,6 @@ git checkout %{version}
|
||||
%build
|
||||
export RELEASE=1
|
||||
export PYTHONPATH=%_libdir/python3/dist-packages
|
||||
cargo update
|
||||
mold -run ./tools/build
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "armcord-bin.spec"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
%define debug_package %nil
|
||||
%global _build_id_links none
|
||||
|
||||
%ifarch x86_64
|
||||
%global src ArmCord-%version
|
||||
%elifarch aarch64
|
||||
%global src ArmCord-%version-arm64
|
||||
%elifarch armv7l
|
||||
%global src ArmCord-%version-armv7l
|
||||
%endif
|
||||
|
||||
# Exclude private libraries
|
||||
%global __requires_exclude libffmpeg.so
|
||||
%global __provides_exclude_from %{_datadir}/armcord/.*\\.so
|
||||
|
||||
Name: armcord-bin
|
||||
Version: 3.2.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
|
||||
Source0: %url/releases/download/v%version/%src.tar.gz
|
||||
Source1: armcord.png
|
||||
Source2: https://raw.githubusercontent.com/ArmCord/ArmCord/v%version/README.md
|
||||
Requires: electron xdg-utils
|
||||
ExclusiveArch: x86_64 aarch64 armv7l
|
||||
Conflicts: armcord
|
||||
BuildRequires: add-determinism
|
||||
|
||||
%description
|
||||
ArmCord is a custom client designed to enhance your Discord experience
|
||||
while keeping everything lightweight.
|
||||
|
||||
%prep
|
||||
%autosetup -n %src
|
||||
|
||||
cat <<EOF > .armcord.desktop
|
||||
[Desktop Entry]
|
||||
Name=ArmCord
|
||||
Comment=%summary
|
||||
GenericName=Internet Messenger
|
||||
Type=Application
|
||||
Exec=%_bindir/armcord
|
||||
Icon=armcord
|
||||
Categories=Network;InstantMessaging;
|
||||
StartupWMClass=armcord
|
||||
Keywords=discord;armcord;vencord;shelter;electron;
|
||||
EOF
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
mkdir -p %buildroot%_bindir %buildroot%_datadir/applications %buildroot%_datadir/pixmaps %buildroot%_datadir/armcord %buildroot%_docdir/%name
|
||||
cp -a * %buildroot%_datadir/armcord/
|
||||
ln -s %_datadir/armcord/armcord %buildroot%_bindir/armcord
|
||||
chmod +x -R %buildroot%_datadir/armcord/*
|
||||
chmod 755 %buildroot%_datadir/armcord/armcord
|
||||
install -Dm644 .armcord.desktop %buildroot%_datadir/applications/ArmCord.desktop
|
||||
install -Dm644 %SOURCE1 %buildroot%_datadir/pixmaps/armcord.png
|
||||
install -Dm644 %SOURCE2 %buildroot%_docdir/%name/
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%_datadir/armcord
|
||||
%_bindir/armcord
|
||||
%_datadir/applications/ArmCord.desktop
|
||||
%_datadir/pixmaps/armcord.png
|
||||
|
||||
%changelog
|
||||
* Sat Jun 17 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.2.0-2
|
||||
- Remove libnotify dependency.
|
||||
- Fix desktop entry.
|
||||
- Set as noarch package because there are not binary files.
|
||||
- Use /usr/share/ instead of /opt/
|
||||
|
||||
* Sat May 6 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
|
||||
- Initial package
|
||||
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 81 KiB |
@@ -0,0 +1 @@
|
||||
rpm.version(gh("ArmCord/ArmCord"));
|
||||
@@ -1,6 +1,6 @@
|
||||
project pkg {
|
||||
arches = ["x86_64"]
|
||||
rpm {
|
||||
spec = "legcord.spec"
|
||||
spec = "armcord.spec"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
%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
|
||||
|
||||
%description
|
||||
ArmCord is a custom client designed to enhance your Discord experience
|
||||
while keeping everything lightweight.
|
||||
|
||||
%prep
|
||||
rm -rf *
|
||||
git clone %url .
|
||||
git checkout v%version
|
||||
|
||||
cat <<EOF > armcord.desktop
|
||||
[Desktop Entry]
|
||||
Name=ArmCord
|
||||
Comment=%summary
|
||||
GenericName=Internet Messenger
|
||||
Type=Application
|
||||
Exec=/usr/bin/armcord
|
||||
Icon=armcord
|
||||
Categories=Network;InstantMessaging;
|
||||
StartupWMClass=armcord
|
||||
Keywords=discord;armcord;vencord;shelter;electron;
|
||||
EOF
|
||||
|
||||
|
||||
%build
|
||||
npx pnpm@7 install --no-frozen-lockfile
|
||||
npm run packageQuick
|
||||
|
||||
|
||||
%install
|
||||
install -Dm644 dist/*-unpacked/resources/app.asar %buildroot/usr/share/armcord/app.asar
|
||||
|
||||
install -Dm755 %SOURCE1 %buildroot/usr/bin/armcord
|
||||
install -Dm644 armcord.desktop %buildroot/usr/share/applications/ArmCord.desktop
|
||||
install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/armcord.png
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license LICENSE
|
||||
/usr/bin/armcord
|
||||
/usr/share/applications/ArmCord.desktop
|
||||
/usr/share/pixmaps/armcord.png
|
||||
/usr/share/armcord/app.asar
|
||||
|
||||
%changelog
|
||||
* Sat Jun 17 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.2.0-2
|
||||
- Remove libnotify dependency.
|
||||
- Fix desktop entry.
|
||||
- Set as noarch package because there are not binary files.
|
||||
|
||||
* Sat May 6 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
|
||||
- Initial package
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
rpm.version(gh("ArmCord/ArmCord"));
|
||||
@@ -1,8 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "coolercontrol.spec"
|
||||
}
|
||||
labels {
|
||||
large = 1
|
||||
}
|
||||
}
|
||||
@@ -1,159 +0,0 @@
|
||||
%bcond_without mold
|
||||
%global _desc %{expand:
|
||||
CoolerControl is a feature-rich cooling device control application for Linux. It has a system daemon
|
||||
for background device management, as well as a GUI to expertly customize your settings.
|
||||
}
|
||||
%global rdnn org.coolercontrol.CoolerControl
|
||||
# Don't mangle shebangs
|
||||
%global __brp_mangle_shebangs %{nil}
|
||||
|
||||
Name: coolercontrol
|
||||
Version: 1.4.5
|
||||
Release: 1%?dist
|
||||
Summary: Cooling device control for Linux
|
||||
License: GPL-3.0-or-later
|
||||
URL: https://gitlab.com/coolercontrol/coolercontrol
|
||||
Source0: %url/-/archive/%version/coolercontrol-%version.tar.gz
|
||||
Packager: madonuko <mado@fyralabs.com>
|
||||
Provides: coolercontrol-ui
|
||||
Provides: coolercontrol-gui
|
||||
Requires: hicolor-icon-theme
|
||||
Requires: webkit2gtk4.1
|
||||
Requires: libappindicator-gtk3
|
||||
Requires: coolercontrold
|
||||
BuildRequires: git-core make nodejs-npm libdrm-devel curl wget file mold
|
||||
BuildRequires: systemd-rpm-macros anda-srpm-macros cargo >= 1.75.0 cargo-rpm-macros
|
||||
BuildRequires: autoconf automake binutils bison flex gcc gcc-c++ gdb libtool pkgconf strace
|
||||
BuildRequires: pkgconfig(webkit2gtk-4.1) pkgconfig(openssl) pkgconfig(librsvg-2.0)
|
||||
BuildRequires: libappindicator-gtk3-devel
|
||||
BuildRequires: python3-devel python3-wheel python3-liquidctl python3-setproctitle python3-fastapi python3-uvicorn python3-pip
|
||||
BuildRequires: libappstream-glib
|
||||
BuildRequires: desktop-file-utils
|
||||
%description %_desc
|
||||
|
||||
%package liqctld
|
||||
Summary: CoolerControl daemon for interacting with liquidctl devices on a system level
|
||||
Requires: coolercontrold
|
||||
%description liqctld %_desc
|
||||
coolercontrol-liqctld is a CoolerControl daemon for interacting with liquidctl devices on a system level, and is
|
||||
installed as the coolercontrol-liqctld application. Its main purpose is to wrap the underlying
|
||||
liquidctl library providing an API interface that the main coolercontrol daemon interacts with.
|
||||
It also enables parallel device communication and access to specific device properties.
|
||||
|
||||
%package -n coolercontrold
|
||||
Summary: Monitor and control your cooling devices.
|
||||
Requires: coolercontrol-liqctld
|
||||
%description -n coolercontrold %_desc
|
||||
coolercontrold is the main daemon containing the core logic for interfacing with devices, and installed as
|
||||
"coolercontrold". It is meant to run in the background as a system daemon. It handles all device
|
||||
communication and data management, additionally connecting to the liqctld daemon for liquidctl
|
||||
supported devices. It has an API that services client programs like the coolercontrol-gui.
|
||||
|
||||
|
||||
%prep
|
||||
%autosetup
|
||||
|
||||
pushd coolercontrold
|
||||
%cargo_prep_online &
|
||||
popd
|
||||
|
||||
pushd coolercontrol-ui
|
||||
npm ci --prefer-offline &
|
||||
pushd src-tauri
|
||||
%cargo_prep_online &
|
||||
popd
|
||||
popd
|
||||
|
||||
wait
|
||||
|
||||
|
||||
%build
|
||||
pushd coolercontrold
|
||||
%{cargo_license_online} > LICENSE.dependencies &
|
||||
%cargo_build -- &
|
||||
popd
|
||||
|
||||
pushd coolercontrol-liqctld
|
||||
%pyproject_wheel
|
||||
popd
|
||||
|
||||
pushd coolercontrol-ui
|
||||
npm run build &
|
||||
pushd src-tauri
|
||||
%{cargo_license_online} > LICENSE.dependencies &
|
||||
wait
|
||||
%cargo_build -f custom-protocol
|
||||
popd
|
||||
popd
|
||||
|
||||
|
||||
%install
|
||||
pushd coolercontrol-liqctld
|
||||
#define _pyproject_wheeldir .
|
||||
%pyproject_install
|
||||
%pyproject_save_files coolercontrol_liqctld
|
||||
popd
|
||||
|
||||
pushd coolercontrold
|
||||
install -Dpm755 target/rpm/coolercontrold %buildroot%_bindir/coolercontrold
|
||||
install -Dpm644 LICENSE.dependencies %buildroot%_datadir/licenses/coolercontrold/LICENSE.dependencies
|
||||
popd
|
||||
|
||||
pushd coolercontrol-ui/src-tauri
|
||||
install -Dpm755 target/rpm/coolercontrol %buildroot%_bindir/coolercontrol
|
||||
install -Dpm644 LICENSE.dependencies %buildroot%_datadir/licenses/%name/LICENSE.dependencies
|
||||
popd
|
||||
|
||||
install -Dpm644 packaging/systemd/coolercontrol-liqctld.service %buildroot%_unitdir/coolercontrol-liqctld.service
|
||||
desktop-file-install --dir=%buildroot%_datadir/applications packaging/metadata/%rdnn.desktop
|
||||
install -Dpm644 packaging/metadata/%rdnn.svg %buildroot%_iconsdir/hicolor/scalable/apps/%rdnn.svg
|
||||
install -Dpm644 packaging/metadata/%rdnn.png %buildroot%_iconsdir/hicolor/256x256/apps/%rdnn.svg
|
||||
for f in packaging/systemd/*.service; do
|
||||
install -Dpm644 $f %buildroot%_unitdir/$(basename $f)
|
||||
done
|
||||
install -Dpm644 packaging/metadata/%rdnn.metainfo.xml %buildroot%_metainfodir/%rdnn.metainfo.xml
|
||||
|
||||
|
||||
%check
|
||||
appstream-util validate-relax --nonet %buildroot%_metainfodir/%rdnn.metainfo.xml
|
||||
%pyproject_check_import
|
||||
|
||||
|
||||
%post -n coolercontrold
|
||||
%systemd_post coolercontrold.service
|
||||
|
||||
%preun -n coolercontrold
|
||||
%systemd_preun coolercontrold.service
|
||||
|
||||
%postun -n coolercontrold
|
||||
%systemd_postun_with_restart coolercontrold.service
|
||||
|
||||
# coolercontrold.service automatically uses the liqctld service, so there are
|
||||
# no scriptlets for liqctld.
|
||||
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license LICENSE
|
||||
%license LICENSE.dependencies
|
||||
%_bindir/coolercontrol
|
||||
%_datadir/applications/%rdnn.desktop
|
||||
%_datadir/metainfo/%rdnn.metainfo.xml
|
||||
%_iconsdir/hicolor/*/apps/%rdnn.svg
|
||||
|
||||
%files -n coolercontrold
|
||||
%doc coolercontrold/README.md
|
||||
%license LICENSE
|
||||
%license LICENSE.dependencies
|
||||
%_bindir/coolercontrold
|
||||
%_unitdir/coolercontrold.service
|
||||
|
||||
%files liqctld -f %pyproject_files
|
||||
%doc coolercontrol-liqctld/README.md
|
||||
%license LICENSE
|
||||
%_bindir/coolercontrol-liqctld
|
||||
%_unitdir/coolercontrol-liqctld.service
|
||||
|
||||
%changelog
|
||||
* Thu Aug 15 2024 madonuko <mado@fyralabs.com> - 1.4.0-1
|
||||
- Initial package
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gitlab("30707566"));
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord-canary-openasar
|
||||
Version: 0.0.552
|
||||
Version: 0.0.452
|
||||
Release: 1%?dist
|
||||
Summary: A snappier Discord rewrite with features like further customization and theming
|
||||
License: MIT AND https://discord.com/terms
|
||||
@@ -34,7 +34,6 @@ sed "s@Discord Canary@Discord Canary OpenAsar@g" a > discord-canary.desktop
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
mkdir -p %{buildroot}%{_datadir}/discord-canary-openasar
|
||||
cp -rv * %{buildroot}%{_datadir}/discord-canary-openasar
|
||||
mkdir -p %{buildroot}%{_datadir}/applications/
|
||||
@@ -43,11 +42,9 @@ ln -s %_datadir/discord-canary-openasar/discord-canary.desktop %{buildroot}%{_da
|
||||
ln -s %_datadir/discord-canary-openasar/discord.png %{buildroot}%{_datadir}/pixmaps/discord-canary-openasar.png
|
||||
cp -v %{SOURCE1} %{buildroot}%{_datadir}/discord-canary-openasar/resources/app.asar
|
||||
chmod o+w %{buildroot}%{_datadir}/discord-canary-openasar/resources -R
|
||||
ln -s %_datadir/discord-canary-openasar/DiscordCanary %buildroot%_bindir/discord-canary-openasar
|
||||
|
||||
|
||||
%files
|
||||
%_bindir/discord-canary-openasar
|
||||
%{_datadir}/discord-canary-openasar/
|
||||
%{_datadir}/applications/discord-canary-openasar.desktop
|
||||
%{_datadir}/pixmaps/discord-canary-openasar.png
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
rpm.version(get("https://discord.com/api/canary/updates?platform=linux").json().name);
|
||||
let html = get("https://discordapp.com/api/download/canary?platform=linux&format=tar.gz");
|
||||
let newver = find("https://dl-canary\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
|
||||
rpm.version(newver);
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord-canary
|
||||
Version: 0.0.552
|
||||
Version: 0.0.452
|
||||
Release: 1%?dist
|
||||
Summary: Free Voice and Text Chat for Gamers
|
||||
URL: discord.com
|
||||
@@ -16,8 +16,9 @@ Requires: glibc GConf2 nspr >= 4.13 nss >= 3.27 libX11 >= 1.6 libXtst >= 1
|
||||
Group: Applications/Internet
|
||||
ExclusiveArch: x86_64
|
||||
%description
|
||||
All-in-one voice and text chat for gamers that's free, secure, and works on
|
||||
both your desktop and phone.
|
||||
Imagine a place where you can belong to a school club, a gaming group, or a
|
||||
worldwide art community. Where just you and a handful of friends can spend time
|
||||
together. A place that makes it easy to talk every day and hang out more often.
|
||||
|
||||
%prep
|
||||
%autosetup -n DiscordCanary
|
||||
@@ -26,17 +27,14 @@ both your desktop and phone.
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
mkdir -p %{buildroot}%{_datadir}/discord-canary
|
||||
cp -rv * %{buildroot}%{_datadir}/discord-canary
|
||||
mkdir -p %{buildroot}%{_datadir}/applications/
|
||||
mkdir -p %{buildroot}%{_datadir}/pixmaps
|
||||
ln -s %_datadir/discord-canary/discord-canary.desktop %{buildroot}%{_datadir}/applications/
|
||||
ln -s %_datadir/discord-canary/discord.png %{buildroot}%{_datadir}/pixmaps/discord-canary.png
|
||||
ln -s %_datadir/discord/DiscordCanary %buildroot%_bindir/discord-canary
|
||||
|
||||
%files
|
||||
%_bindir/discord-canary
|
||||
%{_datadir}/discord-canary/
|
||||
%{_datadir}/applications/discord-canary.desktop
|
||||
%{_datadir}/pixmaps/discord-canary.png
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
rpm.version(get("https://discord.com/api/canary/updates?platform=linux").json().name);
|
||||
let html = get("https://discordapp.com/api/download/canary?platform=linux&format=tar.gz");
|
||||
let newver = find("https://dl-canary\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
|
||||
rpm.version(newver);
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord-openasar
|
||||
Version: 0.0.78
|
||||
Version: 0.0.59
|
||||
Release: 1%?dist
|
||||
Summary: A snappier Discord rewrite with features like further customization and theming
|
||||
License: MIT AND https://discord.com/terms
|
||||
@@ -34,7 +34,6 @@ sed "s@Discord@Discord OpenAsar@g" a > discord.desktop
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
mkdir -p %{buildroot}%{_datadir}/discord-openasar
|
||||
cp -rv * %{buildroot}%{_datadir}/discord-openasar
|
||||
mkdir -p %{buildroot}%{_datadir}/applications/
|
||||
@@ -43,11 +42,9 @@ ln -s %_datadir/discord-openasar/discord.desktop %{buildroot}%{_datadir}/applica
|
||||
ln -s %_datadir/discord-openasar/discord.png %{buildroot}%{_datadir}/pixmaps/discord-openasar.png
|
||||
cp -v %{SOURCE1} %{buildroot}%{_datadir}/discord-openasar/resources/app.asar
|
||||
chmod o+w %{buildroot}%{_datadir}/discord-openasar/resources -R
|
||||
ln -s %_datadir/discord-openasar/Discord %buildroot%_bindir/discord-openasar
|
||||
|
||||
|
||||
%files
|
||||
%_bindir/discord-openasar
|
||||
%{_datadir}/discord-openasar/
|
||||
%{_datadir}/applications/discord-openasar.desktop
|
||||
%{_datadir}/pixmaps/discord-openasar.png
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
rpm.version(get("https://discord.com/api/stable/updates?platform=linux").json().name);
|
||||
let html = get("https://discordapp.com/api/download?platform=linux&format=tar.gz");
|
||||
let newver = find("https://dl\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
|
||||
rpm.version(newver);
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord-ptb-openasar
|
||||
Version: 0.0.124
|
||||
Version: 0.0.93
|
||||
Release: 1%?dist
|
||||
Summary: A snappier Discord rewrite with features like further customization and theming
|
||||
License: MIT AND https://discord.com/terms
|
||||
@@ -34,7 +34,6 @@ sed "s@Discord Ptb@Discord Ptb OpenAsar@g" a > discord-ptb.desktop
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
mkdir -p %{buildroot}%{_datadir}/discord-ptb-openasar
|
||||
cp -rv * %{buildroot}%{_datadir}/discord-ptb-openasar
|
||||
mkdir -p %{buildroot}%{_datadir}/applications/
|
||||
@@ -45,11 +44,9 @@ install discord-ptb.desktop %{buildroot}%{_datadir}/applications/discord-ptb-ope
|
||||
install discord.png %{buildroot}%{_datadir}/pixmaps/discord-ptb-openasar.png
|
||||
cp -v %{SOURCE1} %{buildroot}%{_datadir}/discord-ptb-openasar/resources/app.asar
|
||||
chmod o+w %{buildroot}%{_datadir}/discord-ptb-openasar/resources -R
|
||||
ln -s %_datadir/discord-ptb-openasar/Discord %buildroot%_bindir/discord-ptb-openasar
|
||||
|
||||
|
||||
%files
|
||||
%_bindir/discord-ptb-openasar
|
||||
%{_datadir}/discord-ptb-openasar/
|
||||
%{_datadir}/applications/discord-ptb-openasar.desktop
|
||||
%{_datadir}/pixmaps/discord-ptb-openasar.png
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
rpm.version(get("https://discord.com/api/ptb/updates?platform=linux").json().name);
|
||||
let html = get("https://discordapp.com/api/download/ptb?platform=linux&format=tar.gz");
|
||||
let newver = find("https://dl-ptb\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
|
||||
rpm.version(newver);
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord-ptb
|
||||
Version: 0.0.124
|
||||
Version: 0.0.93
|
||||
Release: 1%?dist
|
||||
Summary: Free Voice and Text Chat for Gamers.
|
||||
URL: https://discord.com
|
||||
@@ -20,8 +20,9 @@ Requires: libXtst >= 1.2
|
||||
Group: Applications/Internet
|
||||
ExclusiveArch: x86_64
|
||||
%description
|
||||
All-in-one voice and text chat for gamers that's free, secure, and works on
|
||||
both your desktop and phone.
|
||||
Imagine a place where you can belong to a school club, a gaming group, or a
|
||||
worldwide art community. Where just you and a handful of friends can spend time
|
||||
together. A place that makes it easy to talk every day and hang out more often.
|
||||
|
||||
%prep
|
||||
%autosetup -n DiscordPTB
|
||||
@@ -30,17 +31,14 @@ both your desktop and phone.
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
mkdir -p %{buildroot}%{_datadir}/discord-ptb
|
||||
cp -rv * %{buildroot}%{_datadir}/discord-ptb
|
||||
mkdir -p %{buildroot}%{_datadir}/applications/
|
||||
mkdir -p %{buildroot}%{_datadir}/pixmaps
|
||||
ln -s %_datadir/discord-ptb/discord-ptb.desktop %{buildroot}%{_datadir}/applications/
|
||||
ln -s %_datadir/discord-ptb/discord.png %{buildroot}%{_datadir}/pixmaps/discord-ptb.png
|
||||
ln -s %_datadir/discord-ptb/Discord %buildroot%_bindir/discord-ptb
|
||||
|
||||
%files
|
||||
%_bindir/discord-ptb
|
||||
%{_datadir}/discord-ptb/
|
||||
%{_datadir}/applications/discord-ptb.desktop
|
||||
%{_datadir}/pixmaps/discord-ptb.png
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
rpm.version(get("https://discord.com/api/ptb/updates?platform=linux").json().name);
|
||||
let html = get("https://discordapp.com/api/download/ptb?platform=linux&format=tar.gz");
|
||||
let newver = find("https://dl-ptb\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
|
||||
rpm.version(newver);
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: discord
|
||||
Version: 0.0.78
|
||||
Version: 0.0.59
|
||||
Release: 1%?dist
|
||||
Summary: Free Voice and Text Chat for Gamers
|
||||
URL: https://discord.com
|
||||
@@ -20,8 +20,9 @@ Requires: libXtst >= 1.2
|
||||
Group: Applications/Internet
|
||||
ExclusiveArch: x86_64
|
||||
%description
|
||||
All-in-one voice and text chat for gamers that's free, secure, and works on
|
||||
both your desktop and phone.
|
||||
Imagine a place where you can belong to a school club, a gaming group, or a
|
||||
worldwide art community. Where just you and a handful of friends can spend time
|
||||
together. A place that makes it easy to talk every day and hang out more often.
|
||||
|
||||
%prep
|
||||
%autosetup -n Discord
|
||||
@@ -30,17 +31,14 @@ both your desktop and phone.
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
mkdir -p %{buildroot}%{_datadir}/discord
|
||||
cp -rv * %{buildroot}%{_datadir}/discord
|
||||
mkdir -p %{buildroot}%{_datadir}/applications/
|
||||
mkdir -p %{buildroot}%{_datadir}/pixmaps
|
||||
ln -s %_datadir/discord/discord.desktop %{buildroot}%{_datadir}/applications/discord.desktop
|
||||
ln -s %_datadir/discord/discord.png %{buildroot}%{_datadir}/pixmaps/discord.png
|
||||
ln -s %_datadir/discord/Discord %buildroot%_bindir/discord
|
||||
|
||||
%files
|
||||
%_bindir/discord
|
||||
%{_datadir}/discord/
|
||||
%{_datadir}/applications/discord.desktop
|
||||
%{_datadir}/pixmaps/discord.png
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
rpm.version(get("https://discord.com/api/stable/updates?platform=linux").json().name);
|
||||
let html = get("https://discordapp.com/api/download?platform=linux&format=tar.gz");
|
||||
let newver = find("https://dl\\.discordapp\\.net/apps/linux/([\\.\\d]+)/", html, 1);
|
||||
rpm.version(newver);
|
||||
|
||||
@@ -2,7 +2,4 @@ project pkg {
|
||||
rpm {
|
||||
spec = "envision.spec"
|
||||
}
|
||||
labels {
|
||||
nightly = 1
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
%global commit 0adf894b4519824682b6e0886fa1c6853c9b7344
|
||||
%global commit_date 20250102
|
||||
%global commit 6cf5e40b96d1cbd99a3cfcef1f03899356e79448
|
||||
%global commit_date 20240703
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
|
||||
Name: envision
|
||||
@@ -16,12 +16,10 @@ 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: openssl-devel
|
||||
BuildRequires: libappstream-glib
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: glib2-devel
|
||||
BuildRequires: git-core
|
||||
Recommends: android-tools
|
||||
|
||||
%description
|
||||
@@ -41,8 +39,8 @@ Recommends: android-tools
|
||||
%doc README.md
|
||||
%license LICENSE
|
||||
%_bindir/envision
|
||||
%_datadir/applications/org.gabmus.envision.Devel.desktop
|
||||
%_datadir/applications/org.gabmus.envision.desktop
|
||||
%_datadir/envision/
|
||||
%_iconsdir/hicolor/scalable/apps/org.gabmus.envision.Devel.svg
|
||||
%_iconsdir/hicolor/symbolic/apps/org.gabmus.envision.Devel-symbolic.svg
|
||||
%_metainfodir/org.gabmus.envision.Devel.appdata.xml
|
||||
%_iconsdir/hicolor/scalable/apps/org.gabmus.envision.svg
|
||||
%_iconsdir/hicolor/symbolic/apps/org.gabmus.envision-symbolic.svg
|
||||
%_metainfodir/org.gabmus.envision.appdata.xml
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: feishin
|
||||
Version: 0.12.1
|
||||
Version: 0.7.1
|
||||
Release: 1%?dist
|
||||
Summary: A modern self-hosted music player
|
||||
License: GPL-3.0
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "fontviewer.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,43 +0,0 @@
|
||||
%global commit d530f26d60dc105e44fdc8ac7f30a2f667bc1e4f
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
%global commit_date 20241224
|
||||
|
||||
Name: fontviewer
|
||||
Version: %{commit_date}.git~%{shortcommit}
|
||||
Release: 1%?dist
|
||||
Summary: View and install fonts
|
||||
|
||||
License: GPL-2.0
|
||||
URL: https://github.com/chocolateimage/%{name}
|
||||
Source0: %{url}/archive/%{commit}.tar.gz
|
||||
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: meson
|
||||
BuildRequires: pkgconfig(cairomm-1.0)
|
||||
BuildRequires: pkgconfig(fontconfig)
|
||||
BuildRequires: pkgconfig(freetype2)
|
||||
BuildRequires: pkgconfig(gtk+-3.0)
|
||||
BuildRequires: pkgconfig(gtkmm-3.0)
|
||||
|
||||
Requires: gtk3 fontconfig
|
||||
|
||||
Packager: sadlerm <sad_lerm@hotmail.com>
|
||||
|
||||
%description
|
||||
A platform-agnostic GTK+ 3 alternative to GNOME's Font Viewer
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}-%{commit} -p1
|
||||
|
||||
%build
|
||||
%meson
|
||||
%meson_build
|
||||
|
||||
%install
|
||||
%meson_install
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
%{_bindir}/%{name}
|
||||
%{_datadir}/applications/%{name}.desktop
|
||||
@@ -1,5 +0,0 @@
|
||||
# rpm.global("commit", gh_commit("chocolateimage/fontviewer"));
|
||||
# if rpm.changed() {
|
||||
# rpm.release();
|
||||
# rpm.global("commit_date", date());
|
||||
# }
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "komikku.spec"
|
||||
}
|
||||
}
|
||||
@@ -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.67.0
|
||||
%forgemeta
|
||||
Release: 1%?dist
|
||||
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
|
||||
@@ -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,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "legcord-bin.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,95 +0,0 @@
|
||||
%define debug_package %nil
|
||||
%global _build_id_links none
|
||||
|
||||
%ifarch x86_64
|
||||
%global src LegCord-%version-linux-x64
|
||||
%elifarch aarch64
|
||||
%global src LegCord-%version-linux-arm64
|
||||
%elifarch armv7l
|
||||
%global src LegCord-%version-linux-armv7l
|
||||
%endif
|
||||
|
||||
# Exclude private libraries
|
||||
%global __requires_exclude libffmpeg.so
|
||||
%global __provides_exclude_from %{_datadir}/(armcord|legcord)/.*\\.so
|
||||
|
||||
Name: legcord-bin
|
||||
Version: 1.0.6
|
||||
Release: 1%?dist
|
||||
License: OSL-3.0
|
||||
Summary: Custom lightweight Discord client designed to enhance your experience
|
||||
URL: https://github.com/LegCord/LegCord
|
||||
Group: Applications/Internet
|
||||
Source0: %url/releases/download/v%version/%src.zip
|
||||
Source1: legcord.png
|
||||
Source2: https://raw.githubusercontent.com/LegCord/LegCord/v%version/README.md
|
||||
Requires: xdg-utils
|
||||
BuildRequires: unzip
|
||||
ExclusiveArch: x86_64 aarch64 armv7l
|
||||
Conflicts: legcord
|
||||
BuildRequires: add-determinism
|
||||
Obsoletes: armcord < 3.3.2-1
|
||||
|
||||
%description
|
||||
LegCord is a custom client designed to enhance your Discord experience
|
||||
while keeping everything lightweight.
|
||||
|
||||
%prep
|
||||
mkdir legcord
|
||||
cd legcord
|
||||
unzip %SOURCE0
|
||||
|
||||
cat <<EOF > .legcord.desktop
|
||||
[Desktop Entry]
|
||||
Name=LegCord
|
||||
Comment=%summary
|
||||
GenericName=Internet Messenger
|
||||
Type=Application
|
||||
Exec=%_bindir/legcord
|
||||
Icon=legcord
|
||||
Categories=Network;InstantMessaging;
|
||||
StartupWMClass=legcord
|
||||
Keywords=discord;armcord;legcord;vencord;shelter;electron;
|
||||
EOF
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
cd legcord
|
||||
mkdir -p %buildroot%_bindir %buildroot%_datadir/applications %buildroot%_datadir/pixmaps %buildroot%_datadir/legcord %buildroot%_docdir/%name
|
||||
cp -a * %buildroot%_datadir/legcord/
|
||||
ln -s %_datadir/legcord/legcord %buildroot%_bindir/legcord
|
||||
ln -s %_datadir/legcord %buildroot%_datadir/armcord
|
||||
chmod +x -R %buildroot%_datadir/legcord/*
|
||||
chmod 755 %buildroot%_datadir/legcord/legcord
|
||||
install -Dm644 .legcord.desktop %buildroot%_datadir/applications/LegCord.desktop
|
||||
install -Dm644 %SOURCE1 %buildroot%_datadir/pixmaps/legcord.png
|
||||
install -Dm644 %SOURCE2 %buildroot%_docdir/%name/
|
||||
|
||||
# HACK: rpm bug for unability to replace existing files on system.
|
||||
%pre
|
||||
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
|
||||
echo "Found old %_datadir/armcord directory, removing…"
|
||||
rm -rf %_datadir/armcord
|
||||
fi
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%_datadir/legcord
|
||||
%_datadir/armcord
|
||||
%_bindir/legcord
|
||||
%_datadir/applications/LegCord.desktop
|
||||
%_datadir/pixmaps/legcord.png
|
||||
|
||||
%changelog
|
||||
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
|
||||
- Rename to LegCord.
|
||||
|
||||
* Sat Jun 17 2023 madonuko <mado@fyralabs.com> - 3.2.0-2
|
||||
- Remove libnotify dependency.
|
||||
- Fix desktop entry.
|
||||
- Set as noarch package because there are not binary files.
|
||||
- Use /usr/share/ instead of /opt/
|
||||
|
||||
* Sat May 6 2023 madonuko <mado@fyralabs.com> - 3.1.7-1
|
||||
- Initial package
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh("LegCord/LegCord"));
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "legcord-bin.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,96 +0,0 @@
|
||||
%define debug_package %nil
|
||||
%global _build_id_links none
|
||||
|
||||
%ifarch x86_64
|
||||
%global src LegCord-%version-linux-x64
|
||||
%elifarch aarch64
|
||||
%global src LegCord-%version-linux-arm64
|
||||
%elifarch armv7l
|
||||
%global src LegCord-%version-linux-armv7l
|
||||
%endif
|
||||
|
||||
# Exclude private libraries
|
||||
%global __requires_exclude libffmpeg.so
|
||||
%global __provides_exclude_from %{_datadir}/(armcord|legcord)/.*\\.so
|
||||
|
||||
Name: legcord-bin
|
||||
Version: 1.0.6
|
||||
Release: 1%?dist
|
||||
License: OSL-3.0
|
||||
Summary: Custom lightweight Discord client designed to enhance your experience
|
||||
URL: https://github.com/LegCord/LegCord
|
||||
Group: Applications/Internet
|
||||
Source0: %url/releases/download/v%version/%src.zip
|
||||
Source1: legcord.png
|
||||
Source2: https://raw.githubusercontent.com/LegCord/LegCord/v%version/README.md
|
||||
Requires: xdg-utils
|
||||
BuildRequires: unzip
|
||||
ExclusiveArch: x86_64 aarch64 armv7l
|
||||
Conflicts: legcord
|
||||
Conflicts: legcord-nightly
|
||||
BuildRequires: add-determinism
|
||||
Obsoletes: armcord < 3.3.2-1
|
||||
|
||||
%description
|
||||
LegCord is a custom client designed to enhance your Discord experience
|
||||
while keeping everything lightweight.
|
||||
|
||||
%prep
|
||||
mkdir legcord
|
||||
cd legcord
|
||||
unzip %SOURCE0
|
||||
|
||||
cat <<EOF > .legcord.desktop
|
||||
[Desktop Entry]
|
||||
Name=LegCord
|
||||
Comment=%summary
|
||||
GenericName=Internet Messenger
|
||||
Type=Application
|
||||
Exec=%_bindir/legcord
|
||||
Icon=legcord
|
||||
Categories=Network;InstantMessaging;
|
||||
StartupWMClass=legcord
|
||||
Keywords=discord;armcord;legcord;vencord;shelter;electron;
|
||||
EOF
|
||||
|
||||
%build
|
||||
|
||||
%install
|
||||
cd legcord
|
||||
mkdir -p %buildroot%_bindir %buildroot%_datadir/applications %buildroot%_datadir/pixmaps %buildroot%_datadir/legcord %buildroot%_docdir/%name
|
||||
cp -a * %buildroot%_datadir/legcord/
|
||||
ln -s %_datadir/legcord/legcord %buildroot%_bindir/legcord
|
||||
ln -s %_datadir/legcord %buildroot%_datadir/armcord
|
||||
chmod +x -R %buildroot%_datadir/legcord/*
|
||||
chmod 755 %buildroot%_datadir/legcord/legcord
|
||||
install -Dm644 .legcord.desktop %buildroot%_datadir/applications/LegCord.desktop
|
||||
install -Dm644 %SOURCE1 %buildroot%_datadir/pixmaps/legcord.png
|
||||
install -Dm644 %SOURCE2 %buildroot%_docdir/%name/
|
||||
|
||||
# HACK: rpm bug for unability to replace existing files on system.
|
||||
%pre
|
||||
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
|
||||
echo "Found old %_datadir/armcord directory, removing…"
|
||||
rm -rf %_datadir/armcord
|
||||
fi
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%_datadir/legcord
|
||||
%_datadir/armcord
|
||||
%_bindir/legcord
|
||||
%_datadir/applications/LegCord.desktop
|
||||
%_datadir/pixmaps/legcord.png
|
||||
|
||||
%changelog
|
||||
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
|
||||
- Rename to LegCord.
|
||||
|
||||
* Sat Jun 17 2023 madonuko <mado@fyralabs.com> - 3.2.0-2
|
||||
- Remove libnotify dependency.
|
||||
- Fix desktop entry.
|
||||
- Set as noarch package because there are not binary files.
|
||||
- Use /usr/share/ instead of /opt/
|
||||
|
||||
* Sat May 6 2023 madonuko <mado@fyralabs.com> - 3.1.7-1
|
||||
- Initial package
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 81 KiB |
@@ -1 +0,0 @@
|
||||
rpm.version(gh("LegCord/LegCord"));
|
||||
@@ -1,9 +0,0 @@
|
||||
project pkg {
|
||||
arches = ["x86_64"]
|
||||
rpm {
|
||||
spec = "legcord-nightly.spec"
|
||||
}
|
||||
labels {
|
||||
nightly = 1
|
||||
}
|
||||
}
|
||||
@@ -1,91 +0,0 @@
|
||||
%global commit b070545d1289e66a02eff10aa2bf5f440eb16aeb
|
||||
%global commit_date 20250101
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
%define debug_package %nil
|
||||
|
||||
Name: legcord-nightly
|
||||
Version: %commit_date.%shortcommit
|
||||
Release: 1%?dist
|
||||
License: OSL-3.0
|
||||
Summary: Custom lightweight Discord client designed to enhance your experience
|
||||
URL: https://github.com/LegCord/LegCord
|
||||
Group: Applications/Internet
|
||||
Source0: %url/archive/%commit/legcord-%commit.tar.gz
|
||||
Source1: launch.sh
|
||||
Packager: Owen <owen@fyralabs.com>
|
||||
Requires: electron xdg-utils
|
||||
Provides: armcord-nightly
|
||||
Obsoletes: armcord < 3.3.2-1
|
||||
Conflicts: legcord-bin
|
||||
Conflicts: legcord
|
||||
BuildArch: noarch
|
||||
BuildRequires: anda-srpm-macros pnpm
|
||||
|
||||
%description
|
||||
legcord is a custom client designed to enhance your Discord experience
|
||||
while keeping everything lightweight.
|
||||
|
||||
%prep
|
||||
%autosetup -n Legcord-%commit
|
||||
|
||||
cat <<EOF > legcord.desktop
|
||||
[Desktop Entry]
|
||||
Name=LegCord
|
||||
Comment=%summary
|
||||
GenericName=Internet Messenger
|
||||
Type=Application
|
||||
Exec=/usr/bin/legcord
|
||||
Icon=legcord
|
||||
Categories=Network;InstantMessaging;
|
||||
StartupWMClass=legcord
|
||||
Keywords=discord;armcord;legcord;vencord;shelter;electron;
|
||||
EOF
|
||||
|
||||
|
||||
%build
|
||||
pnpm install --no-frozen-lockfile
|
||||
pnpm run packageQuick
|
||||
|
||||
|
||||
%install
|
||||
install -Dm644 dist/*-unpacked/resources/app.asar %buildroot/usr/share/legcord/app.asar
|
||||
|
||||
install -Dm755 %SOURCE1 %buildroot/usr/bin/legcord
|
||||
install -Dm644 legcord.desktop %buildroot/usr/share/applications/LegCord.desktop
|
||||
install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/legcord.png
|
||||
|
||||
ln -s %_datadir/legcord %buildroot%_datadir/armcord
|
||||
|
||||
# HACK: rpm bug for unability to replace existing files on system.
|
||||
%pre
|
||||
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
|
||||
echo "Found old %_datadir/armcord directory, removing…"
|
||||
rm -rf %_datadir/armcord
|
||||
fi
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license license.txt
|
||||
/usr/bin/legcord
|
||||
/usr/share/applications/LegCord.desktop
|
||||
/usr/share/pixmaps/legcord.png
|
||||
/usr/share/legcord/app.asar
|
||||
/usr/share/armcord
|
||||
|
||||
%changelog
|
||||
* Fri Nov 22 2024 owen <owen@fyralabs.com> - 1.0.2-2
|
||||
- Add nightly package.
|
||||
|
||||
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
|
||||
- Rename to LegCord.
|
||||
|
||||
* Mon Aug 26 2024 madonuko <mado@fyralabs.com> - 3.3.0-1
|
||||
- Update to license.txt
|
||||
|
||||
* Sat Jun 17 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.2.0-2
|
||||
- Remove libnotify dependency.
|
||||
- Fix desktop entry.
|
||||
- Set as noarch package because there are not binary files.
|
||||
|
||||
* Sat May 6 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
|
||||
- Initial package
|
||||
@@ -1,5 +0,0 @@
|
||||
rpm.global("commit", gh_commit("Legcord/Legcord"));
|
||||
if rpm.changed() {
|
||||
rpm.release();
|
||||
rpm.global("commit_date", date());
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
#!/bin/sh
|
||||
electron=/usr/bin/electron
|
||||
|
||||
CONFIG=${XDG_CONFIG_HOME:-~/.config}
|
||||
FLAGS="$CONFIG/armcord-flags.conf"
|
||||
|
||||
# Allow users to override command-line options
|
||||
if [ -f "$FLAGS" ]; then
|
||||
USER_FLAGS="$(cat "$FLAGS")"
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2086 # USER_FLAGS has to be unquoted
|
||||
"$electron" /usr/share/armcord/app.asar $USER_FLAGS "$@"
|
||||
@@ -1,88 +0,0 @@
|
||||
%define debug_package %nil
|
||||
|
||||
# Exclude private libraries
|
||||
%global __requires_exclude libffmpeg.so
|
||||
%global __provides_exclude_from %{_datadir}/(armcord|legcord)/.*\\.so
|
||||
|
||||
Name: legcord
|
||||
Version: 1.0.6
|
||||
Release: 1%?dist
|
||||
License: OSL-3.0
|
||||
Summary: Custom lightweight Discord client designed to enhance your experience
|
||||
URL: https://github.com/LegCord/LegCord
|
||||
Group: Applications/Internet
|
||||
Source1: launch.sh
|
||||
Packager: madonuko <mado@fyralabs.com>
|
||||
Requires: electron xdg-utils
|
||||
Provides: armcord
|
||||
Obsoletes: armcord < 3.3.2-1
|
||||
Conflicts: legcord-bin
|
||||
Conflicts: legcord-nightly
|
||||
BuildArch: noarch
|
||||
BuildRequires: anda-srpm-macros pnpm
|
||||
|
||||
%description
|
||||
legcord is a custom client designed to enhance your Discord experience
|
||||
while keeping everything lightweight.
|
||||
|
||||
%prep
|
||||
%git_clone %url v%version
|
||||
|
||||
cat <<EOF > legcord.desktop
|
||||
[Desktop Entry]
|
||||
Name=Legcord
|
||||
Comment=%summary
|
||||
GenericName=Internet Messenger
|
||||
Type=Application
|
||||
Exec=/usr/bin/legcord
|
||||
Icon=legcord
|
||||
Categories=Network;InstantMessaging;
|
||||
StartupWMClass=legcord
|
||||
Keywords=discord;armcord;legcord;vencord;shelter;electron;
|
||||
EOF
|
||||
|
||||
|
||||
%build
|
||||
pnpm install --no-frozen-lockfile
|
||||
pnpm run packageQuick
|
||||
|
||||
|
||||
%install
|
||||
install -Dm644 dist/*-unpacked/resources/app.asar %buildroot/usr/share/legcord/app.asar
|
||||
|
||||
install -Dm755 %SOURCE1 %buildroot/usr/bin/legcord
|
||||
install -Dm644 legcord.desktop %buildroot/usr/share/applications/LegCord.desktop
|
||||
install -Dm644 build/icon.png %buildroot/usr/share/pixmaps/legcord.png
|
||||
|
||||
ln -s %_datadir/legcord %buildroot%_datadir/armcord
|
||||
|
||||
# HACK: rpm bug for unability to replace existing files on system.
|
||||
%pre
|
||||
if [ -d %_datadir/armcord ] && [ ! -L %_datadir/armcord ]; then
|
||||
echo "Found old %_datadir/armcord directory, removing…"
|
||||
rm -rf %_datadir/armcord
|
||||
fi
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license license.txt
|
||||
/usr/bin/legcord
|
||||
/usr/share/applications/LegCord.desktop
|
||||
/usr/share/pixmaps/legcord.png
|
||||
/usr/share/legcord/app.asar
|
||||
/usr/share/armcord
|
||||
|
||||
%changelog
|
||||
* Mon Oct 21 2024 madonuko <mado@fyralabs.com> - 1.0.2-2
|
||||
- Rename to LegCord.
|
||||
|
||||
* Mon Aug 26 2024 madonuko <mado@fyralabs.com> - 3.3.0-1
|
||||
- Update to license.txt
|
||||
|
||||
* Sat Jun 17 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.2.0-2
|
||||
- Remove libnotify dependency.
|
||||
- Fix desktop entry.
|
||||
- Set as noarch package because there are not binary files.
|
||||
|
||||
* Sat May 6 2023 windowsboy111 <windowsboy111@fyralabs.com> - 3.1.7-1
|
||||
- Initial package
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh("LegCord/LegCord"));
|
||||
@@ -1,7 +1,7 @@
|
||||
%global commit 50042f5ee094a36e38f9ea809408e0b5cbf3b874
|
||||
%global commit 14571f0f7793fe60ca14a25fc45adbe1e5b6a1e8
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
%global commit_date 20250101
|
||||
%global ver 0.39.0
|
||||
%global commit_date 20240711
|
||||
%global ver v0.38.0
|
||||
|
||||
Name: mpv-nightly
|
||||
Version: %ver^%commit_date.%shortcommit
|
||||
@@ -42,7 +42,6 @@ BuildRequires: pkgconfig(libavutil) >= 57.24.100
|
||||
BuildRequires: pkgconfig(libbluray)
|
||||
BuildRequires: pkgconfig(libcdio)
|
||||
BuildRequires: pkgconfig(libcdio_paranoia)
|
||||
BuildRequires: pkgconfig(libdisplay-info)
|
||||
BuildRequires: pkgconfig(libdrm)
|
||||
BuildRequires: pkgconfig(libjpeg)
|
||||
BuildRequires: pkgconfig(libpipewire-0.3) >= 0.3.19
|
||||
@@ -183,6 +182,7 @@ sed -e "s|/usr/local/etc|%{_sysconfdir}/mpv|" -i etc/mpv.conf
|
||||
-Dvdpau-gl-x11=enabled \
|
||||
-Dvdpau=enabled \
|
||||
-Dvector=enabled \
|
||||
-Dvulkan-interop=disabled \
|
||||
-Dvulkan=enabled \
|
||||
-Dwayland=enabled \
|
||||
-Dwerror=false \
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
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("ver", gh("mpv-player/mpv"));
|
||||
rpm.global("commit_date", date());
|
||||
rpm.release();
|
||||
}
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "ruffle-nightly.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
--- a/desktop/packages/linux/rs.ruffle.Ruffle.desktop
|
||||
+++ b/desktop/packages/linux/rs.ruffle.Ruffle.desktop
|
||||
@@ -47,7 +47,7 @@ Comment[zh_CN]=播放 Flash 游戏和动画
|
||||
Comment[zh_TW]=播放 Flash 遊戲和動畫
|
||||
Comment=Play Flash games & movies
|
||||
Icon=rs.ruffle.Ruffle
|
||||
-Exec=ruffle %u
|
||||
+Exec=ruffle_desktop %u
|
||||
MimeType=application/x-shockwave-flash;application/vnd.adobe.flash.movie
|
||||
Categories=AudioVideo;Player;Graphics;Viewer;VectorGraphics;Game
|
||||
Keywords[ar]=الفلاش;swf;مشغل;محاكي;رَسْت
|
||||
@@ -1,56 +0,0 @@
|
||||
%global ver 2025-01-02
|
||||
%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
|
||||
Patch0: desktop_file_patch.diff
|
||||
Provides: ruffle
|
||||
BuildRequires: cargo-rpm-macros >= 24
|
||||
BuildRequires: anda-srpm-macros mold
|
||||
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/rs.ruffle.Ruffle.desktop
|
||||
%_iconsdir/hicolor/scalable/apps/rs.ruffle.Ruffle.svg
|
||||
%_metainfodir/rs.ruffle.Ruffle.metainfo.xml
|
||||
|
||||
%prep
|
||||
%autosetup -n ruffle-nightly-%ver -p1
|
||||
%cargo_prep_online
|
||||
|
||||
%build
|
||||
%{cargo_license_online} > LICENSE.dependencies
|
||||
|
||||
%install
|
||||
cd desktop
|
||||
%cargo_install
|
||||
install -Dm644 packages/linux/rs.ruffle.Ruffle.svg %buildroot%_iconsdir/hicolor/scalable/apps/rs.ruffle.Ruffle.svg
|
||||
install -Dm644 packages/linux/rs.ruffle.Ruffle.desktop %buildroot%_datadir/applications/rs.ruffle.Ruffle.desktop
|
||||
install -Dm644 packages/linux/rs.ruffle.Ruffle.metainfo.xml %buildroot%_metainfodir/rs.ruffle.Ruffle.metainfo.xml
|
||||
|
||||
%changelog
|
||||
* Mon Jul 29 2024 madonuko <mado@fyralabs.com>
|
||||
- Initial package
|
||||
@@ -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();
|
||||
}
|
||||
+149
-46
@@ -1,4 +1,4 @@
|
||||
# Generated by rust2rpm 26
|
||||
# Generated by rust2rpm 25
|
||||
%bcond_with check
|
||||
# aarch64 dist is not available
|
||||
%ifarch aarch64
|
||||
@@ -13,7 +13,7 @@
|
||||
%global crate sccache
|
||||
|
||||
Name: rust-sccache
|
||||
Version: 0.9.0
|
||||
Version: 0.8.1
|
||||
Release: 1%?dist
|
||||
Summary: Ccache-like tool
|
||||
|
||||
@@ -23,13 +23,14 @@ Source: %{crates_source}
|
||||
# Automatically generated patch to strip dependencies and normalize metadata
|
||||
Patch: sccache-fix-metadata-auto.diff
|
||||
|
||||
ExclusiveArch: %{rust_arches}
|
||||
|
||||
BuildRequires: cargo-rpm-macros >= 24
|
||||
BuildRequires: anda-srpm-macros
|
||||
BuildRequires: openssl-devel
|
||||
BuildRequires: gcc
|
||||
BuildRequires: perl
|
||||
BuildRequires: rust-packaging
|
||||
BuildRequires: mold
|
||||
|
||||
%global _description %{expand:
|
||||
Sccache is a ccache-like tool. It is used as a compiler wrapper and
|
||||
@@ -47,7 +48,6 @@ License: MIT
|
||||
|
||||
%files -n %{crate}
|
||||
%license LICENSE
|
||||
#license LICENSE.dependencies
|
||||
%doc CODE_OF_CONDUCT.md
|
||||
%doc README.md
|
||||
%{_bindir}/sccache
|
||||
@@ -68,9 +68,6 @@ This package contains library source intended for building other packages which
|
||||
use the "%{crate}" crate.
|
||||
|
||||
%files devel
|
||||
%license %{crate_instdir}/LICENSE
|
||||
%doc %{crate_instdir}/CODE_OF_CONDUCT.md
|
||||
%doc %{crate_instdir}/README.md
|
||||
%{crate_instdir}/
|
||||
|
||||
%package -n %{name}+default-devel
|
||||
@@ -92,6 +89,17 @@ use the "default" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+all-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/all) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
Requires: crate(sccache/azure) = 0.7.4
|
||||
Requires: crate(sccache/dist-client) = 0.7.4
|
||||
Requires: crate(sccache/gcs) = 0.7.4
|
||||
Requires: crate(sccache/gha) = 0.7.4
|
||||
Requires: crate(sccache/memcached) = 0.7.4
|
||||
Requires: crate(sccache/redis) = 0.7.4
|
||||
Requires: crate(sccache/s3) = 0.7.4
|
||||
Requires: crate(sccache/webdav) = 0.7.4
|
||||
|
||||
%description -n %{name}+all-devel %{_description}
|
||||
|
||||
@@ -104,6 +112,9 @@ use the "all" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+azure-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/azure) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+azure-devel %{_description}
|
||||
|
||||
@@ -116,6 +127,9 @@ use the "azure" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+dist-client-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/dist-client) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+dist-client-devel %{_description}
|
||||
|
||||
@@ -124,10 +138,13 @@ use the "dist-client" feature of the "%{crate}" crate.
|
||||
|
||||
%files -n %{name}+dist-client-devel
|
||||
%ghost %{crate_instdir}/Cargo.toml
|
||||
|
||||
%if %{with dist_server}
|
||||
%package -n %{name}+dist-server-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/dist-server) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+dist-server-devel %{_description}
|
||||
|
||||
@@ -140,6 +157,11 @@ use the "dist-server" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+dist-tests-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/dist-tests) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
Requires: crate(sccache/dist-client) = 0.7.4
|
||||
Requires: crate(sccache/dist-server) = 0.7.4
|
||||
|
||||
%description -n %{name}+dist-tests-devel %{_description}
|
||||
|
||||
@@ -148,10 +170,15 @@ use the "dist-tests" feature of the "%{crate}" crate.
|
||||
|
||||
%files -n %{name}+dist-tests-devel
|
||||
%ghost %{crate_instdir}/Cargo.toml
|
||||
|
||||
%endif
|
||||
%package -n %{name}+flate2-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/flate2) = 0.7.4
|
||||
Requires: (crate(flate2) >= 1.0.0 with crate(flate2) < 2.0.0~)
|
||||
Requires: (crate(flate2/rust_backend) >= 1.0.0 with crate(flate2/rust_backend) < 2.0.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+flate2-devel %{_description}
|
||||
|
||||
@@ -164,6 +191,9 @@ use the "flate2" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+gcs-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/gcs) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+gcs-devel %{_description}
|
||||
|
||||
@@ -176,6 +206,10 @@ use the "gcs" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+gha-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/gha) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
Requires: crate(sccache/opendal) = 0.7.4
|
||||
|
||||
%description -n %{name}+gha-devel %{_description}
|
||||
|
||||
@@ -185,21 +219,14 @@ 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
|
||||
Provides: crate(sccache/hyper) = 0.7.4
|
||||
Requires: (crate(hyper/default) >= 0.14.27 with crate(hyper/default) < 0.15.0~)
|
||||
Requires: (crate(hyper/server) >= 0.14.27 with crate(hyper/server) < 0.15.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+hyper-devel %{_description}
|
||||
|
||||
@@ -209,21 +236,13 @@ 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
|
||||
Provides: crate(sccache/jwt) = 0.7.4
|
||||
Requires: (crate(jsonwebtoken/default) >= 8.0.0 with crate(jsonwebtoken/default) < 9.0.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+jwt-devel %{_description}
|
||||
|
||||
@@ -236,6 +255,10 @@ use the "jwt" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+libmount-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/libmount) = 0.7.4
|
||||
Requires: (crate(libmount/default) >= 0.1.10 with crate(libmount/default) < 0.2.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+libmount-devel %{_description}
|
||||
|
||||
@@ -248,6 +271,11 @@ use the "libmount" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+memcached-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/memcached) = 0.7.4
|
||||
Requires: (crate(opendal/default) >= 0.40.0 with crate(opendal/default) < 0.41.0~)
|
||||
Requires: (crate(opendal/services-memcached) >= 0.40.0 with crate(opendal/services-memcached) < 0.41.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+memcached-devel %{_description}
|
||||
|
||||
@@ -260,6 +288,9 @@ use the "memcached" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+native-zlib-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/native-zlib) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+native-zlib-devel %{_description}
|
||||
|
||||
@@ -272,6 +303,10 @@ use the "native-zlib" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+nix-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/nix) = 0.7.4
|
||||
Requires: (crate(nix/default) >= 0.26.2 with crate(nix/default) < 0.27.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+nix-devel %{_description}
|
||||
|
||||
@@ -284,6 +319,10 @@ use the "nix" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+opendal-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/opendal) = 0.7.4
|
||||
Requires: (crate(opendal/default) >= 0.40.0 with crate(opendal/default) < 0.41.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+opendal-devel %{_description}
|
||||
|
||||
@@ -296,6 +335,10 @@ use the "opendal" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+openssl-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/openssl) = 0.7.4
|
||||
Requires: (crate(openssl/default) >= 0.10.55 with crate(openssl/default) < 0.11.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+openssl-devel %{_description}
|
||||
|
||||
@@ -305,21 +348,16 @@ 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
|
||||
Provides: crate(sccache/redis) = 0.7.4
|
||||
Requires: (crate(opendal/default) >= 0.40.0 with crate(opendal/default) < 0.41.0~)
|
||||
Requires: (crate(opendal/services-redis) >= 0.40.0 with crate(opendal/services-redis) < 0.41.0~)
|
||||
Requires: (crate(opendal/services-redis-rustls) >= 0.40.0 with crate(opendal/services-redis-rustls) < 0.41.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
Requires: crate(sccache/url) = 0.7.4
|
||||
|
||||
%description -n %{name}+redis-devel %{_description}
|
||||
|
||||
@@ -332,6 +370,10 @@ use the "redis" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+reqsign-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/reqsign) = 0.7.4
|
||||
Requires: (crate(reqsign/default) >= 0.14.1 with crate(reqsign/default) < 0.15.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+reqsign-devel %{_description}
|
||||
|
||||
@@ -344,6 +386,15 @@ use the "reqsign" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+reqwest-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/reqwest) = 0.7.4
|
||||
Requires: (crate(reqwest/blocking) >= 0.11.0 with crate(reqwest/blocking) < 0.12.0~)
|
||||
Requires: (crate(reqwest/default) >= 0.11.0 with crate(reqwest/default) < 0.12.0~)
|
||||
Requires: (crate(reqwest/json) >= 0.11.0 with crate(reqwest/json) < 0.12.0~)
|
||||
Requires: (crate(reqwest/rustls-tls) >= 0.11.0 with crate(reqwest/rustls-tls) < 0.12.0~)
|
||||
Requires: (crate(reqwest/stream) >= 0.11.0 with crate(reqwest/stream) < 0.12.0~)
|
||||
Requires: (crate(reqwest/trust-dns) >= 0.11.0 with crate(reqwest/trust-dns) < 0.12.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+reqwest-devel %{_description}
|
||||
|
||||
@@ -356,6 +407,11 @@ use the "reqwest" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+rouille-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/rouille) = 0.7.4
|
||||
Requires: (crate(rouille) >= 3.6.0 with crate(rouille) < 4.0.0~)
|
||||
Requires: (crate(rouille/ssl) >= 3.6.0 with crate(rouille/ssl) < 4.0.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+rouille-devel %{_description}
|
||||
|
||||
@@ -368,6 +424,11 @@ use the "rouille" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+s3-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/s3) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
Requires: crate(sccache/opendal) = 0.7.4
|
||||
Requires: crate(sccache/reqsign) = 0.7.4
|
||||
|
||||
%description -n %{name}+s3-devel %{_description}
|
||||
|
||||
@@ -380,6 +441,10 @@ use the "s3" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+sha2-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/sha2) = 0.7.4
|
||||
Requires: (crate(sha2/default) >= 0.10.6 with crate(sha2/default) < 0.11.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+sha2-devel %{_description}
|
||||
|
||||
@@ -392,6 +457,10 @@ use the "sha2" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+syslog-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/syslog) = 0.7.4
|
||||
Requires: (crate(syslog/default) >= 6.0.0 with crate(syslog/default) < 7.0.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+syslog-devel %{_description}
|
||||
|
||||
@@ -401,9 +470,29 @@ use the "syslog" feature of the "%{crate}" crate.
|
||||
%files -n %{name}+syslog-devel
|
||||
%ghost %{crate_instdir}/Cargo.toml
|
||||
|
||||
%{dnl ## BEGIN: multiline comment
|
||||
%package -n %{name}+trust-dns-resolver-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/trust-dns-resolver) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+trust-dns-resolver-devel %{_description}
|
||||
|
||||
This package contains library source intended for building other packages which
|
||||
use the "trust-dns-resolver" feature of the "%{crate}" crate.
|
||||
|
||||
%files -n %{name}+trust-dns-resolver-devel
|
||||
%ghost %{crate_instdir}/Cargo.toml
|
||||
} ## END OF multiline comment
|
||||
|
||||
%package -n %{name}+unstable-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/unstable) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+unstable-devel %{_description}
|
||||
|
||||
@@ -416,6 +505,10 @@ use the "unstable" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+url-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/url) = 0.7.4
|
||||
Requires: (crate(url/default) >= 2.0.0 with crate(url/default) < 3.0.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+url-devel %{_description}
|
||||
|
||||
@@ -428,6 +521,9 @@ use the "url" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+vendored-openssl-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/vendored-openssl) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+vendored-openssl-devel %{_description}
|
||||
|
||||
@@ -440,6 +536,10 @@ use the "vendored-openssl" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+version-compare-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/version-compare) = 0.7.4
|
||||
Requires: (crate(version-compare/default) >= 0.1.1 with crate(version-compare/default) < 0.2.0~)
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
|
||||
%description -n %{name}+version-compare-devel %{_description}
|
||||
|
||||
@@ -452,6 +552,10 @@ use the "version-compare" feature of the "%{crate}" crate.
|
||||
%package -n %{name}+webdav-devel
|
||||
Summary: %{summary}
|
||||
BuildArch: noarch
|
||||
Provides: crate(sccache/webdav) = 0.7.4
|
||||
Requires: cargo
|
||||
Requires: crate(sccache) = 0.7.4
|
||||
Requires: crate(sccache/opendal) = 0.7.4
|
||||
|
||||
%description -n %{name}+webdav-devel %{_description}
|
||||
|
||||
@@ -474,7 +578,6 @@ use the "webdav" feature of the "%{crate}" crate.
|
||||
%endif
|
||||
|
||||
%install
|
||||
rm -rf .git || true
|
||||
%if %{with dist_server}
|
||||
%cargo_install -f dist-server
|
||||
%else
|
||||
@@ -0,0 +1,14 @@
|
||||
--- sccache-0.7.6/Cargo.toml 1970-01-01T00:00:01+00:00
|
||||
+++ sccache-0.7.6/Cargo.toml 2024-02-02T06:05:53.548100+00:00
|
||||
@@ -378,11 +378,3 @@
|
||||
[target."cfg(unix)".dependencies.daemonize]
|
||||
version = "0.5"
|
||||
|
||||
-[target."cfg(windows)".dependencies.winapi]
|
||||
-version = "0.3"
|
||||
-features = [
|
||||
- "fileapi",
|
||||
- "handleapi",
|
||||
- "stringapiset",
|
||||
- "winnls",
|
||||
-]
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
Name: vencord-desktop
|
||||
Provides: VencordDesktop = %{version}-%{release}
|
||||
Version: 1.5.4
|
||||
Version: 1.5.3
|
||||
Release: 1%?dist
|
||||
License: GPL-3.0
|
||||
Summary: Vesktop is a cross platform desktop app aiming to give you a snappier Discord experience with Vencord pre-installed
|
||||
|
||||
@@ -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"
|
||||
}
|
||||
|
||||
@@ -1 +1,5 @@
|
||||
rpm.version(gh("VOICEVOX/voicevox"));
|
||||
let v = gh("VOICEVOX/voicevox");
|
||||
rpm.global("ver", v);
|
||||
let engines = get(`https://raw.githubusercontent.com/VOICEVOX/voicevox/${v}/package.json`).json().engines;
|
||||
rpm.global("nodev", find(">=([\\d.]+)", engines.node, 1));
|
||||
rpm.global("npmv", find(">=([\\d.]+)", engines.npm, 1));
|
||||
|
||||
@@ -1,29 +1,28 @@
|
||||
%global nodev 20.12.2
|
||||
%global npmv 10.5.0
|
||||
%global ver 0.19.2
|
||||
%define debug_package %nil
|
||||
%global _build_id_links none
|
||||
|
||||
# do not strip binaries
|
||||
%define __strip /bin/true
|
||||
|
||||
# do not perform compression in cpio
|
||||
%define _source_payload w0.ufdio
|
||||
%define _binary_payload w19.zstdio
|
||||
|
||||
# Exclude private libraries
|
||||
%global __requires_exclude libffmpeg.so
|
||||
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
|
||||
|
||||
Name: voicevox
|
||||
Version: 0.22.3
|
||||
Release: 1%?dist
|
||||
Version: %ver
|
||||
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
|
||||
Packager: madonuko <mado@fyralabs.com>
|
||||
BuildRequires: p7zip-plugins
|
||||
ExclusiveArch: x86_64
|
||||
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.
|
||||
@@ -35,28 +34,33 @@ Summary: Documentation files for voicevox (Japanese)
|
||||
%summary.
|
||||
|
||||
%prep
|
||||
cat<<EOF > voicevox.sh
|
||||
#!/usr/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
|
||||
%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
|
||||
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
|
||||
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
|
||||
%_bindir/voicevox
|
||||
%_datadir/applications/voicevox.desktop
|
||||
%_datadir/voicevox/VOICEVOX.AppImage
|
||||
%_iconsdir/hicolor/256x256/apps/voicevox.png
|
||||
%doc README.md
|
||||
%license LICENSE LGPL_LICENSE
|
||||
%_bindir/%name
|
||||
%_datadir/%name/
|
||||
|
||||
%files doc
|
||||
%doc %_docdir/%name/
|
||||
|
||||
%changelog
|
||||
%autochangelog
|
||||
|
||||
@@ -1,50 +0,0 @@
|
||||
Name: WoeUSB-ng
|
||||
Version: 0.2.12
|
||||
Release: 1%?dist
|
||||
Summary: Simple tool that enable you to create your own usb stick with Windows installer
|
||||
License: GPL-3.0-only
|
||||
Requires: parted dosfstools ntfsprogs p7zip p7zip-plugins xdg-utils grub2-tools
|
||||
URL: https://github.com/WoeUSB/WoeUSB-ng
|
||||
Source: https://github.com/WoeUSB/WoeUSB-ng/archive/refs/tags/v%version.tar.gz
|
||||
Patch0: https://patch-diff.githubusercontent.com/raw/WoeUSB/WoeUSB-ng/pull/79.patch
|
||||
BuildArch: noarch
|
||||
BuildRequires: python3-devel python3-installer
|
||||
|
||||
%global _description %{expand:
|
||||
WoeUSB-ng is a simple tool that enable you to create your own usb stick windows installer from an iso image or a real DVD. This is a rewrite of original WoeUSB.}
|
||||
|
||||
%description %_description
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
|
||||
%generate_buildrequires
|
||||
%pyproject_buildrequires
|
||||
|
||||
|
||||
%build
|
||||
%pyproject_wheel
|
||||
|
||||
|
||||
%install
|
||||
%pyproject_install
|
||||
%pyproject_save_files WoeUSB
|
||||
install -Dpm644 miscellaneous/WoeUSB-ng.desktop %buildroot%_datadir/applications/WoeUSB-ng.desktop
|
||||
install -Dpm644 miscellaneous/com.github.woeusb.woeusb-ng.policy %buildroot%_datadir/polkit-1/actions/com.github.woeusb.woeusb-ng.policy
|
||||
|
||||
|
||||
%check
|
||||
#pyproject_check_import
|
||||
|
||||
|
||||
%files -f %{pyproject_files}
|
||||
%_bindir/woeusb
|
||||
%_bindir/woeusbgui
|
||||
%_datadir/applications/WoeUSB-ng.desktop
|
||||
%_iconsdir/hicolor/scalable/apps/woeusb-logo.png
|
||||
%_datadir/polkit-1/actions/com.github.woeusb.woeusb-ng.policy
|
||||
|
||||
|
||||
%changelog
|
||||
%autochangelog
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "WoeUSB-ng.spec"
|
||||
}
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh_tag("WoeUSB/WoeUSB-ng"));
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "youtube-music.spec"
|
||||
}
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(gh("th-ch/youtube-music"));
|
||||
@@ -1,10 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Name=YouTube Music
|
||||
Exec=/usr/bin/youtube-music --no-sandbox %U
|
||||
TryExec=/usr/bin/youtube-music
|
||||
Icon=youtube-music
|
||||
Terminal=false
|
||||
Type=Application
|
||||
StartupWMClass=YouTube Music
|
||||
Comment=YouTube Music Desktop App - including custom plugins
|
||||
Categories=AudioVideo;
|
||||
@@ -1,91 +0,0 @@
|
||||
%define debug_package %nil
|
||||
|
||||
|
||||
# macro shorthand for calling pnpm
|
||||
%global pnpm npx pnpm@%{pnpm_version}
|
||||
|
||||
Name: youtube-music
|
||||
Version: 3.7.1
|
||||
Release: 1%?dist
|
||||
Summary: YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)
|
||||
Source1: youtube-music.desktop
|
||||
License: MIT
|
||||
URL: https://github.com/th-ch/youtube-music
|
||||
Packager: Cappy Ishihara <cappy@fyralabs.com>
|
||||
|
||||
# For some unknown reason, PNPM is not working with Node.js 22 on Aarch64 devices.
|
||||
# todo: investigate why
|
||||
#ExclusiveArch: x86_64
|
||||
|
||||
BuildRequires: git-core gcc make
|
||||
# Required for usocket native module built with node-gyp
|
||||
BuildRequires: python3 gcc-c++
|
||||
|
||||
%description
|
||||
YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)
|
||||
|
||||
|
||||
%prep
|
||||
rm -rf ./*
|
||||
git clone --recursive %{url} .
|
||||
git checkout v%{version}
|
||||
|
||||
|
||||
|
||||
%build
|
||||
# Vendor PNPM directly instead of installing from packages, because we need to somehow force PNPM to use Node.js 20
|
||||
# We are not using Fedora's PNPM because we need to use `pnpm env`, which PNPM does not support when not vendored directly from upstream
|
||||
curl -fsSL https://get.pnpm.io/install.sh | sh -
|
||||
source /builddir/.bashrc
|
||||
pnpm env use --global 20
|
||||
pnpm install
|
||||
pnpm build
|
||||
pnpm electron-builder --linux --dir
|
||||
|
||||
|
||||
|
||||
%install
|
||||
|
||||
# Install assets
|
||||
install -d -m 0755 %{buildroot}%{_datadir}/icons/hicolor/1024x1024/apps
|
||||
install -d -m 0755 %{buildroot}%{_datadir}/icons/hicolor/scalable/apps
|
||||
|
||||
# Copy icon files
|
||||
ls -laR pack
|
||||
%ifarch aarch64
|
||||
pushd pack/linux-arm64-unpacked/resources/app.asar.unpacked/assets
|
||||
%else
|
||||
pushd pack/linux-unpacked/resources/app.asar.unpacked/assets
|
||||
%endif
|
||||
install -m 0644 youtube-music.png %{buildroot}%{_datadir}/icons/hicolor/1024x1024/apps/youtube-music.png
|
||||
install -m 0644 youtube-music.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/youtube-music.svg
|
||||
install -m 0644 youtube-music-tray-paused.png %{buildroot}%{_datadir}/icons/hicolor/1024x1024/apps/youtube-music-tray-paused.png
|
||||
install -m 0644 youtube-music-tray.png %{buildroot}%{_datadir}/icons/hicolor/1024x1024/apps/youtube-music-tray.png
|
||||
popd
|
||||
|
||||
# Actually install the app
|
||||
|
||||
install -d -m 0755 %{buildroot}%{_datadir}/youtube-music
|
||||
# Delete unpacked asar files before copying
|
||||
rm -rfv pack/linux*-unpacked/resources/app.asar.unpacked
|
||||
cp -rv pack/linux*-unpacked/* %{buildroot}%{_datadir}/youtube-music
|
||||
install -d -m 0755 %{buildroot}%{_bindir}
|
||||
ln -svf %{_datadir}/youtube-music/youtube-music %{buildroot}%{_bindir}/youtube-music
|
||||
|
||||
# Install desktop file
|
||||
install -D -m 0644 %{SOURCE1} %{buildroot}%{_datadir}/applications/youtube-music.desktop
|
||||
|
||||
%files
|
||||
%license license
|
||||
%doc README.md
|
||||
%doc docs
|
||||
%{_bindir}/youtube-music
|
||||
%{_datadir}/youtube-music
|
||||
%{_datadir}/icons/hicolor/*/apps/youtube-music*
|
||||
%{_datadir}/applications/youtube-music.desktop
|
||||
|
||||
|
||||
|
||||
%changelog
|
||||
* Sat Aug 03 2024 Cappy Ishihara <cappy@cappuchino.xyz>
|
||||
- Initial Release
|
||||
@@ -1,43 +0,0 @@
|
||||
From e351a28f9a5e2b50bbec938f001a753d418fe39b Mon Sep 17 00:00:00 2001
|
||||
From: everyx <lunt.luo@gmail.com>
|
||||
Date: Tue, 24 Dec 2024 13:40:52 +0800
|
||||
Subject: [PATCH 1/3] fix desktop
|
||||
|
||||
---
|
||||
AppDir/zen.desktop | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/AppDir/zen.desktop b/AppDir/zen.desktop
|
||||
index 4a79413..1d5521c 100644
|
||||
--- a/AppDir/zen.desktop
|
||||
+++ b/AppDir/zen.desktop
|
||||
@@ -1,8 +1,8 @@
|
||||
[Desktop Entry]
|
||||
Name=Zen Browser
|
||||
Comment=Experience tranquillity while browsing the web without people tracking you!
|
||||
-Exec=zen %u
|
||||
-Icon=zen
|
||||
+Exec=/usr/lib/zen-browser/zen %u
|
||||
+Icon=zen-browser
|
||||
Type=Application
|
||||
MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;application/x-xpinstall;application/pdf;application/json;
|
||||
StartupWMClass=zen-beta
|
||||
@@ -15,12 +15,12 @@ Actions=new-window;new-private-window;profilemanager;
|
||||
|
||||
[Desktop Action new-window]
|
||||
Name=Open a New Window
|
||||
-Exec=zen %u
|
||||
+Exec=/usr/lib/zen-browser/zen %u
|
||||
|
||||
[Desktop Action new-private-window]
|
||||
Name=Open a New Private Window
|
||||
-Exec=zen --private-window %u
|
||||
+Exec=/usr/lib/zen-browser/zen --private-window %u
|
||||
|
||||
[Desktop Action profilemanager]
|
||||
Name=Open the Profile Manager
|
||||
-Exec=zen --ProfileManager %u
|
||||
+Exec=/usr/lib/zen-browser/zen --ProfileManager %u
|
||||
--
|
||||
2.47.1
|
||||
|
||||
@@ -1,39 +0,0 @@
|
||||
From e0581daf3013acfcc2d14e375cf7bc6734f11a9f Mon Sep 17 00:00:00 2001
|
||||
From: everyx <lunt.luo@gmail.com>
|
||||
Date: Tue, 24 Dec 2024 13:42:16 +0800
|
||||
Subject: [PATCH 2/3] download lang packs withou git clone
|
||||
|
||||
---
|
||||
scripts/download-language-packs.sh | 12 ++++++------
|
||||
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/scripts/download-language-packs.sh b/scripts/download-language-packs.sh
|
||||
index 7fa7047..ca8d00e 100644
|
||||
--- a/scripts/download-language-packs.sh
|
||||
+++ b/scripts/download-language-packs.sh
|
||||
@@ -1,16 +1,16 @@
|
||||
|
||||
-set -ex
|
||||
+# set -ex
|
||||
|
||||
CURRENT_DIR=$(pwd)
|
||||
|
||||
-git config --global init.defaultBranch main
|
||||
-git config --global fetch.prune true
|
||||
+# git config --global init.defaultBranch main
|
||||
+# git config --global fetch.prune true
|
||||
|
||||
cd $CURRENT_DIR
|
||||
|
||||
-cd ./l10n
|
||||
-git clone https://github.com/mozilla-l10n/firefox-l10n
|
||||
-cd $CURRENT_DIR
|
||||
+# cd ./l10n
|
||||
+# git clone https://github.com/mozilla-l10n/firefox-l10n
|
||||
+# cd $CURRENT_DIR
|
||||
|
||||
update_language() {
|
||||
langId=$1
|
||||
--
|
||||
2.47.1
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
From 9151fb64184efae829f0acf4c6dd1a632dff3b65 Mon Sep 17 00:00:00 2001
|
||||
From: everyx <lunt.luo@gmail.com>
|
||||
Date: Tue, 24 Dec 2024 13:43:04 +0800
|
||||
Subject: [PATCH 3/3] donnot disable system extensions
|
||||
|
||||
---
|
||||
...ble-extensions-in-system-directories.patch | 21 +++++++++++++++++++
|
||||
1 file changed, 21 insertions(+)
|
||||
create mode 100644 src/browser/app/profile/Don-t-auto-disable-extensions-in-system-directories.patch
|
||||
|
||||
diff --git a/src/browser/app/profile/Don-t-auto-disable-extensions-in-system-directories.patch b/src/browser/app/profile/Don-t-auto-disable-extensions-in-system-directories.patch
|
||||
new file mode 100644
|
||||
index 0000000..544fe6f
|
||||
--- /dev/null
|
||||
+++ b/src/browser/app/profile/Don-t-auto-disable-extensions-in-system-directories.patch
|
||||
@@ -0,0 +1,21 @@
|
||||
+From: Mike Hommey <mh@glandium.org>
|
||||
+Date: Fri, 17 Feb 2012 17:47:15 +0100
|
||||
+Subject: Don't auto-disable extensions in system directories
|
||||
+
|
||||
+---
|
||||
+ browser/app/profile/firefox.js | 2 +-
|
||||
+ 1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
+
|
||||
+diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
|
||||
+index 5066b56..964b931 100644
|
||||
+--- a/browser/app/profile/firefox.js
|
||||
++++ b/browser/app/profile/firefox.js
|
||||
+@@ -56,7 +56,7 @@ pref("extensions.systemAddon.update.enabled", true);
|
||||
+
|
||||
+ // Disable add-ons that are not installed by the user in all scopes by default.
|
||||
+ // See the SCOPE constants in AddonManager.sys.mjs for values to use here.
|
||||
+-pref("extensions.autoDisableScopes", 15);
|
||||
++pref("extensions.autoDisableScopes", 3);
|
||||
+ // Scopes to scan for changes at startup.
|
||||
+ pref("extensions.startupScanScopes", 0);
|
||||
+
|
||||
--
|
||||
2.47.1
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
diff --git a/python/mozboot/mozboot/bootstrap.py b/python/mozboot/mozboot/bootstrap.py
|
||||
index df3f39f548..0e3e454d63 100644
|
||||
--- a/python/mozboot/mozboot/bootstrap.py
|
||||
+++ b/python/mozboot/mozboot/bootstrap.py
|
||||
@@ -281,7 +281,7 @@ class Bootstrapper(object):
|
||||
full_distribution_name=False
|
||||
)
|
||||
|
||||
- if dist_id in FEDORA_DISTROS:
|
||||
+ if True:
|
||||
cls = CentOSFedoraBootstrapper
|
||||
args["distro"] = dist_id
|
||||
elif dist_id in DEBIAN_DISTROS:
|
||||
@@ -1,27 +0,0 @@
|
||||
*** engine/python/mozboot/mozboot/bootstrap.py 2025-01-04 18:11:05.917961573 +0800
|
||||
--- engine/python/mozboot/mozboot/bootstrap.py 2025-01-04 18:12:07.050496890 +0800
|
||||
***************
|
||||
*** 645,666 ****
|
||||
self._write_default_mozconfig(raw_mozconfig)
|
||||
|
||||
def _validate_python_environment(self, topsrcdir):
|
||||
- valid = True
|
||||
- pip3 = to_optional_path(which("pip3"))
|
||||
- if not pip3:
|
||||
- print("ERROR: Could not find pip3.", file=sys.stderr)
|
||||
- self.instance.suggest_install_pip3()
|
||||
- valid = False
|
||||
- if not valid:
|
||||
- print(
|
||||
- "ERROR: Your Python installation will not be able to run "
|
||||
- "`mach bootstrap`. `mach bootstrap` cannot maintain your "
|
||||
- "Python environment for you; fix the errors shown here, and "
|
||||
- "then re-run `mach bootstrap`.",
|
||||
- file=sys.stderr,
|
||||
- )
|
||||
- sys.exit(1)
|
||||
-
|
||||
mach_site = MachSiteManager.from_environment(
|
||||
topsrcdir,
|
||||
lambda: os.path.normpath(get_state_dir(True, topsrcdir=topsrcdir)),
|
||||
--- 645,650 ----
|
||||
@@ -1,71 +0,0 @@
|
||||
diff --git a/python/mozboot/mozboot/centosfedora.py b/python/mozboot/mozboot/centosfedora.py
|
||||
index 37aa0e8eaa..76ce818fce 100644
|
||||
--- a/python/mozboot/mozboot/centosfedora.py
|
||||
+++ b/python/mozboot/mozboot/centosfedora.py
|
||||
@@ -19,62 +19,13 @@ class CentOSFedoraBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
self.dist_id = dist_id
|
||||
|
||||
def install_packages(self, packages):
|
||||
- if self.version >= 33 and "perl" in packages:
|
||||
- packages.append("perl-FindBin")
|
||||
- # watchman is not available on centos/rocky
|
||||
- if self.distro in ("centos", "rocky", "oracle"):
|
||||
- packages = [p for p in packages if p != "watchman"]
|
||||
- self.dnf_install(*packages)
|
||||
+ pass
|
||||
|
||||
def upgrade_mercurial(self, current):
|
||||
- if current is None:
|
||||
- self.dnf_install("mercurial")
|
||||
- else:
|
||||
- self.dnf_update("mercurial")
|
||||
+ pass
|
||||
|
||||
def dnf_install(self, *packages):
|
||||
- if which("dnf"):
|
||||
-
|
||||
- def not_installed(package):
|
||||
- # We could check for "Error: No matching Packages to list", but
|
||||
- # checking `dnf`s exit code is sufficent.
|
||||
- # Ideally we'd invoke dnf with '--cacheonly', but there's:
|
||||
- # https://bugzilla.redhat.com/show_bug.cgi?id=2030255
|
||||
- is_installed = subprocess.run(
|
||||
- ["dnf", "list", "--installed", package],
|
||||
- stdout=subprocess.PIPE,
|
||||
- stderr=subprocess.STDOUT,
|
||||
- )
|
||||
- if is_installed.returncode not in [0, 1]:
|
||||
- stdout = is_installed.stdout
|
||||
- raise Exception(
|
||||
- f'Failed to determine whether package "{package}" is installed: "{stdout}"'
|
||||
- )
|
||||
- return is_installed.returncode != 0
|
||||
-
|
||||
- packages = list(filter(not_installed, packages))
|
||||
- if len(packages) == 0:
|
||||
- # avoid sudo prompt (support unattended re-bootstrapping)
|
||||
- return
|
||||
-
|
||||
- command = ["dnf", "install"]
|
||||
- else:
|
||||
- command = ["yum", "install"]
|
||||
-
|
||||
- if self.no_interactive:
|
||||
- command.append("-y")
|
||||
- command.extend(packages)
|
||||
-
|
||||
- self.run_as_root(command)
|
||||
+ pass
|
||||
|
||||
def dnf_update(self, *packages):
|
||||
- if which("dnf"):
|
||||
- command = ["dnf", "update"]
|
||||
- else:
|
||||
- command = ["yum", "update"]
|
||||
-
|
||||
- if self.no_interactive:
|
||||
- command.append("-y")
|
||||
- command.extend(packages)
|
||||
-
|
||||
- self.run_as_root(command)
|
||||
+ pass
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "zen-browser.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,242 +0,0 @@
|
||||
# ? https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=zen-browser
|
||||
# ? https://github.com/zen-browser/desktop/blob/dev/.github/workflows/linux-release-build.yml
|
||||
|
||||
%global ver 1.0.2-b.5
|
||||
%global ff_l10n_commit 78f030ac17c17fdbf66b212ec7b11b3c7291a7da
|
||||
%global ff_ver 133.0.3
|
||||
%global langs (zh-CN zh-TW ja)
|
||||
|
||||
Name: zen-browser
|
||||
Version: %(echo %ver | sed 's/-/./g')
|
||||
Release: 1%?dist
|
||||
Summary: Experience tranquillity while browsing the web without people tracking you
|
||||
License: MPL-2.0
|
||||
URL: https://zen-browser.app
|
||||
%dnl Source0: https://github.com/zen-browser/desktop/archive/refs/tags/%ver.tar.gz
|
||||
Source1: https://github.com/mozilla-l10n/firefox-l10n/archive/%ff_l10n_commit.tar.gz
|
||||
Source2: https://archive.mozilla.org/pub/firefox/releases/%ff_ver/source/firefox-%ff_ver.source.tar.xz
|
||||
Patch1: 0001-fix-desktop.zen.patch
|
||||
Patch2: 0002-download-lang-packs-withou-git-clone.zen.patch
|
||||
Patch3: 0003-do-not-disable-system-extensions.zen.patch
|
||||
Patch4: 0004-assume-fedora.zen.patch
|
||||
Patch5: 0005-pip3.zen.patch
|
||||
Patch6: 0006-no-dnf-yum.zen.patch
|
||||
Packager: madonuko <mado@fyralabs.com>
|
||||
BuildRequires: git anda-srpm-macros vips-devel nodejs-npm nodejs
|
||||
BuildRequires: ncurses-devel ncurses
|
||||
BuildRequires: rsync cbindgen clang-devel clang diffutils imake mold llvm llvm-devel nasm
|
||||
BuildRequires: wasi-libc-devel yasm
|
||||
BuildRequires: xorg-x11-server-Xvfb dbus-daemon
|
||||
BuildRequires: findutils libxml2 m4 make perl perl-FindBin
|
||||
BuildRequires: pkgconfig(alsa)
|
||||
BuildRequires: pkgconfig(jack)
|
||||
BuildRequires: pkgconfig(libpulse)
|
||||
BuildRequires: pkgconfig(nspr)
|
||||
|
||||
%description
|
||||
%summary.
|
||||
|
||||
%{lua:
|
||||
function mysplit(inputstr, sep)
|
||||
if sep == nil then
|
||||
sep = "%s"
|
||||
end
|
||||
local t = {}
|
||||
for str in string.gmatch(inputstr, "([^"..sep.."]+)") do
|
||||
table.insert(t, str)
|
||||
end
|
||||
return t
|
||||
end
|
||||
|
||||
local slangs = rpm.expand("%langs")
|
||||
local langs = mysplit(slangs:sub(2, (#slangs)-1), " ")
|
||||
for k, lang in pairs(langs) do
|
||||
print("%package langpack-" .. lang .. "\n")
|
||||
print("Summary: Language pack for Zen Browser ("..lang..")\n")
|
||||
print(rpm.expand("Requires: zen-browser = %version-%release\n"))
|
||||
print(rpm.expand("Supplements: langpacks-"..lang:gsub("-", "_").." = %version-%release\n\n"))
|
||||
print("BuildArch: noarch\n")
|
||||
print("%description langpack-"..lang.."\n")
|
||||
print("Language pack for Zen Browser ("..lang..")\n\n")
|
||||
print("%files langpack-"..lang.."\n")
|
||||
print("/usr/lib/zen/browser/extensions/langpack-"..lang.."@firefox.mozilla.org.xpi\n")
|
||||
end
|
||||
}
|
||||
|
||||
%prep
|
||||
%git_clone https://github.com/zen-browser/desktop %ver
|
||||
git config user.name "Raboneko"
|
||||
git config user.email "raboneko@fyralabs.com"
|
||||
git config --add safe.directory $(pwd)/..
|
||||
export MOZBUILD_STATE_PATH=$(pwd)/.mozbuild
|
||||
# I don't know why but it seems like we need to use this
|
||||
# or else it would use another python version
|
||||
export PYENV_ROOT="$(pwd)/.pyenv"
|
||||
export PATH="$PYENV_ROOT/bin:$PATH"
|
||||
export PYENV_VERSION=3.11
|
||||
curl https://pyenv.run | bash
|
||||
pyenv install $PYENV_VERSION
|
||||
eval "$(pyenv init -)"
|
||||
tar xf %{S:1}
|
||||
rm -rf l10n/firefox-l10n
|
||||
mv firefox-l10n-%ff_l10n_commit firefox-l10n
|
||||
mv firefox-l10n l10n/
|
||||
%autopatch -p1 -M3
|
||||
# use the --enable-jack option to keep in sync with the official repository of Firefox
|
||||
sed -i 's/--enable-pulseaudio/--enable-jack/g' configs/linux/mozconfig
|
||||
|
||||
# prepare deps
|
||||
yes | npx pnpm config set store-dir $(pwd)/pnpm-store
|
||||
npx pnpm i --frozen-lockfile
|
||||
|
||||
npx pnpm surfer ci --brand beta --display-version %ver
|
||||
install -Dvm644 %SOURCE2 -t ./.surfer/engine
|
||||
npx pnpm surfer download
|
||||
npx pnpm surfer import
|
||||
|
||||
# bootstrap
|
||||
%patch 5
|
||||
cd engine
|
||||
%patch 4 -p1
|
||||
%patch 6 -p1
|
||||
export SURFER_PLATFORM="linux"
|
||||
git commit -a -m "tmp"
|
||||
|
||||
python3.11 -m ensurepip
|
||||
python3.11 ./mach --no-interactive bootstrap --application-choice browser
|
||||
cd ..
|
||||
|
||||
%build
|
||||
export PATH="$PATH:$(pwd)/bin/"
|
||||
export SURFER_PLATFORM="linux"
|
||||
export MOZBUILD_STATE_PATH=$(pwd)/.mozbuild
|
||||
cat > mozconfig <<END
|
||||
# # sccache
|
||||
# mk_add_options 'export RUSTC_WRAPPER=sccache'
|
||||
# mk_add_options 'export CCACHE_CPP2=yes'
|
||||
# ac_add_options --with-ccache=sccache
|
||||
|
||||
# ac_add_options --enable-application=browser
|
||||
# Incompatible with surfer, disable this configuration
|
||||
mk_add_options MOZ_OBJDIR/%_builddir/desktop/obj
|
||||
|
||||
ac_add_options --prefix=%_prefix
|
||||
# ac_add_options --enable-release
|
||||
# ac_add_options --enable-hardening
|
||||
# ac_add_options --enable-optimize
|
||||
# ac_add_options --enable-rust-simd
|
||||
ac_add_options --enable-linker=mold
|
||||
# ac_add_options --disable-install-strip
|
||||
# ac_add_options --disable-elf-hack
|
||||
# It seems to be overwritten by surfer internal mozconfg, let's keep it for now
|
||||
ac_add_options --disable-bootstrap
|
||||
ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot
|
||||
|
||||
# Branding
|
||||
# ac_add_options --enable-official-branding
|
||||
# ac_add_options --enable-update-channel=release
|
||||
# ac_add_options --with-distribution-id=org.archlinux
|
||||
# ac_add_options --with-unsigned-addon-scopes=app,system
|
||||
ac_add_options --allow-addon-sideload
|
||||
# export MOZILLA_OFFICIAL=1
|
||||
export MOZ_APP_REMOTINGNAME=%name
|
||||
|
||||
# System libraries
|
||||
ac_add_options --with-system-nspr
|
||||
ac_add_options --with-system-nss
|
||||
|
||||
# Features
|
||||
# ac_add_options --enable-alsa
|
||||
# ac_add_options --enable-jack
|
||||
# ac_add_options --enable-crashreporter
|
||||
ac_add_options --disable-updater
|
||||
# ac_add_options --disable-tests
|
||||
END
|
||||
|
||||
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=pip
|
||||
export MOZBUILD_STATE_PATH="$(pwd)/mozbuild"
|
||||
MOZ_BUILD_DATE="$(date -u${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH} +%%Y%%m%%d%%H%%M%%S)"
|
||||
export MOZ_BUILD_DATE
|
||||
# export MOZ_BUILD_PRIORITY=normal
|
||||
export MOZ_NOSPAM=1
|
||||
# malloc_usable_size is used in various parts of the codebase
|
||||
CFLAGS="${CFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
|
||||
CXXFLAGS="${CXXFLAGS/_FORTIFY_SOURCE=3/_FORTIFY_SOURCE=2}"
|
||||
|
||||
# Breaks compilation since https://bugzilla.mozilla.org/show_bug.cgi?id=1896066
|
||||
CFLAGS="${CFLAGS/-fexceptions/}"
|
||||
CXXFLAGS="${CXXFLAGS/-fexceptions/}"
|
||||
|
||||
# LTO needs more open files
|
||||
ulimit -n 4096
|
||||
|
||||
export PYENV_ROOT="$(pwd)/.pyenv"
|
||||
export PATH="$PYENV_ROOT/bin:$PATH"
|
||||
export PYENV_VERSION=3.11
|
||||
eval "$(pyenv init -)"
|
||||
export SURFER_COMPAT="$CARCH"
|
||||
export SURFER_PLATFORM=linux
|
||||
export ZEN_RELEASE=1
|
||||
|
||||
npx pnpm surfer bootstrap
|
||||
|
||||
dbus-run-session \
|
||||
xvfb-run -s "-screen 0 1920x1080x24 -nolisten local" \
|
||||
npx pnpm surfer build #--skip-patch-check
|
||||
|
||||
echo %ff_ver > engine/browser/config/version.txt
|
||||
_languages=%langs
|
||||
for _lang in "${_languages[@]}"; do
|
||||
python3.11 engine/mach build "merge-$_lang"
|
||||
python3.11 engine/mach build "langpack-$_lang"
|
||||
done
|
||||
|
||||
%install
|
||||
DESTDIR=%buildroot engine/mach install
|
||||
ln -srvf %buildroot/usr/lib/zen %buildroot/usr/lib/zen-bin
|
||||
ln -srvf %buildroot/usr/lib/zen %buildroot%_bindir/zen
|
||||
install -Dvm644 AppDir/distribution/*.json -t %buildroot/usr/lib/zen/distribution
|
||||
|
||||
export _vendorjs=%buildroot/usr/lib/zen/browser/defaults/preferences/vendor.js
|
||||
install -Dvm644 /dev/stdin "$_vendorjs" <<END
|
||||
// Use LANG environment variable to choose locale
|
||||
pref("intl.locale.requested", "");
|
||||
|
||||
// Use system-provided dictionaries
|
||||
pref("spellchecker.dictionary_path", "/usr/share/hunspell");
|
||||
|
||||
// Enable extensions in the application directory
|
||||
pref("extensions.autoDisableScopes", 11);
|
||||
|
||||
// TODO: Enable GNOME Shell search provider
|
||||
// pref("browser.gnome-search-provider.enabled", true);
|
||||
END
|
||||
|
||||
export _distini=%buildroot/usr/lib/zen/distribution/distribution.ini
|
||||
install -Dvm644 /dev/stdin "$_distini" <<END
|
||||
[Global]
|
||||
id=terra
|
||||
version=1.0
|
||||
about=Zen Browser (Terra)
|
||||
|
||||
[Preferences]
|
||||
app.distributor=terra
|
||||
app.distributor.channel=zen-browser
|
||||
END
|
||||
|
||||
for i in 16 32 48 64 128; do
|
||||
install -d %buildroot%_iconsdir/hicolor/${i}x${i}/apps
|
||||
ln -srvf \
|
||||
"%buildroot/usr/lib/zen/browser/chrome/icons/default/default${i}.png" \
|
||||
"%buildroot%_iconsdir/hicolor/${i}x${i}/apps/zen-browser.png"
|
||||
done
|
||||
install -Dm0644 docs/assets/zen-black.svg %buildroot%_iconsdir/hicolor/scalable/apps/%name.svg
|
||||
install -Dvm644 docs/assets/zen-black.svg %buildroot%_iconsdir/hicolor/symbolic/apps/%name-symbolic.svg
|
||||
|
||||
install -Dvm644 AppDir/*.desktop %buildroot%_datadir/applications/%name.desktop
|
||||
|
||||
_languages=%langs
|
||||
for _lang in "${_languages[@]}"; do
|
||||
install -Dvm644 obj/dist/linux-*/xpi/zen-%ff_ver.$_lang.langpack.xpi \
|
||||
"%buildroot/usr/lib/zen/browser/extensions/langpack-%_lang@firefox.mozilla.org.xpi"
|
||||
done
|
||||
@@ -1,114 +1,115 @@
|
||||
Name: budgie-extras
|
||||
Version: 1.8.0
|
||||
Release: 2%{?dist}
|
||||
Name: budgie-extras
|
||||
Version: 1.8.0
|
||||
Release: 1%{?dist}
|
||||
|
||||
License: GPL-3.0
|
||||
Summary: Additional Budgie Desktop enhancements for user experience
|
||||
URL: https://ubuntubudgie.org/
|
||||
License: GPL-3.0
|
||||
Summary: Additional Budgie Desktop enhancements for user experience
|
||||
URL: https://ubuntubudgie.org/
|
||||
|
||||
Source0: https://github.com/UbuntuBudgie/budgie-extras/releases/download/v%{version}/budgie-extras-%{version}.tar.xz
|
||||
Patch0: 0001-fix-weathershow-desktop-widget-icon-path.patch
|
||||
Source0: https://github.com/UbuntuBudgie/budgie-extras/releases/download/v%{version}/budgie-extras-%{version}.tar.xz
|
||||
Patch0: 0001-fix-weathershow-desktop-widget-icon-path.patch
|
||||
|
||||
BuildRequires: rpm_macro(fdupes)
|
||||
BuildRequires: cmake
|
||||
BuildRequires: meson
|
||||
BuildRequires: vala
|
||||
BuildRequires: intltool
|
||||
BuildRequires: rpm_macro(fdupes)
|
||||
BuildRequires: cmake
|
||||
BuildRequires: meson
|
||||
BuildRequires: vala
|
||||
BuildRequires: intltool
|
||||
|
||||
BuildRequires: pkgconfig(budgie-1.0)
|
||||
BuildRequires: pkgconfig(gee-0.8)
|
||||
BuildRequires: pkgconfig(gnome-settings-daemon)
|
||||
BuildRequires: pkgconfig(json-glib-1.0)
|
||||
BuildRequires: pkgconfig(keybinder-3.0)
|
||||
BuildRequires: pkgconfig(libgnome-menu-3.0)
|
||||
BuildRequires: pkgconfig(libnm)
|
||||
BuildRequires: pkgconfig(libnma)
|
||||
BuildRequires: pkgconfig(libnotify)
|
||||
BuildRequires: pkgconfig(libsoup-2.4)
|
||||
BuildRequires: pkgconfig(libwnck-3.0)
|
||||
BuildRequires: pkgconfig(budgie-1.0)
|
||||
BuildRequires: pkgconfig(gee-0.8)
|
||||
BuildRequires: pkgconfig(gnome-settings-daemon)
|
||||
BuildRequires: pkgconfig(json-glib-1.0)
|
||||
BuildRequires: pkgconfig(keybinder-3.0)
|
||||
BuildRequires: pkgconfig(libgnome-menu-3.0)
|
||||
BuildRequires: pkgconfig(libnm)
|
||||
BuildRequires: pkgconfig(libnma)
|
||||
BuildRequires: pkgconfig(libnotify)
|
||||
BuildRequires: pkgconfig(libsoup-2.4)
|
||||
BuildRequires: pkgconfig(libwnck-3.0)
|
||||
|
||||
BuildRequires: pkgconfig(appstream)
|
||||
BuildRequires: pkgconfig(granite)
|
||||
BuildRequires: pkgconfig(libhandy-1)
|
||||
BuildRequires: pkgconfig(zeitgeist-2.0)
|
||||
BuildRequires: pkgconfig(appstream)
|
||||
BuildRequires: pkgconfig(granite)
|
||||
BuildRequires: pkgconfig(libhandy-1)
|
||||
BuildRequires: pkgconfig(zeitgeist-2.0)
|
||||
|
||||
Requires: budgie-applet-app-launcher
|
||||
Requires: budgie-applet-applications-menu
|
||||
Requires: budgie-applet-brightness-controller
|
||||
Requires: budgie-applet-clockworks
|
||||
Requires: budgie-applet-countdown
|
||||
Requires: budgie-applet-dropby
|
||||
Requires: budgie-applet-fuzzyclock
|
||||
Requires: budgie-applet-hotcorners
|
||||
Requires: budgie-applet-kangaroo
|
||||
Requires: budgie-applet-keyboard-autoswitch
|
||||
Requires: budgie-applet-network-manager
|
||||
Requires: budgie-applet-quickchar
|
||||
Requires: budgie-applet-quicknote
|
||||
Requires: budgie-applet-recentlyused
|
||||
Requires: budgie-applet-rotation-lock
|
||||
Requires: budgie-applet-showtime
|
||||
Requires: budgie-applet-takeabreak
|
||||
Requires: budgie-applet-visualspace
|
||||
Requires: budgie-applet-wallstreet
|
||||
Requires: budgie-applet-weathershow
|
||||
Requires: budgie-applet-window-shuffler
|
||||
Requires: budgie-applet-workspace-stopwatch
|
||||
Requires: budgie-applet-wpreviews
|
||||
Requires: budgie-applet-wswitcher
|
||||
Requires: budgie-applet-applications-menu
|
||||
Requires: budgie-applet-weathershow
|
||||
|
||||
Requires: budgie-applet-app-launcher
|
||||
Requires: budgie-applet-brightness-controller
|
||||
Requires: budgie-applet-clockworks
|
||||
Requires: budgie-applet-countdown
|
||||
Requires: budgie-applet-dropby
|
||||
Requires: budgie-applet-fuzzyclock
|
||||
Requires: budgie-applet-hotcorners
|
||||
Requires: budgie-applet-kangaroo
|
||||
Requires: budgie-applet-keyboard-autoswitch
|
||||
Requires: budgie-applet-network-manager
|
||||
Requires: budgie-applet-quickchar
|
||||
Requires: budgie-applet-quicknote
|
||||
Requires: budgie-applet-recentlyused
|
||||
Requires: budgie-applet-rotation-lock
|
||||
Requires: budgie-applet-showtime
|
||||
Requires: budgie-applet-takeabreak
|
||||
Requires: budgie-applet-visualspace
|
||||
Requires: budgie-applet-wallstreet
|
||||
Requires: budgie-applet-window-shuffler
|
||||
Requires: budgie-applet-workspace-stopwatch
|
||||
Requires: budgie-applet-wpreviews
|
||||
Requires: budgie-applet-wswitcher
|
||||
# Fix for https://github.com/UbuntuBudgie/budgie-extras/issues/233, don't know how stenstorp did not notice this
|
||||
Requires: xinput
|
||||
Requires: xinput
|
||||
|
||||
%description
|
||||
This is part of a suite of python3 and Vala based applets for the Budgie
|
||||
Desktop that provide additional user orientated capabilities.
|
||||
The applets can be used individually or as a set.
|
||||
|
||||
%package common
|
||||
Requires: budgie-desktop
|
||||
Summary: Shared component of budgie-extras applets
|
||||
BuildArch: noarch
|
||||
%description common
|
||||
%package common
|
||||
Requires: budgie-desktop
|
||||
Summary: Shared component of budgie-extras applets
|
||||
BuildArch: noarch
|
||||
%description common
|
||||
The shared component provides for capabilities that are utilised between
|
||||
budgie-extra applets.
|
||||
|
||||
%package daemon
|
||||
Summary: Manages keyboard shortcuts
|
||||
Requires: budgie-extras-common
|
||||
%description daemon
|
||||
%package daemon
|
||||
Summary: Manages keyboard shortcuts
|
||||
Requires: budgie-extras-common
|
||||
%description daemon
|
||||
This on logon process manages keyboard shortcuts delivered via .bde files for
|
||||
various extras-plugins.
|
||||
|
||||
%package -n budgie-applet-app-launcher
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to provide an alternative means to launch applications
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to provide an alternative means to launch applications
|
||||
%description -n budgie-applet-app-launcher
|
||||
The app-launcher applet allows the ability to add favorite apps to the
|
||||
panel as well as finding and launching applications. The list of
|
||||
applications listed can be easily configured to be visible or hidden.
|
||||
|
||||
%package -n budgie-applet-applications-menu
|
||||
Requires: budgie-extras-common
|
||||
Summary: Lightweight and stylish app launcher
|
||||
Requires: budgie-extras-common
|
||||
Summary: Lightweight and stylish app launcher
|
||||
%description -n budgie-applet-applications-menu
|
||||
%{summary}
|
||||
|
||||
%package -n budgie-applet-brightness-controller
|
||||
Requires: budgie-extras-common
|
||||
Summary: A Budgie Desktop applet for productivity
|
||||
Requires: budgie-extras-common
|
||||
Summary: A Budgie Desktop applet for productivity
|
||||
%description -n budgie-applet-brightness-controller
|
||||
%{summary}
|
||||
|
||||
%package -n budgie-applet-clockworks
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to display clock across multiple time zones
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to display clock across multiple time zones
|
||||
%description -n budgie-applet-clockworks
|
||||
The Clockworks applet displays the current time across multiple
|
||||
time zones.
|
||||
|
||||
%package -n budgie-applet-countdown
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet providing a countdown capability on the Budgie Desktop
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet providing a countdown capability on the Budgie Desktop
|
||||
%description -n budgie-applet-countdown
|
||||
The Countdown applet provides the user the ability to start an
|
||||
action when the countdown reaches 0 seconds. Actions include flashing
|
||||
@@ -116,8 +117,8 @@ an icon in the panel, opening a notification window, sounding a
|
||||
bell or running a custom command.
|
||||
|
||||
%package -n budgie-applet-dropby
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to popup when a USB device is connected
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to popup when a USB device is connected
|
||||
%description -n budgie-applet-dropby
|
||||
The DropBy applet pops up in the panel when connecting a usb device.
|
||||
The applet subsequently offers the option(s) to mount, unmount/eject
|
||||
@@ -125,29 +126,29 @@ and in case of a flash drive, to make a local copy of the drive's
|
||||
content. The info shows the free space on the volume.
|
||||
|
||||
%package -n budgie-applet-fuzzyclock
|
||||
Requires: budgie-extras-common
|
||||
Summary: Shows the time in a Fuzzy Way
|
||||
Requires: budgie-extras-common
|
||||
Summary: Shows the time in a Fuzzy Way
|
||||
%description -n budgie-applet-fuzzyclock
|
||||
%{summary}
|
||||
|
||||
%package -n budgie-applet-hotcorners
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet providing hotcorners capabilities for the Budgie Desktop
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet providing hotcorners capabilities for the Budgie Desktop
|
||||
%description -n budgie-applet-hotcorners
|
||||
The hotcorners applet allow user defined commands to be executed
|
||||
when the mouse cursor is pushed into a corner of the main desktop.
|
||||
|
||||
%package -n budgie-applet-kangaroo
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to allow quick file-browsing
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to allow quick file-browsing
|
||||
%description -n budgie-applet-kangaroo
|
||||
The kangaroo applet allows for quick & easy browsing, across
|
||||
(possibly) many directory layers, without having to do a single mouse
|
||||
click.
|
||||
|
||||
%package -n budgie-applet-keyboard-autoswitch
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet adding the ability to set a different keyboard layout per application
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet adding the ability to set a different keyboard layout per application
|
||||
%description -n budgie-applet-keyboard-autoswitch
|
||||
The Keyboard Auto Switcher applet provides the user the ability to set
|
||||
a different keyboard layout per application. Exceptions to the default
|
||||
@@ -155,51 +156,50 @@ layout can be set by simply choosing a different layout using the
|
||||
Keyboard Layout applet.
|
||||
|
||||
%package -n budgie-applet-network-manager
|
||||
Requires: budgie-extras-common
|
||||
Summary: A fork of Wingpanel Network Indicator, ported to budgie desktop
|
||||
Requires: budgie-extras-common
|
||||
Summary: A fork of Wingpanel Network Indicator, ported to budgie desktop
|
||||
%description -n budgie-applet-network-manager
|
||||
%{summary}
|
||||
|
||||
%package -n budgie-applet-quickchar
|
||||
Requires: budgie-extras-common
|
||||
Requires: budgie-extras-daemon
|
||||
Summary: A mini-app to quickly choose and insert equivalents of ascii characters
|
||||
Requires: budgie-extras-common
|
||||
Summary: A mini-app to quickly choose and insert equivalents of ascii characters
|
||||
%description -n budgie-applet-quickchar
|
||||
QuickChar is a mini-app to quickly choose and insert equivalents of ascii
|
||||
characters. QuickChar is activated via the Budgie Menu.
|
||||
|
||||
%package -n budgie-applet-quicknote
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet providing simple notes capability for the Budgie Desktop
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet providing simple notes capability for the Budgie Desktop
|
||||
%description -n budgie-applet-quicknote
|
||||
The quicknote applet allows a user to record a text based note.
|
||||
The applet supports multiple undo and redo capabilities.
|
||||
|
||||
%package -n budgie-applet-recentlyused
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet displays files recently accessed for the Budgie Desktop
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet displays files recently accessed for the Budgie Desktop
|
||||
%description -n budgie-applet-recentlyused
|
||||
The recentlyused applet displays the users files that have been opened
|
||||
or created within a configurable period of time.
|
||||
|
||||
%package -n budgie-applet-rotation-lock
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to lock or unlock the screen rotation
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to lock or unlock the screen rotation
|
||||
%description -n budgie-applet-rotation-lock
|
||||
The Rotation Lock applet provides the user an easy way to lock or
|
||||
unlock the screen rotation.
|
||||
|
||||
%package -n budgie-applet-showtime
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet displaying date and time on the Budgie Desktop
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet displaying date and time on the Budgie Desktop
|
||||
%description -n budgie-applet-showtime
|
||||
The ShowTime applet is a digital desktop clock, showing time and/or
|
||||
date. Text color of both the displayed time and date can be set
|
||||
separately from the applet's menu
|
||||
|
||||
%package -n budgie-applet-takeabreak
|
||||
Requires: budgie-extras-common
|
||||
Summary: A pomodoro-like applet, to make sure to take regular breaks from working
|
||||
Requires: budgie-extras-common
|
||||
Summary: A pomodoro-like applet, to make sure to take regular breaks from working
|
||||
%description -n budgie-applet-takeabreak
|
||||
Budgie TakeaBreak is a pomodoro- like applet, to make sure to take regular
|
||||
breaks from working. Options from Budgie Settings include turning the screen
|
||||
@@ -208,36 +208,35 @@ time. The applet can be accessed quickly from the panel to temporarily switch
|
||||
it off.
|
||||
|
||||
%package -n budgie-applet-visualspace
|
||||
Requires: budgie-extras-common
|
||||
Summary: Shows the current workspace(s), as bullet(s)
|
||||
Requires: budgie-extras-common
|
||||
Summary: Shows the current workspace(s), as bullet(s)
|
||||
%description -n budgie-applet-visualspace
|
||||
Budgie VisualSpace shows the current workspace(s), as bullet(s). The applet
|
||||
includes a menu to navigate to either one of the windows or their
|
||||
corresponding workspace.
|
||||
|
||||
%package -n budgie-applet-wallstreet
|
||||
Requires: budgie-extras-common
|
||||
Summary: A mini-app to switch wallpapers on regular intervalls
|
||||
Requires: budgie-extras-common
|
||||
Summary: A mini-app to switch wallpapers on regular intervalls
|
||||
%description -n budgie-applet-wallstreet
|
||||
Budgie WallStreet is a mini-app to switch wallpapers on regular intervalls.
|
||||
|
||||
%package -n budgie-applet-weathershow
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to display the weather and forecast
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet to display the weather and forecast
|
||||
%description -n budgie-applet-weathershow
|
||||
The weathershow applet displays daily and three hourly weather
|
||||
forecasts on both the desktop and a Popover.
|
||||
|
||||
%package -n budgie-applet-window-shuffler
|
||||
Requires: budgie-extras-common
|
||||
Requires: budgie-extras-daemon
|
||||
Summary: Budgie Window Shuffler
|
||||
Requires: budgie-extras-common
|
||||
Summary: Budgie Window Shuffler
|
||||
%description -n budgie-applet-window-shuffler
|
||||
%{summary}
|
||||
|
||||
%package -n budgie-applet-workspace-stopwatch
|
||||
Requires: budgie-extras-common
|
||||
Summary: An applet to keep track of usage per workspace
|
||||
Requires: budgie-extras-common
|
||||
Summary: An applet to keep track of usage per workspace
|
||||
%description -n budgie-applet-workspace-stopwatch
|
||||
Workspace Timer Applet is an applet to keep track of usage per workspace, e.g.
|
||||
to find out how much minutes/hours were actually spent on a job. Workspaces can
|
||||
@@ -247,16 +246,14 @@ onworkspace switch/clicking the icon for popup or else every 30 seconds. Time
|
||||
during suspend is automatically retracted from a workspace' time.
|
||||
|
||||
%package -n budgie-applet-wpreviews
|
||||
Requires: budgie-extras-common
|
||||
Requires: budgie-extras-daemon
|
||||
Requires: budgie-extras-common
|
||||
Summary: Applet providing window previews capabilities for the Budgie Desktop
|
||||
%description -n budgie-applet-wpreviews
|
||||
The Previews applet shows an overview of windows in an expose like way.
|
||||
|
||||
%package -n budgie-applet-wswitcher
|
||||
Requires: budgie-extras-common
|
||||
Requires: budgie-extras-daemon
|
||||
Summary: An applet to show a different wallpaper on each of the workspaces
|
||||
Requires: budgie-extras-common
|
||||
Summary: An applet to show a different wallpaper on each of the workspaces
|
||||
%description -n budgie-applet-wswitcher
|
||||
Budgie Wallpaper Workspace Switcher is an application (applet) to show a
|
||||
different wallpaper on each of the workspaces. Usage is simple: add the applet
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "ctwm.spec"
|
||||
}
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Name=CTWM
|
||||
Comment=Claude's Tab Window Manager
|
||||
TryExec=ctwm
|
||||
Exec=ctwm
|
||||
Type=Xsession
|
||||
Encoding=UTF-8
|
||||
@@ -1,55 +0,0 @@
|
||||
Summary: Lightweight window manager with virtual workspaces
|
||||
Name: ctwm
|
||||
Version: 4.1.0
|
||||
Release: 1%?dist
|
||||
URL: https://ctwm.org
|
||||
BuildRequires: libjpeg-turbo-devel libX11-devel libXext-devel libXmu-devel libXpm-devel libXt-devel libXrandr-devel cmake gcc m4
|
||||
Source0: https://www.ctwm.org/dist/%{name}-%{version}.tar.xz
|
||||
Source1: %{name}.desktop
|
||||
License: MIT
|
||||
Requires: m4
|
||||
# Derived from RPMSphere's packaging
|
||||
|
||||
%description
|
||||
CTWM is a window manager based on TWM (with virtual workspaces added).
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%build
|
||||
%cmake
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%cmake_install
|
||||
%{__install} -Dm644 %{SOURCE1} %{buildroot}%{_datadir}/xsessions/%{name}.desktop
|
||||
|
||||
%files
|
||||
%doc README.md CHANGES.md
|
||||
%license COPYRIGHT
|
||||
%{_bindir}/%{name}
|
||||
%{_mandir}/man1/%{name}*
|
||||
%{_datadir}/xsessions/%{name}.desktop
|
||||
%{_datadir}/ctwm
|
||||
%{_datadir}/doc/ctwm/ctwm.1.html
|
||||
%{_datadir}/examples/ctwm/system.ctwmrc
|
||||
|
||||
%changelog
|
||||
* Tue Dec 17 2024 Owen Zimmerman <owen@fyralabs.com>
|
||||
- Add .desktop and .rhai file, fix dependancies, and switch to .tar.xz source (smaller download)
|
||||
* Thu Jun 27 2024 Jaiden Riordan <jade@fyralabs.com> - 4.1.0
|
||||
- Rewrite for Terra, Thanks RPMSphere
|
||||
* Tue Dec 24 2019 Wei-Lun Chao <bluebat@member.fsf.org> - 4.0.3
|
||||
- Rebuilt for Fedora
|
||||
* Sat Apr 9 2011 Agnelo de la Crotche <agnelo@unixversal.com>
|
||||
- package for openSUSE 11.3/11.4
|
||||
* Thu Feb 16 2006 Richard Levitte <richard@levitte.org>
|
||||
- Release ctwm 3.8a.
|
||||
* Wed May 4 2005 Rudolph T Maceyko <rm55@pobox.com>
|
||||
- Tweaks. Added all .ctwmrc files as well as sound and VMS docs.
|
||||
* Wed May 4 2005 Richard Levitte <richard@levitte.org>
|
||||
- Changed some directory specifications to RedHat-ish standards.
|
||||
* Tue May 3 2005 Richard Levitte <richard@levitte.org>
|
||||
- Received the original from Johan Vromans. Adjusted it to become
|
||||
an official .spec file.
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
rpm.version(find("<p>Current release: ([\\d.]+)</p>", get("https://www.ctwm.org/download.html"), 1));
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user