Compare commits

..

1 Commits

Author SHA1 Message Date
Lleyton Gray 24aaa5ef66 feat: begin work on update PR strategy 2024-02-05 00:20:26 -08:00
355 changed files with 1523 additions and 6275 deletions
-9
View File
@@ -1,9 +0,0 @@
{
"repoOwner": "terrapkg",
"repoName": "packages",
"resetAuthor": true,
"targetBranchChoices": ["f38", "f39", "f40", "frawhide"],
"branchLabelMapping": {
"^sync-(.+)$": "$1"
}
}
+16 -10
View File
@@ -6,13 +6,13 @@ on:
paths:
- anda/**
branches:
- f40
- f39
pull_request:
branches:
- f40
- f39
merge_group:
branches:
- f40
- f39
workflow_dispatch:
workflow_call:
@@ -23,13 +23,13 @@ jobs:
outputs:
build_matrix: ${{ steps.generate_build_matrix.outputs.build_matrix }}
container:
image: ghcr.io/terrapkg/builder:f40
image: ghcr.io/terrapkg/builder:f39
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Set workspace as safe
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Generate build matrix
@@ -40,20 +40,27 @@ jobs:
strategy:
matrix:
pkg: ${{ fromJson(needs.manifest.outputs.build_matrix) }}
version: ["40"]
version: ["39"]
fail-fast: false
runs-on: ${{ matrix.pkg.arch == 'aarch64' && 'ARM64' || matrix.pkg.labels['large'] && 'x86-64-lg' || 'ubuntu-latest' }}
runs-on: ${{ matrix.pkg.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
container:
image: ghcr.io/terrapkg/builder:f${{ matrix.version}}
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up git repository
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Cache buildroot
id: br-cache
uses: actions/cache@v3
with:
path: /var/cache
key: ${{ runner.os }}-br-${{ matrix.version }}-${{ matrix.pkg.arch }}
- name: Include custom build template instead of package default
run: |
cp -v anda/terra/mock-configs/terra.tpl /etc/mock/templates/terra.tpl
@@ -68,10 +75,9 @@ jobs:
x=${NAME//\//@}
echo "name=$x" >> $GITHUB_OUTPUT
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v3
with:
name: ${{ steps.art.outputs.name }}
compression-level: 0 # The RPMs are already compressed :p
path: |
anda-build/rpm/rpms/*
anda-build/rpm/srpm/*
+2 -2
View File
@@ -7,7 +7,7 @@ jobs:
bootstrap:
strategy:
matrix:
version: ["40"]
version: ["39"]
arch: ["x86_64", "aarch64"]
fail-fast: true
runs-on: ${{ matrix.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
@@ -21,7 +21,7 @@ jobs:
- name: Install Anda
run: cargo install anda
- uses: actions/checkout@v4
- uses: actions/checkout@v3
with:
ref: f${{ matrix.version }}
fetch-depth: 1
+8 -33
View File
@@ -5,57 +5,32 @@ on:
packages:
description: "Packages to Build"
required: true
custom_builder:
description: "Custom Builder"
required: false
default: ""
architecture:
description: "Architecture"
required: false
default: all
type: string
jobs:
parse:
outputs:
pkgs: ${{ steps.parsing.outputs.pkgs }}
builder: ${{ inputs.custom_builder }}
arch: ${{ steps.parsing.outputs.arch }}
runs-on: "ubuntu-latest"
steps:
- name: Parse Input
id: parsing
run: |
echo "${{ inputs.packages }}" | sed 's/ /\n/g' | sed 's/$/\//g' | jq -R . | jq -s . | jq -c . | sed 's/^/pkgs=/' >> $GITHUB_OUTPUT
echo "builder=${{ inputs.custom_builder }}" >> $GITHUB_OUTPUT
arch="${{ inputs.architecture }}"
# Convert to json array using jq
# if arch is not all, convert to array
if [ "$arch" != "all" ]; then
# jq, array with single element as string
arch=$(echo $arch | sed 's/,/\n/g')
echo "arch=$(echo $arch | jq -Rs 'split("\n")' | jq 'map(select(length > 0))' | jq -c .)" >> $GITHUB_OUTPUT
else
echo "arch=$(echo '["aarch64", "x86_64"]' | jq -c .)" >> $GITHUB_OUTPUT
fi
run: echo "${{ inputs.packages }}" | sed 's/ /\n/g' | sed 's/$/\//g' | jq -R . | jq -s . | jq -c . | sed 's/^/pkgs=/' >> $GITHUB_OUTPUT
build:
needs: parse
strategy:
matrix:
pkg: ${{ fromJson(needs.parse.outputs.pkgs) }}
version: ["40"]
arch: ${{ fromJson(needs.parse.outputs.arch) }}
version: ["39"]
arch: ["x86_64", "aarch64"]
fail-fast: false
runs-on: ${{ matrix.arch == 'aarch64' && 'ARM64' || needs.parse.outputs.builder && needs.parse.outputs.builder || 'ubuntu-latest' }}
runs-on: ${{ matrix.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
container:
image: ghcr.io/terrapkg/builder:f${{ matrix.version }}
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up git repository
@@ -63,7 +38,7 @@ jobs:
- name: Cache buildroot
id: br-cache
uses: actions/cache@v4
uses: actions/cache@v3
with:
path: /var/cache
key: ${{ runner.os }}-br-${{ matrix.version }}-${{ matrix.arch }}-${{ matrix.pkg }}
@@ -78,10 +53,9 @@ jobs:
x=${NAME//\//@}
echo "name=$x" >> $GITHUB_OUTPUT
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v3
with:
name: ${{ steps.art.outputs.name }}
compression-level: 0 # The RPMs are already compressed :p
path: |
anda-build/rpm/rpms/*
anda-build/rpm/srpm/*
@@ -94,6 +68,7 @@ jobs:
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 \
+4 -5
View File
@@ -11,7 +11,7 @@ jobs:
strategy:
matrix:
pkg: ${{ fromJson(inputs.packages) }}
version: ["40"]
version: ["39"]
fail-fast: false
runs-on: ${{ matrix.pkg.arch == 'aarch64' && 'ARM64' || 'ubuntu-latest' }}
container:
@@ -19,7 +19,7 @@ jobs:
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up git repository
@@ -27,7 +27,7 @@ jobs:
- name: Cache buildroot
id: br-cache
uses: actions/cache@v4
uses: actions/cache@v3
with:
path: /var/cache
key: ${{ runner.os }}-br-${{ matrix.version }}-${{ matrix.pkg.arch }}-${{ matrix.pkg.pkg }}
@@ -42,10 +42,9 @@ jobs:
x=${NAME//\//@}
echo "name=$x" >> $GITHUB_OUTPUT
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v3
with:
name: ${{ steps.art.outputs.name }}
compression-level: 0 # The RPMs are already compressed :p
path: |
anda-build/rpm/rpms/*
anda-build/rpm/srpm/*
+5 -5
View File
@@ -3,20 +3,20 @@ name: Lint
on:
push:
branches:
- f40
- f39
pull_request:
branches:
- f40
- f39
merge_group:
branches:
- f40
- f39
jobs:
lint:
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:f40
image: ghcr.io/terrapkg/builder:f39
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v3
- name: Lint spec files
run: rpmlint $(find anda -type f -name "*.spec" -type f)
-37
View File
@@ -1,37 +0,0 @@
name: Automatic backport/sync action
on:
pull_request_target:
types: ["labeled", "closed"]
jobs:
backport:
name: Backport/sync PR
runs-on: ubuntu-latest
if: github.event.pull_request.merged
steps:
- name: Install SSH signing key
run: |
mkdir -p ${{ runner.temp }}
echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key
chmod 0700 ${{ runner.temp }}/signing_key
- name: Setup Raboneko Signing
run: |
git config --global gpg.format "ssh"
git config --global user.signingkey "${{ runner.temp }}/signing_key"
git config --global commit.gpgsign true
- name: Backport Action
uses: sorenlouv/backport-github-action@v9.3.0
with:
github_token: ${{ secrets.RABONEKO_BACKPORT_GITHUB_TOKEN }}
auto_backport_label_prefix: sync-
- name: Info log
if: ${{ success() }}
run: cat ~/.backport/backport.info.log
- name: Debug log
if: ${{ failure() }}
run: cat ~/.backport/backport.debug.log
+38
View File
@@ -0,0 +1,38 @@
name: Sync PR to other branches
on:
pull_request:
types:
- closed
branches:
- f38
jobs:
sync:
strategy:
matrix:
branch: ["f37"]
fail-fast: false
if: github.event.pull_request.merged == true && !contains(github.event.pull_request.labels.*.name, 'nosync')
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
ref: ${{ matrix.branch }}
- name: Install SSH key and Setup Git
run: |
mkdir -p ${{ runner.temp }}
echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key
chmod 0700 ${{ runner.temp }}/signing_key
git config --global --add safe.directory "$GITHUB_WORKSPACE"
git config user.name "Raboneko"
git config user.email "raboneko@fyralabs.com"
git config gpg.format "ssh"
git config user.signingkey "${{ runner.temp }}/signing_key"
- name: Apply patches and Push
run: |
curl https://github.com/terrapkg/packages/pull/${{ github.event.pull_request.number }}.patch > pr.patch
git am -S --keep-cr --signoff < pr.patch
git push -u origin --all
+2 -3
View File
@@ -3,7 +3,6 @@ name: Push comps updates
on:
push:
branches:
- f40
- f39
- f38
- f37
@@ -15,9 +14,9 @@ jobs:
update-comps:
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:f40
image: ghcr.io/terrapkg/builder:f39
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v3
- name: Push to subatomic
run: |
branch=${{ github.ref_name }}
+2 -2
View File
@@ -8,11 +8,11 @@ jobs:
autoupdate:
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:f40
image: ghcr.io/terrapkg/builder:f39
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
+13 -3
View File
@@ -8,11 +8,11 @@ jobs:
autoupdate:
runs-on: ubuntu-latest
container:
image: ghcr.io/terrapkg/builder:f40
image: ghcr.io/terrapkg/builder:f39
options: --cap-add=SYS_ADMIN --privileged
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v3
with:
fetch-depth: 0
ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }}
@@ -47,9 +47,19 @@ jobs:
git add *
git commit -S -a -m "$msg"
}
copy_over f39 || true
copy_over f37 || true
copy_over f38 || true
copy_over frawhide || true
git remote add raboneko git@github.com:raboneko/packages.git
git push -u origin --all
gh pr create --title "$msg" --body "Automatic update from Raboneko!" --label "auto-update" --base "f37" --head "raboneko:f37"
gh pr create --title "$msg" --body "Automatic update from Raboneko!" --label "auto-update" --base "f38" --head "raboneko:f38"
gh pr create --title "$msg" --body "Automatic update from Raboneko!" --label "auto-update" --base "frawhide" --head "raboneko:frawhide"
gh pr create --title "$msg" --body "Automatic update from Raboneko!" --label "auto-update" --base "f39" --head "raboneko:f39"
gh pr merge --auto --squash raboneko:f37
gh pr merge --auto --squash raboneko:f38
gh pr merge --auto --squash raboneko:frawhide
gh pr merge --auto --squash raboneko:f39
fi
+30
View File
@@ -0,0 +1,30 @@
# Repository
/.github @lleyton
/.devcontainer @lleyton
/.gitignore @windowsboy111
/CODE_OF_CONDUCT.md @lleyton
/CONTRIBUTING.md @lleyton
/LICENSE @lleyton
/README.md @windowsboy111
/SECURITY.md @lleyton
/anda.hcl @lleyton
/comps.xml @lleyton
# Package maintainers
/anda/lib/libbismuth @lainsce
/anda/lib/libhelium @lainsce
/anda/others/tau-helium @lainsce
/anda/others/tau-hydrogen @lainsce
/anda/tools/melody @lleyton
/anda/go/curlie @lleyton
/anda/games/prismlauncher @getchoo
/anda/games/prismlauncher-nightly @getchoo
/anda/games/prismlauncher-qt5-nightly @getchoo
/anda/games/prismlauncher-qt5 @getchoo
/anda/srpm-macros @korewaChino
/anda/rust/starship @korewaChino
/anda/rust/zellij @korewaChino
/anda/audio/distrho @korewaChino
-2
View File
@@ -2,8 +2,6 @@
[![Repository status](https://repology.org/badge/repository-big/terra_38.svg?header=Terra+38)](https://repology.org/repository/terra_38)
[![Repository status](https://repology.org/badge/repository-big/terra_39.svg?header=Terra+39)](https://repology.org/repository/terra_39)
[![Repository status](https://repology.org/badge/repository-big/terra_40.svg?header=Terra+40)](https://repology.org/repository/terra_40)
[![Repository status](https://repology.org/badge/repository-big/terra_rawhide.svg?header=Terra+Rawhide)](https://repology.org/repository/terra_rawhide)
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.
+2 -2
View File
@@ -1,6 +1,6 @@
Name: anki-bin
Version: 24.06.3
Release: 1%?dist
Version: 23.12.1
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/
+3 -3
View File
@@ -1,6 +1,6 @@
Name: anki-qt5
Version: 24.06.3
Release: 1%?dist
Version: 23.12.1
Release: 1%{?dist}
Summary: Flashcard program for using space repetition learning
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
URL: https://apps.ankiweb.net/
@@ -22,7 +22,7 @@ Anki is based on a theory called spaced repetition.
%prep
git clone https://github.com/ankitects/anki .
git checkout %version
%patch 1 -p1
%patch1 -p1
# See https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=anki-qt5
+2 -4
View File
@@ -1,6 +1,6 @@
Name: anki
Version: 24.06.3
Release: 1%?dist
Version: 23.12.1
Release: 1%{?dist}
Summary: Flashcard program for using space repetition learning
License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5
URL: https://apps.ankiweb.net/
@@ -20,10 +20,8 @@ phrases in a foreign language) as easily, quickly and efficiently as possible.
Anki is based on a theory called spaced repetition.
%prep
rm -rf *
git clone https://github.com/ankitects/anki .
git checkout %{version}
%patch 0 -p1
# See https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=anki
+2 -3
View File
@@ -14,8 +14,8 @@
%global __provides_exclude_from %{_datadir}/armcord/.*\\.so
Name: armcord-bin
Version: 3.2.7
Release: 1%?dist
Version: 3.2.6
Release: 1%{?dist}
License: OSL-3.0
Summary: Custom lightweight Discord client designed to enhance your experience
URL: https://github.com/ArmCord/ArmCord
@@ -26,7 +26,6 @@ Source2: https://raw.githubusercontent.com/ArmCord/ArmCord/v%version/README.md
Requires: electron xdg-utils
ExclusiveArch: x86_64 aarch64 armv7l
Conflicts: armcord
BuildRequires: add-determinism
%description
ArmCord is a custom client designed to enhance your Discord experience
+3 -4
View File
@@ -1,15 +1,15 @@
%define debug_package %nil
Name: armcord
Version: 3.2.7
Release: 1%?dist
Version: 3.2.6
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
BuildRequires: nodejs-npm git
Conflicts: armcord-bin
BuildArch: noarch
@@ -18,7 +18,6 @@ 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
+2 -2
View File
@@ -6,12 +6,12 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: authy
Version: 2.5.0
Version: 2.4.2
Release: 1%{?dist}
Summary: Two factor authentication desktop application
License: Unlicense
URL: https://authy.com/
Source0: https://api.snapcraft.io/api/v1/snaps/download/H8ZpNgIoPyvmkgxOWw5MSzsXK1wRZiHn_23.snap
Source0: https://api.snapcraft.io/api/v1/snaps/download/H8ZpNgIoPyvmkgxOWw5MSzsXK1wRZiHn_22.snap
Requires: gtk3
Requires: nss
BuildRequires: squashfs-tools desktop-file-utils
@@ -6,8 +6,8 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-canary-openasar
Version: 0.0.452
Release: 1%?dist
Version: 0.0.267
Release: 1%{?dist}
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
URL: https://github.com/GooseMod/OpenAsar
+2 -2
View File
@@ -6,8 +6,8 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-canary
Version: 0.0.452
Release: 1%?dist
Version: 0.0.267
Release: 1%{?dist}
Summary: Free Voice and Text Chat for Gamers
URL: discord.com
Source0: https://dl-canary.discordapp.net/apps/linux/%{version}/discord-canary-%{version}.tar.gz
@@ -6,8 +6,8 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-openasar
Version: 0.0.59
Release: 1%?dist
Version: 0.0.42
Release: 1%{?dist}
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
URL: https://github.com/GooseMod/OpenAsar
@@ -6,8 +6,8 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-ptb-openasar
Version: 0.0.94
Release: 1%?dist
Version: 0.0.66
Release: 1%{?dist}
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
URL: https://github.com/GooseMod/OpenAsar
+2 -2
View File
@@ -6,8 +6,8 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-ptb
Version: 0.0.94
Release: 1%?dist
Version: 0.0.66
Release: 1%{?dist}
Summary: Free Voice and Text Chat for Gamers.
URL: https://discord.com
Source0: https://dl-ptb.discordapp.net/apps/linux/%{version}/discord-ptb-%{version}.tar.gz
+2 -2
View File
@@ -6,8 +6,8 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord
Version: 0.0.59
Release: 1%?dist
Version: 0.0.42
Release: 1%{?dist}
Summary: Free Voice and Text Chat for Gamers
URL: https://discord.com
Source0: https://dl.discordapp.net/apps/linux/%{version}/discord-%{version}.tar.gz
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "envision.spec"
}
}
-46
View File
@@ -1,46 +0,0 @@
%global commit 6cf5e40b96d1cbd99a3cfcef1f03899356e79448
%global commit_date 20240703
%global shortcommit %(c=%{commit}; echo ${c:0:7})
Name: envision
Version: %commit_date.%shortcommit
Release: 1%?dist
Summary: UI for building, configuring and running Monado, the open source OpenXR runtime
License: AGPL-3.0-or-later
URL: https://gitlab.com/gabmus/envision/
Source0: %url/-/archive/%commit/envision-%commit.tar.gz
BuildRequires: meson ninja-build cargo
BuildRequires: pkgconfig(glib-2.0) >= 2.66
BuildRequires: pkgconfig(gio-2.0) >= 2.66
BuildRequires: pkgconfig(gtk4) >= 4.10.0
BuildRequires: pkgconfig(vte-2.91-gtk4) >= 0.72.0
BuildRequires: pkgconfig(libadwaita-1)
BuildRequires: pkgconfig(libusb-1.0)
BuildRequires: openssl-devel-engine
BuildRequires: libappstream-glib
BuildRequires: desktop-file-utils
BuildRequires: glib2-devel
Recommends: android-tools
%description
%summary.
%prep
%autosetup -n envision-%commit
%build
%meson
%meson_build
%install
%meson_install
%files
%doc README.md
%license LICENSE
%_bindir/envision
%_datadir/applications/org.gabmus.envision.desktop
%_datadir/envision/
%_iconsdir/hicolor/scalable/apps/org.gabmus.envision.svg
%_iconsdir/hicolor/symbolic/apps/org.gabmus.envision-symbolic.svg
%_metainfodir/org.gabmus.envision.appdata.xml
-5
View File
@@ -1,5 +0,0 @@
rpm.global("commit", gitlab_commit("gitlab.com", "46446166", "main"));
if rpm.changed() {
rpm.global("commit_date", date());
rpm.release();
}
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "feishin.spec"
}
}
-69
View File
@@ -1,69 +0,0 @@
%define debug_package %nil
%global _build_id_links none
# Exclude private libraries
%global __requires_exclude libffmpeg.so
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: feishin
Version: 0.7.1
Release: 1%?dist
Summary: A modern self-hosted music player
License: GPL-3.0
URL: https://github.com/jeffvli/feishin
Source0: %url/archive/refs/tags/v%version.tar.gz
Requires: fuse mpv
BuildRequires: nodejs-npm jq libxcrypt-compat
%description
%summary.
%prep
%autosetup
cat package.json | jq '.author += { "email": "jeffvictorli@gmail.com" }' | jq '.build.linux += { "maintainer": "mado@fyralabs.com", "vendor": "Fyra Labs Terra" }' > a
mv a package.json
cat package.json
cat<<EOF > feishin.desktop
[Desktop Entry]
Type=Application
Name=Feishin
Comment=Rewrite of Sonixd
Exec=/usr/bin/feishin
Icon=feishin
Terminal=false
Categories=Network;Audio;Music
Keywords=Music;Jellyfin;Audio;Stream;Sonixd
EOF
%build
npm install --legacy-peer-deps
npm run postinstall
npm run build
%ifarch x86_64
%define a linux
%elifarch aarch64
%define a arm64
%endif
npx electron-builder --linux dir --%a
%install
mkdir -p %buildroot%_datadir/{pixmaps,applications} %buildroot%_bindir
mv release/build/*-unpacked %buildroot%_datadir/feishin
install -Dm644 assets/icons/icon.png %buildroot%_datadir/pixmaps/feishin.png
ln -s %_datadir/feishin/feishin %buildroot%_bindir/feishin
install -Dm644 feishin.desktop %buildroot%_datadir/applications/
%files
%doc README.md CHANGELOG.md
%license LICENSE
%_bindir/feishin
%_datadir/feishin/
%_datadir/applications/feishin.desktop
%_datadir/pixmaps/feishin.png
%changelog
%autochangelog
-1
View File
@@ -1 +0,0 @@
rpm.version(gh("jeffvli/feishin"));
-8
View File
@@ -1,8 +0,0 @@
project pkg {
rpm {
spec = "mpv-nightly.spec"
}
labels {
nightly = "1"
}
}
-230
View File
@@ -1,230 +0,0 @@
%global commit f470b63a04767ada809ae7d0c69c8f9ac4c80628
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20240712
%global ver v0.38.0
Name: mpv-nightly
Version: %ver^%commit_date.%shortcommit
Release: 1%?dist
License: GPL-2.0-or-later AND LGPL-2.1-or-later
Summary: Movie player playing most video formats and DVDs
URL: https://mpv.io/
Source0: https://github.com/mpv-player/mpv/archive/%commit/mpv-%commit.tar.gz
Conflicts: mpv
BuildRequires: desktop-file-utils
BuildRequires: gcc
BuildRequires: libappstream-glib
BuildRequires: libatomic
BuildRequires: meson
BuildRequires: python3-docutils
BuildRequires: perl(Encode)
BuildRequires: perl(Math::BigInt)
BuildRequires: perl(Math::BigRat)
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(caca)
BuildRequires: pkgconfig(dvdnav)
BuildRequires: pkgconfig(egl)
BuildRequires: pkgconfig(ffnvcodec)
BuildRequires: pkgconfig(gbm)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(lcms2)
BuildRequires: pkgconfig(libarchive) >= 3.4.0
BuildRequires: pkgconfig(libass)
BuildRequires: pkgconfig(libavcodec) >= 59.27.100
BuildRequires: pkgconfig(libavdevice) >= 58.13.100
BuildRequires: pkgconfig(libavfilter) >= 7.110.100
BuildRequires: pkgconfig(libavformat) >= 59.24.100
BuildRequires: pkgconfig(libavutil) >= 57.24.100
BuildRequires: pkgconfig(libbluray)
BuildRequires: pkgconfig(libcdio)
BuildRequires: pkgconfig(libcdio_paranoia)
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libjpeg)
BuildRequires: pkgconfig(libpipewire-0.3) >= 0.3.19
BuildRequires: pkgconfig(libplacebo) >= 6.338.0
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(libswresample) >= 3.9.100
BuildRequires: pkgconfig(libswscale) >= 5.9.100
BuildRequires: pkgconfig(libva)
BuildRequires: pkgconfig(lua-5.1)
BuildRequires: pkgconfig(mujs)
BuildRequires: pkgconfig(openal)
BuildRequires: pkgconfig(rubberband)
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(shaderc)
BuildRequires: pkgconfig(uchardet) >= 0.0.5
BuildRequires: pkgconfig(vapoursynth)
BuildRequires: pkgconfig(vdpau)
BuildRequires: pkgconfig(vulkan)
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-cursor)
BuildRequires: pkgconfig(wayland-egl)
BuildRequires: pkgconfig(wayland-protocols)
BuildRequires: pkgconfig(wayland-scanner)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xdamage)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(xinerama)
BuildRequires: pkgconfig(xkbcommon)
BuildRequires: pkgconfig(xpresent)
BuildRequires: pkgconfig(xrandr)
BuildRequires: pkgconfig(xscrnsaver)
BuildRequires: pkgconfig(xv)
BuildRequires: pkgconfig(zimg) >= 2.9
BuildRequires: pkgconfig(zlib)
Requires: hicolor-icon-theme
Provides: mplayer-backend
Recommends: (yt-dlp or youtube-dl)
Suggests: yt-dlp
%description
Mpv is a movie player based on MPlayer and mplayer2. It supports a wide variety
of video file formats, audio and video codecs, and subtitle types. Special
input URL types are available to read input from a variety of sources other
than disk files. Depending on platform, a variety of different video and audio
output methods are supported.
Mpv has an OpenGL, Vulkan, and D3D11 based video output that is capable of many
features loved by videophiles, such as video scaling with popular high quality
algorithms, color management, frame timing, interpolation, HDR, and more.
While mpv strives for minimalism and provides no real GUI, it has a small
controller on top of the video for basic control.
Mpv can leverage most hardware decoding APIs on all platforms. Hardware
decoding can be enabled at runtime on demand.
Powerful scripting capabilities can make the player do almost anything. There
is a large selection of user scripts on the wiki.
A straightforward C API was designed from the ground up to make mpv usable as
a library and facilitate easy integration into other applications.
%package libs
Summary: Dynamic library for Mpv frontends
%description libs
This package contains the dynamic library libmpv, which provides access to Mpv.
%package devel
Summary: Development package for libmpv
Provides: mpv-libs-devel = %{?epoch:%{epoch}:}%{version}-%{release}
Provides: mpv-nightly-libs-devel = %{?epoch:%{epoch}:}%{version}-%{release}
Obsoletes: mpv-libs-devel < %{?epoch:%{epoch}:}%{version}-%{release}
Obsoletes: mpv-nightly-libs-devel < %{?epoch:%{epoch}:}%{version}-%{release}
Requires: mpv-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: mpv-nightly-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
%description devel
This package contains development header files and libraries for Mpv.
%prep
%autosetup -p1 -n mpv-%commit
sed -e "s|/usr/local/etc|%{_sysconfdir}/mpv|" -i etc/mpv.conf
%build
%meson --auto-features=auto \
-Dalsa=enabled \
-Dbuild-date=false \
-Dcaca=enabled \
-Dcdda=enabled \
-Dcplayer=true \
-Dcplugins=enabled \
-Dcuda-hwaccel=enabled \
-Dcuda-interop=enabled \
-Ddmabuf-wayland=enabled \
-Ddrm=enabled \
-Ddvbin=enabled \
-Ddvdnav=enabled \
-Degl-drm=enabled \
-Degl-wayland=enabled \
-Degl-x11=enabled \
-Degl=enabled \
-Dgbm=enabled \
-Dgl-x11=enabled \
-Dgl=enabled \
-Dhtml-build=enabled \
-Diconv=enabled \
-Djack=enabled \
-Djavascript=enabled \
-Djpeg=enabled \
-Dlcms2=enabled \
-Dlibarchive=enabled \
-Dlibavdevice=enabled \
-Dlibbluray=enabled \
-Dlibmpv=true \
-Dlua=enabled \
-Dmanpage-build=enabled \
-Dopenal=enabled \
-Dopensles=disabled \
-Doss-audio=disabled \
-Dpipewire=enabled \
-Dplain-gl=enabled \
-Dpulse=enabled \
-Drubberband=enabled \
-Dsdl2-audio=enabled \
-Dsdl2-gamepad=enabled \
-Dsdl2-video=enabled \
-Dsdl2=enabled \
-Dsndio=disabled \
-Dspirv-cross=disabled \
-Duchardet=enabled \
-Dvaapi-drm=enabled \
-Dvaapi-wayland=enabled \
-Dvaapi-x11=enabled \
-Dvaapi=enabled \
-Dvapoursynth=enabled \
-Dvdpau-gl-x11=enabled \
-Dvdpau=enabled \
-Dvector=enabled \
-Dvulkan-interop=disabled \
-Dvulkan=enabled \
-Dwayland=enabled \
-Dwerror=false \
-Dx11=enabled \
-Dxv=enabled \
-Dzimg=enabled \
-Dzlib=enabled
%meson_build
%install
%meson_install
%check
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/mpv.metainfo.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/mpv.desktop
%files
%docdir %{_docdir}/mpv/
%license LICENSE.GPL LICENSE.LGPL Copyright
%{_docdir}/mpv/
%{_bindir}/mpv
%{_datadir}/applications/mpv.desktop
%dir %{_datadir}/bash-completion/
%dir %{_datadir}/bash-completion/completions/
%{_datadir}/bash-completion/completions/mpv
%{_datadir}/icons/hicolor/*/apps/mpv*.*
%dir %{_datadir}/zsh/
%dir %{_datadir}/zsh/site-functions/
%{_datadir}/zsh/site-functions/_mpv
%{_mandir}/man1/mpv.*
%{_metainfodir}/mpv.metainfo.xml
%dir %{_sysconfdir}/mpv/
%config(noreplace) %{_sysconfdir}/mpv/encoding-profiles.conf
%files libs
%license LICENSE.GPL LICENSE.LGPL Copyright
%{_libdir}/libmpv.so.2{,.*}
%files devel
%{_includedir}/mpv/
%{_libdir}/libmpv.so
%{_libdir}/pkgconfig/mpv.pc
%changelog
%autochangelog
-8
View File
@@ -1,8 +0,0 @@
if filters.contains("nightly") {
rpm.global("commit", gh_commit("mpv-player/mpv"));
if rpm.changed() {
rpm.global("ver", gh("mpv-player/mpv"));
rpm.global("commit_date", date());
rpm.release();
}
}
-6
View File
@@ -1,6 +0,0 @@
project pkg {
arches = ["x86_64"]
rpm {
spec = "mugshot.spec"
}
}
-62
View File
@@ -1,62 +0,0 @@
%global app org.bluesabre.Mugshot
%global _description %{expand:
Mugshot is a lightweight user configuration utility for Linux designed for simplicity and ease of
use. Quickly update your personal profile and sync your updates across applications.}
Name: python-mugshot
Version: 0.4.3
Release: 1%?dist
Summary: User Management Utility for Linux
License: GPL-3.0
URL: https://github.com/bluesabre/mugshot
Source0: %url/archive/refs/tags/mugshot-%version.tar.gz
BuildArch: noarch
BuildRequires: python3-devel
BuildRequires: python3-pip
BuildRequires: python3-distutils-extra
BuildRequires: python3-wheel
BuildRequires: python3-setuptools
BuildRequires: glib2
BuildRequires: desktop-file-utils
BuildRequires: libappstream-glib
%description %_description
%package -n mugshot
Requires: util-linux-user
Requires: python3-cairo
Requires: python3-pexpect
Requires: python3-gobject
Summary: User Management Utility for Linux
%description -n mugshot %_description
%prep
%autosetup -n mugshot-mugshot-%version
%build
%pyproject_wheel
%install
%pyproject_install
%pyproject_save_files -L 'mugshot*'
install -Dm644 data/glib-2.0/schemas/%{lower:%app}.gschema.xml %buildroot%_datadir/glib-2.0/schemas/
%find_lang mugshot
%check
#pyproject_check_import
desktop-file-validate %buildroot%_datadir/applications/%app.desktop
appstream-util validate-relax --nonet %buildroot%_metainfodir/mugshot.appdata.xml
%files -n mugshot -f %{pyproject_files} -f mugshot.lang
%doc README.md NEWS
%license COPYING
%_bindir/mugshot
%_datadir/glib-2.0/schemas/%{lower:%app}.gschema.xml
%_datadir/applications/%app.desktop
%_datadir/mugshot/
%_metainfodir/mugshot.appdata.xml
%_mandir/man1/mugshot.1.gz
%_iconsdir/hicolor/*/apps/mugshot.svg
-3
View File
@@ -1,3 +0,0 @@
let v = gh("bluesabre/mugshot");
v.crop(8);
rpm.version(v);
+2 -2
View File
@@ -13,8 +13,8 @@
%global crate sccache
Name: rust-sccache
Version: 0.8.1
Release: 1%?dist
Version: 0.7.6
Release: %autorelease
Summary: Ccache-like tool
License: Apache-2.0
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "tuxclocker.spec"
}
}
-42
View File
@@ -1,42 +0,0 @@
Name: tuxclocker
Version: 1.5.1
Release: 1%?dist
Summary: Qt overclocking tool for GNU/Linux
License: GPL-3.0
URL: https://github.com/Lurkki14/tuxclocker
# boost qt5-qtbase qt5-qtcharts
Requires: hicolor-icon-theme
BuildRequires: git-core meson hwdata qt5-qttools gettext anda-srpm-macros
BuildRequires: boost-devel qt5-qtbase-devel qt5-qtcharts-devel libdrm-devel libXNVCtrl-devel openssl-devel
Recommends: xorg-x11-drv-nvidia libdrm libXNVCtrl hwdata
%description
TuxClocker is a hardware controlling and monitoring program.
TuxClocker consists of a DBus daemon and a Qt GUI that uses the daemon.
%prep
git clone --recursive %url .
git checkout %version
%build
%meson
%meson_build
%install
%meson_install
%files
%doc README.md
%license LICENSE
%_bindir/tuxclocker-qt
%_bindir/tuxclockerd
%_libdir/libtuxclocker.so
%_libdir/tuxclocker/
%_datadir/applications/tuxclocker.desktop
%_datadir/dbus-1/system-services/org.tuxclocker.service
%_datadir/dbus-1/system.d/org.tuxclocker.conf
%_datadir/locale/*/LC_MESSAGES/tuxclocker.mo
%_iconsdir/hicolor/scalable/apps/tuxclocker-logo.svg
%changelog
%autochangelog
-1
View File
@@ -1 +0,0 @@
rpm.version(gh("Lurkki14/tuxclocker"));
@@ -6,8 +6,8 @@
Name: vencord-desktop
Provides: VencordDesktop = %{version}-%{release}
Version: 1.5.3
Release: 1%?dist
Version: 1.5.0
Release: 1%{?dist}
License: GPL-3.0
Summary: Vesktop is a cross platform desktop app aiming to give you a snappier Discord experience with Vencord pre-installed
URL: https://github.com/Vencord/Vesktop
+3 -3
View File
@@ -1,6 +1,6 @@
%global nodev 20.12.2
%global npmv 10.5.0
%global ver 0.19.2
%global nodev 18.13.0
%global npmv 8.19.3
%global ver 0.15.2
%define debug_package %nil
%global _build_id_links none
@@ -1,5 +1,5 @@
Name: budgie-extras
Version: 1.8.0
Version: 1.7.1
Release: 1%{?dist}
License: GPL-3.0
+1 -1
View File
@@ -1,4 +1,4 @@
%define _ubuntu_rel 22.10.20220822-0ubuntu12
%define _ubuntu_rel 22.10.20220822-0ubuntu6
%global _hardened_build 0
Name: compiz9
@@ -3,7 +3,7 @@
Name: elementary-appcenter
Summary: Software Center from elementary
Version: 7.4.0
Release: 2%{?dist}
Release: 1%{?dist}
License: GPL-3.0
Provides: appcenter = %{version}-%{release}
@@ -12,8 +12,6 @@ Obsoletes: appcenter < 7.2.1-2
URL: https://github.com/elementary/appcenter
Source0: %url/archive/%{version}/appcenter-%{version}.tar.gz
Patch0: pr2099.patch
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
@@ -1,311 +0,0 @@
commit fce55d9373bfb82953191b32e276a2129ffcb8c1
Author: Marius Meisenzahl <meisenzahl@users.noreply.github.com>
Date: Wed Feb 7 00:14:43 2024 +0100
Add support for AppStream 1.0 (#2099)
diff --git a/src/Core/FlatpakBackend.vala b/src/Core/FlatpakBackend.vala
index 98931505..10f2baab 100644
--- a/src/Core/FlatpakBackend.vala
+++ b/src/Core/FlatpakBackend.vala
@@ -400,8 +400,13 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
var category_array = new GLib.GenericArray<AppStream.Category> ();
category_array.add (category);
+#if HAS_APPSTREAM_1_0
+ AppStream.utils_sort_components_into_categories (user_appstream_pool.get_components ().as_array (), category_array, false);
+ AppStream.utils_sort_components_into_categories (system_appstream_pool.get_components ().as_array (), category_array, false);
+#else
AppStream.utils_sort_components_into_categories (user_appstream_pool.get_components (), category_array, false);
AppStream.utils_sort_components_into_categories (system_appstream_pool.get_components (), category_array, false);
+#endif
components = category.get_components ();
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
@@ -417,13 +422,21 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
var comps = user_appstream_pool.search (query);
if (category == null) {
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var packages = get_packages_for_component_id (comp.get_id ());
apps.add_all (packages);
});
} else {
var cat_packages = get_applications_for_category (category);
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var packages = get_packages_for_component_id (comp.get_id ());
foreach (var package in packages) {
if (package in cat_packages) {
@@ -435,13 +448,21 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
comps = system_appstream_pool.search (query);
if (category == null) {
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var packages = get_packages_for_component_id (comp.get_id ());
apps.add_all (packages);
});
} else {
var cat_packages = get_applications_for_category (category);
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var packages = get_packages_for_component_id (comp.get_id ());
foreach (var package in packages) {
if (package in cat_packages) {
@@ -510,7 +531,11 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
continue;
}
+#if HAS_APPSTREAM_1_0
+ if (package.component.get_developer ().get_name () == author) {
+#else
if (package.component.developer_name == author) {
+#endif
package_ids.add (package.component.id);
AppCenterCore.Package? user_package = null;
@@ -1095,7 +1120,11 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
warning ("Errors found in flatpak appdata, some components may be incomplete/missing: %s", e.message);
} finally {
var comp_validator = ComponentValidator.get_default ();
+#if HAS_APPSTREAM_1_0
+ user_appstream_pool.get_components ().as_array ().foreach ((comp) => {
+#else
user_appstream_pool.get_components ().foreach ((comp) => {
+#endif
if (!comp_validator.validate (comp)) {
return;
}
@@ -1133,7 +1162,11 @@ public class AppCenterCore.FlatpakBackend : Backend, Object {
warning ("Errors found in flatpak appdata, some components may be incomplete/missing: %s", e.message);
} finally {
var comp_validator = ComponentValidator.get_default ();
+#if HAS_APPSTREAM_1_0
+ system_appstream_pool.get_components ().as_array ().foreach ((comp) => {
+#else
system_appstream_pool.get_components ().foreach ((comp) => {
+#endif
if (!comp_validator.validate (comp)) {
return;
}
diff --git a/src/Core/Package.vala b/src/Core/Package.vala
index 0f9a90c4..ed141292 100644
--- a/src/Core/Package.vala
+++ b/src/Core/Package.vala
@@ -306,7 +306,11 @@ public class AppCenterCore.Package : Object {
return _author;
}
+#if HAS_APPSTREAM_1_0
+ _author = component.get_developer ().get_name ();
+#else
_author = component.developer_name;
+#endif
if (_author == null) {
var project_group = component.project_group;
@@ -677,7 +681,11 @@ public class AppCenterCore.Package : Object {
}
try {
+#if HAS_APPSTREAM_1_0
+ description = AppStream.markup_convert (description, TEXT);
+#else
description = AppStream.markup_convert_simple (description);
+#endif
} catch (Error e) {
warning ("Failed to convert description to markup: %s", e.message);
}
@@ -919,7 +927,11 @@ public class AppCenterCore.Package : Object {
}
public AppStream.Release? get_newest_release () {
+#if HAS_APPSTREAM_1_0
+ var releases = component.get_releases_plain ().get_entries ();
+#else
var releases = component.get_releases ();
+#endif
releases.sort_with_data ((a, b) => {
if (a.get_version () == null || b.get_version () == null) {
if (a.get_version () != null) {
diff --git a/src/Core/PackageKitBackend.vala b/src/Core/PackageKitBackend.vala
index 09da4074..a108831e 100644
--- a/src/Core/PackageKitBackend.vala
+++ b/src/Core/PackageKitBackend.vala
@@ -275,7 +275,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
} finally {
var new_package_list = new Gee.HashMap<string, Package> ();
var comp_validator = ComponentValidator.get_default ();
+#if HAS_APPSTREAM_1_0
+ appstream_pool.get_components ().as_array ().foreach ((comp) => {
+#else
appstream_pool.get_components ().foreach ((comp) => {
+#endif
if (!comp_validator.validate (comp)) {
return;
}
@@ -317,7 +321,12 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
component.set_id (id);
component.set_origin (Package.APPCENTER_PACKAGE_ORIGIN);
-#if HAS_APPSTREAM_0_15
+#if HAS_APPSTREAM_1_0
+ var components = new AppStream.ComponentBox (AppStream.ComponentBoxFlags.NONE);
+ components.add (component);
+
+ appstream_pool.add_components (components);
+#elif HAS_APPSTREAM_0_15
var components = new GenericArray<AppStream.Component> ();
components.add (component);
@@ -430,7 +439,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
break;
}
+#if HAS_APPSTREAM_1_0
+ if (package.component.get_developer ().get_name () == author) {
+#else
if (package.component.developer_name == author) {
+#endif
packages.add (package);
}
}
@@ -447,7 +460,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
var category_array = new GLib.GenericArray<AppStream.Category> ();
category_array.add (category);
+#if HAS_APPSTREAM_1_0
+ AppStream.utils_sort_components_into_categories (appstream_pool.get_components ().as_array (), category_array, true);
+#else
AppStream.utils_sort_components_into_categories (appstream_pool.get_components (), category_array, true);
+#endif
components = category.get_components ();
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
@@ -465,7 +482,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
var apps = new Gee.TreeSet<AppCenterCore.Package> ();
var comps = appstream_pool.search (query);
if (category == null) {
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var package = get_package_for_component_id (comp.get_id ());
if (package != null) {
apps.add (package);
@@ -473,7 +494,11 @@ public class AppCenterCore.PackageKitBackend : Backend, Object {
});
} else {
var cat_packages = get_applications_for_category (category);
+#if HAS_APPSTREAM_1_0
+ comps.as_array ().foreach ((comp) => {
+#else
comps.foreach ((comp) => {
+#endif
var package = get_package_for_component_id (comp.get_id ());
if (package != null && package in cat_packages) {
apps.add (package);
diff --git a/src/Views/AppInfoView.vala b/src/Views/AppInfoView.vala
index 5a3a361a..bef37f0e 100644
--- a/src/Views/AppInfoView.vala
+++ b/src/Views/AppInfoView.vala
@@ -310,8 +310,16 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
oars_flowbox.add (uncurated);
}
#endif
+
+#if HAS_APPSTREAM_1_0
+ var active_locale = "en-US";
+ if (package_component.get_context () != null) {
+ active_locale = package_component.get_context ().get_locale () ?? "en-US";
+ }
+#else
var active_locale = package_component.get_active_locale ();
- if (active_locale != "en_US") {
+#endif
+ if (active_locale != "en_US" && active_locale != "en-US") {
var percent_translated = package_component.get_language (
// Expects language without locale
active_locale.split ("_")[0]
@@ -492,7 +500,11 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
}
}
+#if HAS_APPSTREAM_1_0
+ screenshots = package_component.get_screenshots_all ();
+#else
screenshots = package_component.get_screenshots ();
+#endif
if (screenshots.length > 0) {
screenshot_carousel = new Hdy.Carousel () {
@@ -1030,7 +1042,11 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
get_app_download_size.begin ();
Idle.add (() => {
+#if HAS_APPSTREAM_1_0
+ var releases = package.component.get_releases_plain ().get_entries ();
+#else
var releases = package.component.get_releases ();
+#endif
foreach (unowned var release in releases) {
if (release.get_version () == null) {
@@ -1049,7 +1065,11 @@ public class AppCenter.Views.AppInfoView : AppCenter.AbstractAppContainer {
release_carousel.add (release_row);
+#if HAS_APPSTREAM_1_0
+ if (package.installed && AppStream.vercmp_simple (release.get_version (), package.get_version ()) <= 0) {
+#else
if (package.installed && AppStream.utils_compare_versions (release.get_version (), package.get_version ()) <= 0) {
+#endif
break;
}
}
diff --git a/src/Widgets/ReleaseRow.vala b/src/Widgets/ReleaseRow.vala
index 3b487914..36fcbc76 100644
--- a/src/Widgets/ReleaseRow.vala
+++ b/src/Widgets/ReleaseRow.vala
@@ -116,7 +116,11 @@ public class AppCenter.Widgets.ReleaseRow : Gtk.Box {
private string format_release_description (string? description ) {
if (description != null) {
try {
+#if HAS_APPSTREAM_1_0
+ var markup = AppStream.markup_convert (description, TEXT);
+#else
var markup = AppStream.markup_convert_simple (description);
+#endif
if (markup.strip () != "") {
return markup;
diff --git a/src/meson.build b/src/meson.build
index d3d558ef..df69a0bf 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -78,6 +78,10 @@ if appstream.version().version_compare('>=0.16')
args += '--define=HAS_APPSTREAM_0_16'
endif
+if appstream.version().version_compare('>=1.0')
+ args += '--define=HAS_APPSTREAM_1_0'
+endif
+
if get_option('packagekit_backend')
appcenter_files += files(
'Core/PackageKitBackend.vala',
@@ -3,8 +3,8 @@
Name: elementary-calculator
Summary: Calculator app designed for elementary
Version: 8.0.0
Release: 1%?dist
Version: 2.0.3
Release: 1%{?dist}
License: GPL-3.0-or-later
URL: https://github.com/elementary/%{srcname}
@@ -3,8 +3,8 @@
Name: elementary-capnet-assist
Summary: Captive Portal Assistant for elementary
Version: 8.0.0
Release: 1%?dist
Version: 2.4.4
Release: 2%{?dist}
License: GPL-3.0-or-later
URL: https://github.com/elementary/capnet-assist
@@ -21,13 +21,10 @@ BuildRequires: pkgconfig(gcr-ui-3)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(granite-7)
BuildRequires: pkgconfig(granite)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libhandy-1) >= 1.0.0
BuildRequires: pkgconfig(webkit2gtk-4.1)
BuildRequires: pkgconfig(gcr-4)
BuildRequires: pkgconfig(libadwaita-1)
BuildRequires: pkgconfig(webkitgtk-6.0)
BuildRequires: fdupes
Requires: NetworkManager
@@ -11,7 +11,7 @@ URL: https://github.com/elementary/greeter
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
Source1: 40-%{appname}.conf
Patch0: https://github.com/elementary/greeter/compare/7.0.0..42320c266395606b0c20782603e7407124c3f7a4.patch
Patch0: https://github.com/elementary/greeter/commit/dbd9b6f9701f5992c3b3257c025b9cd80d041cc8.patch
BuildRequires: desktop-file-utils
BuildRequires: gettext
@@ -36,9 +36,9 @@ BuildRequires: pkgconfig(granite) >= 5.0
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libhandy-1)
BuildRequires: pkgconfig(liblightdm-gobject-1)
BuildRequires: pkgconfig(mutter-clutter-14)
BuildRequires: pkgconfig(mutter-cogl-14)
BuildRequires: pkgconfig(mutter-cogl-pango-14)
BuildRequires: pkgconfig(mutter-clutter-13)
BuildRequires: pkgconfig(mutter-cogl-13)
BuildRequires: pkgconfig(mutter-cogl-pango-13)
BuildRequires: pkgconfig(x11)
Provides: pantheon-greeter = %{version}-%{release}
@@ -3,8 +3,8 @@
Name: elementary-icon-theme
Summary: Icons from the Elementary Project
Version: 8.0.0
Release: 1%?dist
Version: 7.3.1
Release: 2%{?dist}
License: GPL-3.0-or-later
URL: https://github.com/elementary/icons
@@ -5,13 +5,16 @@
Name: elementary-photos
Summary: Photo manager and viewer from elementary
Version: 8.0.0
Release: 1%?dist
Version: 2.8.0
Release: 2%?dist
License: LGPL-2.0-or-later
URL: https://github.com/elementary/photos
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
# RIP the publishing plugins (sorry for the "wide" patch, having issues with just the relevant commits)
Patch0: https://github.com/elementary/photos/compare/7261606a05d1f41116aba5c86b62d1f739419ed1..09e55943b266bc2861b913251cb834169d81743e.patch
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: libappstream-glib
@@ -19,7 +22,6 @@ BuildRequires: meson >= 0.46.0
BuildRequires: vala
BuildRequires: fdupes
BuildRequires: git-core
BuildRequires: cmake
BuildRequires: pkgconfig(gee-0.8) >= 0.8.5
BuildRequires: pkgconfig(geocode-glib-2.0)
@@ -41,8 +43,6 @@ BuildRequires: pkgconfig(libhandy-1)
BuildRequires: pkgconfig(libraw) >= 0.13.2
BuildRequires: pkgconfig(libwebp) >= 0.4.4
BuildRequires: pkgconfig(sqlite3) >= 3.5.9
BuildRequires: pkgconfig(libportal)
BuildRequires: pkgconfig(libportal-gtk3)
Requires: hicolor-icon-theme
@@ -53,6 +53,7 @@ Foundation.
%prep
%autosetup -n %{srcname}-%{version} -N
git apply %PATCH0 # The .patch file has Git binary patches, so we need to apply it manually with Git
%build
@@ -74,10 +75,10 @@ desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.viewer.desktop
%{buildroot}/%{_datadir}/applications/%{appname}-viewer.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%{buildroot}/%{_datadir}/metainfo/%{appname}.appdata.xml
%files -f %{appname}.lang
@@ -91,11 +92,11 @@ appstream-util validate-relax --nonet \
%{_libexecdir}/%{appname}/
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/applications/%{appname}.viewer.desktop
%{_datadir}/applications/%{appname}-viewer.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
%{_datadir}/icons/hicolor/*/apps/%{appname}.viewer.svg
%{_datadir}/metainfo/%{appname}.metainfo.xml
%{_datadir}/icons/hicolor/*/apps/%{appname}-viewer.svg
%{_datadir}/metainfo/%{appname}.appdata.xml
%changelog
@@ -3,8 +3,8 @@
Name: elementary-shortcut-overlay
Summary: Native, OS-wide shortcut overlay
Version: 8.0.0
Release: 1%?dist
Version: 2.0.1
Release: %autorelease
License: GPL-3.0
URL: https://github.com/elementary/shortcut-overlay
@@ -49,7 +49,7 @@ desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%{buildroot}/%{_datadir}/metainfo/%{appname}.appdata.xml
%files -f %{appname}.lang
@@ -59,7 +59,7 @@ appstream-util validate-relax --nonet \
%{_bindir}/%{appname}
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/metainfo/%{appname}.metainfo.xml
%{_datadir}/metainfo/%{appname}.appdata.xml
%changelog
@@ -3,8 +3,8 @@
Name: elementary-sideload
Summary: Sideload flatpaks on Pantheon
Version: 6.2.2
Release: 1%?dist
Version: 6.2.1
Release: 1%{?dist}
License: GPL-3.0-or-later
URL: https://github.com/elementary/sideload
@@ -3,8 +3,8 @@
Name: elementary-theme
Summary: Elementary GTK+ Stylesheet
Version: 8.0.0
Release: 1%?dist
Version: 7.3.0
Release: 1%{?dist}
License: GPL-3.0
URL: https://github.com/elementary/stylesheet
+9 -13
View File
@@ -3,16 +3,14 @@
Name: gala
Summary: Gala window manager
Version: 7.1.3
Release: 2%{?dist}
Release: 1%{?dist}
License: GPL-3.0-or-later
Epoch: 1
URL: https://github.com/elementary/gala
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
# patch some default settings to better match Fedora
Patch0: 0000-Modify-default-settings-for-Fedora.patch
Patch: https://github.com/elementary/gala/compare/7.1.3..43d1e6a01b56a84a4e752e1970a35c19402941eb.patch
BuildRequires: desktop-file-utils
BuildRequires: gettext
@@ -33,13 +31,11 @@ BuildRequires: pkgconfig(granite) >= 5.4.0
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libbamf3)
BuildRequires: pkgconfig(libcanberra)
BuildRequires: pkgconfig(libhandy-1)
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(mutter-clutter-14)
BuildRequires: pkgconfig(mutter-cogl-14)
BuildRequires: pkgconfig(mutter-cogl-pango-14)
BuildRequires: pkgconfig(mutter-clutter-13)
BuildRequires: pkgconfig(mutter-cogl-13)
BuildRequires: pkgconfig(mutter-cogl-pango-13)
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
# gala provides a generic icon (apps/multitasking-view)
Requires: hicolor-icon-theme
@@ -65,7 +61,7 @@ This package contains the shared libraries.
%package devel
Summary: Gala window manager development files
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%description devel
Gala is Pantheon's Window Manager, part of the elementary project.
@@ -89,8 +85,8 @@ This package contains the development headers.
%check
%dnl desktop-file-validate \
%dnl %{buildroot}/%{_sysconfdir}/xdg/autostart/gala-daemon.desktop
desktop-file-validate \
%{buildroot}/%{_sysconfdir}/xdg/autostart/gala-daemon.desktop
desktop-file-validate \
%{buildroot}/%{_datadir}/applications/gala*.desktop
@@ -102,7 +98,7 @@ desktop-file-validate \
%files -f gala.lang
%doc README.md
%license COPYING
%dnl %config(noreplace) %{_sysconfdir}/xdg/autostart/gala-daemon.desktop
%config(noreplace) %{_sysconfdir}/xdg/autostart/gala-daemon.desktop
%{_bindir}/gala
%{_bindir}/gala-daemon
@@ -5,8 +5,8 @@ apps built for elementary.}
Name: granite-7
Summary: Elementary companion library for GTK+ and GLib
Version: 7.5.0
Release: 1%?dist
Version: 7.4.0
Release: 1%{?dist}
License: LGPL-3.0-or-later
URL: https://github.com/elementary/granite
@@ -82,7 +82,6 @@ desktop-file-validate \
%{_datadir}/metainfo/granite-7.metainfo.xml
%{_datadir}/icons/hicolor/*/apps/io.elementary.granite-7.svg
%{_datadir}/themes/Granite/
%files devel
@@ -3,8 +3,8 @@
Name: pantheon-agent-polkit
Summary: Pantheon Polkit Agent
Version: 8.0.0
Release: 1%?dist
Version: 1.0.5
Release: 1%{?dist}
License: LGPL-2.0-or-later
URL: https://github.com/elementary/%{name}
@@ -18,12 +18,10 @@ BuildRequires: vala >= 0.34.1
BuildRequires: fdupes
BuildRequires: pkgconfig(glib-2.0) >= 2.32.0
BuildRequires: pkgconfig(granite) >= 6.0.0
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(polkit-agent-1)
BuildRequires: pkgconfig(polkit-gobject-1)
BuildRequires: pkgconfig(libadwaita-1)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(granite-7)
BuildRequires: pkgconfig(gtk4)
%description
An agent for Polkit authorization designed for Pantheon.
@@ -52,7 +50,7 @@ desktop-file-validate \
%{buildroot}/%{_datadir}/applications/%{appname}.desktop
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{appname}.metainfo.xml
%{buildroot}/%{_datadir}/metainfo/%{appname}.appdata.xml
%files -f %{appname}.lang
@@ -64,7 +62,7 @@ appstream-util validate-relax --nonet \
%{_libexecdir}/policykit-1-pantheon/
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/metainfo/%{appname}.metainfo.xml
%{_datadir}/metainfo/%{appname}.appdata.xml
%changelog
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "pantheon-tweaks.spec"
}
}
@@ -0,0 +1,37 @@
Name: pantheon-tweaks
Version: 1.1.2
Release: 1%{?dist}
Summary: A system settings panel for the Pantheon desktop environment
License: GPL-3.0
URL: https://github.com/pantheon-tweaks/pantheon-tweaks
Source0: %{url}/archive/refs/tags/%{version}.tar.gz
BuildRequires: vala switchboard-devel pkgconfig(gee-0.8) pkgconfig(glib-2.0)
BuildRequires: granite-devel >= 6.0.0 pkgconfig(gtk+-3.0) meson vala
Requires: gtk3 granite
%description
A system settings panel for the Pantheon Desktop that
lets you easily and safely customise your desktop's appearance.
%prep
%autosetup
%build
%meson
%meson_build
%install
%meson_install
%files
%doc README.md
%license COPYING
/usr/lib64/switchboard/personal/libpantheon-tweaks.so
%{_datadir}/icons/hicolor/32x32/categories/preferences-desktop-tweaks.svg
%{_datadir}/locale/*/LC_MESSAGES/pantheon-tweaks-plug.mo
%{_datadir}/metainfo/pantheon-tweaks.metainfo.xml
%changelog
* Tue Jan 17 2023 windowsboy111 <windowsboy111@fyralabs.com> - 1.0.4-1
- Initial package
@@ -0,0 +1 @@
rpm.version(gh("pantheon-tweaks/pantheon-tweaks"));
@@ -9,14 +9,12 @@
Name: switchboard-plug-about
Summary: Switchboard System Information plug
Version: 6.2.0
Release: 3%{?dist}
Release: 2%{?dist}
License: GPL-3.0-or-later
URL: https://github.com/elementary/switchboard-plug-about
Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
Patch0: https://github.com/elementary/switchboard-plug-about/compare/6.2.0..72d7da13da2824812908276751fd3024db2dd0f8.patch
BuildRequires: gettext
BuildRequires: libappstream-glib
BuildRequires: meson
@@ -2,20 +2,16 @@
%global plug_type personal
%global plug_name pantheon-tweaks
%global app io.github.pantheon_tweaks.pantheon-tweaks
Name: switchboard-plug-tweaks
Summary: Switchboard Tweaks Plug
Version: 2.0.2
Release: 2%?dist
Version: 1.1.2
Release: 1%{?dist}
License: GPL-3.0-or-later
URL: https://github.com/pantheon-tweaks/pantheon-tweaks
Source0: %{url}/archive/%{version}/%{plug_name}-%{version}.tar.gz
Provides: pantheon-tweaks = %version-%release
Obsoletes: pantheon-tweaks < 2.0.2-2
BuildRequires: gcc
BuildRequires: gettext
BuildRequires: libappstream-glib
@@ -26,7 +22,7 @@ BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(granite) >= 6.0.0
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(switchboard-3)
BuildRequires: pkgconfig(switchboard-2.0)
Requires: switchboard%{?_isa}
@@ -67,22 +63,28 @@ de trabalho.
%install
%meson_install
%find_lang %{plug_name}
%find_lang %{plug_name}-plug
# remove the specified stock icon from metainfo (invalid in libappstream-glib)
sed -i '/icon type="stock"/d' %buildroot%_metainfodir/%app.metainfo.xml
sed -i '/icon type="stock"/d' %{buildroot}/%{_datadir}/metainfo/%{plug_name}.metainfo.xml
%check
appstream-util validate-relax --nonet %buildroot%_metainfodir/%app.metainfo.xml
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{plug_name}.metainfo.xml
%files -f %{plug_name}.lang
%files -f %{plug_name}-plug.lang
%license COPYING
%doc README.md
%doc AUTHORS
%doc CONTRIBUTORS
%_bindir/pantheon-tweaks
%_datadir/applications/%app.desktop
%_iconsdir/hicolor/*/apps/%app.svg
%_metainfodir/io.github.pantheon_tweaks.pantheon-tweaks.metainfo.xml
%{_libdir}/switchboard/%{plug_type}/lib%{plug_name}.so
%{_datadir}/metainfo/%{plug_name}.metainfo.xml
%{_datadir}/icons/hicolor/*/categories/preferences-*.svg
%changelog
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com>
- Repackaged for Terra
@@ -4,11 +4,11 @@
%global plug_type hardware
%global plug_name wacom
%global plug_rdnn io.elementary.settings.wacom
%global plug_rdnn io.elementary.switchboard.wacom
Name: switchboard-plug-wacom
Summary: Switchboard Wacom Plug
Version: 8.0.0
Version: 1.0.1
Release: 1%?dist
License: GPL-3.0-or-later
@@ -25,7 +25,7 @@ BuildRequires: pkgconfig(libwacom)
BuildRequires: pkgconfig(gudev-1.0)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xi)
BuildRequires: pkgconfig(switchboard-3)
BuildRequires: switchboard-devel
Requires: switchboard%{?_isa}
Supplements: switchboard%{?_isa}
@@ -45,18 +45,22 @@ Supplements: switchboard%{?_isa}
%install
%meson_install
%find_lang %{plug_rdnn}
%find_lang %{plug_name}-plug
%check
appstream-util validate-relax --nonet \
%{buildroot}/%{_datadir}/metainfo/%{plug_rdnn}.metainfo.xml
%{buildroot}/%{_datadir}/metainfo/%{plug_rdnn}.appdata.xml
%files -f %{plug_rdnn}.lang
%files -f %{plug_name}-plug.lang
%doc README.md
%license COPYING
%{_libdir}/switchboard-3/%{plug_type}/lib%{plug_name}.so
%{_libdir}/switchboard/%{plug_type}/lib%{plug_name}.so
%{_datadir}/metainfo/%{plug_rdnn}.metainfo.xml
%{_datadir}/metainfo/%{plug_rdnn}.appdata.xml
%changelog
* Tue Jun 13 2023 windowsboy111 <windowsboy111@fyralabs.com> - 1.0.1-1
- Initial package.
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "switchboard-plug-wallet.spec"
}
}
@@ -0,0 +1,62 @@
%global __provides_exclude_from ^%{_libdir}/switchboard/.*\\.so$
%global srcname switchboard-plug-wallet
%global plug_type personal
%global plug_name wallet
%global plug_rdnn io.elementary.switchboard.wallet
%global commit 50582fc7ee43a4b47647d04786dcf1d0eb45af36
Name: switchboard-plug-wallet
Summary: Switchboard Wallet Plug
Version: %(c=%commit; echo ${c:0:7})
Release: 2%?dist
License: GPL-3.0-or-later
URL: https://github.com/elementary/%name
Source0: %url/archive/%version/%srcname-%version.tar.gz
BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: vala
BuildRequires: fdupes
BuildRequires: pkgconfig(granite) >= 0.5
BuildRequires: gtk3-devel
BuildRequires: pkgconfig(libsecret-1)
BuildRequires: switchboard-devel
Requires: switchboard%{?_isa}
Supplements: switchboard%{?_isa}
%description
Manage Payment Methods and related settings.
%prep
%autosetup -n %srcname-%commit -p1
%build
%meson
%meson_build
%install
%meson_install
%fdupes %buildroot%_datadir/icons/hicolor
%files
%doc README.md
%license COPYING
%_libdir/switchboard/%plug_type/lib%plug_rdnn.so
%_datadir/icons/hicolor/*/apps/%plug_rdnn.svg
%_datadir/locale/*/LC_MESSAGES/%plug_rdnn.mo
%changelog
* Tue Jun 13 2023 windowsboy111 <windowsboy111@fyralabs.com> - bfe73dfb95d9b46a0a34e0db35a178233c8552b0-1
- Initial package.
@@ -0,0 +1,3 @@
let req = new_req("https://api.github.com/repos/elementary/switchboard-plug-wallet/commits/HEAD");
req.head("Authorization", `Bearer ${env("GITHUB_TOKEN")}`);
rpm.global("commit", json(req.get()).sha);
@@ -1,10 +1,10 @@
%global srcname switchboard
%global appname io.elementary.settings
%global appname io.elementary.switchboard
Name: switchboard
Summary: Modular Desktop Settings Hub
Version: 8.0.0
Release: 1%?dist
Version: 6.0.2
Release: 1%{?dist}
License: LGPL-2.0-or-later
URL: https://github.com/elementary/%{name}
@@ -16,10 +16,12 @@ BuildRequires: libappstream-glib
BuildRequires: meson
BuildRequires: vala
BuildRequires: pkgconfig(granite-7)
BuildRequires: pkgconfig(gtk4)
BuildRequires: pkgconfig(libadwaita-1)
BuildRequires: fdupes sassc
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(granite) >= 5.4.0
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libhandy-1) >= 0.83.0
BuildRequires: fdupes
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
@@ -90,7 +92,7 @@ appstream-util validate-relax --nonet \
%{_datadir}/applications/%{appname}.desktop
%{_datadir}/glib-2.0/schemas/%{appname}.gschema.xml
%{_iconsdir}/hicolor/*/apps/%{appname}.svg
%{_datadir}/icons/hicolor/*/apps/%{appname}.svg
%{_datadir}/metainfo/%{appname}.appdata.xml
%files libs
@@ -100,14 +102,19 @@ appstream-util validate-relax --nonet \
%dir %{_libdir}/%{name}
%dir %{_libdir}/%{name}/*
%{_libdir}/lib%{name}-3.so.0
%{_libdir}/lib%{name}-3.so.2.0
%{_libdir}/lib%{name}-2.0.so.0
%{_libdir}/lib%{name}-2.0.so.2.0
%files devel
%{_includedir}/%{name}-3/
%{_includedir}/%{name}-2.0/
%{_libdir}/lib%{name}-3.so
%{_libdir}/pkgconfig/%{name}-3.pc
%{_libdir}/lib%{name}-2.0.so
%{_libdir}/pkgconfig/%{name}-2.0.pc
%{_datadir}/vala/vapi/%{name}-3.deps
%{_datadir}/vala/vapi/%{name}-3.vapi
%{_datadir}/vala/vapi/%{name}-2.0.deps
%{_datadir}/vala/vapi/%{name}-2.0.vapi
%changelog
* Sat Oct 15 2022 windowsboy111 <windowsboy111@fyralabs.com> - 6.0.2-1
- Repackaged for Terra
@@ -9,11 +9,10 @@ Summary: Stylish top panel
Version: 3.0.5
Release: 1%{?dist}
License: GPL-2.0-or-later
Epoch: 1
URL: https://github.com/elementary/wingpanel
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
Patch0: https://github.com/elementary/wingpanel/compare/3.0.5..5d22d436b45decfb2a50d9a7c27f2c961f1dd39f.patch
Patch0: https://github.com/elementary/wingpanel/commit/d6009d9f0d5c7479172093447ccceccba86ff1f3.patch
BuildRequires: desktop-file-utils
BuildRequires: gettext
@@ -23,17 +22,17 @@ BuildRequires: vala >= 0.24.0
BuildRequires: mesa-libEGL-devel
BuildRequires: pkgconfig(gala) >= 7.1.3-2
BuildRequires: pkgconfig(gala)
BuildRequires: pkgconfig(gdk-x11-3.0)
BuildRequires: pkgconfig(gee-0.8)
BuildRequires: pkgconfig(glib-2.0) >= 2.32
BuildRequires: pkgconfig(granite) >= 5.4.0
BuildRequires: pkgconfig(gtk+-3.0) >= 3.10
BuildRequires: pkgconfig(mutter-clutter-14)
BuildRequires: pkgconfig(mutter-cogl-14)
BuildRequires: pkgconfig(mutter-cogl-pango-14)
BuildRequires: pkgconfig(mutter-clutter-13)
BuildRequires: pkgconfig(mutter-cogl-13)
BuildRequires: pkgconfig(mutter-cogl-pango-13)
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
# wingpanel ayatana appindicator support was abandoned by upstream
# wingpanel-indicator-ayatana-2.0.3-10.fc32 retired for fedora 33+
@@ -44,8 +43,8 @@ Obsoletes: wingpanel-indicator-ayatana < 2.0.3-11
%package libs
Summary: Stylish top panel (shared library)
Enhances: %{name} = %{epoch}:%{version}-%{release}
Enhances: %{name}-devel = %{epoch}:%{version}-%{release}
Enhances: %{name} = %{version}-%{release}
Enhances: %{name}-devel = %{version}-%{release}
%description libs %{common_description}
@@ -54,7 +53,7 @@ This package contains the shared library.
%package devel
Summary: Stylish top panel (development files)
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%description devel %{common_description}
@@ -3,7 +3,7 @@
Name: gnome-shell-extension-%{extension}
Version: 2
Release: 2%{?dist}
Release: 1%{?dist}
Summary: GNOME Shell extension to bring back the app menu
License: GPL-3.0-only
URL: https://github.com/fthx/appmenu-is-back
@@ -11,9 +11,8 @@ URL: https://github.com/fthx/appmenu-is-back
BuildArch: noarch
Source0: https://github.com/fthx/appmenu-is-back/archive/refs/tags/v%{version}.tar.gz
Patch0: https://github.com/fthx/appmenu-is-back/commit/c251ff36d226dac679eb745638e3df236d3e1a20.patch
Requires: (gnome-shell >= 46~ with gnome-shell < 47~)
Requires: (gnome-shell >= 45~ with gnome-shell < 46~)
Recommends: gnome-extensions-app
%description
@@ -31,8 +30,5 @@ install -Dm644 extension.js %{buildroot}%{_datadir}/gnome-shell/extensions/%{uui
%{_datadir}/gnome-shell/extensions/%{uuid}
%changelog
* Mon Apr 1 2024 Lleyton Gray <lleyton@fyralabs.com> - 2-2
- Patch for GNOME 46 compatibility
* Thu Nov 16 2023 Lleyton Gray <lleyton@fyralabs.com> - 2-1
- Initial Release
@@ -1,13 +1,12 @@
# from Fedora upstream
%global extension pop-shell
%global uuid %{extension}@system76.com
%global commit cfa0c55e84b7ce339e5ce83832f76fee17e99d51
%global commit cf3c932b55d5c247906efe9d81f988ee092d9f51
%global shortcommit %{lua:print(macros.commit:sub(1,7))}
%global commit_date 20240404
%global ver 1.2.0
Name: terra-gnome-shell-extension-%{extension}
Version: %{ver}^%commit_date.%{shortcommit}
Version: %{ver}^%{shortcommit}
Release: 1%?dist
Summary: GNOME Shell extension for advanced tiling window management
License: GPL-3.0-only
@@ -1,8 +1,4 @@
if filters.contains("nightly") {
rpm.global("commit", gh_commit("pop-os/shell"));
if rpm.changed() {
rpm.global("ver", gh("pop-os/shell"));
rpm.release();
rpm.global("commit_date", date());
}
rpm.global("commit", get("https://api.github.com/repos/pop-os/shell/commits/HEAD").json().sha);
rpm.global("ver", gh("pop-os/shell"));
}
@@ -5,7 +5,7 @@
# https://github.com/FyshOS/fynedesk
%global goipath github.com/FyshOS/fynedesk
Version: 0.4.0
Version: 0.3.0
%gometa -f
@@ -17,7 +17,7 @@ A full desktop environment for Linux/Unix using Fyne.}
%global godocs AUTHORS README.md CHANGELOG.md
Name: %{goname}
Release: 1%?dist
Release: 1%{?dist}
Summary: A full desktop environment for Linux/Unix using Fyne
License: BSD-3-Clause
@@ -1,6 +1,6 @@
%global forgeurl https://github.com/KDE/latte-dock/
%global commit 8328f9a6863b4bae48adfdbc29b32b4c571c6530
%global commit 131ee4d39ce8913b2de8f9a673903225345c7a38
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date %(date '+%Y%m%d')
%global snapshot_info %{commit_date}.%{shortcommit}
@@ -9,7 +9,7 @@ Name: latte-dock-nightly
Version: 0.10.0^%{snapshot_info}
%forgemeta
Release: 1%?dist
Release: 1%{?dist}
Summary: Latte is a dock based on plasma frameworks
License: GPL-2.0-or-later
@@ -1,5 +1,5 @@
%global forgeurl https://gitlab.com/ubports/development/core/lomiri-app-launch
%global commit af441bdb31bb76b207119a8c91eef3fa93c0c078
%global commit d3bc3b7296a01f6b020e32080c9c40dd1c656b05
%forgemeta
Name: lomiri-app-launch
@@ -1,10 +1,10 @@
%global forgeurl https://gitlab.com/ubports/development/core/lomiri-download-manager
%global commit 682c4928a91da598767e0be2496d9c35af7db035
%global commit 2c7d6921ac56862c197958f4e5c31aa76a1a50e1
%forgemeta
Name: lomiri-download-manager
Version: 0.1.3
Release: 1%{?dist}
Version: 0.1.2
Release: %autorelease
Summary: Upload Download Manager for Lomiri
License: LGPLv3
URL: https://gitlab.com/ubports/development/core/lomiri-download-manager
@@ -23,7 +23,6 @@ BuildRequires: qt5-qtdeclarative-devel
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(libglog)
BuildRequires: pkgconfig(liblomiri-api)
BuildRequires: pkgconfig(systemd)
BuildRequires: fdupes
%description
@@ -61,7 +60,7 @@ sed -e "s/-Werror//g" -i CMakeLists.txt
%files -f %{name}.lang
%license COPYING
%config /usr/etc/dbus-1/system.d/*.conf
%config %{_sysconfdir}/dbus-1/system.d/*.conf
%{_bindir}/lomiri-*
%{_userunitdir}/*.service
%{_libdir}/liblomiri-download-manager-client.so.*
@@ -1,7 +0,0 @@
let o = get("https://gitlab.com/api/v4/projects/17088252/repository/tags").json_arr()[0];
let f = rpm.f;
rpm.version(o.name);
// check if changed
if rpm.f != f {
rpm.global("commit", o.commit.id);
}
@@ -30,7 +30,6 @@ BuildRequires: pkgconfig(libgmenuharness)
BuildRequires: pkgconfig(ofono)
BuildRequires: pkgconfig(qofono-qt5)
BuildRequires: pkgconfig(lomiri-url-dispatcher)
BuildRequires: pkgconfig(systemd)
Requires: gmenuharness
%description
@@ -65,7 +64,7 @@ The %{name}-doc package contains documentation files for %{name}.
%files -f %{name}.lang
%doc README.md
%license COPYING COPYING.LGPL
%config /usr/etc/xdg/autostart/lomiri-indicator-network.desktop
%config %{_sysconfdir}/xdg/autostart/lomiri-indicator-network.desktop
%{_userunitdir}/*.service
%{_libdir}/liblomiri-connectivity-qt1.so.*
%dir %{_qt5_qmldir}/Lomiri/Connectivity
@@ -92,7 +91,10 @@ The %{name}-doc package contains documentation files for %{name}.
%{_libdir}/pkgconfig/lomiri-connectivity-qt1.pc
%files doc
%{_docdir}/lomiri-indicator-network
%dir %{_docdir}/lomiri-connectivity-doc
%{_docdir}/lomiri-connectivity-doc/cpp/
%{_docdir}/lomiri-connectivity-doc/dbus/
%{_docdir}/lomiri-connectivity-doc/qml/
%changelog
%autochangelog
@@ -1,5 +1,5 @@
%global forgeurl https://gitlab.com/ubports/development/core/lomiri-system-settings
%global commit 30d9df926b6837b139990a622d39171ea42c9017
%global commit ad39d8a88e71320c2d6f1a39a96bfe421f644519
%forgemeta
Name: lomiri-system-settings
@@ -10,6 +10,7 @@ License: GPLv3
URL: https://gitlab.com/ubports/development/core/lomiri-system-settings
Source0: %{url}/-/archive/%commit/lomiri-system-settings-%commit.tar.gz
Patch0: https://sources.debian.org/data/main/l/lomiri-system-settings/1.0.1-2/debian/patches/1001_use-maliit-keyboard-for-language-plugin.patch
Patch1: https://sources.debian.org/data/main/l/lomiri-system-settings/1.0.1-2/debian/patches/2001_disable-current-language-switching.patch
BuildRequires: cmake
BuildRequires: gcc-c++
@@ -1,5 +1,5 @@
%global forgeurl https://gitlab.com/ubports/development/core/lomiri-ui-toolkit
%global commit 454d980c352f3cea725458ff8a3d04ae686d2a96
%global commit 28178b0be8fc2c66934da155dee1c6238ecc98c0
%forgemeta
Name: lomiri-ui-toolkit
@@ -1,5 +1,2 @@
rpm.version(gitlab_tag("19057685"));
if rpm.changed() {
rpm.global("commit", gitlab_commit("19057685", "main"));
rpm.release();
}
rpm.version(get("https://gitlab.com/api/v4/projects/19057685/repository/tags").json_arr()[0].name);
rpm.global("commit", get("https://gitlab.com/api/v4/projects/19057685/repository/commits").json_arr()[0].id);
@@ -4,7 +4,7 @@
Name: lomiri-url-dispatcher
Version: 0.1.3
Release: 2%{?dist}
Release: 1%{?dist}
Summary: A small library for handling URLs over dbus
License: LGPL-3.0
@@ -1,4 +1,2 @@
rpm.version(gitlab_tag("17424894"));
if rpm.changed() {
rpm.global("commit", get("https://gitlab.com/api/v4/projects/17424894/repository/commits").json_arr()[0].id);
}
rpm.version(get("https://gitlab.com/api/v4/projects/17424894/repository/tags").json_arr()[0].name);
rpm.global("commit", get("https://gitlab.com/api/v4/projects/17424894/repository/commits").json_arr()[0].id);
@@ -1,5 +1,5 @@
%global forgeurl https://gitlab.com/ubports/development/core/lomiri
%global commit 426b9f3436938f149490cee340e1fab79ee7b650
%global commit a083a14fe65105fc1996ceb1b92165ca3b0cb94e
%forgemeta
Name: lomiri
@@ -1,4 +1,3 @@
rpm.version(gitlab_tag("25716028"));
if rpm.changed() {
rpm.global("commit", get("https://gitlab.com/api/v4/projects/25716028/repository/commits").json_arr()[0].id);
}
let o = get("https://gitlab.com/api/v4/projects/25716028/repository/tags").json_arr()[0];
rpm.version(o.name);
rpm.global("commit", get("https://gitlab.com/api/v4/projects/25716028/repository/commits").json_arr()[0].id);
@@ -1,4 +1,4 @@
%global rn 4
%global rn 1
Name: unity-greeter
Version: 23.10.1
@@ -1,9 +1,9 @@
%define _ubuntu_rel 1ubuntu4
%define _ubuntu_rel 1ubuntu1
Name: unity-session
Summary: Lightdm profile for Unity 7
Version: 46.0
Release: 1%?dist
Version: 45.0
Release: 1%{?dist}
License: GPL-2.0
URL: https://packages.ubuntu.com/jammy/unity-session
@@ -1,4 +1,4 @@
%define archive unity_7.7.0+23.04.20230222.2-0ubuntu7.tar.xz
%define archive unity_7.7.0+23.04.20230222.2-0ubuntu4.tar.xz
Name: unity-shell
Version: 7.7.0
@@ -1,7 +1,7 @@
Name: ayatana-indicator-datetime
Summary: A GTK implementation of the StatusNotifierItem Specification
Version: 24.5.0
Release: 1%?dist
Version: 23.10.1
Release: 1%{?dist}
License: GPL-3.0
URL: https://github.com/AyatanaIndicators/ayatana-indicator-datetime
Source0: %{url}/archive/refs/tags/%{version}.tar.gz
@@ -38,7 +38,7 @@ Unity7 desktop and Lomiri desktop.
%build
%cmake -DENABLE_LOMIRI_FEATURES=ON \
-DENABLE_TESTS=OFF\
-DENABLE_TESTS=ON \
-DENABLE_COVERAGE=OFF \
%cmake_build
@@ -1,7 +1,7 @@
Name: ayatana-indicator-messages
Summary: Ayatana Indicator Messages Applet
Version: 24.5.0
Release: 1%?dist
Version: 23.10.0
Release: %autorelease
License: GPLv3
URL: https://github.com/AyatanaIndicators/ayatana-indicator-messages
Source0: %{url}/archive/refs/tags/%{version}.tar.gz
@@ -1,7 +1,7 @@
Name: ayatana-indicator-notifications
Summary: Ayatana Indicator Notifications Applet
Version: 23.10.1
Release: 1%?dist
Version: 23.10.0
Release: 1%{?dist}
License: GPL-3.0
URL: https://github.com/AyatanaIndicators/ayatana-indicator-notifications
Source0: %{url}/archive/refs/tags/%{version}.tar.gz
@@ -1,7 +1,7 @@
Name: ayatana-indicator-session
Summary: Ayatana Indicator Session Applet
Version: 24.5.0
Release: 1%?dist
Version: 23.10.3
Release: 1%{?dist}
License: GPL-3.0
URL: https://github.com/AyatanaIndicators/ayatana-indicator-session
Source0: %{url}/archive/refs/tags/%{version}.tar.gz
@@ -1,7 +1,7 @@
Name: ayatana-indicator-sound
Summary: Ayatana Indicator Sound Applet
Version: 24.5.0
Release: 1%?dist
Version: 23.10.3
Release: 1%{?dist}
License: GPLv3
URL: https://github.com/AyatanaIndicators/ayatana-indicator-sound
Source0: %{url}/archive/refs/tags/%{version}.tar.gz
@@ -1,142 +0,0 @@
From 4d44531c8f624f5b479c3ff23e8fecc67eb848ab Mon Sep 17 00:00:00 2001
From: Jeremy Linton <jeremy.linton@arm.com>
Date: Fri, 22 Oct 2021 14:51:54 -0500
Subject: [PATCH] Delay for logind, and fallback to seat0
There is systemd/logind race with when restarting
sddm that causes logind1 not to be available. Previously
this meant the seat0 was immediately created regardless
of the state of CanGraphical.
Fixing this, though we still want seat0 to be started
if none of the seats appear to be graphical. Presumably
there are some graphics on the machine, otherwise
why run sddm? Wait a bit, and create seat0 anyway. If
this fails the output from Xorg should tell us why. This
is generally a better strategy than what happens a good
amount of time now, where sddm is started and silent about
why the screen is blank.
References:
* https://bugzilla.redhat.com/2011991
* https://bugzilla.redhat.com/2016310
Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
---
src/daemon/LogindDBusTypes.cpp | 31 +++++++++++++++++++++----------
src/daemon/SeatManager.cpp | 22 ++++++++++++++++++++++
src/daemon/SeatManager.h | 1 +
3 files changed, 44 insertions(+), 10 deletions(-)
diff --git a/src/daemon/LogindDBusTypes.cpp b/src/daemon/LogindDBusTypes.cpp
index 011bb7f..6255c69 100644
--- a/src/daemon/LogindDBusTypes.cpp
+++ b/src/daemon/LogindDBusTypes.cpp
@@ -8,6 +8,8 @@
#include <QDebug>
+#include <unistd.h>
+
class LogindPathInternal {
public:
LogindPathInternal();
@@ -46,17 +48,26 @@ LogindPathInternal::LogindPathInternal()
qRegisterMetaType<UserInfoList>("UserInfoList");
qDBusRegisterMetaType<UserInfoList>();
- if (QDBusConnection::systemBus().interface()->isServiceRegistered(QStringLiteral("org.freedesktop.login1"))) {
- qDebug() << "Logind interface found";
- available = true;
- serviceName = QStringLiteral("org.freedesktop.login1");
- managerPath = QStringLiteral("/org/freedesktop/login1");
- managerIfaceName = QStringLiteral("org.freedesktop.login1.Manager");
- seatIfaceName = QStringLiteral("org.freedesktop.login1.Seat");
- sessionIfaceName = QStringLiteral("org.freedesktop.login1.Session");
- userIfaceName = QStringLiteral("org.freedesktop.login1.User");
- return;
+#ifdef HAVE_SYSTEMD
+ // systemd-logind should be running, although because it takes a few moments to restart after
+ // systemctl isolate calls, it may not yet be running. Wait a few seconds for it, while blocking everything else.
+ int logind_wait_seconds = 50;
+ while (logind_wait_seconds--) {
+ if (QDBusConnection::systemBus().interface()->isServiceRegistered(QStringLiteral("org.freedesktop.login1"))) {
+ qDebug() << "Logind interface found";
+ available = true;
+ serviceName = QStringLiteral("org.freedesktop.login1");
+ managerPath = QStringLiteral("/org/freedesktop/login1");
+ managerIfaceName = QStringLiteral("org.freedesktop.login1.Manager");
+ seatIfaceName = QStringLiteral("org.freedesktop.login1.Seat");
+ sessionIfaceName = QStringLiteral("org.freedesktop.login1.Session");
+ userIfaceName = QStringLiteral("org.freedesktop.login1.User");
+ return;
+ }
+ qDebug() << "Sleeping for systemd-logind";
+ usleep(100000);
}
+#endif
if (QDBusConnection::systemBus().interface()->isServiceRegistered(QStringLiteral("org.freedesktop.ConsoleKit"))) {
qDebug() << "Console kit interface found";
diff --git a/src/daemon/SeatManager.cpp b/src/daemon/SeatManager.cpp
index bd207e6..39d8b85 100644
--- a/src/daemon/SeatManager.cpp
+++ b/src/daemon/SeatManager.cpp
@@ -26,6 +26,9 @@
#include <QDBusMessage>
#include <QDBusPendingReply>
#include <QDBusContext>
+#include <QDebug>
+#include <QFileInfo>
+#include <QTimer>
#include "LogindDBusTypes.h"
@@ -115,6 +118,8 @@ namespace SDDM {
QDBusConnection::systemBus().connect(Logind::serviceName(), Logind::managerPath(), Logind::managerIfaceName(), QStringLiteral("SeatNew"), this, SLOT(logindSeatAdded(QString,QDBusObjectPath)));
QDBusConnection::systemBus().connect(Logind::serviceName(), Logind::managerPath(), Logind::managerIfaceName(), QStringLiteral("SeatRemoved"), this, SLOT(logindSeatRemoved(QString,QDBusObjectPath)));
+
+ QTimer::singleShot(5000, this, &SeatManager::checkSeat);
}
void SeatManager::createSeat(const QString &name) {
@@ -152,6 +157,23 @@ namespace SDDM {
m_seats.value(name)->createDisplay(Display::defaultDisplayServerType());
}
+ // this is a bit hacky, but linux DRM drivers
+ // won't initially be available so there is a race
+ // between determing if a efifb/etc graphical object
+ // is the only graphics on the machine, or a DRM driver
+ // will take over the display. So we will hang out for a few
+ // seconds and if none of the seats are declared cangraphical
+ // its possible the only graphics on the machine don't have
+ // a drm driver.
+ void SeatManager::checkSeat(void) {
+ if (m_seats.isEmpty()) {
+ //if (QFileInfo::exists(QStringLiteral("/dev/fb0"))) {
+ qWarning() << "No graphical seats found, attempt to start one on the main console anyway...";
+ createSeat(QStringLiteral("seat0"));
+ //}
+ }
+ }
+
void SDDM::SeatManager::logindSeatAdded(const QString& name, const QDBusObjectPath& objectPath)
{
auto logindSeat = new LogindSeat(name, objectPath);
diff --git a/src/daemon/SeatManager.h b/src/daemon/SeatManager.h
index b2f9796..aa43047 100644
--- a/src/daemon/SeatManager.h
+++ b/src/daemon/SeatManager.h
@@ -49,6 +49,7 @@ namespace SDDM {
private:
QHash<QString, Seat *> m_seats; //these will exist only for graphical seats
QHash<QString, LogindSeat*> m_systemSeats; //these will exist for all seats
+ void checkSeat(void);
};
}
--
2.39.2
-2
View File
@@ -1,2 +0,0 @@
This scripts dir contains only samples, but are generally not used directly.
In practice, sddm runtime uses items under /etc/sddm by default
-5
View File
@@ -1,5 +0,0 @@
project pkg {
rpm {
spec = "terra-sddm.spec"
}
}
@@ -1,11 +0,0 @@
diff -up sddm-0.18.0/services/sddm.service.in.env sddm-0.18.0/services/sddm.service.in
--- sddm-0.18.0/services/sddm.service.in.env 2018-07-18 05:31:40.000000000 -0500
+++ sddm-0.18.0/services/sddm.service.in 2019-03-14 08:23:22.095498405 -0500
@@ -7,6 +7,7 @@ After=systemd-user-sessions.service gett
[Service]
ExecStart=@CMAKE_INSTALL_FULL_BINDIR@/sddm
Restart=always
+EnvironmentFile=-/etc/sysconfig/sddm
[Install]
Alias=display-manager.service
@@ -1,53 +0,0 @@
diff --git a/src/common/Configuration.h b/src/common/Configuration.h
index 54bcace..9b8fa22 100644
--- a/src/common/Configuration.h
+++ b/src/common/Configuration.h
@@ -37,9 +37,8 @@ namespace SDDM {
enum NumState { NUM_NONE, NUM_SET_ON, NUM_SET_OFF };
// Name Type Default value Description
- // TODO: Change default to x11-user in a future release
- Entry(DisplayServer, QString, _S("x11"), _S("Which display server should be used.\n"
- "Valid values are: x11, x11-user, wayland. Wayland support is experimental"));
+ Entry(DisplayServer, QString, _S("wayland"), _S("Which display server should be used.\n"
+ "Valid values are: x11, x11-user, wayland."));
Entry(HaltCommand, QString, _S(HALT_COMMAND), _S("Halt command"));
Entry(RebootCommand, QString, _S(REBOOT_COMMAND), _S("Reboot command"));
Entry(Numlock, NumState, NUM_NONE, _S("Initial NumLock state. Can be on, off or none.\n"
@@ -51,7 +50,7 @@ namespace SDDM {
// Name Entries (but it's a regular class again)
Section(Theme,
Entry(ThemeDir, QString, _S(DATA_INSTALL_DIR "/themes"), _S("Theme directory path"));
- Entry(Current, QString, _S(""), _S("Current theme name"));
+ Entry(Current, QString, _S("01-breeze-fedora"), _S("Current theme name"));
Entry(FacesDir, QString, _S(DATA_INSTALL_DIR "/faces"), _S("Global directory for user avatars\n"
"The files should be named <username>.face.icon"));
Entry(CursorTheme, QString, QString(), _S("Cursor theme used in the greeter"));
@@ -71,9 +70,9 @@ namespace SDDM {
Entry(SessionDir, QStringList, {_S("/usr/local/share/xsessions"),
_S("/usr/share/xsessions")}, _S("Comma-separated list of directories containing available X sessions"));
Entry(SessionCommand, QString, _S(SESSION_COMMAND), _S("Path to a script to execute when starting the desktop session"));
- Entry(SessionLogFile, QString, _S(".local/share/sddm/xorg-session.log"), _S("Path to the user session log file"));
- Entry(DisplayCommand, QString, _S(DATA_INSTALL_DIR "/scripts/Xsetup"), _S("Path to a script to execute when starting the display server"));
- Entry(DisplayStopCommand, QString, _S(DATA_INSTALL_DIR "/scripts/Xstop"), _S("Path to a script to execute when stopping the display server"));
+ Entry(SessionLogFile, QString, _S(".cache/xsession-errors"), _S("Path to the user session log file"));
+ Entry(DisplayCommand, QString, _S(SYS_CONFIG_DIR "/sddm/Xsetup"), _S("Path to a script to execute when starting the display server"));
+ Entry(DisplayStopCommand, QString, _S(SYS_CONFIG_DIR "/sddm/Xstop"), _S("Path to a script to execute when stopping the display server"));
Entry(EnableHiDPI, bool, true, _S("Enable Qt's automatic high-DPI scaling"));
);
@@ -82,12 +81,12 @@ namespace SDDM {
Entry(SessionDir, QStringList, {_S("/usr/local/share/wayland-sessions"),
_S("/usr/share/wayland-sessions")}, _S("Comma-separated list of directories containing available Wayland sessions"));
Entry(SessionCommand, QString, _S(WAYLAND_SESSION_COMMAND), _S("Path to a script to execute when starting the desktop session"));
- Entry(SessionLogFile, QString, _S(".local/share/sddm/wayland-session.log"),_S("Path to the user session log file"));
+ Entry(SessionLogFile, QString, _S(".cache/wayland-errors"), _S("Path to the user session log file"));
Entry(EnableHiDPI, bool, true, _S("Enable Qt's automatic high-DPI scaling"));
);
Section(Users,
- Entry(DefaultPath, QString, _S("/usr/local/bin:/usr/bin:/bin"), _S("Default $PATH for logged in users"));
+ Entry(DefaultPath, QString, _S("/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin"), _S("Default $PATH for logged in users"));
Entry(MinimumUid, int, UID_MIN, _S("Minimum user id for displayed users"));
Entry(MaximumUid, int, UID_MAX, _S("Maximum user id for displayed users"));
Entry(HideUsers, QStringList, QStringList(), _S("Comma-separated list of users that should not be listed"));
@@ -1,67 +0,0 @@
From 52175648f4e1b415f93b24a3ef970983024659f2 Mon Sep 17 00:00:00 2001
From: Neal Gompa <neal@gompa.dev>
Date: Wed, 28 Feb 2024 16:47:16 -0500
Subject: [PATCH] Default to Qt6 and always use versioned greeters
Distributors can handle creating an unversioned name if necessary.
---
src/common/ThemeMetadata.cpp | 4 ++--
src/daemon/Greeter.cpp | 3 +--
src/greeter/CMakeLists.txt | 9 +--------
3 files changed, 4 insertions(+), 12 deletions(-)
diff --git a/src/common/ThemeMetadata.cpp b/src/common/ThemeMetadata.cpp
index 2cb3762..003056a 100644
--- a/src/common/ThemeMetadata.cpp
+++ b/src/common/ThemeMetadata.cpp
@@ -28,7 +28,7 @@ namespace SDDM {
QString mainScript { QStringLiteral("Main.qml") };
QString configFile;
QString translationsDirectory { QStringLiteral(".") };
- int qtVersion = 5;
+ int qtVersion = 6;
};
ThemeMetadata::ThemeMetadata(const QString &path, QObject *parent) : QObject(parent), d(new ThemeMetadataPrivate()) {
@@ -61,6 +61,6 @@ namespace SDDM {
d->mainScript = settings.value(QStringLiteral("SddmGreeterTheme/MainScript"), QStringLiteral("Main.qml")).toString();
d->configFile = settings.value(QStringLiteral("SddmGreeterTheme/ConfigFile"), QStringLiteral("theme.conf")).toString();
d->translationsDirectory = settings.value(QStringLiteral("SddmGreeterTheme/TranslationsDirectory"), QStringLiteral(".")).toString();
- d->qtVersion = settings.value(QStringLiteral("SddmGreeterTheme/QtVersion"), 5).toInt();
+ d->qtVersion = settings.value(QStringLiteral("SddmGreeterTheme/QtVersion"), 6).toInt();
}
}
diff --git a/src/daemon/Greeter.cpp b/src/daemon/Greeter.cpp
index 07fccde..5a956b6 100644
--- a/src/daemon/Greeter.cpp
+++ b/src/daemon/Greeter.cpp
@@ -82,8 +82,7 @@ namespace SDDM {
QString Greeter::greeterPathForQt(int qtVersion)
{
- const QString suffix = qtVersion == 5 ? QString() : QStringLiteral("-qt%1").arg(qtVersion);
- return QStringLiteral(BIN_INSTALL_DIR "/sddm-greeter%1").arg(suffix);
+ return QStringLiteral(BIN_INSTALL_DIR "/sddm-greeter-qt%1").arg(qtVersion);
}
bool Greeter::start() {
diff --git a/src/greeter/CMakeLists.txt b/src/greeter/CMakeLists.txt
index 72769e4..524368d 100644
--- a/src/greeter/CMakeLists.txt
+++ b/src/greeter/CMakeLists.txt
@@ -1,11 +1,4 @@
-if(QT_MAJOR_VERSION EQUAL "5")
- # Keep the unversioned name for Qt5. When upgrading SDDM, the old daemon
- # might still be running and only know about "sddm-greeter". Keeping the
- # previous name around also helps users calling it directly.
- set(GREETER_TARGET sddm-greeter)
-else()
- set(GREETER_TARGET sddm-greeter-qt${QT_MAJOR_VERSION})
-endif()
+set(GREETER_TARGET sddm-greeter-qt${QT_MAJOR_VERSION})
message(STATUS "Building greeter for Qt ${QT_MAJOR_VERSION} as ${GREETER_TARGET}")
--
2.43.0

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