modemmanager-next: make sure required plugins are installed [chromiumos/overlays/chromiumos-overlay : master]

14 views
Skip to first unread message

ChromeOS bot (Gerrit)

unread,
Apr 4, 2017, 11:33:53 AM4/4/17
to Ben Chan, ChromeOS Commit Bot, Mike Frysinger

ChromeOS bot merged this change.

View Change

modemmanager-next: make sure required plugins are installed

To save space in the Chrome OS root filesystem, we remove all modem
plugins except for those explicitly whitelisted when building
ModemManager. However, the current approach fails to detect if a
whitelisted plugin is missing (e.g. when the plugin library is renamed).

The CL modifies the modemmanager-next ebuild to check if all whitelisted
plugins are indeed installed.

BUG=chromium:707896
CQ-DEPEND=CL:466686
TEST=Verify that all required modem plugins are installed.

Change-Id: Iafaa5f646b125d56ff8fd4fd05bbce8e97fcb904
Reviewed-on: https://chromium-review.googlesource.com/466766
Commit-Ready: Ben Chan <ben...@chromium.org>
Tested-by: Ben Chan <ben...@chromium.org>
Reviewed-by: Ben Chan <ben...@chromium.org>
---
M net-misc/modemmanager-next/modemmanager-next-9999.ebuild
1 file changed, 23 insertions(+), 12 deletions(-)

diff --git a/net-misc/modemmanager-next/modemmanager-next-9999.ebuild b/net-misc/modemmanager-next/modemmanager-next-9999.ebuild
index 39626c6..3713e39 100644
--- a/net-misc/modemmanager-next/modemmanager-next-9999.ebuild
+++ b/net-misc/modemmanager-next/modemmanager-next-9999.ebuild
@@ -104,18 +104,29 @@
# service is received. We do not want this behaviour.
find "${D}" -name 'org.freedesktop.ModemManager1.service' -delete

- # Only install plugins for supported modems to conserve space on the
- # root filesystem.
- find "${D}" -name 'libmm-plugin-*.so' ! \( \
- -name 'libmm-plugin-altair-lte.so' -o \
- -name 'libmm-plugin-generic.so' -o \
- -name 'libmm-plugin-huawei.so' -o \
- -name 'libmm-plugin-longcheer.so' -o \
- -name 'libmm-plugin-novatel-lte.so' -o \
- -name 'libmm-plugin-samsung.so' -o \
- -name 'libmm-plugin-telit.so' -o \
- -name 'libmm-plugin-zte.so' \
- \) -delete
+ # Only install the following plugins for supported modems to conserve
+ # space on the root filesystem.
+ local plugins=(
+ altair-lte
+ generic
+ huawei
+ longcheer
+ novatel-lte
+ samsung
+ telit
+ zte
+ )
+ local plugins_regex=".*/libmm-plugin-($(IFS='|'; echo "${plugins[*]}")).so"
+
+ find "${D}" -regextype posix-extended \
+ -name 'libmm-plugin-*.so' \
+ ! -regex "${plugins_regex}" \
+ -delete
+
+ local found_plugins="$(find "${D}" -regextype posix-extended \
+ -regex "${plugins_regex}" | wc -l)"
+ [[ "${found_plugins}" == "${#plugins[@]}" ]] || \
+ die "Expects ${#plugins[@]} plugins, but ${found_plugins} found."

# Install init scripts.
if use systemd; then

To view, visit change 466766. To unsubscribe, visit settings.

Gerrit-Project: chromiumos/overlays/chromiumos-overlay
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Iafaa5f646b125d56ff8fd4fd05bbce8e97fcb904
Gerrit-Change-Number: 466766
Gerrit-PatchSet: 4
Gerrit-Owner: Ben Chan <ben...@chromium.org>
Gerrit-Reviewer: Ben Chan <ben...@chromium.org>
Gerrit-Reviewer: Mike Frysinger <vap...@chromium.org>
Gerrit-CC: ChromeOS Commit Bot <chromeos-...@chromium.org>
Reply all
Reply to author
Forward
0 new messages