main/postmarketos-usb-moded: improve systemd unit override

This changes the override to:

1) use /sys/kernel/config for the configfs location
2) depend on the sys-kernel-config.mount unit, which will automatically
mount configfs
3) depend on modprobing libcomposite
4) create the g1/configs/c.1 path automatically in case it's not created
yet

The configfs.ini file is also updated with the path

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8175>
This commit is contained in:
Clayton Craft
2026-03-20 17:05:42 -07:00
parent 24184654b2
commit 0a1cf811db
3 changed files with 8 additions and 8 deletions
+3 -3
View File
@@ -1,6 +1,6 @@
maintainer="Clayton Craft <clayton@craftyguy.net>"
pkgname=postmarketos-usb-moded
pkgver=3
pkgver=4
pkgrel=0
pkgdesc="Meta package for configuring usb-moded on postmarketOS"
url="https://postmarketos.org"
@@ -108,7 +108,7 @@ systemd() {
}
sha512sums="
231c1cfb991bb4d9f9807bb81e970bc2f63b7ea6e9bb06cf06a698af69b4a9f82f015252ec4c802ad0f8b58456d624f07e62902f04207dc5bac76cc785c296a7 rootfs-etc-usb-moded-configfs.ini
241c1c91ec3696bd5ab02e9a317dbc303fc7989031e5409f31655cd77768b6995e5fa4574e4542fa048eb79e5098d4e17f90aa5ab47e068bac4216a28e1a96bf rootfs-etc-usb-moded-configfs.ini
af6dd318268c9765d4b368b390cb8eca50142d98eeb16cf73b45bdbf43a4cf1598ca9995dcb72e5e2132141cdc0be0f86860c9f4e3856c77a9add9f6131084f3 rootfs-etc-usb-moded-dyn-modes-developer_mode_openrc.ini
7e09c8f5208051a79aa95a377ae4a0dd4381be2d05e3c834d1b2dfcbccbda55248b1f21676ac650916de755b1248cf8c89af03989e4dff0cd52f8a5d000952c6 rootfs-etc-usb-moded-dyn-modes-tethering_mode_openrc.ini
1efbc7621e2423d9a69505d9c23d136e17314d955dd5a1016d49acafe3b02ce42457fae2e472b374b8b950dea076c017a9c6884cbcd57284e6d3b0dfb4813ff9 rootfs-etc-usb-moded-dyn-modes-mtp_ffs_mode_openrc.ini
@@ -118,7 +118,7 @@ af41dc4ceb7255dbb88273916306c6e7e66c879bb67523c9571f9e812c9b36ab00ea666ade49369c
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
79dc304cc5d455135f929a0ba60487f03b1b66d09245d972f685ee5ddabc8414f74159e47bbb13bff862163fa07dd9497a30ab7e32074bff95f2189685d851a2 rootfs-usr-lib-systemd-system-usb-moded.service.d-override.conf
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
9aab1a91a817e2337320ee0fa1bf6133e65e9269631560c1860c3b777adb336d036cebbc2510d1df35a82bf4396d553ff9e2edd0004027c7a3130168f7f50d90 rootfs-usr-bin-usb-moded-developer-mode
@@ -1,2 +1,3 @@
[configfs]
gadget_conf_directory=configs/c.1
gadget_base_directory=/sys/kernel/config/usb_gadget/g1
@@ -1,8 +1,7 @@
[Unit]
After=default.target
After=default.target modprobe@libcomposite.service sys-kernel-config.mount
Requires=modprobe@libcomposite.service sys-kernel-config.mount
[Service]
ExecStartPre=-/usr/bin/killall unudhcpd
ExecStartPre=mkdir -p /config
ExecStartPre=/bin/mount -t configfs none /config
ExecStartPre=-/bin/sh -c 'killall unudhcpd 2>/dev/null'
ExecStartPre=mkdir -p /sys/kernel/config/usb_gadget/g1/configs/c.1