Compare commits

...
Sign in to create a new pull request.

4 commits

Author SHA1 Message Date
Fedora Release Engineering
56c4bb7751 Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild 2026-07-17 09:43:34 +00:00
Fabio Valentini
cf9133a3b1
Initial import after renaming from rust-zram-generator (#2432354) 2026-01-26 21:07:10 +01:00
Fedora Release Engineering
2d4265e9f3 Unretire package: zram-generator on rawhide
Reverts retirement commit 998b90caf3
Releng issue: https://pagure.io/releng/issue/https://forge.fedoraproject.org/releng/tickets/issues/13182
2026-01-26 11:48:22 +00:00
Mohan Boddu
998b90caf3 Incorrect name and moved to rust-zram-generator 2018-08-28 14:39:34 -04:00
7 changed files with 172 additions and 3 deletions

2
.gitignore vendored Normal file
View file

@ -0,0 +1,2 @@
/zram-generator-1.2.1.tar.gz
/zram-generator-1.2.1-vendor.tar.xz

24
238.patch Normal file
View file

@ -0,0 +1,24 @@
From d18d7763f5dbf16ba108b3443ed9ef866ff1fbe1 Mon Sep 17 00:00:00 2001
From: Fabio Valentini <decathorpe@gmail.com>
Date: Fri, 26 Dec 2025 14:14:11 +0100
Subject: [PATCH] Bump nix from 0.22 to 0.30
This requires enabling some feature flags that are no longer enabled
by default, but no actual code changes.
---
Cargo.toml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Cargo.toml b/Cargo.toml
index 744b827..bd67fe5 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -23,7 +23,7 @@ fasteval = { version = "0.2", default-features = false }
[dev-dependencies]
tempfile = "3"
fs_extra = "1.3"
-nix = ">=0.22, <0.24"
+nix = { version = "0.30", features = ["mount", "sched", "user"] }
ctor = "0.2"
[profile.release]

View file

@ -1,3 +0,0 @@
# zram-generator
The zram-generator package

2
sources Normal file
View file

@ -0,0 +1,2 @@
SHA512 (zram-generator-1.2.1.tar.gz) = f7d4ca7a0962b3d800307e1d0af790cb58da3be981544ad1d1ea809066c8545a8572b15ae00c2816908a90605abfd2b774fd208d3042bc6a8d4806c5d72a53e5
SHA512 (zram-generator-1.2.1-vendor.tar.xz) = 9d1aa113a273156375cf2af11624b976b7fda2ac298d254cb4fcf40c3e2e7c7f818e97f37122c919b38890b7928ecdc98d55ff5a26aa5293d82e691f1bae76fe

20
vendor.sh Executable file
View file

@ -0,0 +1,20 @@
#!/usr/bin/bash
set -e
NAME=zram-generator
SPEC="${NAME}.spec"
VERSION=$(rpmspec -q --srpm --queryformat "%{version}" ${SPEC})
spectool -g ${SPEC}
tar -xzf ${NAME}-${VERSION}.tar.gz
pushd ${NAME}-${VERSION}
patch -p1 < ../238.patch
cargo vendor --versioned-dirs vendor
tar -Jcf ../${NAME}-${VERSION}-vendor.tar.xz vendor/
popd
rm -rf ${NAME}-${VERSION}/

8
zram-generator.conf Normal file
View file

@ -0,0 +1,8 @@
# This config file enables a /dev/zram0 device with the default settings:
# — size — same as available RAM or 8GB, whichever is less
# — compression — most likely lzo-rle
#
# To disable, uninstall zram-generator-defaults or create empty
# /etc/systemd/zram-generator.conf file.
[zram0]
zram-size = min(ram, 8192)

116
zram-generator.spec Normal file
View file

@ -0,0 +1,116 @@
%bcond vendor %{defined rhel}
Name: zram-generator
Version: 1.2.1
Release: %autorelease -b 5
Summary: Systemd unit generator for zram devices
SourceLicense: MIT
# Statically linked Rust dependencies:
# MIT
# MIT OR Apache-2.0
License: MIT AND (MIT OR Apache-2.0)
# LICENSE.dependencies contains a full license breakdown
URL: https://github.com/systemd/zram-generator
Source0: %{url}/archive/v%{version}/zram-generator-%{version}.tar.gz
Source1: zram-generator.conf
# generated using vendor.sh
Source2: zram-generator-%{version}-vendor.tar.xz
Source3: vendor.sh
# bump nix dev-dependency to v0.30
Patch: https://github.com/systemd/zram-generator/pull/238.patch
%if %{with vendor}
BuildRequires: rust-toolset
%else
BuildRequires: cargo-rpm-macros
%endif
BuildRequires: /usr/bin/make
BuildRequires: /usr/bin/ronn
BuildRequires: pkgconfig(systemd)
BuildRequires: systemd-rpm-macros
Recommends: %{_sbindir}/zramctl
%description
This is a systemd unit generator that enables swap on zram.
(With zram, there is no physical swap device. Part of the available RAM
is used to store compressed pages, essentially trading CPU cycles for memory.)
To activate, install the zram-generator-defaults subpackage.
%files
%license LICENSE
%license LICENSE.dependencies
%if %{with vendor}
%license cargo-vendor.txt
%endif
%doc README.md
%doc zram-generator.conf.example
%{_systemdgeneratordir}/zram-generator
%{_unitdir}/systemd-zram-setup@.service
%{_mandir}/man8/zram-generator.8*
%{_mandir}/man5/zram-generator.conf.5*
%package defaults
Summary: Default configuration for zram-generator
Requires: zram-generator = %{version}-%{release}
Obsoletes: zram < 0.4-2
BuildArch: noarch
%description defaults
%{summary}.
%files defaults
%{_prefix}/lib/systemd/zram-generator.conf
%prep
%if %{with vendor}
%autosetup -n zram-generator-%{version} -a2 -p1
%cargo_prep -v vendor
%else
%autosetup -n zram-generator-%{version} -p1
%cargo_prep
%endif
cp -a %{S:1} .
%if %{without vendor}
%generate_buildrequires
%cargo_generate_buildrequires -t
%endif
%build
export SYSTEMD_UTIL_DIR=%{_systemd_util_dir}
export LC_ALL=C.UTF-8
%cargo_build
%{cargo_license_summary}
%{cargo_license} > LICENSE.dependencies
%if %{with vendor}
%cargo_vendor_manifest
%endif
%make_build SYSTEMD_SYSTEM_UNIT_DIR=%{_unitdir} SYSTEMD_SYSTEM_GENERATOR_DIR=%{_systemdgeneratordir} systemd-service man
%install
export SYSTEMD_UTIL_DIR=%{_systemd_util_dir}
%make_install SYSTEMD_SYSTEM_UNIT_DIR=%{_unitdir} SYSTEMD_SYSTEM_GENERATOR_DIR=%{_systemdgeneratordir} NOBUILD=1
install -Dpm0644 -t %{buildroot}%{_prefix}/lib/systemd %{SOURCE1}
%check
export SYSTEMD_UTIL_DIR=%{_systemd_util_dir}
%cargo_test
%{buildroot}%{_systemdgeneratordir}/zram-generator --help
%{buildroot}%{_systemdgeneratordir}/zram-generator --help | grep -q %{_systemd_util_dir}/systemd-makefs
%changelog
%autochangelog