udev-extraconf_1.1.bb 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. SUMMARY = "Extra machine specific configuration files"
  2. HOMEPAGE = "https://wiki.gentoo.org/wiki/Eudev"
  3. DESCRIPTION = "Extra machine specific configuration files for udev, specifically information on devices to ignore."
  4. LICENSE = "MIT"
  5. LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
  6. SRC_URI = " \
  7. file://automount.rules \
  8. file://mount.sh \
  9. file://mount.ignorelist \
  10. file://autonet.rules \
  11. file://network.sh \
  12. file://localextra.rules \
  13. "
  14. S = "${UNPACKDIR}"
  15. MOUNT_BASE = "/run/media"
  16. MOUNT_GROUP ?= "disk"
  17. do_install() {
  18. install -d ${D}${sysconfdir}/udev/rules.d
  19. install -m 0644 ${S}/automount.rules ${D}${sysconfdir}/udev/rules.d/automount.rules
  20. install -m 0644 ${S}/autonet.rules ${D}${sysconfdir}/udev/rules.d/autonet.rules
  21. install -m 0644 ${S}/localextra.rules ${D}${sysconfdir}/udev/rules.d/localextra.rules
  22. install -d ${D}${sysconfdir}/udev/mount.ignorelist.d
  23. install -m 0644 ${S}/mount.ignorelist ${D}${sysconfdir}/udev/
  24. install -d ${D}${sysconfdir}/udev/scripts/
  25. install -m 0755 ${S}/mount.sh ${D}${sysconfdir}/udev/scripts/mount.sh
  26. sed -e 's|@systemd_unitdir@|${systemd_unitdir}|g' \
  27. -e 's|@base_sbindir@|${base_sbindir}|g' \
  28. -e 's|@MOUNT_BASE@|${MOUNT_BASE}|g' \
  29. -e 's|@MOUNT_GROUP@|${MOUNT_GROUP}|g' \
  30. -i ${D}${sysconfdir}/udev/scripts/mount.sh
  31. install -m 0755 ${S}/network.sh ${D}${sysconfdir}/udev/scripts
  32. }
  33. pkg_postinst:${PN} () {
  34. if [ -e $D${systemd_unitdir}/system/systemd-udevd.service ]; then
  35. sed -i "/\[Service\]/aMountFlags=shared" $D${systemd_unitdir}/system/systemd-udevd.service
  36. fi
  37. }
  38. pkg_postrm:${PN} () {
  39. if [ -e $D${systemd_unitdir}/system/systemd-udevd.service ]; then
  40. sed -i "/MountFlags=shared/d" $D${systemd_unitdir}/system/systemd-udevd.service
  41. fi
  42. }
  43. RDEPENDS:${PN} = "udev util-linux-blkid ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'util-linux-lsblk', '', d)}"
  44. CONFFILES:${PN} = "${sysconfdir}/udev/mount.ignorelist"
  45. # to replace udev-extra-rules from meta-oe
  46. RPROVIDES:${PN} = "udev-extra-rules"
  47. RREPLACES:${PN} = "udev-extra-rules"
  48. RCONFLICTS:${PN} = "udev-extra-rules"