Update spotify config handling

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2024-08-30 12:06:25 +03:00
parent 0c2dee2ecb
commit 92b61345d5
10 changed files with 44 additions and 77 deletions

View File

@@ -0,0 +1,13 @@
{ lib, pkgs, ... }:
{
keyValue = lib.meta.getExe (
pkgs.writeShellApplication {
name = "merge-key-value";
runtimeInputs = with pkgs; [
gnugrep
coreutils
];
text = builtins.readFile ./key-value.sh;
}
);
}

View File

@@ -0,0 +1,19 @@
SOURCE_FILE=$(realpath -m "$1")
TARGET_FILE=$(realpath -m "$2")
mkdir -p "$(dirname "${TARGET_FILE}")"
TEMP_FILE=$(mktemp)
cat "${SOURCE_FILE}" > "${TEMP_FILE}"
if [[ -f "${TARGET_FILE}" ]]; then
while IFS='=' read -r key value; do
if ! grep -q "^${key}=" "${TEMP_FILE}"; then
echo "${key}=${value}" >> "${TEMP_FILE}"
fi
done < "${TARGET_FILE}"
fi
mv "${TEMP_FILE}" "${TARGET_FILE}"
echo "Configuration file ${TARGET_FILE} has been updated."