From 7ab89cda7c2cf01a6fbb341b74eb1d232d15b463 Mon Sep 17 00:00:00 2001 From: Martin Berg Alstad Date: Sat, 1 Mar 2025 15:04:56 +0100 Subject: [PATCH] :sparkles: Wildcard encrypt files in secrets dir, util function to load secrets, use apu-key in weather widget --- .gitattributes | 2 +- home-manager/hyprland/hyprpanel/default.nix | 11 +++++++++-- home-manager/secretsLoader.nix | 6 ++++++ 3 files changed, 16 insertions(+), 3 deletions(-) create mode 100644 home-manager/secretsLoader.nix diff --git a/.gitattributes b/.gitattributes index e116224..2f4eec3 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1 +1 @@ -home-manager/secrets/weather-api-key filter=git-crypt diff=git-crypt +home-manager/secrets/* filter=git-crypt diff=git-crypt diff --git a/home-manager/hyprland/hyprpanel/default.nix b/home-manager/hyprland/hyprpanel/default.nix index da6843f..a6a683b 100644 --- a/home-manager/hyprland/hyprpanel/default.nix +++ b/home-manager/hyprland/hyprpanel/default.nix @@ -1,7 +1,13 @@ -{ pkgs, inputs, ... }: +{ + pkgs, + inputs, + lib, + ... +}: let common = import ../../../common.nix; theme = import ../../../theme.nix; + loader = import ../../secretsLoader.nix lib; in { imports = [ inputs.hyprpanel.homeManagerModules.hyprpanel ]; @@ -74,7 +80,8 @@ in }; weather = { unit = "metric"; - location = "Bergen, Norway"; # TODO not working + location = "Bergen, Norway"; + key = loader.loadSecret ../../secrets/weather-api-key; }; }; diff --git a/home-manager/secretsLoader.nix b/home-manager/secretsLoader.nix new file mode 100644 index 0000000..6ab9e0f --- /dev/null +++ b/home-manager/secretsLoader.nix @@ -0,0 +1,6 @@ +lib: + +{ + loadSecret = + filePath: lib.strings.trim (lib.strings.removeSuffix "\n" (builtins.readFile filePath)); +}