diff options
| author | Chen Qi <Qi.Chen@windriver.com> | 2024-07-11 00:56:33 -0700 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2024-07-13 23:28:30 +0100 |
| commit | 74cd617cbb093a2948413213942bd664fb83d83f (patch) | |
| tree | e49b29c02fb3d0e633f65b6452fef312d5d0c057 /meta/recipes-core/systemd/systemd_255.6.bb | |
| parent | 0dfd37f2408cbdb32de5553e30b96efee5798a3b (diff) | |
| download | poky-74cd617cbb093a2948413213942bd664fb83d83f.tar.gz | |
systemd: upgrade from 255.6 to 256
The 'cgroupv2' PACKAGECONFIG is dropped as systemd now only supports
cgroupv2.
The 'kmod' PACKAGECONFIG is now added 'libkmod' as a runtime dependency.
This is because systemd 256 uses dlopen to make use of libkmod, and there's
no way for our library detection codes to know this and add such dependency
automatically. So we add it explicitly.
mime is now inherited because ${datadir}/mime/packages/io.systemd.xml
is a mime type file.
For musl specific patches, most are refreshed. One old patch is dropped,
and four new ones are added.
Newly added:
build-path.c: avoid boot time segfault for musl
adjust header inclusion order to avoid redeclaration
undef stdin for references using stdin as a struct member
include signal.h to avoid the 'undeclared' error
Dropped:
src/basic/missing.h: check for missing strndupa
(drop reason: systemd does not use strndupa any more)
(From OE-Core rev: 89b75b46371d5e9172cb496b461824d8551a2af5)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/systemd/systemd_255.6.bb')
| -rw-r--r-- | meta/recipes-core/systemd/systemd_255.6.bb | 907 |
1 files changed, 0 insertions, 907 deletions
diff --git a/meta/recipes-core/systemd/systemd_255.6.bb b/meta/recipes-core/systemd/systemd_255.6.bb deleted file mode 100644 index 0376412f61..0000000000 --- a/meta/recipes-core/systemd/systemd_255.6.bb +++ /dev/null | |||
| @@ -1,907 +0,0 @@ | |||
| 1 | require systemd.inc | ||
| 2 | |||
| 3 | PROVIDES = "udev" | ||
| 4 | |||
| 5 | PE = "1" | ||
| 6 | |||
| 7 | DEPENDS = "intltool-native gperf-native libcap util-linux python3-jinja2-native" | ||
| 8 | |||
| 9 | SECTION = "base/shell" | ||
| 10 | |||
| 11 | inherit useradd pkgconfig meson perlnative update-rc.d update-alternatives qemu systemd gettext bash-completion manpages features_check | ||
| 12 | |||
| 13 | # unmerged-usr support is deprecated upstream, taints the system and will be | ||
| 14 | # removed in the near future. Fail the build if it is not enabled. | ||
| 15 | REQUIRED_DISTRO_FEATURES += "usrmerge" | ||
| 16 | |||
| 17 | # As this recipe builds udev, respect systemd being in DISTRO_FEATURES so | ||
| 18 | # that we don't build both udev and systemd in world builds. | ||
| 19 | REQUIRED_DISTRO_FEATURES += "systemd" | ||
| 20 | |||
| 21 | SRC_URI += " \ | ||
| 22 | file://touchscreen.rules \ | ||
| 23 | file://00-create-volatile.conf \ | ||
| 24 | ${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', 'file://org.freedesktop.hostname1_no_polkit.conf', '', d)} \ | ||
| 25 | ${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', 'file://00-hostnamed-network-user.conf', '', d)} \ | ||
| 26 | file://init \ | ||
| 27 | file://99-default.preset \ | ||
| 28 | file://systemd-pager.sh \ | ||
| 29 | file://0002-binfmt-Don-t-install-dependency-links-at-install-tim.patch \ | ||
| 30 | file://0008-implment-systemd-sysv-install-for-OE.patch \ | ||
| 31 | file://0023-meson-bpf-propagate-sysroot-for-cross-compilation.patch \ | ||
| 32 | " | ||
| 33 | |||
| 34 | # patches needed by musl | ||
| 35 | SRC_URI:append:libc-musl = " ${SRC_URI_MUSL}" | ||
| 36 | SRC_URI_MUSL = "\ | ||
| 37 | file://0001-missing_type.h-add-comparison_fn_t.patch \ | ||
| 38 | file://0002-add-fallback-parse_printf_format-implementation.patch \ | ||
| 39 | file://0003-src-basic-missing.h-check-for-missing-strndupa.patch \ | ||
| 40 | file://0004-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch \ | ||
| 41 | file://0005-add-missing-FTW_-macros-for-musl.patch \ | ||
| 42 | file://0006-Use-uintmax_t-for-handling-rlim_t.patch \ | ||
| 43 | file://0007-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch \ | ||
| 44 | file://0008-Define-glibc-compatible-basename-for-non-glibc-syste.patch \ | ||
| 45 | file://0009-Do-not-disable-buffering-when-writing-to-oom_score_a.patch \ | ||
| 46 | file://0010-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch \ | ||
| 47 | file://0011-avoid-redefinition-of-prctl_mm_map-structure.patch \ | ||
| 48 | file://0012-do-not-disable-buffer-in-writing-files.patch \ | ||
| 49 | file://0013-Handle-__cpu_mask-usage.patch \ | ||
| 50 | file://0014-Handle-missing-gshadow.patch \ | ||
| 51 | file://0015-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch \ | ||
| 52 | file://0016-pass-correct-parameters-to-getdents64.patch \ | ||
| 53 | file://0017-Adjust-for-musl-headers.patch \ | ||
| 54 | file://0018-test-bus-error-strerror-is-assumed-to-be-GNU-specifi.patch \ | ||
| 55 | file://0019-errno-util-Make-STRERROR-portable-for-musl.patch \ | ||
| 56 | file://0020-sd-event-Make-malloc_trim-conditional-on-glibc.patch \ | ||
| 57 | file://0021-shared-Do-not-use-malloc_info-on-musl.patch \ | ||
| 58 | file://0022-avoid-missing-LOCK_EX-declaration.patch \ | ||
| 59 | " | ||
| 60 | |||
| 61 | PAM_PLUGINS = " \ | ||
| 62 | pam-plugin-unix \ | ||
| 63 | pam-plugin-loginuid \ | ||
| 64 | pam-plugin-keyinit \ | ||
| 65 | pam-plugin-namespace \ | ||
| 66 | " | ||
| 67 | |||
| 68 | PACKAGECONFIG ??= " \ | ||
| 69 | ${@bb.utils.filter('DISTRO_FEATURES', 'acl audit efi ldconfig pam pni-names selinux smack usrmerge polkit seccomp', d)} \ | ||
| 70 | ${@bb.utils.contains('DISTRO_FEATURES', 'minidebuginfo', 'coredump elfutils', '', d)} \ | ||
| 71 | ${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'rfkill', '', d)} \ | ||
| 72 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xkbcommon', '', d)} \ | ||
| 73 | ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', '', 'link-udev-shared', d)} \ | ||
| 74 | backlight \ | ||
| 75 | binfmt \ | ||
| 76 | cgroupv2 \ | ||
| 77 | gshadow \ | ||
| 78 | hibernate \ | ||
| 79 | hostnamed \ | ||
| 80 | idn \ | ||
| 81 | ima \ | ||
| 82 | kmod \ | ||
| 83 | localed \ | ||
| 84 | logind \ | ||
| 85 | machined \ | ||
| 86 | myhostname \ | ||
| 87 | networkd \ | ||
| 88 | nss \ | ||
| 89 | nss-mymachines \ | ||
| 90 | nss-resolve \ | ||
| 91 | quotacheck \ | ||
| 92 | randomseed \ | ||
| 93 | resolved \ | ||
| 94 | set-time-epoch \ | ||
| 95 | sysusers \ | ||
| 96 | sysvinit \ | ||
| 97 | timedated \ | ||
| 98 | timesyncd \ | ||
| 99 | userdb \ | ||
| 100 | utmp \ | ||
| 101 | vconsole \ | ||
| 102 | wheel-group \ | ||
| 103 | zstd \ | ||
| 104 | " | ||
| 105 | |||
| 106 | PACKAGECONFIG:remove:libc-musl = " \ | ||
| 107 | gshadow \ | ||
| 108 | idn \ | ||
| 109 | localed \ | ||
| 110 | myhostname \ | ||
| 111 | nss \ | ||
| 112 | nss-mymachines \ | ||
| 113 | nss-resolve \ | ||
| 114 | sysusers \ | ||
| 115 | userdb \ | ||
| 116 | utmp \ | ||
| 117 | " | ||
| 118 | |||
| 119 | # https://github.com/seccomp/libseccomp/issues/347 | ||
| 120 | PACKAGECONFIG:remove:mipsarch = "seccomp" | ||
| 121 | |||
| 122 | TARGET_CC_ARCH:append:libc-musl = " -D__UAPI_DEF_ETHHDR=0 -D_LARGEFILE64_SOURCE" | ||
| 123 | |||
| 124 | # Some of the dependencies are weak-style recommends - if not available at runtime, | ||
| 125 | # systemd won't fail but the library-related feature will be skipped with a warning. | ||
| 126 | |||
| 127 | # Use the upstream systemd serial-getty@.service and rely on | ||
| 128 | # systemd-getty-generator instead of using the OE-core specific | ||
| 129 | # systemd-serialgetty.bb - not enabled by default. | ||
| 130 | PACKAGECONFIG[serial-getty-generator] = "" | ||
| 131 | |||
| 132 | PACKAGECONFIG[acl] = "-Dacl=true,-Dacl=false,acl" | ||
| 133 | PACKAGECONFIG[audit] = "-Daudit=true,-Daudit=false,audit" | ||
| 134 | PACKAGECONFIG[backlight] = "-Dbacklight=true,-Dbacklight=false" | ||
| 135 | PACKAGECONFIG[binfmt] = "-Dbinfmt=true,-Dbinfmt=false" | ||
| 136 | PACKAGECONFIG[bpf-framework] = "-Dbpf-framework=true,-Dbpf-framework=false,clang-native bpftool-native libbpf,libbpf" | ||
| 137 | PACKAGECONFIG[bzip2] = "-Dbzip2=true,-Dbzip2=false,bzip2" | ||
| 138 | PACKAGECONFIG[cgroupv2] = "-Ddefault-hierarchy=unified,-Ddefault-hierarchy=hybrid" | ||
| 139 | PACKAGECONFIG[coredump] = "-Dcoredump=true,-Dcoredump=false" | ||
| 140 | PACKAGECONFIG[cryptsetup] = "-Dlibcryptsetup=true,-Dlibcryptsetup=false,cryptsetup,,cryptsetup" | ||
| 141 | PACKAGECONFIG[cryptsetup-plugins] = "-Dlibcryptsetup-plugins=true,-Dlibcryptsetup-plugins=false,cryptsetup,,cryptsetup" | ||
| 142 | PACKAGECONFIG[tpm2] = "-Dtpm2=true,-Dtpm2=false,tpm2-tss,tpm2-tss libtss2 libtss2-tcti-device" | ||
| 143 | # If multiple compression libraries are enabled, the format to use for compression is chosen implicitly, | ||
| 144 | # so if you want to compress with e.g. lz4 you cannot enable zstd, so you cannot read zstd-compressed journal files. | ||
| 145 | # This option allows to enable all compression formats for reading, but choosing a specific one for writing. | ||
| 146 | PACKAGECONFIG[default-compression-lz4] = "-Dlz4=true -Ddefault-compression=lz4,,lz4" | ||
| 147 | PACKAGECONFIG[default-compression-xz] = "-Dxz=true -Ddefault-compression=xz,,xz" | ||
| 148 | PACKAGECONFIG[default-compression-zstd] = "-Dzstd=true -Ddefault-compression=zstd,,zstd" | ||
| 149 | PACKAGECONFIG[dbus] = "-Ddbus=true,-Ddbus=false,dbus" | ||
| 150 | PACKAGECONFIG[efi] = "-Defi=true -Dbootloader=true,-Defi=false -Dbootloader=false,python3-pyelftools-native" | ||
| 151 | PACKAGECONFIG[elfutils] = "-Delfutils=true,-Delfutils=false,elfutils,,libelf libdw" | ||
| 152 | PACKAGECONFIG[firstboot] = "-Dfirstboot=true,-Dfirstboot=false" | ||
| 153 | PACKAGECONFIG[repart] = "-Drepart=true,-Drepart=false" | ||
| 154 | PACKAGECONFIG[homed] = "-Dhomed=true,-Dhomed=false" | ||
| 155 | # Sign the journal for anti-tampering | ||
| 156 | PACKAGECONFIG[gcrypt] = "-Dgcrypt=true,-Dgcrypt=false,libgcrypt" | ||
| 157 | PACKAGECONFIG[gnutls] = "-Dgnutls=true,-Dgnutls=false,gnutls" | ||
| 158 | PACKAGECONFIG[gshadow] = "-Dgshadow=true,-Dgshadow=false" | ||
| 159 | PACKAGECONFIG[hibernate] = "-Dhibernate=true,-Dhibernate=false" | ||
| 160 | PACKAGECONFIG[hostnamed] = "-Dhostnamed=true,-Dhostnamed=false" | ||
| 161 | PACKAGECONFIG[idn] = "-Didn=true,-Didn=false" | ||
| 162 | PACKAGECONFIG[ima] = "-Dima=true,-Dima=false" | ||
| 163 | # importd requires journal-upload/xz/zlib/bzip2/gcrypt | ||
| 164 | PACKAGECONFIG[importd] = "-Dimportd=true,-Dimportd=false,glib-2.0" | ||
| 165 | # Update NAT firewall rules | ||
| 166 | PACKAGECONFIG[iptc] = "-Dlibiptc=true,-Dlibiptc=false,iptables" | ||
| 167 | PACKAGECONFIG[journal-color] = ",,,less" | ||
| 168 | PACKAGECONFIG[journal-upload] = "-Dlibcurl=true,-Dlibcurl=false,curl" | ||
| 169 | PACKAGECONFIG[kmod] = "-Dkmod=true,-Dkmod=false,kmod" | ||
| 170 | PACKAGECONFIG[ldconfig] = "-Dldconfig=true,-Dldconfig=false,,ldconfig" | ||
| 171 | PACKAGECONFIG[libidn] = "-Dlibidn=true,-Dlibidn=false,libidn,,libidn" | ||
| 172 | PACKAGECONFIG[libidn2] = "-Dlibidn2=true,-Dlibidn2=false,libidn2,,libidn2" | ||
| 173 | # Link udev shared with systemd helper library. | ||
| 174 | # If enabled the udev package depends on the systemd package (which has the needed shared library). | ||
| 175 | PACKAGECONFIG[link-udev-shared] = "-Dlink-udev-shared=true,-Dlink-udev-shared=false" | ||
| 176 | PACKAGECONFIG[localed] = "-Dlocaled=true,-Dlocaled=false" | ||
| 177 | PACKAGECONFIG[logind] = "-Dlogind=true,-Dlogind=false" | ||
| 178 | PACKAGECONFIG[lz4] = "-Dlz4=true,-Dlz4=false,lz4" | ||
| 179 | PACKAGECONFIG[machined] = "-Dmachined=true,-Dmachined=false" | ||
| 180 | PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxslt-native xmlto-native docbook-xml-dtd4-native docbook-xsl-stylesheets-native" | ||
| 181 | PACKAGECONFIG[microhttpd] = "-Dmicrohttpd=true,-Dmicrohttpd=false,libmicrohttpd" | ||
| 182 | PACKAGECONFIG[myhostname] = "-Dnss-myhostname=true,-Dnss-myhostname=false,,libnss-myhostname" | ||
| 183 | PACKAGECONFIG[networkd] = "-Dnetworkd=true,-Dnetworkd=false" | ||
| 184 | PACKAGECONFIG[no-dns-fallback] = "-Ddns-servers=" | ||
| 185 | PACKAGECONFIG[no-ntp-fallback] = "-Dntp-servers=" | ||
| 186 | PACKAGECONFIG[nss] = "-Dnss-systemd=true,-Dnss-systemd=false,,libnss-systemd" | ||
| 187 | PACKAGECONFIG[nss-mymachines] = "-Dnss-mymachines=true,-Dnss-mymachines=false" | ||
| 188 | PACKAGECONFIG[nss-resolve] = "-Dnss-resolve=true,-Dnss-resolve=false" | ||
| 189 | PACKAGECONFIG[oomd] = "-Doomd=true,-Doomd=false" | ||
| 190 | PACKAGECONFIG[openssl] = "-Dopenssl=true,-Dopenssl=false,openssl" | ||
| 191 | PACKAGECONFIG[p11kit] = "-Dp11kit=true,-Dp11kit=false,p11-kit" | ||
| 192 | PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam,${PAM_PLUGINS}" | ||
| 193 | PACKAGECONFIG[pcre2] = "-Dpcre2=true,-Dpcre2=false,libpcre2" | ||
| 194 | PACKAGECONFIG[polkit] = "-Dpolkit=true,-Dpolkit=false" | ||
| 195 | # If polkit is disabled and networkd+hostnamed are in use, enabling this option and | ||
| 196 | # using dbus-broker will allow networkd to be authorized to change the | ||
| 197 | # hostname without acquiring additional privileges | ||
| 198 | PACKAGECONFIG[polkit_hostnamed_fallback] = ",,,,dbus-broker,polkit" | ||
| 199 | PACKAGECONFIG[portabled] = "-Dportabled=true,-Dportabled=false" | ||
| 200 | PACKAGECONFIG[pstore] = "-Dpstore=true,-Dpstore=false" | ||
| 201 | PACKAGECONFIG[pni-names] = ",,," | ||
| 202 | PACKAGECONFIG[qrencode] = "-Dqrencode=true,-Dqrencode=false,qrencode,,qrencode" | ||
| 203 | PACKAGECONFIG[quotacheck] = "-Dquotacheck=true,-Dquotacheck=false" | ||
| 204 | PACKAGECONFIG[randomseed] = "-Drandomseed=true,-Drandomseed=false" | ||
| 205 | PACKAGECONFIG[resolved] = "-Dresolve=true,-Dresolve=false" | ||
| 206 | PACKAGECONFIG[rfkill] = "-Drfkill=true,-Drfkill=false" | ||
| 207 | PACKAGECONFIG[seccomp] = "-Dseccomp=true,-Dseccomp=false,libseccomp" | ||
| 208 | PACKAGECONFIG[selinux] = "-Dselinux=true,-Dselinux=false,libselinux,initscripts-sushell" | ||
| 209 | PACKAGECONFIG[smack] = "-Dsmack=true,-Dsmack=false" | ||
| 210 | PACKAGECONFIG[sysext] = "-Dsysext=true, -Dsysext=false" | ||
| 211 | PACKAGECONFIG[sysusers] = "-Dsysusers=true,-Dsysusers=false" | ||
| 212 | PACKAGECONFIG[sysvinit] = "-Dsysvinit-path=${sysconfdir}/init.d -Dsysvrcnd-path=${sysconfdir},-Dsysvinit-path= -Dsysvrcnd-path=,,systemd-compat-units update-rc.d" | ||
| 213 | # When enabled use reproducible build timestamp if set as time epoch, | ||
| 214 | # or build time if not. When disabled, time epoch is unset. | ||
| 215 | def build_epoch(d): | ||
| 216 | epoch = d.getVar('SOURCE_DATE_EPOCH') or "-1" | ||
| 217 | return '-Dtime-epoch=%d' % int(epoch) | ||
| 218 | PACKAGECONFIG[set-time-epoch] = "${@build_epoch(d)},-Dtime-epoch=0" | ||
| 219 | PACKAGECONFIG[timedated] = "-Dtimedated=true,-Dtimedated=false" | ||
| 220 | PACKAGECONFIG[timesyncd] = "-Dtimesyncd=true,-Dtimesyncd=false" | ||
| 221 | PACKAGECONFIG[usrmerge] = "-Dsplit-usr=false,-Dsplit-usr=true" | ||
| 222 | PACKAGECONFIG[sbinmerge] = "-Dsplit-bin=false,-Dsplit-bin=true" | ||
| 223 | PACKAGECONFIG[userdb] = "-Duserdb=true,-Duserdb=false" | ||
| 224 | PACKAGECONFIG[utmp] = "-Dutmp=true,-Dutmp=false" | ||
| 225 | PACKAGECONFIG[valgrind] = "-DVALGRIND=1,,valgrind" | ||
| 226 | PACKAGECONFIG[vconsole] = "-Dvconsole=true,-Dvconsole=false,,${PN}-vconsole-setup" | ||
| 227 | PACKAGECONFIG[wheel-group] = "-Dwheel-group=true, -Dwheel-group=false" | ||
| 228 | PACKAGECONFIG[xdg-autostart] = "-Dxdg-autostart=true,-Dxdg-autostart=false" | ||
| 229 | # Verify keymaps on locale change | ||
| 230 | PACKAGECONFIG[xkbcommon] = "-Dxkbcommon=true,-Dxkbcommon=false,libxkbcommon" | ||
| 231 | PACKAGECONFIG[xz] = "-Dxz=true,-Dxz=false,xz" | ||
| 232 | PACKAGECONFIG[zlib] = "-Dzlib=true,-Dzlib=false,zlib" | ||
| 233 | PACKAGECONFIG[zstd] = "-Dzstd=true,-Dzstd=false,zstd" | ||
| 234 | |||
| 235 | RESOLV_CONF ??= "" | ||
| 236 | |||
| 237 | # bpf-framework: pass the recipe-sysroot to the compiler used to build | ||
| 238 | # the eBPFs, so that it can find needed system includes in there. | ||
| 239 | CFLAGS:append = " --sysroot=${STAGING_DIR_TARGET}" | ||
| 240 | |||
| 241 | # Helper variables to clarify locations. This mirrors the logic in systemd's | ||
| 242 | # build system. | ||
| 243 | rootprefix ?= "${root_prefix}" | ||
| 244 | rootlibdir ?= "${base_libdir}" | ||
| 245 | rootlibexecdir = "${rootprefix}/lib" | ||
| 246 | |||
| 247 | EXTRA_OEMESON += "-Dnobody-user=nobody \ | ||
| 248 | -Dnobody-group=nogroup \ | ||
| 249 | -Drootlibdir=${rootlibdir} \ | ||
| 250 | -Drootprefix=${rootprefix} \ | ||
| 251 | -Ddefault-locale=C \ | ||
| 252 | -Dmode=release \ | ||
| 253 | -Dsystem-alloc-uid-min=101 \ | ||
| 254 | -Dsystem-uid-max=999 \ | ||
| 255 | -Dsystem-alloc-gid-min=101 \ | ||
| 256 | -Dsystem-gid-max=999 \ | ||
| 257 | -Dcreate-log-dirs=false \ | ||
| 258 | ${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', '-Ddefault-mdns=no -Ddefault-llmnr=no', '', d)} \ | ||
| 259 | " | ||
| 260 | |||
| 261 | # Hardcode target binary paths to avoid using paths from sysroot or worse | ||
| 262 | # it pokes for these binaries on build host and encodes that distro assumption | ||
| 263 | # into target | ||
| 264 | EXTRA_OEMESON += "-Dkexec-path=${sbindir}/kexec \ | ||
| 265 | -Dkmod-path=${base_bindir}/kmod \ | ||
| 266 | -Dmount-path=${base_bindir}/mount \ | ||
| 267 | -Dquotacheck-path=${sbindir}/quotacheck \ | ||
| 268 | -Dquotaon-path=${sbindir}/quotaon \ | ||
| 269 | -Dsulogin-path=${base_sbindir}/sulogin \ | ||
| 270 | -Dnologin-path=${base_sbindir}/nologin \ | ||
| 271 | -Dumount-path=${base_bindir}/umount \ | ||
| 272 | -Dloadkeys-path=${bindir}/loadkeys \ | ||
| 273 | -Dsetfont-path=${bindir}/setfont" | ||
| 274 | |||
| 275 | # The 60 seconds is watchdog's default vaule. | ||
| 276 | WATCHDOG_TIMEOUT ??= "60" | ||
| 277 | |||
| 278 | do_install() { | ||
| 279 | meson_do_install | ||
| 280 | if ${@bb.utils.contains('PACKAGECONFIG', 'sysusers', 'true', 'false', d)}; then | ||
| 281 | # Change the root user's home directory in /lib/sysusers.d/basic.conf. | ||
| 282 | # This is done merely for backward compatibility with previous systemd recipes. | ||
| 283 | # systemd hardcodes root user's HOME to be "/root". Changing to use other values | ||
| 284 | # may have unexpected runtime behaviors. | ||
| 285 | if [ "${ROOT_HOME}" != "/root" ]; then | ||
| 286 | bbwarn "Using ${ROOT_HOME} as root user's home directory is not fully supported by systemd" | ||
| 287 | sed -i -e 's#/root#${ROOT_HOME}#g' ${D}${exec_prefix}/lib/sysusers.d/basic.conf | ||
| 288 | fi | ||
| 289 | fi | ||
| 290 | install -d ${D}/${base_sbindir} | ||
| 291 | if ${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', 'false', 'true', d)}; then | ||
| 292 | # Provided by a separate recipe | ||
| 293 | rm ${D}${systemd_system_unitdir}/serial-getty* -f | ||
| 294 | fi | ||
| 295 | |||
| 296 | # Provide support for initramfs | ||
| 297 | [ ! -e ${D}/init ] && ln -s ${rootlibexecdir}/systemd/systemd ${D}/init | ||
| 298 | [ ! -e ${D}/${base_sbindir}/udevd ] && ln -s ${rootlibexecdir}/systemd/systemd-udevd ${D}/${base_sbindir}/udevd | ||
| 299 | |||
| 300 | install -d ${D}${sysconfdir}/udev/rules.d/ | ||
| 301 | install -d ${D}${nonarch_libdir}/tmpfiles.d | ||
| 302 | for rule in $(find ${UNPACKDIR} -maxdepth 1 -type f -name "*.rules"); do | ||
| 303 | install -m 0644 $rule ${D}${sysconfdir}/udev/rules.d/ | ||
| 304 | done | ||
| 305 | |||
| 306 | install -m 0644 ${UNPACKDIR}/00-create-volatile.conf ${D}${nonarch_libdir}/tmpfiles.d/ | ||
| 307 | |||
| 308 | if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then | ||
| 309 | install -d ${D}${sysconfdir}/init.d | ||
| 310 | install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/systemd-udevd | ||
| 311 | sed -i s%@UDEVD@%${rootlibexecdir}/systemd/systemd-udevd% ${D}${sysconfdir}/init.d/systemd-udevd | ||
| 312 | install -Dm 0755 ${S}/src/systemctl/systemd-sysv-install.SKELETON ${D}${systemd_unitdir}/systemd-sysv-install | ||
| 313 | fi | ||
| 314 | |||
| 315 | if "${@'true' if oe.types.boolean(d.getVar('VOLATILE_LOG_DIR')) else 'false'}"; then | ||
| 316 | # /var/log is typically a symbolic link to inside /var/volatile, | ||
| 317 | # which is expected to be empty. | ||
| 318 | rm -rf ${D}${localstatedir}/log | ||
| 319 | elif [ -e ${D}${localstatedir}/log/journal ]; then | ||
| 320 | chown root:systemd-journal ${D}${localstatedir}/log/journal | ||
| 321 | |||
| 322 | # journal-remote creates this at start | ||
| 323 | rm -rf ${D}${localstatedir}/log/journal/remote | ||
| 324 | fi | ||
| 325 | |||
| 326 | # if the user requests /tmp be on persistent storage (i.e. not volatile) | ||
| 327 | # then don't use a tmpfs for /tmp | ||
| 328 | if [ "${VOLATILE_TMP_DIR}" != "yes" ]; then | ||
| 329 | rm -f ${D}${rootlibexecdir}/systemd/system/tmp.mount | ||
| 330 | rm -f ${D}${rootlibexecdir}/systemd/system/local-fs.target.wants/tmp.mount | ||
| 331 | fi | ||
| 332 | |||
| 333 | install -d ${D}${systemd_system_unitdir}/graphical.target.wants | ||
| 334 | install -d ${D}${systemd_system_unitdir}/multi-user.target.wants | ||
| 335 | install -d ${D}${systemd_system_unitdir}/poweroff.target.wants | ||
| 336 | install -d ${D}${systemd_system_unitdir}/reboot.target.wants | ||
| 337 | install -d ${D}${systemd_system_unitdir}/rescue.target.wants | ||
| 338 | |||
| 339 | # Create symlinks for systemd-update-utmp-runlevel.service | ||
| 340 | if ${@bb.utils.contains('PACKAGECONFIG', 'utmp', 'true', 'false', d)}; then | ||
| 341 | ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_system_unitdir}/graphical.target.wants/systemd-update-utmp-runlevel.service | ||
| 342 | ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_system_unitdir}/multi-user.target.wants/systemd-update-utmp-runlevel.service | ||
| 343 | ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_system_unitdir}/poweroff.target.wants/systemd-update-utmp-runlevel.service | ||
| 344 | ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_system_unitdir}/reboot.target.wants/systemd-update-utmp-runlevel.service | ||
| 345 | ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_system_unitdir}/rescue.target.wants/systemd-update-utmp-runlevel.service | ||
| 346 | fi | ||
| 347 | |||
| 348 | # this file is needed to exist if networkd is disabled but timesyncd is still in use since timesyncd checks it | ||
| 349 | # for existence else it fails | ||
| 350 | if [ -s ${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf ] && | ||
| 351 | ! ${@bb.utils.contains('PACKAGECONFIG', 'networkd', 'true', 'false', d)}; then | ||
| 352 | echo 'd /run/systemd/netif/links 0755 root root -' >>${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf | ||
| 353 | fi | ||
| 354 | if ! ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'true', 'false', d)}; then | ||
| 355 | echo 'L! ${sysconfdir}/resolv.conf - - - - ../run/systemd/resolve/resolv.conf' >>${D}${exec_prefix}/lib/tmpfiles.d/etc.conf | ||
| 356 | echo 'd /run/systemd/resolve 0755 root root -' >>${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf | ||
| 357 | echo 'f /run/systemd/resolve/resolv.conf 0644 root root' >>${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf | ||
| 358 | ln -s ../run/systemd/resolve/resolv.conf ${D}${sysconfdir}/resolv-conf.systemd | ||
| 359 | else | ||
| 360 | resolv_conf="${@bb.utils.contains('RESOLV_CONF', 'stub-resolv', 'run/systemd/resolve/stub-resolv.conf', 'run/systemd/resolve/resolv.conf', d)}" | ||
| 361 | sed -i -e "s%^L! /etc/resolv.conf.*$%L! /etc/resolv.conf - - - - ../${resolv_conf}%g" ${D}${exec_prefix}/lib/tmpfiles.d/etc.conf | ||
| 362 | ln -s ../${resolv_conf} ${D}${sysconfdir}/resolv-conf.systemd | ||
| 363 | fi | ||
| 364 | if ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'false', 'true', d)}; then | ||
| 365 | rm ${D}${exec_prefix}/lib/tmpfiles.d/x11.conf | ||
| 366 | rm -r ${D}${sysconfdir}/X11 | ||
| 367 | fi | ||
| 368 | |||
| 369 | # If polkit is setup fixup permissions and ownership | ||
| 370 | if ${@bb.utils.contains('PACKAGECONFIG', 'polkit', 'true', 'false', d)}; then | ||
| 371 | if [ -d ${D}${datadir}/polkit-1/rules.d ]; then | ||
| 372 | chmod 700 ${D}${datadir}/polkit-1/rules.d | ||
| 373 | chown polkitd:root ${D}${datadir}/polkit-1/rules.d | ||
| 374 | fi | ||
| 375 | fi | ||
| 376 | |||
| 377 | # If polkit is not available and a fallback was requested, install a drop-in that allows networkd to | ||
| 378 | # request hostname changes via DBUS without elevating its privileges | ||
| 379 | if ${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', 'true', 'false', d)}; then | ||
| 380 | install -d ${D}${systemd_system_unitdir}/systemd-hostnamed.service.d/ | ||
| 381 | install -m 0644 ${UNPACKDIR}/00-hostnamed-network-user.conf ${D}${systemd_system_unitdir}/systemd-hostnamed.service.d/ | ||
| 382 | install -d ${D}${datadir}/dbus-1/system.d/ | ||
| 383 | install -m 0644 ${UNPACKDIR}/org.freedesktop.hostname1_no_polkit.conf ${D}${datadir}/dbus-1/system.d/ | ||
| 384 | fi | ||
| 385 | |||
| 386 | # create link for existing udev rules | ||
| 387 | ln -s ${base_bindir}/udevadm ${D}${base_sbindir}/udevadm | ||
| 388 | |||
| 389 | # install default policy for presets | ||
| 390 | # https://www.freedesktop.org/wiki/Software/systemd/Preset/#howto | ||
| 391 | install -Dm 0644 ${UNPACKDIR}/99-default.preset ${D}${systemd_unitdir}/system-preset/99-default.preset | ||
| 392 | |||
| 393 | # add a profile fragment to disable systemd pager with busybox less | ||
| 394 | install -Dm 0644 ${UNPACKDIR}/systemd-pager.sh ${D}${sysconfdir}/profile.d/systemd-pager.sh | ||
| 395 | |||
| 396 | if [ -n "${WATCHDOG_TIMEOUT}" ]; then | ||
| 397 | sed -i -e 's/#RebootWatchdogSec=10min/RebootWatchdogSec=${WATCHDOG_TIMEOUT}/' \ | ||
| 398 | ${D}/${sysconfdir}/systemd/system.conf | ||
| 399 | fi | ||
| 400 | |||
| 401 | if ${@bb.utils.contains('PACKAGECONFIG', 'pni-names', 'true', 'false', d)}; then | ||
| 402 | if ! grep -q '^NamePolicy=.*mac' ${D}${rootlibexecdir}/systemd/network/99-default.link; then | ||
| 403 | sed -i '/^NamePolicy=/s/$/ mac/' ${D}${rootlibexecdir}/systemd/network/99-default.link | ||
| 404 | fi | ||
| 405 | if ! grep -q 'AlternativeNamesPolicy=.*mac' ${D}${rootlibexecdir}/systemd/network/99-default.link; then | ||
| 406 | sed -i '/AlternativeNamesPolicy=/s/$/ mac/' ${D}${rootlibexecdir}/systemd/network/99-default.link | ||
| 407 | fi | ||
| 408 | fi | ||
| 409 | } | ||
| 410 | |||
| 411 | python populate_packages:prepend (){ | ||
| 412 | systemdlibdir = d.getVar("rootlibdir") | ||
| 413 | do_split_packages(d, systemdlibdir, r'^lib(.*)\.so\.*', 'lib%s', 'Systemd %s library', extra_depends='', allow_links=True) | ||
| 414 | } | ||
| 415 | PACKAGES_DYNAMIC += "^lib(udev|systemd|nss).*" | ||
| 416 | |||
| 417 | PACKAGE_BEFORE_PN = "\ | ||
| 418 | ${PN}-analyze \ | ||
| 419 | ${PN}-binfmt \ | ||
| 420 | ${PN}-container \ | ||
| 421 | ${PN}-crypt \ | ||
| 422 | ${PN}-extra-utils \ | ||
| 423 | ${PN}-gui \ | ||
| 424 | ${PN}-initramfs \ | ||
| 425 | ${PN}-journal-gatewayd \ | ||
| 426 | ${PN}-journal-upload \ | ||
| 427 | ${PN}-journal-remote \ | ||
| 428 | ${PN}-kernel-install \ | ||
| 429 | ${PN}-rpm-macros \ | ||
| 430 | ${PN}-udev-rules \ | ||
| 431 | ${PN}-vconsole-setup \ | ||
| 432 | ${PN}-zsh-completion \ | ||
| 433 | libsystemd-shared \ | ||
| 434 | udev \ | ||
| 435 | udev-bash-completion \ | ||
| 436 | udev-hwdb \ | ||
| 437 | " | ||
| 438 | |||
| 439 | SUMMARY:${PN}-container = "Tools for containers and VMs" | ||
| 440 | DESCRIPTION:${PN}-container = "Systemd tools to spawn and manage containers and virtual machines." | ||
| 441 | |||
| 442 | SUMMARY:${PN}-journal-gatewayd = "HTTP server for journal events" | ||
| 443 | DESCRIPTION:${PN}-journal-gatewayd = "systemd-journal-gatewayd serves journal events over the network. Clients must connect using HTTP. The server listens on port 19531 by default." | ||
| 444 | |||
| 445 | SUMMARY:${PN}-journal-upload = "Send journal messages over the network" | ||
| 446 | DESCRIPTION:${PN}-journal-upload = "systemd-journal-upload uploads journal entries to a specified URL." | ||
| 447 | |||
| 448 | SUMMARY:${PN}-journal-remote = "Receive journal messages over the network" | ||
| 449 | DESCRIPTION:${PN}-journal-remote = "systemd-journal-remote is a command to receive serialized journal events and store them to journal files." | ||
| 450 | |||
| 451 | SUMMARY:libsystemd-shared = "Systemd shared library" | ||
| 452 | |||
| 453 | SYSTEMD_PACKAGES = "${@bb.utils.contains('PACKAGECONFIG', 'binfmt', '${PN}-binfmt', '', d)} \ | ||
| 454 | ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-gatewayd', '', d)} \ | ||
| 455 | ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-remote', '', d)} \ | ||
| 456 | ${@bb.utils.contains('PACKAGECONFIG', 'journal-upload', '${PN}-journal-upload', '', d)} \ | ||
| 457 | " | ||
| 458 | SYSTEMD_SERVICE:${PN}-binfmt = "systemd-binfmt.service" | ||
| 459 | |||
| 460 | USERADD_PACKAGES = "${PN} \ | ||
| 461 | udev \ | ||
| 462 | ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-gatewayd', '', d)} \ | ||
| 463 | ${@bb.utils.contains('PACKAGECONFIG', 'microhttpd', '${PN}-journal-remote', '', d)} \ | ||
| 464 | ${@bb.utils.contains('PACKAGECONFIG', 'journal-upload', '${PN}-journal-upload', '', d)} \ | ||
| 465 | " | ||
| 466 | GROUPADD_PARAM:${PN} = "-r systemd-journal;" | ||
| 467 | GROUPADD_PARAM:udev = "-r render" | ||
| 468 | GROUPADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', '-r systemd-hostname;', '', d)}" | ||
| 469 | USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'coredump', '--system -d / -M --shell /sbin/nologin systemd-coredump;', '', d)}" | ||
| 470 | USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'networkd', '--system -d / -M --shell /sbin/nologin systemd-network;', '', d)}" | ||
| 471 | USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'polkit', '--system --no-create-home --user-group --home-dir ${sysconfdir}/polkit-1 polkitd;', '', d)}" | ||
| 472 | USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'resolved', '--system -d / -M --shell /sbin/nologin systemd-resolve;', '', d)}" | ||
| 473 | USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'timesyncd', '--system -d / -M --shell /sbin/nologin systemd-timesync;', '', d)}" | ||
| 474 | USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'oomd', '--system -d / -M --shell /sbin/nologin systemd-oom;', '', d)}" | ||
| 475 | USERADD_PARAM:${PN}-journal-gatewayd = "--system -d / -M --shell /sbin/nologin systemd-journal-gateway" | ||
| 476 | USERADD_PARAM:${PN}-journal-remote = "--system -d / -M --shell /sbin/nologin systemd-journal-remote" | ||
| 477 | USERADD_PARAM:${PN}-journal-upload = "--system -d / -M --shell /sbin/nologin systemd-journal-upload" | ||
| 478 | |||
| 479 | FILES:${PN}-analyze = "${bindir}/systemd-analyze" | ||
| 480 | |||
| 481 | FILES:${PN}-crypt = "${bindir}/systemd-cryptenroll \ | ||
| 482 | ${libdir}/cryptsetup \ | ||
| 483 | " | ||
| 484 | RRECOMMENDS:${PN} += "${PN}-crypt" | ||
| 485 | |||
| 486 | FILES:${PN}-initramfs = "/init" | ||
| 487 | RDEPENDS:${PN}-initramfs = "${PN}" | ||
| 488 | |||
| 489 | FILES:${PN}-gui = "${bindir}/systemadm" | ||
| 490 | |||
| 491 | FILES:${PN}-vconsole-setup = "${rootlibexecdir}/systemd/systemd-vconsole-setup \ | ||
| 492 | ${systemd_system_unitdir}/systemd-vconsole-setup.service \ | ||
| 493 | ${systemd_system_unitdir}/sysinit.target.wants/systemd-vconsole-setup.service" | ||
| 494 | |||
| 495 | RDEPENDS:${PN}-kernel-install += "bash" | ||
| 496 | FILES:${PN}-kernel-install = "${bindir}/kernel-install \ | ||
| 497 | ${sysconfdir}/kernel/ \ | ||
| 498 | ${exec_prefix}/lib/kernel \ | ||
| 499 | " | ||
| 500 | FILES:${PN}-rpm-macros = "${exec_prefix}/lib/rpm \ | ||
| 501 | " | ||
| 502 | |||
| 503 | FILES:${PN}-zsh-completion = "${datadir}/zsh/site-functions" | ||
| 504 | |||
| 505 | FILES:${PN}-binfmt = "${sysconfdir}/binfmt.d/ \ | ||
| 506 | ${exec_prefix}/lib/binfmt.d \ | ||
| 507 | ${rootlibexecdir}/systemd/systemd-binfmt \ | ||
| 508 | ${systemd_system_unitdir}/proc-sys-fs-binfmt_misc.* \ | ||
| 509 | ${systemd_system_unitdir}/systemd-binfmt.service" | ||
| 510 | RRECOMMENDS:${PN}-binfmt = "${@bb.utils.contains('PACKAGECONFIG', 'binfmt', 'kernel-module-binfmt-misc', '', d)}" | ||
| 511 | |||
| 512 | RDEPENDS:${PN}-vconsole-setup = "${@bb.utils.contains('PACKAGECONFIG', 'vconsole', 'kbd kbd-consolefonts kbd-keymaps', '', d)}" | ||
| 513 | |||
| 514 | |||
| 515 | FILES:${PN}-journal-gatewayd = "${rootlibexecdir}/systemd/systemd-journal-gatewayd \ | ||
| 516 | ${systemd_system_unitdir}/systemd-journal-gatewayd.service \ | ||
| 517 | ${systemd_system_unitdir}/systemd-journal-gatewayd.socket \ | ||
| 518 | ${systemd_system_unitdir}/sockets.target.wants/systemd-journal-gatewayd.socket \ | ||
| 519 | ${datadir}/systemd/gatewayd/browse.html \ | ||
| 520 | " | ||
| 521 | SYSTEMD_SERVICE:${PN}-journal-gatewayd = "systemd-journal-gatewayd.socket" | ||
| 522 | |||
| 523 | FILES:${PN}-journal-upload = "${rootlibexecdir}/systemd/systemd-journal-upload \ | ||
| 524 | ${systemd_system_unitdir}/systemd-journal-upload.service \ | ||
| 525 | ${sysconfdir}/systemd/journal-upload.conf \ | ||
| 526 | " | ||
| 527 | SYSTEMD_SERVICE:${PN}-journal-upload = "systemd-journal-upload.service" | ||
| 528 | |||
| 529 | FILES:${PN}-journal-remote = "${rootlibexecdir}/systemd/systemd-journal-remote \ | ||
| 530 | ${sysconfdir}/systemd/journal-remote.conf \ | ||
| 531 | ${systemd_system_unitdir}/systemd-journal-remote.service \ | ||
| 532 | ${systemd_system_unitdir}/systemd-journal-remote.socket \ | ||
| 533 | " | ||
| 534 | SYSTEMD_SERVICE:${PN}-journal-remote = "systemd-journal-remote.socket" | ||
| 535 | |||
| 536 | |||
| 537 | FILES:${PN}-container = "${sysconfdir}/dbus-1/system.d/org.freedesktop.import1.conf \ | ||
| 538 | ${sysconfdir}/dbus-1/system.d/org.freedesktop.machine1.conf \ | ||
| 539 | ${sysconfdir}/systemd/system/multi-user.target.wants/machines.target \ | ||
| 540 | ${base_bindir}/machinectl \ | ||
| 541 | ${bindir}/systemd-nspawn \ | ||
| 542 | ${nonarch_libdir}/systemd/import-pubring.gpg \ | ||
| 543 | ${systemd_system_unitdir}/busnames.target.wants/org.freedesktop.import1.busname \ | ||
| 544 | ${systemd_system_unitdir}/busnames.target.wants/org.freedesktop.machine1.busname \ | ||
| 545 | ${systemd_system_unitdir}/local-fs.target.wants/var-lib-machines.mount \ | ||
| 546 | ${systemd_system_unitdir}/machines.target.wants/var-lib-machines.mount \ | ||
| 547 | ${systemd_system_unitdir}/remote-fs.target.wants/var-lib-machines.mount \ | ||
| 548 | ${systemd_system_unitdir}/machine.slice \ | ||
| 549 | ${systemd_system_unitdir}/machines.target \ | ||
| 550 | ${systemd_system_unitdir}/org.freedesktop.import1.busname \ | ||
| 551 | ${systemd_system_unitdir}/org.freedesktop.machine1.busname \ | ||
| 552 | ${systemd_system_unitdir}/systemd-importd.service \ | ||
| 553 | ${systemd_system_unitdir}/systemd-machined.service \ | ||
| 554 | ${systemd_system_unitdir}/dbus-org.freedesktop.machine1.service \ | ||
| 555 | ${systemd_system_unitdir}/var-lib-machines.mount \ | ||
| 556 | ${rootlibexecdir}/systemd/systemd-import \ | ||
| 557 | ${rootlibexecdir}/systemd/systemd-importd \ | ||
| 558 | ${rootlibexecdir}/systemd/systemd-machined \ | ||
| 559 | ${rootlibexecdir}/systemd/systemd-pull \ | ||
| 560 | ${exec_prefix}/lib/tmpfiles.d/systemd-nspawn.conf \ | ||
| 561 | ${exec_prefix}/lib/tmpfiles.d/README \ | ||
| 562 | ${systemd_system_unitdir}/systemd-nspawn@.service \ | ||
| 563 | ${datadir}/dbus-1/system-services/org.freedesktop.import1.service \ | ||
| 564 | ${datadir}/dbus-1/system-services/org.freedesktop.machine1.service \ | ||
| 565 | ${datadir}/dbus-1/system.d/org.freedesktop.import1.conf \ | ||
| 566 | ${datadir}/dbus-1/system.d/org.freedesktop.machine1.conf \ | ||
| 567 | ${datadir}/polkit-1/actions/org.freedesktop.import1.policy \ | ||
| 568 | ${datadir}/polkit-1/actions/org.freedesktop.machine1.policy \ | ||
| 569 | " | ||
| 570 | |||
| 571 | RDEPENDS:${PN}-container = "${@bb.utils.contains('PACKAGECONFIG', 'nss-mymachines', 'libnss-mymachines', '', d)}" | ||
| 572 | |||
| 573 | # "machinectl import-tar" uses "tar --numeric-owner", not supported by busybox. | ||
| 574 | RRECOMMENDS:${PN}-container += "\ | ||
| 575 | ${PN}-journal-gatewayd \ | ||
| 576 | ${PN}-journal-remote \ | ||
| 577 | ${PN}-journal-upload \ | ||
| 578 | kernel-module-dm-mod \ | ||
| 579 | kernel-module-loop \ | ||
| 580 | kernel-module-tun \ | ||
| 581 | tar \ | ||
| 582 | " | ||
| 583 | |||
| 584 | FILES:${PN}-extra-utils = "\ | ||
| 585 | ${base_bindir}/systemd-escape \ | ||
| 586 | ${base_bindir}/systemd-inhibit \ | ||
| 587 | ${bindir}/systemd-detect-virt \ | ||
| 588 | ${bindir}/systemd-dissect \ | ||
| 589 | ${bindir}/systemd-path \ | ||
| 590 | ${bindir}/systemd-run \ | ||
| 591 | ${bindir}/systemd-cat \ | ||
| 592 | ${bindir}/systemd-creds \ | ||
| 593 | ${bindir}/systemd-delta \ | ||
| 594 | ${bindir}/systemd-cgls \ | ||
| 595 | ${bindir}/systemd-cgtop \ | ||
| 596 | ${bindir}/systemd-stdio-bridge \ | ||
| 597 | ${base_bindir}/systemd-ask-password \ | ||
| 598 | ${base_bindir}/systemd-tty-ask-password-agent \ | ||
| 599 | ${base_sbindir}/mount.ddi \ | ||
| 600 | ${systemd_system_unitdir}/initrd.target.wants/systemd-pcrphase-initrd.path \ | ||
| 601 | ${systemd_system_unitdir}/systemd-ask-password-console.path \ | ||
| 602 | ${systemd_system_unitdir}/systemd-ask-password-console.service \ | ||
| 603 | ${systemd_system_unitdir}/systemd-ask-password-wall.path \ | ||
| 604 | ${systemd_system_unitdir}/systemd-ask-password-wall.service \ | ||
| 605 | ${systemd_system_unitdir}/sysinit.target.wants/systemd-ask-password-console.path \ | ||
| 606 | ${systemd_system_unitdir}/sysinit.target.wants/systemd-ask-password-wall.path \ | ||
| 607 | ${systemd_system_unitdir}/sysinit.target.wants/systemd-pcrphase.path \ | ||
| 608 | ${systemd_system_unitdir}/sysinit.target.wants/systemd-pcrphase-sysinit.path \ | ||
| 609 | ${systemd_system_unitdir}/multi-user.target.wants/systemd-ask-password-wall.path \ | ||
| 610 | ${rootlibexecdir}/systemd/systemd-resolve-host \ | ||
| 611 | ${rootlibexecdir}/systemd/systemd-ac-power \ | ||
| 612 | ${rootlibexecdir}/systemd/systemd-activate \ | ||
| 613 | ${rootlibexecdir}/systemd/systemd-measure \ | ||
| 614 | ${rootlibexecdir}/systemd/systemd-pcrphase \ | ||
| 615 | ${rootlibexecdir}/systemd/systemd-socket-proxyd \ | ||
| 616 | ${rootlibexecdir}/systemd/systemd-reply-password \ | ||
| 617 | ${rootlibexecdir}/systemd/systemd-sleep \ | ||
| 618 | ${rootlibexecdir}/systemd/system-sleep \ | ||
| 619 | ${systemd_system_unitdir}/systemd-hibernate.service \ | ||
| 620 | ${systemd_system_unitdir}/systemd-hybrid-sleep.service \ | ||
| 621 | ${systemd_system_unitdir}/systemd-pcrphase-initrd.service \ | ||
| 622 | ${systemd_system_unitdir}/systemd-pcrphase.service \ | ||
| 623 | ${systemd_system_unitdir}/systemd-pcrphase-sysinit.service \ | ||
| 624 | ${systemd_system_unitdir}/systemd-suspend.service \ | ||
| 625 | ${systemd_system_unitdir}/sleep.target \ | ||
| 626 | ${rootlibexecdir}/systemd/systemd-initctl \ | ||
| 627 | ${systemd_system_unitdir}/systemd-initctl.service \ | ||
| 628 | ${systemd_system_unitdir}/systemd-initctl.socket \ | ||
| 629 | ${systemd_system_unitdir}/sockets.target.wants/systemd-initctl.socket \ | ||
| 630 | ${rootlibexecdir}/systemd/system-generators/systemd-gpt-auto-generator \ | ||
| 631 | ${rootlibexecdir}/systemd/systemd-cgroups-agent \ | ||
| 632 | " | ||
| 633 | |||
| 634 | FILES:${PN}-udev-rules = "\ | ||
| 635 | ${rootlibexecdir}/udev/rules.d/70-uaccess.rules \ | ||
| 636 | ${rootlibexecdir}/udev/rules.d/71-seat.rules \ | ||
| 637 | ${rootlibexecdir}/udev/rules.d/73-seat-late.rules \ | ||
| 638 | ${rootlibexecdir}/udev/rules.d/99-systemd.rules \ | ||
| 639 | " | ||
| 640 | |||
| 641 | CONFFILES:${PN} = "${sysconfdir}/systemd/coredump.conf \ | ||
| 642 | ${sysconfdir}/systemd/journald.conf \ | ||
| 643 | ${sysconfdir}/systemd/logind.conf \ | ||
| 644 | ${sysconfdir}/systemd/networkd.conf \ | ||
| 645 | ${sysconfdir}/systemd/pstore.conf \ | ||
| 646 | ${sysconfdir}/systemd/resolved.conf \ | ||
| 647 | ${sysconfdir}/systemd/sleep.conf \ | ||
| 648 | ${sysconfdir}/systemd/system.conf \ | ||
| 649 | ${sysconfdir}/systemd/timesyncd.conf \ | ||
| 650 | ${sysconfdir}/systemd/user.conf \ | ||
| 651 | " | ||
| 652 | |||
| 653 | FILES:${PN} = " ${base_bindir}/* \ | ||
| 654 | ${base_sbindir}/shutdown \ | ||
| 655 | ${base_sbindir}/halt \ | ||
| 656 | ${base_sbindir}/poweroff \ | ||
| 657 | ${base_sbindir}/runlevel \ | ||
| 658 | ${base_sbindir}/telinit \ | ||
| 659 | ${base_sbindir}/resolvconf \ | ||
| 660 | ${base_sbindir}/reboot \ | ||
| 661 | ${base_sbindir}/init \ | ||
| 662 | ${datadir}/dbus-1/services \ | ||
| 663 | ${datadir}/dbus-1/system-services \ | ||
| 664 | ${datadir}/polkit-1 \ | ||
| 665 | ${datadir}/${BPN} \ | ||
| 666 | ${datadir}/factory \ | ||
| 667 | ${sysconfdir}/credstore/ \ | ||
| 668 | ${sysconfdir}/credstore.encrypted/ \ | ||
| 669 | ${sysconfdir}/dbus-1/ \ | ||
| 670 | ${sysconfdir}/modules-load.d/ \ | ||
| 671 | ${sysconfdir}/pam.d/ \ | ||
| 672 | ${sysconfdir}/profile.d/ \ | ||
| 673 | ${sysconfdir}/sysctl.d/ \ | ||
| 674 | ${sysconfdir}/systemd/ \ | ||
| 675 | ${sysconfdir}/tmpfiles.d/ \ | ||
| 676 | ${sysconfdir}/xdg/ \ | ||
| 677 | ${sysconfdir}/init.d/README \ | ||
| 678 | ${sysconfdir}/resolv-conf.systemd \ | ||
| 679 | ${sysconfdir}/X11/xinit/xinitrc.d/* \ | ||
| 680 | ${rootlibexecdir}/systemd/* \ | ||
| 681 | ${rootlibdir}/systemd/libsystemd-core* \ | ||
| 682 | ${libdir}/pam.d \ | ||
| 683 | ${nonarch_libdir}/pam.d \ | ||
| 684 | ${systemd_unitdir}/* \ | ||
| 685 | ${base_libdir}/security/*.so \ | ||
| 686 | /cgroup \ | ||
| 687 | ${bindir}/systemd* \ | ||
| 688 | ${bindir}/busctl \ | ||
| 689 | ${bindir}/coredumpctl \ | ||
| 690 | ${bindir}/localectl \ | ||
| 691 | ${bindir}/hostnamectl \ | ||
| 692 | ${bindir}/resolvectl \ | ||
| 693 | ${bindir}/timedatectl \ | ||
| 694 | ${bindir}/bootctl \ | ||
| 695 | ${bindir}/oomctl \ | ||
| 696 | ${bindir}/userdbctl \ | ||
| 697 | ${exec_prefix}/lib/credstore \ | ||
| 698 | ${exec_prefix}/lib/tmpfiles.d/*.conf \ | ||
| 699 | ${exec_prefix}/lib/systemd \ | ||
| 700 | ${exec_prefix}/lib/modules-load.d \ | ||
| 701 | ${exec_prefix}/lib/sysctl.d \ | ||
| 702 | ${exec_prefix}/lib/sysusers.d \ | ||
| 703 | ${exec_prefix}/lib/environment.d \ | ||
| 704 | ${exec_prefix}/lib/pcrlock.d \ | ||
| 705 | ${localstatedir} \ | ||
| 706 | ${rootlibexecdir}/modprobe.d/systemd.conf \ | ||
| 707 | ${rootlibexecdir}/modprobe.d/README \ | ||
| 708 | ${datadir}/dbus-1/system.d/org.freedesktop.timedate1.conf \ | ||
| 709 | ${datadir}/dbus-1/system.d/org.freedesktop.locale1.conf \ | ||
| 710 | ${datadir}/dbus-1/system.d/org.freedesktop.network1.conf \ | ||
| 711 | ${datadir}/dbus-1/system.d/org.freedesktop.resolve1.conf \ | ||
| 712 | ${datadir}/dbus-1/system.d/org.freedesktop.systemd1.conf \ | ||
| 713 | ${@bb.utils.contains('PACKAGECONFIG', 'polkit_hostnamed_fallback', '${datadir}/dbus-1/system.d/org.freedesktop.hostname1_no_polkit.conf', '', d)} \ | ||
| 714 | ${datadir}/dbus-1/system.d/org.freedesktop.hostname1.conf \ | ||
| 715 | ${datadir}/dbus-1/system.d/org.freedesktop.login1.conf \ | ||
| 716 | ${datadir}/dbus-1/system.d/org.freedesktop.timesync1.conf \ | ||
| 717 | ${datadir}/dbus-1/system.d/org.freedesktop.portable1.conf \ | ||
| 718 | ${datadir}/dbus-1/system.d/org.freedesktop.oom1.conf \ | ||
| 719 | ${datadir}/dbus-1/system.d/org.freedesktop.home1.conf \ | ||
| 720 | " | ||
| 721 | |||
| 722 | FILES:${PN}-dev += "${base_libdir}/security/*.la ${datadir}/dbus-1/interfaces/ ${sysconfdir}/rpm/macros.systemd" | ||
| 723 | |||
| 724 | RDEPENDS:${PN} += "kmod dbus util-linux-mount util-linux-umount udev (= ${EXTENDPKGV}) systemd-udev-rules util-linux-agetty util-linux-fsck util-linux-swaponoff" | ||
| 725 | RDEPENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', '', 'systemd-serialgetty', d)}" | ||
| 726 | RDEPENDS:${PN} += "volatile-binds" | ||
| 727 | |||
| 728 | RRECOMMENDS:${PN} += "systemd-extra-utils \ | ||
| 729 | udev-hwdb \ | ||
| 730 | e2fsprogs-e2fsck \ | ||
| 731 | kernel-module-autofs4 kernel-module-unix kernel-module-ipv6 kernel-module-sch-fq-codel \ | ||
| 732 | os-release \ | ||
| 733 | systemd-conf \ | ||
| 734 | ${@bb.utils.contains('PACKAGECONFIG', 'logind', 'pam-plugin-umask', '', d)} \ | ||
| 735 | " | ||
| 736 | |||
| 737 | INSANE_SKIP:${PN} += "dev-so libdir" | ||
| 738 | INSANE_SKIP:${PN}-dbg += "libdir" | ||
| 739 | INSANE_SKIP:${PN}-doc += " libdir" | ||
| 740 | INSANE_SKIP:libsystemd-shared += "libdir" | ||
| 741 | |||
| 742 | FILES:libsystemd-shared = "${rootlibdir}/systemd/libsystemd-shared*.so" | ||
| 743 | |||
| 744 | RPROVIDES:udev = "hotplug" | ||
| 745 | |||
| 746 | RDEPENDS:udev-bash-completion += "bash-completion" | ||
| 747 | RDEPENDS:udev-hwdb += "udev" | ||
| 748 | |||
| 749 | FILES:udev += "${base_sbindir}/udevd \ | ||
| 750 | ${rootlibexecdir}/systemd/network/99-default.link \ | ||
| 751 | ${rootlibexecdir}/systemd/systemd-udevd \ | ||
| 752 | ${rootlibexecdir}/udev/accelerometer \ | ||
| 753 | ${rootlibexecdir}/udev/ata_id \ | ||
| 754 | ${rootlibexecdir}/udev/cdrom_id \ | ||
| 755 | ${rootlibexecdir}/udev/collect \ | ||
| 756 | ${rootlibexecdir}/udev/dmi_memory_id \ | ||
| 757 | ${rootlibexecdir}/udev/fido_id \ | ||
| 758 | ${rootlibexecdir}/udev/findkeyboards \ | ||
| 759 | ${rootlibexecdir}/udev/iocost \ | ||
| 760 | ${rootlibexecdir}/udev/keyboard-force-release.sh \ | ||
| 761 | ${rootlibexecdir}/udev/keymap \ | ||
| 762 | ${rootlibexecdir}/udev/mtd_probe \ | ||
| 763 | ${rootlibexecdir}/udev/scsi_id \ | ||
| 764 | ${rootlibexecdir}/udev/v4l_id \ | ||
| 765 | ${rootlibexecdir}/udev/keymaps \ | ||
| 766 | ${rootlibexecdir}/udev/rules.d/50-udev-default.rules \ | ||
| 767 | ${rootlibexecdir}/udev/rules.d/60-autosuspend.rules \ | ||
| 768 | ${rootlibexecdir}/udev/rules.d/60-autosuspend-chromiumos.rules \ | ||
| 769 | ${rootlibexecdir}/udev/rules.d/60-block.rules \ | ||
| 770 | ${rootlibexecdir}/udev/rules.d/60-cdrom_id.rules \ | ||
| 771 | ${rootlibexecdir}/udev/rules.d/60-dmi-id.rules \ | ||
| 772 | ${rootlibexecdir}/udev/rules.d/60-drm.rules \ | ||
| 773 | ${rootlibexecdir}/udev/rules.d/60-evdev.rules \ | ||
| 774 | ${rootlibexecdir}/udev/rules.d/60-fido-id.rules \ | ||
| 775 | ${rootlibexecdir}/udev/rules.d/60-infiniband.rules \ | ||
| 776 | ${rootlibexecdir}/udev/rules.d/60-input-id.rules \ | ||
| 777 | ${rootlibexecdir}/udev/rules.d/60-persistent-alsa.rules \ | ||
| 778 | ${rootlibexecdir}/udev/rules.d/60-persistent-input.rules \ | ||
| 779 | ${rootlibexecdir}/udev/rules.d/60-persistent-storage.rules \ | ||
| 780 | ${rootlibexecdir}/udev/rules.d/60-persistent-storage-mtd.rules \ | ||
| 781 | ${rootlibexecdir}/udev/rules.d/60-persistent-storage-tape.rules \ | ||
| 782 | ${rootlibexecdir}/udev/rules.d/60-persistent-v4l.rules \ | ||
| 783 | ${rootlibexecdir}/udev/rules.d/60-sensor.rules \ | ||
| 784 | ${rootlibexecdir}/udev/rules.d/60-serial.rules \ | ||
| 785 | ${rootlibexecdir}/udev/rules.d/61-autosuspend-manual.rules \ | ||
| 786 | ${rootlibexecdir}/udev/rules.d/64-btrfs.rules \ | ||
| 787 | ${rootlibexecdir}/udev/rules.d/70-camera.rules \ | ||
| 788 | ${rootlibexecdir}/udev/rules.d/70-joystick.rules \ | ||
| 789 | ${rootlibexecdir}/udev/rules.d/70-memory.rules \ | ||
| 790 | ${rootlibexecdir}/udev/rules.d/70-mouse.rules \ | ||
| 791 | ${rootlibexecdir}/udev/rules.d/70-power-switch.rules \ | ||
| 792 | ${rootlibexecdir}/udev/rules.d/70-touchpad.rules \ | ||
| 793 | ${rootlibexecdir}/udev/rules.d/75-net-description.rules \ | ||
| 794 | ${rootlibexecdir}/udev/rules.d/75-probe_mtd.rules \ | ||
| 795 | ${rootlibexecdir}/udev/rules.d/78-sound-card.rules \ | ||
| 796 | ${rootlibexecdir}/udev/rules.d/80-drivers.rules \ | ||
| 797 | ${rootlibexecdir}/udev/rules.d/80-net-setup-link.rules \ | ||
| 798 | ${rootlibexecdir}/udev/rules.d/81-net-dhcp.rules \ | ||
| 799 | ${rootlibexecdir}/udev/rules.d/90-vconsole.rules \ | ||
| 800 | ${rootlibexecdir}/udev/rules.d/90-iocost.rules \ | ||
| 801 | ${rootlibexecdir}/udev/rules.d/README \ | ||
| 802 | ${sysconfdir}/udev \ | ||
| 803 | ${sysconfdir}/init.d/systemd-udevd \ | ||
| 804 | ${systemd_system_unitdir}/*udev* \ | ||
| 805 | ${systemd_system_unitdir}/*.wants/*udev* \ | ||
| 806 | ${base_bindir}/systemd-hwdb \ | ||
| 807 | ${base_bindir}/udevadm \ | ||
| 808 | ${base_sbindir}/udevadm \ | ||
| 809 | ${systemd_system_unitdir}/systemd-hwdb-update.service \ | ||
| 810 | " | ||
| 811 | |||
| 812 | FILES:udev-bash-completion = "${datadir}/bash-completion/completions/udevadm" | ||
| 813 | FILES:udev-hwdb = "${rootlibexecdir}/udev/hwdb.d \ | ||
| 814 | " | ||
| 815 | |||
| 816 | RCONFLICTS:${PN} = "tiny-init ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'resolvconf', '', d)}" | ||
| 817 | |||
| 818 | INITSCRIPT_PACKAGES = "udev" | ||
| 819 | INITSCRIPT_NAME:udev = "systemd-udevd" | ||
| 820 | INITSCRIPT_PARAMS:udev = "start 03 S ." | ||
| 821 | |||
| 822 | python __anonymous() { | ||
| 823 | if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d): | ||
| 824 | d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1") | ||
| 825 | |||
| 826 | if bb.utils.contains('DISTRO_FEATURES', 'systemd-resolved', True, False, d) and not bb.utils.contains('PACKAGECONFIG', 'nss-resolve resolved', True, False, d): | ||
| 827 | bb.error("DISTRO_FEATURES[systemd-resolved] requires PACKAGECONFIG[nss-resolve, resolved]") | ||
| 828 | |||
| 829 | if bb.utils.contains('PACKAGECONFIG', 'repart', True, False, d) and not bb.utils.contains('PACKAGECONFIG', 'openssl', True, False, d): | ||
| 830 | bb.error("PACKAGECONFIG[repart] requires PACKAGECONFIG[openssl]") | ||
| 831 | |||
| 832 | if bb.utils.contains('PACKAGECONFIG', 'homed', True, False, d) and not bb.utils.contains('PACKAGECONFIG', 'userdb openssl cryptsetup', True, False, d): | ||
| 833 | bb.error("PACKAGECONFIG[homed] requires PACKAGECONFIG[userdb], PACKAGECONFIG[openssl] and PACKAGECONFIG[cryptsetup]") | ||
| 834 | } | ||
| 835 | |||
| 836 | python do_warn_musl() { | ||
| 837 | if d.getVar('TCLIBC') == "musl": | ||
| 838 | bb.warn("Using systemd with musl is not recommended since it is not supported upstream and some patches are known to be problematic.") | ||
| 839 | } | ||
| 840 | addtask warn_musl before do_configure | ||
| 841 | |||
| 842 | ALTERNATIVE:${PN} = "halt reboot shutdown poweroff runlevel ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'resolv-conf', '', d)}" | ||
| 843 | |||
| 844 | ALTERNATIVE_TARGET[resolv-conf] = "${sysconfdir}/resolv-conf.systemd" | ||
| 845 | ALTERNATIVE_LINK_NAME[resolv-conf] = "${sysconfdir}/resolv.conf" | ||
| 846 | ALTERNATIVE_PRIORITY[resolv-conf] ?= "50" | ||
| 847 | |||
| 848 | ALTERNATIVE_TARGET[halt] = "${base_bindir}/systemctl" | ||
| 849 | ALTERNATIVE_LINK_NAME[halt] = "${base_sbindir}/halt" | ||
| 850 | ALTERNATIVE_PRIORITY[halt] ?= "300" | ||
| 851 | |||
| 852 | ALTERNATIVE_TARGET[reboot] = "${base_bindir}/systemctl" | ||
| 853 | ALTERNATIVE_LINK_NAME[reboot] = "${base_sbindir}/reboot" | ||
| 854 | ALTERNATIVE_PRIORITY[reboot] ?= "300" | ||
| 855 | |||
| 856 | ALTERNATIVE_TARGET[shutdown] = "${base_bindir}/systemctl" | ||
| 857 | ALTERNATIVE_LINK_NAME[shutdown] = "${base_sbindir}/shutdown" | ||
| 858 | ALTERNATIVE_PRIORITY[shutdown] ?= "300" | ||
| 859 | |||
| 860 | ALTERNATIVE_TARGET[poweroff] = "${base_bindir}/systemctl" | ||
| 861 | ALTERNATIVE_LINK_NAME[poweroff] = "${base_sbindir}/poweroff" | ||
| 862 | ALTERNATIVE_PRIORITY[poweroff] ?= "300" | ||
| 863 | |||
| 864 | ALTERNATIVE_TARGET[runlevel] = "${base_bindir}/systemctl" | ||
| 865 | ALTERNATIVE_LINK_NAME[runlevel] = "${base_sbindir}/runlevel" | ||
| 866 | ALTERNATIVE_PRIORITY[runlevel] ?= "300" | ||
| 867 | |||
| 868 | pkg_postinst:${PN}:libc-glibc () { | ||
| 869 | if ${@bb.utils.contains('PACKAGECONFIG', 'myhostname', 'true', 'false', d)}; then | ||
| 870 | sed -e '/^hosts:/s/\s*\<myhostname\>//' \ | ||
| 871 | -e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 myhostname \3\4\5/' \ | ||
| 872 | -i $D${sysconfdir}/nsswitch.conf | ||
| 873 | fi | ||
| 874 | if ${@bb.utils.contains('PACKAGECONFIG', 'nss', 'true', 'false', d)}; then | ||
| 875 | sed -e 's#\(^passwd:.*\)#\1 systemd#' \ | ||
| 876 | -e 's#\(^group:.*\)#\1 systemd#' \ | ||
| 877 | -e 's#\(^shadow:.*\)#\1 systemd#' \ | ||
| 878 | -i $D${sysconfdir}/nsswitch.conf | ||
| 879 | fi | ||
| 880 | } | ||
| 881 | |||
| 882 | pkg_prerm:${PN}:libc-glibc () { | ||
| 883 | if ${@bb.utils.contains('PACKAGECONFIG', 'myhostname', 'true', 'false', d)}; then | ||
| 884 | sed -e '/^hosts:/s/\s*\<myhostname\>//' \ | ||
| 885 | -e '/^hosts:/s/\s*myhostname//' \ | ||
| 886 | -i $D${sysconfdir}/nsswitch.conf | ||
| 887 | fi | ||
| 888 | if ${@bb.utils.contains('PACKAGECONFIG', 'nss', 'true', 'false', d)}; then | ||
| 889 | sed -e '/^passwd:/s#\s*systemd##' \ | ||
| 890 | -e '/^group:/s#\s*systemd##' \ | ||
| 891 | -e '/^shadow:/s#\s*systemd##' \ | ||
| 892 | -i $D${sysconfdir}/nsswitch.conf | ||
| 893 | fi | ||
| 894 | } | ||
| 895 | |||
| 896 | PACKAGE_WRITE_DEPS += "qemu-native" | ||
| 897 | pkg_postinst:udev-hwdb () { | ||
| 898 | if test -n "$D"; then | ||
| 899 | $INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX} rootlibexecdir="${rootlibexecdir}" PREFERRED_PROVIDER_udev="${PREFERRED_PROVIDER_udev}" base_bindir="${base_bindir}" | ||
| 900 | else | ||
| 901 | udevadm hwdb --update | ||
| 902 | fi | ||
| 903 | } | ||
| 904 | |||
| 905 | pkg_prerm:udev-hwdb () { | ||
| 906 | rm -f $D${sysconfdir}/udev/hwdb.bin | ||
| 907 | } | ||
