From a91719d83aacd9f1679c44d32703e06944a439af Mon Sep 17 00:00:00 2001 From: andrey_varnavskiy Date: Fri, 6 Dec 2024 14:37:51 +0500 Subject: [PATCH] add obsidian --- home-manager/modules/obsidian.nix | 32 +++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 home-manager/modules/obsidian.nix diff --git a/home-manager/modules/obsidian.nix b/home-manager/modules/obsidian.nix new file mode 100644 index 0000000..d802ecd --- /dev/null +++ b/home-manager/modules/obsidian.nix @@ -0,0 +1,32 @@ +{ user, pkgs, ... }: +let + vaultDir = "/home/${user}/para"; + gitSyncObsidian = pkgs.writeScriptBin "git-sync-obsidian" '' + #!/bin/sh + + VAULT_DIR="${vaultDir}" + cd "$VAULT_DIR" || exit 1 + git add . + git commit -m "$(date '+%Y-%m-%d %H:%M:%S')" || exit 0 + ''; +in { + home.packages = [ gitSyncObsidian ]; + + systemd.user.services.git-sync-obsidian = { + Unit.Description = "Commit Obsidian Vault changes with git"; + Service = { + ExecStart = "${gitSyncObsidian}/bin/git-sync-obsidian"; + Type = "simple"; + }; + Install.WantedBy = [ "timers.target" ]; + }; + + systemd.user.timers.git-sync-obsidian = { + Unit.Description = "Run Git Sync for Obsidian Vault"; + Timer = { + OnCalendar = "*:0/15"; + Persistent = true; + }; + Install.WantedBy = [ "timers.target" ]; + }; +}