Merge branch 'frawhide' into gil/chore/ffmpeg

This commit is contained in:
Gilver
2025-12-03 13:32:06 -06:00
committed by GitHub
180 changed files with 1756 additions and 3634 deletions
+172
View File
@@ -0,0 +1,172 @@
// Configure sccache environment variables for GitHub Actions cache integration
//
// This script is still unused until we build terra-sccache with this supported,
// Turns out that Fedora's sccache build has the GHA feature support disabled.
//
// Note: ACTIONS_CACHE_SERVICE_V2 and SCCACHE_GHA_ENABLED are set at workflow level
module.exports = async ({ github, context, core, exec }) => {
// Find sccache path (try which command)
let sccachePath = "sccache";
try {
const result = await exec.getExecOutput("which", ["sccache"], {
ignoreReturnCode: true,
silent: true,
});
if (result.exitCode === 0 && result.stdout.trim()) {
sccachePath = result.stdout.trim();
core.info(`Found sccache at: ${sccachePath}`);
}
} catch (e) {
core.debug(`Could not find sccache path: ${e.message}`);
}
// Check sccache version
try {
const versionResult = await exec.getExecOutput(sccachePath, ["--version"], {
ignoreReturnCode: true,
silent: true,
});
core.info(`sccache version: ${versionResult.stdout.trim()}`);
} catch (e) {
core.warning(`Could not get sccache version: ${e.message}`);
}
// Debug: Show what environment variables are available
core.info("=== Environment Variables Diagnostic ===");
core.info(`SCCACHE_GHA_ENABLED: ${process.env.SCCACHE_GHA_ENABLED}`);
core.info(
`ACTIONS_CACHE_SERVICE_V2: ${process.env.ACTIONS_CACHE_SERVICE_V2}`,
);
core.info(
`ACTIONS_RESULTS_URL: ${process.env.ACTIONS_RESULTS_URL ? "SET (length: " + process.env.ACTIONS_RESULTS_URL.length + ")" : "NOT SET"}`,
);
core.info(
`ACTIONS_RUNTIME_TOKEN: ${process.env.ACTIONS_RUNTIME_TOKEN ? "SET (length: " + process.env.ACTIONS_RUNTIME_TOKEN.length + ")" : "NOT SET"}`,
);
core.info(`RUSTC_WRAPPER: ${process.env.RUSTC_WRAPPER}`);
core.info(`SCCACHE_LOG: ${process.env.SCCACHE_LOG}`);
core.info("========================================");
// Export SCCACHE_PATH so it's available to subsequent steps
core.exportVariable("SCCACHE_PATH", sccachePath);
// Expose the GHA cache related variables to make it easier for users to
// integrate with GHA support (from upstream mozilla/sccache-action)
if (process.env.ACTIONS_RESULTS_URL) {
core.exportVariable("ACTIONS_RESULTS_URL", process.env.ACTIONS_RESULTS_URL);
core.info("✓ Exported ACTIONS_RESULTS_URL");
} else {
core.error(
"ACTIONS_RESULTS_URL is not set - GitHub Actions cache WILL NOT work",
);
}
if (process.env.ACTIONS_RUNTIME_TOKEN) {
core.exportVariable(
"ACTIONS_RUNTIME_TOKEN",
process.env.ACTIONS_RUNTIME_TOKEN,
);
core.info("✓ Exported ACTIONS_RUNTIME_TOKEN");
} else {
core.error(
"ACTIONS_RUNTIME_TOKEN is not set - GitHub Actions cache WILL NOT work",
);
}
// Set cache version and restore keys for this specific build matrix
if (process.env.SCCACHE_GHA_VERSION) {
core.exportVariable("SCCACHE_GHA_VERSION", process.env.SCCACHE_GHA_VERSION);
}
if (process.env.SCCACHE_GHA_CACHE_FROM) {
core.exportVariable(
"SCCACHE_GHA_CACHE_FROM",
process.env.SCCACHE_GHA_CACHE_FROM,
);
}
// Check if cache busting is enabled
const inputs =
(github &&
github.context &&
github.context.payload &&
github.context.payload.inputs) ||
{};
const rawBustCache =
inputs.bust_cache ??
inputs.bustCache ??
process.env.INPUT_BUST_CACHE ??
process.env.BUST_CACHE;
let bustCache = false;
if (typeof rawBustCache === "string") {
const v = rawBustCache.toLowerCase().trim();
bustCache = v === "true" || v === "1" || v === "yes";
} else {
bustCache = !!rawBustCache;
}
if (bustCache) {
core.exportVariable("SCCACHE_RECACHE", "1");
core.info("SCCACHE_RECACHE enabled because bust_cache is true");
}
// Stop any running sccache daemon so it picks up the new environment variables
core.info("Stopping any running sccache daemon to pick up configuration...");
try {
await exec.exec(sccachePath, ["--stop-server"], {
ignoreReturnCode: true,
});
core.info("✓ sccache daemon stopped successfully");
} catch (e) {
core.debug(
`Could not stop sccache daemon (it may not be running): ${e.message}`,
);
}
// Verify sccache can see the GHA environment variables by starting server with explicit env
core.info("Starting sccache server with GHA environment variables...");
const sccacheEnv = {
...process.env,
SCCACHE_GHA_ENABLED: process.env.SCCACHE_GHA_ENABLED || "on",
ACTIONS_CACHE_SERVICE_V2: process.env.ACTIONS_CACHE_SERVICE_V2 || "on",
};
try {
await exec.exec(sccachePath, ["--start-server"], {
ignoreReturnCode: true,
env: sccacheEnv,
});
core.info("✓ sccache server started");
} catch (e) {
core.warning(`Could not start sccache server: ${e.message}`);
}
// Show the current sccache configuration
core.info("Verifying sccache configuration:");
try {
const statsResult = await exec.getExecOutput(
sccachePath,
["--show-stats"],
{
ignoreReturnCode: true,
env: sccacheEnv,
},
);
// Check if it's using GitHub Actions cache
if (statsResult.stdout.includes("GitHub Actions")) {
core.info("✓ sccache is configured to use GitHub Actions cache");
} else if (statsResult.stdout.includes("Local disk")) {
core.error(
"✗ sccache is using Local disk cache instead of GitHub Actions cache!",
);
core.error(
"This means SCCACHE_GHA_ENABLED or required env vars are not being recognized.",
);
core.info("Stats output:");
core.info(statsResult.stdout);
}
} catch (e) {
core.debug(`Could not show sccache stats: ${e.message}`);
}
};
+121
View File
@@ -0,0 +1,121 @@
module.exports = async ({ github, context, core, exec }) => {
if (!exec) {
throw new Error("exec parameter is required but was not provided");
}
// Use SCCACHE_PATH if set, otherwise default to 'sccache' (will use PATH)
const sccachePath = process.env.SCCACHE_PATH || "sccache";
core.debug(`Using sccache path: ${sccachePath}`);
const percentage = (x, y) => Math.round((x / y) * 100 || 0);
const plural = (count, base, pluralForm = base + "s") =>
`${count} ${count === 1 ? base : pluralForm}`;
const sumStats = (stats) =>
Object.values(stats.counts).reduce((acc, val) => acc + val, 0);
const formatDuration = (duration) => {
const ms = duration.nanos / 1e6;
return `${duration.secs}s ${ms}ms`;
};
const formatJsonStats = (stats) => {
const cacheErrorCount = sumStats(stats.stats.cache_errors);
const cacheHitCount = sumStats(stats.stats.cache_hits);
const cacheMissCount = sumStats(stats.stats.cache_misses);
const totalHits = cacheHitCount + cacheMissCount + cacheErrorCount;
const ratio = percentage(cacheHitCount, totalHits);
const writeDuration = formatDuration(stats.stats.cache_write_duration);
const readDuration = formatDuration(stats.stats.cache_read_hit_duration);
const compilerDuration = formatDuration(
stats.stats.compiler_write_duration,
);
const noticeHit = plural(cacheHitCount, "hit");
const noticeMiss = plural(cacheMissCount, "miss", "misses");
const noticeError = plural(cacheErrorCount, "error");
const notice = `${ratio}% - ${noticeHit}, ${noticeMiss}, ${noticeError}`;
const table = [
[{ data: "Cache hit %", header: true }, { data: `${ratio}%` }],
[
{ data: "Cache hits", header: true },
{ data: cacheHitCount.toString() },
],
[
{ data: "Cache misses", header: true },
{ data: cacheMissCount.toString() },
],
[
{ data: "Cache errors", header: true },
{ data: cacheErrorCount.toString() },
],
[
{ data: "Compile requests", header: true },
{ data: stats.stats.compile_requests.toString() },
],
[
{ data: "Requests executed", header: true },
{ data: stats.stats.requests_executed.toString() },
],
[
{ data: "Cache writes", header: true },
{ data: stats.stats.cache_writes.toString() },
],
[
{ data: "Cache write errors", header: true },
{ data: stats.stats.cache_write_errors.toString() },
],
[{ data: "Cache write duration", header: true }, { data: writeDuration }],
[
{ data: "Cache read hit duration", header: true },
{ data: readDuration },
],
[
{ data: "Compiler write duration", header: true },
{ data: compilerDuration },
],
];
return { table, notice };
};
const getOutput = async (command, args = []) => {
core.debug(`get_output: ${command} ${args.join(" ")}`);
const output = await exec.getExecOutput(command, args, {
ignoreReturnCode: false,
silent: false,
});
if (!output.stdout.endsWith("\n")) {
process.stdout.write("\n");
}
return output.stdout.toString();
};
const humanStats = await core.group("Get human-readable stats", async () => {
return getOutput(sccachePath, ["--show-stats"]);
});
const jsonStats = await core.group("Get JSON stats", async () => {
return getOutput(sccachePath, ["--show-stats", "--stats-format=json"]);
});
const stats = JSON.parse(jsonStats);
const formattedStats = formatJsonStats(stats);
core.notice(formattedStats.notice, {
title: `sccache stats - ${context.job}`,
});
core.info("\nFull human-readable stats:");
core.info(humanStats);
core.summary.addHeading("sccache stats", 2);
core.summary.addTable(formattedStats.table);
core.summary.addDetails(
"Full human-readable stats",
"\n\n```\n" + humanStats + "\n```\n\n",
);
core.summary.addDetails(
"Full JSON Stats",
"\n\n```json\n" + JSON.stringify(stats, null, 2) + "\n```\n\n",
);
await core.summary.write();
};
+25 -1
View File
@@ -18,6 +18,11 @@ on:
required: false
type: string
default: ""
bust_cache:
description: "Whether to bust the cache"
required: false
type: boolean
default: false
workflow_dispatch:
inputs:
packages:
@@ -30,6 +35,12 @@ on:
type: boolean
default: true
env:
RUSTC_WRAPPER: sccache
# SCCACHE_NO_DAEMON: "1"
# Disable incremental compilation so sccache works better
CARGO_INCREMENTAL: "false"
jobs:
build:
strategy:
@@ -64,6 +75,19 @@ jobs:
dir=$(dirname ${{ matrix.pkg.pkg }})
dnf5 builddep -y ${dir}/*.spec
- name: Run sccache-cache
uses: mozilla-actions/sccache-action@v0.0.9
- name: Configure sccache
run: |
set -euo pipefail
echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV
if [ "${{ inputs.bust_cache }}" = "true" ]; then
echo "SCCACHE_BUST_CACHE=true" >> $GITHUB_ENV
fi
- name: Build with Andaman
run: anda build -D "vendor Terra" ${{ matrix.pkg.pkg }} -c terra-${{ matrix.version }}-${{ matrix.pkg.arch }} ${{ !matrix.pkg.labels.mock == '1' && '-rrpmbuild' || '' }}
@@ -105,4 +129,4 @@ jobs:
run: ./.github/workflows/mg.sh true "${{matrix.pkg.pkg}}" "${{matrix.version}}" "${{matrix.pkg.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA"
- name: Notify Madoguchi (Failure)
if: inputs.publish && (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}}" "$GITHUB_SHA"
+2 -2
View File
@@ -13,9 +13,9 @@ jobs:
matrix:
branch:
- frawhide
- f41
- f42
- f43
- f42
- f41
- el10
container:
image: ghcr.io/terrapkg/builder:frawhide
+2 -2
View File
@@ -48,9 +48,9 @@ jobs:
git add anda
git commit -S -a -m "$msg"
}
copy_over f41 || true
copy_over f42 || true
copy_over f43 || true
copy_over f42 || true
copy_over f41 || true
copy_over el10 || true
git push -u origin --all
fi
+2 -2
View File
@@ -48,9 +48,9 @@ jobs:
git add anda
git commit -S -a -m "$msg"
}
copy_over f41 || true
copy_over f42 || true
copy_over f43 || true
copy_over f42 || true
copy_over f41 || true
copy_over el10 || true
git push -u origin --all
fi
+2 -2
View File
@@ -48,9 +48,9 @@ jobs:
git add anda
git commit -S -a -m "$msg"
}
copy_over f41 || true
copy_over f42 || true
copy_over f43 || true
copy_over f42 || true
copy_over f41 || true
copy_over el10 || true
git push -u origin --all
fi
+1 -1
View File
@@ -1,7 +1,7 @@
%undefine __brp_mangle_shebangs
Name: chdig
Version: 25.11.2
Version: 25.12.1
Release: 1%?dist
Summary: Dig into ClickHouse with TUI interface
URL: https://github.com/azat/chdig
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-canary-openasar
Version: 0.0.813
Version: 0.0.819
Release: 1%?dist
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
+1 -1
View File
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-canary
Version: 0.0.813
Version: 0.0.819
Release: 1%?dist
Summary: Free Voice and Text Chat for Gamers
URL: discord.com
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-openasar
Version: 0.0.116
Version: 0.0.117
Release: 1%?dist
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-ptb-openasar
Version: 0.0.167
Version: 0.0.168
Release: 1%?dist
Summary: A snappier Discord rewrite with features like further customization and theming
License: MIT AND https://discord.com/terms
+1 -1
View File
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord-ptb
Version: 0.0.167
Version: 0.0.168
Release: 1%?dist
Summary: Free Voice and Text Chat for Gamers.
URL: https://discord.com
+1 -1
View File
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: discord
Version: 0.0.116
Version: 0.0.117
Release: 1%?dist
Summary: Free Voice and Text Chat for Gamers
URL: https://discord.com
+1 -1
View File
@@ -6,7 +6,7 @@
%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so
Name: feishin
Version: 0.21.2
Version: 0.22.0
Release: 1%?dist
Summary: A modern self-hosted music player
License: GPL-3.0
+2 -2
View File
@@ -1,9 +1,9 @@
#? https://github.com/flameshot-org/flameshot/blob/master/packaging/rpm/fedora/flameshot.spec
%global ver 13.3.0
%global commit 0f37bf09972c7e66ed78ad0460d2ebce97b82809
%global commit 7ed3cfc83eda4bd33f5044041075689bb517a314
%global shortcommit %{sub %{commit} 1 7}
%global commit_date 20251119
%global commit_date 20251130
%global devel_name QtColorWidgets
%global _distro_extra_cflags -fuse-ld=mold
%global _distro_extra_cxxflags -fuse-ld=mold
+1 -1
View File
@@ -9,7 +9,7 @@
%endif
Name: goofcord
Version: 1.11.1.beta.1
Version: 1.11.2
Release: 1%?dist
License: OSL-3.0
Summary: A privacy-minded Legcord fork.
+2 -1
View File
@@ -4,7 +4,7 @@
%global crate halloy
Name: halloy
Version: 2025.11
Version: 2025.12
Release: 1%?dist
Summary: An open-source IRC client written in Rust, with the Iced GUI library
Packager: Yoong jin <solomoncyj@gmail.com>
@@ -18,6 +18,7 @@ BuildRequires: alsa-lib-devel
BuildRequires: cargo-rpm-macros >= 24
BuildRequires: desktop-file-utils
BuildRequires: openssl-devel
BuildRequires: pkgconfig(xcb)
%description
+2 -2
View File
@@ -3,10 +3,10 @@
%global gtk4_version 4.14.4
%global libadwaita_version 1.5.1
%global pure_protobuf_version 2.0.0
%global raw_ver v1.94.0
%global raw_ver v1.95.0
Name: komikku
Version: 1.94.0
Version: 1.95.0
%forgemeta
Release: 1%?dist
Summary: A manga reader for GNOME
+2 -3
View File
@@ -1,9 +1,9 @@
# Disable X11 for RHEL 10+
%bcond x11 %[%{undefined rhel} || 0%{?rhel} < 10]
%global commit 8469605191c1fb3c9ebf84617a4b2e2bada357fa
%global commit 72dbcf119a9ed5082be2f226593194e20f611eea
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20251124
%global commit_date 20251201
%global ver 0.40.0
Name: mpv-nightly
@@ -188,7 +188,6 @@ sed -e "s|/usr/local/etc|%{_sysconfdir}/mpv|" -i etc/mpv.conf
-Dsdl2-audio=enabled \
-Dsdl2-gamepad=enabled \
-Dsdl2-video=enabled \
-Dsdl2=enabled \
-Dshaderc=disabled \
-Dsndio=disabled \
-Dspirv-cross=disabled \
+2 -2
View File
@@ -1,5 +1,5 @@
%global commit 6ae576bee3ca42f0aea597e76d2e0df0e1184bad
%global commit_date 20251030
%global commit 9527e92f697ad380ce8669a2b6c61260abafab19
%global commit_date 20251126
%global shortcommit %(c=%{commit}; echo ${c:0:7})
Name: rpcc
+8
View File
@@ -0,0 +1,8 @@
project pkg {
rpm {
spec = "rpinters.spec"
}
labels {
nightly = 1
}
}
+45
View File
@@ -0,0 +1,45 @@
%global commit 1815ad67432803843058a3cf7eefbf376e9c02c9
%global commit_date 20251029
%global shortcommit %(c=%{commit}; echo ${c:0:7})
Name: rpinters
Version: 0~%commit_date.git~%shortcommit
Release: 1%?dist
Summary: Raspberry Pi printing utility module
License: GPL-2+ AND BSD-3-Clause
URL: https://github.com/raspberrypi-ui/rpinters
Source0: %url/archive/%commit.tar.gz
Packager: Owen Zimmerman <owen@fyralabs.com>
BuildRequires: meson
BuildRequires: ninja-build
BuildRequires: gcc
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(smbclient)
BuildRequires: pkgconfig(cups)
BuildRequires: pkgconfig(polkit-gobject-1)
BuildRequires: pkgconfig(gsettings-desktop-schemas)
%description
%summary.
%prep
%autosetup -n rpinters-%commit
%build
%meson
%meson_build
%install
%meson_install
%find_lang rpcc_%{name}
%files -f rpcc_%{name}.lang
%doc README
%license debian/copyright
%{_datadir}/rpcc/ui/%{name}.ui
%{_libdir}/rpcc/librpcc_rpinters.so
%changelog
* Fri Aug 08 2025 Owen Zimmerman <owen@fyralabs.com>
- Package bookshelf
+5
View File
@@ -0,0 +1,5 @@
rpm.global("commit", gh_commit("raspberrypi-ui/rpinters"));
if rpm.changed() {
rpm.release();
rpm.global("commit_date", date());
}
+1 -1
View File
@@ -1,4 +1,4 @@
%global ver 2025-11-22
%global ver 2025-12-03
%global goodver %(echo %ver | sed 's/-//g')
%global __brp_mangle_shebangs %{nil}
%bcond_without mold
+1 -1
View File
@@ -15,7 +15,7 @@
%endif
Name: signal-desktop
Version: 7.80.0
Version: 7.80.1
Release: 1%?dist
Summary: A private messenger for Windows, macOS, and Linux
URL: https://signal.org
+1 -1
View File
@@ -1,7 +1,7 @@
#? https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=throne-git
Name: throne
Version: 1.0.9
Version: 1.0.11
Release: 1%?dist
Summary: Qt based cross-platform GUI proxy configuration manager (backend: sing-box)
URL: https://github.com/throneproj/Throne
@@ -1,6 +1,6 @@
%global tarball_version %%(echo %{version} | tr '~' '.')
%global major_version 49
%global minor_version 1
%global minor_version 2
%if 0%{?rhel}
%global portal_helper 0
@@ -1,10 +1,10 @@
#? https://src.fedoraproject.org/rpms/hyprutils/blob/rawhide/f/hyprutils.spec
%global realname hyprutils
%global ver 0.10.3
%global ver 0.10.4
%global commit 96df6f6535f80fa66b9412d9cef4dcebba012b8f
%global commit_date 20251124
%global commit 2f2413801beee37303913fc3c964bbe92252a963
%global commit_date 20251202
%global shortcommit %{sub %commit 1 7}
Name: %realname.nightly
@@ -1,5 +1,5 @@
%global forgeurl https://gitlab.com/ubports/development/core/lomiri-system-settings
%global commit 54e10292fdecc42d2f5b296209d5b67f8ae90423
%global commit 4652fb4fb04569bea5102e9e52c23ca66a131435
%forgemeta
Name: lomiri-system-settings
@@ -1,10 +1,10 @@
%global forgeurl https://gitlab.com/ubports/development/core/lomiri-ui-toolkit
%global commit 4111d119b21d58754f8b4bcaa7665cab7263be00
%global commit 4789df7ca73f4d945279d6c28dab8c5efbac4b18
%forgemeta
Name: lomiri-ui-toolkit
Version: 1.3.5110
Release: 2%?dist
Version: 1.3.5900
Release: 1%?dist
Summary: QML components to ease the creation of beautiful applications in QML for Lomiri
License: LGPL-3.0
+1 -1
View File
@@ -1,5 +1,5 @@
Name: mangowc
Version: 0.10.5
Version: 0.10.7
Release: 1%?dist
Summary: wayland compositor base wlroots and scenefx (dwm but wayland)
License: GPL-3.0
@@ -2,7 +2,7 @@
%global crate matugen
Name: rust-matugen
Version: 3.0.0
Version: 3.1.0
Release: 1%?dist
Summary: Material you color generation tool with templates
+1 -1
View File
@@ -4,7 +4,7 @@
# prevent library files from being installed
%global cargo_install_lib 0
%global upstream_version v2.11.2
%global upstream_version v2.11.3
%global ver %{sub %upstream_version 2}
Name: walker
+1 -1
View File
@@ -12,7 +12,7 @@
%endif
Name: codium
Version: 1.106.27818
Version: 1.106.37943
Release: 1%?dist
Summary: Code editing. Redefined.
License: MIT
@@ -7,6 +7,7 @@
<name>Deno</name>
<summary>A modern runtime for JavaScript and TypeScript.</summary>
<icon>https://deno.com/logo.svg</icon>
<description>
<p>
Deno (/ˈdiːnoʊ/, pronounced dee-no) is a JavaScript, TypeScript, and WebAssembly runtime with secure defaults and a great developer experience.
+6 -4
View File
@@ -1,12 +1,13 @@
%undefine __brp_mangle_shebangs
# Generated by rust2rpm 27
%bcond check 0
%global appid land.deno.deno
%global appstream_component runtime
%global crate deno
Name: rust-deno
Version: 2.5.6
Release: 2%?dist
Release: 3%?dist
Summary: Deno executable
License: MIT
@@ -44,7 +45,7 @@ License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0)
%license LICENSE.md
%license LICENSE.dependencies
%doc README.md
%{_metainfodir}/land.deno.deno.metainfo.xml
%{_metainfodir}/%{appid}.metainfo.xml
%{_bindir}/deno
%pkg_completion -Bfzn %crate
@@ -56,6 +57,7 @@ License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0)
cp %{S:1} .
cp %{S:2} gcc
%global __cc %_builddir/%buildsubdir/gcc
sed '/\[env\]/a CC="%__cc"' -i .cargo/config
@@ -71,4 +73,4 @@ target/rpm/deno completions bash > %buildroot%bash_completions_dir/deno
%dnl target/rpm/deno completions elvish > %buildroot%elvish_completions_dir/deno.elv
target/rpm/deno completions fish > %buildroot%fish_completions_dir/deno.fish
target/rpm/deno completions zsh > %buildroot%zsh_completions_dir/_deno
install -Dm644 %{S:3} -t %buildroot%{_metainfodir}
%terra_appstream -o %{SOURCE3}
+24 -4
View File
@@ -1,6 +1,6 @@
%global commit 6b28671eade5d31ef737349cdf53a2e6470a8648
%global commit b4a48303ed9ea74d326ba450ddf5f1514dca76d0
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global fulldate 2025-11-22
%global fulldate 2025-12-01
%global commit_date %(echo %{fulldate} | sed 's/-//g')
%global public_key RWQlAjJC23149WL2sEpT/l0QKy7hMIFhYdQOFy0Z7z7PbneUgvlsnYcV
%global ver 1.3.0
@@ -180,6 +180,19 @@ BuildArch: noarch
%description terminfo
Ghostty's terminfo. Needed for basic terminal function.
%package -n libghostty-vt-nightly
Summary: The libghostty-vt libraries
%description -n libghostty-vt-nightly
This package contains the libghostty-vt libraries, the first of many linghostty libaries in development.
%package -n libghostty-vt-nightly-devel
Summary: Development files for libghostty-vt
Requires: libghostty-vt-nightly = %{evr}
%description -n libghostty-vt-nightly-devel
This package contains the libraries and header files that are needed for developing with libghostty-vt.
%prep
/usr/bin/minisign -V -m %{SOURCE0} -x %{SOURCE1} -P %{public_key}
%autosetup -n %{base_name}-%{ver}-main+%{shortcommit}
@@ -240,8 +253,6 @@ rm -rf %{buildroot}%{_datadir}/terminfo/g/%{base_name}
%files devel
%{_includedir}/ghostty/
%{_libdir}/libghostty-vt.so
%{_datadir}/pkgconfig/libghostty-vt.pc
%files kio
%{_datadir}/kio/servicemenus/%{appid}.desktop
@@ -279,6 +290,13 @@ rm -rf %{buildroot}%{_datadir}/terminfo/g/%{base_name}
%endif
%{_datadir}/terminfo/x/xterm-%{base_name}
%files -n libghostty-vt-nightly
%{_libdir}/libghostty-vt.so.*
%files -n libghostty-vt-nightly-devel
%{_libdir}/libghostty-vt.so
%{_datadir}/pkgconfig/libghostty-vt.pc
%post
%systemd_user_post app-%{appid}.service
@@ -289,6 +307,8 @@ rm -rf %{buildroot}%{_datadir}/terminfo/g/%{base_name}
%systemd_user_postun app-%{appid}.service
%changelog
* Sat Nov 29 2025 Gilver E. <rockgrub@disroot.org> - 1.3.0~tip^20251128git9baf37a-1
- Initial libghostty-vt packages
* Tue Oct 28 2025 Gilver E. <rockgrub@disroot.org> - 1.3.0~tip^20251027gitd40321a-2
- Disabled bundled themes
* This is necessary to address licensing issues in the themes repo Ghostty uses
+2 -2
View File
@@ -12,8 +12,8 @@
# Naming variable as something other than "commit" is necessary
# to stop %%gometa from putting commit hash in release
%global commit_hash bc5e59c670c6ea971c52a9f60262122bd39eec32
%global commit_date 20251119
%global commit_hash 118f5a3e357f026b455fb60a48e124c2ce2910d1
%global commit_date 20251203
%global shortcommit %{sub %{commit_hash} 1 7}
%global ver 2.0.14
+1 -1
View File
@@ -1 +1 @@
rpm.version(find("([\\d.]+)", gh("yarnpkg/berry"), 1));
rpm.version(npm("@yarnpkg/cli"));
+2 -2
View File
@@ -2,7 +2,7 @@
Name: yarnpkg-berry
Version: 4.12.0
Release: 3%?dist
Release: 4%?dist
Summary: Active development version of Yarn
License: BSD-2-Clause
URL: https://yarnpkg.com
@@ -17,7 +17,7 @@ BuildRequires: yarnpkg
BuildRequires: %{name}
%endif
Provides: yarn-berry
Provides: yarnpkg = %{evr}
Conflicts: yarnpkg
BuildArch: noarch
Packager: Gilver E. <rockgrub@disroot.org>
+7
View File
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<component type="desktop-application">
<!-- the terra appstream builder will auto-fill this, this is a quirk of terra-appstream-builder -->
<name>Zed</name>
<id>dev.zed.Zed</id>
<icon>dev.zed.Zed-nightly</icon>
</component>
+50 -21
View File
@@ -1,16 +1,22 @@
%global commit dbcfb48198d80e6b6315dd752466279d2d8ec616
%global commit 2bf47879dee6dc8c21613b83e058a1dd4b9bde29
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20251124
%global ver 0.215.0
%global commit_date 20251203
%global ver 0.216.0
%bcond_with check
%bcond_with debug_no_build
%bcond nightly 1
%if 0%{?with_debug_no_build}
%global debug_package %{nil}
%endif
# Exclude input files from mangling
%global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$
%global crate zed
%global app_id dev.zed.Zed-Nightly
%global appid dev.zed.Zed-nightly
%global appstream_component desktop-application
%global rustflags_debuginfo 0
@@ -22,6 +28,7 @@ SourceLicense: AGPL-3.0-only AND Apache-2.0 AND GPL-3.0-or-later
License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND AGPL.3.0-only AND AGPL-3.0-or-later AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR MIT OR Apache-2.0) AND BSD-2-Clause AND (CC0-1.0 OR Apache-2.0 OR Apache-2.0 WITH LLVM-exception) AND (CC0-1.0 OR Apache-2.0) AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND CC0-1.0 AND GPL-3.0-or-later AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (ISC AND (Apache-2.0 OR ISC)) AND ISC AND (MIT AND (MIT OR Apache-2.0)) AND (MIT AND BSD-3-Clause) AND (MIT OR Apache-2.0 OR CC0-1.0) AND (MIT OR Apache-2.0 OR NCSA) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib
URL: https://zed.dev/
Source0: https://github.com/zed-industries/zed/archive/%{commit}.tar.gz
Source1: override.xml
Conflicts: zed
Conflicts: zed-preview
@@ -69,9 +76,12 @@ Supplements: (%name unless zfs)
%description cli
This package provides the /usr/bin/zed binary. If you use zfs, install %name-rename-zeditor instead.
%files cli
%if %{without debug_no_build}
%_bindir/zed
%{_datadir}/applications/%app_id.desktop
%{_metainfodir}/%app_id.metainfo.xml
%endif
%{_datadir}/icons/hicolor/512x512/apps/%appid.png
%{_datadir}/applications/%appid.desktop
%{_metainfodir}/%appid.metainfo.xml
%package rename-zeditor
Summary: Rename zed to zeditor to prevent collision with zfs
@@ -83,21 +93,26 @@ RemovePathPostFixes: .zeditor
This package provides the %_bindir/zeditor binary instead of %_bindir/zed. This avoids conflicts with the zfs package.
The normal package is %name-cli.
%files rename-zeditor
%if %{without debug_no_build}
%_bindir/zeditor
%_datadir/applications/%app_id.desktop.zeditor
%{_metainfodir}/%app_id.metainfo.xml
%endif
%{_datadir}/icons/hicolor/512x512/apps/%appid.png
%_datadir/applications/%appid.desktop.zeditor
%{_metainfodir}/%appid.metainfo.xml
%prep
%autosetup -n %{crate}-%{commit} -p1
%if %{without debug_no_build}
%if %{with nightly}
%rustup_nightly
%endif
%cargo_prep_online
%endif
export DO_STARTUP_NOTIFY="true"
export APP_ID="%app_id"
export APP_ICON="%app_id"
export APP_ID="%appid"
export APP_ICON="%appid"
export APP_NAME="Zed Nightly"
export APP_CLI="zed"
export APP="%{_libexecdir}/zed-editor"
@@ -107,35 +122,40 @@ export ZED_RELEASE_CHANNEL=nightly
export BRANDING_LIGHT="#e9aa6a"
export BRANDING_DARK="#1a5fb4"
echo "StartupWMClass=$APP_ID" >> crates/zed/resources/zed.desktop.in
envsubst < "crates/zed/resources/zed.desktop.in" > $APP_ID.desktop # from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=zed-git#n52
echo "StartupWMClass=$appid" >> crates/zed/resources/zed.desktop.in
envsubst < "crates/zed/resources/zed.desktop.in" > %{appid}.desktop # from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=zed-git#n52
sed -i "s|@release_info@||g" "crates/zed/resources/flatpak/zed.metainfo.xml.in"
envsubst < "crates/zed/resources/flatpak/zed.metainfo.xml.in" > $APP_ID.metainfo.xml
envsubst < "crates/zed/resources/flatpak/zed.metainfo.xml.in" > %{appid}.metainfo.xml
%build
%if %{without debug_no_build}
export ZED_UPDATE_EXPLANATION="Run dnf up to update Zed Nightly from Terra."
echo "nightly" > crates/zed/RELEASE_CHANNEL
%cargo_build -- --package zed --package cli
ALLOW_MISSING_LICENSES=1 script/generate-licenses
%endif
%install
%if %{without debug_no_build}
install -Dm755 target/rpm/zed %{buildroot}%{_libexecdir}/zed-editor
install -Dm755 target/rpm/cli %{buildroot}%{_bindir}/zeditor
install -Dm755 target/rpm/cli %{buildroot}%{_bindir}/zed
%__cargo clean
%endif
install -Dm644 %app_id.desktop %{buildroot}%{_datadir}/applications/%app_id.desktop
sed 's/Exec=zed/Exec=zeditor/' %app_id.desktop > %app_id.desktop.zeditor
install -Dm644 %app_id.desktop.zeditor -t %buildroot%_datadir/applications/
install -Dm644 crates/zed/resources/app-icon-nightly.png %{buildroot}%{_datadir}/pixmaps/%app_id.png
install -Dm644 %appid.desktop %{buildroot}%{_datadir}/applications/%appid.desktop
sed 's/Exec=zed/Exec=zeditor/' %appid.desktop > %appid.desktop.zeditor
install -Dm644 %appid.desktop.zeditor -t %buildroot%_datadir/applications/
install -Dm644 crates/zed/resources/app-icon-nightly.png %{buildroot}%{_datadir}/icons/hicolor/512x512/apps/%appid.png
install -Dm644 %app_id.metainfo.xml %{buildroot}%{_metainfodir}/%app_id.metainfo.xml
install -Dm644 %appid.metainfo.xml %{buildroot}%{_metainfodir}/%appid.metainfo.xml
# The license generation script doesn't generate licenses for ALL compiled dependencies, just direct deps of Zed, and it does not "group" licenses
# Zed also needs a special approach to fetch the dep licenses
%if %{without debug_no_build}
%{__cargo} tree \
-Z avoid-dev-deps \
--workspace \
@@ -148,17 +168,21 @@ install -Dm644 %app_id.metainfo.xml %{buildroot}%{_metainfodir}/%app_id.metainfo
| sed -e '/.*(\*).*/d' -e '/^: pet/ s/./MIT&/' \
| sort -u \
> LICENSE.dependencies
%endif
mv assets/icons/LICENSES LICENSE.icons
mv assets/themes/LICENSES LICENSE.themes
mv assets/fonts/ibm-plex-sans/license.txt LICENSE.fonts
%terra_appstream -o %{SOURCE1}
%if %{with check}
%check
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/%app_id.metainfo.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/%app_id.desktop
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/%appid.metainfo.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/%appid.desktop
%if %{without debug_no_build}
%cargo_test
%endif
%endif
%files
%doc CODE_OF_CONDUCT.md
@@ -166,13 +190,18 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%app_id.desktop
%license LICENSE-AGPL
%license LICENSE-APACHE
%license LICENSE-GPL
%if %{without debug_no_build}
%license LICENSE.dependencies
%endif
%license LICENSE.fonts
%license LICENSE.icons
%license LICENSE.themes
%if %{without debug_no_build}
%license assets/licenses.md
%endif
%if %{without debug_no_build}
%{_libexecdir}/zed-editor
%{_datadir}/pixmaps/%app_id.png
%endif
%changelog
%autochangelog
+6
View File
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<component type="desktop-application">
<name>Zed (Preview)</name>
<id>dev.zed.Zed-preview</id>
<icon>dev.zed.Zed-preview</icon>
</component>
+49 -19
View File
@@ -1,11 +1,17 @@
%bcond_with check
%bcond_with debug_no_build
%global ver 0.214.4-pre
%if 0%{?with_debug_no_build}
%global debug_package %{nil}
%endif
%global ver 0.216.0-pre
# Exclude input files from mangling
%global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$
%global crate zed
%global app_id dev.zed.Zed-Preview
%global appid dev.zed.Zed-preview
%global appstream_component desktop-application
%global rustflags_debuginfo 0
@@ -17,6 +23,7 @@ SourceLicense: AGPL-3.0-only AND Apache-2.0 AND GPL-3.0-or-later
License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND AGPL.3.0-only AND AGPL-3.0-or-later AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR MIT OR Apache-2.0) AND BSD-2-Clause AND (CC0-1.0 OR Apache-2.0 OR Apache-2.0 WITH LLVM-exception) AND (CC0-1.0 OR Apache-2.0) AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND CC0-1.0 AND GPL-3.0-or-later AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (ISC AND (Apache-2.0 OR ISC)) AND ISC AND (MIT AND (MIT OR Apache-2.0)) AND (MIT AND BSD-3-Clause) AND (MIT OR Apache-2.0 OR CC0-1.0) AND (MIT OR Apache-2.0 OR NCSA) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib
URL: https://zed.dev/
Source0: https://github.com/zed-industries/zed/archive/refs/tags/v%{ver}.tar.gz
Source1: override.xml
Conflicts: zed
Conflicts: zed-nightly
@@ -61,9 +68,12 @@ Supplements: (%name unless zfs)
%description cli
This package provides the /usr/bin/zed binary. If you use zfs, install %name-rename-zeditor instead.
%files cli
%if %{without debug_no_build}
%_bindir/zed
%{_datadir}/applications/%app_id.desktop
%{_metainfodir}/%app_id.metainfo.xml
%endif
%{_datadir}/icons/hicolor/512x512/apps/%appid.png
%{_datadir}/applications/%appid.desktop
%{_metainfodir}/%appid.metainfo.xml
%package rename-zeditor
Summary: Rename zed to zeditor to prevent collision with zfs
@@ -75,18 +85,23 @@ RemovePathPostFixes: .zeditor
This package provides the %_bindir/zeditor binary instead of %_bindir/zed. This avoids conflicts with the zfs package.
The normal package is %name-cli.
%files rename-zeditor
%if %{without debug_no_build}
%_bindir/zeditor
%_datadir/applications/%app_id.desktop.zeditor
%{_metainfodir}/%app_id.metainfo.xml
%endif
%{_datadir}/icons/hicolor/512x512/apps/%appid.png
%_datadir/applications/%appid.desktop.zeditor
%{_metainfodir}/%appid.metainfo.xml
%prep
%autosetup -n %{crate}-%{ver} -p1
%if %{without debug_no_build}
%cargo_prep_online
%endif
export DO_STARTUP_NOTIFY="true"
export APP_ID="%app_id"
export APP_ICON="%app_id"
export APP_ID="%appid"
export APP_ICON="%appid"
export APP_NAME="Zed Preview"
export APP_CLI="zed"
export APP="%{_libexecdir}/zed-editor"
@@ -96,35 +111,40 @@ export ZED_RELEASE_CHANNEL=preview
export BRANDING_LIGHT="#99c1f1"
export BRANDING_DARK="#1a5fb4"
echo "StartupWMClass=$APP_ID" >> crates/zed/resources/zed.desktop.in
envsubst < "crates/zed/resources/zed.desktop.in" > $APP_ID.desktop # from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=zed-git#n52
echo "StartupWMClass=$appid" >> crates/zed/resources/zed.desktop.in
envsubst < "crates/zed/resources/zed.desktop.in" > %{appid}.desktop # from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=zed-git#n52
sed -i "s|@release_info@||g" "crates/zed/resources/flatpak/zed.metainfo.xml.in"
envsubst < "crates/zed/resources/flatpak/zed.metainfo.xml.in" > $APP_ID.metainfo.xml
envsubst < "crates/zed/resources/flatpak/zed.metainfo.xml.in" > %{appid}.metainfo.xml
%build
%if %{without debug_no_build}
export ZED_UPDATE_EXPLANATION="Run dnf up to update Zed Preview from Terra."
echo "preview" > crates/zed/RELEASE_CHANNEL
%cargo_build -- --package zed --package cli
ALLOW_MISSING_LICENSES=1 script/generate-licenses
%endif
%install
%if %{without debug_no_build}
install -Dm755 target/rpm/zed %{buildroot}%{_libexecdir}/zed-editor
install -Dm755 target/rpm/cli %{buildroot}%{_bindir}/zeditor
install -Dm755 target/rpm/cli %{buildroot}%{_bindir}/zed
%__cargo clean
%endif
install -Dm644 %app_id.desktop %{buildroot}%{_datadir}/applications/%app_id.desktop
sed 's/Exec=zed/Exec=zeditor/' %app_id.desktop > %app_id.desktop.zeditor
install -Dm644 %app_id.desktop.zeditor -t %buildroot%_datadir/applications/
install -Dm644 crates/zed/resources/app-icon-preview.png %{buildroot}%{_datadir}/pixmaps/%app_id.png
install -Dm644 %appid.desktop %{buildroot}%{_datadir}/applications/%appid.desktop
sed 's/Exec=zed/Exec=zeditor/' %appid.desktop > %appid.desktop.zeditor
install -Dm644 %appid.desktop.zeditor -t %buildroot%_datadir/applications/
install -Dm644 crates/zed/resources/app-icon-preview.png %{buildroot}%{_datadir}/icons/hicolor/512x512/apps/%appid.png
install -Dm644 %app_id.metainfo.xml %{buildroot}%{_metainfodir}/%app_id.metainfo.xml
install -Dm644 %appid.metainfo.xml %{buildroot}%{_metainfodir}/%appid.metainfo.xml
# The license generation script doesn't generate licenses for ALL compiled dependencies, just direct deps of Zed, and it does not "group" licenses
# Zed also needs a special approach to fetch the dep licenses
%if %{without debug_no_build}
%{__cargo} tree \
-Z avoid-dev-deps \
--workspace \
@@ -137,17 +157,22 @@ install -Dm644 %app_id.metainfo.xml %{buildroot}%{_metainfodir}/%app_id.metainfo
| sed -e '/.*(\*).*/d' -e '/^: pet/ s/./MIT&/' \
| sort -u \
> LICENSE.dependencies
%endif
mv assets/icons/LICENSES LICENSE.icons
mv assets/themes/LICENSES LICENSE.themes
mv assets/fonts/ibm-plex-sans/license.txt LICENSE.fonts
%terra_appstream -o %{SOURCE1}
%if %{with check}
%check
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/%app_id.metainfo.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/%app_id.desktop
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/%appid.metainfo.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/%appid.desktop
%if %{without debug_no_build}
%cargo_test
%endif
%endif
%files
%doc CODE_OF_CONDUCT.md
@@ -155,13 +180,18 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%app_id.desktop
%license LICENSE-AGPL
%license LICENSE-APACHE
%license LICENSE-GPL
%if %{without debug_no_build}
%license LICENSE.dependencies
%endif
%license LICENSE.fonts
%license LICENSE.icons
%license LICENSE.themes
%if %{without debug_no_build}
%license assets/licenses.md
%endif
%if %{without debug_no_build}
%{_libexecdir}/zed-editor
%{_datadir}/pixmaps/%app_id.png
%endif
%changelog
%autochangelog
+6
View File
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<component type="desktop-application">
<name>Zed</name>
<id>dev.zed.Zed</id>
<icon>dev.zed.Zed</icon>
</component>
+50 -22
View File
@@ -1,21 +1,28 @@
%bcond_with check
%bcond_with debug_no_build
%if %{with debug_no_build}
%global debug_package %{nil}
%endif
# Exclude input files from mangling
%global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$
%global crate zed
%global app_id dev.zed.Zed
%global appid dev.zed.Zed
%global appstream_component desktop-application
%global rustflags_debuginfo 0
Name: zed
Version: 0.213.7
Version: 0.215.3
Release: 1%?dist
Summary: Zed is a high-performance, multiplayer code editor
SourceLicense: AGPL-3.0-only AND Apache-2.0 AND GPL-3.0-or-later
License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND AGPL.3.0-only AND AGPL-3.0-or-later AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR MIT OR Apache-2.0) AND BSD-2-Clause AND (CC0-1.0 OR Apache-2.0 OR Apache-2.0 WITH LLVM-exception) AND (CC0-1.0 OR Apache-2.0) AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND CC0-1.0 AND GPL-3.0-or-later AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (ISC AND (Apache-2.0 OR ISC)) AND ISC AND (MIT AND (MIT OR Apache-2.0)) AND (MIT AND BSD-3-Clause) AND (MIT OR Apache-2.0 OR CC0-1.0) AND (MIT OR Apache-2.0 OR NCSA) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib
URL: https://zed.dev/
Source0: https://github.com/zed-industries/zed/archive/refs/tags/v%{version}.tar.gz
Source1: override.xml
Conflicts: zed-nightly
Conflicts: zed-preview
@@ -61,9 +68,12 @@ Supplements: (%name unless zfs)
%description cli
This package provides the /usr/bin/zed binary. If you use zfs, install %name-rename-zeditor instead.
%files cli
%if %{without debug_no_build}
%_bindir/zed
%{_datadir}/applications/%app_id.desktop
%{_metainfodir}/%app_id.metainfo.xml
%endif
%{_datadir}/icons/hicolor/512x512/apps/%appid.png
%{_datadir}/applications/%appid.desktop
%{_metainfodir}/%appid.metainfo.xml
%package rename-zeditor
Summary: Rename zed to zeditor to prevent collision with zfs
@@ -75,19 +85,23 @@ RemovePathPostFixes: .zeditor
This package provides the %_bindir/zeditor binary instead of %_bindir/zed. This avoids conflicts with the zfs package.
The normal package is %name-cli.
%files rename-zeditor
%if %{without debug_no_build}
%_bindir/zeditor
%_datadir/applications/%app_id.desktop.zeditor
%{_metainfodir}/%app_id.metainfo.xml
%endif
%{_datadir}/icons/hicolor/512x512/apps/%appid.png
%_datadir/applications/%appid.desktop.zeditor
%{_metainfodir}/%appid.metainfo.xml
%prep
%autosetup -n %{crate}-%{version} -p1
%if %{without debug_no_build}
%cargo_prep_online
%endif
export DO_STARTUP_NOTIFY="true"
export APP_ID="%app_id"
export APP_ICON="%app_id"
export APP_NAME="Zed Editor"
export APP_ID="%appid"
export APP_ICON="%appid"
export APP_NAME="Zed"
export APP_CLI="zed"
export APP="%{_libexecdir}/zed-editor"
export APP_ARGS="%U"
@@ -96,35 +110,40 @@ export ZED_RELEASE_CHANNEL=stable
export BRANDING_LIGHT="#e9aa6a"
export BRANDING_DARK="#1a5fb4"
echo "StartupWMClass=$APP_ID" >> crates/zed/resources/zed.desktop.in
envsubst < "crates/zed/resources/zed.desktop.in" > $APP_ID.desktop # from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=zed-git#n52
echo "StartupWMClass=$appid" >> crates/zed/resources/zed.desktop.in
envsubst < "crates/zed/resources/zed.desktop.in" > %{appid}.desktop # from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=zed-git#n52
sed -i "s|@release_info@||g" "crates/zed/resources/flatpak/zed.metainfo.xml.in"
envsubst < "crates/zed/resources/flatpak/zed.metainfo.xml.in" > $APP_ID.metainfo.xml
envsubst < "crates/zed/resources/flatpak/zed.metainfo.xml.in" > %{appid}.metainfo.xml
%build
%if %{without debug_no_build}
export ZED_UPDATE_EXPLANATION="Run dnf up to update Zed from Terra."
echo "stable" > crates/zed/RELEASE_CHANNEL
%cargo_build -- --package zed --package cli
ALLOW_MISSING_LICENSES=1 script/generate-licenses
%endif
%install
%if %{without debug_no_build}
install -Dm755 target/rpm/zed %{buildroot}%{_libexecdir}/zed-editor
install -Dm755 target/rpm/cli %{buildroot}%{_bindir}/zeditor
install -Dm755 target/rpm/cli %{buildroot}%{_bindir}/zed
%__cargo clean
%endif
install -Dm644 %app_id.desktop %{buildroot}%{_datadir}/applications/%app_id.desktop
sed 's/Exec=zed/Exec=zeditor/' %app_id.desktop > %app_id.desktop.zeditor
install -Dm644 %app_id.desktop.zeditor -t %buildroot%_datadir/applications/
install -Dm644 crates/zed/resources/app-icon.png %{buildroot}%{_datadir}/pixmaps/%app_id.png
install -Dm644 %appid.desktop %{buildroot}%{_datadir}/applications/%appid.desktop
sed 's/Exec=zed/Exec=zeditor/' %appid.desktop > %appid.desktop.zeditor
install -Dm644 %appid.desktop.zeditor -t %buildroot%_datadir/applications/
install -Dm644 crates/zed/resources/app-icon.png %{buildroot}%{_datadir}/icons/hicolor/512x512/apps/%appid.png
install -Dm644 %app_id.metainfo.xml %{buildroot}%{_metainfodir}/%app_id.metainfo.xml
install -Dm644 %appid.metainfo.xml %{buildroot}%{_metainfodir}/%appid.metainfo.xml
# The license generation script doesn't generate licenses for ALL compiled dependencies, just direct deps of Zed, and it does not "group" licenses
# Zed also needs a special approach to fetch the dep licenses
%if %{without debug_no_build}
%{__cargo} tree \
-Z avoid-dev-deps \
--workspace \
@@ -137,17 +156,22 @@ install -Dm644 %app_id.metainfo.xml %{buildroot}%{_metainfodir}/%app_id.metainfo
| sed -e '/.*(\*).*/d' -e '/^: pet/ s/./MIT&/' \
| sort -u \
> LICENSE.dependencies
%endif
mv assets/icons/LICENSES LICENSE.icons
mv assets/themes/LICENSES LICENSE.themes
mv assets/fonts/ibm-plex-sans/license.txt LICENSE.fonts
%terra_appstream -o %{SOURCE1}
%if %{with check}
%check
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/%app_id.metainfo.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/%app_id.desktop
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/%appid.metainfo.xml
desktop-file-validate %{buildroot}%{_datadir}/applications/%appid.desktop
%if %{without debug_no_build}
%cargo_test
%endif
%endif
%files
%doc CODE_OF_CONDUCT.md
@@ -155,13 +179,17 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%app_id.desktop
%license LICENSE-AGPL
%license LICENSE-APACHE
%license LICENSE-GPL
%if %{without debug_no_build}
%license LICENSE.dependencies
%license assets/licenses.md
%endif
%license LICENSE.fonts
%license LICENSE.icons
%license LICENSE.themes
%license assets/licenses.md
%if %{without debug_no_build}
%{_libexecdir}/zed-editor
%{_datadir}/pixmaps/%app_id.png
%endif
%changelog
%autochangelog
@@ -3,10 +3,10 @@
%global name_pretty %{quote:Prism Launcher (Nightly)}
%global appid org.prismlauncher.PrismLauncher-nightly
%global commit 8abf5ed7b1f31a89fad1b8d7fb1703639ca08426
%global commit fbe239eb3d8e4f7cb437cb7f6772b9953efaeec3
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20251123
%global commit_date 20251203
%global snapshot_info %{commit_date}.%{shortcommit}
%bcond_without qt6
+31 -37
View File
@@ -1,9 +1,8 @@
%global _distro_extra_cflags -Wno-uninitialized
%global _distro_extra_cxxflags -include %_includedir/c++/*/cstdint
# Define which LLVM/Clang version RPCS3 needs
%if %{?fedora} >= 43
%global llvm_major 20
%bcond llvm_compat 1
%if 0%{?fedora} >= 45
%global llvm_major 21
%endif
# GLIBCXX_ASSERTIONS is known to break RPCS3
%global build_cflags %(echo %{__build_flags_lang_c} | sed 's/-Wp,-D_GLIBCXX_ASSERTIONS//g') %{?_distro_extra_cflags}
@@ -11,8 +10,8 @@
# Need to get rid of everything Clang can't use and undefine -Wunused-command-line-argument where possible due to the project's build flags
%global build_cflags %(echo %{build_cflags} | sed 's:-Werror ::g' | sed 's:-Wunused-command-line-argument ::g' | sed 's:-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 ::g' | sed 's:-specs=/usr/lib/rpm/redhat/redhat-hardened-ld ::g' | sed 's:-specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors ::g' | sed 's:-specs=/usr/lib/rpm/redhat/redhat-package-notes ::g') -Wno-unused-command-line-argument
%global build_cxxflags %(echo %{build_cxxflags} | sed 's:-Werror ::g' | sed 's:-Wunused-command-line-argument ::g' | sed 's:-specs\=/usr/lib/rpm/redhat/redhat-annobin-cc1 ::g' | sed 's:-specs=/usr/lib/rpm/redhat/redhat-hardened-ld ::g' | sed 's:-specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors ::g' | sed 's:-specs=/usr/lib/rpm/redhat/redhat-package-notes ::g') -Wno-unused-command-line-argument
%global commit 5a9083e4fc0bfb73b09c4c436d8f5e78f8c2702a
%global ver 0.0.38-18397
%global commit e3f5f2d14e44a44eec9f8c0f79f53893ff04fdbc
%global ver 0.0.38-18442
Name: rpcs3
Version: %(echo %{ver} | sed 's/-/^/g')
@@ -68,40 +67,35 @@ BuildRequires: qt6-qtbase-private-devel vulkan-devel jack-audio-connection-kit-
%build
# Looking at the CMakeLists.txt, this is the intended compiler and there are no fixes for GCC on aarch64
%if %{with llvm_compat}
%if %{defined llvm_major}
export LLVM_DIR=%{_libdir}/llvm%{?llvm_major}/%{_lib}/cmake
%endif
%cmake -DDISABLE_LTO=TRUE \
-DZSTD_BUILD_STATIC=ON \
-DCMAKE_SKIP_RPATH=ON \
-DBUILD_SHARED_LIBS:BOOL=OFF \
-DUSE_NATIVE_INSTRUCTIONS=OFF \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DSTATIC_LINK_LLVM=OFF \
-DUSE_SYSTEM_FAUDIO=ON \
-DUSE_SDL=ON \
-DUSE_SYSTEM_SDL=ON \
-DBUILD_LLVM=OFF \
-DUSE_PRECOMPILED_HEADERS=OFF \
-DUSE_DISCORD_RPC=ON \
-DUSE_SYSTEM_FFMPEG=ON \
-DUSE_SYSTEM_LIBPNG=ON \
-DUSE_SYSTEM_ZLIB=ON \
-DUSE_SYSTEM_OPENCV=ON \
-DUSE_SYSTEM_CURL=ON \
-DUSE_SYSTEM_FLATBUFFERS=OFF \
-DUSE_SYSTEM_PUGIXML=OFF \
-DUSE_SYSTEM_WOLFSSL=OFF \
%if %{with llvm_compat}
-DCMAKE_C_COMPILER=clang-%{?llvm_major} \
-DCMAKE_CXX_COMPILER=clang++-%{?llvm_major} \
%else
-DCMAKE_C_COMPILER=clang \
-DCMAKE_CXX_COMPILER=clang++ \
%endif
-DCMAKE_LINKER=mold \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS -fuse-ld=mold" \
%cmake -DDISABLE_LTO=TRUE \
-DZSTD_BUILD_STATIC=ON \
-DCMAKE_SKIP_RPATH=ON \
-DBUILD_SHARED_LIBS:BOOL=OFF \
-DUSE_NATIVE_INSTRUCTIONS=OFF \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DSTATIC_LINK_LLVM=OFF \
-DUSE_SYSTEM_FAUDIO=ON \
-DUSE_SDL=ON \
-DUSE_SYSTEM_SDL=ON \
-DBUILD_LLVM=OFF \
-DUSE_PRECOMPILED_HEADERS=OFF \
-DUSE_DISCORD_RPC=ON \
-DUSE_SYSTEM_FFMPEG=ON \
-DUSE_SYSTEM_LIBPNG=ON \
-DUSE_SYSTEM_ZLIB=ON \
-DUSE_SYSTEM_OPENCV=ON \
-DUSE_SYSTEM_CURL=ON \
-DUSE_SYSTEM_FLATBUFFERS=OFF \
-DUSE_SYSTEM_PUGIXML=OFF \
-DUSE_SYSTEM_WOLFSSL=OFF \
-DCMAKE_C_COMPILER=clang%{?llvm_major:-%{llvm_major}} \
-DCMAKE_CXX_COMPILER=clang++%{?llvm_major:-%{llvm_major}} \
-DCMAKE_LINKER=mold \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS -fuse-ld=mold" \
-DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS -fuse-ld=mold"
%cmake_build
+1 -1
View File
@@ -1,7 +1,7 @@
%define debug_package %{nil}
Name: dart
Version: 3.10.1
Version: 3.10.3
Release: 1%?dist
Summary: The Dart Language
License: BSD-3-Clause
+1 -1
View File
@@ -4,7 +4,7 @@
# https://github.com/twpayne/chezmoi
%global goipath github.com/twpayne/chezmoi
Version: 2.67.0
Version: 2.67.1
%gometa -f
+1 -1
View File
@@ -12,7 +12,7 @@
# https://github.com/nektos/act
%global goipath github.com/nektos/act
Version: 0.2.82
Version: 0.2.83
%gometa -f
@@ -1,5 +1,5 @@
Name: groovy-docs
Version: 5.0.2
Version: 5.0.3
Release: 1%?dist
Summary: Documentation for the Groovy programming language
URL: https://groovy-lang.org/
+1 -1
View File
@@ -1,5 +1,5 @@
Name: groovy
Version: 5.0.2
Version: 5.0.3
Release: 1%?dist
Summary: A multi-faceted language for the Java platform
BuildArch: noarch
+2 -2
View File
@@ -1,8 +1,8 @@
%global csrc_commit 561b417c65791cd8356b5f73620914ceff845d10
%global commit 6543040d40b063ce2c872f582c153c6cff9ef0aa
%global commit 2d0b62aa515c9d1b4132a5c83713d7d1e68840a0
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global ver 2.3.1
%global commit_date 20251122
%global commit_date 20251203
%global debug_package %nil
Name: nim-nightly
+1 -3
View File
@@ -7,7 +7,7 @@
Name: python-%{pypi_name}
Version: %commit_date.%shortcommit
Release: 1%?dist
Release: 2%?dist
Summary: Colour your text / terminal to be more gay
License: MIT
URL: https://github.com/ms-jpq/gay
@@ -44,8 +44,6 @@ Provides: gay
%doc README.md
%license LICENSE
%{_bindir}/gay
%ghost %python3_sitelib/__pycache__/*.cpython-*.pyc
%ghost %python3_sitelib/%{name}/subcommands/__pycache__/*.cpython-*.pyc
%python3_sitelib/gay-1.3.4.dist-info/*
%changelog
+1 -1
View File
@@ -2,7 +2,7 @@
%global _desc python3-library to convert Markdown with included LaTeX-Formulas to HTML with MathML.
Name: python-%{pypi_name}
Version: 1.3.1
Version: 1.3.2
Release: 1%?dist
Summary: python3-library to convert Markdown with included LaTeX-Formulas to HTML with MathML
License: LGPL-2.1
-1
View File
@@ -10,7 +10,6 @@ URL: https://github.com/memory/PGPy
Source0: https://files.pythonhosted.org/packages/source/P/PGPy13/pgpy13-%{version}.tar.gz
BuildArch: noarch
BuildRequires: python3
BuildRequires: python3.10
BuildRequires: python3-build
BuildRequires: python3-installer
@@ -3,7 +3,7 @@
Pywal is a tool that generates a color palette from the dominant colors in an image. It then applies the colors system-wide and on-the-fly in all of your favourite programs.}
Name: python-%{pypi_name}
Version: 3.8.11
Version: 3.8.12
Release: 1%?dist
Summary: 16 color fork of the original Pywal
License: MIT
@@ -1,5 +1,5 @@
%global commit 8c7256c8fdcac67f08db1c22db0776fde6a25349
%global commit_date 20251124
%global commit 5e3a96dcaa378d0937134b0fc5ae23fb3928e1f5
%global commit_date 20251203
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global pypi_name types-colorama
+2 -2
View File
@@ -5,8 +5,8 @@
%global altdiffname cococonscious-%{crate}
Name: rust-koji
Version: 3.2.0
Release: 1%{?dist}
Version: 3.3.1
Release: 1%?dist
Summary: Interactive CLI for creating conventional commits
License: MIT
@@ -5,7 +5,7 @@
%global crate television
Name: rust-television
Version: 0.13.11
Version: 0.13.12
Release: 1%?dist
Summary: Cross-platform, fast and extensible general purpose fuzzy finder TUI
+1 -1
View File
@@ -4,7 +4,7 @@
%global crate typst
Name: rust-typst
Version: 0.14.0
Version: 0.14.1
Release: 1%?dist
Summary: New markup-based typesetting system that is powerful and easy to learn
@@ -1,5 +1,5 @@
Name: xwayland-satellite
Version: 0.7
Version: 0.8
Release: 1%?dist
Summary: Xwayland outside your Wayland.
License: MPL-2.0
@@ -1,5 +1,5 @@
%global forgeurl https://gitlab.com/vala-panel-project/vala-panel-appmenu
%global commit 6665f7708ef15baa5538f5582b81ceb75a104a24
%global commit aea4ea398b7c75494f23f5e5bdb4f495d615059f
%forgemeta
Name: vala-panel-appmenu
+2
View File
@@ -0,0 +1,2 @@
*.tar.xz
*.tar.xz.minisig
+2
View File
@@ -0,0 +1,2 @@
let dir = sub(`/[^/]+$`, "", __script_path);
sh(`./setup.sh fetch`, #{ "cwd": dir });
+36
View File
@@ -0,0 +1,36 @@
#!/usr/bin/bash
version=0.16.0-dev.1484+d0ba6642b
mirrors=()
for m in $(curl -s https://ziglang.org/download/community-mirrors.txt); do
mirrors+=($m)
done
# Self explanatory
function randomize_mirrors() {
number=${#mirrors[@]}
index=$(( RANDOM % number ))
mirror=${mirrors[$index]}
}
if [ "$1" == "fetch" ]; then
until curl -If ${mirror}/zig-${version}.tar.xz &>/dev/null && curl -If ${mirror}/zig-${version}.tar.xz.minisig &>/dev/null; do
randomize_mirrors
done
echo -e "\033[0;32mNote:\033[0m Selected mirror $mirror"
curl -A "rpmdev-spectool" -H "Accept-Encoding: identity" -O ${mirror}/zig-${version}.tar.xz
curl -A "rpmdev-spectool" -H "Accept-Encoding: identity" -O ${mirror}/zig-${version}.tar.xz.minisig
elif [ "$1" == "version" ]; then
echo $version
# Grab a random mirror. For debugging purposes.
elif [ "$1" == "mirror" ]; then
randomize_mirrors
echo "Your random mirror is $mirror"
elif [ "$1" == "mirrors" ]; then
echo "$mirrors"
fi
exit 0
+4
View File
@@ -2,6 +2,10 @@ let url = `https://ziglang.org/download/index.json`;
let json = get(url).json();
let v = json.master.version;
rpm.global("ver", v);
if rpm.changed() {
rpm.release();
// Update the Zig version in the script
let dir = sub(`/[^/]+$`, "", __script_path);
sh(`sed -i 's|version=.*|version=${v}|' setup.sh`, #{ "cwd": dir });
}
@@ -7,7 +7,7 @@
%define llvm_compat 20
%endif
%global llvm_version 20.0.0
%global ver 0.16.0-dev.1456+16fc083f2
%global ver 0.16.0-dev.1484+d0ba6642b
%bcond bootstrap 1
%bcond docs %{without bootstrap}
%bcond test 1
@@ -36,17 +36,15 @@
%global zig_install_options %zig_build_options %{shrink: \
--prefix "%{_prefix}" \
}
%global zig_mirrors ("https://pkg.machengine.org/zig" "https://zigmirror.hryx.net/zig" "https://zig.linus.dev/zig" "https://zig.squirl.dev" "https://zig.florent.dev")
%global mirror_url %(mirrors=%{zig_mirrors}; index=$(( RANDOM % ${#mirrors[@]} )); echo ${mirrors[$index]})
Name: zig-master-bootstrap
Name: zig-master
Version: %(echo %{ver} | sed 's/-/~/g')
Release: 1%?dist
Summary: Boostrap builds for Zig.
Summary: Bootstrapped build of Zig from master.
License: MIT AND NCSA AND LGPL-2.1-or-later AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND GPL-2.0-or-later AND GPL-2.0-or-later WITH GCC-exception-2.0 AND BSD-3-Clause AND Inner-Net-2.0 AND ISC AND LicenseRef-Fedora-Public-Domain AND GFDL-1.1-or-later AND ZPL-2.1
URL: https://ziglang.org
Source0: %{mirror_url}/zig-%{ver}.tar.xz
Source1: %{mirror_url}/zig-%{ver}.tar.xz.minisig
Source0: zig-%{version_no_tilde}.tar.xz
Source1: zig-%{version_no_tilde}.tar.xz.minisig
Patch0: 0000-remove-native-lib-directories-from-rpath.patch
Patch3: 0005-link.Elf-add-root-directory-of-libraries-to-linker-p.patch
BuildRequires: cmake
@@ -63,11 +61,14 @@ BuildRequires: help2man
BuildRequires: minisign
%if %{without bootstrap}
BuildRequires: %{name} = %{version}
Obsoletes: %{name}-bootstrap < %{version}
%endif
%if %{with test}
BuildRequires: elfutils-libelf-devel
BuildRequires: libstdc++-static
%endif
# For the version_no_tilde macro
BuildRequires: rust-srpm-macros
Requires: %{name}-libs = %{version}
# Apache-2.0 WITH LLVM-exception OR NCSA OR MIT
Provides: bundled(compiler-rt) = %{llvm_version}
@@ -91,7 +92,7 @@ Packager: Gilver E. <rockgrub@disroot.org>
%description
Zig is an open source alternative to C.
This package provides the bootstrap to build full "prerelease"/master builds of Zig.
This package provides the bootstrapped build to build full "prerelease"/master builds of Zig.
It is not recommended to use this build on its own.
# The Zig stdlib only contains uncompiled code
@@ -198,6 +199,8 @@ install -Dpm644 zig.1 -t %{buildroot}%{_mandir}/man1/
%endif
%changelog
* Mon Nov 24 2025 Gilver E. <rockgrub@disroot.org> - 0.16.0~dev.1456+16fc083f2-2
- Moved to new method of bootstrapping, deprecated zig-master-bootstrap
* Sat May 10 2025 Gilver E. <rockgrub@disroot.org> - 0.15.0~dev.482+2c241b263-2
- Added GCC runtime dependency to pass system information to Zig
* Fri Apr 25 2025 Gilver E. <rockgrub@disroot.org> - 0.15.0~dev.384+c06fecd46-2
+2
View File
@@ -0,0 +1,2 @@
*.tar.xz
*.tar.xz.minisig
+2
View File
@@ -0,0 +1,2 @@
let dir = sub(`/[^/]+$`, "", __script_path);
sh(`../bootstrap/setup.sh fetch`, #{ "cwd": dir });
+6 -1
View File
@@ -1,3 +1,8 @@
import "andax/bump_extras.rhai" as bump;
rpm.version(bump::madoguchi("zig-master-bootstrap", labels.branch));
rpm.version(bump::madoguchi("zig-master", labels.branch));
if rpm.changed {
let r = bump::madoguchi_json("zig-master", labels.branch).rel;
rpm.release(r + 1);
}
+6 -7
View File
@@ -11,17 +11,15 @@
%bcond docs %{without bootstrap}
%bcond test 1
%global zig_cache_dir %{builddir}/zig-cache
%global zig_mirrors ("https://pkg.machengine.org/zig" "https://zigmirror.hryx.net/zig" "https://zig.linus.dev/zig" "https://zig.squirl.dev" "https://zig.florent.dev")
%global mirror_url %(mirrors=%{zig_mirrors}; index=$(( RANDOM % ${#mirrors[@]} )); echo ${mirrors[$index]})
Name: zig-master
Version: 0.16.0~dev.1456+16fc083f2
Release: 1%?dist
Version: 0.16.0~dev.1484+d0ba6642b
Release: 2%?dist
Summary: Master builds of the Zig language
License: MIT AND NCSA AND LGPL-2.1-or-later AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND GPL-2.0-or-later AND GPL-2.0-or-later WITH GCC-exception-2.0 AND BSD-3-Clause AND Inner-Net-2.0 AND ISC AND LicenseRef-Fedora-Public-Domain AND GFDL-1.1-or-later AND ZPL-2.1
URL: https://ziglang.org
Source0: %{mirror_url}/zig-%{version_no_tilde}.tar.xz
Source1: %{mirror_url}/zig-%{version_no_tilde}.tar.xz.minisig
Source0: zig-%{version_no_tilde}.tar.xz
Source1: zig-%{version_no_tilde}.tar.xz.minisig
Patch0: 0000-remove-native-lib-directories-from-rpath.patch
Patch3: 0005-link.Elf-add-root-directory-of-libraries-to-linker-p.patch
BuildRequires: cmake
@@ -37,7 +35,8 @@ BuildRequires: help2man
# for signature verification
BuildRequires: minisign
%if %{without bootstrap}
BuildRequires: %{name}-bootstrap = %{version}
BuildRequires: %{name} = %{version}
Obsoletes: %{name}-bootstrap < %{version}
%endif
%if %{with test}
BuildRequires: elfutils-libelf-devel
@@ -0,0 +1,148 @@
%global mingw_build_ucrt64 1
%{?mingw_package_header}
# Disable debug as this package only provides a static archive (and no shared object).
# debuginfo will be made available via consumer (mesa) instead.
%global debug_package %{nil}
%global __strip /bin/true
# There is no LTO in mesa, so drop that in stub archives also
# see mesa comment:
# We've gotten a report that enabling LTO for mesa breaks some games. See
# https://bugzilla.redhat.com/show_bug.cgi?id=1862771 for details.
# Disable LTO for now
%define _lto_cflags %{nil}
Name: DirectX-Headers
Version: 1.618.1
Release: 1%{?dist}
Summary: Official Direct3D 12 headers
License: MIT
URL: https://github.com/microsoft/DirectX-Headers
Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
BuildRequires: meson
BuildRequires: gcc-c++
# Test assumes the build is under WSL, which is unlikely
%{?_with_test:BuildRequires: gtest-devel}
BuildRequires: mingw32-filesystem
BuildRequires: mingw32-gcc-c++
BuildRequires: mingw64-filesystem
BuildRequires: mingw64-gcc-c++
BuildRequires: ucrt64-filesystem
BuildRequires: ucrt64-gcc-c++
%description
Official Direct3D 12 headers
%package devel
Summary: Development files for %{name}
# This only provides -static files, so only
Provides: %{name}-static = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package -n mingw32-directx-headers
Summary: Official DirectX headers available under an open source license
%description -n mingw32-directx-headers
Official DirectX headers available under an open source license
%package -n mingw64-directx-headers
Summary: Official DirectX headers available under an open source license
%description -n mingw64-directx-headers
Official DirectX headers available under an open source license
%package -n ucrt64-directx-headers
Summary: Official DirectX headers available under an open source license
%description -n ucrt64-directx-headers
Official DirectX headers available under an open source license
%prep
%autosetup -p1
# Change EOL encoding
for i in LICENSE README.md ; do
sed -i -e 's/\r$//' ${i}
touch -r SECURITY.md ${i}
done
%build
%meson \
%{?!_with_test:-Dbuild-test=false}
%meson_build
%mingw_meson
%mingw_ninja
%install
%meson_install
%mingw_ninja_install
%check
%{?_with_test:
%meson_test
}
%files devel
%license LICENSE
%doc README.md SECURITY.md
%{_includedir}/composition
%{_includedir}/directx
%{_includedir}/dxguids
%{_includedir}/wsl
%{_libdir}/libDirectX-Guids.a
%{_libdir}/libd3dx12-format-properties.a
%{_libdir}/pkgconfig/DirectX-Headers.pc
%files -n mingw32-directx-headers
%doc README.md SECURITY.md
%license LICENSE
%{mingw32_libdir}/pkgconfig/DirectX-Headers.pc
%{mingw32_libdir}/libDirectX-Guids.a
%{mingw32_libdir}/libd3dx12-format-properties.a
%{mingw32_includedir}/composition
%{mingw32_includedir}/wsl/
%{mingw32_includedir}/dxguids/
%{mingw32_includedir}/directx/
%files -n mingw64-directx-headers
%doc README.md SECURITY.md
%license LICENSE
%{mingw64_libdir}/pkgconfig/DirectX-Headers.pc
%{mingw64_libdir}/libDirectX-Guids.a
%{mingw64_libdir}/libd3dx12-format-properties.a
%{mingw64_includedir}/composition
%{mingw64_includedir}/wsl/
%{mingw64_includedir}/dxguids/
%{mingw64_includedir}/directx/
%files -n ucrt64-directx-headers
%doc README.md SECURITY.md
%license LICENSE
%{ucrt64_libdir}/pkgconfig/DirectX-Headers.pc
%{ucrt64_libdir}/libDirectX-Guids.a
%{ucrt64_libdir}/libd3dx12-format-properties.a
%{ucrt64_includedir}/composition
%{ucrt64_includedir}/wsl/
%{ucrt64_includedir}/dxguids/
%{ucrt64_includedir}/directx/
%changelog
%autochangelog
+10
View File
@@ -0,0 +1,10 @@
project pkg {
arches = ["x86_64", "aarch64", "i386"]
rpm {
spec = "DirectX-Headers.spec"
}
labels {
mock = 1
subrepo = "extras"
}
}
+6 -4
View File
@@ -276,10 +276,11 @@ make -C utils check
%{_bindir}/aa-exec
%{_bindir}/aa-features-abi
%{_sbindir}/aa-load
%{_sbindir}/aa-teardown
%{_unitdir}/apparmor.service
%{_sbindir}/aa-show-usage
%dnl %{_sbindir}/aa-teardown
%dnl %{_unitdir}/apparmor.service
%{_presetdir}/70-apparmor.preset
%{_prefix}/lib/apparmor
%dnl %{_prefix}/lib/apparmor
%dir %{_sysconfdir}/apparmor
# FIXME: the confusion…? how did this happen
%config(noreplace) %{_sysconfdir}/apparmor/default_unconfined.template
@@ -293,7 +294,8 @@ make -C utils check
%{_mandir}/man7/apparmor.7.gz
%{_mandir}/man7/apparmor_xattrs.7.gz
%{_mandir}/man8/aa-load.8.gz
%{_mandir}/man8/aa-teardown.8.gz
%{_mandir}/man8/aa-show-usage.8.gz
%dnl %{_mandir}/man8/aa-teardown.8.gz
%{_mandir}/man8/apparmor_parser.8.gz
%files utils -f apparmor-utils.lang
+1 -1
View File
@@ -12,7 +12,7 @@
# https://github.com/Aylur/ags
%global goipath github.com/Aylur/ags
Version: 3.0.0
Version: 3.1.0
%gometa -f
+3 -3
View File
@@ -1,6 +1,6 @@
%global commit 5baeb660214bcafc9ae0b733a1bc84f5fa6078f4
%global shortcommit 5baeb66
%global commit_date 20251108
%global commit 7d1fac8a4b2a14954843a978d2ddde86168c75ef
%global shortcommit 7d1fac8
%global commit_date 20251127
Name: astal
Version: 0^%commit_date.%commit
+2 -2
View File
@@ -1,7 +1,7 @@
%global commit 5baeb660214bcafc9ae0b733a1bc84f5fa6078f4
%global commit 7d1fac8a4b2a14954843a978d2ddde86168c75ef
%global shortcommit %{sub %commit 1 7}
%global commit_date 20251108
%global commit_date 20251127
Name: astal
Version: 0^%commit_date.%shortcommit
+1 -1
View File
@@ -1,5 +1,5 @@
Name: libusermetrics
Version: 1.3.3
Version: 1.4.0
Release: 1%?dist
Summary: library for retrieving anonymous metrics about users
License: GPLv3 AND LGPLv3 AND LGPLv2
File diff suppressed because it is too large Load Diff
+27
View File
@@ -0,0 +1,27 @@
From 087ef6401515d7260eafbffe423f39afc2af985c Mon Sep 17 00:00:00 2001
From: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Date: Tue, 18 Nov 2025 11:36:43 +0100
Subject: [PATCH] dril: don't build a rocket_dri.so
As Teflon doesn't dynamically load drivers (yet?).
---
src/gallium/targets/dril/meson.build | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/gallium/targets/dril/meson.build b/src/gallium/targets/dril/meson.build
index 140022f077da9..62a816f44a625 100644
--- a/src/gallium/targets/dril/meson.build
+++ b/src/gallium/targets/dril/meson.build
@@ -124,8 +124,7 @@ foreach d : [[with_gallium_kmsro, [
[with_gallium_lima, 'lima_dri.so'],
[with_gallium_d3d12, 'd3d12_dri.so'],
[with_gallium_zink, 'zink_dri.so'],
- [with_gallium_asahi, 'asahi_dri.so'],
- [with_gallium_rocket, 'rocket_dri.so']]
+ [with_gallium_asahi, 'asahi_dri.so']]
if d[0]
dril_drivers += d[1]
endif
--
GitLab
+136 -74
View File
@@ -4,23 +4,22 @@
%ifnarch s390x
%global with_hardware 1
%global with_kmsro 1
%global with_nvk 1
%global with_radeonsi 1
%global with_spirv_tools 1
%global with_vmware 1
%global with_vulkan_hw 1
%global with_vdpau 1
%global with_va 1
%if !0%{?rhel}
%global with_r300 1
%global with_r600 1
%if 0%{?with_vulkan_hw}
%global with_nvk %{with_vulkan_hw}
%endif
%global with_opencl 1
%endif
%global base_vulkan %{?with_vulkan_hw:,amd}%{!?with_vulkan_hw:%{nil}}
%endif
%ifnarch %{ix86}
%ifarch aarch64 x86_64
%if !0%{?rhel}
%global with_teflon 1
%endif
@@ -51,12 +50,11 @@
%global with_v3d 1
%endif
%global with_freedreno 1
%global with_kmsro 1
%global with_panfrost 1
%if 0%{?with_asahi}
%global asahi_platform_vulkan %{?with_vulkan_hw:,asahi}%{!?with_vulkan_hw:%{nil}}
%endif
%global extra_platform_vulkan %{?with_vulkan_hw:,broadcom,freedreno,panfrost,imagination-experimental}%{!?with_vulkan_hw:%{nil}}
%global extra_platform_vulkan %{?with_vulkan_hw:,broadcom,freedreno,panfrost,imagination}%{!?with_vulkan_hw:%{nil}}
%endif
%if !0%{?rhel}
@@ -73,14 +71,22 @@
%global vulkan_drivers swrast%{?base_vulkan}%{?intel_platform_vulkan}%{?asahi_platform_vulkan}%{?extra_platform_vulkan}%{?with_nvk:,nouveau}%{?with_virtio:,virtio}%{?with_d3d12:,microsoft-experimental}
%if 0%{?with_nvk} && 0%{?rhel}
%global vendor_nvk_crates 1
%endif
# We've gotten a report that enabling LTO for mesa breaks some games. See
# https://bugzilla.redhat.com/show_bug.cgi?id=1862771 for details.
# Disable LTO for now
%global _lto_cflags %nil
Name: %{srcname}
Summary: Mesa graphics libraries
# Make the dep solver always prefer our Mesa over the distro's
# This should not break anything by default as the Mesa stream is ***EXPLICITLY***
# disabled by default, and has to be enabled manually. See `terra/release/terra-mesa.repo` for details.
%global ver 25.3.0
Epoch: 1
Version: 25.3.0
Release: 1%?dist
Version: %{lua:ver = string.gsub(rpm.expand("%{ver}"), "-", "~"); print(ver)}
Release: %autorelease
Packager: Kyle Gospodnetich <me@kylegospodneti.ch>
License: MIT AND BSD-3-Clause AND SGI-B-2.0
URL: http://www.mesa3d.org
@@ -90,11 +96,28 @@ Source0: https://archive.mesa3d.org/%{srcname}-%{version}.tar.xz
# Fedora opts to ignore the optional part of clause 2 and treat that code as 2 clause BSD.
Source1: Mesa-MLAA-License-Clarification-Email.txt
Patch10: gnome-shell-glthread-disable.patch
# In CentOS/RHEL, Rust crates required to build NVK are vendored.
# The minimum target versions are obtained from the .wrap files
# https://gitlab.freedesktop.org/mesa/mesa/-/tree/main/subprojects
# but we generally want the latest compatible versions
%global rust_paste_ver 1.0.15
%global rust_proc_macro2_ver 1.0.101
%global rust_quote_ver 1.0.40
%global rust_syn_ver 2.0.106
%global rust_unicode_ident_ver 1.0.18
%global rustc_hash_ver 2.1.1
Source10: https://crates.io/api/v1/crates/paste/%{rust_paste_ver}/download#/paste-%{rust_paste_ver}.tar.gz
Source11: https://crates.io/api/v1/crates/proc-macro2/%{rust_proc_macro2_ver}/download#/proc-macro2-%{rust_proc_macro2_ver}.tar.gz
Source12: https://crates.io/api/v1/crates/quote/%{rust_quote_ver}/download#/quote-%{rust_quote_ver}.tar.gz
Source13: https://crates.io/api/v1/crates/syn/%{rust_syn_ver}/download#/syn-%{rust_syn_ver}.tar.gz
Source14: https://crates.io/api/v1/crates/unicode-ident/%{rust_unicode_ident_ver}/download#/unicode-ident-%{rust_unicode_ident_ver}.tar.gz
Source15: https://crates.io/api/v1/crates/rustc-hash/%{rustc_hash_ver}/download#/rustc-hash-%{rustc_hash_ver}.tar.gz
# Teflon: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38532
Patch12: mesa-38532.patch
# https://github.com/bazzite-org/mesa
Patch20: bazzite.patch
Patch21: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37498.diff
BuildRequires: meson >= 1.3.0
BuildRequires: gcc
@@ -102,6 +125,7 @@ BuildRequires: gcc-c++
BuildRequires: gettext
%if 0%{?with_hardware}
BuildRequires: kernel-headers
BuildRequires: systemd-devel
%endif
# We only check for the minimum version of pkgconfig(libdrm) needed so that the
# SRPMs for each arch still have the same build dependencies. See:
@@ -113,12 +137,12 @@ BuildRequires: pkgconfig(libunwind)
BuildRequires: pkgconfig(expat)
BuildRequires: pkgconfig(zlib) >= 1.2.3
BuildRequires: pkgconfig(libzstd)
BuildRequires: pkgconfig(libselinux)
BuildRequires: pkgconfig(wayland-scanner)
BuildRequires: pkgconfig(wayland-protocols) >= 1.34
BuildRequires: pkgconfig(wayland-client) >= 1.11
BuildRequires: pkgconfig(wayland-server) >= 1.11
BuildRequires: pkgconfig(wayland-egl-backend) >= 3
BuildRequires: pkgconfig(libdisplay-info)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(xdamage) >= 1.1
@@ -142,9 +166,6 @@ BuildRequires: flex
%if 0%{?with_lmsensors}
BuildRequires: lm_sensors-devel
%endif
%if 0%{?with_vdpau}
BuildRequires: pkgconfig(vdpau) >= 1.1
%endif
%if 0%{?with_va}
BuildRequires: pkgconfig(libva) >= 0.38.0
%endif
@@ -164,23 +185,20 @@ BuildRequires: pkgconfig(LLVMSPIRVLib)
%endif
%if 0%{?with_opencl} || 0%{?with_nvk}
BuildRequires: bindgen
BuildRequires: rust-packaging
%if 0%{?rhel}
BuildRequires: rust-toolset
%else
BuildRequires: cargo-rpm-macros
%endif
%endif
%if 0%{?with_nvk}
BuildRequires: cbindgen
BuildRequires: (crate(paste) >= 1.0.14 with crate(paste) < 2)
BuildRequires: (crate(proc-macro2) >= 1.0.56 with crate(proc-macro2) < 2)
BuildRequires: (crate(quote) >= 1.0.25 with crate(quote) < 2)
BuildRequires: (crate(syn/clone-impls) >= 2.0.15 with crate(syn/clone-impls) < 3)
BuildRequires: (crate(unicode-ident) >= 1.0.6 with crate(unicode-ident) < 2)
BuildRequires: (crate(rustc-hash) >= 2.1.1 with crate(rustc-hash) < 3)
%endif
%if %{with valgrind}
BuildRequires: pkgconfig(valgrind)
%endif
BuildRequires: python3-devel
BuildRequires: python3-mako
BuildRequires: python3-ply
BuildRequires: python3-pycparser
BuildRequires: python3-pyyaml
BuildRequires: vulkan-headers
@@ -189,7 +207,7 @@ BuildRequires: glslang
BuildRequires: pkgconfig(vulkan)
%endif
%if 0%{?with_d3d12}
BuildRequires: pkgconfig(DirectX-Headers) >= 1.614.1
BuildRequires: pkgconfig(DirectX-Headers) >= 1.618.1
%endif
%description
@@ -269,15 +287,6 @@ Obsoletes: %{name}-vaapi-drivers < %{?epoch:%{epoch}:}22.2.0-5
%{summary}.
%endif
%if 0%{?with_vdpau}
%package vdpau-drivers
Summary: Mesa-based VDPAU drivers
Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
%description vdpau-drivers
%{summary}.
%endif
%package libgbm
Summary: Mesa gbm runtime library
Provides: libgbm
@@ -351,45 +360,102 @@ The drivers with support for the Vulkan API.
%autosetup -n %{srcname}-%{version} -p1
cp %{SOURCE1} docs/
# Extract Rust crates meson cache directory
%if 0%{?vendor_nvk_crates}
mkdir subprojects/packagecache/
tar -xvf %{SOURCE10} -C subprojects/packagecache/
tar -xvf %{SOURCE11} -C subprojects/packagecache/
tar -xvf %{SOURCE12} -C subprojects/packagecache/
tar -xvf %{SOURCE13} -C subprojects/packagecache/
tar -xvf %{SOURCE14} -C subprojects/packagecache/
tar -xvf %{SOURCE15} -C subprojects/packagecache/
for d in subprojects/packagecache/*-*; do
echo '{"files":{}}' > $d/.cargo-checksum.json
done
%endif
%if 0%{?with_nvk}
cat > Cargo.toml <<_EOF
[package]
name = "mesa"
version = "%{ver}"
edition = "2021"
[lib]
path = "src/nouveau/nil/lib.rs"
# only direct dependencies need to be listed here
[dependencies]
paste = "$(grep ^directory subprojects/paste*.wrap | sed 's|.*-||')"
syn = { version = "$(grep ^directory subprojects/syn*.wrap | sed 's|.*-||')", features = ["clone-impls"] }
rustc-hash = "$(grep ^directory subprojects/rustc-hash*.wrap | sed 's|.*-||')"
_EOF
%if 0%{?vendor_nvk_crates}
%cargo_prep -v subprojects/packagecache
%else
%cargo_prep
%generate_buildrequires
%cargo_generate_buildrequires
%endif
%endif
%build
# ensure standard Rust compiler flags are set
export RUSTFLAGS="%build_rustflags"
%if 0%{?with_nvk}
export MESON_PACKAGE_CACHE_DIR="%{cargo_registry}/"
# So... Meson can't actually find them without tweaks
%define inst_crate_nameversion() %(basename %{cargo_registry}/%{1}-*)
%define rewrite_wrap_file() sed -e "/source.*/d" -e "s/%{1}-.*/%{inst_crate_nameversion %{1}}/" -i subprojects/%{1}.wrap
%rewrite_wrap_file proc-macro2
%rewrite_wrap_file quote
%rewrite_wrap_file syn
%rewrite_wrap_file unicode-ident
%rewrite_wrap_file paste
%if !0%{?vendor_nvk_crates}
export MESON_PACKAGE_CACHE_DIR="%{cargo_registry}/"
%endif
# We've gotten a report that enabling LTO for mesa breaks some games. See
# https://bugzilla.redhat.com/show_bug.cgi?id=1862771 for details.
# Disable LTO for now
%define _lto_cflags %{nil}
# This function rewrites a mesa .wrap file:
# - Removes the lines that start with "source"
# - Replaces the "directory =" with the MESON_PACKAGE_CACHE_DIR
#
# Example: An upstream .wrap file like this (proc-macro2-1-rs.wrap):
#
# [wrap-file]
# directory = proc-macro2-1.0.86
# source_url = https://crates.io/api/v1/crates/proc-macro2/1.0.86/download
# source_filename = proc-macro2-1.0.86.tar.gz
# source_hash = 5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77
# patch_directory = proc-macro2-1-rs
#
# Will be transformed to:
#
# [wrap-file]
# directory = meson-package-cache-dir
# patch_directory = proc-macro2-1-rs
rewrite_wrap_file() {
sed -e "/source.*/d" -e "s/^directory = ${1}-.*/directory = $(basename ${MESON_PACKAGE_CACHE_DIR:-subprojects/packagecache}/${1}-*)/" -i subprojects/${1}*.wrap
}
rewrite_wrap_file proc-macro2
rewrite_wrap_file quote
rewrite_wrap_file syn
rewrite_wrap_file unicode-ident
rewrite_wrap_file paste
rewrite_wrap_file rustc-hash
%endif
%meson \
-Dplatforms=x11,wayland \
-Dgallium-mediafoundation=disabled \
%if 0%{?with_hardware}
-Dgallium-drivers=llvmpipe,virgl,nouveau%{?with_r300:,r300}%{?with_crocus:,crocus}%{?with_i915:,i915}%{?with_iris:,iris}%{?with_vmware:,svga}%{?with_radeonsi:,radeonsi}%{?with_r600:,r600}%{?with_asahi:,asahi}%{?with_freedreno:,freedreno}%{?with_etnaviv:,etnaviv}%{?with_tegra:,tegra}%{?with_vc4:,vc4}%{?with_v3d:,v3d}%{?with_lima:,lima}%{?with_panfrost:,panfrost}%{?with_vulkan_hw:,zink}%{?with_d3d12:,d3d12} \
-Dgallium-drivers=llvmpipe,virgl,nouveau%{?with_r300:,r300}%{?with_crocus:,crocus}%{?with_i915:,i915}%{?with_iris:,iris}%{?with_vmware:,svga}%{?with_radeonsi:,radeonsi}%{?with_r600:,r600}%{?with_asahi:,asahi}%{?with_freedreno:,freedreno}%{?with_etnaviv:,etnaviv}%{?with_tegra:,tegra}%{?with_vc4:,vc4}%{?with_v3d:,v3d}%{?with_lima:,lima}%{?with_panfrost:,panfrost}%{?with_vulkan_hw:,zink}%{?with_d3d12:,d3d12}%{?with_teflon:,ethosu,rocket} \
%else
-Dgallium-drivers=llvmpipe,virgl \
%endif
-Dgallium-vdpau=%{?with_vdpau:enabled}%{!?with_vdpau:disabled} \
-Dgallium-va=%{?with_va:enabled}%{!?with_va:disabled} \
-Dgallium-mediafoundation=disabled \
-Dteflon=%{?with_teflon:true}%{!?with_teflon:false} \
%if 0%{?with_opencl}
-Dgallium-rusticl=true \
%endif
-Dvulkan-drivers=%{?vulkan_drivers} \
-Dvulkan-layers=device-select,anti-lag \
-Dshared-glapi=enabled \
-Dgles1=enabled \
-Dgles2=enabled \
-Dopengl=true \
@@ -399,12 +465,12 @@ export MESON_PACKAGE_CACHE_DIR="%{cargo_registry}/"
-Dglvnd=enabled \
-Dvideo-codecs=all \
-Dintel-rt=%{?with_intel_vk_rt:enabled}%{!?with_intel_vk_rt:disabled} \
-Damdgpu-virtio=true \
-Dmicrosoft-clc=disabled \
-Dllvm=enabled \
-Dshared-llvm=enabled \
-Dvalgrind=%{?with_valgrind:enabled}%{!?with_valgrind:disabled} \
-Dbuild-tests=false \
-Dselinux=true \
%if !0%{?with_libunwind}
-Dlibunwind=disabled \
%endif
@@ -415,14 +481,21 @@ export MESON_PACKAGE_CACHE_DIR="%{cargo_registry}/"
%ifarch %{ix86}
-Dglx-read-only-text=true \
%endif
-Dspirv-tools=%{?with_spirv_tools:enabled}%{!?with_spirv_tools:disabled} \
%{nil}
%meson_build
%if 0%{?with_nvk}
%cargo_license_summary
%{cargo_license} > LICENSE.dependencies
%if 0%{?vendor_nvk_crates}
%cargo_vendor_manifest
%endif
%endif
%install
%meson_install
# libvdpau opens the versioned name, don't bother including the unversioned
rm -vf %{buildroot}%{_libdir}/vdpau/*.so
# likewise glvnd
rm -vf %{buildroot}%{_libdir}/libGLX_mesa.so
rm -vf %{buildroot}%{_libdir}/libEGL_mesa.so
@@ -517,7 +590,7 @@ popd
%{_libdir}/dri/i915_dri.so
%endif
%endif
%ifarch aarch64 x86_64 %{ix86}
%ifnarch s390x
%if 0%{?with_asahi}
%{_libdir}/dri/apple_dri.so
%{_libdir}/dri/asahi_dri.so
@@ -611,22 +684,6 @@ popd
%{_libdir}/dri/virtio_gpu_drv_video.so
%endif
%if 0%{?with_vdpau}
%files vdpau-drivers
%dir %{_libdir}/vdpau
%{_libdir}/vdpau/libvdpau_nouveau.so.1*
%if 0%{?with_r600}
%{_libdir}/vdpau/libvdpau_r600.so.1*
%endif
%if 0%{?with_radeonsi}
%{_libdir}/vdpau/libvdpau_radeonsi.so.1*
%endif
%if 0%{?with_d3d12}
%{_libdir}/vdpau/libvdpau_d3d12.so.1*
%endif
%{_libdir}/vdpau/libvdpau_virtio_gpu.so.1*
%endif
%if 0%{?with_d3d12}
%files dxil-devel
%{_bindir}/spirv2dxil
@@ -635,6 +692,12 @@ popd
%endif
%files vulkan-drivers
%if 0%{?with_nvk}
%license LICENSE.dependencies
%if 0%{?vendor_nvk_crates}
%license cargo-vendor.txt
%endif
%endif
%{_libdir}/libvulkan_lvp.so
%{_datadir}/vulkan/icd.d/lvp_icd.*.json
%{_libdir}/libVkLayer_MESA_device_select.so
@@ -674,7 +737,6 @@ popd
%{_datadir}/vulkan/icd.d/freedreno_icd.*.json
%{_libdir}/libvulkan_panfrost.so
%{_datadir}/vulkan/icd.d/panfrost_icd.*.json
%{_libdir}/libpowervr_rogue.so
%{_libdir}/libvulkan_powervr_mesa.so
%{_datadir}/vulkan/icd.d/powervr_mesa_icd.*.json
%endif
@@ -1,7 +1,7 @@
%global _major 1
Name: libnvidia-container
Version: 1.18.0
Version: 1.18.1
Release: 1%?dist
Summary: NVIDIA container runtime library
License: BSD-3-Clause AND Apache-2.0 AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND GPL-2.0-only
@@ -25,20 +25,15 @@ BuildRequires: rpcgen
The nvidia-container library provides an interface to configure containers using NVIDIA hardware.
%prep
rm -rf ./*
### Must be built this way because the Makefile expects be to in a Git directory.
git clone https://github.com/NVIDIA/%{name}.git
cd %{name}
git checkout v%{version}
%git_clone %{url}.git v%{version}
%autopatch -p1
%build
cd %{name}
make distclean
%make_build REVISION=%{version} WITH_LIBELF=yes
%install
cd %{name}
make install DESTDIR=%{buildroot} REVISION=%{version} WITH_LIBELF=yes \
LDCONFIG=/bin/true \
prefix=%{_prefix} \
+2
View File
@@ -1,8 +1,10 @@
project pkg {
arches = ["x86_64", "aarch64", "i386"]
rpm {
spec = "openh264.spec"
}
labels {
subrepo = "multimedia"
mock = 1
}
}
+55 -55
View File
@@ -1,107 +1,107 @@
# ref: https://src.fedoraproject.org/rpms/openh264
# To get the commit:
# git clone https://github.com/cisco/openh264.git
# cd openh264
# rm -rf gmp-api; make gmp-bootstrap; cd gmp-api
# git rev-parse HEAD
%global commit1 1f5a2f07a565a9465c14d3a8b12f3202f83c775e
%global shortcommit1 %(c=%{commit1}; echo ${c:0:7})
# Makefile expects V=Yes instead of V=1:
%global _make_verbose V=Yes
Name: openh264
Version: 2.6.0
# Also bump the Release tag for gstreamer1-plugin-openh264 down below
Release: 2%?dist
Summary: H.264 codec library
Release: 3%{?dist}
Epoch: 1
Summary: Open Source H.264 Codec
License: BSD
URL: https://www.openh264.org/
Source0: https://github.com/cisco/openh264/archive/v%version/openh264-%version.tar.gz
Source0: https://github.com/cisco/%{name}/archive/v%{version}.tar.gz#/%{name}-v%{version}.tar.gz
Source1: https://github.com/mozilla/gmp-api/archive/%{commit1}/gmp-api-%{shortcommit1}.tar.gz
BuildRequires: gcc-c++
BuildRequires: gstreamer1-devel
BuildRequires: gstreamer1-plugins-base-devel
BuildRequires: make
BuildRequires: meson
BuildRequires: nasm
Obsoletes: noopenh264 < 1:0
Obsoletes: %{name}-libs < %{?epoch}:%{version}-%{release}
Provides: %{name}-libs = %{?epoch}:%{version}-%{release}
Provides: %{name}-libs%{?_isa} = %{?epoch}:%{version}-%{release}
%description
OpenH264 is a codec library which supports H.264 encoding and decoding. It is
suitable for use in real time applications such as WebRTC.
%package devel
Summary: Development files for %{name}
Obsoletes: noopenh264-devel < 1:0
Requires: %{name}%{?_isa} = %{?epoch}:%{version}-%{release}
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package -n mozilla-openh264
Summary: H.264 codec support for Mozilla browsers
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: mozilla-filesystem%{?_isa}
%package -n mozilla-%{name}
Summary: H.264 codec support for Mozilla browsers
Requires: %{name}%{?_isa} = %{?epoch}:%{version}-%{release}
Requires: mozilla-filesystem%{?_isa}
%description -n mozilla-openh264
The mozilla-openh264 package contains a H.264 codec plugin for Mozilla
browsers.
The mozilla-openh264 package contains a H.264 codec plugin for Mozilla browsers.
%prep
%setup -q
%autosetup
# Extract gmp-api archive
tar -xf %{S:1}
mv gmp-api-%{commit1} gmp-api
%build
# Update the makefile with our build options
# Must be done in %%build in order to pick up correct LDFLAGS.
sed -i -e 's|^CFLAGS_OPT=.*$|CFLAGS_OPT=%{optflags}|' Makefile
sed -i -e 's|^PREFIX=.*$|PREFIX=%{_prefix}|' Makefile
sed -i -e 's|^LIBDIR_NAME=.*$|LIBDIR_NAME=%{_lib}|' Makefile
sed -i -e 's|^SHAREDLIB_DIR=.*$|SHAREDLIB_DIR=%{_libdir}|' Makefile
sed -i -e '/^CFLAGS_OPT=/i LDFLAGS=%{__global_ldflags}' Makefile
# First build the openh264 libraries
make %{?_smp_mflags}
# ... then build the mozilla plugin
make plugin %{?_smp_mflags}
sed -i \
-e 's@PREFIX=/usr/local@PREFIX=%{_prefix}@g' \
-e 's@SHAREDLIB_DIR=$(PREFIX)/lib@SHAREDLIB_DIR=%{_libdir}@g' \
-e 's@LIBDIR_NAME=lib@LIBDIR_NAME=%{_lib}@g' \
-e 's@CFLAGS_OPT=-O3@CFLAGS_OPT=%{optflags}@g' \
-e '/^CFLAGS_OPT=/i LDFLAGS=%{__global_ldflags}' \
Makefile
%make_build
%make_build plugin
%install
%make_install
find %{buildroot} -name "*.a" -delete
# Install mozilla plugin
mkdir -p $RPM_BUILD_ROOT%{_libdir}/mozilla/plugins/gmp-gmpopenh264/system-installed
cp -a libgmpopenh264.so* gmpopenh264.info $RPM_BUILD_ROOT%{_libdir}/mozilla/plugins/gmp-gmpopenh264/system-installed/
mkdir -p %{buildroot}%{_libdir}/mozilla/plugins/gmp-gmpopenh264/system-installed
cp -a libgmpopenh264.so* gmpopenh264.info %{buildroot}%{_libdir}/mozilla/plugins/gmp-gmpopenh264/system-installed/
mkdir -p $RPM_BUILD_ROOT%{_libdir}/firefox/defaults/pref
cat > $RPM_BUILD_ROOT%{_libdir}/firefox/defaults/pref/gmpopenh264.js << EOF
mkdir -p %{buildroot}%{_libdir}/firefox/defaults/pref
cat > %{buildroot}%{_libdir}/firefox/defaults/pref/gmpopenh264.js << EOF
pref("media.gmp-gmpopenh264.autoupdate", false);
pref("media.gmp-gmpopenh264.version", "system-installed");
pref("media.gmp-gmpopenh264.enabled", true);
pref("media.gmp-gmpopenh264.provider.enabled", true);
pref("media.peerconnection.video.h264_enabled", true);
EOF
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/profile.d
cat > $RPM_BUILD_ROOT%{_sysconfdir}/profile.d/gmpopenh264.sh << EOF
MOZ_GMP_PATH="${MOZ_GMP_PATH}${MOZ_GMP_PATH:+:}%{_libdir}/mozilla/plugins/gmp-gmpopenh264/system-installed"
mkdir -p %{buildroot}%{_sysconfdir}/profile.d
cat > %{buildroot}%{_sysconfdir}/profile.d/gmpopenh264.sh << EOF
MOZ_GMP_PATH="%{_libdir}/mozilla/plugins/gmp-gmpopenh264/system-installed"
export MOZ_GMP_PATH
EOF
# Remove static libraries
rm $RPM_BUILD_ROOT%{_libdir}/*.a
%files
%license LICENSE
%doc README.md
%{_libdir}/libopenh264.so.*
%doc README.md CONTRIBUTORS
%{_libdir}/lib%{name}.so.*
%files devel
%{_includedir}/wels/
%{_libdir}/libopenh264.so
%{_libdir}/pkgconfig/openh264.pc
%{_includedir}/*
%{_libdir}/lib%{name}.so
%{_libdir}/pkgconfig/%{name}.pc
%files -n mozilla-openh264
%files -n mozilla-%{name}
%{_sysconfdir}/profile.d/gmpopenh264.sh
%dir %{_libdir}/firefox
%dir %{_libdir}/firefox/defaults
+3 -3
View File
@@ -1,6 +1,6 @@
%global commit dd1b761fda7e47f4e0275c4d319f80a04db1997f
%global ver 1.8.56
%global commit_date 20251023
%global commit f0d04d357c4ab2d4a7288e52dbeec3c2d9dd0a2d
%global ver 1.8.57
%global commit_date 20251127
%global shortcommit %(c=%{commit}; echo ${c:0:7})
Name: tdlib-nightly
+5
View File
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "zlib.spec"
}
}
+1
View File
@@ -0,0 +1 @@
rpm.version(gh("madler/zlib"));
+45
View File
@@ -0,0 +1,45 @@
Name: zlib
Version: 1.3.1
Release: 1%?dist
License: Zlib
URL: https://zlib.net
Source: https://github.com/madler/zlib/archive/v%{version}.tar.gz
Summary: A massively spiffy yet delicately unobtrusive compression library
Conflicts: zlib-ng-compat
BuildRequires: gcc
%description
%summary.
%package devel
%pkg_devel_files
%package static
%pkg_static_files
%prep
%autosetup
export CFLAGS="%optflags"
export LDFLAGS="%build_ldflags"
./configure --libdir=%_libdir \
--includedir=%_includedir \
--sysconfdir=%_sysconfdir \
--localstatedir=%_localstatedir \
--prefix=%_prefix
%build
%make_build
%install
%make_install
%files
%license LICENSE
%doc README
%_mandir/man3/zlib.3.*
%_libdir/libz.so.*
%changelog
* Wed Nov 26 2025 metcya <metcya@gmail.com>
- package zlib
+6 -3
View File
@@ -1,8 +1,11 @@
rpm.global("commit", gh_commit("ad-oliviero/uwufetch"));
let json = get(`https://api.github.com/repos/ad-oliviero/uwufetch/commits/development`).json();
let c = json.sha;
let d = json.commit.author.date;
rpm.global("commit", c);
if rpm.changed() {
rpm.release();
rpm.global("commit_date", date());
rpm.global("fulldate", d);
d.truncate(10);
let ver = gh_tag("ad-oliviero/uwufetch");
ver.crop(1);
rpm.global("ver", ver);
}
+3 -2
View File
@@ -1,6 +1,7 @@
%global commit 28b471b813d1c9aab77eeeb61f65304e586fb275
%global commit 9417838c91aab6088778089b9a3e8330bca53fbd
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20240423
%global fulldate 2024-02-14T09:28:02Z
%global commit_date %(echo %{fulldate} | sed 's/-//g')
%global ver 2.1
%global debug_package %{nil}
+1 -1
View File
@@ -1,5 +1,5 @@
Name: zapret
Version: 72.2
Version: 72.3
Release: 1%?dist
Summary: A multi-platform Deep Packet Inspection (DPI) bypass tool
License: MIT
@@ -1,6 +1,9 @@
rpm.version(gh("v-novaltd/LCEVCdec"));
import "andax/bump_extras.rhai" as bump;
import "andax/spec.rhai" as spec;
open_file("anda/multimedia/lcevcdec/VERSION_ffmpeg.txt", "w").write(bump::madoguchi("ffmpeg", labels.branch));
rpm.version(find(`\s+VERSION ([\d.]+)`, gh_rawfile("v-novaltd/LCEVCdec", "main", "CMakeLists.txt"), 1));
open_file("anda/multimedia/LCEVCdec/VERSION_ffmpeg.txt", "w").write(bump::madoguchi("ffmpeg", labels.branch));
let dir = sub(`/[^/]+$`, "", __script_path);
if sh("[[ `git status " + dir + " --porcelain` ]] && exit 1 || exit 0", #{}).ctx.rc == 1 {
@@ -0,0 +1 @@
1.6.0
@@ -0,0 +1 @@
4.0.0

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