Skip to content

Commit

Permalink
utils: Recognize .zst extension
Browse files Browse the repository at this point in the history
The repo data can be compressed with ZSTD, thus teach the as_utils_install_metadata_file()
what to do with these files.
  • Loading branch information
mcrha committed Jan 16, 2025
1 parent 0d272e3 commit 530cadc
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 3 deletions.
6 changes: 6 additions & 0 deletions src/as-metadata.c
Original file line number Diff line number Diff line change
Expand Up @@ -88,14 +88,20 @@ as_metadata_file_guess_style (const gchar *filename)
return AS_FORMAT_STYLE_CATALOG;
if (g_str_has_suffix (filename, ".xml.gz"))
return AS_FORMAT_STYLE_CATALOG;
if (g_str_has_suffix (filename, ".xml.zst"))
return AS_FORMAT_STYLE_CATALOG;
if (g_str_has_suffix (filename, ".yml"))
return AS_FORMAT_STYLE_CATALOG;
if (g_str_has_suffix (filename, ".yml.gz"))
return AS_FORMAT_STYLE_CATALOG;
if (g_str_has_suffix (filename, ".yml.zst"))
return AS_FORMAT_STYLE_CATALOG;
if (g_str_has_suffix (filename, ".yaml"))
return AS_FORMAT_STYLE_CATALOG;
if (g_str_has_suffix (filename, ".yaml.gz"))
return AS_FORMAT_STYLE_CATALOG;
if (g_str_has_suffix (filename, ".yaml.zst"))
return AS_FORMAT_STYLE_CATALOG;
if (g_str_has_suffix (filename, ".appdata.xml"))
return AS_FORMAT_STYLE_METAINFO;
if (g_str_has_suffix (filename, ".appdata.xml.in"))
Expand Down
12 changes: 9 additions & 3 deletions src/as-utils.c
Original file line number Diff line number Diff line change
Expand Up @@ -2580,8 +2580,10 @@ as_utils_install_metadata_file (AsMetadataLocation location,
case AS_FORMAT_STYLE_CATALOG:
if (g_str_has_suffix (filename, ".yml") ||
g_str_has_suffix (filename, ".yml.gz") ||
g_str_has_suffix (filename, ".yml.zst") ||
g_str_has_suffix (filename, ".yaml") ||
g_str_has_suffix (filename, ".yaml.gz")) {
g_str_has_suffix (filename, ".yaml.gz") ||
g_str_has_suffix (filename, ".yaml.zst")) {
path = g_build_filename (as_metadata_location_get_prefix (location),
"swcatalog",
"yaml",
Expand Down Expand Up @@ -2628,7 +2630,8 @@ as_utils_install_metadata_file (AsMetadataLocation location,
default:
basename = g_path_get_basename (filename);

if (g_str_has_suffix (basename, ".tar.gz")) {
if (g_str_has_suffix (basename, ".tar.gz") ||
g_str_has_suffix (basename, ".tar.zst")) {
gchar *tmp;
g_autofree gchar *tmp2 = NULL;
/* we may have an icon tarball */
Expand Down Expand Up @@ -2659,7 +2662,10 @@ as_utils_install_metadata_file (AsMetadataLocation location,
}

/* guess origin */
tmp2 = g_strdup_printf ("-icons-%s.tar.gz", icons_size_id);
if (g_str_has_suffix (basename, ".tar.gz"))
tmp2 = g_strdup_printf ("-icons-%s.tar.gz", icons_size_id);
else
tmp2 = g_strdup_printf ("-icons-%s.tar.zst", icons_size_id);
tmp = g_strstr_len (basename, -1, tmp2);
if (tmp != NULL) {
*tmp = '\0';
Expand Down

0 comments on commit 530cadc

Please sign in to comment.