-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
modemmanager: add ModemManager to packages #9137
Conversation
Are you really sure that you want to be the maintainer of those packages? I was able to track it down to this repository on Gitlab - https://gitlab.freedesktop.org/mobile-broadband/mobile-broadband-openwrt The author (@aleksander0m) is really active there and would be good if he is aware that you want to add his work to upstream, which is a good approach, but he should be noticed and maybe even become a maintainer. Anyway, the authorship should be kept. I think it will be good if you can split your commit into 3 commits as you are adding 3 packages. The README except the third point is not necessary after all. |
I would be more than happy to give maintainership of these packages I keep in https://gitlab.freedesktop.org/mobile-broadband/mobile-broadband-openwrt to anyone that is willing to maintain them under the official openwrt packages repostory. If Nick wants to do this work, I would be extremely greateful! |
@nickberry17 btw, please note that I updated the MM package to latest 1.10 release a couple of days ago, including the netifd proto handler using the new mmcli key-value output support. |
And... nevermind, I see this was already included in these commits. |
What are your reasons against using umbim instead of all the effort of porting freedesktop code to OpenWrt? |
uqmi and umbim are usually more than enough to setup connectivity, but I could list several corner cases where they're not enough though (e.g. IIRC umbim cannot handle long MBIM packets that would require >1 message in the transaction). libqmi+qmicli, libmbim+mbimcli, and ModemManager+mmcli are by themselves very useful when debugging issues further, or when you want to support also devices that would fall in those corner cases I talk about, or when you need to do things that aren't common (e.g. Sierra Wireless firmware update). In the current setup, ModemManager won't require you to know whether a device is QMI, MBIM or who-knows-what, or whether a given QMI device needs raw-ip settings or 802.3 in the network interface, or whether a specific Huawei modem is able to setup the NCM interface with NDISDUP, or whether your MBIM modem can do DHCP or not.... the settings in /etc/config/network will all look the same. |
Note - to build MM, should add the following ubuntu packages for the host... intltool Anyways - really happy to see traction on this - I've been working with it on ath79 and ar7xxx/ar9xxx with GL-iNet AR-150, and it's good for a 64/16 target on MIPS24Kc on Master with uBlox CATM1 (Sara R4 family) |
$(INSTALL_BIN) ./files/modemmanager.proto $(1)/lib/netifd/proto/modemmanager.sh | ||
endef | ||
|
||
$(eval $(call RequireCommand,xsltproc, \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This will definitely fail on the buildbots. Please create Host packages if needed or add PKG_BUILD_DEPENDS:=package/host
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@nickberry17 why this is marked as resolved when it isn't?
My comments apply to multiple packages. I see you're also adding multiple shell scripts. Could be good to run through shellcheck. |
intltool is not required since MM 1.10, only a new enough gettext is needed. |
Is this the right way to specify these? @neheb
|
No. Only the first one will work. The others need to be added if indeed necessary. |
@nickberry17 Can you look why the DCO check failed for you? |
Fixed |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would also prefer to have 3 commits in this PR: one for each single package, i.e. libmbim, libqmi and modemmanager.
Comment was deleted so let me just clarify the LICENSE[_FILES] request. The libs come with their own utilities which are GPL licensed, not LGPL. Those utilities are not packaged, making it somewhat of a moot point but that's the reasoning. |
LGTM otherwise |
I don't see much else. This looks ready. |
Signed-off-by: Nicholas Smith <nicholas.smith@telcoantennas.com.au>
Signed-off-by: Nicholas Smith <nicholas.smith@telcoantennas.com.au>
Signed-off-by: Nicholas Smith <nicholas.smith@telcoantennas.com.au>
LGTM |
You or somebody else should add host dependencies to build requirements.
|
intltool is actually not required at all (since it was ported to use gettext only), the check in the packaging should be removed. |
Thanks, I had overlooked that. From what I can tell, xsltproc and gettext are already listed as build requirements for the systems that need them, so I think removing the check for intltool should suffice; but can I create an entry for ModemManager in the documentation? Is there no way to specify these host dependencies in the makefile so that they are automatically resolved? |
Why is xsltproc needed? man pages are not being installed for OpenWrt. |
|
@nickberry17 with the default config, most people that have performant modems (using QMI or MBIM) would need to compile their own modemmanager package because by default that support is disabled https://github.com/openwrt/packages/blob/master/net/modemmanager/Config.in That's very inconvenient imho. I think you should either enable that by default or find a way to split that into packages that users can install without compiling. |
Signed-off-by: Nicholas Smith nicholas.smith@telcoantennas.com.au
Maintainer: @nickberry17
Compile tested: mips, telco-electronics-x1, 18.06.2 + 18.06.4 + master; ath79, cf-e5, 18.06.2 + 18.06.4 + master
Run tested: mips, telco-electronics-x1, 18.06.2 + 18.06.4 + master, ran all basic functions; ath79, cf-e5, 18.06.2 + 18.06.4 + master, ran all basic functions
Description: ModemManager 1.10.6, libmbim 1.20.0 and libqmi 1.22.6