mime-support-3.60ubuntu1/0000775000000000000000000000000012711363220012314 5ustar mime-support-3.60ubuntu1/notes.txt0000664000000000000000000000156712617270574014234 0ustar # Misc. notes ## List tab-separated types and subtypes from `mime.types`. perl -nE 'next if /^#|^ |^$/ ; say join "\t", (split m,/|\s,)[0,1]' mime.types ## List types and subtypes from the FreeDesktop shared-mime-info project. wget http://cgit.freedesktop.org/xdg/shared-mime-info/plain/freedesktop.org.xml.in vi freedesktop.org.xml.in # edit by removing DOCTYPE, removing the Specifies the program to run to view a file of the given content-type. .B This option setting connot be omitted. An implicit "view=" can be considered before it. When writing an entry that has no viewer, use a value of .I false in this space. .TP .BI compose= The "compose" command may be used to specify a program that can be used to compose a new body or body part in the given format. Its intended use is to support mail composing agents that support the composition of multiple types of mail using external composing agents. The result of the composing program may be data that is not yet suitable for mail transport -- that is, a Content-Transfer-Encoding may need to be applied to the data. .TP .BI composetyped= The "composetyped" command is similar to "compose", but is to be used when the composing program needs to specify the Content-type header field to be applied to the composed data. The "compose" option is simpler, and is preferred for use with existing (non-mail-oriented) programs for composing data in a given format. The "composetyped" option is necessary when the Content-type information must include auxiliary parameters, and the composition program must then know enough about mail formats to produce output that includes the mail type information. .TP .BI edit= The "edit" command may be used to specify a program that can be used to edit a body or body part in the given format. In many cases, it may be identical in content to the "compose" command. .TP .BI print= The "print" command may be used to specify a program that can be used to print a message or body part in the given format. .SS Modifiers These options are modifiers to all the commands specified on the command line. .TP .BI test= The "test" option may be used to test some external condition (e.g., the machine architecture, or the window system in use) to determine whether or not the mailcap line applies. It specifies a program to be run to test some condition. If the test fails, a subsequent mailcap entry will be sought. Multiple test options are not permitted -- since a test can call a program, it can already be arbitrarily complex. .B Note: When testing for X by looking at the .I DISPLAY environment variable, please use one of: test=test \-z "$DISPLAY" (no X) or test=test \-n "$DISPLAY" (have X) Many programs recognize these strings and optimize for them. .TP .BI needsterminal The "needsterminal" option, if given, indicates that the commands must be run on an interactive terminal. This is needed to inform window-oriented user agents that an interactive terminal is needed. (The decision is not left exclusively to the command because in some circumstances it may not be possible for such programs to tell whether or not they are on interactive terminals.) The needsterminal command applies to the view, compose and edit commands, if they exist. Note that this is NOT a test -- it is a requirement for the environment in which the program will be executed, and will typically cause the creation of a terminal window when not executed on either a real terminal or a terminal window. .TP .BI copiousoutput The "copiousoutput" option, if given, indicates that the output from the view-command will be an extended stream of output and is to be interpreted as advice to the UA (User Agent mail-reading program) that the output should be either paged or made scrollable. Note that it is probably a mistake if needsterminal and copiousoutput are both specified. .SS Content-Type Info These options provide additional information about the given content-type. .TP .BI description= The "description" option simply provides a textual description that describes the type of data, to be used optionally by mail readers that wish to describe the data before offering to display it. .TP .BI textualnewlines The "textualnewlines" option, if given, indicates that this type of data is line-oriented and that, if encoded in a binary format, all newlines should be converted to canonical form (CRLF) before encoding, and will be in that form after decoding. In general, this is needed only if there is line-oriented data of some type other than text/* or non-line-oriented data that is a subtype of text. .TP .BI x11-bitmap= The "x11-bitmap" option names a file, in X11 bitmap (xbm) format, which points to an appropriate icon to be used to visually denote the presence of this kind of data. .TP .BI nametemplate= The "nametemplate" option gives a file name format, in which %s will be replaced by a short unique string to give the name of the temporary file to be passed to the viewing command. This is only expected to be relevant in environments where filename extensions are meaningful, e.g., one could specify that a GIF file being passed to a gif viewer should have a name ending in ".gif" by using "nametemplate=%s.gif". .SH DEPENDENCIES Packages that wish to provide MIME access to themselves should .B not depend on, recommend, or suggest .B mime-support, as the the file they create in .I /usr/lib/mime/packages will cause .B update\-mime to be automatically run via a Dpkg trigger. .SH DESKTOP ENTRIES In addition to the abovementioned mechanism .B update\-mime also parses desktop entries in /usr/share/applications/ to generate mailcap entries. These entries are given a lower priority than those in /usr/lib/mime/packages. .SH "SEE ALSO" .BR mailcap.order "(5), "deb-triggers "(1), RFC-2046, RFC-1524 .SH AUTHOR .B update\-mime was written by Brian White .SH COPYRIGHT .B update\-mime is in the public domain (the only true "free"). mime-support-3.60ubuntu1/update-mime0000775000000000000000000002153512617270574014475 0ustar #! /usr/bin/perl ############################################################################### # # Update-MIME: Install programs into "/etc/mailcap", resolve conflicts, # auto-uninstall, make dinner, and wash dishes. # # Written by Brian White . # # This program has been placed in the public domain (the only true "free"). # Do whatever you wish with it, though I'd appreciate it if my name stayed # on it as the original author. # ############################################################################### umask(022); # # Program Constants # $debug = 0; $conffile = "/etc/update-mime.conf"; $mailcap = "/etc/mailcap"; $mailcapdef = "/usr/lib/mime/mailcap"; $mimedir = "/usr/lib/mime/packages"; $appsdir = "/usr/share/applications"; $orderfile = "/etc/mailcap.order"; $defpriority = 5; $localgen = 0; # If the call comes from dpkg, only accept it if --triggered is passed # This is so that we don't get useless calls from packages' postinsts # that call update-mime due to dh_installmime adding that call for # when there was no triggers support. # # When this 'hack' is removed, mime-support's postinst should be updated # to not pass --triggered anymore in 'triggered'. if ($ENV{"DPKG_RUNNING_VERSION"} ne "" && $ARGV[0] ne "--triggered") { exit (0); } # Allow local run if ($ARGV[0] eq "--local") { $conffile = "$ENV{HOME}/.update-mime.conf"; $mailcap = "$ENV{HOME}/.mailcap"; $orderfile = "$ENV{HOME}/.mailcap.order"; $localgen = 1; } # # Allow local customizations # do $conffile if -f $conffile; # # Global Variables # %entries; %packages; %priorities; @order; $counter=1; sub ReadEntries { my($pkg,$priority); # foreach $file (glob "$mimedir/*") { foreach $file (map { glob $_.'/*' } split ':',$mimedir) { next if ($file =~ m!(^|/)(\.|\#)|(\~)$!); ($pkg) = ($file =~ m|/([^/]*)$|); print STDERR "$pkg:\n" if $debug; if (!defined $packages{$pkg}) { $packages{$pkg} = []; } if (open(FILE,"<$file")) { while () { chomp; next if m/^\s*$|^\s*\#/; if (! m(^[a-zA-Z0-9*][a-zA-Z0-9!#\$&^_.+-]*/[a-zA-Z0-9*][a-zA-Z0-9!#\$&^_.+-]*;) ) { print STDERR "Warning: mailcap line not starting with a media type in $pkg\n"; print STDERR "Problematic line: $_\n"; } if (m/priority\s*=\s*(\d+)\s*($|;)/i) { $priority=$1; } else { $priority=$defpriority; } if ($priority < 0 || $priority > 9) { print STDERR "Error: priority of $priority is out of range (0 <= pri <= 9)\n"; print STDERR " $_\n"; $priority=$defpriority; } $entries{$counter} = $_; push @{$packages{$pkg}},$counter; push @{$priorities{$priority}},$counter; print STDERR "$counter: $_\n" if $debug; $counter++; } close(FILE); } else { print STDERR "Warning: could not open file '$file' -- $!\n"; } } } sub RecurseIntoDirectories { my @files; foreach my $dir (@_) { next if ($dir =~ m!(^|/)(\.|\#)|(\~)$!); my @entries = glob "$dir/*"; push @files, RecurseIntoDirectories(grep { -d $_ } @entries); push @files, grep { -f $_ } @entries; } return @files; } sub ReadDesktopEntries { my($pkg,$priority); foreach $file (RecurseIntoDirectories(split ':',$appsdir)) { next if ($file =~ m!(^|/)(\.|\#)|(\~)$!); next unless ($file =~ m/\.desktop$/); ($pkg) = ($file =~ m|/([^/]*)\.desktop$|); print STDERR "$pkg:\n" if $debug; next if (defined $packages{$pkg}); $packages{$pkg} = []; if (open(FILE,"<$file")) { my($terminal, $name, $icon, $exec, @types) = ("test=test -n \"\$DISPLAY\"", $pkg); while () { chomp; next if (m/^\s*$|^\s*\#/); if (m/^Terminal=(\w+)/i) { $terminal = "needsterminal" if ($1 eq "true"); } elsif (m/^Name=(.+)/i) { $name = $1; } elsif (m/^Icon=(.+)/i) { $icon = $1; } elsif (m/Exec=(.*)$/i) { $exec = $1; $exec =~ s/%[fFuU]/%s/g; $exec .= " %s" if ($exec !~ m/%s/); } elsif (m/MimeType=(.*)/i) { push @types, split(/;/, $1); } } if (!defined($exec) || !scalar(@types)) { close(FILE); next; } $exec =~ s/%c/$name/g; $exec =~ s/%i/--icon $icon/g; foreach $type (@types) { my $entry = "$type; $exec; $terminal"; $priority=$defpriority; $entries{$counter} = $entry; push @{$packages{$pkg}},$counter; push @{$priorities{$priority}},$counter; print STDERR "$counter: $entry\n" if $debug; $counter++; } close(FILE); } else { print STDERR "Warning: could not open file '$file' -- $!\n"; } } } sub ReadOrder { if (-e $orderfile) { if (open(FILE,"<$orderfile")) { while () { chomp; s/\s*\#.*$//; next if m/^\s*$/; push @order,$_; /(.*):/; my $pkg = $1; unless( grep {/^$pkg$/} keys(%packages)) { print STDERR "Warning: package $pkg listed in /etc/mailcap.order does not have mailcap entries.\n"; } } close(FILE); } else { print STDERR "Warning: could not open file '$orderfile' -- $!\n"; } } } sub OrderEntries { my(@entrylist,@orderlist,@templist,$priority,$entrycode,$ordercode); foreach $priority (sort {$b <=> $a} keys %priorities) { print STDERR " - Priority $priority:" if $debug; @templist = @{$priorities{$priority}}; @templist = sort { $ae = $entries{$a}; $ac = 0; $ac += 1 if $ae =~ m!^\S+/\*!; $ac += 2 if $ae =~ m!^\*/!; $be = $entries{$b}; $bc = 0; $bc += 1 if $be =~ m!^\S+/\*!; $bc += 2 if $be =~ m!^\*/!; $ac <=> $bc; } @templist; foreach $entry (@templist) { print STDERR " $entry" if $debug; push @entrylist,$entry; } print STDERR "\n" if $debug; } print STDERR "entrylist: @entrylist\n" if $debug; foreach $ordercode (@order) { my($pkg,$typ); if ($ordercode =~ m/:/) { ($pkg,$typ) = ($ordercode =~ m/^(.*):(\S*)/); } else { $pkg = $ordercode; $typ = "*/*"; } $typ = "*/*" unless $typ; print STDERR " - Ordering '$ordercode'... (package=$pkg, type=$typ, orderlist=@orderlist)\n" if $debug; $typ =~ s/\*/\.\*/g; foreach $entrycode (@entrylist) { next if grep(/^\Q$entrycode\E$/,@orderlist); print STDERR " - Checking entrycode '$entrycode' against (@{$packages{$pkg}})...\n" if $debug; if (grep(/^\Q$entrycode\E$/,@{$packages{$pkg}})) { $entry = $entries{$entrycode}; my($etype) = ($entry =~ m/^(.*?)(;|\s)/); print STDERR " - entry found, type=$etype, checking against '$typ'\n" if $debug; if ($etype =~ m!^$typ$!) { # print STDERR " - matched!\n" if $debug; # my($oaction) = ($ordercode =~ m/action=([^\s;]*)/i); # my($eaction) = ($entry =~ m/action=([^\s;]*)/i); # $eaction="view" unless $eaction; # print STDERR " - checking entry action '$eaction' against '$oaction'\n" if $debug; # if (!$oaction || $eaction =~ m/^($oaction)$/) { push @orderlist,$entrycode; print STDERR " - matched! (orderlist=@orderlist)\n" if $debug; # } } } } } foreach $entrycode (@entrylist) { next if grep(/^\Q$entrycode\E$/,@orderlist); push @orderlist,$entrycode; } print STDERR "orderlist: @orderlist\n" if $debug; return @orderlist; } # # Generate new mailcap file # sub UpdateMailcap { my(@entrylist) = @_; my(@above,@user,@below,$state,$entrycode); $state = 0; if (!open(PATH,"<$mailcap")) { if (!open(PATH,"<$mailcapdef")) { # print STDERR "Warning: could not read '$mailcap' (update stopped) -- $!\n"; # print STDERR " restore from backup or delete and re-install mime-support package"; return; } } while () { s/install-mime/update-mime/g; if ($state == 0) { push @above,$_; } $state=2 if ($state == 1 && /^\# ----- .* Ends /); if ($state == 1) { push @user,$_; } $state=1 if ($state == 0 && /^\# ----- .* Begins /); if ($state == 2) { push @below,$_; } $state=3 if ($state == 2); } close PATH; if ($state == 3) { my $newfile = join('',@above,@user,@below); $newfile .= "\n###############################################################################\n\n"; foreach $entrycode (@entrylist) { my $entry = $entries{$entrycode}; $entry =~ s/\s*priority\s*=\s*\d+\s*($|;)//; $entry =~ s/\s*;\s*$//; $newfile .= $entry."\n"; } if (!open(PATH,">$mailcap.new")) { print STDERR "Error: could not write '$mailcap.new' -- $!\n"; exit(1) unless ($debug); open(PATH,">-"); } print PATH $newfile; close PATH; if (!open(PATH,"<$mailcap.new")) { die "Error: could not read generated '$mailcap.new' -- $!\n"; } my $savfile = ""; $savfile .= $_ while (); if ($savfile ne $newfile) { die "Error: contents of '$mailcap.new' do not match what was written -- abort\n"; } rename "$mailcap.new","$mailcap"; } else { print STDERR "Error: '$mailcap' is not in required format -- not updated\n"; print STDERR " Restore from backup or delete and re-install mime-support package"; } } ReadEntries(); ReadDesktopEntries(); ReadOrder(); @list = OrderEntries(); UpdateMailcap(@list); mime-support-3.60ubuntu1/run-mailcap0000775000000000000000000004336112645201334014464 0ustar #! /usr/bin/perl ############################################################################### # # Run-Mailcap: Run a program specified in the mailcap file based on a mime # type. # # Written by Brian White # This file has been placed in the public domain (the only true "free"). # ############################################################################### use Encode qw(decode); use I18N::Langinfo qw(langinfo CODESET); use File::Spec; $debug=($ENV{RUN_MAILCAP_DEBUG} || 0); $norun=0; $nopager=0; $etcmimetyp="/etc/mime.types"; $shrmimetyp="/usr/share/etc/mime.types"; $locmimetyp="/usr/local/etc/mime.types"; $usrmimetyp="$ENV{HOME}/.mime.types"; $xtermprgrm="/usr/bin/x-terminal-emulator"; # xterm? $defmimetyp="application/octet-stream"; $quotedsemi=chr(255); $quotedprct=chr(254); $retcode=0; sub Usage { my($error) = @_; print STDERR $error,"\n\n" if $error; print STDERR "Use: $0 <--action=VAL> [--debug] [MIME-TYPE:[ENCODING:]]FILE [...]\n\n"; print STDERR "Options:\n"; print STDERR " action specify what action to do on these files (default=view)\n"; print STDERR " debug be verbose about what's going on\n"; print STDERR " nopager ignore any \"copiousoutput\" directives and never use a \"pager\"\n"; print STDERR " norun just print but don't execute the command (useful with --debug)\n"; print STDERR "\n"; print STDERR "Mime-Type:\n"; print STDERR " any standard mime type designation in the form / -- if\n"; print STDERR " not specified, it will be determined from the filename extension\n\n"; print STDERR "Encoding:\n"; print STDERR " how the file (and type) has been encoded (only \"gzip\", \"bzip2,\"\n"; print STDERR " \"xz\" and \"compress\" are supported) -- if not specified, it will be\n"; print STDERR " determined from the filename extension\n\n"; exit ($error ? 1 : 0); } sub EncodingForFile { my($file) = @_; my $encoding; if ($file =~ m/\.gz$/) { $encoding = "gzip"; } if ($file =~ m/\.bz2$/) { $encoding = "bzip2"; } if ($file =~ m/\.xz$/) { $encoding = "xz"; } if ($file =~ m/\.Z$/) { $encoding = "compress"; } print STDERR " - file \"$file\" has encoding \"$encoding\"\n" if $debug && $encoding; return $encoding; } sub ReadMimetypes { my($file) = @_; print STDERR " - Reading mime.types file \"$file\"...\n" if $debug; unless (open(MIMETYPES,'<',$file)) { # Quietly ignore an unreadable file, perhaps non-existent, perhaps # permission denied. print STDERR " could not read \"$file\" -- $!\n" if $debug; return; } while () { chomp; s/\#.*$//; next if (m/^\s*$/); $_=lc($_); my($type,@exts) = split; foreach (@exts) { $mimetypes{$_} = $type unless exists $mimetypes{$_}; } } close MIMETYPES; } sub ReadMailcap { my($file) = @_; my $line = ""; print STDERR " - Reading mailcap file \"$file\"...\n" if $debug; unless (open(MAILCAP,'<',$file)) { # Quietly ignore an unreadable file, perhaps non-existent, perhaps # permission denied. print STDERR " could not read \"$file\" -- $!\n" if $debug; return; } while () { chomp; s/^\s+// if $line; $line .= $_; next unless $line; if ($line =~ m/^\s*\#/) { $line = ""; next; } if ($line =~ m/\\$/) { $line =~ s/\\$//; } else { $line =~ s/\\;/$quotedsemi/go; $line =~ s/\\%/$quotedprct/go; push @mailcap,$line; $line = ""; } } close MAILCAP; } sub TempFile { my($template) = @_; my($cmd,$head,$tail,$tmpfile); $template = "" unless (defined $template); ($head,$tail) = split(/%s/,$template,2); # $tmpfile = POSIX::tmpnam($name); # unlink($tmpfile); $cmd = "tempfile --mode=600"; $cmd .= " --prefix $head" if $head; $cmd .= " --suffix $tail" if $tail; $tmpfile = `$cmd`; chomp($tmpfile); # $tmpfile = $ENV{TMPDIR}; # $tmpfile = "/tmp" unless $tmpfile; # $tmpfile.= "/$name"; # unlink($tmpfile); return $tmpfile; } sub SaveStdin { my($match) = @_; my($tmpfile,$amt,$buf); $tmpfile = $1 if ($match =~ m/nametemplate=(.*?)\s*($|;)/); $tmpfile = TempFile($tmpfile); open(TMPFILE,">$tmpfile") || die "Error: could not write \"$tmpfile\" -- $!\n"; do { $amt = read(STDIN,$buf,102400); print TMPFILE $buf if $amt; } while ($amt != 0); close(TMPFILE); return $tmpfile; } sub DecodeFile { my($efile,$encoding,$action) = @_; my($file,$res); $file = $efile; $file =~ s!^.*/!!; # remove leading directories $file =~ s!\.[^\.]*$!!; # remove encoding extension $file =~ s!^\.?[^\.]*!%s!; # replace name with placeholder $file = undef if ($efile eq '-'); my $tmpfile = TempFile($file); print STDERR " - decoding \"$efile\" as \"$tmpfile\"\n" if $debug; # unlink($tmpfile); # should still be acceptable for "compose" output even if exists return $tmpfile if (($efile ne '-' && ! -e $efile) || $action eq 'compose'); if ($encoding eq "gzip") { if ($efile eq '-') { $res = system "gzip -d >\Q$tmpfile\E"; } else { $res = system "gzip -dc \Q$efile\E >\Q$tmpfile\E"; } } elsif ($encoding eq "bzip2") { if ($efile eq '-') { $res = system "bzip2 -d >\Q$tmpfile\E"; } else { $res = system "bzip2 -dc <\Q$efile\E >\Q$tmpfile\E"; } } elsif ($encoding eq "xz") { if ($efile eq '-') { $res = system "xz -d >\Q$tmpfile\E"; } else { $res = system "xz -dc <\Q$efile\E >\Q$tmpfile\E"; } } elsif ($encoding eq "compress") { if ($efile eq '-') { $res = system "uncompress >\Q$tmpfile\E"; } else { $res = system "uncompress <\Q$efile\E >\Q$tmpfile\E"; } } else { die "Fatal: unknown encoding \"$encoding\" at"; } $res = int($res/256); if ($res != 0) { print STDERR "Error: could not decode \"$efile\" -- $!\n"; $retcode = 2 if ($retcode < 2); unlink($tmpfile); return; } # chmod 0600,$tmpfile; # done already by TempFile return $tmpfile; } sub EncodeFile { my($dfile,$efile,$encoding) = @_; my($res); print STDERR " - encoding \"$dfile\" as \"$efile\"\n"; if ($encoding eq "gzip") { if ($efile eq '-') { $res = system "gzip -c \Q$dfile\E"; } else { $res = system "gzip -c \Q$dfile\E >\Q$efile\E"; } } elsif ($encoding eq "xz") { if ($efile eq '-') { $res = system "xz < \Q$dfile\E"; } else { $res = system "xz < \Q$dfile\E >\Q$efile\E"; } } elsif ($encoding eq "compress") { if ($efile eq '-') { $res = system "compress <\Q$dfile\E"; } else { $res = system "compress <\Q$dfile\E >\Q$efile\E"; } } else { die "Fatal: unknown encoding \"$encoding\" at"; } $res = int($res/256); if ($res != 0) { print STDERR "Error: could not encode \"$efile\" (left as \"$dfile\")\n"; $retcode = 2 if ($retcode < 2); return; } return $dfile; } sub ExtensionMimetype { my($file) = @_; my($ext) = ($file =~ m!\.([^/\.]+)$!); my($typ); if ($ext) { unless ($donemimetypes) { ReadMimetypes($usrmimetyp); ReadMimetypes($locmimetyp); ReadMimetypes($shrmimetyp); ReadMimetypes($etcmimetyp); $donemimetypes = 1; } $typ = $mimetypes{lc($ext)}; print STDERR " - extension \"$ext\" maps to mime-type \"$typ\"\n" if $debug; } return $typ; } sub MagicMimetype { my($file) = @_; my($typ); if (`which file`) { open(READER, "-|", "file", "-b", "--mime-type", "-e", "tokens", "-L", "-z", $file); $typ = ; chomp $typ; print STDERR " - file command returned mime-type \"$typ\"\n" if $debug; } return $typ; } @files = (); foreach (@ARGV) { print STDERR " - parsing parameter \"$_\"\n" if $debug; if (m!^(-h|--help)$!) { Usage(); exit(0); } elsif (m!^--(.*?)=(.*)$!) { print STDERR "Warning: definition of \"$1=$2\" overrides value \"${$1}\"\n" if ($ {$1} && $ {$1} != $2); $ {$1}=$2; } elsif (m!^--(.*?)$!) { print STDERR "Warning: definition of \"$1=$2\" overrides value \"${$1}\"\n" if ($ {$1} && $ {$1} != 1); $ {$1}=1; } elsif (m!^[^/:]+/[^/:]+:[^/:]+:!) { push @files,$_; } elsif (m!^([^/:]+/[^/:]+):(.*)! && ! -e $_) { my $file = $_; my $type = $1; my $file = $2; my $code = EncodingForFile($file); push @files,"${type}:${code}:${file}"; print STDERR " - file \"$file\" does not exist -- assuming mime-type specification of \"${type}\"\n" if $debug; } else { my $file = $_; my $code = EncodingForFile($file); my $type; if ($code) { my $efile = $file; $efile =~ s/\.[^\.]+$//; $type = ExtensionMimetype($efile); } else { $type = ExtensionMimetype($file); } $type = MagicMimetype($file) unless $type; if ($type) { push @files,"${type}:${code}:${file}"; } else { print STDERR "Warning: unknown mime-type for \"$file\" -- using \"$defmimetyp\"\n"; push @files,"${defmimetyp}:${code}:${file}"; } } } # Pass --debug to sub-calls to this program. $ENV{RUN_MAILCAP_DEBUG} = 1 if $debug; unless ($action) { if ($0 =~ m!(^|/)(mime-)?view$!) { $action="view"; } elsif ($0 =~ m!(^|/)(mime-)?see$!) { $action="view"; } elsif ($0 =~ m!(^|/)(mime-)?cat$!) { $action="cat"; } elsif ($0 =~ m!(^|/)(mime-)?edit$!) { $action="edit"; } elsif ($0 =~ m!(^|/)(mime-)?change$!) { $action="edit"; } elsif ($0 =~ m!(^|/)(mime-)?compose$!) { $action="compose";} elsif ($0 =~ m!(^|/)(mime-)?print$!) { $action="print"; } elsif ($0 =~ m!(^|/)(mime-)?create$!) { $action="compose";} else { $action="view"; } } $mailcaps = $ENV{MAILCAPS}; $mailcaps = "$ENV{HOME}/.mailcap:/etc/mailcap:/usr/local/etc/mailcap:/usr/share/etc/mailcap:/usr/etc/mailcap" unless $mailcaps; foreach (split(/:/,$mailcaps)) { ReadMailcap($_); } foreach (@files) { my($type,$code,$file) = m/^(.*?):(.*?):(.*)$/; print STDERR "Processing file \"$file\" of type \"$type\" (encoding=",$code?$code:"none",")...\n" if $debug; if ($file ne '-') { if ($action eq 'compose' || $action eq 'edit') { if (-e $file) { if (! -w $file) { print STDERR "Error: no write permission for file \"$file\"\n"; $retcode = 2 if ($retcode < 2); next; } } else { if (open(TEST,">$file")) { close(TEST); unlink($file); } else { print STDERR "Error: no write permission for file \"$file\"\n"; $retcode = 2 if ($retcode < 2); next; } } } else { if (! -e $file) { print STDERR "Error: no such file \"$file\"\n"; $retcode = 2 if ($retcode < 2); next; } if (! -r $file) { print STDERR "Error: no read permission for file \"$file\"\n"; $retcode = 2 if ($retcode < 2); next; } } } my(@matches,$entry,$res,$efile); if ($code) { $efile = $file; $file = DecodeFile($efile,$code,$action); next unless $file; } foreach $entry (@mailcap) { $entry =~ m/^(.*?)\s*;/; $_ = "\Q$1\E"; s/\\\*/\.\*/g; push @matches,$entry if ($type =~ m!^$_$!i); } @matches = grep(/\Q$action\E=/,@matches) unless ($action eq "view" || $action eq "cat"); my $done=0; my $fail=0; my $needsterminal; foreach $match (@matches) { my $comm; print STDERR " - checking mailcap entry \"$match\"\n" if $debug; if ($action eq "view" || $action eq "cat") { ($comm) = ($match =~ m/^.*?;\s*(.*?)\s*($|;)/); } else { ($comm) = ($match =~ m/\Q$action\E=(.*?)\s*($|;)/); } next if (!$comm || $comm =~ m!(^|/)false$!i); print STDERR " - program to execute: $comm\n" if $debug; if ($action eq 'cat' && $match !~ m/;\s*copiousoutput\s*($|;)/) { print STDERR " - \"copiousoutput\" is required for \"cat\" action\n" if $debug; $fail++; next; } my($tmpfile,$tmplink); if ($action ne 'print' && $match =~ m/;\s*needsterminal\s*($|;)/) { $needsterminal = 1; if (-t STDOUT) { print STDERR " - needsterminal is satisfied by stdout\n" if $debug; } else { if ($ENV{DISPLAY}) { $comm = "$xtermprgrm -T '$file ($type)' -e $0 --action=$action '${type}:%s'"; } else { print STDERR " - no terminal available for rule (needsterminal)\n" if $debug; $fail++; next; } } } elsif ($action eq 'view' && !$nopager && $match =~ m/;\s*copiousoutput\s*($|;)/ && $type ne 'text/plain') { $comm .= " | $0 --action=$action text/plain:-"; } if ($match =~ m/;\s*test=(.*?)\s*($|;)/) { my $test; print STDERR " - running test: $1 " if $debug; $test = system "$1 >/dev/null 2>&1"; $test >>= 8; print STDERR " (result=$test=",($test!=0?"false":"true"),")\n" if $debug; if ($test) { $fail++; next; } } if ($file ne "-") { # Resolve file name to an absolute path $file = File::Spec->rel2abs($file); if (decode(langinfo(CODESET()), $file) =~ m![^[:alnum:],.:/@%^+=_-]!i) { $match =~ m/nametemplate=(.*?)\s*($|;)/; my $prefix = $1; my $linked = 0; while (!$linked) { $tmplink = TempFile($prefix); unlink($tmplink); $linked = symlink($file,$tmplink); } $file = $tmplink; print STDERR " - filename contains shell meta-characters; aliased to '$tmplink'\n" if $debug; } if ($comm =~ m/[^%]%s/) { $comm =~ s/([^%])%s/$1$file/g; } else { if ($comm =~ m/\|/) { $comm =~ s/\|/<\Q$file\E \|/; } else { $comm .= " <\Q$file\E"; } if ($action eq 'edit' || $action eq 'compose') { $comm .= " >\Q$file\E"; } } } else { if ($comm =~ m/[^%]%s/) { $tmpfile = SaveStdin($match); $comm =~ s/([^%])%s/$1$tmpfile/g; # If needsterminal then redirect stdin to the tty which is # on stdout, rather than leaving it as the input data stream # which has now been read through to EOF. # # Some programs such as "more" and "less" already use # /dev/tty rather than stdin. But "vim" on non-tty stdin # gives a warning message and then leaves the tty in raw # mode on exit. Or "nvi" refuses to run at all unless both # stdin and stdout are the tty. # # RFC 1524 is silent on exactly what a program with # "needsterminal" should expect, but it seems sensible to # arrange that both stdin and stdout are the terminal for # "needsterminal" with "%s". # if ($needsterminal) { $comm .= ' <&1'; } } else { # no name means same as "-"... read from stdin } } $comm =~ s!([^%])%t!$1$type!g; $comm =~ s!([^%])%F!$1!g; $comm =~ s!%\{(.*?)}!$_="'$ENV{$1}'";s/\`//g;s/\'\'//g;$_!ge; $comm =~ s!\\(.)!$1!g; $comm =~ s!\'\'!\'!g; $comm =~ s!$quotedsemi!;!go; $comm =~ s!$quotedprct!%!go; print STDERR " - executing: $comm\n" if $debug; if ($norun) { print $comm,"\n"; $res = 0; } else { $res = system $comm; $res = int($res/256); } if ($res != 0) { print STDERR "Warning: program returned non-zero exit code \#$res\n"; $retcode = $res; } $done=1; unlink $tmpfile if $tmpfile; unlink $tmplink if $tmplink; last; } if (!$done) { if ($fail) { print STDERR "Error: no \"$action\" rule for type \"$type\" passed its test case\n"; print STDERR " (for more information, add \"--debug=1\" on the command line)\n"; $retcode = 3 if ($retcode < 3); } else { print STDERR "Error: no \"$action\" mailcap rules found for type \"$type\"\n"; $retcode = 3 if ($retcode < 3); } unlink $file if $code; $retcode = 1 unless $retcode; next; } if ($code) { if ($action eq 'edit' || $action eq 'compose') { my $file = EncodeFile($file,$efile,$code); unlink $file if $file; } else { unlink $file; } } } exit($retcode); mime-support-3.60ubuntu1/playdsp0000664000000000000000000000003712617270574013731 0ustar #! /bin/sh cat "$@" >/dev/dsp mime-support-3.60ubuntu1/playaudio0000664000000000000000000000004112617270574014237 0ustar #! /bin/sh cat "$@" >/dev/audio mime-support-3.60ubuntu1/mailcap0000664000000000000000000000177612617270574013676 0ustar ############################################################################### # # MIME media types and programs that process those types # # Much of this file is generated automatically by the program "update-mime". # Please see the "update-mime" man page for more information. # # Users can add their own rules if they wish by creating a ".mailcap" # file in their home directory. Entries included there will take # precedence over those listed here. # ############################################################################### ############################################################################### # # User section follows: Any entries included in this section will take # precedence over those created by "update-mime". DO NOT CHANGE the # "User Section Begins" and "User Section Ends" lines, or anything outside # of this section! # # ----- User Section Begins ----- # # ----- User Section Ends ----- # ############################################################################### mime-support-3.60ubuntu1/mailcap.man0000664000000000000000000002323612617270574014443 0ustar .\" Hey, Emacs! This is an -*- nroff -*- source file. .TH MAILCAP 5 "Release 2" "Bellcore Prototype" .SH NAME mailcap - metamail capabilities file .SH DESCRIPTION The .I mailcap file is read by the .I metamail program to determine how to display non-text at the local site. The syntax of a mailcap file is quite simple, at least compared to termcap files. Any line that starts with "#" is a comment. Blank lines are ignored. Otherwise, each line defines a single mailcap entry for a single content type. Long lines may be continued by ending them with a backslash character, \\. Each individual mailcap entry consists of a content-type specification, a command to execute, and (possibly) a set of optional "flag" values. For example, a very simple mailcap entry (which is actually a built-in default behavior for metamail) would look like this: text/plain; cat %s The optional flags can be used to specify additional information about the mail-handling command. For example: text/plain; cat %s; copiousoutput can be used to indicate that the output of the 'cat' command may be voluminous, requiring either a scrolling window, a pager, or some other appropriate coping mechanism. The "type" field (text/plain, in the above example) is simply any legal content type name, as defined by informational RFC 1524. In practice, this is almost any string. It is the string that will be matched against the "Content\-type" header (or the value passed in with \-c) to decide if this is the mailcap entry that matches the current message. Additionally, the type field may specify a subtype (e.g. "text/ISO\-8859\-1") or a wildcard to match all subtypes (e.g. "image/*"). The "command" field is any UNIX command ("cat %s" in the above example), and is used to specify the interpreter for the given type of message. It will be passed to the shell via the system(3) facility. Semicolons and backslashes within the command must be quoted with backslashes. If the command contains "%s", those two characters will be replaced by the name of a file that contains the body of the message. If it contains "%t", those two characters will be replaced by the content-type field, including the subtype, if any. (That is, if the content-type was "image/pbm; opt1=something-else", then "%t" would be replaced by "image/pbm".) If the command field contains "%{" followed by a parameter name and a closing "}", then all those characters will be replaced by the value of the named parameter, if any, from the Content-type header. Thus, in the previous example, "%{opt1}" will be replaced by "something-else". Finally, if the command contains "\\%", those two characters will be replaced by a single % character. (In fact, the backslash can be used to quote any character, including itself.) If no "%s" appears in the command field, then instead of placing the message body in a temporary file, metamail will pass the body to the command on the standard input. This is helpful in saving /tmp file space, but can be problematic for window-oriented applications under some window systems such as MGR. Two special codes can appear in the viewing command for objects of type multipart (any subtype). These are "%n" and "%F". %n will be replaced by the number of parts within the multipart object. %F will be replaced by a series of arguments, two for each part, giving first the content-type and then the name of the temporary file where the decoded part has been stored. In addition, for each file created by %F, a second file is created, with the same name followed by "H", which contains the header information for that body part. This will not be needed by most multipart handlers, but it is there if you ever need it. The "notes=xxx" field is an uninterpreted string that is used to specify the name of the person who installed this entry in the mailcap file. (The "xxx" may be replaced by any text string.) The "test=xxx" field is a command that is executed to determine whether or not the mailcap line actually applies. That is, if the content-type field matches the content-type on the message, but a "test=" field is present, then the test must succeed before the mailcap line is considered to "match" the message being viewed. The command may be any UNIX command, using the same syntax and the same %-escapes as for the viewing command, as described above. A command is considered to succeed if it exits with a zero exit status, and to fail otherwise. The "print=xxx" field is a command that is executed to print the data instead of display it interactively. This behavior is usually a consequence of invoking metamail with the "\-h" switch. The "textualnewlines" field can be used in the rather obscure case where metamail's default rules for treating newlines in base64-encoded data are unsatisfactory. By default, metamail will translate CRLF to the local newline character in decoded base64 output if the content-type is "text" (any subtype), but will not do so otherwise. A mailcap entry with a field of "textualnewlines=1" will force such translation for the specified content-type, while "textualnewlines=0" will guarantee that the translation does not take place even for textual content-types. The "compose" field may be used to specify a program that can be used to compose a new body or body part in the given format. Its intended use is to support mail composing agents that support the composition of multiple types of mail using external composing agents. As with the view-command, the compose command will be executed after replacing certain escape sequences starting with "%". In particular, %s should be replaced by the name of a file to which the composed data is to be written by the specified composing program, thus allowing the calling program (e.g. metamail) to tell the called program where to store the composed data. If %s does not appear, then the composed data will be assumed to be written by the composing programs to standard output. The result of the composing program may be data that is NOT yet suitable for mail transport -- that is, a Content-Transfer-Encoding may still need to be applied to the data. The "composetyped" field is similar to the "compose" field, but is to be used when the composing program needs to specify the Content-type header field to be applied to the composed data. The "compose" field is simpler, and is preferred for use with existing (non-mail-oriented) programs for composing data in a given format. The "composetyped" field is necessary when the Content-type information must include auxiliary parameters, and the composition program must then know enough about mail formats to produce output that includes the mail type information, and to apply any necessary Content-Transfer-Encoding. Conceptually, "compose" specifies a program that simply outputs the specified type of data in its raw form, while "composetyped" specifies a program that outputs the data as a MIME object, with all necessary Content-* headers already in place. .TP 8 .B needsterminal If this flag is given, the named interpreter needs to interact with the user on a terminal. In some environments (e.g. a window-oriented mail reader under X11) this will require the creation of a new terminal emulation window, while in most environments it will not. If the mailcap entry specifies "needsterminal" and metamail is not running on a terminal (as determined by isatty(3), the \-x option, and the MM_NOTTTY environment variable) then metamail will try to run the command in a new terminal emulation window. Currently, metamail knows how to create new windows under the X11, SunTools, and WM window systems. .TP 8 .B copiousoutput This flag should be given whenever the interpreter is capable of producing more than a few lines of output on stdout, and does no interaction with the user. If the mailcap entry specifies copiousoutput, and pagination has been requested via the "\-p" command, then the output of the command being executed will be piped through a pagination program ("more" by default, but this can be overridden with the METAMAIL_PAGER environment variable). .SH BUILT-IN CONTENT-TYPE SUPPORT The metamail program has built-in support for a few key content-types. In particular, it supports the text type, the multipart and multipart/alternative type, and the message/rfc822 types. This support is incomplete for many subtypes -- for example, it only supports US-ASCII text in general. This kind of built-in support can be OVERRIDDEN by an entry in any mailcap file on the user's search path. Metamail also has rudimentary built-in support for types that are totally unrecognized -- i.e. for which no mailcap entry or built-in handler exists. For such unrecognized types, metamail will write a file with a "clean" copy of the data -- i.e. a copy in which all mail headers have been removed, and in which any 7-bit transport encoding has been decoded. .SH FILES $HOME/.mailcap:/etc/mailcap:/usr/share/etc/mailcap:/usr/local/etc/mailcap -- default path for mailcap files. .SH SEE ALSO .BR run-mailcap "(1)", .BR mailcap.order "(5)", .BR update-mime "(8)" RFC 1524 () .SH COPYRIGHT Copyright (c) 1991 Bell Communications Research, Inc. (Bellcore) Permission to use, copy, modify, and distribute this material for any purpose and without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies, and that the name of Bellcore not be used in advertising or publicity pertaining to this material without the specific, prior written permission of an authorized representative of Bellcore. BELLCORE MAKES NO REPRESENTATIONS ABOUT THE ACCURACY OR SUITABILITY OF THIS MATERIAL FOR ANY PURPOSE. IT IS PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. .SH AUTHOR Nathaniel S. Borenstein mime-support-3.60ubuntu1/mailcap.entries0000664000000000000000000000040112617270574015326 0ustar application/vnd.debian.binary-package; /usr/lib/mime/debian-view %s; needsterminal; description=Debian GNU/Linux Package; nametemplate=%s.deb; priority=0 #audio/basic; /usr/lib/mime/playaudio %s; description=Basic uLaw Audio; nametemplate=%s.au; priority=0 mime-support-3.60ubuntu1/mailcap.order.man0000664000000000000000000000475312617270574015560 0ustar .\" Hey, Emacs! This is an -*- nroff -*- source file. .\" Update-mime and this manpage were written by Brian White and .\" have been placed in the public domain (the only true "free"). .\" .TH MAILCAP.ORDER 5 "16th Aug 1998" "Debian Project" "Order Mailcap Entries" .SH NAME /etc/mailcap.order \- the mailcap ordering specifications .SH DESCRIPTION The order of entries in the .I /etc/mailcap file can be altered by editing the .I /etc/mailcap.order file. Each line of that file specifies a package and an optional mime type. Mailcap entries that match will be placed in the order of this file. Entries that don't match will be placed later. .SS Example mime-support:*/* gv:application/postscript netscape:text/html less:text/* emacs:text/* The above would make any entries provided by the .B mime-support package (as found in the .I /usr/lib/mime/packages directory) take priority over everything else. The .B gv package will be used over anything else when it comes to postscript documents. .B Netscape will be used for any html documents and .B less will be used for any remaining text documents. However, since neither netscape or less provide for editing documents, any edit or compose actions will fall through to the .B emacs rules. After modifying this file, be sure to run .I /usr/sbin/update-mime (as root) to propagate the changes into the .I /etc/mailcap file. Remember that this files takes .I package names and not .I executable names. If you want to define rules that reference specific programs, the best way is to include them in .I ~/.mailcap or the user section of the .I /etc/mailcap file. .SH LIMITATIONS There is currently no way to break out a certain type from a wildcard rule. If, for example, both xv and gimp were to specify "image/*" rules, it isn't possible to use xv for .I gif images but use gimp for .I jpeg images. Also, I would like to add the ability to specify certain actions in the rules. For example, if netscape were to have an .I edit rule but I wanted to use emacs for editing/creating html documents, I could place a line like emacs:text/* action=edit|compose before the netscape entry. The .B update-mime program would then spit out entries such that netscape .I view rule comes .B before the emacs .I view rule but have the netscape .I edit rule comes .B after the emacs .I edit rule. .SH "SEE ALSO" .BR mailcap "(5)" .BR run-mailcap "(1)" .BR update-mime "(8)" .SH AUTHOR The .B mailcap.order specification was written by Brian White mime-support-3.60ubuntu1/mailcap.order0000664000000000000000000000070112617270574014773 0ustar ############################################################################### # # Mailcap.order: This file allows a system-wide override of MIME program # preferences. See the mailcap.order(5) man page for more information. # # After modifying this file, be sure to run /usr/sbin/update-mime (as root) # to propagate the changes into the /etc/mailcap file. # ################################################################################ mime-support-3.60ubuntu1/debian/0000775000000000000000000000000012742150745013550 5ustar mime-support-3.60ubuntu1/debian/postinst0000775000000000000000000000107512617270574015370 0ustar #! /bin/sh -e # dpkg triggers support for update-mime if [ "$1" = "triggered" ]; then test -x /usr/sbin/update-mime && /usr/sbin/update-mime --triggered exit 0 fi # Remove the old status directory (and any orphaned install-mime program) rm -fr /var/lib/mime rm -f /usr/sbin/install-mime # Remove the "see" as alternative for "view" # Closes: #623384 # This command can be removed after the Jessie release update-alternatives --remove view /usr/bin/see # Run the update program if [ -x /usr/sbin/update-mime ]; then /usr/sbin/update-mime --triggered fi mime-support-3.60ubuntu1/debian/control0000664000000000000000000000211012742150677015151 0ustar Source: mime-support Maintainer: Ubuntu Developers XSBC-Original-Maintainer: Mime-Support Maintainers Uploaders: Laszlo Boszormenyi (GCS) , Charles Plessy Section: net Priority: standard Standards-Version: 3.9.8 Vcs-Browser: https://anonscm.debian.org/git/collab-maint/mime-support.git Vcs-Git: https://anonscm.debian.org/git/collab-maint/mime-support.git Package: mime-support Architecture: all Multi-Arch: foreign Recommends: bzip2, file, xz-utils Description: MIME files 'mime.types' & 'mailcap', and support programs As these files can be used by all MIME compliant programs, they have been moved into their own package that others can depend upon. . Other packages add themselves as viewers/editors/composers/etc by using the provided "update-mime" program. . In addition, the commands "see", "edit", "compose", and "print" will display, alter, create, and print (respectively) any file using a program determined from the entries in the mime.types and mailcap files. mime-support-3.60ubuntu1/debian/cautious-launcher0000664000000000000000000000152512742150677017135 0ustar #!/bin/bash # For use with .desktop files and MIME handlers so that the Ubuntu Policy # can be followed: programs cannot be executed when they lack the execute bit. # https://wiki.ubuntu.com/SecurityTeam/Policies#Execute-Permission%20Bit%20Required exe="$1" shift || true if [ -n "$exe" ] && [ ! -x "$exe" ] && \ [ "${exe:0:5}" != "/usr/" ] && [ "${exe:0:5}" != "/opt/" ] then if [ -n "$DISPLAY" ] && [ -x /usr/bin/zenity ]; then /usr/bin/zenity --error --title "Blocked: $*" --text "The file '$exe' is not marked as executable. If this was downloaded or copied from an untrusted source, it may be dangerous to run. For more details, read about the executable bit." else echo "$*: '$exe' is not executable. Aborting." >&2 fi exit 1 fi exec "$@" "$exe" mime-support-3.60ubuntu1/debian/changelog0000664000000000000000000007250512742150740015426 0ustar mime-support (3.60ubuntu1) yakkety; urgency=medium * Resynchronise with Debian. Remaining changes: - Add "cautious-launcher" for handling execution of files that are outside /usr and /opt. -- Marc Deslauriers Fri, 15 Jul 2016 08:06:12 -0400 mime-support (3.60) unstable; urgency=medium 5f9811a Add decoding and encoding support for xz. Thanks to Nicolas Schier (Closes: #804211) 67c43e3 Removed bzip support. 13cbcc7 Recommend bzip2 and xz-utils, since run-mailcap uses them. d2b5636 Escape a left curly bracket with a backslash. (Warning since Perl 5.22, Closes: #810587) fe8d90a Added text/markdown. (Closes: #802753) bcf08d8 Conforms to Policy version 3.9.8. 3b341bf Use secure URIs in the VCS fields. -- Charles Plessy Sun, 01 May 2016 20:20:22 +0900 mime-support (3.59ubuntu1) xenial; urgency=medium * Resynchronise with Debian. Remaining changes: - Add "cautious-launcher" for handling execution of files that are outside /usr and /opt. -- Marc Deslauriers Fri, 30 Oct 2015 11:39:30 -0400 mime-support (3.59) unstable; urgency=medium * Media types bdfd714 Add media types and extensions to support ClickOnce apps. * Documentation 77732bb Document how attacks with specially crafted file names are prevented. Closes: #774303 4cd9ea4 Mention ~/.mailcap.order and better link between manpages. Closes: #787459 * Packaging 8a8992d Remove obsolete arguments of dpkg-gencontrol. a65e461 Pass --no-name to gzip, to make the build more reproducible. Closes: #776939. db49144 Make the mtimes reproducible. Closes: #793705 Thanks to Maria Valentina Marin -- Charles Plessy Mon, 03 Aug 2015 07:57:49 +0900 mime-support (3.58ubuntu1) vivid; urgency=medium * Resynchronise with Debian. Remaining changes: - Add "cautious-launcher" for handling execution of files that are outside /usr and /opt. -- Marc Deslauriers Tue, 06 Jan 2015 13:59:50 -0500 mime-support (3.58) unstable; urgency=high * CVE-2014-7209: run-mailcap shell command injection. Thanks to Timothy D. Morgan for the report. d156797 Escape file name also when not passed through %s. This avoids command injections using for instance semicolons. b585022 Resolve file name to an absolute path to avoid injection of command arguments with file names starting with dashes etc. Use File::Spec to avoid race conditions with temporary files. Thanks, Salvatore Bonaccorso for the patch. -- Charles Plessy Sun, 28 Dec 2014 14:45:59 +0900 mime-support (3.57ubuntu1) vivid; urgency=medium * Resynchronise with Debian. Remaining changes: - Add "cautious-launcher" for handling execution of files that are outside /usr and /opt. -- Colin Watson Wed, 03 Dec 2014 17:29:12 +0000 mime-support (3.57) unstable; urgency=medium * Media types added: ef09adf application/x-xz Closes: #756754 * Changed associations of file suffixes with media types: 94703d4 a/vnd.debian.binary-package: added ddeb, closes: #759746 * Other: b412727 Document support for desktop entries. Thanks to Andreas Metzler , closes: #749771 ce09266 Conforms to Policy 3.9.6. -- Charles Plessy Sat, 04 Oct 2014 20:28:54 +0900 mime-support (3.56) unstable; urgency=medium * Media types added: e47e5a6 application/vnd.debian.binary-package * Mailcap: e47e5a6 Replaced a/x-debian-package with a/vnd.debian.binary-package. -- Charles Plessy Sun, 25 May 2014 09:36:07 +0900 mime-support (3.55ubuntu1) utopic; urgency=medium * Resynchronise with Debian. Remaining changes: - Add "cautious-launcher" for handling execution of files that are outside /usr and /opt. -- Colin Watson Tue, 13 May 2014 17:40:19 +0100 mime-support (3.55) unstable; urgency=low * Media types removed: 92def2a application/x-font-woff Closes: #727156 c1797d2 application/x-md5 Closes: #720619 fad5967 application/x-sha1 Closes: #720619 a71f2b0 text/x-vcard Closes: #674670 * Media types added: 0d95409 application/font-sfnt 0d95409 application/font-tdpfr 0f12ec4 application/font-woff 020388a application/gzip Closes: #589991, 688872 77eee72 application/oebps-package+xml See: #712054 ae8262a application/x-font-pcf Closes: #727171 020388a application/zlib Closes: #589991, 688872 a71f2b0 text/vcard Closes: #674670 * Changed associations of file suffixes with media types: ae8262a application/x-font: removed pcf extensions. 46df3ed application/vnd.visio: added vst vsw vss 1a69660 application/x-ns-proxy-autoconfig: removed dat, Closes: #418564 * Packaging: b016fe8 Remove “see” alternative for “view”. Thanks to Kevin Ryde , Closes: #623384, #458691 c5b794b Removed obsolete removal of /usr/doc/mime-support. * update-mime: 5448676 Accept file names with alphanumeric characters from the current locale. Thanks to Tomás , Closes: #682900 2a2243e Handle the “%c” (caption) field code from Desktop entry files. Thanks to Philipp Matthias Hahn , Closes: #745153 c0e8e69 Handle the “%i” (icon) field code from Desktop entry files. 5cf809c Stop quoting “%s” when building /etc/mailcap from the files in /usr/lib/mime/packages. Thanks to Peter Chubb , Closes: #747050 f18b89f Warn when mailcap.order refers to packages that do not provide mailcap files. Closes: #314952 7b1947f Reject lines that do not start with a media type. Closes: #384161 This drops support for continuation lines in /usr/lib/mime/packages/. * run-mailcap: 3c3b56c Redirect stdin to the tty when a mailcap entry says needsterminal. Thanks Kevin Ryde , Closes: #727173 80a1bc7 Remove unreliable permission check. Closes: #691247 thanks to Martin Mares and Kevin Ryde . e833a8a Stricter pattern for detection of manual pages. Thanks to Philipp Janda, LP: #1300484 40f72a7 Force the use of a temporary alias for files containing a space in their name. Closes: #723708 thanks to Kevin Ryde . 642d6a9 Remind of RFC 1524 in the “SEE ALSO” section of mailcap(5) man page. Closes: #634254 dd293ec Run the “file“ command when extension does not tell the media type. Thanks to Reuben Thomas , Closes: #77985 56dba74 Remove last-resort guesses of crontabs and man pages. -- Charles Plessy Wed, 07 May 2014 07:03:23 +0900 mime-support (3.54ubuntu1) saucy; urgency=low * Resynchronise with Debian. Remaining changes: - Add "cautious-launcher" for handling execution of files that are outside /usr and /opt. -- Colin Watson Mon, 13 May 2013 12:49:12 +0100 mime-support (3.54) unstable; urgency=low * Media types: 2db1fa2 Added text/vnd.debian.copyright a21f31e mime.types: removed duplicated lines. 4d7a093 Correct application/smil to application/smil+xml. (LP: #717459) be78d19 Added application/xslt+xml. (LP: #667595) * Packaging 571044e Remove the RFC files, as they only contain a link to the Web. 79583f3 Do not make activating packages wait for pending triggers. -- Charles Plessy Sat, 11 May 2013 22:13:30 +0900 mime-support (3.53) unstable; urgency=low * Media types: a100b97 Add the .opus file suffix to the audio/ogg media type. Closes: #688383, LP: #1093948 8da67da Add text/turtle media type. for .ttl files (Closes: #664824). 1d86b38 Add image/jp2 media type for .jp2 and .jpg2 files (Closes: #682856). 98c6ac3 Removed the note on compression schemes (see RFC 6713). c7e6eb1 Display reportbug message suggesting to register types to the IANA. * Packaging: 6a08271 Instruct to report a bug instead of emailing maintainers. 51dd6c7 Mark Multi-Arch: foreign. (Closes: #695357) 801bd8b Parse Desktop entries to generate mailcap entries. Patch from Brian M. Carlson. (Closes: #497779) a6e8a0f Trigger update-mime for Desktop entry files added in /usr/share/applications. 0fb8225 Mention Dpkg triggers in the manual page of update-mime. (Closes: #594915) 8b6c149 Delete debhelper log file. 734c10e Normalised VCS URLs following Lintian's standard. d649fdc Provide build-arch and build-indep targets (that do nothing). 158d5df Normalised debian/control with config-model. 67b016c Renamed debian/README debian/copyright. 26254f8 Machine-readable Debian copyright file. 060229d Disambiguate hyphens in manual pages. a455a4d Corected spelling error in a manual page. 9279645 Silent binary-arch target (that does nothing anyway). 105047b Removed conglicts on a2ps and metamail, older than oldstable. 687feeb Unversionned recommendation on file, satisfied even in oldstable. 762a035 Drop dependency on debhelper by pasting code from dh_md5sums. f318e0b Remove 'Debian' from the file name of the change log. 5ddd68b Conforms to Policy version 3.9.4. -- Charles Plessy Sun, 05 May 2013 17:24:50 +0900 mime-support (3.52-2ubuntu1) raring; urgency=low * Resynchronise with Debian. Remaining changes: - Add "cautious-launcher" for handling execution of files that are outside /usr and /opt. - Make mime-support Multi-Arch: foreign. -- Colin Watson Tue, 08 Jan 2013 10:29:07 +0000 mime-support (3.52-2) unstable; urgency=low * Adopted by László Böszörményi and Charles Plessy. (Closes: #681640) * Manage the source package with Git in Alioth collab-maint's group. (Closes: #682745) -- Charles Plessy Sat, 25 Aug 2012 09:31:43 +0900 mime-support (3.52-1ubuntu2) raring; urgency=low * Make mime-support Multi-Arch: foreign, so that it can satisfy dependencies of foreign-architecture binaries. -- Colin Watson Fri, 07 Dec 2012 14:36:30 +0000 mime-support (3.52-1ubuntu1) quantal; urgency=low * Merge from Debian unstable. Remaining changes: - Add "cautious-launcher" for handling execution of files that are outside /usr and /opt (LP: #506702). - Fix typo in cautious-launcher dialog. -- Logan Rosen Tue, 10 Jul 2012 03:07:10 -0400 mime-support (3.52-1) unstable; urgency=low * removed application/x-httpd-* types (closes: 589384) * added numerous new mime.types (closes: 652560, 624697, 627997, 619475, 639822) * fixed some bad mime.types (closes: 605250, 620372, 613810) * added dpkg trigger support (closes: 594915) * obsolete bugs (closes: 560118, 605254, 639580, 646462, 658073) -- Brian White Sun, 12 Feb 2012 21:06:40 +0100 mime-support (3.51-1) unstable; urgency=medium * added numerous new mime.types (closes: 585040, 563067, 578392, 599216) * can generate local user .mailcap file (closes: 569738, 445267) * pass --debug to sub-instances (closes: 533721) * a little more documentation (closes: 402778) -- Brian White Fri, 12 Nov 2010 20:52:43 +0100 Old Changelog: mime-support (3.49-1) UNRELEASED; urgency=medium * added numerous new mime.types (closes: 585040, 563067, 578392) * can generate local user .mailcap file (closes: 569738, 445267) * pass --debug to sub-instances (closes: 533721) * a little more documentation (closes: 402778) -- Brian White (not uploaded due to key issues) mime-support (3.48-1) unstable; urgency=medium * use only "copiousoutput" rules for "cat" action (closes: 533723) -- Brian White Tue, 08 Dec 2009 19:15:04 +0100 mime-support (3.47-1) unstable; urgency=medium * added new mime.types (closes: 550053, 545837, 540239) * ignore interactive rules for "cat" action (closes: 533723) * do perl tests before external ones (closes: 533722) * remove playaudio/playdsp (closes: 545478) -- Brian White Tue, 05 Dec 2009 20:13:45 +0100 mime-support (3.46-1) unstable; urgency=medium * added new mime.types * added option "norun" to display final command without executing it (closes: 202586) -- Brian White Thu, 18 Jun 2009 22:54:51 +0200 mime-support (3.45-1) unstable; urgency=medium * added new mime.types (closes: 508381, 502977, 202586, 531225, 507665) * added action "cat" that is like "view" but ignores "copiousoutput" (closes: 526690) * added option "norun" to display final command without executing it * file-type can now be determined by file/magic (closes: 77985) * fixed forkbomb bug (closes: 522001) -- Brian White Thu, 18 Jun 2009 22:04:29 +0200 mime-support (3.44-1) unstable; urgency=medium * added new mime.types (closes: 485863, 485929, 472262) * make default type "application/octet-stream" (closes: 445698) * added build-depends on debhelper (closes: 484860) -- Brian White Wed, 18 Jun 2008 15:44:03 +0200 mime-support (3.43-1) unstable; urgency=medium * Change "view" alternative priority to be very low so any vi install will take precedence (closes: 458691) * Generate md5sums file (closes: 484482) -- Brian White Thu, 05 Jun 2008 14:43:44 +0200 mime-support (3.42-1) unstable; urgency=medium * removed ~ files that got included by mistake -- Brian White Wed, 28 May 2008 16:30:52 +0200 mime-support (3.41-1) unstable; urgency=medium * added new mime.types (closes: 428899, 461520) * fixed handling of files with colons in their path (closes: 480215) * fixed problem where missing but expected env var would become a single quote-mark (closes: 467450) * fixed processing of "--opt=val" (closes: 476406) * remove RFCs from source package because of idiodic restrictions (closes: 480374) * no info (closes: 448023) -- Brian White Mon, 26 May 2008 15:33:59 +0200 mime-support (3.40-1) unstable; urgency=medium * added new mime.types (closes: 432273, 418564, 425014, 421678, 402559, 437724) * fixed conf-file variable name (closes: 438859) * don't suggest using as pager/editor (closes: 445700) * fixed synopsis in man-page (closes: 413165) * fixed mistake converting to lower-case (closes: 445262) * make "see" an alternative to "view" (closes: 457898) * allow --debug (instead of "--debug=1") -- Brian White Tue, 1 Jan 2008 17:35:48 +0100 mime-support (3.39-1) unstable; urgency=medium * added new mime.types -- Brian White Mon, 4 Dec 2006 22:22:38 -0500 mime-support (3.38-1) unstable; urgency=medium * changed RTF type to "application/rtf" (closes: #387262) * added new mime.types (closes: #379838, #379504, #389168, #391928) * added protection against writing bad mailcap file (closes: #400659) -- Brian White Mon, 4 Dec 2006 15:45:37 -0500 mime-support (3.37-1) unstable; urgency=medium * added new mime.types (closes: #364831, #370344, #360038) * clarified "view=" option (closes: #372149) * allow multiple package directory (closes: #355894) -- Brian White Sun, 16 Jul 2006 21:25:43 -0400 mime-support (3.36-1) unstable; urgency=medium * added .eml, 3gp, and 7z mime types * now returns non-zero exit code if can't handle file (closes: #313640) * added new mime.types (closes: #316200, #329208) -- Brian White Thu, 2 Mar 2006 20:09:20 -0500 mime-support (3.35-1) unstable; urgency=high * added .htc type so apache will serve to WinXP-sp2 -- Brian White Mon, 15 Aug 2005 22:11:35 -0400 mime-support (3.34-1) unstable; urgency=high * added more mime types -- Brian White Sat, 14 May 2005 09:07:29 -0400 mime-support (3.33-1) unstable; urgency=high * added more mime types (closes: #307839) -- Brian White Thu, 5 May 2005 20:55:38 -0400 mime-support (3.32-1) unstable; urgency=high * fixed umask setting (closes: #302381) * updated .jar mime-type (closes: #297311) * fixed man-page typos (closes: #299493) -- Brian White Thu, 5 May 2005 10:42:00 -0400 mime-support (3.31-1) unstable; urgency=medium * fixed mistakenly-enabled debug output (closes: #296501) -- Brian White Tue, 22 Feb 2005 19:06:47 -0500 mime-support (3.30-1) unstable; urgency=medium * added more mime types * minor updates to man pages -- Brian White Tue, 22 Feb 2005 00:48:40 -0500 mime-support (3.29-1) unstable; urgency=medium * added more mime types (closes: #284830) * made common extensions first (closes: #264536) * removed duplicate application/x-sh (closes: #281083) -- Brian White Tue, 4 Jan 2005 09:30:14 -0500 mime-support (3.28-1) unstable; urgency=medium * added more mime types (closes: #259706) -- Brian White Fri, 16 Jul 2004 08:28:42 -0400 mime-support (3.27-1) unstable; urgency=medium * added more mime types (closes: #241908, #250692, #258236) * made "sudo" the default for debian-view (closes: #248357) * added examples to run-mailcap man page (closes: #249062) -- Brian White Wed, 14 Jul 2004 20:48:53 -0400 mime-support (3.26-1) unstable; urgency=medium * added more mime types (closes: #235663, #235222) -- Brian White Wed, 3 Mar 2004 07:47:41 -0500 mime-support (3.25-1) unstable; urgency=medium * added more mime types (closes: #230186) * changed .pl files to "text/x-perl" (closes: #229148) * removed comment about "#pplication/x-tex" (closes: #229244) -- Brian White Mon, 16 Feb 2004 20:47:03 -0500 mime-support (3.24-1) unstable; urgency=high * removed RFCs -- stupid DFSG "non-free" argument (closes: #199818) * added more mime types (closes: #215440, #201481, #204942) * improvements to debian-view (closes: #183192) * write new mailcap to different file then move over old (closes: #207875) * fixed listed mailcap.order manpage section (closes: #189663) * removed duplicate "rpm" extension (closes: #197536) * changed .bmp files to "image/x-ms-bmp" (closes: #226741) -- Brian White Sat, 17 Jan 2004 22:32:05 -0500 mime-support (3.23-1) unstable; urgency=high * added more mime types (closes: #190782, #190783) * fixed /tmp race creating symlink over unlinked tmpfile (not practical to exploit) -- Brian White Fri, 25 Apr 2003 22:51:06 -0400 mime-support (3.22-1) unstable; urgency=high * added new mime types * allow reading files not in current directory without creating temp file (closes: #187773) * fixed last of the /tmp races (I hope) (closes: #187637) -- Brian White Tue, 15 Apr 2003 20:24:09 -0400 mime-support (3.21-1) unstable; urgency=medium * added new mime types (closes: #180650, #168828, #170734, #172198) * return error code if couldn't find program to run (closes: #173639) * fixed problem passing spaced filenames to xterm (closes: 173640) * fixed mention of "install-mime" to "update-mime" (closes: #178547) -- Brian White Sun, 23 Feb 2003 12:39:36 -0500 mime-support (3.20-1) unstable; urgency=medium * fixed problem skipping mime.types comment lines (closes: #159896) * added ability to save files from debian-view (closes: #150713) * fixed problem skipping backup files from mimedir (closes: #153637) * added numerous new mime types -- Brian White Mon, 4 Nov 2002 23:07:16 -0500 mime-support (3.19-1) unstable; urgency=medium * changed un-quoting of mailcap rules to be more consistent with other RFC interpretations (closes: #142506) * added a new mime-type for "vnd.cinderella" -- Brian White Sat, 4 May 2002 08:47:30 -0400 mime-support (3.18-1) unstable; urgency=high * yet more new mime types -- Brian White Tue, 9 Apr 2002 23:28:49 -0400 mime-support (3.17-1) unstable; urgency=high * fixed bug in run-mailcap v3.16-1 (closes: #141638) -- Brian White Sun, 7 Apr 2002 13:18:42 -0400 mime-support (3.16-1) unstable; urgency=high * added new mime types (closes: #139333, #140539) * brought in "mailcap" man page and fixed type (closes: #139989) -- Brian White Fri, 5 Apr 2002 20:44:20 -0500 mime-support (3.15-1) unstable; urgency=high * fixed problem with saving stdin (closes: #137024) * merged in many new types from Apache source -- Brian White Tue, 12 Mar 2002 20:18:19 -0500 mime-support (3.14-1) unstable; urgency=high * added new mime types (closes: #124223, #128017, #129553, #130523) * added more descriptive error message when no rules pass their tests -- Brian White Thu, 31 Jan 2002 23:07:38 -0500 mime-support (3.13-3) unstable; urgency=high * changed urgency to get it in to testing before the base freeze -- Brian White Sat, 1 Dec 2001 11:30:13 -0500 mime-support (3.13-2) unstable; urgency=low * removed debug flag from "update-mime" (oops) -- Brian White Fri, 30 Nov 2001 08:11:43 -0500 mime-support (3.13-1) unstable; urgency=low * added new mime.type entries (closes: #111986, #118680, #116672) * fixed /tmp race coditions and other problems (closes: #94869) * /etc/mailcap is no longer a conffile (closes: #34294, #115401, #110594) * fixed ordering within a priority when wildcards are used -- Brian White Fri, 30 Nov 2001 00:39:16 -0500 mime-support (3.12-1) unstable; urgency=low * added new mime.type entries (closes: 100132, 101386, 101465) * run update-mime during postinst (closes: 107540) * added new mime.type entries (closes: 85028, 85395, 99117, 101386) * remove obsolete /var/lib directory (closes: 95563) -- Brian White Thu, 9 Aug 2001 23:04:02 -0400 mime-support (3.11-1) unstable; urgency=low * support escaped percent signs * added new mime.type entries (closes: 85395, 99117) -- Brian White Sun, 22 Apr 2001 11:43:03 -0400 mime-support (3.10-1) unstable; urgency=low * added "wml" mime types (closes: 69163) * updated to new rfc-2046 (closes: 79431) * use "x-terminal-emulator" instead of "xterm" (closes: 79788) * set "text/css" for ".css" extensions (closes: 80281) * changed excel and powerpoint entries (closes: 52379) * no longer use old install-mime (closes: 69494) * minor documentation fix (closes: 75928) * support escaped semi-colons (closes: 76583) * added numerous new mime.type entries -- Brian White Sat, 13 Jan 2001 22:42:21 -0500 mime-support (3.9-1) unstable; urgency=low * made temp file names unique (Bug#50576) * fixed problem with decoded file not being removed -- Brian White Thu, 18 Nov 1999 21:35:56 -0500 mime-support (3.8-1) unstable; urgency=low * quote filenames during encode/decode to handle shell metacharacters (Bug#42022) * add 'text/mathml' mime.type (Bug#47699) -- Brian White Fri, 29 Oct 1999 07:23:53 -0400 mime-support (3.7-1) unstable; urgency=low * fixed problem with run-mailcap extracting tests from mailcap (Bug#39877) * added support for bzip/bzip2 (Bug#42022) -- Brian White Fri, 27 Aug 1999 14:27:44 -0400 mime-support (3.6-1) unstable; urgency=low * remove dependancy on perl; perl-base is sufficient (Bug#41510) * fixed documentation (Bug#30822) * made /var/lib/mime/mime-support-compat a conffile (Bug#41148) * fixed some lintian errors (Bug#41618) * removed work files from tarball (Bug#41623) * remove decompressed files when done (Bug#34696) * now read mime.types from /usr/share/etc and /usr/local/etc (Bug#34731) * remove all back-ticks from %{...} substitutions * re-enable "install-mime is obsolete" warning * send 'test' output to /dev/null * add new mime types -- Brian White Tue, 20 Jul 1999 20:43:28 -0400 mime-support (3.5-1) frozen unstable; urgency=low * fix ordering problem -- Brian White Mon, 30 Nov 1998 12:35:40 -0500 mime-support (3.4-1) frozen unstable; urgency=low * automatically fix mailcap lines to put '' around %s (#28604) * temporarily disabled "install-mime is obsolete" warning -- Brian White Thu, 12 Nov 1998 09:45:04 -0500 mime-support (3.3-1) unstable; urgency=low * added conflict for older a2ps with /usr/bin/compose (#25875 and friends) -- Brian White Tue, 13 Oct 1998 13:23:16 -0400 mime-support (3.2-1) unstable; urgency=low * added filename pattern matching if ext match fails (#26810) * added new mime-type: text/x-crontab (#26810) * fixed wildcard matching (broke in 3.1) -- Brian White Fri, 18 Sep 1998 11:08:51 -0400 mime-support (3.1-1) unstable; urgency=low * added new mime types * fixed typo in update-mime man page (prerm -> postrm) (#26561) * removed x-gzip and x-compress types (they are encodings) * added gzip and compress encoding support to run-mailcap * added "copiousoutput" support to run-mailcap -- Brian White Mon, 14 Sep 1998 17:32:40 -0400 mime-support (3.0-1) unstable; urgency=low * complete redesign (#25516, #22377, #7860) * added new mime types (#24151, #25036) * moved run-mailcap man page (#25130) -- Brian White Sun, 16 Aug 1998 19:06:55 -0400 mime-support (2.17-1) frozen unstable; urgency=low * added new mime.types for .bz2, .hqx, & .sit -- Brian White Tue, 12 May 1998 19:06:38 -0400 mime-support (2.16-1) frozen unstable; urgency=high * changed name of "show" to "see" (Bug#19775 and friends) * fixed man page dangling symlink (Bug#19866) * fixed security of run-mailcap /tmp usage (Bug#19807) -- Brian White Mon, 30 Mar 1998 09:44:17 -0500 mime-support (2.15-1) unstable; urgency=high * improved run-mailcap and aliased it to "showfile" * fixed bug in "debian-view" -- Brian White Fri, 13 Mar 1998 20:53:16 -0500 mime-support (2.14-1) unstable; urgency=high * fixed bug when used with perl 5.004 (Bug#16222) -- Brian White Fri, 20 Feb 1998 11:47:29 -0500 mime-support (2.13-1) unstable; urgency=low * added 'run-mailcap' program for spawning programs based on mime-type * enforced rule that actions must not be backgrounded within mailcap * made 'debian-view' ask to become root when installing (Bug#9018) * added description to install order resolution (Bug#11929) * removed obsolete rfc files (Bug#15152) * Added binary-indep and binary-arch targets (Bug#13548) * Left copyright file uncompressed (Bug#14510) -- Brian White Sat, 7 Feb 1998 16:48:50 -0500 mime-support (2.12-1) frozen unstable; urgency=low * added more descriptive error for incorrectly formatted mailcap file * removed "test" hack added to help netscape (slowed lynx) (bug#7294) -- Brian White Wed, 2 Apr 1997 14:29:49 -0500 mime-support (2.11-1) unstable; urgency=low * added hack to work around Netscape's test bug (Bug#7030) -- Brian White Wed, 5 Feb 1997 16:00:48 -0500 mime-support (2.10-1) unstable; urgency=low * added new application/dsptype to mime.types * added new application/rtf to mime.types * added new application/png to mime.types (Bug#6611) -- Brian White Wed, 11 Dec 1996 21:42:10 -0500 mime-support (2.09-1) unstable; urgency=low * removed use of perl extensions so no postinst/prerm errors * added check to make sure /etc/mailcap is valid (Bug#5848) -- Brian White Wed, 11 Dec 1996 21:42:10 -0500 mime-support (2.08-2) frozen unstable; urgency=low * added dependancy on perl -- Brian White Tue, 3 Dec 1996 11:53:55 -0500 mime-support (2.08-1) frozen unstable; urgency=low * added "autoflush" setting for STDOUT -- Brian White Mon, 25 Nov 1996 14:38:14 -0500 mime-support (2.07-1) frozen unstable; urgency=low * added new application/x-pgp-signature to mime.types * added new scripts to handle audio/basic and application/x-debian-package -- Brian White Fri, 22 Nov 1996 13:35:55 -0500 mime-support (2.06-1) unstable; urgency=low * changed bad content-type error into a warning -- Brian White Wed, 16 Oct 1996 12:01:19 +0400 mime-support (2.05-1) unstable; urgency=high * fixed typo that caused install-mime not to work (sheesh!) -- Brian White Fri, 11 Oct 1996 21:19:41 +0400 mime-support (2.04-1) unstable; urgency=low * added help page to conflict resolution screen * added checking to content-types * added text/x-vCard and text/x-vCalendar mime.types -- Brian White Mon, 7 Oct 1996 15:01:22 +0400 mime-support (2.03-1) unstable; urgency=low * added "application/x-httpd-php" type * added defaults to install-mime prompts -- Brian White Thu, 24 Sep 1996 12:01:22 +0400 # Local variables: # mode: debian-changelog # End: mime-support-3.60ubuntu1/debian/prerm0000664000000000000000000000031612617270574014624 0ustar #! /bin/sh # # prerm file for mime-support # This section can be removed after the Jessie release. if [ "$1" = "remove" ]; then update-alternatives --remove view /usr/bin/see rm -f /etc/mailcap fi mime-support-3.60ubuntu1/debian/bug-presubj0000664000000000000000000000137612617270574015733 0ustar Please consider registering MIME media types to the Internet Assigned Numbers Authority (IANA) before requiring their inclusion in /etc/mime.types. Simplified registration procedures for vendor and personal trees are being implemented with the update of RFC 4288[1], that states: "it should rarely, if ever, be necessary to use unregistered types. Therefore, use of types in the 'x.' tree is strongly discouraged." I have confirmed that the process is fairly quick and painless by registering text/vnd.debian.copyright[2] for machine-readable Debian copyright files. [1] http://tools.ietf.org/html/draft-ietf-appsawg-media-type-regs-14 [2] http://www.iana.org/assignments/media-types/text/vnd.debian.copyright -- Charles Plessy Tue, 08 Jan 2013 06:31:07 +0900 mime-support-3.60ubuntu1/debian/copyright0000664000000000000000000000222112617270574015504 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Source: git://anonscm.debian.org/collab-maint/mime-support.git Files: * Copyright: public-domain License: ad-hoc This package was written by Brian White and others. It contains public information compiled from around the 'net and many people. . The "update-mime" program was written by Brian White and has been placed in the public domain. Files: mailcap.man Copyright: (c) 1991 Bell Communications Research, Inc. (Bellcore) License: Bellcore Permission to use, copy, modify, and distribute this material for any purpose and without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies, and that the name of Bellcore not be used in advertising or publicity pertaining to this material without the specific, prior written permission of an authorized representative of Bellcore. BELLCORE MAKES NO REPRESENTATIONS ABOUT THE ACCURACY OR SUITABILITY OF THIS MATERIAL FOR ANY PURPOSE. IT IS PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. Comment: Author: Nathaniel S. Borenstein mime-support-3.60ubuntu1/debian/triggers0000664000000000000000000000012112617270574015317 0ustar interest-noawait /usr/lib/mime/packages interest-noawait /usr/share/applications mime-support-3.60ubuntu1/debian/conffiles0000664000000000000000000000004312617270574015444 0ustar /etc/mime.types /etc/mailcap.order mime-support-3.60ubuntu1/debian/rules0000775000000000000000000000717112742150677014642 0ustar #! /usr/bin/make -f # # Debian rules for building Mime-Support # package := mime-support export SOURCE_DATE_EPOCH = $(shell date -d "$$(dpkg-parsechangelog --count 1 -SDate)" +%s) default: @echo "Build 'binary' or 'clean'?" @echo " " clean: test -f debian/rules rm -f debian/substvars debian/files debian/debhelper.log build-stamp -rm -rf debian/tmp debian/*~ *~ # Do nothing in build, build-arch and build-indep, but provide those targets. build: build-arch build-indep build-arch: build-stamp build-indep: build-stamp build-stamp: touch build-stamp binary-indep: test -f debian/rules test root = "`whoami`" -rm -rf debian/tmp mkdir -p debian/tmp/DEBIAN debian/tmp/etc debian/tmp/usr/lib/mime/packages mkdir -p debian/tmp/usr/share/bug/$(package) mkdir -p debian/tmp/usr/share/doc/$(package) debian/tmp/usr/sbin debian/tmp/usr/bin mkdir -p debian/tmp/usr/share/man/man1 debian/tmp/usr/share/man/man5 debian/tmp/usr/share/man/man8 chmod -R 755 debian/tmp install -m 644 mime.types debian/tmp/etc/ install -m 644 mailcap debian/tmp/usr/lib/mime/ install -m 644 mailcap.order debian/tmp/etc/ install -m 644 mailcap.man debian/tmp/usr/share/man/man5/mailcap.5 install -m 644 mailcap.order.man debian/tmp/usr/share/man/man5/mailcap.order.5 install -m 755 update-mime debian/tmp/usr/sbin/ install -m 644 update-mime.man debian/tmp/usr/share/man/man8/update-mime.8 install -m 755 run-mailcap debian/tmp/usr/bin/ install -m 644 run-mailcap.man debian/tmp/usr/share/man/man1/run-mailcap.1 install -m 755 debian/cautious-launcher debian/tmp/usr/bin/ install -m 644 debian/bug-presubj debian/tmp/usr/share/bug/$(package)/presubj install -m 644 debian/changelog debian/tmp/usr/share/doc/$(package)/changelog install -m 644 debian/copyright debian/tmp/usr/share/doc/$(package)/copyright install -m 755 debian-view debian/tmp/usr/lib/mime/ # install -m 755 playaudio debian/tmp/usr/lib/mime/ # install -m 755 playdsp debian/tmp/usr/lib/mime/ install -m 644 mailcap.entries debian/tmp/usr/lib/mime/packages/mime-support install -m 755 debian/postinst debian/tmp/DEBIAN/postinst install -m 755 debian/prerm debian/tmp/DEBIAN/prerm install -m 644 debian/conffiles debian/tmp/DEBIAN/conffiles install -m 644 debian/triggers debian/tmp/DEBIAN/triggers cd debian/tmp/usr/share/man; gzip --best --force --no-name --verbose */* cd debian/tmp/usr/share/doc/$(package); gzip --best --no-name --verbose * cd debian/tmp/usr/share/doc/$(package); gunzip copyright.gz cd debian/tmp/usr/bin; ln -s run-mailcap see cd debian/tmp/usr/bin; ln -s run-mailcap edit cd debian/tmp/usr/bin; ln -s run-mailcap compose cd debian/tmp/usr/bin; ln -s run-mailcap print cd debian/tmp/usr/share/man/man1; ln -s run-mailcap.1.gz see.1.gz cd debian/tmp/usr/share/man/man1; ln -s run-mailcap.1.gz edit.1.gz cd debian/tmp/usr/share/man/man1; ln -s run-mailcap.1.gz compose.1.gz cd debian/tmp/usr/share/man/man1; ln -s run-mailcap.1.gz print.1.gz # Generate DEBIAN/md5sums, excluding conffiles. Code pasted from dh_md5sums. (cd debian/tmp >/dev/null ; find . -type f ! -path "./etc/mime.types" ! -path "./etc/mailcap.order" ! -regex './DEBIAN/.*' -printf '%P\0' | LC_ALL=C sort -z | xargs -r0 md5sum > DEBIAN/md5sums) >/dev/null chmod 644 debian/tmp/DEBIAN/md5sums chown 0:0 debian/tmp/DEBIAN/md5sums dpkg-gencontrol chown -R root.root debian/tmp chmod -R go=rX debian/tmp find debian/tmp -newermt "@$$SOURCE_DATE_EPOCH" -print0 | \ xargs -0r touch --no-dereference --date="@$$SOURCE_DATE_EPOCH" dpkg --build debian/tmp dpkg-name -o -s .. debian/tmp.deb binary-arch: binary: binary-indep @echo "Binaries made" # local variables: # tab-width: 8 # end: mime-support-3.60ubuntu1/mime-db0000664000000000000000000000000012617270574013555 0ustar mime-support-3.60ubuntu1/debian-view0000775000000000000000000000147412617270574014460 0ustar #! /bin/sh dpkg="dpkg" echo "Info for debian package '$1':" dpkg-deb --info $1 echo " " echo "Do you wish to:" echo " - I)nstall the package now," echo " - S)ave it to a file, or" echo " - Q)uit now" echo -n "Your choice (I/S/Q)? " read choice case "$choice" in [iI]) if [ `id --user` -ne 0 ] then echo "Installation of Debian packages needs to be done as root." echo -n "Enter command used to become root (default=sudo): " read sudo if [ -z "$sudo" ]; then sudo="sudo" fi dpkg="$sudo $dpkg" fi echo " " echo "Installing package..." eval "$dpkg --install '$1'" ;; [sS]) echo -n "Save as? " read filename echo "Saving '$filename'..." cat "$1" >$filename ;; esac echo " " echo -n "Done. Press to continue: " read dummy echo " " mime-support-3.60ubuntu1/run-mailcap.man0000664000000000000000000000570512617272057015244 0ustar .\" Hey, Emacs! This is an -*- nroff -*- source file. .\" run-mailcap and this manpage were written by Brian White and .\" have been placed in the public domain (the only true "free"). .\" .TH RUN-MAILCAP 1 "1st Jan 2008" "Debian Project" "Run Mailcap Programs" .SH NAME run-mailcap, view, see, edit, compose, print \- execute programs via entries in the .I mailcap file .SH SYNOPSIS .B run-mailcap \-\-action=ACTION [\-\-option[=value]] [MIME-TYPE:[ENCODING:]]FILE [...] The .BR see , .BR edit , .B compose and .B print versions are just aliases that default to the view, edit, compose, and print actions (respectively). .SH DESCRIPTION .PP .B run-mailcap (or any of its aliases) will use the given action to process each mime-type/file in turn. Each file is specified as its mime-type, its encoding (e.g. compression), and filename together, separated by colons. If the mime-type is omitted, an attempt to determine the type is made by trying to match the file's extension with those in the .I mime.types files. If no mime-type is found, a last attempt will be done by running the . B file command, if available. If the encoding is omitted, it will also be determined from the file's extensions. Currently supported encodings are .B gzip (.gz), .B bzip2 (.bz2), .B xz (.xz), and .B compress (.Z). A filename of "-" can be used to mean "standard input", but then a mime-type .B must be specified. Both the user's files (~/.mailcap; ~/.mime.types) and the system files (/etc/mailcap; /etc/mime.types) are searched in turn for information. .SS EXAMPLES see picture.jpg print output.ps.gz compose text/html:index.htm extract-mail-attachment msg.txt | see image/tiff:gzip:- .SS OPTIONS All options are in the form --=. .TP .BI \-\-action= Performs the specified action on the files. Valid actions are .IR view , .IR cat (uses only "copiousoutput" rules and sends output to STDOUT) , .IR compose , .IR composetyped , .I edit and .IR print . If no action is specified, the action will be determined by how the program was called. .TP .BI \-\-debug Turns on extra information to find out what is happening. .TP .BI \-\-nopager Ignores any "copiousoutput" directive and sends output to STDOUT. .TP .BI \-\-norun Displays the found command without actually executing it. .SH SECURITY A temporary copy of the file is opened if the file name matches the Perl regular expresssion "[^[:alnum:],.:/@%^+=_-]", in order to protect from the injection of shell commands, and to make sure that the name can always be displayed in the current locale. In addition, the file is opened using its absolute path to prevent the injection of command-line arguments, for instance using file names starting with dashes. .SH "SEE ALSO" .BR file "(1)" .BR mailcap "(5)" .BR mailcap.order "(5)" .BR update-mime "(8)" .SH AUTHOR .B run-mailcap (and its aliases) was written by Brian White . .SH COPYRIGHT .B run-mailcap (and its aliases) is in the public domain (the only true "free"). mime-support-3.60ubuntu1/mime.types0000664000000000000000000005735512645203012014346 0ustar ############################################################################### # # MIME media types and the extensions that represent them. # # The format of this file is a media type on the left and zero or more # filename extensions on the right. Programs using this file will map # files ending with those extensions to the associated type. # # This file is part of the "mime-support" package. Please report a bug using # the "reportbug" command of the "reportbug" package if you would like new # types or extensions to be added. # # The reason that all types are managed by the mime-support package instead # allowing individual packages to install types in much the same way as they # add entries in to the mailcap file is so these types can be referenced by # other programs (such as a web server) even if the specific support package # for that type is not installed. # # Users can add their own types if they wish by creating a ".mime.types" # file in their home directory. Definitions included there will take # precedence over those listed here. # ############################################################################### application/activemessage application/andrew-inset ez application/annodex anx application/applefile application/atom+xml atom application/atomcat+xml atomcat application/atomicmail application/atomserv+xml atomsrv application/batch-SMTP application/bbolin lin application/beep+xml application/cals-1840 application/commonground application/cu-seeme cu application/cybercash application/davmount+xml davmount application/dca-rft application/dec-dx application/dicom dcm application/docbook+xml application/dsptype tsp application/dvcs application/ecmascript es application/edi-consent application/edi-x12 application/edifact application/eshop application/font-sfnt otf ttf application/font-tdpfr pfr application/font-woff woff application/futuresplash spl application/ghostview application/gzip gz application/hta hta application/http application/hyperstudio application/iges application/index application/index.cmd application/index.obj application/index.response application/index.vnd application/iotp application/ipp application/isup application/java-archive jar application/java-serialized-object ser application/java-vm class application/javascript js application/json json application/m3g m3g application/mac-binhex40 hqx application/mac-compactpro cpt application/macwriteii application/marc application/mathematica nb nbp application/mbox mbox application/ms-tnef application/msaccess mdb application/msword doc dot application/mxf mxf application/news-message-id application/news-transmission application/ocsp-request application/ocsp-response application/octet-stream bin deploy msu msp application/oda oda application/oebps-package+xml opf application/ogg ogx application/onenote one onetoc2 onetmp onepkg application/parityfec application/pdf pdf application/pgp-encrypted pgp application/pgp-keys key application/pgp-signature sig application/pics-rules prf application/pkcs10 application/pkcs7-mime application/pkcs7-signature application/pkix-cert application/pkix-crl application/pkixcmp application/postscript ps ai eps epsi epsf eps2 eps3 application/prs.alvestrand.titrax-sheet application/prs.cww application/prs.nprend application/qsig application/rar rar application/rdf+xml rdf application/remote-printing application/riscos application/rtf rtf application/sdp application/set-payment application/set-payment-initiation application/set-registration application/set-registration-initiation application/sgml application/sgml-open-catalog application/sieve application/sla stl application/slate application/smil+xml smi smil application/timestamp-query application/timestamp-reply application/vemmi application/whoispp-query application/whoispp-response application/wita application/x400-bp application/xhtml+xml xhtml xht application/xml xml xsd application/xml-dtd application/xml-external-parsed-entity application/xslt+xml xsl xslt application/xspf+xml xspf application/zip zip application/vnd.3M.Post-it-Notes application/vnd.accpac.simply.aso application/vnd.accpac.simply.imp application/vnd.acucobol application/vnd.aether.imp application/vnd.android.package-archive apk application/vnd.anser-web-certificate-issue-initiation application/vnd.anser-web-funds-transfer-initiation application/vnd.audiograph application/vnd.bmi application/vnd.businessobjects application/vnd.canon-cpdl application/vnd.canon-lips application/vnd.cinderella cdy application/vnd.claymore application/vnd.commerce-battelle application/vnd.commonspace application/vnd.comsocaller application/vnd.contact.cmsg application/vnd.cosmocaller application/vnd.ctc-posml application/vnd.cups-postscript application/vnd.cups-raster application/vnd.cups-raw application/vnd.cybank application/vnd.debian.binary-package deb ddeb udeb application/vnd.dna application/vnd.dpgraph application/vnd.dxr application/vnd.ecdis-update application/vnd.ecowin.chart application/vnd.ecowin.filerequest application/vnd.ecowin.fileupdate application/vnd.ecowin.series application/vnd.ecowin.seriesrequest application/vnd.ecowin.seriesupdate application/vnd.enliven application/vnd.epson.esf application/vnd.epson.msf application/vnd.epson.quickanime application/vnd.epson.salt application/vnd.epson.ssf application/vnd.ericsson.quickcall application/vnd.eudora.data application/vnd.fdf application/vnd.ffsns application/vnd.flographit application/vnd.font-fontforge-sfd sfd application/vnd.framemaker application/vnd.fsc.weblaunch application/vnd.fujitsu.oasys application/vnd.fujitsu.oasys2 application/vnd.fujitsu.oasys3 application/vnd.fujitsu.oasysgp application/vnd.fujitsu.oasysprs application/vnd.fujixerox.ddd application/vnd.fujixerox.docuworks application/vnd.fujixerox.docuworks.binder application/vnd.fut-misnet application/vnd.google-earth.kml+xml kml application/vnd.google-earth.kmz kmz application/vnd.grafeq application/vnd.groove-account application/vnd.groove-identity-message application/vnd.groove-injector application/vnd.groove-tool-message application/vnd.groove-tool-template application/vnd.groove-vcard application/vnd.hhe.lesson-player application/vnd.hp-HPGL application/vnd.hp-PCL application/vnd.hp-PCLXL application/vnd.hp-hpid application/vnd.hp-hps application/vnd.httphone application/vnd.hzn-3d-crossword application/vnd.ibm.MiniPay application/vnd.ibm.afplinedata application/vnd.ibm.modcap application/vnd.informix-visionary application/vnd.intercon.formnet application/vnd.intertrust.digibox application/vnd.intertrust.nncp application/vnd.intu.qbo application/vnd.intu.qfx application/vnd.irepository.package+xml application/vnd.is-xpr application/vnd.japannet-directory-service application/vnd.japannet-jpnstore-wakeup application/vnd.japannet-payment-wakeup application/vnd.japannet-registration application/vnd.japannet-registration-wakeup application/vnd.japannet-setstore-wakeup application/vnd.japannet-verification application/vnd.japannet-verification-wakeup application/vnd.koan application/vnd.lotus-1-2-3 application/vnd.lotus-approach application/vnd.lotus-freelance application/vnd.lotus-notes application/vnd.lotus-organizer application/vnd.lotus-screencam application/vnd.lotus-wordpro application/vnd.mcd application/vnd.mediastation.cdkey application/vnd.meridian-slingshot application/vnd.mif application/vnd.minisoft-hp3000-save application/vnd.mitsubishi.misty-guard.trustweb application/vnd.mobius.daf application/vnd.mobius.dis application/vnd.mobius.msl application/vnd.mobius.plc application/vnd.mobius.txf application/vnd.motorola.flexsuite application/vnd.motorola.flexsuite.adsi application/vnd.motorola.flexsuite.fis application/vnd.motorola.flexsuite.gotap application/vnd.motorola.flexsuite.kmr application/vnd.motorola.flexsuite.ttc application/vnd.motorola.flexsuite.wem application/vnd.mozilla.xul+xml xul application/vnd.ms-artgalry application/vnd.ms-asf application/vnd.ms-excel xls xlb xlt application/vnd.ms-excel.addin.macroEnabled.12 xlam application/vnd.ms-excel.sheet.binary.macroEnabled.12 xlsb application/vnd.ms-excel.sheet.macroEnabled.12 xlsm application/vnd.ms-excel.template.macroEnabled.12 xltm application/vnd.ms-fontobject eot application/vnd.ms-lrm application/vnd.ms-officetheme thmx application/vnd.ms-pki.seccat cat #application/vnd.ms-pki.stl stl application/vnd.ms-powerpoint ppt pps application/vnd.ms-powerpoint.addin.macroEnabled.12 ppam application/vnd.ms-powerpoint.presentation.macroEnabled.12 pptm application/vnd.ms-powerpoint.slide.macroEnabled.12 sldm application/vnd.ms-powerpoint.slideshow.macroEnabled.12 ppsm application/vnd.ms-powerpoint.template.macroEnabled.12 potm application/vnd.ms-project application/vnd.ms-tnef application/vnd.ms-word.document.macroEnabled.12 docm application/vnd.ms-word.template.macroEnabled.12 dotm application/vnd.ms-works application/vnd.mseq application/vnd.msign application/vnd.music-niff application/vnd.musician application/vnd.netfpx application/vnd.noblenet-directory application/vnd.noblenet-sealer application/vnd.noblenet-web application/vnd.novadigm.EDM application/vnd.novadigm.EDX application/vnd.novadigm.EXT application/vnd.oasis.opendocument.chart odc application/vnd.oasis.opendocument.database odb application/vnd.oasis.opendocument.formula odf application/vnd.oasis.opendocument.graphics odg application/vnd.oasis.opendocument.graphics-template otg application/vnd.oasis.opendocument.image odi application/vnd.oasis.opendocument.presentation odp application/vnd.oasis.opendocument.presentation-template otp application/vnd.oasis.opendocument.spreadsheet ods application/vnd.oasis.opendocument.spreadsheet-template ots application/vnd.oasis.opendocument.text odt application/vnd.oasis.opendocument.text-master odm application/vnd.oasis.opendocument.text-template ott application/vnd.oasis.opendocument.text-web oth application/vnd.openxmlformats-officedocument.presentationml.presentation pptx application/vnd.openxmlformats-officedocument.presentationml.slide sldx application/vnd.openxmlformats-officedocument.presentationml.slideshow ppsx application/vnd.openxmlformats-officedocument.presentationml.template potx application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx application/vnd.openxmlformats-officedocument.spreadsheetml.template xltx application/vnd.openxmlformats-officedocument.wordprocessingml.document docx application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx application/vnd.osa.netdeploy application/vnd.palm application/vnd.pg.format application/vnd.pg.osasli application/vnd.powerbuilder6 application/vnd.powerbuilder6-s application/vnd.powerbuilder7 application/vnd.powerbuilder7-s application/vnd.powerbuilder75 application/vnd.powerbuilder75-s application/vnd.previewsystems.box application/vnd.publishare-delta-tree application/vnd.pvi.ptid1 application/vnd.pwg-xhtml-print+xml application/vnd.rapid application/vnd.rim.cod cod application/vnd.s3sms application/vnd.seemail application/vnd.shana.informed.formdata application/vnd.shana.informed.formtemplate application/vnd.shana.informed.interchange application/vnd.shana.informed.package application/vnd.smaf mmf application/vnd.sss-cod application/vnd.sss-dtf application/vnd.sss-ntf application/vnd.stardivision.calc sdc application/vnd.stardivision.chart sds application/vnd.stardivision.draw sda application/vnd.stardivision.impress sdd application/vnd.stardivision.math sdf application/vnd.stardivision.writer sdw application/vnd.stardivision.writer-global sgl application/vnd.street-stream application/vnd.sun.xml.calc sxc application/vnd.sun.xml.calc.template stc application/vnd.sun.xml.draw sxd application/vnd.sun.xml.draw.template std application/vnd.sun.xml.impress sxi application/vnd.sun.xml.impress.template sti application/vnd.sun.xml.math sxm application/vnd.sun.xml.writer sxw application/vnd.sun.xml.writer.global sxg application/vnd.sun.xml.writer.template stw application/vnd.svd application/vnd.swiftview-ics application/vnd.symbian.install sis application/vnd.tcpdump.pcap cap pcap application/vnd.triscape.mxs application/vnd.trueapp application/vnd.truedoc application/vnd.tve-trigger application/vnd.ufdl application/vnd.uplanet.alert application/vnd.uplanet.alert-wbxml application/vnd.uplanet.bearer-choice application/vnd.uplanet.bearer-choice-wbxml application/vnd.uplanet.cacheop application/vnd.uplanet.cacheop-wbxml application/vnd.uplanet.channel application/vnd.uplanet.channel-wbxml application/vnd.uplanet.list application/vnd.uplanet.list-wbxml application/vnd.uplanet.listcmd application/vnd.uplanet.listcmd-wbxml application/vnd.uplanet.signal application/vnd.vcx application/vnd.vectorworks application/vnd.vidsoft.vidconference application/vnd.visio vsd vst vsw vss application/vnd.vividence.scriptfile application/vnd.wap.sic application/vnd.wap.slc application/vnd.wap.wbxml wbxml application/vnd.wap.wmlc wmlc application/vnd.wap.wmlscriptc wmlsc application/vnd.webturbo application/vnd.wordperfect wpd application/vnd.wordperfect5.1 wp5 application/vnd.wrq-hp3000-labelled application/vnd.wt.stf application/vnd.xara application/vnd.xfdl application/vnd.yellowriver-custom-menu application/zlib application/x-123 wk application/x-7z-compressed 7z application/x-abiword abw application/x-apple-diskimage dmg application/x-bcpio bcpio application/x-bittorrent torrent application/x-cab cab application/x-cbr cbr application/x-cbz cbz application/x-cdf cdf cda application/x-cdlink vcd application/x-chess-pgn pgn application/x-comsol mph application/x-core application/x-cpio cpio application/x-csh csh application/x-debian-package deb udeb application/x-director dcr dir dxr application/x-dms dms application/x-doom wad application/x-dvi dvi application/x-executable application/x-font pfa pfb gsf application/x-font-pcf pcf pcf.Z application/x-freemind mm application/x-futuresplash spl application/x-ganttproject gan application/x-gnumeric gnumeric application/x-go-sgf sgf application/x-graphing-calculator gcf application/x-gtar gtar application/x-gtar-compressed tgz taz application/x-hdf hdf #application/x-httpd-eruby rhtml #application/x-httpd-php phtml pht php #application/x-httpd-php-source phps #application/x-httpd-php3 php3 #application/x-httpd-php3-preprocessed php3p #application/x-httpd-php4 php4 #application/x-httpd-php5 php5 application/x-hwp hwp application/x-ica ica application/x-info info application/x-internet-signup ins isp application/x-iphone iii application/x-iso9660-image iso application/x-jam jam application/x-java-applet application/x-java-bean application/x-java-jnlp-file jnlp application/x-jmol jmz application/x-kchart chrt application/x-kdelnk application/x-killustrator kil application/x-koan skp skd skt skm application/x-kpresenter kpr kpt application/x-kspread ksp application/x-kword kwd kwt application/x-latex latex application/x-lha lha application/x-lyx lyx application/x-lzh lzh application/x-lzx lzx application/x-maker frm maker frame fm fb book fbdoc application/x-mif mif application/x-mpegURL m3u8 application/x-ms-application application application/x-ms-manifest manifest application/x-ms-wmd wmd application/x-ms-wmz wmz application/x-msdos-program com exe bat dll application/x-msi msi application/x-netcdf nc application/x-ns-proxy-autoconfig pac application/x-nwc nwc application/x-object o application/x-oz-application oza application/x-pkcs7-certreqresp p7r application/x-pkcs7-crl crl application/x-python-code pyc pyo application/x-qgis qgs shp shx application/x-quicktimeplayer qtl application/x-rdp rdp application/x-redhat-package-manager rpm application/x-rss+xml rss application/x-ruby rb application/x-rx application/x-scilab sci sce application/x-scilab-xcos xcos application/x-sh sh application/x-shar shar application/x-shellscript application/x-shockwave-flash swf swfl application/x-silverlight scr application/x-sql sql application/x-stuffit sit sitx application/x-sv4cpio sv4cpio application/x-sv4crc sv4crc application/x-tar tar application/x-tcl tcl application/x-tex-gf gf application/x-tex-pk pk application/x-texinfo texinfo texi application/x-trash ~ % bak old sik application/x-troff t tr roff application/x-troff-man man application/x-troff-me me application/x-troff-ms ms application/x-ustar ustar application/x-videolan application/x-wais-source src application/x-wingz wz application/x-x509-ca-cert crt application/x-xcf xcf application/x-xfig fig application/x-xpinstall xpi application/x-xz xz audio/32kadpcm audio/3gpp audio/amr amr audio/amr-wb awb audio/annodex axa audio/basic au snd audio/csound csd orc sco audio/flac flac audio/g.722.1 audio/l16 audio/midi mid midi kar audio/mp4a-latm audio/mpa-robust audio/mpeg mpga mpega mp2 mp3 m4a audio/mpegurl m3u audio/ogg oga ogg opus spx audio/parityfec audio/prs.sid sid audio/telephone-event audio/tone audio/vnd.cisco.nse audio/vnd.cns.anp1 audio/vnd.cns.inf1 audio/vnd.digital-winds audio/vnd.everad.plj audio/vnd.lucent.voice audio/vnd.nortel.vbk audio/vnd.nuera.ecelp4800 audio/vnd.nuera.ecelp7470 audio/vnd.nuera.ecelp9600 audio/vnd.octel.sbc audio/vnd.qcelp audio/vnd.rhetorex.32kadpcm audio/vnd.vmx.cvsd audio/x-aiff aif aiff aifc audio/x-gsm gsm audio/x-mpegurl m3u audio/x-ms-wma wma audio/x-ms-wax wax audio/x-pn-realaudio-plugin audio/x-pn-realaudio ra rm ram audio/x-realaudio ra audio/x-scpls pls audio/x-sd2 sd2 audio/x-wav wav chemical/x-alchemy alc chemical/x-cache cac cache chemical/x-cache-csf csf chemical/x-cactvs-binary cbin cascii ctab chemical/x-cdx cdx chemical/x-cerius cer chemical/x-chem3d c3d chemical/x-chemdraw chm chemical/x-cif cif chemical/x-cmdf cmdf chemical/x-cml cml chemical/x-compass cpa chemical/x-crossfire bsd chemical/x-csml csml csm chemical/x-ctx ctx chemical/x-cxf cxf cef #chemical/x-daylight-smiles smi chemical/x-embl-dl-nucleotide emb embl chemical/x-galactic-spc spc chemical/x-gamess-input inp gam gamin chemical/x-gaussian-checkpoint fch fchk chemical/x-gaussian-cube cub chemical/x-gaussian-input gau gjc gjf chemical/x-gaussian-log gal chemical/x-gcg8-sequence gcg chemical/x-genbank gen chemical/x-hin hin chemical/x-isostar istr ist chemical/x-jcamp-dx jdx dx chemical/x-kinemage kin chemical/x-macmolecule mcm chemical/x-macromodel-input mmd mmod chemical/x-mdl-molfile mol chemical/x-mdl-rdfile rd chemical/x-mdl-rxnfile rxn chemical/x-mdl-sdfile sd sdf chemical/x-mdl-tgf tgf #chemical/x-mif mif chemical/x-mmcif mcif chemical/x-mol2 mol2 chemical/x-molconn-Z b chemical/x-mopac-graph gpt chemical/x-mopac-input mop mopcrt mpc zmt chemical/x-mopac-out moo chemical/x-mopac-vib mvb chemical/x-ncbi-asn1 asn chemical/x-ncbi-asn1-ascii prt ent chemical/x-ncbi-asn1-binary val aso chemical/x-ncbi-asn1-spec asn chemical/x-pdb pdb ent chemical/x-rosdal ros chemical/x-swissprot sw chemical/x-vamas-iso14976 vms chemical/x-vmd vmd chemical/x-xtel xtel chemical/x-xyz xyz image/cgm image/g3fax image/gif gif image/ief ief image/jp2 jp2 jpg2 image/jpeg jpeg jpg jpe image/jpm jpm image/jpx jpx jpf image/naplps image/pcx pcx image/png png image/prs.btif image/prs.pti image/svg+xml svg svgz image/tiff tiff tif image/vnd.cns.inf2 image/vnd.djvu djvu djv image/vnd.dwg image/vnd.dxf image/vnd.fastbidsheet image/vnd.fpx image/vnd.fst image/vnd.fujixerox.edmics-mmr image/vnd.fujixerox.edmics-rlc image/vnd.microsoft.icon ico image/vnd.mix image/vnd.net-fpx image/vnd.svf image/vnd.wap.wbmp wbmp image/vnd.xiff image/x-canon-cr2 cr2 image/x-canon-crw crw image/x-cmu-raster ras image/x-coreldraw cdr image/x-coreldrawpattern pat image/x-coreldrawtemplate cdt image/x-corelphotopaint cpt image/x-epson-erf erf image/x-icon image/x-jg art image/x-jng jng image/x-ms-bmp bmp image/x-nikon-nef nef image/x-olympus-orf orf image/x-photoshop psd image/x-portable-anymap pnm image/x-portable-bitmap pbm image/x-portable-graymap pgm image/x-portable-pixmap ppm image/x-rgb rgb image/x-xbitmap xbm image/x-xpixmap xpm image/x-xwindowdump xwd inode/chardevice inode/blockdevice inode/directory-locked inode/directory inode/fifo inode/socket message/delivery-status message/disposition-notification message/external-body message/http message/s-http message/news message/partial message/rfc822 eml model/iges igs iges model/mesh msh mesh silo model/vnd.dwf model/vnd.flatland.3dml model/vnd.gdl model/vnd.gs-gdl model/vnd.gtw model/vnd.mts model/vnd.vtu model/vrml wrl vrml model/x3d+vrml x3dv model/x3d+xml x3d model/x3d+binary x3db multipart/alternative multipart/appledouble multipart/byteranges multipart/digest multipart/encrypted multipart/form-data multipart/header-set multipart/mixed multipart/parallel multipart/related multipart/report multipart/signed multipart/voice-message text/cache-manifest appcache text/calendar ics icz text/css css text/csv csv text/directory text/english text/enriched text/h323 323 text/html html htm shtml text/iuls uls text/mathml mml text/markdown md markdown text/parityfec text/plain asc txt text pot brf srt text/prs.lines.tag text/rfc822-headers text/richtext rtx text/rtf text/scriptlet sct wsc text/t140 text/texmacs tm text/tab-separated-values tsv text/turtle ttl text/uri-list text/vcard vcf vcard text/vnd.abc text/vnd.curl text/vnd.debian.copyright text/vnd.DMClientScript text/vnd.flatland.3dml text/vnd.fly text/vnd.fmi.flexstor text/vnd.in3d.3dml text/vnd.in3d.spot text/vnd.IPTC.NewsML text/vnd.IPTC.NITF text/vnd.latex-z text/vnd.motorola.reflex text/vnd.ms-mediapackage text/vnd.sun.j2me.app-descriptor jad text/vnd.wap.si text/vnd.wap.sl text/vnd.wap.wml wml text/vnd.wap.wmlscript wmls text/x-bibtex bib text/x-boo boo text/x-c++hdr h++ hpp hxx hh text/x-c++src c++ cpp cxx cc text/x-chdr h text/x-component htc text/x-crontab text/x-csh csh text/x-csrc c text/x-dsrc d text/x-diff diff patch text/x-haskell hs text/x-java java text/x-lilypond ly text/x-literate-haskell lhs text/x-makefile text/x-moc moc text/x-pascal p pas text/x-pcs-gcd gcd text/x-perl pl pm text/x-python py text/x-scala scala text/x-server-parsed-html text/x-setext etx text/x-sfv sfv text/x-sh sh text/x-tcl tcl tk text/x-tex tex ltx sty cls text/x-vcalendar vcs video/3gpp 3gp video/annodex axv video/dl dl video/dv dif dv video/fli fli video/gl gl video/mpeg mpeg mpg mpe video/MP2T ts video/mp4 mp4 video/quicktime qt mov video/mp4v-es video/ogg ogv video/parityfec video/pointer video/webm webm video/vnd.fvt video/vnd.motorola.video video/vnd.motorola.videop video/vnd.mpegurl mxu video/vnd.mts video/vnd.nokia.interleaved-multimedia video/vnd.vivo video/x-flv flv video/x-la-asf lsf lsx video/x-mng mng video/x-ms-asf asf asx video/x-ms-wm wm video/x-ms-wmv wmv video/x-ms-wmx wmx video/x-ms-wvx wvx video/x-msvideo avi video/x-sgi-movie movie video/x-matroska mpv mkv x-conference/x-cooltalk ice x-epoc/x-sisx-app sisx x-world/x-vrml vrm vrml wrl