mirror of
https://github.com/foo-dogsquared/website.git
synced 2025-01-31 19:57:57 +00:00
40 lines
1.0 KiB
Diff
40 lines
1.0 KiB
Diff
diff --git a/modules/home-manager/fetch-mutable-files.nix b/modules/home-manager/fetch-mutable-files.nix
|
|
new file mode 100644
|
|
index 0000000..9c66e05
|
|
--- /dev/null
|
|
+++ b/modules/home-manager/fetch-mutable-files.nix
|
|
@@ -0,0 +1,33 @@
|
|
+{ config, options, lib, pkgs, ... }:
|
|
+
|
|
+let
|
|
+ cfg = config.home.mutableFiles;
|
|
+ file = { config, name, ... }: {
|
|
+ };
|
|
+in
|
|
+{
|
|
+ options.home.mutableFile = lib.mkOption {
|
|
+ type = with lib.types; attrsOf (submodule file);
|
|
+ default = { };
|
|
+ description = lib.mkDoc ''
|
|
+ An attribute set of mutable files and directories to be fetched into the
|
|
+ home directory.
|
|
+ '';
|
|
+ example = lib.literalExpression ''
|
|
+ "''${config.xdg.userDirs.documents}/dotfiles" = {
|
|
+ url = "https://github.com/foo-dogsquared/dotfiles.git";
|
|
+ type = "git";
|
|
+ };
|
|
+
|
|
+ "''${config.xdg.userDirs.documents}/top-secret" = {
|
|
+ url = "https://example.com/file.zip";
|
|
+ type = "fetch";
|
|
+ };
|
|
+ '';
|
|
+ };
|
|
+
|
|
+ config = {
|
|
+ systemd.user.services.fetch-mutable-files = {
|
|
+ };
|
|
+ };
|
|
+}
|