Bug 226510 - Merge Review: udev
Summary: Merge Review: udev
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Gwyn Ciesla
QA Contact: Fedora Package Reviews List
URL:
Whiteboard:
Depends On:
Blocks: F9MergeReviewTarget
TreeView+ depends on / blocked
 
Reported: 2007-01-31 21:12 UTC by Nobody's working on this, feel free to take it
Modified: 2013-01-13 13:06 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-04-08 12:59:22 UTC
Type: ---
Embargoed:
gwync: fedora-review+


Attachments (Terms of Use)
Mock buildlog. (3.65 KB, application/octet-stream)
2008-01-29 15:36 UTC, Gwyn Ciesla
no flags Details

Description Nobody's working on this, feel free to take it 2007-01-31 21:12:51 UTC
Fedora Merge Review: udev

http://cvs.fedora.redhat.com/viewcvs/devel/udev/
Initial Owner: harald

Comment 1 Gwyn Ciesla 2008-01-29 14:53:03 UTC
rpmlint on srpm:
udev.src: W: strange-permission start_udev 0755
A file that you listed to include in your package has strange
permissions. Usually, a file should have 0644 permissions.

Not a problem.

rpmlint on rpms:

udev.i386: E: script-without-shebang /lib/udev/rule_generator.functions
This text file has executable bits set or is located in a path dedicated
for executables, but lacks a shebang and cannot thus be executed.  If the file
is meant to be an executable script, add the shebang, otherwise remove the
executable bits or move the file elsewhere.

Should be fixed.

udev.i386: W: symlink-should-be-relative /usr/bin/udevtest /sbin/udevadm
Absolute symlinks are problematic eg. when working with chroot environments.

udev.i386: W: symlink-should-be-relative /usr/sbin/udevmonitor /sbin/udevadm
Absolute symlinks are problematic eg. when working with chroot environments.

udev.i386: W: symlink-should-be-relative /usr/bin/udevinfo /sbin/udevadm
Absolute symlinks are problematic eg. when working with chroot environments.

Not a problem.

udev.i386: W: non-conffile-in-etc /etc/modprobe.d/floppy-pnp
A non-executable file in your package is being installed in /etc, but is not
a configuration file. All non-executable files in /etc should be configuration
files. Mark the file as %config in the spec file.

udev.i386: W: conffile-without-noreplace-flag /etc/udev/makedev.d/50-udev.nodes
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag /etc/udev/rules.d/05-udev-early.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag /etc/udev/rules.d/40-alsa.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag /etc/udev/rules.d/40-redhat.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag
/etc/udev/rules.d/50-udev-default.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag /etc/udev/rules.d/60-cdrom_id.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag
/etc/udev/rules.d/60-persistent-input.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag
/etc/udev/rules.d/60-persistent-storage-tape.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag
/etc/udev/rules.d/60-persistent-storage.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag
/etc/udev/rules.d/61-persistent-storage-edd.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag
/etc/udev/rules.d/64-device-mapper.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag /etc/udev/rules.d/64-md-raid.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag
/etc/udev/rules.d/75-cd-aliases-generator.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag
/etc/udev/rules.d/75-persistent-net-generator.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag /etc/udev/rules.d/80-drivers.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag /etc/udev/rules.d/95-pam-console.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here


udev.i386: W: conffile-without-noreplace-flag /etc/udev/rules.d/95-udev-late.rules
A configuration file is stored in your package without the noreplace flag.
A way to resolve this is to put the following in your SPEC file:

%config(noreplace) /etc/your_config_file_here

These should be OK, provided there is a place to create persistent rules.


udev.i386: W: service-default-enabled /etc/rc.d/init.d/udev-post
The service is enabled by default after "chkconfig --add"; for security
reasons, most services should not be. Use "-" as the default runlevel in the
init script's "chkconfig:" line and/or remove the "Default-Start:" LSB keyword
to fix this if appropriate for this service.

Fine.

udev.i386: E: unknown-lsb-keyword # Requires: $local_fs
udev.i386: E: missing-mandatory-lsb-keyword Provides in /etc/rc.d/init.d/udev-post
The package contains an init script that does not contain one of the LSB
comment block convention keywords that are mandatory.

udev.i386: E: missing-mandatory-lsb-keyword Description in
/etc/rc.d/init.d/udev-post
The package contains an init script that does not contain one of the LSB
comment block convention keywords that are mandatory.

udev.i386: E: missing-mandatory-lsb-keyword Short-Description in
/etc/rc.d/init.d/udev-post
The package contains an init script that does not contain one of the LSB
comment block convention keywords that are mandatory.

Should be fixed.

udev.i386: E: no-status-entry /etc/rc.d/init.d/udev-post
In your init script (/etc/rc.d/init.d/your_file), you don't
have a 'status' entry, which is necessary for good functionality.

udev.i386: W: no-reload-entry /etc/rc.d/init.d/udev-post
In your init script (/etc/rc.d/init.d/your_file), you don't
have a 'reload' entry, which is necessary for good functionality.

Should be fixed.

udev.i386: E: subsys-not-used /etc/rc.d/init.d/udev-post
While your daemon is running, you have to put a lock file in
/var/lock/subsys/. To see an example, look at this directory on your
machine and examine the corresponding init scripts.

Should be fixed.

udev.i386: W: incoherent-init-script-name udev-post
The init script name should be the same as the package name in lower case,
or one with 'd' appended if it invokes a process by that name.

Probably not a problem.

Has a .pc file, must Requires: pkgconfig.

Other wise it looks good, no other blockers.

Comment 2 Gwyn Ciesla 2008-01-29 15:34:45 UTC
One problem, in mock build:
/usr/bin/ld: cannot find -lselinux

Already BRs libselinux-devel and libsepol-devel, not sure what the problem is,
will attach full build.log.

Comment 3 Gwyn Ciesla 2008-01-29 15:36:00 UTC
Created attachment 293293 [details]
Mock buildlog.

Comment 4 Gwyn Ciesla 2008-05-16 15:06:04 UTC
Any updates?

Comment 5 Gwyn Ciesla 2008-09-09 18:06:52 UTC
reviewed curret rawhide SRPM:

rpmlint on SRPM:

udev.src:328: E: files-attr-not-set
A file or a directory entry in a %files section does not have attributes set
which may result in security issues in the resulting binary package depending
on the system where the package is built.  Add default attributes using
%defattr before it in the %files section, or use per line %attr's.

udev.src:340: E: files-attr-not-set
A file or a directory entry in a %files section does not have attributes set
which may result in security issues in the resulting binary package depending
on the system where the package is built.  Add default attributes using
%defattr before it in the %files section, or use per line %attr's.

udev.src:344: E: files-attr-not-set
A file or a directory entry in a %files section does not have attributes set
which may result in security issues in the resulting binary package depending
on the system where the package is built.  Add default attributes using
%defattr before it in the %files section, or use per line %attr's.

udev.src: W: mixed-use-of-spaces-and-tabs (spaces: line 101, tab: line 136)
The specfile mixes use of spaces and tabs for indentation, which is a cosmetic
annoyance.  Use either spaces or tabs for indentation, not both.

on RPMS:

libudev0.i386: W: no-documentation
The package contains no documentation (README, doc, etc). You have to include
documentation files.

libudev-devel.i386: W: no-documentation
The package contains no documentation (README, doc, etc). You have to include
documentation files.

libudev-devel.i386: W: no-dependency-on libudev/libudev-libs/liblibudev
udev.i386: W: conffile-without-noreplace-flag /etc/modprobe.d/floppy-pnp
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: conffile-without-noreplace-flag /etc/udev/makedev.d/50-udev.nodes
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/40-alsa.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/40-alsa.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/40-redhat.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/40-redhat.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/50-udev-default.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/50-udev-default.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/60-cdrom_id.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/60-cdrom_id.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/60-persistent-input.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/60-persistent-input.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/60-persistent-storage-tape.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/60-persistent-storage-tape.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/60-persistent-storage.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/60-persistent-storage.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/60-persistent-v4l.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/60-persistent-v4l.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/61-persistent-storage-edd.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/61-persistent-storage-edd.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/64-device-mapper.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/64-device-mapper.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/64-md-raid.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/64-md-raid.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/75-cd-aliases-generator.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/75-cd-aliases-generator.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/75-persistent-net-generator.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/75-persistent-net-generator.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/79-fstab_import.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/79-fstab_import.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/80-drivers.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/80-drivers.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/95-pam-console.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/95-pam-console.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: non-etc-or-var-file-marked-as-conffile /lib/udev/rules.d/95-udev-late.rules
A file not in /etc or /var is marked as being a configuration file. Please put
your conf files in /etc or /var.

udev.i386: W: conffile-without-noreplace-flag /lib/udev/rules.d/95-udev-late.rules
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.i386: W: dangerous-command-in-%trigger rm
udev.i386: W: dangerous-command-in-%trigger rm
udev.i386: W: service-default-enabled /etc/rc.d/init.d/udev-post
The service is enabled by default after "chkconfig --add"; for security
reasons, most services should not be. Use "-" as the default runlevel in the
init script's "chkconfig:" line and/or remove the "Default-Start:" LSB keyword
to fix this if appropriate for this service.

udev.i386: W: service-default-enabled /etc/rc.d/init.d/udev-post
The service is enabled by default after "chkconfig --add"; for security
reasons, most services should not be. Use "-" as the default runlevel in the
init script's "chkconfig:" line and/or remove the "Default-Start:" LSB keyword
to fix this if appropriate for this service.

udev.i386: W: incoherent-init-script-name udev-post
The init script name should be the same as the package name in lower case, or
one with 'd' appended if it invokes a process by that name.



See the above issues as well.

Working on a new mock build. . .

Comment 6 Gwyn Ciesla 2008-09-09 18:19:27 UTC
Mock build/BRs OK.

Comment 7 Gwyn Ciesla 2008-12-04 19:33:03 UTC
Ping?

Comment 8 Harald Hoyer 2008-12-22 09:13:09 UTC
rpmlint with udev-135-3 of rawhide:

udev.x86_64: W: conffile-without-noreplace-flag /etc/modprobe.d/floppy-pnp
A configuration file is stored in your package without the noreplace flag. A
way to resolve this is to put the following in your SPEC file:
%config(noreplace) /etc/your_config_file_here

udev.x86_64: W: dangerous-command-in-%trigger rm
udev.x86_64: W: dangerous-command-in-%trigger rm
udev.x86_64: W: service-default-enabled /etc/rc.d/init.d/udev-post
The service is enabled by default after "chkconfig --add"; for security
reasons, most services should not be. Use "-" as the default runlevel in the
init script's "chkconfig:" line and/or remove the "Default-Start:" LSB keyword
to fix this if appropriate for this service.

udev.x86_64: W: service-default-enabled /etc/rc.d/init.d/udev-post
The service is enabled by default after "chkconfig --add"; for security
reasons, most services should not be. Use "-" as the default runlevel in the
init script's "chkconfig:" line and/or remove the "Default-Start:" LSB keyword
to fix this if appropriate for this service.

udev.x86_64: W: incoherent-init-script-name udev-post
The init script name should be the same as the package name in lower case, or
one with 'd' appended if it invokes a process by that name.

libudev-devel.x86_64: W: no-dependency-on libudev/libudev-libs/liblibudev
7 packages and 0 specfiles checked; 0 errors, 7 warnings.

Comment 9 Harald Hoyer 2008-12-22 09:14:31 UTC
(In reply to comment #8)
> rpmlint with udev-135-3 of rawhide:
> 
> udev.x86_64: W: conffile-without-noreplace-flag /etc/modprobe.d/floppy-pnp
> A configuration file is stored in your package without the noreplace flag. A
> way to resolve this is to put the following in your SPEC file:
> %config(noreplace) /etc/your_config_file_here

bogus

> 
> udev.x86_64: W: dangerous-command-in-%trigger rm
> udev.x86_64: W: dangerous-command-in-%trigger rm

bogus

> udev.x86_64: W: service-default-enabled /etc/rc.d/init.d/udev-post
> The service is enabled by default after "chkconfig --add"; for security
> reasons, most services should not be. Use "-" as the default runlevel in the
> init script's "chkconfig:" line and/or remove the "Default-Start:" LSB keyword
> to fix this if appropriate for this service.

bogus

> 
> udev.x86_64: W: service-default-enabled /etc/rc.d/init.d/udev-post
> The service is enabled by default after "chkconfig --add"; for security
> reasons, most services should not be. Use "-" as the default runlevel in the
> init script's "chkconfig:" line and/or remove the "Default-Start:" LSB keyword
> to fix this if appropriate for this service.

bogus

> 
> udev.x86_64: W: incoherent-init-script-name udev-post
> The init script name should be the same as the package name in lower case, or
> one with 'd' appended if it invokes a process by that name.

bogus

> 
> libudev-devel.x86_64: W: no-dependency-on libudev/libudev-libs/liblibudev
> 7 packages and 0 specfiles checked; 0 errors, 7 warnings.

bogus

Comment 10 Gwyn Ciesla 2008-12-29 15:29:40 UTC
Can you comment in the spec, or even here, on why these are bogus?

Comment 11 Harald Hoyer 2009-01-08 14:05:21 UTC
> rpmlint with udev-135-3 of rawhide:
> 
> udev.x86_64: W: conffile-without-noreplace-flag /etc/modprobe.d/floppy-pnp
> A configuration file is stored in your package without the noreplace flag. A
> way to resolve this is to put the following in your SPEC file:
> %config(noreplace) /etc/your_config_file_here

this file contains an alias which is missing in the kernel

> 
> udev.x86_64: W: dangerous-command-in-%trigger rm
> udev.x86_64: W: dangerous-command-in-%trigger rm

rm is really needed

> udev.x86_64: W: service-default-enabled /etc/rc.d/init.d/udev-post
> The service is enabled by default after "chkconfig --add"; for security
> reasons, most services should not be. Use "-" as the default runlevel in the
> init script's "chkconfig:" line and/or remove the "Default-Start:" LSB keyword
> to fix this if appropriate for this service.

this service is _always_ needed

> 
> udev.x86_64: W: service-default-enabled /etc/rc.d/init.d/udev-post
> The service is enabled by default after "chkconfig --add"; for security
> reasons, most services should not be. Use "-" as the default runlevel in the
> init script's "chkconfig:" line and/or remove the "Default-Start:" LSB keyword
> to fix this if appropriate for this service.

this service is _always_ needed

> 
> udev.x86_64: W: incoherent-init-script-name udev-post
> The init script name should be the same as the package name in lower case, or
> one with 'd' appended if it invokes a process by that name.

ok, I screwed up, when I named the service

> 
> libudev-devel.x86_64: W: no-dependency-on libudev/libudev-libs/liblibudev
> 7 packages and 0 specfiles checked; 0 errors, 7 warnings.

the devel package depends on libudev0

Comment 12 Gwyn Ciesla 2009-01-08 14:12:48 UTC
Ok, I'd put comments on these in the spec, with the exception of service-enabled-default, for which you should file a bug against rpmlint for an exception.

Comment 13 Gwyn Ciesla 2009-03-31 15:28:52 UTC
Ping?

Comment 14 Michal Nowak 2009-04-09 14:01:46 UTC
* udev.src: W: strange-permission start_udev 0755

Not that common to ship SourceX files with exec perms, but installed via 0755, so, OK.

* udev.src: W: mixed-use-of-spaces-and-tabs (spaces: line 101, tab: line 104)

Easy stuff.

* udev.x86_64: E: binary-or-shlib-defines-rpath /lib/udev/vol_id ['/lib64']

Rpath is blocker in review, even such common path, fix it, please. https://fedoraproject.org/wiki/Packaging:Guidelines#Beware_of_Rpath

* udev.x86_64: W: conffile-without-noreplace-flag /etc/modprobe.d/floppy-pnp.conf

Sure, this is in /etc but not expected to be changed by user but in spec file is expected to note, why you don't have %config(noreplace), see https://fedoraproject.org/wiki/Packaging:Guidelines#Configuration_files
That's what Jon asked for.

* udev.x86_64: W: dangerous-command-in-%trigger rm
* udev.x86_64: W: dangerous-command-in-%trigger rm

OK.

* udev.x86_64: W: service-default-enabled /etc/rc.d/init.d/udev-post
* udev.x86_64: W: service-default-enabled /etc/rc.d/init.d/udev-post

Clear.

* udev.x86_64: W: missing-lsb-keyword Required-Stop in /etc/rc.d/init.d/udev-post

Easy to fix, but somewhat useless.

* udev.x86_64: W: incoherent-init-script-name udev-post

Will you fix it to "udev", or what was the resolution?

* libudev-devel.x86_64: W: no-dependency-on libudev/libudev-libs/liblibudev

Bad guess, rpmlint. OK.

Comment 15 Harald Hoyer 2009-07-24 08:23:04 UTC
next round, rawhide udev-145-2:

$ rpmlint udev.spec udev-145-2.fc12.src.rpm x86_64/*145-2*
udev.spec:315: E: hardcoded-library-path in %{_prefix}/lib/ConsoleKit/run-session.d/udev-acl.ck

ConsoleKit lives there
$ rpm -qf /usr/lib/ConsoleKit
ConsoleKit-0.3.0-8.fc11.x86_64


udev.src: W: strange-permission start_udev 0755

should be ok

udev.src:315: E: hardcoded-library-path in %{_prefix}/lib/ConsoleKit/run-session.d/udev-acl.ck

see above

udev.x86_64: W: only-non-binary-in-usr-lib

well, it's a symlink

$ rpm -qplv x86_64/udev-145-2.fc12.x86_64.rpm |fgrep usr/lib
lrw-r--r--    1 root    root                       18 Jul 24 10:18 /usr/lib/ConsoleKit/run-session.d/udev-acl.ck -> /lib/udev/udev-acl


udev.x86_64: W: dangerous-command-in-%trigger rm
udev.x86_64: W: dangerous-command-in-%trigger rm

OK

udev.x86_64: W: service-default-enabled /etc/rc.d/init.d/udev-post
udev.x86_64: W: service-default-enabled /etc/rc.d/init.d/udev-post

It has to be.

udev.x86_64: W: incoherent-init-script-name udev-post ('udev', 'udevd')
7 packages and 1 specfiles checked; 2 errors, 7 warnings.

I will not change it. It does not start udev or udevd. It's the same name as in other distributions.

Comment 16 Gwyn Ciesla 2009-07-27 19:24:45 UTC
In attempting to take a look at this, I ran across:

checking for USBUTILS... configure: error: Package requirements (usbutils >= 0.82) were not met:


Looks like the BuildRequires should be versioned.

Comment 17 Gwyn Ciesla 2010-04-29 20:10:50 UTC
Ping?

Comment 18 Gwyn Ciesla 2011-03-31 16:40:46 UTC
Ping?

Comment 19 Harald Hoyer 2011-03-31 16:52:15 UTC
(In reply to comment #16)
> In attempting to take a look at this, I ran across:
> 
> checking for USBUTILS... configure: error: Package requirements (usbutils >=
> 0.82) were not met:
> 
> 
> Looks like the BuildRequires should be versioned.

done...

$ grep usbutils udev.spec
BuildRequires: usbutils >= 0.82

Comment 20 Gwyn Ciesla 2011-03-31 17:20:21 UTC
Cool, thanks!

Starting over on current rawhide SRPM:

udev.src:182: W: mixed-use-of-spaces-and-tabs (spaces: line 129, tab: line 182)
The specfile mixes use of spaces and tabs for indentation, which is a cosmetic
annoyance.  Use either spaces or tabs for indentation, not both.

udev.src: W: invalid-url Source0: ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/udev-167.tar.bz2 <urlopen error ftp error: [Errno 111] Connection refused>
The value should be a valid, public HTTP, HTTPS, or FTP URL.

These are the only things not addressed above.

These are new, and I'm imagining are ok:

udev.i686: W: devel-file-in-non-devel-package /usr/share/pkgconfig/udev.pc
A development file (usually source code) is located in a non-devel package. If
you want to include source code in your package, be sure to create a
development package.

udev.i686: W: cross-directory-hard-link /etc/udev/makedev.d /var/lib/udev
File is hard linked across directories.  This can cause problems in
installations where the directories are located on different devices.

udev.i686: W: no-manual-page-for-binary start_udev
Each executable in standard binary directories should have a man page.


Otherwise, it looks good.

Comment 21 Harald Hoyer 2011-04-01 07:38:50 UTC
(In reply to comment #20)
> Cool, thanks!
> 
> Starting over on current rawhide SRPM:
> 
> udev.src:182: W: mixed-use-of-spaces-and-tabs (spaces: line 129, tab: line 182)
> The specfile mixes use of spaces and tabs for indentation, which is a cosmetic
> annoyance.  Use either spaces or tabs for indentation, not both.

right.. will fix!

> 
> udev.src: W: invalid-url Source0:
> ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/udev-167.tar.bz2 <urlopen
> error ftp error: [Errno 111] Connection refused>
> The value should be a valid, public HTTP, HTTPS, or FTP URL.

huh? loads fine!

$ wget ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/udev-167.tar.bz2 
--2011-04-01 09:39:27--  ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/udev-167.tar.bz2
           => `udev-167.tar.bz2.1'
Resolving ftp.kernel.org... 130.239.17.4, 199.6.1.164
Connecting to ftp.kernel.org|130.239.17.4|:21... connected.
Logging in as anonymous ... Logged in!
==> SYST ... done.    ==> PWD ... done.
==> TYPE I ... done.  ==> CWD (1) /pub/linux/utils/kernel/hotplug ... done.
==> SIZE udev-167.tar.bz2 ... 594474
==> PASV ... done.    ==> RETR udev-167.tar.bz2 ... done.
Length: 594474 (581K) (unauthoritative)
....

> 
> These are the only things not addressed above.
> 
> These are new, and I'm imagining are ok:
> 
> udev.i686: W: devel-file-in-non-devel-package /usr/share/pkgconfig/udev.pc
> A development file (usually source code) is located in a non-devel package. If
> you want to include source code in your package, be sure to create a
> development package.

yes, that's needed

> 
> udev.i686: W: cross-directory-hard-link /etc/udev/makedev.d /var/lib/udev
> File is hard linked across directories.  This can cause problems in
> installations where the directories are located on different devices.

huh?

# Deprecated, but keep the ownership
%ghost %dir /var/lib/udev
%ghost %dir %{_sysconfdir}/udev/makedev.d/

> 
> udev.i686: W: no-manual-page-for-binary start_udev
> Each executable in standard binary directories should have a man page.

that's ok, nobody should use it

> 
> 
> Otherwise, it looks good.

Comment 22 Gwyn Ciesla 2011-04-04 18:57:12 UTC
Ok, once the space/tab thing is fixed, I'm good.  The rest is justified, I think, and the source URL was apparently a fluke, because it works for me now and the md5sum matches.

Comment 23 Harald Hoyer 2011-04-06 08:53:47 UTC
(In reply to comment #22)
> Ok, once the space/tab thing is fixed, I'm good.  The rest is justified, I
> think, and the source URL was apparently a fluke, because it works for me now
> and the md5sum matches.

already "untabify"ied in git master.

Comment 24 Gwyn Ciesla 2011-04-06 12:55:12 UTC
Did you push the changes?

udev.spec:182: W: mixed-use-of-spaces-and-tabs (spaces: line 129, tab: line 182)
The specfile mixes use of spaces and tabs for indentation, which is a cosmetic
annoyance.  Use either spaces or tabs for indentation, not both.


[limb@bamboo udev]$ git log
commit 8df68695ff06d05f52b7187c24fa27969a5036c5
Merge: 0b0304c 58624e4
Author: Harald Hoyer <harald>
Date:   Thu Mar 31 18:32:08 2011 +0200

    Merge branch 'f15/master'

commit 58624e426ed9b5d2b26f4a428cdc5cb8e4e6d4bf
Author: Harald Hoyer <harald>
Date:   Thu Mar 31 18:30:08 2011 +0200

    udev.spec: removed gtk-doc

commit cbf7ac132cb5c8c9c7169c763df6714c5ad45b17
Author: Harald Hoyer <harald>
Date:   Wed Mar 30 17:36:11 2011 +0200

    removed libxslt buildreq and touch man pages, to prevent rebuild

commit 8cf0c7defa5e033369d66ac319ed380c3fe73882
Author: Harald Hoyer <harald>
Date:   Thu Mar 31 17:58:51 2011 +0200

    - fixed udev-trigger.service

commit 0b0304cfe18782b99aaa0814f9610d7ec91fcc2b
Author: Harald Hoyer <harald>
Date:   Thu Mar 31 17:58:51 2011 +0200

    - fixed udev-trigger.service

Comment 25 Harald Hoyer 2011-04-08 08:05:01 UTC
(In reply to comment #24)
> Did you push the changes?
> 

oops .. done :)

Comment 26 Gwyn Ciesla 2011-04-08 12:59:22 UTC
Ah, there we are.  Thanks so much!

APPROVED.


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