Commit Graph

7145 Commits

Author SHA1 Message Date
Volker Theile
773f6e5f0d
Update NPM packages
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-28 17:41:35 +02:00
Volker Theile
d9151573ec
Update locale files
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-28 17:40:40 +02:00
Volker Theile
1c250a0c75
Issue #1775: Add ability to choose between etcd or sqlite as datastore (#1786)
SQlite is now used by default, as this is better suited to installations on SBCs.

Fixes: https://github.com/openmediavault/openmediavault/issues/1775

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-28 17:39:27 +02:00
Volker Theile
f3b10a6df4
Modify changelog
Add a note that no temps are displayed when the device is in standby mode because in that case smartctl can not fetch the necessary data without spinning up the disk.

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-28 12:39:41 +02:00
Volker Theile
40181d2681
Mark the smartmontools module dirty to rebuild the smartctl-hdparm configuration
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-28 12:27:19 +02:00
Volker Theile
714f214346
Improve disk power mode implementation (#1787)
Related to: https://github.com/openmediavault/openmediavault/pull/1781

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-28 10:43:53 +02:00
Volker Theile
3221ff6271
Set --nockeck exit code ...
... otherwise fetching SMART information fails because an exception is thrown.

See https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in#n

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-27 22:03:32 +02:00
Volker Theile
4aa292d946
Execute smartctl only if the device file is a block device (and therefore exists)
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-27 21:12:44 +02:00
Volker Theile
da532b9aff
Set --nockeck exit code ...
... otherwise fetching SMART information fails because an exception is thrown.

See https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in#n

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-27 18:36:02 +02:00
Volker Theile
af39ea0ba7
Do not auto-detect mime type if it is specified in the headers property
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-27 16:42:01 +02:00
Volker Theile
cb8c28f86e
Bump version
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-27 16:40:02 +02:00
Volker Theile
5e47b6d5e8
Set correct header
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-27 16:23:26 +02:00
Volker Theile
219ff893c8
Display progress message
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-27 15:09:21 +02:00
Volker Theile
a051af1b8e
Bump version
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-25 16:16:50 +02:00
Volker Theile
5fd2f4fc6b
Code cleanup
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-25 15:48:44 +02:00
Volker Theile
63c9ef84b3
Rename variable
This is a good example of why you should not rename variables after testing.

Fixes: 37410bf2bd
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-25 15:24:37 +02:00
Volker Theile
37410bf2bd
Delete session cookie
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-25 15:16:57 +02:00
Volker Theile
78c1fb5831
Be more fault-tolerant
Write syslog message to get some information why fetching the SMART information has been failed.

References:
- https://github.com/openmediavault/openmediavault/pull/1781
- https://forum.openmediavault.org/index.php?thread/53058-upgrade-to-7-3-0-1-breaks-storage-disks-display/&postID=394162

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-24 19:42:11 +02:00
Volker Theile
0df9b20d5b
Update locale files
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-24 16:31:58 +02:00
Volker Theile
a80270c7fe
Update changelog
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-24 16:31:47 +02:00
Volker Theile
a4e6c1fb1d
Issue #1782: Add OMV_S3_APP_CONTAINER_START_OPTIONS environment variable
- Revert previous changes.
- Add `OMV_S3_APP_CONTAINER_START_OPTIONS` environment variable.

Fixes: https://github.com/openmediavault/openmediavault/issues/1782

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-24 15:17:45 +02:00
Volker Theile
f549727f5f
Issue #1782: Rename env variable
Rename the environment variable `OMV_S3_APP_CONTAINER_CMD_ARGS` to `OMV_S3_APP_CONTAINER_START_OPTIONS` to adapt it to the other container based plugins.

Fixes: https://github.com/openmediavault/openmediavault/issues/1782
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-24 11:39:00 +02:00
Volker Theile
d328b93ca2
Fix class name conflict
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-23 18:37:45 +02:00
Volker Theile
8ec6da801f
Modify changelog
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-23 13:01:24 +02:00
Volker Theile
e1f61ad69a
Use search instead of reload icon
The same icon is used in the plugin and package updates page.

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-23 12:59:36 +02:00
Volker Theile
f5d1958f6c
Modify order of items in changelog
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-23 11:56:25 +02:00
Volker Theile
07df42e6a4
Update NPM packages
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-23 11:53:23 +02:00
Volker Theile
3dc45b7a7a
Update locale files
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-22 19:04:25 +02:00
Volker Theile
266f1a8121
Refactor disk power mode detection (#1781)
`hdparm` has been removed previously, so the current implementation does not work anymore. `smartctl` will replace `hdparm` to detect the power mode of a disk.

- Add `Power Mode` column to `Storage | Disks` page.
- Add `Temperature` column to `Storage | Disks` page (since the SMART values have already been read out anyway and it therefore costs nothing).

Please note that not all power modes may be displayed correctly as they are not specified in `map`; this may affect NVMe devices in particular. These power modes must then be added subsequently.

Superseeds: https://github.com/openmediavault/openmediavault/pull/1779

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-22 18:59:21 +02:00
Volker Theile
dd645f768d
Refactor RPC parameter handling (#1780)
Support POST and GET for RPC calls. Please note that all RPCs can be called via GET and POST. However, it must be noted that there is a limit to the URL length for GET requests, so if a lot of data is to be transmitted, POST should be preferred.

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-21 19:28:26 +02:00
Volker Theile
8f64ba8843
Update changelog
Relates to: https://github.com/openmediavault/openmediavault/pull/1715

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-21 12:27:07 +02:00
Volker Theile
b3c5d0e178
Get rid of ::ng-deep (#1715)
This will remove the blocker from upgrading to the latest Angular version.

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-21 11:36:57 +02:00
Volker Theile
76bde5cd84
Change name of custom APT sources files
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-18 08:58:58 +02:00
Volker Theile
6602906ee7
Add APT management plugin (#1776)
Fixes: https://github.com/openmediavault/openmediavault/issues/1774

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-17 19:57:21 +02:00
Volker Theile
94ee20dc0d
Fix typo
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-17 13:45:41 +02:00
Volker Theile
f8f5c3b710
Do not use shell
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-17 13:43:03 +02:00
Volker Theile
f530ad2f2f
Update locale files
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-14 19:49:52 +02:00
Volker Theile
3d48afb4b2
Add a form field input hint
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-14 18:35:49 +02:00
Volker Theile
d9b59d1517
Remove useless code
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-11 17:19:34 +02:00
Volker Theile
333eb8328a
Bump version
The package requires openmediavault 7.2

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-08 14:10:00 +02:00
Volker Theile
4551de07e5
Update NPM packages
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-08 13:50:14 +02:00
Volker Theile
8fbac0c83a
Apply primary toolbar color globally
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-08 13:39:17 +02:00
Volker Theile
093c98c4ec
Do not render round toolbar borders
Use the default toolbar style to minimize themening maintenance.

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-08 13:31:09 +02:00
Volker Theile
70e1239bde
Remove useless code
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-07 17:13:54 +02:00
Volker Theile
8799893c22
Make sure no content overlaps the round borders of the card
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-06 18:49:23 +02:00
Volker Theile
98d24a2d87
Get origin behaviour of mat-select-placeholder back
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-06 17:59:11 +02:00
Volker Theile
d2416d3fcf
Replace deprecated class
Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-06 17:43:15 +02:00
Volker Theile
0da1e354cb
Improve documentation of the datatable image column
Relates to: https://github.com/openmediavault/openmediavault/pull/1772

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-02 13:55:21 +02:00
Volker Theile
0edd54fb89
Use property value by default
This way it is simple to use base64 encoded images in the `image` column without having the need to configure and use the `cellTemplateConfig`.

Follow up of https://github.com/openmediavault/openmediavault/pull/1772

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-06-01 12:21:43 +02:00
Volker Theile
a3f5051b0a
Add image datatable column (#1772)
Examples:

Use the property `name` of the row data to render the URL.
```
{
    name: gettext('QR Code'),
    flexGrow: 3,
    cellTemplateName: 'image',
    cellTemplateConfig: {
        class: 'omv-max-w-100',
        src: 'download.php?service=Foo&method=getImage&params={"name":"{{ name }}"}'
    }
},
```

Use the property `img_src` of the row data to render the URL.
```
{
    name: gettext('QR Code'),
    flexGrow: 3,
    cellTemplateName: 'image',
    cellTemplateConfig: {
        class: 'omv-max-w-100',
        src: '{{ img_src }}'
    }
},
```

Use base64 encoded data.
```
{
  name: gettext('QR Code'),
  flexGrow: 3,
  cellTemplateName: 'image',
  cellTemplateConfig: {
    alt: "test",
    src: "data:image/x-icon;base64,AAACAAEAICAAAAoACgCoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEIAP8RCAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEQgA/xEIAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8iIt3/IiLd/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/yIi3f8iIt3/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/yIi3f8iIt3/IiLd/yIi3f/Mu6r/zLuq/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/IiLd/yIi3f8iIt3/IiLd/8y7qv/Mu6r/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/IiLd/yIi3f8iIt3/IiLd/8y7qv/Mu6r/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8iIt3/IiLd/yIi3f8iIt3/zLuq/8y7qv8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAA/wAAAP8iIt3/IiLd/yIi3f8iIt3/zLuq/8y7qv8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAD/AAAA/yIi3f8iIt3/IiLd/yIi3f/Mu6r/zLuq/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/yIi3f8iIt3/IiLd/yIi3f8AAAD/AAAA/yIi3f8iIt3/IiLd/yIi3f/Mu6r/zLuq/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/IiLd/yIi3f8iIt3/IiLd/wAAAP8AAAD/IiLd/yIi3f8iIt3/IiLd/8y7qv/Mu6r/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8iIt3/IiLd/yIi3f8iIt3/IiLd/yIi3f8iIt3/IiLd/8y7qv/Mu6r/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/yIi3f8iIt3/IiLd/yIi3f8iIt3/IiLd/yIi3f8iIt3/zLuq/8y7qv8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/IiLd/yIi3f8iIt3/IiLd/yIi3f8iIt3/zLuq/8y7qv8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8iIt3/IiLd/yIi3f8iIt3/IiLd/yIi3f/Mu6r/zLuq/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/yIi3f8iIt3/IiLd/yIi3f8iIt3/IiLd/yIi3f8iIt3/zLuq/8y7qv8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/IiLd/yIi3f8iIt3/IiLd/yIi3f8iIt3/IiLd/yIi3f/Mu6r/zLuq/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP/Mu6r/zLuq/8y7qv/Mu6r/zLuq/8y7qv/Mu6r/zLuq/8y7qv/Mu6r/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/8y7qv/Mu6r/zLuq/8y7qv/Mu6r/zLuq/8y7qv/Mu6r/zLuq/8y7qv8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////z////8////8D////A////AD///wA///wA///8AP/8MAP//DAD//AAD//wAA//8AA///AAP//wAP//8AD///AAP//wAD//8AA///AAP//wAP//8AD//////////////////////////////////////////////////////8="
  }
},
```

Signed-off-by: Volker Theile <votdev@gmx.de>
2024-05-31 20:03:22 +02:00