Skip to content

Commit

Permalink
trivial: snap: Cache the correct giomodules
Browse files Browse the repository at this point in the history
Fixes:
'g_io_module_load': /usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so: undefined symbol: g_io_module_load
Failed to load module: /usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so
'g_io_module_load': /usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so: undefined symbol: g_io_module_load
Failed to load module: /usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so
'g_io_module_load': /usr/lib/x86_64-linux-gnu/gio/modules/libgiognomeproxy.so: undefined symbol: g_io_module_load
Failed to load module: /usr/lib/x86_64-linux-gnu/gio/modules/libgiognomeproxy.so
  • Loading branch information
Mario Limonciello authored and superm1 committed Jun 1, 2018
1 parent da052c8 commit e1a39e6
Showing 1 changed file with 36 additions and 1 deletion.
37 changes: 36 additions & 1 deletion contrib/snap/fwupdtool.wrapper
Original file line number Diff line number Diff line change
@@ -1,8 +1,43 @@
#!/bin/sh

export XDG_CACHE_HOME=$SNAP_USER_COMMON/.cache
mkdir -p $XDG_CACHE_HOME
export GIO_MODULE_DIR=$XDG_CACHE_HOME/gio-modules

# don't update between versions, we want to preserve previous data
[ ! -d "$SNAP_USER_DATA/etc" ] && cp -R "$SNAP/etc" "$SNAP_USER_DATA"
[ ! -d "$SNAP_USER_DATA/var" ] && cp -R "$SNAP/var" "$SNAP_USER_DATA"

#determine architecture
if [ "$SNAP_ARCH" = "amd64" ]; then
ARCH="x86_64-linux-gnu"
elif [ "$SNAP_ARCH" = "armhf" ]; then
ARCH="arm-linux-gnueabihf"
elif [ "$SNAP_ARCH" = "arm64" ]; then
ARCH="aarch64-linux-gnu"
else
ARCH="$SNAP_ARCH-linux-gnu"
fi

# re-generate gio modules in local cache
needs_update=true
if [ -f $SNAP_USER_DATA/.last_revision ]; then
. $SNAP_USER_DATA/.last_revision 2>/dev/null
fi
if [ "$SNAP_DESKTOP_LAST_REVISION" = "$SNAP_REVISION" ]; then
needs_update=false
fi
if [ $needs_update = true ]; then
if [ -f $SNAP/usr/lib/$ARCH/glib-2.0/gio-querymodules ]; then
rm -rf $GIO_MODULE_DIR
mkdir -p $GIO_MODULE_DIR
ln -s $SNAP/usr/lib/$ARCH/gio/modules/*.so $GIO_MODULE_DIR
$SNAP/usr/lib/$ARCH/glib-2.0/gio-querymodules $GIO_MODULE_DIR
fi
echo "SNAP_DESKTOP_LAST_REVISION=$SNAP_REVISION" > $SNAP_USER_DATA/.last_revision
fi

export PATH="$SNAP/usr/sbin:$SNAP/usr/bin:$SNAP/sbin:$SNAP/bin:$PATH"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$SNAP/lib:$SNAP/usr/lib:$SNAP/lib/x86_64-linux-gnu:$SNAP/usr/lib/x86_64-linux-gnu"
export LD_LIBRARY_PATH="$SNAP/lib:$SNAP/usr/lib:$SNAP/lib/$ARCH:$SNAP/usr/lib/$ARCH"
export LD_LIBRARY_PATH=$SNAP_LIBRARY_PATH:$LD_LIBRARY_PATH
exec "$SNAP/usr/lib/fwupd/fwupdtool" "$@"

0 comments on commit e1a39e6

Please sign in to comment.