blob: 30f1fe76d0d1dc653919e2874df4739f14d1256c [file] [log] [blame]
Patrick Williamsc124f4f2015-09-15 14:41:29 -05001SUMMARY = "Extra machine specific configuration files"
Brad Bishopd7bf8c12018-02-25 22:55:05 -05002HOMEPAGE = "https://wiki.gentoo.org/wiki/Eudev"
Andrew Geisslerd5838332022-05-27 11:33:10 -05003DESCRIPTION = "Extra machine specific configuration files for udev, specifically information on devices to ignore."
Patrick Williamsc124f4f2015-09-15 14:41:29 -05004LICENSE = "MIT"
Brad Bishop6e60e8b2018-02-01 10:27:11 -05005LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
Patrick Williamsc124f4f2015-09-15 14:41:29 -05006
7SRC_URI = " \
8 file://automount.rules \
9 file://mount.sh \
Andrew Geisslerd5838332022-05-27 11:33:10 -050010 file://mount.ignorelist \
Patrick Williamsc124f4f2015-09-15 14:41:29 -050011 file://autonet.rules \
12 file://network.sh \
13 file://localextra.rules \
14"
15
16S = "${WORKDIR}"
17
Andrew Geissler78b72792022-06-14 06:47:25 -050018MOUNT_BASE = "/run/media"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050019
20do_install() {
21 install -d ${D}${sysconfdir}/udev/rules.d
22
23 install -m 0644 ${WORKDIR}/automount.rules ${D}${sysconfdir}/udev/rules.d/automount.rules
24 install -m 0644 ${WORKDIR}/autonet.rules ${D}${sysconfdir}/udev/rules.d/autonet.rules
25 install -m 0644 ${WORKDIR}/localextra.rules ${D}${sysconfdir}/udev/rules.d/localextra.rules
26
Andrew Geisslerd5838332022-05-27 11:33:10 -050027 install -d ${D}${sysconfdir}/udev/mount.ignorelist.d
28 install -m 0644 ${WORKDIR}/mount.ignorelist ${D}${sysconfdir}/udev/
Patrick Williamsc124f4f2015-09-15 14:41:29 -050029
30 install -d ${D}${sysconfdir}/udev/scripts/
31
32 install -m 0755 ${WORKDIR}/mount.sh ${D}${sysconfdir}/udev/scripts/mount.sh
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080033 sed -i 's|@systemd_unitdir@|${systemd_unitdir}|g' ${D}${sysconfdir}/udev/scripts/mount.sh
34 sed -i 's|@base_sbindir@|${base_sbindir}|g' ${D}${sysconfdir}/udev/scripts/mount.sh
Andrew Geissler78b72792022-06-14 06:47:25 -050035 sed -i 's|@MOUNT_BASE@|${MOUNT_BASE}|g' ${D}${sysconfdir}/udev/scripts/mount.sh
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080036
Patrick Williamsc124f4f2015-09-15 14:41:29 -050037 install -m 0755 ${WORKDIR}/network.sh ${D}${sysconfdir}/udev/scripts
38}
39
Andrew Geissler615f2f12022-07-15 14:00:58 -050040pkg_postinst:${PN} () {
41 if [ -e $D${systemd_unitdir}/system/systemd-udevd.service ]; then
42 sed -i "/\[Service\]/aMountFlags=shared" $D${systemd_unitdir}/system/systemd-udevd.service
43 fi
44}
45
46pkg_postrm:${PN} () {
47 if [ -e $D${systemd_unitdir}/system/systemd-udevd.service ]; then
48 sed -i "/MountFlags=shared/d" $D${systemd_unitdir}/system/systemd-udevd.service
49 fi
50}
51
52RDEPENDS:${PN} = "udev util-linux-blkid ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'util-linux-lsblk', '', d)}"
Andrew Geisslerd5838332022-05-27 11:33:10 -050053CONFFILES:${PN} = "${sysconfdir}/udev/mount.ignorelist"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050054
55# to replace udev-extra-rules from meta-oe
Patrick Williams213cb262021-08-07 19:21:33 -050056RPROVIDES:${PN} = "udev-extra-rules"
57RREPLACES:${PN} = "udev-extra-rules"
58RCONFLICTS:${PN} = "udev-extra-rules"