Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
common/desktop-exports: don't dereference target symlink on upgrades #7
Conversation
|
That's indeed needed! Thanks a lot for the detailed description and patch! |
didrocks
merged commit 30f0a5c
into
Ubuntu:master
Sep 7, 2016
|
Thanks! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
jdstrand commentedAug 24, 2016
On install, $SNAP_USER_DATA/.themes is created and points to
$SNAP/usr/share/themes. On upgrade $SNAP_USER_DATA is copied from the previous
dir (eg, 'x1') to the new version (eg, 'x2') such that $SNAP_USER_DATA/.themes
points to the previous version's $SNAP/usr/share/themes. There is logic to
account for this in common/desktop-exports and it tries to:
ln -sf $SNAP/usr/share/themes $SNAP_USER_DATA/.themes
Because $SNAP_USER_DATA/.themes is a valid symlink, it is dereferenced and
tries to create $SNAP/usr/share/themes/themes, which is of course a readonly
directly and fails with:
ln: failed to create symbolic link '.../x2/.themes/themes': Read-only file
system
The script should instead use '-n' so that $SNAP_USER_DATA/.themes is updated
as intended.