diff options
author | Carl Richard Theodor Schneider <dev.github@crtified.me> | 2022-06-07 13:35:22 +0200 |
---|---|---|
committer | Carl Richard Theodor Schneider <dev.github@crtified.me> | 2022-10-25 17:35:27 +0200 |
commit | 1526a1b04145ba66e10127c7d6f0ef1a3d30cfcd (patch) | |
tree | 46777a52d8aa7886741e79823a7d7cc4e89d37de /pkgs/servers | |
parent | 8ee9c8d3ed07609f36f9ffb1b399caf926301c28 (diff) |
adguardhome: Add schema_version
This will add `passthru.schema_version` to be used as default value for the adguardhome module. It will also update the `update.sh` to keep the `schema_version` in sync with the version by inspecting the sourcecode. This might break existing configs, if they use deprecated values that don't appear in newer schema_versions and schema_version wasn't set explicitly. Explicit declarations of schema_version always have higher priority. This also removes the `host` and `config` settings in favour of using the appropriate `settings`. Fixes #173938 Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
Diffstat (limited to 'pkgs/servers')
-rw-r--r-- | pkgs/servers/adguardhome/default.nix | 1 | ||||
-rwxr-xr-x | pkgs/servers/adguardhome/update.sh | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/pkgs/servers/adguardhome/default.nix b/pkgs/servers/adguardhome/default.nix index 77531d4b28cb1..2d2bafaa20483 100644 --- a/pkgs/servers/adguardhome/default.nix +++ b/pkgs/servers/adguardhome/default.nix @@ -16,6 +16,7 @@ stdenv.mkDerivation rec { passthru = { updateScript = ./update.sh; + schema_version = 14; tests.adguardhome = nixosTests.adguardhome; }; diff --git a/pkgs/servers/adguardhome/update.sh b/pkgs/servers/adguardhome/update.sh index 5f436bb126db8..8a72bd5a7c990 100755 --- a/pkgs/servers/adguardhome/update.sh +++ b/pkgs/servers/adguardhome/update.sh @@ -13,6 +13,11 @@ version=$(jq -r '.tag_name' <<<"$latest_release") echo "got version $version" +schema_version=$(curl --silent "https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/${version}/internal/home/upgrade.go" \ + | grep -Po '(?<=const currentSchemaVersion = )[[:digit:]]+$') + +echo "got schema_version $schema_version" + declare -A systems systems[linux_386]=i686-linux systems[linux_amd64]=x86_64-linux @@ -37,3 +42,4 @@ done echo '}' >> "$bins" sed -i -r -e "s/version\s*?=\s*?.*?;/version = \"${version#v}\";/" "$dirname/default.nix" +sed -i -r -e "s/schema_version\s*?=\s*?.*?;/schema_version = ${schema_version};/" "$dirname/default.nix" |