7b88c9c644
sane.fs: dont have local-fs.target depend on any of my (persistence) bind mounts
...
otherwise it's too easy for local-fs to hang (/mnt/persist/private), or fail (/mnt/pool), and i lose critical things like *networking*
this was only working because on servo the /mnt/persist/private deps caused a cycle and systemd just _removed_ local-fs.target
2024-11-13 12:05:31 +00:00
388c58f656
servo: slim dependencies so that local-fs.target can be reached even if my media drives are inaccessible
...
this means some services which need access (like sftpgo) fail to start if the drive is unavailable
2024-11-11 20:40:13 +00:00
705a7a83b1
fs: overwrite symlinks/data on deploy
2024-10-04 09:26:50 +00:00
80c67caf19
modules/fs: remove unused symlink.targetName
option
2024-09-30 15:18:32 +00:00
1eea81c4ff
refactor: sane.fs: lift acl
up to the toplevel; drop generated
options
2024-09-30 15:15:30 +00:00
e29842aa9d
sane.fs: simplify
2024-09-30 10:19:39 +00:00
50c52683ff
sane.fs: remove unused mount.mountConfig
, mount.unitConfig
options
2024-09-30 10:19:39 +00:00
ca85dac4ac
sane.fs: make bind
a required sub-option of mount
2024-09-30 10:19:39 +00:00
e52f57f5a2
sane.fs: remove unused mount.depends
2024-09-30 10:19:39 +00:00
49b5da6385
sane.fs: dont generate systemd services for every file/dir/symlink
...
that's handled by systemd-tmpfiles now
2024-09-30 10:19:39 +00:00
572dd5854d
WIP: sane.fs: remove wantedBy/wantedBeforeBy options
2024-09-30 10:19:39 +00:00
48c81610a5
sane.fs: remove public access to the "unit" fields
...
fs entries soon won't correspond to systemd units, and hence that option's a bit nonsensical
2024-09-30 09:10:40 +00:00
6983dbe8c4
sane.fs: fix so my tmpfiles.d always runs before anything else (like e.g. /var/lib stuff)
2024-09-30 05:44:42 +00:00
c71d2c846c
sane.fs: symlink files into place using systemd.tmpfiles
2024-09-30 05:43:51 +00:00
3adbbe5fa7
/mnt/$host/home: run as user instead of as root
2024-08-03 15:13:04 +00:00
cf20230d96
sane.fs: cleanup
...
plumb systemd.{mounts,services} instead of the less detailed 'systemd'
2024-08-02 08:01:38 +00:00
9dbb2a6266
sane.fs: take in the role of generating systemd.mounts files
2024-08-02 07:33:21 +00:00
c50a4d1d71
static-nix-shell: fix mkBash
scripts to actually be invokable from the CLI
...
they need the `bash` package! how did this work before?
2024-06-15 07:42:04 +00:00
d5643a6a5d
assorted static-nix-shell packages: use srcRoot
2024-02-25 17:37:38 +00:00
52b8cd0209
modules/persist: ensure backing directory is created *before* we mount
2024-02-25 07:22:50 +00:00
af2f97d61e
fs: ensure-file: don't error if the file already exists
2024-02-23 11:29:14 +00:00
5b8f13d9cc
fs: notice when a fs entry is set to two incompatible types (e.g. symlink + dir) and error
2024-02-23 11:24:32 +00:00
c2696c1cd9
gnome-keyring: use sane.fs abstractions to write out the keyrings
2024-02-23 08:57:41 +00:00
6addf5a3b2
fs: symlink: add an option by which to control the symlink target name
2023-09-12 04:41:32 +00:00
51ecf1b54b
sxmo: fix sxmo_hook_init.sh -> sxmo_hook_start.sh
2023-09-05 17:31:33 +00:00
f62c844aaf
modules: fs: allow symlink target to be a path
2023-09-05 17:21:02 +00:00
ded5d94d69
modules: fs: add a "text" type to populate static text files when symlinks wont do
2023-08-31 12:56:30 +00:00
23e95ba2ba
modules: fs: symlink.text: allow specifying it multiple times
2023-07-18 02:17:25 +00:00
23fb37a3e9
fs: have nodes require
their parent instead of the weaker want
...
this may fix it so spurious (failed) mounts of ~/private *don't* create a bunch of directories that later cause a real mount to be impossible
2023-07-10 05:58:30 +00:00
db72f5e11f
fs: generated.script.scriptArgs -> generated.command
2023-07-08 11:15:23 +00:00
8753e5e0c6
fs: remove legacy generated.script.script
option
2023-07-08 11:15:23 +00:00
3ce2716fbe
fs: factor out the ensureSymlink/ensureDir/ensurePerms scripts
2023-07-08 10:35:10 +00:00
e9293dbe07
fs: fix raciness that was causing ensure-xyz
services to run multiple times per boot
2023-07-08 09:08:59 +00:00
f18d624fd9
fs: avoid creating a new script for every fs entry
2023-07-08 09:00:49 +00:00
89f28e63b4
fs: leave a note about trying lazyAttrs
2023-05-08 09:50:10 +00:00
adf72fc9d4
modules/fs: escape shell args
2023-03-22 19:52:04 +00:00
6ca3e7086e
merge: simplify the implementation and make fully compatible with lib.mkMerge
2023-01-09 11:14:59 +00:00
9ca6a1c907
way overcomplicated way to merge toplevel config
2023-01-09 09:42:17 +00:00
b6208e1a19
fs: allow specifying text for a symlink directly
2023-01-06 15:26:39 +00:00
19c254c266
fs: make symlinking more resilient when something's already at the location
2023-01-06 14:51:25 +00:00
e446bfba58
fs: fix eval error when told about a mount but not told about anything *in* that mount
2023-01-06 13:27:27 +00:00
43a46af43b
impermanence: cleanup backing directory creation. this should let me remove the per-store /home/<user> perms hack
2023-01-06 09:56:06 +00:00
c18dd9636d
fs: symlinking: fix recursive links (don't follow links when creating new ones)
2023-01-06 05:32:31 +00:00
3db388b105
servo: relocate ext
device to /mnt/impermanence/ext and fixup deps
2023-01-04 12:12:30 +00:00
2ba6116f10
fs/impermanence: more precisely control unit dependencies/ordering
2023-01-04 11:22:26 +00:00
4d9c15f9b8
fs: fix file mode even if not newly created
2023-01-04 08:12:53 +00:00
2c48e61854
fs: fix mode of deployed files; simplify
2023-01-04 07:14:01 +00:00
f89f756489
fs: create symlinks at multi-user target by default
2023-01-04 06:32:53 +00:00
c0da19951b
fs: fix symlink ownership/perms
2023-01-04 06:28:44 +00:00
5fb67306e4
fs: rework for dir
to not be mandatory
2023-01-04 06:17:34 +00:00