From c8665be751fed52d22d263e3b1a02cec4ac1aa34 Mon Sep 17 00:00:00 2001 From: Victor Kareh Date: Fri, 22 Feb 2019 10:19:33 -0500 Subject: Support .udeb package format This enables support for udeb (micro-deb) files, which are a package format used during bootstrapping a Debian installation. They have the same mimetype as regular deb files. --- caja/caja-engrampa.c | 2 +- data/engrampa.appdata.xml.in | 2 +- data/engrampa.desktop.in.in | 2 +- help/C/index.docbook | 4 ++-- src/fr-command-ar.c | 6 +++--- src/fr-command-dpkg.c | 2 +- src/fr-init.c | 6 ++++-- 7 files changed, 13 insertions(+), 11 deletions(-) diff --git a/caja/caja-engrampa.c b/caja/caja-engrampa.c index 3c49ad6..21c022b 100644 --- a/caja/caja-engrampa.c +++ b/caja/caja-engrampa.c @@ -153,6 +153,7 @@ static struct { char *mime_type; gboolean is_compressed; } archive_mime_types[] = { + { "application/vnd.debian.binary-package", TRUE }, { "application/vnd.ms-cab-compressed", TRUE }, { "application/x-7z-compressed", TRUE }, { "application/x-7z-compressed-tar", TRUE }, @@ -172,7 +173,6 @@ static struct { { "application/x-compress", TRUE }, { "application/x-compressed-tar", TRUE }, { "application/x-cpio", TRUE }, - { "application/x-deb", TRUE }, { "application/x-ear", TRUE }, { "application/x-gtar", FALSE }, { "application/x-gzip", TRUE }, diff --git a/data/engrampa.appdata.xml.in b/data/engrampa.appdata.xml.in index b176e71..8b6bc3e 100644 --- a/data/engrampa.appdata.xml.in +++ b/data/engrampa.appdata.xml.in @@ -24,7 +24,7 @@
  • ARJ Compressed Archive (.arj)
  • Cabinet File (.cab)
  • UNIX CPIO Archive (.cpio)
  • -
  • Debian Linux Package (.deb) [Read-only mode]
  • +
  • Debian Linux Package (.deb, .udeb) [Read-only mode]
  • ISO-9660 CD Disc Image (.iso) [Read-only mode]
  • Java Archive (.jar)
  • Java Enterprise archive (.ear)
  • diff --git a/data/engrampa.desktop.in.in b/data/engrampa.desktop.in.in index c99fff7..20284ce 100644 --- a/data/engrampa.desktop.in.in +++ b/data/engrampa.desktop.in.in @@ -9,7 +9,7 @@ Terminal=false Type=Application Icon=engrampa Categories=GTK;Utility;Archiving;Compression; -MimeType=application/x-7z-compressed;application/x-7z-compressed-tar;application/x-ace;application/x-alz;application/x-ar;application/x-arj;application/x-brotli;application/x-brotli-compressed-tar;application/x-bzip;application/x-bzip-compressed-tar;application/x-bzip1;application/x-bzip1-compressed-tar;application/x-cabinet;application/x-cbr;application/x-cbz;application/x-cd-image;application/x-compress;application/x-compressed-tar;application/x-cpio;application/x-deb;application/x-ear;application/x-ms-dos-executable;application/x-gtar;application/x-gzip;application/x-gzpostscript;application/x-java-archive;application/x-lha;application/x-lhz;application/x-lrzip;application/x-lrzip-compressed-tar;application/x-lzip;application/x-lzip-compressed-tar;application/x-lzma;application/x-lzma-compressed-tar;application/x-lzop;application/x-lzop-compressed-tar;application/x-ms-wim;application/x-rar;application/x-rar-compressed;application/x-rpm;application/x-rzip;application/x-tar;application/x-tarz;application/x-stuffit;application/x-war;application/x-xz;application/x-xz-compressed-tar;application/x-zip;application/x-zip-compressed;application/x-zoo;application/zip;application/x-archive;application/vnd.ms-cab-compressed; +MimeType=application/x-7z-compressed;application/x-7z-compressed-tar;application/x-ace;application/x-alz;application/x-ar;application/x-arj;application/x-brotli;application/x-brotli-compressed-tar;application/x-bzip;application/x-bzip-compressed-tar;application/x-bzip1;application/x-bzip1-compressed-tar;application/x-cabinet;application/x-cbr;application/x-cbz;application/x-cd-image;application/x-compress;application/x-compressed-tar;application/x-cpio;application/vnd.debian.binary-package;application/x-ear;application/x-ms-dos-executable;application/x-gtar;application/x-gzip;application/x-gzpostscript;application/x-java-archive;application/x-lha;application/x-lhz;application/x-lrzip;application/x-lrzip-compressed-tar;application/x-lzip;application/x-lzip-compressed-tar;application/x-lzma;application/x-lzma-compressed-tar;application/x-lzop;application/x-lzop-compressed-tar;application/x-ms-wim;application/x-rar;application/x-rar-compressed;application/x-rpm;application/x-rzip;application/x-tar;application/x-tarz;application/x-stuffit;application/x-war;application/x-xz;application/x-xz-compressed-tar;application/x-zip;application/x-zip-compressed;application/x-zoo;application/zip;application/x-archive;application/vnd.ms-cab-compressed; Keywords=MATE;archive;manager;compression; X-MATE-DocPath=engrampa/engrampa.xml X-MATE-Bugzilla-Bugzilla=MATE diff --git a/help/C/index.docbook b/help/C/index.docbook index 2bf3716..5d0e604 100644 --- a/help/C/index.docbook +++ b/help/C/index.docbook @@ -308,8 +308,8 @@ Debian package - .deb - + .deb, .udeb + raw CD image .iso diff --git a/src/fr-command-ar.c b/src/fr-command-ar.c index 09d7640..dbc4320 100644 --- a/src/fr-command-ar.c +++ b/src/fr-command-ar.c @@ -277,8 +277,8 @@ fr_command_ar_handle_error (FrCommand *comm, } -const char *ar_mime_type[] = { "application/x-ar", - "application/x-deb", +const char *ar_mime_type[] = { "application/x-ar", + "application/vnd.debian.binary-package", NULL }; @@ -298,7 +298,7 @@ fr_command_ar_get_capabilities (FrCommand *comm, capabilities = FR_COMMAND_CAN_ARCHIVE_MANY_FILES; if (is_program_available ("ar", check_command)) { - if (is_mime_type (mime_type, "application/x-deb")) + if (is_mime_type (mime_type, "application/vnd.debian.binary-package")) capabilities |= FR_COMMAND_CAN_READ; else if (is_mime_type (mime_type, "application/x-ar")) capabilities |= FR_COMMAND_CAN_READ_WRITE; diff --git a/src/fr-command-dpkg.c b/src/fr-command-dpkg.c index 184da01..39d09c7 100644 --- a/src/fr-command-dpkg.c +++ b/src/fr-command-dpkg.c @@ -209,7 +209,7 @@ fr_command_dpkg_extract (FrCommand *comm, } -const char *dpkg_mime_type[] = { "application/x-deb", NULL }; +const char *dpkg_mime_type[] = { "application/vnd.debian.binary-package", NULL }; static const char ** diff --git a/src/fr-init.c b/src/fr-init.c index 016375c..c7c1995 100644 --- a/src/fr-init.c +++ b/src/fr-init.c @@ -58,6 +58,8 @@ /* The capabilities are computed automatically in * compute_supported_archive_types() so it's correct to initialize to 0 here. */ FrMimeTypeDescription mime_type_desc[] = { + { "application/vnd.debian.binary-package", ".deb", N_("Debian package (.deb)"), 0 }, + { "application/vnd.debian.binary-package", ".udeb", N_("Debian package (.udeb)"), 0 }, { "application/vnd.ms-cab-compressed", ".cab", N_("Cabinet (.cab)"), 0 }, { "application/vnd.oasis.opendocument.presentation", ".odp", N_("OpenDocument Presentation (.odp)"), 0 }, { "application/vnd.oasis.opendocument.spreadsheet", ".ods", N_("OpenDocument Spreadsheet (.ods)"), 0 }, @@ -84,7 +86,6 @@ FrMimeTypeDescription mime_type_desc[] = { { "application/x-compress", ".Z", N_("Unix Compressed Archive file (.Z)"), 0 }, { "application/x-compressed-tar", ".tar.gz", N_("Tar compressed with gzip (.tar.gz)"), 0 }, { "application/x-cpio", ".cpio", N_("Unix CPIO Archive (.cpio)"), 0 }, - { "application/x-deb", ".deb", N_("Debian package (.deb)"), 0 }, { "application/x-ear", ".ear", N_("Ear (.ear)"), 0 }, { "application/x-gzip", ".gz", N_("GZip compressed file (.gz)"), 0 }, { "application/x-java-archive", ".jar", N_("Jar (.jar)"), 0 }, @@ -128,7 +129,7 @@ FrExtensionType file_ext_type[] = { { ".cbr", "application/x-cbr" }, { ".cbz", "application/x-cbz" }, { ".cpio", "application/x-cpio" }, - { ".deb", "application/x-deb" }, + { ".deb", "application/vnd.debian.binary-package" }, { ".ear", "application/x-ear" }, { ".exe", "application/x-ms-dos-executable" }, { ".gz", "application/x-gzip" }, @@ -171,6 +172,7 @@ FrExtensionType file_ext_type[] = { { ".txz", "application/x-xz-compressed-tar" }, { ".tzma", "application/x-lzma-compressed-tar" }, { ".tzo", "application/x-lzop-compressed-tar" }, + { ".udeb", "application/vnd.debian.binary-package" }, { ".war", "application/x-war" }, { ".wim", "application/x-ms-wim" }, { ".xz", "application/x-xz" }, -- cgit v1.2.1