(defn find-native [dir]
  (for [f (file-seq (java.io.File. dir))
        :when (.endsWith (.getName f) ".jar")
        :let [entries (try
                        (enumeration-seq (.entries (java.util.jar.JarFile. f)))
                        (catch Exception _ []))]]
    (and (some #(re-find #"^native.*" (.getName %)) entries) (.getName f))))

(def natives (find-natives "/home/clojars/repo"))

(def n (sort (set (for [n natives] (first (.split n "-\\d"))))))

["atlwjgl"
 "charva" "charva-macosx-native-deps"
 "clj3d"
 "gdal-java-native" "gdal-java-osx-native-deps"
 "jcurses"
 "jinput"
 "jme3-jogl-natives" "jme3-lwjgl-natives"
 "jogl"
 "jreality-native-deps" "jreality-native-deps-current.jar"
 "jriengine"
 "jzmq-clojars" "jzmq-native-deps"
 "kyotocabinet-java-native-deps"
 "lwjgl" "lwjgl-clj" "lwjgl-native-platform"
 ;; "native-deps"
 "nativewindow"
 "newt"
 "opencv"
 "rxtx" "rxtx-linux-native-deps" "rxtx-macosx-native-deps" "rxtx-native-deps" "rxtx22"
 "sclang" "sclang-jna"
 "scsynth" "scsynth-jna"
 "serial-port"
 "supercollider"
 "tokyocabinet" "tokyocabinet-java" "tokyocabinet-java-native-deps"
 "vision"
 "zeromq-native-deps" "zmq-native"]

Generated by Phil Hagelberg using scpaste at Mon Jan 30 11:39:00 2012. PST. (original)