Skip to content

Instantly share code, notes, and snippets.

@fabiokung
fabiokung / debundler
Created May 18, 2011 10:09
deb packaging for applications using bundler
#!/bin/bash
@fabiokung
fabiokung / heroku_autobuild.clj
Created August 6, 2011 06:18
Adding a "compilation phase" to Heroku's publishing process (a.k.a. slug compilation)
(use 'robert.hooke)
(require 'leiningen.deps)
(require 'lancet.core)
(import (java.io File)
(java.net URL URLClassLoader)
(java.lang.reflect Method))
;; based on code from leiningen.deps (version 1.6.1)
(defn- find-lib-jars [project]
(.listFiles (File. (:library-path project))))
@fabiokung
fabiokung / project.clj
Created August 6, 2011 06:35
Template for heroku java/war projects (using the cedar stack + clojure support)
(defproject project-name "0.0.1"
:dependencies
[[org.clojure/clojure "1.2.1"]
[org.clojure/clojure-contrib "1.2.0"]
[lein-mvn "0.1.0"]
[lein-herokujetty "0.1.0"]]
:eval-in-leiningen true)
(require 'heroku-autobuild)
@fabiokung
fabiokung / pom.xml
Created August 6, 2011 09:28
slightly modified version from lift maven archetype version, in order to work with older mvn (2.0.8)
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.fabiokung</groupId>
<artifactId>lift_heroku</artifactId>
<version>0.1.0</version>
@fabiokung
fabiokung / pom.xml
Created August 6, 2011 09:31
modifications made on top of the version generated by spring-roo, to make it work with older mvn (2.0.8)
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>app</groupId>
<artifactId>roo_heroku</artifactId>
<packaging>war</packaging>
<version>0.1.0</version>
<name>app</name>
<properties>
<roo.version>1.1.5.RELEASE</roo.version>
@fabiokung
fabiokung / pom.xml
Created August 6, 2011 10:33
vraptor-scaffold generated pom.xml, modified to work with older mvn (2.0.8)
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.fabiokung</groupId>
<artifactId>myproject</artifactId>
<packaging>war</packaging>
<version>0.1.0</version>
<name>myproject</name>
<repositories>
@fabiokung
fabiokung / generators.rb
Created December 22, 2011 20:05
fibers as generators
module Generators
def generator(&blk)
Fiber.new do
loop { Fiber.yield(blk.call) }
end
end
end
@fabiokung
fabiokung / fiber.py
Created December 22, 2011 20:31
generators as fibers
# python 2.7.x
class Fiber:
def __init__(self, callback):
self._callback = callback()
def resume(self):
return self._callback.next()
$ MORE
-bash: MORE: command not found
class Stuff
def self.conf(*names)
names.each do |name|
define_singleton_method(name) do
@confs ||= {}
@confs[name]
end
define_singleton_method("#{name}=") do |value|
@confs ||= {}
@confs[name] = value