• Stars
    star
    108
  • Rank 321,259 (Top 7 %)
  • Language
    Ruby
  • Created over 13 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

homebrew + fpm = debian packages

brew2deb

This is a hack that combines Homebrew and FPM to build a Ruby version of pacman's makepkg.

The packages found here can be built using the gh-package/inferno system.

usage from hubot

You can build any package in brew2deb via hubot, using:

hubot package {package-name}/{branch}

You can also test packages like so:

hubot package git/test-package-branch

You'll find the built test packages for git in, e.g., /data/brew2deb/packages/git/pkg on build1 (squeeze) and build2 (lenny).

Once in master, you can build and setup packages:

hubot package git/master

This uploads the package to gold1 and runs freight to make it available for puppetruns.

available packages (a few still in progress)

  • android-sdk
  • asciidoc
  • astyanax
  • clojure
  • collectd (in progress)
  • collectd-carbon (in progress)
  • credis
  • daemontools
  • django
  • djbdns
  • docutils (in progress)
  • elasticsearch
  • elfutils
  • erlang
  • filtergen
  • freight
  • func
  • geoip (requires manually building, site license)
  • git
  • go
  • google-coredumper (requires manual building, lenny only)
  • google-perftools
  • graphite (in progress)
  • grok
  • gunicorn (in progress)
  • hadoop-hive (in progress)
  • haproxy
  • htop
  • igb
  • ipmitool
  • ipvsadm
  • kestrel
  • leiningen
  • libelf
  • libmemcache
  • libunwind
  • libvirt (Ubuntu 12.04 only)
  • linux-image
  • lldpd
  • lockrun
  • logstash
  • lshw
  • lsof
  • ltrace
  • megacli (requires manually building, site license)
  • megaraid_sas (requires manually building, squeeze only)
  • memcached
  • mtop
  • nethogs
  • nginx (in progress)
  • nodejs
  • openssh
  • openssl
  • openwsman (Ubuntu 12.04 only)
  • percona-server
  • phantomjs
  • postgresql
  • pygments
  • redis1
  • redis2
  • redis24
  • rsyslog
  • ruby (multiple versions, in progress of being split)
  • s3cmd
  • spawn-fcgi
  • toiletfs
  • vmtouch
  • yajl
  • zeromq
  • zootest

local setup on debian

$ apt-get install dpkg-dev pbuilder
$ apt-get install ruby rubygems libjson-ruby
$ apt-get install git
$ apt-get install curl
$ git clone git://github.com/github/brew2deb

command-line usage

$ cd packages/git
$ tree
├── formula.rb
└── patches
    ├── git-fetch-performance.diff
    ├── patch-id-eof-fix.diff
    ├── post-upload-pack-hook.diff
    ├── remove-duplicate-dot-have-lines.diff
    └── upload-pack-deadlock.diff
$ ../../bin/brew2deb
==> Downloading http://kernel.org/pub/software/scm/git/git-1.7.5.4.tar.bz2
==> Extracting source
==> Downloading patches
==> Patching
patching file upload-pack.c
patching file Makefile
Hunk #1 succeeded at 539 (offset -8 lines).
Hunk #2 succeeded at 642 (offset -8 lines).
patching file bisect.c
patching file builtin/fetch-pack.c
patching file builtin/receive-pack.c
patching file sha1-array.c
patching file sha1-array.h
patching file transport.c
patching file transport.h
patching file builtin/fetch-pack.c
==> Compiling source
GIT_VERSION = 1.7.5.4
    * new build flags or prefix
    CC daemon.o
    CC abspath.o
    ...
    GEN bin-wrappers/test-svn-fe
    GEN bin-wrappers/test-treap
    GEN bin-wrappers/test-index-version
    GEN bin-wrappers/test-mktemp
==> Installing binaries
    SUBDIR gitweb
    SUBDIR ../
make[2]: `GIT-VERSION-FILE' is up to date.
    GEN git-instaweb
    SUBDIR perl
    SUBDIR git_remote_helpers
    SUBDIR templates
install -d -m 755 '/home/tmm1/brew2deb/packages/git/install/usr/bin'
install -d -m 755 '/home/tmm1/brew2deb/packages/git/install/usr/lib/git-core'
    ...
==> Packaging into a .deb
Created /home/tmm1/brew2deb/packages/git/pkg/git_1.7.5.4-1+github1_amd64.deb
$ dpkg --info pkg/git_1.7.5.4-1+github1_amd64.deb
 Package: git
 Version: 1:1.7.5.4-1+github1
 Architecture: amd64
 Maintainer: Aman Gupta <[email protected]>
 Depends: perl-modules, liberror-perl, libsvn-perl | libsvn-core-perl, libwww-perl, libterm-readkey-perl
 Provides: git-core, git-svn
 Replaces: git-core, git-svn
 Conflicts: git-core, git-svn
 Standards-Version: 3.9.1
 Section: vcs
 Priority: extra
 Homepage: http://git-scm.com
 Description: The Git DVCS with custom patches and bugfixes for GitHub.

More Repositories

1

stackprof

a sampling call-stack profiler for ruby 2.2+
Ruby
2,084
star
2

rbtrace

like strace, but for ruby code
Ruby
1,691
star
3

perftools.rb

gperftools for ruby code
C
1,027
star
4

rblineprof

line-profiler for ruby
C
771
star
5

test-queue

parallel test runner for CI environments
Ruby
574
star
6

emoji-extractor

extracts high-resolution emoji pngs from /System/Library/Fonts/Apple Color Emoji.ttf
Ruby
548
star
7

ripper-tags

fast, accurate ctags generator for ruby source code using Ripper
Ruby
544
star
8

gctools

profiler/logger/oobgc for rgengc in ruby 2.1
C
258
star
9

hotspots

a graphical view into your rails app's performance
JavaScript
199
star
10

sinbook

simple sinatra facebook extension in 300 lines of ruby
Ruby
84
star
11

graphite

git-bzr mirror of graphite trunk
Python
81
star
12

ruby-hacking-guide

ruby hacking guide english translation
Ruby
77
star
13

em-mysql

Async MySQL driver for Ruby/Eventmachine
Ruby
76
star
14

flyapp-mastodon

mastodon on fly.io
Dockerfile
71
star
15

jssocket

generic javascript socket API
JavaScript
57
star
16

em-spec

Simple BDD API for testing asynchronous Ruby/EventMachine code
Ruby
56
star
17

xmpp4em

EventMachine based XMPP client
Ruby
54
star
18

taxsim.app

US Income Tax simulator, built on NBER TAXSIM and taxsim.js
JavaScript
45
star
19

rmongo

Ruby/Eventmachine driver for 10gen's object database Mongo
Ruby
36
star
20

cycript

my personal git fork of http://svn.saurik.com/repos/cycript/trunk/
C++
27
star
21

taxsim.js

JS/WebAssembly version of NBER TAXSIM
HTML
21
star
22

taxes.cue

tax organizer and calculator in #cuelang
CUE
18
star
23

fiber18

API compatible Thread based Fiber implementation for Ruby 1.8
Ruby
18
star
24

ruby_posix_mq

Unofficial ruby_posix_mq Mirror. Updated semi-regularly.
Ruby
18
star
25

mailfactory

Create MIME email messages with multiple body parts and attachments in Ruby
Ruby
17
star
26

ruby187

fork of ruby 1.8.7p72 with branches for various gc and thread related patches
Ruby
16
star
27

apthunter

greasemonkey-style chrome extension to add keyboard navigation, stars, notes and inline images/maps to craigslist apartment listings
JavaScript
16
star
28

raindrops

my personal fork of http://repo.or.cz/w/raindrops.git
Ruby
14
star
29

nginxr

Nginxr is a ruby wrapper for nginx config file by oleganza
Ruby
12
star
30

memprof.com

memprof.com
JavaScript
11
star
31

ruby-collectd

Send collectd statistics from your Ruby script
Ruby
8
star
32

rvm.deb

debian package for rvm
8
star
33

ctags.rb

ruby wrapper for exuberant-ctags
Ruby
7
star
34

macvim_vimshell

macvim + vimshell patch
C
6
star
35

lingo

5
star
36

tablo-for-channels

M3U generator optimized for Channels' custom channels.
Go
5
star
37

async_sequel

asynchronous sequel datasets and models
5
star
38

debugproxy

TCP man-in-the-middle proxy
Ruby
5
star
39

nzbget

my git-svn fork of nzbget
C++
5
star
40

haproxy

my copy of haproxy-1.4.git
C
4
star
41

matzruby

A Git mirror of http://svn.ruby-lang.org/repos/ruby.
4
star
42

libmemcached.rb

simple, clean ruby wrapper for libmemcached 1.0
C
3
star
43

tmm1.github.com

tmm1.net
CSS
2
star
44

node-fflush

fflush(3)
C++
2
star
45

TomatoTent

A discreet Home Grow Box
C++
1
star
46

renderapp-mastodon

mastodon on render.com
Dockerfile
1
star
47

haproxy-dev

my copy of haproxy.git (1.5-dev)
C
1
star
48

androidhdmi-for-channels

androidhdmi-for-channels
Go
1
star