2024-02-28 14:19:45 +00:00
|
|
|
{ config, lib, ... }:
|
2024-02-23 06:16:30 +00:00
|
|
|
{
|
|
|
|
sane.user.persist.byStore.plaintext = [
|
|
|
|
"archive"
|
|
|
|
"dev"
|
|
|
|
# TODO: records should be private
|
|
|
|
"records"
|
|
|
|
"ref"
|
|
|
|
"tmp"
|
|
|
|
"use"
|
2024-02-27 20:48:38 +00:00
|
|
|
"Books/local"
|
2024-02-23 06:16:30 +00:00
|
|
|
"Music"
|
2024-02-27 20:46:25 +00:00
|
|
|
"Pictures/albums"
|
|
|
|
"Pictures/cat"
|
|
|
|
"Pictures/from"
|
|
|
|
"Pictures/Screenshots" #< XXX: something is case-sensitive about this?
|
|
|
|
"Pictures/Photos"
|
2024-02-27 18:48:59 +00:00
|
|
|
"Videos/local"
|
2024-02-23 06:16:30 +00:00
|
|
|
|
|
|
|
# these are persisted simply to save on RAM.
|
|
|
|
# ~/.cache/nix can become several GB.
|
|
|
|
# mesa_shader_cache is < 10 MB.
|
|
|
|
# TODO: integrate with sane.programs.sandbox?
|
|
|
|
".cache/mesa_shader_cache"
|
|
|
|
".cache/nix"
|
|
|
|
];
|
|
|
|
sane.user.persist.byStore.private = [
|
|
|
|
"knowledge"
|
|
|
|
];
|
|
|
|
|
|
|
|
# convenience
|
2024-02-28 14:19:45 +00:00
|
|
|
sane.user.fs = let
|
|
|
|
persistEnabled = config.sane.persist.enable;
|
|
|
|
in {
|
|
|
|
".persist/private" = lib.mkIf persistEnabled { symlink.target = config.sane.persist.stores.private.origin; };
|
|
|
|
".persist/plaintext" = lib.mkIf persistEnabled { symlink.target = config.sane.persist.stores.plaintext.origin; };
|
|
|
|
".persist/ephemeral" = lib.mkIf persistEnabled { symlink.target = config.sane.persist.stores.cryptClearOnBoot.origin; };
|
2024-02-23 06:20:21 +00:00
|
|
|
|
2024-02-28 14:19:45 +00:00
|
|
|
"nixos".symlink.target = "dev/nixos";
|
2024-02-23 06:20:21 +00:00
|
|
|
|
2024-02-28 14:19:45 +00:00
|
|
|
"Books/servo".symlink.target = "/mnt/servo/media/Books";
|
|
|
|
"Videos/servo".symlink.target = "/mnt/servo/media/Videos";
|
|
|
|
"Pictures/servo-macros".symlink.target = "/mnt/servo/media/Pictures/macros";
|
|
|
|
};
|
2024-02-23 06:16:30 +00:00
|
|
|
}
|