[gimp-macos-build/wip/lukaso/tests] 2.99 changes



commit 42d8db8d1ec1fb02d47d192336231d3d5031e6d5
Author: Lukas Oberhuber <lukaso gmail com>
Date:   Sun Sep 26 17:54:44 2021 +0100

    2.99 changes

 README.md                    |   2 +-
 package/build299.sh          | 163 +++++++
 package/gimp-2.99.bundle     | 173 ++++++++
 package/info-2.99.plist.tmpl | 999 +++++++++++++++++++++++++++++++++++++++++++
 package/pygimp.interp        |   8 +-
 5 files changed, 1340 insertions(+), 5 deletions(-)
---
diff --git a/README.md b/README.md
index 36395f7..bb5bc9a 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,7 @@ This repository contains files related to GIMP/macOS build using CircleCI.
 
 ## Build process description
 
-To build GIMP/macOS we are using [fork](https://gitlab.gnome.org/samm-git/gtk-osx/tree/gimp)
+To build GIMP/macOS we are using [fork](https://gitlab.gnome.org/lukaso/gtk-osx/tree/gimp)
 of the [gtk-osx](https://gitlab.gnome.org/GNOME/gtk-osx) project (`gimp` branch). 
 Fork adds modules related to GIMP and some gimp-specific patches to GTK.
 Currently build is done using CircleCI.
diff --git a/package/build299.sh b/package/build299.sh
new file mode 100755
index 0000000..97676e1
--- /dev/null
+++ b/package/build299.sh
@@ -0,0 +1,163 @@
+#!/bin/sh
+
+# set -e
+
+if [ -z "${JHBUILD_LIBDIR}" ]
+then
+  echo "JHBUILD_LIBDIR undefined. Are you running inside jhbuild?"
+  exit 2
+fi
+
+printf "Determining GIMP version: "
+
+$(cd ${HOME}/gtk/inst/bin/ && ln -sf gimp-2.99 gimp)
+
+GIMP_VERSION="$(gimp-2.99 --version | sed 's|GNU Image Manipulation Program version ||')"
+# GIMP_VERSION="2.99.6"
+
+echo "$GIMP_VERSION"
+
+cat info-2.99.plist.tmpl | sed "s|%VERSION%|${GIMP_VERSION}|g" > info-2.99.plist
+
+echo "Copying charset.alias"
+cp "/usr/lib/charset.alias" "${HOME}/gtk/inst/lib/"
+echo "Creating bundle"
+gtk-mac-bundler gimp-2.99.bundle
+
+BASEDIR=$(dirname "$0")
+
+#  target directory
+PACKAGE_DIR="${HOME}/gimp299-osx-app"
+
+echo "Removing pathnames from the libraries and binaries"
+# fix permission for some libs
+find  ${PACKAGE_DIR}/GIMP-2.99.app/Contents/Resources/lib -name '*.dylib' -type f | xargs chmod 755
+# getting list of the files to fix
+FILES=$(
+  find ${PACKAGE_DIR}/GIMP-2.99.app -perm +111 -type f \
+   | xargs file \
+   | grep ' Mach-O '|awk -F ':' '{print $1}'
+)
+OLDPATH="${JHBUILD_LIBDIR}/"
+
+for file in $FILES
+do
+  install_name_tool -id "@rpath/$(basename $file)" $file
+  otool -L $file \
+   | grep "\t$OLDPATH" \
+   | sed "s|${OLDPATH}||" \
+   | awk -v fname="$file" -v old_path="$OLDPATH" '{print "install_name_tool -change "old_path $1" 
@rpath/"$1" "fname}' \
+   | bash
+done
+
+if [[ "$1" == "debug" ]]; then
+  echo "Generating debug symbols"
+  find  ${PACKAGE_DIR}/GIMP-2.99.app/ -type f -perm +111 \
+     | xargs file \
+     | grep ' Mach-O '|awk -F ':' '{print $1}' \
+     | xargs -n1 dsymutil
+fi
+
+echo "remove @rpath to the libraries"
+find  ${PACKAGE_DIR}/GIMP-2.99.app/Contents/Resources/lib/ -mindepth 1 -maxdepth 1 -perm +111 -type f \
+   | xargs file \
+   | grep ' Mach-O '|awk -F ':' '{print $1}' \
+   | xargs -n1 install_name_tool -delete_rpath ${HOME}/gtk/inst/lib
+
+echo "adding @rpath to the binaries"
+find  ${PACKAGE_DIR}/GIMP-2.99.app/Contents/MacOS/ -type f -perm +111 \
+   | xargs file \
+   | grep ' Mach-O '|awk -F ':' '{print $1}' \
+   | xargs -n1 install_name_tool -add_rpath @executable_path/../Resources/lib/
+
+echo "adding @rpath to the plugins"
+find  ${PACKAGE_DIR}/GIMP-2.99.app/Contents/Resources/lib/gimp/2.0/plug-ins/ -perm +111 -type f \
+   | xargs file \
+   | grep ' Mach-O '|awk -F ':' '{print $1}' \
+   | xargs -n1 install_name_tool -add_rpath @executable_path/../../../
+
+echo "fixing pixmap cache"
+sed -i.old 's|@executable_path/../Resources/lib/||' \
+    ${PACKAGE_DIR}/GIMP-2.99.app/Contents/Resources/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
+
+echo "fixing IMM cache"
+sed -i.old 's|@executable_path/../Resources/lib/||' \
+    ${PACKAGE_DIR}/GIMP-2.99.app/Contents/Resources/etc/gtk-3.0/gtk.immodules
+
+echo "create missing links. should we use wrappers instead?"
+
+pushd ${PACKAGE_DIR}/GIMP-2.99.app/Contents/MacOS
+ ln -s gimp-console-2.99 gimp-console
+ ln -s gimp-debug-tool-2.99 gimp-debug-tool
+ ln -s python python3.9
+popd
+
+echo "copy xdg-email wrapper to the package"
+mkdir -p ${PACKAGE_DIR}/GIMP-2.99.app/Contents/MacOS
+cp xdg-email ${PACKAGE_DIR}/GIMP-2.99.app/Contents/MacOS
+
+echo "copy pygimp.interp to the package"
+mkdir -p ${PACKAGE_DIR}/GIMP-2.99.app/Contents/Resources/lib/gimp/2.99/interpreters
+cp pygimp.interp ${PACKAGE_DIR}/GIMP-2.99.app/Contents/Resources/lib/gimp/2.99/interpreters
+
+echo "Creating pyc files"
+python3.9 -m compileall -q ${PACKAGE_DIR}/GIMP-2.99.app
+
+echo "Signing libs"
+
+if [ -n "${codesign_subject}" ]
+then
+  echo "Signing libraries and plugins"
+  find  ${PACKAGE_DIR}/GIMP-2.99.app/Contents/Resources/lib/ -type f -perm +111 \
+     | xargs file \
+     | grep ' Mach-O '|awk -F ':' '{print $1}' \
+     | xargs /usr/bin/codesign -s "${codesign_subject}" \
+         --options runtime \
+         --entitlements ${HOME}/project/package/gimp-hardening.entitlements
+  echo "Signing app"
+  /usr/bin/codesign -s "${codesign_subject}" \
+    --timestamp \
+    --deep \
+    --options runtime \
+    --entitlements ${HOME}/project/package/gimp-hardening.entitlements \
+    ${PACKAGE_DIR}/GIMP-2.99.app
+fi
+
+echo "Building DMG"
+if [ -z "${CIRCLECI}" ]
+then
+  DMGNAME="gimp-${GIMP_VERSION}-x86_64.dmg"
+else
+  DMGNAME="gimp-${GIMP_VERSION}-x86_64-b${CIRCLE_BUILD_NUM}-${CIRCLE_BRANCH////-}.dmg"
+fi
+
+mkdir -p /tmp/artifacts/
+rm -f /tmp/tmp.dmg
+rm -f "/tmp/artifacts/gimp-${GIMP_VERSION}-x86_64.dmg"
+
+cd create-dmg
+
+./create-dmg \
+  --volname "GIMP 2.99 Install" \
+  --background "../gimp-dmg.png" \
+  --window-pos 1 1 \
+  --icon "GIMP-2.99.app" 190 360 \
+  --window-size 640 480 \
+  --icon-size 110 \
+  --icon "Applications" 110 110 \
+  --hide-extension "Applications" \
+  --app-drop-link 450 360 \
+  --format UDBZ \
+  --hdiutil-verbose \
+  "/tmp/artifacts/${DMGNAME}" \
+  "$PACKAGE_DIR/"
+rm -f /tmp/artifacts/rw.*.dmg
+cd ..
+
+if [ -n "${codesign_subject}" ]
+then
+  echo "Signing DMG"
+  /usr/bin/codesign  -s "${codesign_subject}" "/tmp/artifacts/${DMGNAME}"
+fi
+
+echo "Done"
diff --git a/package/gimp-2.99.bundle b/package/gimp-2.99.bundle
new file mode 100644
index 0000000..3d054d2
--- /dev/null
+++ b/package/gimp-2.99.bundle
@@ -0,0 +1,173 @@
+<?xml version="1.0" standalone="no"?>
+<!--*- mode: xml -*-->
+<app-bundle>
+  <meta>
+    <!-- Where to pick up the GTK+ installation, icon themes,
+         etc. Note that "${env:JHBUILD_PREFIX}" is evaluated to the
+         value of the environment variable JHBUILD_PREFIX. You can
+         define additional prefixes and refer to them in paths
+         throughout this file on the form "${prefix:name}". This is
+         useful for installing certain libraries or even the
+        eapplication itself separately. Note that JHBUILD_PREFIX is
+         defined by jhbuild, so it you are not using jhbuild you can
+         either define your own or just hardcode the path here.
+    -->
+    <!-- <prefix name="default">${env:JHBUILD_PREFIX}</prefix> -->
+    <prefix name="default">${env:JHBUILD_PREFIX}</prefix>
+    <!-- The project directory is the default location of the created
+         app. If you leave out the path, the current directory is
+         used. Note the usage of an environment variable here again.
+    -->
+    <destination overwrite="yes">${env:HOME}/gimp299-osx-app</destination>
+    <image>
+      <!-- Not implemented yet (DMG image). -->
+    </image>
+    <!-- Comment this out to keep the install names in binaries -->
+    <!-- <run-install-name-tool/> does not work for the gimp -->
+    <!-- Optionally specify a launcher script to use. If the
+         application sets up everything needed itself, like
+         environment variable, linker paths, etc, a launcher script is
+         not needed. If the source path is left out, the default
+         script will be used.
+    -->
+    <!-- <launcher-script>${project}/launcher.sh</launcher-script > -->
+   <!-- <launcher-script>
+      ${project}/launcher-2.10.sh
+    </launcher-script> -->
+    <!-- Not implemented: Optional runtime, could be python or mono
+         for example.
+    -->
+    <!-- <runtime copy="yes">/usr/bin/python</runtime -->
+    <!-- Indicate the active gtk version to use. This is needed only
+         for gtk+-3.0 projects. -->
+    <gtk>gtk+-3.0</gtk>
+  </meta>
+  <!-- We need to pack our own Python to avoid compatibility problems. -->
+  <binary dest="${bundle}/Contents/MacOS">
+    ${prefix}/bin/python3.9
+  </binary>
+  <binary dest="${bundle}/Contents/MacOS">
+    ${prefix}/bin/gegl
+  </binary>
+  <!-- gimp additional binaries -->
+  <binary dest="${bundle}/Contents/MacOS">${prefix}/bin/gimp-console-2.99</binary>
+  <binary dest="${bundle}/Contents/MacOS">${prefix}/bin/gimp-debug-tool-2.0</binary>
+  <binary dest="${bundle}/Contents/MacOS">${prefix}/bin/gimptool-2.0</binary>
+
+  <!-- Copy in Info.plist -->
+  <plist>${project}/info-2.99.plist</plist>
+  <!-- Copy in libpyglib, which will pull in other dependencies we need -->
+  <binary>
+    ${prefix}/lib/libpyglib-2.0-python.0.dylib
+  </binary>
+  <!-- Gtk+ is required by python modules which aren't searched for
+       dependencies, so we have to pull it in explicitly. It will
+       bring Pango and Cairo with it. Note the use of ${gtkversion},
+       which expands to either 2.0 or 3.0, depending on which value of
+       gtk is specified.-->
+  <!-- <binary>
+    ${prefix}/lib/libgtk-quartz-${gtkversion}.0.dylib
+  </binary> -->
+  <binary>
+    ${prefix}/lib/libgtk-quartz-2.0.0.dylib
+  </binary>
+  <binary>
+ ${prefix}/lib/libgegl-sc-0.4.dylib
+</binary>
+  <!-- We have to pull in the python modules, which are mixed python
+       and loadable modules.  -->
+
+  <binary recurse="True">
+    ${prefix}/lib/python3.9/*.so
+  </binary>
+  <binary>
+  ${prefix}/lib/gio/modules
+  </binary>
+  <data recurse="True">
+    ${prefix}/lib/python3.9/*.py
+  </data>
+
+  <data>
+    ${prefix}/lib/python3.9/config-3.9-darwin/
+  </data>
+
+  <data>
+    ${prefix}/include/python3.9/pyconfig.h
+  </data>
+
+  <!-- Name of main gimp binary -->
+  <main-binary>${prefix}/bin/gimp-2.99</main-binary>
+  <!-- Copy in gimp plugins -->
+  <binary>${prefix}/lib/gimp/2.99/plug-ins/*</binary>
+  <!-- Copy in gimp modules -->
+  <binary>${prefix}/lib/gimp/2.99/modules/*.so</binary>
+  <!-- Copy in gimp python modules -->
+  <binary>${prefix}/lib/gimp/2.99/python/*.so</binary>
+  <data>${prefix}/lib/gimp/2.99/python/*.py</data>
+  <!-- Copy in GTK+ modules -->
+  <!-- <binary>${prefix}/lib/${gtkdir}/modules/*.so</binary> -->
+  <!-- Copy in babl modules -->
+  <binary>${prefix}/lib/babl-0.1/*.dylib</binary>
+  <!-- Copy in gegl modules -->
+  <binary>${prefix}/lib/gegl-0.4/*.dylib</binary>
+  <!-- Copy in GTK+ themeing engines -->
+  <!-- <binary>${prefix}/lib/${gtkdir}/${pkg:${gtk}:gtk_binary_version}/engines/*.so</binary> -->
+  <!-- Copy in GTK+ printer backends -->
+  <binary>${prefix}/lib/${gtkdir}/${pkg:${gtk}:gtk_binary_version}/printbackends/*.so</binary>
+  <!-- Copy in GTK+ immodules -->
+  <binary>${prefix}/lib/${gtkdir}/${pkg:${gtk}:gtk_binary_version}/immodules/*.so</binary>
+  <!-- Starting with 2.24, gdk-pixbuf installs into its own directory. -->
+  <!-- <binary>${prefix}/lib/gdk-pixbuf-2.0/${pkg:${gtk}:gtk_binary_version}/loaders/*.so</binary> -->
+  <binary>${prefix}/lib/gdk-pixbuf-2.0/2.10.0/loaders/*.so</binary>
+  <binary dest="${bundle}/Contents/MacOS">${prefix}/bin/gdk-pixbuf-query-loaders</binary>
+  <!-- Translation filenames-->
+  <translations name="gtk30">
+    ${prefix}/share/locale
+  </translations>
+  <!-- GTK+2 data -->
+  <data>${prefix}/etc/gtk-3.0/*</data>
+  <!-- Fontconfig data; requires clean up -->
+  <data>
+    ${prefix}/etc/fonts
+  </data>
+  <!-- Gimp data -->
+  <data>${prefix}/etc/gimp/2.99/*</data>
+  <data dest="${bundle}/Contents/Resources/share/gimp">${prefix}/share/gimp</data>
+  <!-- brushes -->
+  <data>${prefix}/share/mypaint-data</data>
+  <!-- Pango data -->
+  <!-- <data>${prefix}/etc/pango/pango.modules</data> -->
+  <!-- XML data -->
+  <data>${prefix}/share/xml/catalog</data>
+  <!-- locale (TODO: trim) -->
+  <data>${prefix}/share/locale</data>
+  <data>${prefix}/lib/charset.alias</data>
+  <!-- Theme data-->
+  <data>${prefix}/share/themes</data>
+  <!-- Theme data-->
+  <data>${prefix}/share/themes</data>
+  <!-- iso codes -->
+  <data>${prefix}/share/xml/iso-codes</data>
+  <!-- libwmf fonts -->
+  <data>${prefix}/share/libwmf</data>
+  <!-- GTK+ theme data -->
+  <!-- <data>${prefix}/share/gtk-engines/*.xml</data> -->
+  <!-- mitch says this will change default theme, didn't work. -->
+  <!-- <data dest="${bundle}/Contents/Resources/etc/${gtkdir}/gtkrc">
+    ${project}/gtkrc
+  </data>
+-->
+  <!-- Interesting defaults -->
+  <!-- <data dest="${bundle}/Contents/Resources/etc/gimp/2.0/gimprc">
+    ${project}/gimprc
+  </data>
+-->
+  <!-- Icons -->
+  <data dest="${bundle}/Contents/Resources">${project}/gimp.icns</data>
+  <data dest="${bundle}/Contents/Resources">${project}/xcf.icns</data>
+
+  <!-- Icon theme, both tango and hicolor are required? -->
+  <icon-theme icons="auto">
+    Tango
+  </icon-theme>
+</app-bundle>
diff --git a/package/info-2.99.plist.tmpl b/package/info-2.99.plist.tmpl
new file mode 100644
index 0000000..61d0274
--- /dev/null
+++ b/package/info-2.99.plist.tmpl
@@ -0,0 +1,999 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd";>
+<plist version="1.0">
+  <dict>
+    <key>CFBundleDevelopmentRegion</key>
+    <string>English</string>
+    <key>CFBundleDocumentTypes</key>
+    <array>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>xcf</string>
+          <string>XCF</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>image/x-xcf</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>GIMP Image</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>XCF </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>org.gimp.xcf</string>
+        </array>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>xcfbz2</string>
+          <string>XCFBZ2</string>
+          <string>xcfgz</string>
+          <string>XCFGZ</string>
+          <string>xjt</string>
+          <string>XJT</string>
+          <string>xjtgz</string>
+          <string>XJTGZ</string>
+          <string>xjtbz2</string>
+          <string>XJTBZ2</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>image/x-compressed-xcf</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>GIMP Compressed Image</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>XJT </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>org.gimp.xjt</string>
+        </array>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>gbr</string>
+          <string>GBR</string>
+          <string>gbp</string>
+          <string>GBP</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>GIMP Brush</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>GBR </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>org.gimp.gbr</string>
+        </array>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>gih</string>
+          <string>GIH</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>GIMP Animated Brush</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>GIH </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>org.gimp.gih</string>
+        </array>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>pat</string>
+          <string>PAT</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>GIMP Pattern</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>PAT </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>org.gimp.pat</string>
+        </array>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>pdf</string>
+          <string>PDF</string>
+        </array>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>application/pdf</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>NSPDFPboardType</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>PDF </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>com.adobe.pdf</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVPDFDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>ai</string>
+          <string>AI</string>
+        </array>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>application/pdf</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>NSPDFPboardType</string>
+        <key>CFBundleTypeRole</key>
+        <string>Viewer</string>
+        <key>LSIsAppleDefaultForType</key>
+        <false/>
+        <key>NSDocumentClass</key>
+        <string>PVPDFDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>ps</string>
+          <string>PS</string>
+        </array>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>application/postscript</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>PostScript document</string>
+        <key>CFBundleTypeRole</key>
+        <string>Viewer</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>NSDocumentClass</key>
+        <string>PVPDFDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>epi</string>
+          <string>EPI</string>
+          <string>eps</string>
+          <string>EPS</string>
+          <string>epsf</string>
+          <string>EPSF</string>
+          <string>epsi</string>
+          <string>EPSI</string>
+        </array>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>application/postscript</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>PostScript document</string>
+        <key>CFBundleTypeRole</key>
+        <string>Viewer</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>NSDocumentClass</key>
+        <string>PVPDFDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>tiff</string>
+          <string>TIFF</string>
+          <string>tif</string>
+          <string>TIF</string>
+        </array>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>image/tiff</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>NSTIFFPboardType</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>TIFF</string>
+          <string>****</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>public.tiff</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>XBM</string>
+          <string>xbm</string>
+          <string>icon</string>
+          <string>ICON</string>
+          <string>bitmap</string>
+          <string>BITMAP</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>XBM</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>XBM </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Viewer</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>bmp</string>
+          <string>BMP</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>Windows Bitmap Image</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>BMP </string>
+          <string>BMPf</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>com.microsoft.bmp</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>gif</string>
+          <string>GIF</string>
+        </array>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>image/gif</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>Graphics Interchange Format Image</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>GIFf</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>com.compuserve.gif</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>ico</string>
+          <string>ICO</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>Windows Icon Image</string>
+        <key>CFBundleTypeRole</key>
+        <string>Viewer</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>com.microsoft.ico</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>jpg</string>
+          <string>JPG</string>
+          <string>jpeg</string>
+          <string>JPEG</string>
+          <string>jpe</string>
+          <string>JPE</string>
+          <string>thm</string>
+          <string>THM</string>
+          <string>*</string>
+        </array>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>image/jpeg</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>JPEG Image</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>JPEG</string>
+          <string>????</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>public.jpeg</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>pict</string>
+          <string>PICT</string>
+          <string>pct</string>
+          <string>PCT</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>NSPICTPboardType</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>PICT</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Viewer</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>com.apple.pict</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>png</string>
+          <string>PNG</string>
+        </array>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>image/png</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>Portable Network Graphics Image</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>PNGf</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>public.png</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>tga</string>
+          <string>TGA</string>
+          <string>vda</string>
+          <string>VDA</string>
+          <string>icb</string>
+          <string>ICB</string>
+          <string>vst</string>
+          <string>VST</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>Targa Image</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>TPIC</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>com.truevision.tga-image</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>sgi</string>
+          <string>SGI</string>
+          <string>rgb</string>
+          <string>RGB</string>
+          <string>bw</string>
+          <string>BW</string>
+          <string>icon</string>
+          <string>ICON</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>Silicon Graphics Image</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>.SGI</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>com.sgi.sgi-image</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>psd</string>
+          <string>PSD</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>Adobe Photoshop Image</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>8BPS</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <false/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>com.adobe.photoshop-image</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>icns</string>
+          <string>ICNS</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>Apple Icon Image</string>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>com.apple.icns</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>jp2</string>
+          <string>JP2</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>JPEG 2000 Image</string>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+        <key>LSIsAppleDefaultForType</key>
+        <true/>
+        <key>LSItemContentTypes</key>
+        <array>
+          <string>public.jpeg-2000</string>
+        </array>
+        <key>NSDocumentClass</key>
+        <string>PVDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>svg</string>
+        </array>
+        <key>CFBundleTypeMIMETypes</key>
+        <array>
+          <string>image/svg+xml</string>
+        </array>
+        <key>CFBundleTypeName</key>
+        <string>SVG document</string>
+        <key>CFBundleTypeRole</key>
+        <string>Viewer</string>
+        <key>NSDocumentClass</key>
+        <string>BrowserDocument</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>sun</string>
+          <string>sr</string>
+          <string>im1</string>
+          <string>im8</string>
+          <string>im24</string>
+          <string>im32</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>Sun Rasterfile document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>SUNn</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>fli</string>
+          <string>flc</string>
+          <string>flh</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>FLI/FLC/FLH document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>FLI </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>xwd</string>
+          <string>x10</string>
+          <string>x11</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>X/Windows Dump document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>XWDd</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>wmf</string>
+          <string>apm</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>Windows Metafile document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>WMF </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>pix</string>
+          <string>mask</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>ALIAS pix document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>APIX</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>pnm</string>
+          <string>pbm</string>
+          <string>pgm</string>
+          <string>ppm</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>Portable Bitmap document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>PPGM</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>psp</string>
+          <string>tub</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>Paintshop Pro document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>.PSP</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>pcx</string>
+          <string>pcc</string>
+          <string>scr</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>Paintbrush document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>PCXx</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>fax</string>
+          <string>g3</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>CCITT3 native fax document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>FAX3</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>xpm</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>XPM (ASCII Bitmap) document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>XPM </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>cel</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>KISS CEL document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>CEL </string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>fits</string>
+          <string>fit</string>
+          <string>fts</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>Flexible Image Transport System document</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>FITS</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>desktop</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>Desktop Alias</string>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+      <dict>
+        <key>CFBundleTypeExtensions</key>
+        <array>
+          <string>dcm</string>
+          <string>DCM</string>
+          <string>dicom</string>
+          <string>DICOM</string>
+        </array>
+        <key>CFBundleTypeIconFile</key>
+        <string>gimp.icns</string>
+        <key>CFBundleTypeName</key>
+        <string>DICOM Image</string>
+        <key>CFBundleTypeOSTypes</key>
+        <array>
+          <string>DCOM</string>
+        </array>
+        <key>CFBundleTypeRole</key>
+        <string>Editor</string>
+      </dict>
+    </array>
+    <key>CFBundleExecutable</key>
+    <string>gimp</string>
+    <key>CFBundleGetInfoString</key>
+    <string>2.99, © 2001-2021 The GIMP Team</string>
+    <key>CFBundleIconFile</key>
+    <string>gimp.icns</string>
+    <key>CFBundleIdentifier</key>
+    <string>org.gimp.gimp-2.99:</string>
+    <key>CFBundleInfoDictionaryVersion</key>
+    <string>6.0</string>
+    <key>CFBundleName</key>
+    <string>GIMP-2.99</string>
+    <key>CFBundlePackageType</key>
+    <string>APPL</string>
+    <key>CFBundleShortVersionString</key>
+    <string>%VERSION%</string>
+    <key>CFBundleSignature</key>
+    <string>GIMP</string>
+    <key>CFBundleVersion</key>
+    <string>%VERSION%</string>
+    <key>NSHumanReadableCopyright</key>
+    <string>© 2001-2021 The GIMP Team</string>
+    <key>NSHighResolutionCapable</key>
+    <true/>
+    <key>NSRequiresAquaSystemAppearance</key>
+    <true/>
+    <key>UTExportedTypeDeclarations</key>
+    <array>
+      <dict>
+        <key>UTTypeConformsTo</key>
+        <array>
+          <string>public.data</string>
+          <string>public.image</string>
+        </array>
+        <key>UTTypeDescription</key>
+        <string>Gimp Image</string>
+        <key>UTTypeIconFile</key>
+        <string>xcf.icns</string>
+        <key>UTTypeIdentifier</key>
+        <string>org.gimp.xcf</string>
+        <key>UTTypeReferenceURL</key>
+        <string>http://www.gimp.org/</string>
+        <key>UTTypeTagSpecification</key>
+        <dict>
+          <key>com.apple.ostype</key>
+          <string>XCF </string>
+          <key>public.filename-extension</key>
+          <array>
+            <string>xcf</string>
+            <string>XCF</string>
+          </array>
+          <key>public.mime-type</key>
+          <array>
+            <string>image/x-xcf</string>
+          </array>
+        </dict>
+      </dict>
+      <dict>
+        <key>UTTypeConformsTo</key>
+        <array>
+          <string>public.data</string>
+          <string>public.image</string>
+          <string>public.archive</string>
+        </array>
+        <key>UTTypeDescription</key>
+        <string>Gimp Compressed Image</string>
+        <key>UTTypeIconFile</key>
+        <string>xcf.icns</string>
+        <key>UTTypeIdentifier</key>
+        <string>org.gimp.xjt</string>
+        <key>UTTypeReferenceURL</key>
+        <string>http://www.gimp.org/</string>
+        <key>UTTypeTagSpecification</key>
+        <dict>
+          <key>com.apple.ostype</key>
+          <string>XJT </string>
+          <key>public.filename-extension</key>
+          <array>
+            <string>xcf.bz2</string>
+            <string>XCF.BZ2</string>
+            <string>xcfbz2</string>
+            <string>XCFBZ2</string>
+            <string>xcf.gz</string>
+            <string>XCF.GZ</string>
+            <string>xcfgz</string>
+            <string>XCFGZ</string>
+            <string>xjt</string>
+            <string>XJT</string>
+            <string>xjtgz</string>
+            <string>XJTGZ</string>
+            <string>xjtbz2</string>
+            <string>XJTBZ2</string>
+          </array>
+          <key>public.mime-type</key>
+          <array>
+            <string>image/x-compressed-xcf</string>
+          </array>
+        </dict>
+      </dict>
+      <dict>
+        <key>UTTypeConformsTo</key>
+        <array>
+          <string>public.data</string>
+          <string>public.image</string>
+        </array>
+        <key>UTTypeDescription</key>
+        <string>Gimp Brush</string>
+        <key>UTTypeIconFile</key>
+        <string>xcf.icns</string>
+        <key>UTTypeIdentifier</key>
+        <string>org.gimp.xbr</string>
+        <key>UTTypeReferenceURL</key>
+        <string>http://www.gimp.org/</string>
+        <key>UTTypeTagSpecification</key>
+        <dict>
+          <key>com.apple.ostype</key>
+          <string>GBR </string>
+          <key>public.filename-extension</key>
+          <array>
+            <string>gbr</string>
+            <string>GBR</string>
+            <string>gbp</string>
+            <string>GBP</string>
+          </array>
+        </dict>
+      </dict>
+      <dict>
+        <key>UTTypeConformsTo</key>
+        <array>
+          <string>public.data</string>
+          <string>public.image</string>
+        </array>
+        <key>UTTypeDescription</key>
+        <string>Gimp Animated Brush</string>
+        <key>UTTypeIconFile</key>
+        <string>xcf.icns</string>
+        <key>UTTypeIdentifier</key>
+        <string>org.gimp.gih</string>
+        <key>UTTypeReferenceURL</key>
+        <string>http://www.gimp.org/</string>
+        <key>UTTypeTagSpecification</key>
+        <dict>
+          <key>com.apple.ostype</key>
+          <string>GIH </string>
+          <key>public.filename-extension</key>
+          <array>
+            <string>gih</string>
+            <string>GIH</string>
+          </array>
+        </dict>
+      </dict>
+      <dict>
+        <key>UTTypeConformsTo</key>
+        <array>
+          <string>public.data</string>
+          <string>public.image</string>
+        </array>
+        <key>UTTypeDescription</key>
+        <string>Gimp Pattern</string>
+        <key>UTTypeIconFile</key>
+        <string>xcf.icns</string>
+        <key>UTTypeIdentifier</key>
+        <string>org.gimp.pat</string>
+        <key>UTTypeReferenceURL</key>
+        <string>http://www.gimp.org/</string>
+        <key>UTTypeTagSpecification</key>
+        <dict>
+          <key>com.apple.ostype</key>
+          <string>PAT </string>
+          <key>public.filename-extension</key>
+          <array>
+            <string>pat</string>
+            <string>PAT</string>
+          </array>
+        </dict>
+      </dict>
+    </array>
+  </dict>
+</plist>
diff --git a/package/pygimp.interp b/package/pygimp.interp
index 19985e2..5c821d1 100644
--- a/package/pygimp.interp
+++ b/package/pygimp.interp
@@ -1,4 +1,4 @@
-python=python2
-python2=python2
-/usr/bin/python=python2
-:Python:E::py::python2:
+python=python3.9
+python3=python3.9
+/usr/bin/python=python3
+:Python:E::py::python3:


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]