implement route-settings metadata and notification volume

Make a module that creates a route-settings metadata and provides
some helper functions to parse the json fields.

Load the route-settings module in the policy.

Move the Notification settings to the metadata. Listen for metadata
updates and update our state table.

Fixes #51
6 jobs for route-settings in 1 minute and 7 seconds (queued for 1 second)
Status Name Job ID Coverage
  Container
passed container_fedora #14375662

00:00:16

passed container_ubuntu #14375663

00:00:15

 
  Build
passed build_on_fedora_no_docs #14375665

00:00:45

passed build_on_fedora_with_docs #14375664

00:00:51

failed build_on_ubuntu_no_gir #14375667

00:00:11

failed build_on_ubuntu_with_gir #14375666

00:00:11

 
Name Stage Failure
failed
build_on_ubuntu_with_gir Build
Cloning into 'pipewire'...
fatal: unable to access 'https://gitlab.freedesktop.org/pipewire/pipewire.git/': server certificate verification failed. CAfile: none CRLfile: none
Uploading artifacts for failed job
Uploading artifacts...
WARNING: build-*/meson-logs: no matching files
WARNING: prefix-*: no matching files
ERROR: No files to upload
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
build_on_ubuntu_no_gir Build
Cloning into 'pipewire'...
fatal: unable to access 'https://gitlab.freedesktop.org/pipewire/pipewire.git/': server certificate verification failed. CAfile: none CRLfile: none
Uploading artifacts for failed job
Uploading artifacts...
WARNING: build-*/meson-logs: no matching files
WARNING: prefix-*: no matching files
ERROR: No files to upload
Cleaning up file based variables
ERROR: Job failed: exit code 1