Estoy recibiendo un error más largo que este, pero dudo que lo demás sea primordial justo ahora:
unknown mime type unknown/unknown
¿Cómo lo soluciono si no sé qué formato he de solucionar?
Es un fichero .imscc para importar en Canvas (instructure)
			
			
			
				no se que lenguaje estás usando ni que estás haciendo mal... pero aquí información sobre los mimetypes
http://es.wikipedia.org/wiki/Multipurpose_Internet_Mail_Extensions (http://es.wikipedia.org/wiki/Multipurpose_Internet_Mail_Extensions)
			
			
			
				Deberia(mos) eliminar todas las preguntas que no indiquen el lenguaje de programación que se está usando.
Esto me mosquea aun más cuando son usuarios veteranos.
Saludos
			
			
			
				Cita de: Eleкtro en 16 Abril 2015, 20:16 PM
Esto me mosquea aun más cuando son usuarios veteranos.
No soy usuario veterano, y ciertamente no dije el lenguaje de programación porque no creí que fuese importante dado el error tan genérico y el hecho de que no hay output más que ese... Como mencioné en el post original, trato de importar un paquete de cursos a Canvas (de Instructure), que está hecho en Ruby, desafortunadamente el output no muestra más, sino solo ese error... Muestra algunas líneas relacionadas a ficheros que fallan, pero nada más, como que intentó correr "/var/canvas/lib/canvas/migration/archive.rb ..." etcétera
Será que mirando lo que hacen esos archivos de pronto doy con lo que trata de hacer?
			
 
			
			
				Fui a otros ficheros de errores y encontré el código que intenta ejecutar:
each_entry(archive_filename) do |entry, index|
      if unsafe_entry?(entry)
        add_warning(warnings, entry, :unsafe)
        next
      end
      if block
        block.call(entry, index)
      else
        raise FileLimitExceeded if files_left <= 0
        begin
          f_path = File.join(dest_folder, entry.name)
          entry.extract(f_path, false, bytes_left) do |size|
            bytes_left -= size
            raise SizeLimitExceeded if bytes_left < 0
          end
          files_left -= 1
        rescue DestinationFileExists
          add_warning(warnings, entry, :already_exists)
        rescue Zip::CompressionMethodError
          add_warning(warnings, entry, :unknown_compression_method)
        end
      end
    end
    warnings
  end
  def self.each_entry(archive_filename)
    raise ArgumentError, "no block given" unless block_given?
    file = File.open(archive_filename)
    mime_type = File.mime_type?(file)
    if mime_type == 'application/x-gzip'
      file = Zlib::GzipReader.new(file)
      mime_type = 'application/x-tar' # it may not actually be a tar though, so rescue if there's a problem
    end
    if mime_type == 'application/zip'
      Zip::File.open(file) do |zipfile|
        zipfile.entries.each_with_index do |zip_entry, index|
          yield(Entry.new(zip_entry), index)
        end
      end
    elsif mime_type == 'application/x-tar'
      index = 0
      begin
        Gem::Package::TarReader.new(file).each do |tar_entry|
          next if tar_entry.header.typeflag == 'x'
          yield(Entry.new(tar_entry), index)
          index += 1
        end
      rescue Gem::Package::TarInvalidError
        raise UnknownArchiveType, "invalid tar"
      end
    else
      raise UnknownArchiveType, "unknown mime type #{mime_type}"
    end
  end
Ya intenté cambiar el formato de .imscc a .zip (que es que .imscc por defecto debería funcionar), y aún así no funciona :( ... ¿alguna forma de configurar "manualmente" el mime type?... ¿se puede? :(  :-( :-(
(está funcionando en Ubuntu 12.04)
			
			
			
				el mimetype viene dado por el servidor que normalmente toma en cuenta la extención del fichero para escogerlo... puedes hacerle un bypass al programa y listo, ahí tienes el codigo, ahora tienes que saber que hacer con el... si es necesario que sea así necesitarías explicar el servidor
			
			
			
				Sé que no es la solución más sofisticada porque, bueno, supongo que lo ideal sería que identificara el archivo...
if mime_type == 'unknown/unknown'
      Zip::File.open(file) do |zipfile|
        zipfile.entries.each_with_index do |zip_entry, index|
          yield(Entry.new(zip_entry), index)
        end
      end
He puesto eso y me ha funcionado  :o , la verdad me sorprende que haya sido tan... fácil...