Bug 1807224 - Review Request: xsecurelock - X11 screen lock utility with security in mind
Summary: Review Request: xsecurelock - X11 screen lock utility with security in mind
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Zbigniew Jędrzejewski-Szmek
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-02-25 20:51 UTC by Sam P
Modified: 2021-07-18 14:34 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-07-18 14:34:46 UTC
Type: ---
Embargoed:
zbyszek: fedora-review+


Attachments (Terms of Use)
screenshot of https://opensource.google/projects/xsecurelock (28.21 KB, image/png)
2020-03-10 07:12 UTC, Zbigniew Jędrzejewski-Szmek
no flags Details

Description Sam P 2020-02-25 20:51:31 UTC
Spec URL: https://download.copr.fedorainfracloud.org/results/survient/xsecurelock/fedora-rawhide-x86_64/01252843-xsecurelock/xsecurelock.spec
SRPM URL: https://download.copr.fedorainfracloud.org/results/survient/xsecurelock/fedora-rawhide-x86_64/01252843-xsecurelock/xsecurelock-1.7.0-1.fc33.src.rpm
Description: XSecureLock is an X11 screen lock utility designed with the primary goal of security.
Fedora Account System Username: survient

Comment 1 Zbigniew Jędrzejewski-Szmek 2020-03-06 14:41:57 UTC
Typo in bug title?

BuildRequires:  gcc libX11-devel libXmu-devel libXcomposite-devel pam-devel pamtester libbsd-devel fontconfig-devel libXrandr-devel httpd-tools pandoc doxygen
→ one pre line please, this is really hard to read.

make %{?_smp_flags} → %make_build

%license CONTRIBUTING → %doc CONTRIBUTING. One per line here too please.
Also, don't repeat the same file in %doc and %license.

Google now has its own TLD? Wow.
https://opensource.google/projects/xsecurelock → no results found?

Comment 2 Sam P 2020-03-09 22:50:52 UTC
Spec URL: https://copr-be.cloud.fedoraproject.org/results/survient/xsecurelock/fedora-rawhide-x86_64/01299154-xsecurelock/xsecurelock.spec
SRPM URL: https://copr-be.cloud.fedoraproject.org/results/survient/xsecurelock/fedora-rawhide-x86_64/01299154-xsecurelock/xsecurelock-1.7.0-1.fc33.src.rpm

Thank you Zbigniew. I've corrected almost all of the items you outlined except I'm having trouble with repeating the same file in %doc and %license, specifically the LICENSE file itself. When I remove:

%doc LICENSE

from my spec file I get the following error:

Provides: xsecurelock = 1.7.0-1.fc31 xsecurelock(x86-64) = 1.7.0-1.fc31
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: /usr/bin/sh libX11.so.6()(64bit) libXcomposite.so.1()(64bit) libXext.so.6()(64bit) libXfixes.so.3()(64bit) libXmuu.so.1()(64bit) libXrandr.so.2()(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.15)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.25)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.4)(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.2.5)(64bit) libm.so.6(GLIBC_2.29)(64bit) libpam.so.0()(64bit) libpam.so.0(LIBPAM_1.0)(64bit) rtld(GNU_HASH)
Processing files: xsecurelock-debugsource-1.7.0-1.fc31.x86_64
Provides: xsecurelock-debugsource = 1.7.0-1.fc31 xsecurelock-debugsource(x86-64) = 1.7.0-1.fc31
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Processing files: xsecurelock-debuginfo-1.7.0-1.fc31.x86_64
Provides: debuginfo(build-id) = 5f5e735d74e645e05110092c1286278060f9fa8c debuginfo(build-id) = 62f6b46f8b836558d85c01ad1771c1556204f849 debuginfo(build-id) = 82184a458189f5e727be1815b691e743075d4117 debuginfo(build-id) = 9375a666b0fb5b5d229e75a13cae114096a64d08 debuginfo(build-id) = 9c0daf8e8593bbaf2a812a8cf08d8dc47e58bf7c debuginfo(build-id) = c50911ffaee8d3a9f5f22ef5f371a0df72fe1ecf debuginfo(build-id) = cde1278cec731a2ebdcbbfb180dd740ebe04c71e xsecurelock-debuginfo = 1.7.0-1.fc31 xsecurelock-debuginfo(x86-64) = 1.7.0-1.fc31
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Recommends: xsecurelock-debugsource(x86-64) = 1.7.0-1.fc31
Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/xsecurelock-1.7.0-1.fc31.x86_64
error: Installed (but unpackaged) file(s) found:
   /usr/share/doc/xsecurelock/LICENSE


RPM build errors:
    Installed (but unpackaged) file(s) found:
   /usr/share/doc/xsecurelock/LICENSE
Finish: rpmbuild xsecurelock-1.7.0-1.fc31.src.rpm
Finish: build phase for xsecurelock-1.7.0-1.fc31.src.rpm
ERROR: Exception(./xsecurelock-1.7.0-1.fc31.src.rpm) Config(fedora-31-x86_64) 0 minutes 33 seconds
INFO: Results and/or logs in: ./
INFO: Cleaning up build root ('cleanup_on_failure=True')
Start: clean chroot
Finish: clean chroot
ERROR: Command failed: 
 # /usr/bin/systemd-nspawn -q -M cca504938969409e9708389a4ec73f78 -D /var/lib/mock/fedora-31-x86_64/root -a --capability=cap_ipc_lock --bind=/tmp/mock-resolv.tuas78fo:/etc/resolv.conf --setenv=TERM=vt100 --setenv=SHELL=/bin/bash --setenv=HOME=/builddir --setenv=HOSTNAME=mock --setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin --setenv=PROMPT_COMMAND=printf "\033]0;<mock-chroot>\007" --setenv=PS1=<mock-chroot> \s-\v\$  --setenv=LANG=en_US.utf8 -u mockbuild bash --login -c /usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/originals/xsecurelock.spec

It does appear to be a new TLD, it resolves against the caching nameserver I'm using. I can switch it to the github page if needed. Appreciate the guidance and assistance.

Comment 3 Zbigniew Jędrzejewski-Szmek 2020-03-10 07:11:47 UTC
The file needs to be removed at the end of %install, or its there installation prevented,
or %excluded, whatever is easier. I'd suggest adding this

%files
...
%exclude %{_pkgdocdir}/LICENSE

or

%install
...
rm %{buildroot}%{_pkgdocdir}/LICENSE


> It does appear to be a new TLD, it resolves against the caching nameserver I'm using. I can switch it to the github page if needed. Appreciate the guidance and assistance.

Yes, the domain resolves, and the page loads, but I get an empty page.
I'll attach a screenshot of what I see.

Comment 4 Zbigniew Jędrzejewski-Szmek 2020-03-10 07:12:43 UTC
Created attachment 1668822 [details]
screenshot of https://opensource.google/projects/xsecurelock

Comment 5 Sam P 2020-03-10 16:27:50 UTC
Spec URL: https://copr-be.cloud.fedoraproject.org/results/survient/xsecurelock/fedora-rawhide-x86_64/01299702-xsecurelock/xsecurelock.spec
SRPM URL: https://copr-be.cloud.fedoraproject.org/results/survient/xsecurelock/fedora-rawhide-x86_64/01299702-xsecurelock/xsecurelock-1.7.0-1.fc33.src.rpm

Thanks. I've gone ahead and added a line to remove the file after the install section. For now I've also updated the URL of the spec file to point to the github project page instead as based on feedback it feels more appropriate. Appreciate the assistance.

Comment 6 Zbigniew Jędrzejewski-Szmek 2020-03-11 07:08:21 UTC
xsecurelock.x86_64: E: description-line-too-long C XSecureLock is an X11 screen lock utility designed with the primary goal of securi
ty.
→ please wrap.

xsecurelock.x86_64: W: no-version-in-last-changelog
→ please fix when importing.

+ package name is OK
+ latest version
+ license is acceptable for Fedora (ASL 2.0)
+ license is specified correctly
+ builds and installs OK
+ P/R/BR look OK
+ rpmlint finds some minor issues (listed above), fedora-review is happy

According to the Guidelines, BR using pkgconfig() virtual Provides are preferred:
BuildRequires: libX11-devel → pkgconfig(x11)
BuildRequires: libXmu-devel → pkgconfig(xmu)
BuildRequires: libXrandr-devel → pkgconfig(xrandr)
BuildRequires: libXcomposite-devel → pkgconfig(xcomposite)
BuildRequires: libbsd-devel → pkgconfig(libbsd)
BuildRequires: fontconfig-devel → pkgconfig(fontconfig)
[see https://docs.fedoraproject.org/en-US/packaging-guidelines/PkgConfigBuildRequires/#_buildrequires_pkgconfigfoo_vs_foo_devel].

I did NOT look at the functionality or security aspects of the package at all.
Sorry, I don't run X anymore and this would be too much work.

Package is APPROVED.

Comment 7 Gwyn Ciesla 2020-04-01 18:01:33 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/xsecurelock

Comment 8 Mattia Verga 2021-07-18 14:34:46 UTC
Package is in repos


Note You need to log in before you can comment on or make changes to this bug.