Skip to content

WIP: spec file for fedora rpm#810

Draft
deltragon wants to merge 3 commits intoslgobinath:masterfrom
deltragon:rpm
Draft

WIP: spec file for fedora rpm#810
deltragon wants to merge 3 commits intoslgobinath:masterfrom
deltragon:rpm

Conversation

@deltragon
Copy link
Collaborator

@deltragon deltragon commented Nov 22, 2025

Description

Add a spec file for fedora.
This is not ready to merge yet. I'm still struggling to have the RPM build correctly, and there are also failing lints.
Builds are being tested on https://copr.fedorainfracloud.org/coprs/deltragon/safeeyes/.

taken from https://copr.fedorainfracloud.org/coprs/praiskup/safeeyes/

Co-authored-by: Pavel Raiskup <praiskup@redhat.com>
@deltragon deltragon changed the title WIP: rpm file for fedora WIP: spec file for fedora rpm Nov 22, 2025
@deltragon deltragon marked this pull request as draft November 22, 2025 14:54
Comment on lines +19 to +34
# for notification plugin
BuildRequires: libnotify
Requires: libnotify

# for audiblealert plugin
Requires: (ffmpeg-free or pipewire-utils)

# for smartpause plugin (optional in pyproject.toml)
BuildRequires: python3-pywayland
Requires: python3-pywayland

# xprintidle does not exist on fedora
#Suggests: xprintidle

# for healthstats plugin (optional in pyproject.toml)
BuildRequires: python3-croniter
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All of these extra requires appear to do nothing at runtime.
Running rpm --query --package rpm/noarch/python3-safeeyes-3.2.0-1.fc44.noarch.rpm --requires gives:

/usr/bin/python3
python(abi) = 3.13
python3.13dist(babel)
python3.13dist(packaging)
python3.13dist(pygobject)
python3.13dist(python-xlib)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsZstd) <= 5.4.18-1

These are only the dependencies from %generate_buildrequires, but none of the manually added ones here.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did not understand. Did you mean, despite adding dependencies in the spec file, they are actually not dependencies of RPM?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, that's what I meant - and I also don't understand why it doesn't work.

@archisman-panigrahi
Copy link
Collaborator

For quick testing, we can use a GitHub action like https://github.com/archisman-panigrahi/typhoon/blob/master/.github/workflows/package.yml#L41

@archisman-panigrahi
Copy link
Collaborator

Can we use this spec file from OpenSUSE? They also use RPM.

https://build.opensuse.org/projects/openSUSE:Factory/packages/safeeyes/files/safeeyes.spec?expand=1

@deltragon
Copy link
Collaborator Author

Can we use this spec file from OpenSUSE? They also use RPM.

I'm honestly unsure - the fedora packaging guidelines are pretty extensive, and tell you to specifically use their macros for things. I can try building with this, and if it builds then possibly try submitting the OpenSUSE spec to fedora as-is - not sure it's gonna be accepted, though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants