blob: 7837393926f6326a9c5ae0bf6f753e462af4e1dc (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
{ lib, makeWrapper, symlinkJoin, gnome, plugins }:
symlinkJoin {
name = "evolution-with-plugins";
paths = [ gnome.evolution-data-server ] ++ plugins;
nativeBuildInputs = [ makeWrapper ];
postBuild = ''
for i in $out/bin/* $out/libexec/**; do
if [ ! -d $i ]; then
echo wrapping $i
wrapProgram $i --set EDS_EXTRA_PREFIXES "${lib.concatStringsSep ":" plugins}"
fi
done
fixSymlink () {
local link=$1
local target=$(readlink $link);
local newtarget=$(sed "s@/nix/store/[^/]*/@$out/@" <<< "$target")
if [[ $target != $newtarget ]] && [[ -d $newtarget ]]; then
echo fixing link to point to $newtarget instead of $target
rm $link
ln -s $newtarget $link
fi
}
fixSymlink $out/share/dbus-1/service
fixSymlink $out/lib/systemd/user
for i in $out/share/dbus-1/services/*.service $out/lib/systemd/user/*.service; do
echo fixing service file $i to point to $out
sed -i "s@/nix/store/[^/]*/@$out/@" $i
done
'';
}
|