main/postmarketos-usb-moded: handle initramfs situation
initramfs starts USB NCM gadget and unudhcpd for SSH login. This requires special handling since unudhpcd is unmanaged by the service manager until the userspace is started. Once entered in userspace, the usb-moded-developer-mode needs to be activated which configures NetworkManager and starts unudhcpd under the service manager. This way, a full handover is possible and the gadgets can be properly switched without any leftovers from the initramfs due to the unmanaged situation. Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8553>
This commit is contained in:
parent
b877e7943b
commit
7a917eee3c
10 changed files with 28 additions and 9 deletions
|
|
@ -1,7 +1,7 @@
|
|||
# pmbootstrap installs this, if systemd is selected in "pmbootstrap init".
|
||||
maintainer="Clayton Craft <clayton@craftyguy.net>"
|
||||
pkgname=postmarketos-base-systemd
|
||||
pkgver=78
|
||||
pkgver=79
|
||||
pkgrel=0
|
||||
pkgdesc="Meta package for running postmarketOS with systemd"
|
||||
url="https://postmarketos.org"
|
||||
|
|
@ -118,7 +118,7 @@ b7c3e70f5e4d88d6df6a8d58f4bb6af3d3051c5130cf13ad86a491fcbf7a69ae33ba31d663946c35
|
|||
bd85f6153d857e1aec191b5fc8c8fc0d87125bf0198bef20d1e91ef40ca7e9ed1209a64ae279f98dc8733969ad6e71e29623180ef2203e386023a950d9ce8269 rootfs-usr-lib-systemd-logind.conf
|
||||
e49972d276441e9da284315bab5f70d8d25ccba5e43d7e7ec6607c34a3d4dfa512f7303d5ce41076819ef24f5dced5acc74001b4d569258269de34da27912466 rootfs-usr-lib-systemd-resolved.conf.d-disable-dnsovertls.conf
|
||||
93ab180810dbd2a1477f7ea0f0959be90f099272fe5840030a0772771c97a066b70068c476d32c6a4610b8f7b9fc5bfcf1d7a93f071cec026553ac6a3b8b5324 rootfs-usr-lib-systemd-resolved.conf.d-disable-mdns.conf
|
||||
2734d023e5b2bab895a1acb940b90c4d9bf580c3dc2ee9ba73a61e1210c682d65367c0541fa34cdda251ebd1d40ab5711bd4965587937cfb066a60f2cb01315d rootfs-usr-lib-systemd-system-preset-90-base.preset
|
||||
351a3791dcdcd74dbd563881bf025a456c0423542650268c22d083ad1edecb303c09614c4a759203a3219f57ebbee408b28f2665aa38efea5933663dec974564 rootfs-usr-lib-systemd-system-preset-90-base.preset
|
||||
bde7052939d1ddde22fe1df86439d3f1b0cd41810911cee7acf26aac08afe1610360cbbd257b3c1a2e5e7409dff27ade8f3a302a38cd1b99c6cc6eed4cc64a78 rootfs-usr-lib-systemd-system--.slice.d-10-oomd-defaults.conf
|
||||
bde7052939d1ddde22fe1df86439d3f1b0cd41810911cee7acf26aac08afe1610360cbbd257b3c1a2e5e7409dff27ade8f3a302a38cd1b99c6cc6eed4cc64a78 rootfs-usr-lib-systemd-system-system.slice.d-10-oomd-defaults.conf
|
||||
cedd159b98ce47ee9d03e5f332c4132c7c3eff32135aa7b7993e19c4867d55aff689b418fc549e139c0ea4690f1094e86efcee7a5bc6cd6998ba99821064a917 rootfs-usr-lib-systemd-system-tmp.mount.d-10-min-memory.conf
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@ enable tuned.service
|
|||
enable tuned-ppd.service
|
||||
enable irqbalance.service
|
||||
enable usb-signaller.service
|
||||
enable usb-moded-developer-mode.service
|
||||
enable dbus-broker.service
|
||||
enable avahi-daemon.service
|
||||
|
||||
|
|
|
|||
|
|
@ -112,8 +112,8 @@ ace852ba267b3408998970df6042603c8bec1d033066d1c30ed65f1be955fee8644b57882898f102
|
|||
69852928464f01757e2f473bd2c2e7ecb4132ecf3e26bdec95932e928dfe9042f59316e0a509fd38bcda88e24dd94bf33e8a88118b5adbec7023d1c13da12f59 00-initramfs-base.files
|
||||
6d91270b96ce0c745391174201dde63b43a73ae6456c2e1138046beef3548580588fedbeae7cc914079162e99343b45d82c6e6a7ee1d03829aae7697ae52f575 00-initramfs-extra-base.files
|
||||
bd72e8b6345a46ec13516c64d78d4fa1a9a18a8db9ab04aac605f9708629453dc65b6fbccd96b58eeb1ea68102ddbcae9dc6b369255c6c6c1fb18ce0bd43ec79 init.sh
|
||||
85bc25e72ce67a2b9ae91bf5486707b35b8a118f527ae7d95f8ce45da5ec61bd77987f69963843a9db7baf692c5635a233f5fbada8417f545866bc4b95c32ba5 init_functions.sh
|
||||
6201869d3731bdbe4330ffe1c6cf66ab48918b4693153e5ad648f87fa1a28c93095a218de66ce9b24d8f13df92042959591293b26fbc64279480a015ea23ce06 init_2nd.sh
|
||||
73a4f59264881d299ed05a97602e053e68e4db91f97cf2cde63e5fb8b57802ae2c2a4a169eabb241fca66c035968024cfca74cfbeacf5c5b8e7269af5db3eba2 init_functions.sh
|
||||
09cf0fcd415a20f421c5b56ac39c273a8ad9467260eee056c6c5e79c7ac1352fbdf73ab6e9620d4a314d876d7908ebac869faa34d11a96b296520388ddc36e8e init_2nd.sh
|
||||
4eca94327274511011967cde1f663b00b1a8182f7dddc3ba19d5c1f0ac094087a154a250c140ca70ac75a2e7c5bb70b03e94fa5eca63a5393efc4a23d025e1c3 init_functions_2nd.sh
|
||||
675e7d5bee39b2df7d322117f8dcaccc274d61beaf4d50ead19bbf2109446d64b1c0aa0c5b4f9846eb6c1c403418f28f6364eff4537ba41120fbfcbc484b7da7 mdev.conf
|
||||
"
|
||||
|
|
|
|||
|
|
@ -90,6 +90,9 @@ fi
|
|||
|
||||
killall udevd syslogd 2>/dev/null
|
||||
|
||||
# kill unudhpcd to allow rootfs to take over with service manager
|
||||
stop_unudhpcd
|
||||
|
||||
# Kill any getty shells that might be running
|
||||
for pid in $(pidof sh); do
|
||||
if ! [ "$pid" = "1" ]; then
|
||||
|
|
|
|||
|
|
@ -1058,6 +1058,9 @@ debug_shell() {
|
|||
|
||||
if [ -n "$have_udc" ]; then
|
||||
setup_usb_acm_configfs
|
||||
else
|
||||
# USB networking was configured, but DHCP server needs to be started
|
||||
start_unudhcpd
|
||||
fi
|
||||
|
||||
# mount pstore, if possible
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
maintainer="Clayton Craft <clayton@craftyguy.net>"
|
||||
pkgname=postmarketos-usb-moded
|
||||
pkgver=8
|
||||
pkgver=9
|
||||
pkgrel=0
|
||||
pkgdesc="Meta package for configuring usb-moded on postmarketOS"
|
||||
url="https://postmarketos.org"
|
||||
|
|
@ -119,12 +119,12 @@ d373201040a911663fd74123e9ef35e43dedfd375eeefe8ca949a3e24737d457a4693e836b1c5ad6
|
|||
3d4e20f9e8e357030ce5f5c73367aef31cebecce48a9b1ff7915731335a83715e0679812959ac9ee41f88447a8636177244c0b9c5109cd8a227caecb9931ed9e rootfs-etc-usb-moded-dyn-modes-tethering_mode_systemd.ini
|
||||
af41dc4ceb7255dbb88273916306c6e7e66c879bb67523c9571f9e812c9b36ab00ea666ade49369cd5846b4552a53add58cd1aea574a496bf53ddd3fbc630922 rootfs-etc-usb-moded-dyn-modes-mtp_ffs_mode_systemd.ini
|
||||
912f0700c87883b55f631cfc3d76e172ff1c21aa57b0c18d1e7b9671ecd6254b1e7565816e3967c68caab196076bf7c8b848375c89185aa4466f4ca7f65231be rootfs-etc-umtprd-umtprd.conf
|
||||
2c838fd0ad66c92386f6159c7d96d3ba940e13834642eb2cb7612d79d6b8832e9bd06b1eb189141f21fa9085d8b43ea514c15d82736ebd6b94533811f5a15f11 rootfs-usr-lib-systemd-system-usb-moded-developer-mode.service
|
||||
56ce2662dd8f88795bd2e9063f20747e1377d896fbcf9e1ae43c90ef511c4a11517d7c673f857cf194070c425f417df8f40ced9b95749ed1df53e1be122a8ef7 rootfs-usr-lib-systemd-system-usb-moded-tethering-mode.service
|
||||
885d47e027657584a4e690c8304f5583ee35bee42d2b502dff5e350fb896d606d5ff3fb9a5900f3851427edc7835f2f7332d8cd7cb4591babdd27c5f2ae7f508 rootfs-usr-lib-systemd-system-usb-moded-developer-mode.service
|
||||
05c4170355c8fcbc96e82df2433daff73d015ef462e1cb3f8f7c0aa08310e018be117f166fa5839fbeb8586b515fbcbf144529be8e8755d8c3a21b54718b07ed rootfs-usr-lib-systemd-system-usb-moded-tethering-mode.service
|
||||
969cfeb3ff0a0153f0d383db18600a3d94e80d39cfb6fb0bae3439c6550785d022852447e93834c50d8d1ec8edc7eec4114db1de64ed454aa9b01f4e6f621e08 rootfs-usr-lib-systemd-system-usb-moded-mtp-mode.service
|
||||
fe4d085730d448e51bbce9e99c3cc7b4662e5fadd6108e5f2e74040f0d4e901132aa7f3367acad183198c5a150862bdef536a6a1968784bf9babc1702c2f16fe rootfs-usr-lib-systemd-system-usb-moded.service.d-override.conf
|
||||
95681a9bb2d5f8d99f51762d09dc4f0c487442a20070ad1439de1309b775ac1752fe60a205389cc74a1ee9026afc4ad984ac3363659a6749792835654a111d7f rootfs-etc-init.d-usb-moded-developer-mode.initd
|
||||
1d8b98508f7969a4ba671866eee5e54261c50362e41b18bfebf004a6ed1e97d01a8eb83e3a33c392cbd00ea1a20f0f004b4794582ef1b71dedbba0fba2dc4602 rootfs-etc-init.d-usb-moded-tethering-mode.initd
|
||||
0981a7cfc53d887997b5342a9add41784ffdfe011cac8510aa78620776ab9a7bf24d4e62d30eb6d2852d52a3ea060c1de074fcea9f4fe017d888b06871e911d0 rootfs-etc-init.d-usb-moded-developer-mode.initd
|
||||
1662006de519b7b45c2d817be974b43d732d166f71c6782e7d136770aadddcc2ea820fcece21bf95e68f578c9ae7ba88867981fff726feab61cdc36efdf5ec6e rootfs-etc-init.d-usb-moded-tethering-mode.initd
|
||||
b8a4d9c8d1e2cde8d6b31bbb3e61d37c05cf2aa1e04cb25c24308839d045205e0604b103d2d60f9834782dcc64ab346cfe8f97797d4d0c86f54e4cfceb6af679 rootfs-etc-init.d-usb-moded-mtp-mode.initd
|
||||
e021a58fcabef47c3806bea14c86def6ba6787be2f725b1b5f9a24a5b0eb5ba8bee2887337b17c9db9a7df84d2b07b8f14da5092f2afeedaf57689b8e5e82ef0 rootfs-usr-bin-usb-moded-developer-mode
|
||||
dbc653b07f220a0fa4533be4ceac65651b19e32c88d66cafd0bcd4ee2cded2627c410917052eb113612cdea1c9e489bbaf290dade0f9b8c897363cb8fe34631f rootfs-usr-bin-usb-moded-tethering-mode
|
||||
|
|
|
|||
|
|
@ -4,6 +4,10 @@ description="USB Moded Developer Mode"
|
|||
command="usb-moded-developer-mode"
|
||||
command_args="up"
|
||||
|
||||
depends() {
|
||||
need net
|
||||
}
|
||||
|
||||
stop() {
|
||||
usb-moded-developer-mode down
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,10 @@ description="USB Moded Tethering Mode"
|
|||
command="usb-moded-tethering-mode"
|
||||
command_args="up"
|
||||
|
||||
depends() {
|
||||
need net
|
||||
}
|
||||
|
||||
stop() {
|
||||
usb-moded-tethering-mode down
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
[Unit]
|
||||
Description=USB Moded Developer Mode
|
||||
Wants=network.target
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
[Unit]
|
||||
Description=USB Moded Tethering Mode
|
||||
Wants=network.target
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue