{
config,
lib,
...
}: {
u.bookmarks = let
home = config.home.homeDirectory;
in
lib.mkDefault [
{
href = "file://${home}";
name = "Home";
icon = "user-home";
}
{
href = "file://${home}/Desktop";
name = "Desktop";
icon = "user-desktop";
}
{
href = "file://${home}/Downloads";
name = "Downloads";
icon = "folder-downloads";
}
{
href = "file:///tmp";
name = "tmp";
icon = "folder-temp";
}
{
href = "trash:/";
name = "Trash";
icon = "user-trash";
}
{
href = "remote:/";
name = "Network";
icon = "folder-network";
}
];
# dolphin complains if user-places.xbel is read-only
home.activation.user-places = let
path = "${config.xdg.dataHome}/user-places.xbel";
bookmarks =
lib.strings.concatMapStrings ({
href,
name,
icon,
}: ''
${name}
'')
config.u.bookmarks;
file-content = ''
4
false
false
false
false
false
true
false
false
${bookmarks}
'';
in
lib.hm.dag.entryAfter ["writeBoundary"] ''
[ ! -e "${path}" ] && cat > "${path}" <