Tipos MIME I2P

Proposal 139
Abierto
Author zzz
Created 2017-05-16
Last Updated 2017-05-16

Descripción general

Definir tipos MIME para formatos de archivos comunes de I2P. Incluir las definiciones en paquetes Debian. Proveer un manejador para el tipo .su3, y posiblemente otros.

Motivación

Para facilitar la resiembra y la instalación de plugins cuando se descargan con un navegador, necesitamos un tipo MIME y un manejador para archivos .su3.

Ya que nos encontramos en ello, tras aprender a escribir el archivo de definición MIME, siguiendo el estándar de freedesktop.org, podemos añadir definiciones para otros tipos de archivos comunes de I2P. Aunque son menos útiles para archivos que usualmente no se descargan, como la base de datos del bloque del libro de direcciones (hostsdb.blockfile), estas definiciones permitirán que los archivos sean mejor identificados e iconificados al usar un visor de directorios gráfico como “nautilus” en Ubuntu.

Al estandarizar los tipos MIME, cada implementación de router puede escribir manejadores según sea apropiado, y el archivo de definición MIME puede ser compartido por todas las implementaciones.

Diseño

Escribir un archivo fuente XML siguiendo el estándar freedesktop.org e incluirlo en los paquetes Debian. El archivo es “debian/(package).sharedmimeinfo”.

Todos los tipos MIME de I2P comenzarán con “application/x-i2p-”, excepto para el jrobin rrd.

Los manejadores para estos tipos MIME son específicos de la aplicación y no serán especificados aquí.

También incluiremos las definiciones con Jetty, y las incluiremos con el software de resiembra o las instrucciones.

Especificación

.blockfile application/x-i2p-blockfile

.config application/x-i2p-config

.dat application/x-i2p-privkey

.dat application/x-i2p-dht

=.dat application/x-i2p-routerinfo

.ht application/x-i2p-errorpage

.info application/x-i2p-routerinfo

.jrb application/x-jrobin-rrd

.su2 application/x-i2p-update

.su3 (genérico) application/x-i2p-su3

.su3 (actualización de router) application/x-i2p-su3-update

.su3 (plugin) application/x-i2p-su3-plugin

.su3 (resiembra) application/x-i2p-su3-reseed

.su3 (noticias) application/x-i2p-su3-news

.su3 (lista de bloqueos) application/x-i2p-su3-blocklist

.sud application/x-i2p-update

.syndie application/x-i2p-syndie

=.txt.gz application/x-i2p-peerprofile

.xpi2p application/x-i2p-plugin

Notas

No todos los formatos de archivo listados arriba son usados por implementaciones de routers no Java; algunos pueden ni siquiera estar bien especificados. Sin embargo, documentarlos aquí puede permitir una consistencia entre implementaciones en el futuro.

Algunas extensiones de archivo como “.config”, “.dat” y “.info” pueden coincidir con otros tipos MIME. Estos pueden ser desambiguados con datos adicionales como el nombre completo del archivo, un patrón de nombre de archivo, o números mágicos. Ver el borrador del archivo i2p.sharedmimeinfo en el hilo zzz.i2p para ejemplos.

Los importantes son los tipos .su3, y esos tipos tienen tanto una extensión única como definiciones de números mágicos robustas.

Migración

No aplicable.