0a48d79174
fs: introduce some helpers to make writing symlinks easier
2023-01-06 15:38:29 +00:00
b6208e1a19
fs: allow specifying text for a symlink directly
2023-01-06 15:26:39 +00:00
e46ab4ec14
ssh: use sane.persist/sane.fs instead of home-manager to ensure keys
2023-01-06 15:05:01 +00:00
19c254c266
fs: make symlinking more resilient when something's already at the location
2023-01-06 14:51:25 +00:00
1d0cadce85
persist: configure the private
store to symlink everyting by default
2023-01-06 14:44:32 +00:00
e8342b8044
persist: clean up the "byPath" conversions
2023-01-06 14:20:30 +00:00
40e642bfc3
persist: add a 'method' option to allow symlinking in favor of binding
2023-01-06 14:05:49 +00:00
f008565e22
persist: for options common to entries specified by both path and store, move to a common submodule
2023-01-06 13:58:36 +00:00
4ea2835d9d
persist: handle inline acl options more cleanly
2023-01-06 13:47:59 +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
a7bac5de18
persist: convert the sane.persist.home.<store> => mappings back to a strongly-typed module & add a byPath
shorthand
2023-01-06 13:06:39 +00:00
b0950e90f4
persist: prefer mkMerge instead of manually folding attrsets
2023-01-06 12:44:29 +00:00
d8cd0e1f57
persist: fold redundant lines
2023-01-06 12:39:55 +00:00
fd7d67ee05
persist: simplify & remove dead code
2023-01-06 12:28:55 +00:00
1a712b4d47
rename sane.persist.{all -> byPath}
2023-01-06 12:19:03 +00:00
4520e1d1f5
persist: auto-map user-provided store values earlier
2023-01-06 11:56:22 +00:00
841a2a3bcb
persist: change sane.persist.all
to be an attrsOf that maps path to settings
2023-01-06 11:52:28 +00:00
fe816e9110
persist: lift sane.persist.dirs.{home,sys} up one level
2023-01-06 11:29:13 +00:00
426e0c3ae2
persist: lift sane.persist.dirs.all
up to sane.persist.all
2023-01-06 11:24:11 +00:00
a95b91a556
refactor the dirsSubModule type so that we don't reference 'config.sane.persist' while creating options
2023-01-06 10:35:32 +00:00
837e5438c3
persist: document the dirsSubModule
type better
2023-01-06 10:31:01 +00:00
8217b22c86
rename impermanence -> persist
2023-01-06 10:04:51 +00:00
413f9a171b
impermanence: remove /home perms hack
2023-01-06 09:59:29 +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
0977721af5
moby: fix to preserve browser cache across boots
2023-01-04 13:27:20 +00:00
122d3cd7e4
impermanence: fix home perms in ~/private dir
2023-01-04 13:24:23 +00:00
cd5f8054c0
fs: rename "mountpt" -> "origin" to reflect that it doesnt have to be a device
2023-01-04 12:19:32 +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
592d17b725
impermanence: crypt: simplify setup (experimental)
2023-01-04 09:28:59 +00:00
4d9c15f9b8
fs: fix file mode even if not newly created
2023-01-04 08:12:53 +00:00
170008f345
home.files symlinks: port to sane.fs
2023-01-04 07:14:38 +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
5533b586d7
fs: lift depends
out of dir, to toplevel
2023-01-04 04:32:20 +00:00
68c2eb7363
impermanence: clean up the deps for the crypt store
2023-01-04 04:22:17 +00:00
fd79026366
fs: fix loose mount dependency
2023-01-04 04:06:19 +00:00
a76471cb1f
fs: simplify the mount configuration
2023-01-04 03:57:24 +00:00
c94b8299a6
fs: add experimental support for symlink entries
2023-01-04 02:51:07 +00:00
d7c8638fea
impermanence: add a storeDescription field per store
2023-01-04 01:54:13 +00:00
9d7d1acc80
sane.impermanence.dirs.home.<store> is now auto-generated and options can vary across deployments
2023-01-04 01:45:05 +00:00
787857d27f
firefox: update plugin hashes
2023-01-04 01:39:42 +00:00
9c248a8a31
impermanence: cleanup the dirs
submodule
2023-01-04 01:34:19 +00:00
829680fb00
impermanence: simplify dir-acl handling by using a helper
2023-01-04 01:19:22 +00:00
2960b895b6
lib: lift acl type into sane-lib/types
2023-01-04 00:59:52 +00:00
afe684ca2c
modules: impermanence: use sane-lib.path
2023-01-03 14:55:27 +00:00
93f1411522
fs: split helpers out into sane-lib
module
2023-01-03 14:20:02 +00:00
01e44c1f7f
flake.nix: remove unused specialArgs
2023-01-03 14:18:57 +00:00
618e9bd2fa
gocryptfs: place package in system.fsPackages instead of environment.systemPackages (it propagates anyway)
2023-01-03 12:00:49 +00:00
fbc39d0584
modules: fs: move to subdir
2023-01-03 08:27:28 +00:00
2d7b3750cd
impermanence: split the /home/colin perms fix into more appropriate places
2023-01-03 08:25:43 +00:00
e6ccd2e4f7
impermanence: split plaintext store to own file (this will bypass some recursion in the next patch)
2023-01-03 08:02:03 +00:00
d4bf491e9c
impermanence: improve docs
2023-01-03 07:45:19 +00:00
5a2bbcce3b
move plaintext home-dirs out of home-manager module into users module
2023-01-03 07:35:42 +00:00
327e6b536f
impermanence: large refactor, and experimental bind mounting of things from ~/private
2023-01-03 07:22:37 +00:00
bace7403e7
Merge branch 'staging/nixpkgs-2022-12-31'
2023-01-03 03:05:21 +00:00
9e32211c12
impermanence: cange "encryptedClearOnBoot" to a broader "store" argument
...
in the future it can support ~/private as a backing store
2023-01-03 03:04:19 +00:00
edf6bd4455
fs: add a "mount.bind" option & use it for impermanence bind-mounts
2023-01-03 02:45:23 +00:00
a9a14786f9
packages: disable fractal (unused, slow build)
2023-01-02 23:35:43 +00:00
be222c1d70
trust-dns: allow shorthand assignment of record lists
2023-01-02 13:23:52 +00:00
875e923197
declare ~/private in fileSystems and reuse for pamMount
2023-01-02 11:34:02 +00:00
54dd643cf0
trust-dns: make a note about another DNS library we could draw from
2023-01-02 11:33:32 +00:00
3c726f148b
remove some stale references to mobile-nixos
2023-01-02 10:00:20 +00:00
e225e2e704
modules/packages: directly set impermanence.home-dirs instead of working through home-manager
2023-01-02 07:45:05 +00:00
cf0bf8190e
modules/packages: clean up loose typing of sane.packages
2023-01-02 07:16:16 +00:00
b8f7f68d4c
packages: telegram: persist data in private storage
2023-01-02 07:06:58 +00:00
7a3aae8c97
fs: tidy
2022-12-31 12:38:50 +00:00
89e519810d
impermanence: clean up the bind mounts
2022-12-31 12:31:49 +00:00
0e920230ba
impermanence: fix systemd service ordering for crypt mount
2022-12-31 12:18:27 +00:00
6ffae00e17
fs: rename "service" option to "unit" option
2022-12-31 11:31:16 +00:00
be19985440
impermanence: crypt: more robust perms and ordering of backing device
2022-12-31 10:45:43 +00:00
f7e3e7294a
impermanence: transform gocryptfs key generation from activation script to systemd unit
2022-12-31 10:15:08 +00:00
d745e3c1ee
impermanence: remove fuse module: we don't need it now that we're mounting after activation
2022-12-31 09:13:31 +00:00
c1890ce82b
impermanence: cleanup some previously verbose code
2022-12-31 09:09:51 +00:00
53a0b621d8
impermanence: use sane.fs to inherit permissions instead of specifying defaults here
2022-12-31 01:04:49 +00:00
aeb2f63d65
impermanence: defer to fs.nix module for permissions & dir creation
2022-12-31 00:38:15 +00:00
528ffdb58e
add a new 'fs.nix' file i'll use to factor the impermanence stuff better
2022-12-30 14:45:34 +00:00
b6887b305e
impermanence: split out the root-on-tmpfs stuff
2022-12-30 04:35:34 +00:00
08dfc80c98
impermanence: split out sops setup
2022-12-30 04:31:24 +00:00
0a6d88dfc1
impermanence: simplify /etc/ssh/host_keys setup
2022-12-30 03:34:59 +00:00
0819899102
remove dead commented-out code
2022-12-29 18:34:03 +00:00
d3ff68217e
impermanence: enable hyphenated folder names
2022-12-29 18:29:27 +00:00
1a96859994
impermanence: re-enable mpv watch_later dir
2022-12-29 18:10:40 +00:00
af92a2250e
impermanence: fix up circular dependencies and permissions
...
this is now a proof of concept. still has some rough edges.
2022-12-29 18:03:41 +00:00
d00f9b15d7
impermanence: fix typo in permissions service
2022-12-29 17:16:27 +00:00
aa1c1f40cb
WIP: impermanence rework (gut 3rd-party lib)
2022-12-29 16:38:58 +00:00
530b2d6385
impermanence: factor out some helpers for generating fileSystems and services
2022-12-29 08:42:15 +00:00
e6919dd16f
impermanence: use systemd/fileSystems for the crypt mounts, instead of 3rd-party impermanence
2022-12-29 01:17:40 +00:00
8e5ca11259
cleanup gocryptfs mounting
...
there's possibly some latent issues. i think my changes to the gocryptfs
package *might* not be necessary: if you work via the fuse front-door,
it's a lot harder to get it into these weird places.
2022-12-29 01:17:40 +00:00
121936620a
impermanence: add support for encrypted clear-on-boot storage
...
this is useful for when we need to store files to disk purely due to
their size, but don't actually want them to be persisted.
2022-12-29 01:17:40 +00:00
4bdb34775d
consolidate filesystems./ across devices
2022-12-28 01:36:22 +00:00
a0ac7fa98d
snippets: add secret snippets
2022-12-26 09:29:04 +00:00
13f3b322b0
alias to cd ~/Videos
2022-12-26 04:40:21 +00:00
5c25330891
packages: add nheko matrix client
2022-12-26 03:52:04 +00:00
dc6dc2e475
discord: remove the SKIP_HOST_UPDATE hack. it's been upstreamed
2022-12-26 03:30:25 +00:00
c4352fa9bb
packages: move Signal, Discord, Tokodon to private storage
2022-12-26 03:26:50 +00:00
2c6629a658
packages: allow specifying multiple dir
and private
paths
2022-12-26 03:02:19 +00:00