https://bugzilla.redhat.com/show_bug.cgi?id=2489821



--- Comment #3 from Neal Gompa <[email protected]> ---
Initial spec review:

> Version:        1
> Release:        0.11698132.f7f9d2d%{?dist}

This should follow the snapshot-in-version format.

Cf.
https://docs.fedoraproject.org/en-US/packaging-guidelines/Versioning/#_complex_versioning

It should be something like: "Version: 0.1~git11698132.f7f9d2d" with "Release:
1%{?dist}". Though, ideally the date and hash are macroized so they can be
reused in later parts.

> Obsoletes:      testcow

This package doesn't exist in Fedora, so this line must be removed.

> Source0:        cow-1.0.tar.gz

This should use a proper SourceURL.

e.g. "%{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz"

Cf.
https://docs.fedoraproject.org/en-US/packaging-guidelines/SourceURL/#_commit_revision

> BuildRequires: cairo
> BuildRequires: libbsd
> BuildRequires: libwayland-client
> BuildRequires: libxkbcommon
> BuildRequires: pango

None of these need to be specified, since they are pulled in as dependencies
already.

Some of these are unused:

> BuildRequires: libevdev-devel
> BuildRequires: libinput-devel
> BuildRequires: wlroots-devel
> BuildRequires: zig

These are not requested in an ideal way in the spec:

> BuildRequires: libbsd-devel
> BuildRequires: libxkbcommon-devel
> BuildRequires: pango-devel
> BuildRequires: scdoc
> BuildRequires: wayland-devel
> BuildRequires: wayland-protocols-devel

It seems Meson requests these all via pkgconfig, so it should use pkgconfig()
names here:

BuildRequires: pkgconfig(cairo)
BuildRequires: pkgconfig(libbsd)
BuildRequires: pkgconfig(xkbcommon)
BuildRequires: pkgconfig(pangocairo)
BuildRequires: pkgconfig(scdoc)
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-protocols) >= 1.41

Also, there seem to be some missing dependencies:

BuildRequires: pkgconfig(libevent)
BuildRequires: bison >= 3.0
BuildRequires: flex >= 2.6

> %prep
> %setup -n cow-1.0
> %patch -P0 -p1

This can be simplified to "%autosetup -C -p1"

> %build
> export CFLAGS="%{optflags} -Wno-error=format-security"
> %meson -Detcprefix=/
> %meson_build

This should be split into two phases:

%conf
export CFLAGS="%{build_cflags} -Wno-error=format-security"
%meson -Detcprefix=/

%build
%meson_build

> %{_sysconfdir}/cow/cow.conf

This should be declared properly:

%dir %{_sysconfdir}/cow
%config(noreplace) %{_sysconfdir}/cow/cow.conf

> %{_mandir}/man1/cow.1.gz
> %{_mandir}/man1/cowbar.1.gz
> %{_mandir}/man1/cowident.1.gz
> %{_mandir}/man1/cowpager.1.gz
> %{_mandir}/man1/moocow.1.gz
> %{_mandir}/man1/cowrearrange.1.gz

The ".gz" extension should be unspecified as "*".

Cf. https://docs.fedoraproject.org/en-US/packaging-guidelines/#_manpages


-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component
https://bugzilla.redhat.com/show_bug.cgi?id=2489821

Report this comment as SPAM: 
https://bugzilla.redhat.com/enter_bug.cgi?product=Bugzilla&format=report-spam&short_desc=Report%20of%20Bug%202489821%23c3

-- 
_______________________________________________
package-review mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam, report it: 
https://forge.fedoraproject.org/infra/tickets/issues/new

Reply via email to