Commit a6d3e575 authored by Damian Montero's avatar Damian Montero Committed by GitHub

Merge branch 'master' into master

parents b45f7253 968ab00c
......@@ -3,7 +3,14 @@ chromebrew
Package manager for Chrome OS
**Does not support ARM chipsets yet**
Supported Systems
-----------------
| Architecture | Supported? |
|:--------------:|:----------:|
| x86_64 | Yes |
| i686 | Yes |
| arm (Exynos 5) | Yes |
Overview
--------
......
......@@ -15,6 +15,7 @@ CREW_CONFIG_PATH = CREW_PREFIX + '/etc/crew/'
CREW_BREW_DIR = CREW_PREFIX + '/tmp/crew/'
CREW_DEST_DIR = CREW_BREW_DIR + '/dest'
ARCH = `uname -m | tr -d '\n\r'`
SHORTARCH = `getconf LONG_BIT | tr -d '\n\r'`
$LOAD_PATH.unshift "#{CREW_LIB_PATH}lib"
......
......@@ -17,10 +17,13 @@ if [ $EUID -eq 0 ]; then
exit 1;
fi
if [ $architecture != "i686" ] && [ $architecture != "x86_64" ]; then
case "$architecture" in
"i686"|"x86_64"|"armv7l")
;;
*)
echo 'Your device is not supported by Chromebrew yet.'
exit 1;
fi
exit 1;;
esac
#prepare directories
for dir in $CREW_LIB_PATH $CREW_CONFIG_PATH $CREW_CONFIG_PATH/meta $CREW_BREW_DIR $CREW_DEST_DIR $CREW_PACKAGES_PATH; do
......@@ -34,18 +37,33 @@ cd $CREW_BREW_DIR
echo "Downloading ruby..."
case "$architecture" in
"armv7l")
link='https://dl.dropboxusercontent.com/s/w4y8b0an136fk3i/ruby-2.0.0p247-chromeos-armv7l.tar.xz'
tarname='ruby-2.0.0p247-chromeos-'$architecture'.tar.gz'
sha256='f3e6287ef47c78d2211e31d1d72453292c086f8b6bd08c8608abcf67f87de862'
;;
"i686")
link='https://dl.dropboxusercontent.com/s/tufbuqcn80ubypx/ruby-2.0.0p247-chromeos-i686.tar.gz'
tarname='ruby-2.0.0p247-chromeos-'$architecture'.tar.gz'
sha256='e16b0925f21c8651f780fa0be721ba04546bb70017d6da2a84fad83e4ff4ebe2'
;;
"x86_64")
link='https://dl.dropboxusercontent.com/s/3dw5ue5vhf5nj8k/ruby-2.0.0-p247-chromeos1-chromeos-x86_64.tar.gz'
tarname='ruby-2.0.0-p247-chromeos1-chromeos-'$architecture'.tar.gz'
sha256='77bd45734f460737e14d58cc73f5b9e16d22daa05eac704115047c0d8f9b5d44'
;;
esac
wget -c $link -O $tarname
#verify ruby
echo "Verifying ruby..."
echo $sha256 $tarname | sha256sum -c -
if [ $? -ne 0 ]; then
echo 'Verification failed, something may be wrong with the ruby download.'
exit 1;
fi
#extract and install ruby
echo "Extracting ruby (this may take a while)..."
tar -xf $tarname
......@@ -81,6 +99,27 @@ for file in git zlibpkg libssh2 perl curl expat gettext python readline ruby bui
wget -N -c $URL/packages/$file.rb
done
#install gcc on arm only. It requires special treatments
case "$architecture" in
"armv7l")
echo y | crew install gcc
if [ ! -d $HOME/Downloads/tools ]; then
mkdir $HOME/Downloads/tools
mkdir $HOME/Downloads/tools/bin
mkdir $HOME/Downloads/tools/lib
mkdir $HOME/Downloads/tools/libexec
mkdir $HOME/Downloads/tools/share
ln -s /usr/local/armv7a-cros-linux-gnueabi $HOME/Downloads/tools
ln -s /usr/local/bin/as $HOME/Downloads/tools/bin
ln -s /usr/local/bin/bison $HOME/Downloads/tools/bin
ln -s /usr/local/bin/ld $HOME/Downloads/tools/bin
ln -s /usr/local/bin/m4 $HOME/Downloads/tools/bin
ln -s /usr/local/lib/gcc $HOME/Downloads/tools/lib
ln -s /usr/local/libexec/gcc $HOME/Downloads/tools/libexec
ln -s /usr/local/share/bison $HOME/Downloads/tools/share
fi;;
esac
#install readline for ruby
echo y | crew install readline
......
......@@ -28,6 +28,11 @@ class Package
end
def self.system(*args)
# strip -m32 option and convert lib32 to lib for the case of ARM to avoid SHORTARCH flood
if ARCH == "armv7l"
args = args.map {|s| s.gsub("-m32", "")}
args = args.map {|s| s.gsub("lib32", "lib")}
end
Kernel.system(*args)
exitstatus = $?.exitstatus
raise InstallError.new("`#{args.join(" ")}` exited with #{exitstatus}") unless exitstatus == 0
......
......@@ -3,10 +3,12 @@ require 'package'
class Binutils < Package
version '2.23.2'
binary_url ({
armv7l: "https://dl.dropboxusercontent.com/s/kut6emhlda9pbc9/dummy-1.0.0-chromeos-armv7l.tar.gz",
i686: 'https://dl.dropboxusercontent.com/s/u3cp7mpdyfx99ij/binutils-2.23.2-chromeos-i686.tar.gz?token_hash=AAGsFB9HXNb5tSAm_Wd2GyIUL59BkZYgMTHkj4CkHLxggg&dl=1',
x86_64: 'https://dl.dropboxusercontent.com/s/mnu21v101rdbm8k/binutils-2.23.2-chromeos-x86_64.tar.gz?token_hash=AAEn4ngAJs-fpRUz1n1Q_2WKxQvQnPMwlgcEHBDKyLOpoA&dl=1'
})
binary_sha1 ({
armv7l: "049db60338a74d798e72afabe05097f3a4c4f7cd",
i686: 'a7edc9bdaf9fc72112fe6b370f158a9a1aee87ac',
x86_64: '1c13b8f261e419a66b87f09653f3fbaf8449efe1'
})
......
......@@ -3,10 +3,12 @@ require 'package'
class Curl < Package
version '7.32.0'
binary_url ({
armv7l: 'https://dl.dropboxusercontent.com/s/lvs0o30t4u9zjre/curl-7.32.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.dropboxusercontent.com/s/h3x2iiy5ibi97vr/curl-7.32.0-chromeos-i686.tar.gz?token_hash=AAETu-MnNyBTCHQbkh4O817QbNK3wRLbAP_gQhjgNyFGtw&dl=1',
x86_64: 'https://dl.dropboxusercontent.com/s/u2hmmd6wfz25qnn/curl-7.32.0-chromeos-x86_64.tar.gz?token_hash=AAGHjx6ATIsDW-Xi4pNUbCMknfWUa6GGQbAquWDkH1xzgg&dl=1'
})
binary_sha1 ({
armv7l: '0ee487342dc4e2cb10aa088a39b04b449b410e7c',
i686: 'af3abbae663884ed367c5b6b467ebb310052f53f',
x86_64: '94766f554b195583040e31ce8e85846d8271ac11'
})
......
......@@ -5,6 +5,14 @@ class Diffutils < Package
source_url 'ftp://ftp.gnu.org/gnu/diffutils/diffutils-3.3.tar.xz'
source_sha1 '6463cce7d3eb73489996baefd0e4425928ecd61e'
# arm has 3.3 diffutils in system, so leave it as is
binary_url({
armv7l: "https://dl.dropboxusercontent.com/s/kut6emhlda9pbc9/dummy-1.0.0-chromeos-armv7l.tar.gz",
})
binary_sha1({
armv7l: "049db60338a74d798e72afabe05097f3a4c4f7cd",
})
depends_on "libsigsegv"
def self.build
......
......@@ -3,10 +3,12 @@ require 'package'
class Expat < Package
version '2.1.0'
binary_url ({
armv7l: 'https://dl.dropboxusercontent.com/s/iwa36x4jjekcrnp/expat-2.1.0-chromeos-armv7l.tar.xz',
i686: 'https://dl.dropboxusercontent.com/s/jh5uw42elm40t9a/expat-2.1.0-chromeos-i686.tar.gz?token_hash=AAGYckE0KoTPsydZGG85KTkpr7Nt5U1OUs0egJ1K0iJ1mg&dl=1',
x86_64: 'https://dl.dropboxusercontent.com/s/k89o1x1a3fwoamu/expat-2.1.0-chromeos-x86_64.tar.gz?token_hash=AAGBLOil45Zg7G2RlFlfDUxKfeDyTP3uUWjfBvGQrOjAYA&dl=1'
})
binary_sha1 ({
armv7l: '5d12c1fae84601735a803f9ed10cc4e113f47ab7',
i686: '9ab42ec03d06cc64d5d9944cb4cc7eaa61a0af84',
x86_64: '3ac96a0e02c1117718d15bcd4976ef4bcef1a9ac'
})
......
require 'package'
class Filecmd < Package
version '5.29'
source_url 'ftp://ftp.astron.com/pub/file/file-5.29.tar.gz'
source_sha1 '8d360aeed901e3e4f4d4a865696ac1e29efdfcca'
def self.build
system "./configure"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
......@@ -4,6 +4,12 @@ class Gawk < Package
version '4.1.1'
source_url 'http://ftp.gnu.org/gnu/gawk/gawk-4.1.1.tar.gz'
source_sha1 '0480d23fffbf04bfd0d4ede4c1c3d57eb81cc771'
binary_url({
armv7l: "https://dl.dropboxusercontent.com/s/b7w6l92az4dmitf/gawk-4.1.1-chromeos-armv7l.tar.xz",
})
binary_sha1({
armv7l: "470c7f9360d563d88031d793f7bbe39a972e2209",
})
def self.build
system './configure --prefix=/usr/local'
......
......@@ -2,11 +2,15 @@ require 'package'
class Gcc < Package
version '4.8.1-baseline'
# GCC for ARM is taken from http://davy.nyacom.net/cros-arm-dev.html and modified little to fit crew package.
binary_url ({
armv7l: "https://dl.dropboxusercontent.com/s/fajmnew33ah8k34/gcc-4.9.x-google-20150123-chromeos-armv7l.tar.xz",
i686: "https://dl.dropboxusercontent.com/s/c06pcge8ogsqfcd/gcc-4.8.1-baseline-chromeos-i686.tar.gz?token_hash=AAFLnE_8iL_lAnGtAAVM5G_sYqejA44jGW8D9r0a8xCjrQ&dl=1",
x86_64: "https://dl.dropboxusercontent.com/s/kk52ic170je87fc/gcc-4.8.1-baseline-chromeos-x86_64.tar.gz?token_hash=AAGcQBSj1y8OfHXUhsayxlFfvk4LRszY07ehx_Z6UoyNEg&dl=1"
})
binary_sha1 ({
armv7l: "f1a50672bb0d21496ae494f07da4d298773d146e",
i686: "d720c9a804d26728d730b93748072ffa6df7ee3d",
x86_64: "59932a73cd149ae82b4b5c277b734788c1efab44"
})
......
......@@ -3,10 +3,12 @@ require 'package'
class Git < Package
version '1.8.4'
binary_url ({
armv7l: 'https://dl.dropboxusercontent.com/s/axzamdiwfl1cbnq/git-1.8.4-chromeos-armv7l.tar.xz',
i686: 'https://dl.dropboxusercontent.com/s/g3binxopw5nfky1/git-1.8.4-chromeos-i686.tar.gz?token_hash=AAEWnMNBfozSIzLD1unbYGJzT4FGkEfJmLFQ-3uzydfT_A&dl=1',
x86_64: 'https://dl.dropboxusercontent.com/s/i7vs9wfk94tsrzt/git-1.8.4-chromeos-x86_64.tar.gz?token_hash=AAHyvjayN7THoxlryZaxQ2Ejm9xyD6bZCqXZM81hYRC8iQ&dl=1'
})
binary_sha1 ({
armv7l: '6dafe06d2c430f492eba939982419e167e7e4e26',
i686: '8c1bf4bcffb0e9c17bf20dd05981e86ea34d5d65',
x86_64: '067cb6c36616ac30999ab97e85f3dc0e9d1d57f4'
})
......
......@@ -2,11 +2,14 @@ require 'package'
class Glibc < Package
version '2.17.90-baseline'
# arm use 2.19 by system, so 2.19 here also
binary_url ({
armv7l: "https://dl.dropboxusercontent.com/s/nxyjvbea59nwwdi/glibc-2.19-minimum-chromeos-armv7l.tar.xz",
i686: "https://dl.dropboxusercontent.com/s/dic47f8eqxhpf89/glibc-2.17.90-baseline-chromeos-i686.tar.gz?token_hash=AAHx_77YtWLLnkjCJRaCJt7RsdKrfkT6lgKS9BZc4O-0Pg&dl=1",
x86_64: "https://dl.dropboxusercontent.com/s/x3tu160i7pmn6tp/glibc-2.17-baseline-chromeos-x86_64.tar.gz?token_hash=AAG794JG65HjzHMcAyAysQUbEPMUci1bZJPREj3ztCtnBg&dl=1"
})
binary_sha1 ({
armv7l: "ad342eb260c78d2951b3aaf3f6f1f4519ceb8dd4",
i686: "3c3a0b86ed4591ec59daeb24d2dcda139574de1b",
x86_64: "d818775f74d91692828f12321044cd95fc649cf0"
})
......
......@@ -3,10 +3,12 @@ require 'package'
class Gmp < Package
version "5.1.2"
binary_url ({
armv7l: "https://dl.dropboxusercontent.com/s/kut6emhlda9pbc9/dummy-1.0.0-chromeos-armv7l.tar.gz",
i686: "https://dl.dropboxusercontent.com/s/9cwila1kaomsyl2/gmp-5.1.2-chromeos-i686.tar.gz?token_hash=AAHO9VxBpvXU2GPWBwimsp4hL8DADIItfNnIaFbfcyynMg&dl=1",
x86_64: "https://dl.dropboxusercontent.com/s/zp1mw0l93jcg35e/gmp-5.1.3-chromeos-x86_64.tar.gz?token_hash=AAHa75_Uu5zFQlbQUbse19d_vhIAmEnZ8bYpshE6giSXGw&dl=1"
})
binary_sha1 ({
armv7l: "049db60338a74d798e72afabe05097f3a4c4f7cd",
i686: "b03b9508463588bfe9d09303c0725068cddd8810",
x86_64: "2aee1fee1e4b98261127a4c73f3f88670f1c8162"
})
......
require 'package'
class Go < Package
version '1.4.1'
source_url 'https://storage.googleapis.com/golang/go1.4.1.src.tar.gz'
source_sha1 'c7a683e8d39b835e333199d68d0c0baefcd24a68'
version '1.7.4'
source_url 'https://storage.googleapis.com/golang/go1.7.4.src.tar.gz'
source_sha1 '0fb305c827c8794cfda7e437befa6101a2d06b2e'
def self.build
FileUtils.cd('src') do
system "./all.bash"
system "TMPDIR=/usr/local/tmp ./make.bash"
end
end
......
require 'package'
class Htop < Package
version '1.0.3'
source_url 'http://hisham.hm/htop/releases/1.0.3/htop-1.0.3.tar.gz' # software source tarball url
source_sha1 '261492274ff4e741e72db1ae904af5766fc14ef4'
version '2.0.2'
source_url 'http://hisham.hm/htop/releases/2.0.2/htop-2.0.2.tar.gz' # software source tarball url
source_sha1 '201f793f13dce2448e36047079875b9bd5bba75a'
depends_on 'buildessential'
depends_on 'ncurses'
......
require 'package'
class Jdk8 < Package
version '8.0.25'
version '8u112'
binary_url ({
i686: "https://www.dropbox.com/s/d1omw087ilkh5oq/jdk1.8.0_25_i686.tar.gz?dl=0",
x86_64: "https://www.dropbox.com/s/ykw2jt797cpghfy/jdk1.8.0_65_x86_64.tar.gz?dl=0"
i686: "https://dl.dropboxusercontent.com/u/14799278/crew/jdk8u112-i686.tar.gz",
x86_64: "https://dl.dropboxusercontent.com/u/14799278/crew/jdk8u112-x86_64.tar.gz",
armv7l: "https://www.dropbox.com/s/bfu14nhbeoi8tdo/jdk8u111-armv7l.tar.gz?dl=1"
})
binary_sha1 ({
i686: "2f6fabc6e7b86fa2f21d19f9617d2641c5862a30",
x86_64: "7701c06a704722b73bf8468a9d7819693e6d4be0"
i686: "65de377470bdd42e4f3e158b16917166ebe47a02",
x86_64: "9a009b3b33cbb82ec70e7b0061973b09308c7fed",
armv7l: "913adb900bf0d9d42452a4591c1a9093076ed4b6"
})
end
......@@ -4,6 +4,12 @@ class Less < Package
version '451'
source_url 'ftp://ftp.gnu.org/gnu/less/less-451.tar.gz'
source_sha1 'ee95be670e8fcc97ac87d02dd1980209130423d0'
binary_url({
armv7l: "https://dl.dropboxusercontent.com/s/tsyva5iweqp2blq/less-451-chromeos-armv7l.tar.xz",
})
binary_sha1({
armv7l: "c36725933672985b649073b0a6345e68c6bea96d",
})
depends_on 'buildessential'
depends_on 'ncurses'
......
require 'package'
class Libpng < Package
version '1.6.24'
source_url 'http://downloads.sourceforge.net/project/libpng/libpng16/1.6.24/libpng-1.6.24.tar.xz'
source_sha1 'b8fa86449bebd7b1cda71e0ed2cd417b6596ce78'
version '1.6.26'
source_url 'http://prdownloads.sourceforge.net/libpng/libpng-1.6.26.tar.gz'
source_sha1 '3b2652f89b8fdcb6c29e9ed7642dfcfc0bbcf17e'
def self.build
system "./configure --libdir=/usr/local/lib#{SHORTARCH}/ CC=\"gcc -m#{SHORTARCH}\" CFLAGS=\" -fPIC\""
......
......@@ -5,6 +5,14 @@ class Libsigsegv < Package
source_url 'ftp.gnu.org/gnu/libsigsegv/libsigsegv-2.10.tar.gz'
source_sha1 'b75a647a9ebda70e7a3b33583efdd550e0eac094'
# arm compiler doesn't recognize -m32 option, so I made binary for the ease of use
binary_url({
armv7l: "https://dl.dropboxusercontent.com/s/8tcvv9s16mmtdgs/libsigsegv-2.10-chromeos-armv7l.tar.xz",
})
binary_sha1({
armv7l: "004a4c6500946c7585c6ef782c912e36a056d8df",
})
def self.build
system "./configure --libdir=/usr/local/lib#{SHORTARCH}/ CC=\"gcc -m#{SHORTARCH}\" CFLAGS=\" -fPIC\""
system "make"
......
......@@ -3,10 +3,12 @@ require 'package'
class Libssh2 < Package
version '1.4.3'
binary_url ({
armv7l: 'https://dl.dropboxusercontent.com/s/rm6ww0r2afbsdvz/libssh2-1.4.3-chromeos-armv7l.tar.xz',
i686: 'https://dl.dropboxusercontent.com/s/zjnild1c2i10h53/libssh2-1.4.3-chromeos-i686.tar.gz?token_hash=AAG_aZ7_dPKOiOMCMUiW2g3mLkz8UKHnGn5jLcDAGcNCIA&dl=1',
x86_64: 'https://dl.dropboxusercontent.com/s/frzkbbnf35ie6ns/libssh2-1.4.3-chromeos-x86_64.tar.gz?token_hash=AAEk26mEOXT0MX05nM9gG6yNDPkL6KmLazRxKqQCR6qs8Q&dl=1'
})
binary_sha1 ({
armv7l: '1f2554b8199dba88d0f4fee5c9b3284da6657c24',
i686: '21b4b1a9608b12c0b3d1e6f0b6615f4a4152acb3',
x86_64: '903aae8255c47c6052003837be132ff39582422b'
})
......
......@@ -3,10 +3,12 @@ require 'package'
class Linuxheaders < Package
version '3.4.0'
binary_url ({
armv7l: "https://dl.dropboxusercontent.com/s/kut6emhlda9pbc9/dummy-1.0.0-chromeos-armv7l.tar.gz",
i686: "https://dl.dropboxusercontent.com/s/mdzdoyq7dtnz682/linux-headers-3.4.0-chromeos-i686.tar.gz?token_hash=AAE4yw5oH_SfZ3lAx02mFP603rnjmoB9Gp4vqTY14NsA-A&dl=1",
x86_64: "https://dl.dropboxusercontent.com/s/3ec3fjpls0t2iqn/linuxheaders-3.8.11-chromeos-x86_64.tar.gz?token_hash=AAFl1_1I3FtwGdoGvGJuGrGUqzaDkhumPzsGJMX5pYhZyQ&dl=1"
})
binary_sha1 ({
armv7l: "049db60338a74d798e72afabe05097f3a4c4f7cd",
i686: "31c933f3a4e82fd9310b0f5b32d79c9a51514fee",
x86_64: "c113e16d72147429f774ba6678d72a221b19a5bc"
})
......
......@@ -3,10 +3,12 @@ require 'package'
class Make < Package
version '3.82'
binary_url ({
armv7l: "https://dl.dropboxusercontent.com/s/zadlpkkj73m10an/make-3.82-chromeos-armv7l.tar.xz",
i686: "https://dl.dropboxusercontent.com/s/f6pg4bkg6m3vn7q/make-3.82-chromeos-i686.tar.gz?token_hash=AAHP__I3leN8BCLdP0pLbkNopoFGGhDuKX0sN-I6Zx4JYg&dl=1",
x86_64: "https://dl.dropboxusercontent.com/s/t818zxgixti6wvl/make-3.82-chromeos-x86_64.tar.gz?token_hash=AAGLBxpwv2mZj7dAgnzdmfFcO8G28wbCfb0lPM8_qwRtSA&dl=1"
})
binary_sha1 ({
armv7l: "b25e550b11ce3344744c26dad4089bfbc19a0fdb",
i686: "ccb01c7358e5abdf8b06305eb31b1969b8b174f7",
x86_64: "2bab91837440d101eb55129f41a7837101249b46"
})
......
require 'package'
class Moonbuggy < Package
version '1.0.51'
source_url 'http://m.seehuhn.de/programs/moon-buggy-1.0.51.tar.gz' # software source tarball url
source_sha1 '7f1c5df99944acfe98eeb5f8d5ab6f28ef61ee7e' # source tarball sha1 sum
depends_on 'ncurses'
def self.build # self.build contains commands needed to build the software from source
system "./configure"
system "make" # ordered chronologically
end
def self.install # self.install contains commands needed to install the software on the target system
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install" # remember to include DESTDIR set to CREW_DEST_DIR - needed to keep track of changes made to system
end
end
......@@ -3,10 +3,12 @@ require 'package'
class Mpc < Package
version '1.0.1'
binary_url ({
armv7l: "https://dl.dropboxusercontent.com/s/kut6emhlda9pbc9/dummy-1.0.0-chromeos-armv7l.tar.gz",
i686: "https://dl.dropboxusercontent.com/s/3o6uc8n4uy3oved/mpc-1.0.1-chromeos-i686.tar.gz?token_hash=AAH_OlvQWGUF7lyFhV3DXXgYRM1fupgKoHIwyiVmmVyWUQ&dl=1",
x86_64: "https://dl.dropboxusercontent.com/s/qr1x2fr1z0af26o/mpc-1.0.1-chromeos-x86_64.tar.gz?token_hash=AAFGK8OM8sm4k02lBAudZg8olgKxs_HmieFFqU6MZZONOA&dl=1"
})
binary_sha1 ({
armv7l: "049db60338a74d798e72afabe05097f3a4c4f7cd",
i686: "f11c6e74e9059bf400b0978e6e05fe67c7f3dfe9",
x86_64: "24c4be4ea026d2d6e432a0aa9edb6dd27cf3e7df"
})
......
......@@ -3,10 +3,12 @@ require 'package'
class Mpfr < Package
version '3.1.2'
binary_url ({
armv7l: "https://dl.dropboxusercontent.com/s/kut6emhlda9pbc9/dummy-1.0.0-chromeos-armv7l.tar.gz",
i686: "https://dl.dropboxusercontent.com/s/lo9ks3g7ar3zpfu/mpfr-3.1.2-chromeos-i686.tar.gz?token_hash=AAH1GlLfYtUs4uxl1ayeGTBe8RJ5uTXzOAsXgSlv8G5rrA&dl=1",
x86_64: "https://dl.dropboxusercontent.com/s/ev2a1yha3gm1hwy/mpfr-3.1.2-chromeos-x86_64.tar.gz?token_hash=AAErYQPCHkhALqnX4Y0LjATZITtD2qoKNbkdn67LOmRVRQ&dl=1"
})
binary_sha1 ({
armv7l: "049db60338a74d798e72afabe05097f3a4c4f7cd",
i686: "eb81b9bb83ebb43b94ab33e43293f1df3bcbad7c",
x86_64: "a80c48bee7e6e8ddcd1771c4fd7708d89f2abb9c"
})
......
......@@ -5,6 +5,14 @@ class Ncurses < Package
source_url 'ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.9.tar.gz'
source_sha1 '3e042e5f2c7223bffdaac9646a533b8c758b65b5'
# arm has 5.9 ncurses library in system, so leave it as is
binary_url({
armv7l: "https://dl.dropboxusercontent.com/s/kut6emhlda9pbc9/dummy-1.0.0-chromeos-armv7l.tar.gz",
})
binary_sha1({
armv7l: "049db60338a74d798e72afabe05097f3a4c4f7cd",
})
depends_on "diffutils"
def self.build
......
require 'package'
class Nginx < Package
version '1.11.6-1'
source_url 'http://nginx.org/download/nginx-1.11.6.tar.gz' # software source tarball url
source_sha1 '51903b721a5ee721568fc59f0a243df5356a98de' # source tarball sha1 sum
depends_on 'pcre'
def self.build # self.build contains commands needed to build the software from source
system "./configure"
system "make" # ordered chronologically
end
def self.install # self.install contains commands needed to install the software on the target system
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install" # remember to include DESTDIR set to CREW_DEST_DIR - needed to keep track of changes made to system
system "sudo ln -sf /usr/local/nginx/sbin/nginx /usr/local/bin/nginx"
system "echo all NGINX things are in /usr/local/nginx"
system "echo pages are in /usr/local/nginx/html"
system "echo adding bash aliases so you can easily start/stop nginx"
system "echo startnginx starts nginx and stopnginx stops nginx"
system "sed -i \'/^alias startnginx/d\' ~/.bashrc"
system "sed -i \'/^alias stopnginx/d\' ~/.bashrc"
system "sed -i '$ a alias startnginx=\"sudo nginx\"' ~/.bashrc"
system "sed -i '$ a alias stopnginx=\"sudo nginx -s quit\"' ~/.bashrc"
end
end
......@@ -16,6 +16,12 @@ class Node < Package
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
#Fix Permissiongs for -g installs of node packages
system "sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}"
echo "************************************************************"
echo "Now run:"
echo "sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}"
echo "To be able to do"
echo "npm install -g"
echo "without being SUDO"
echo "************************************************************"
end
end
require 'package'
class Node_current < Package
version '6.2.2'
source_url 'https://nodejs.org/dist/v6.2.2/node-v6.2.2.tar.xz'
source_sha1 '5014800813fa3682b8053637518b37a119c26e93'
version '6.9.2'
source_url 'https://nodejs.org/dist/v6.9.2/node-v6.9.2.tar.gz'
source_sha1 '6b33b9fac28785b8317dfa5f2402aff2df3e2d5a'
depends_on 'buildessential'
depends_on 'python27'
......@@ -16,6 +16,11 @@ class Node_current < Package
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
#Fix Permissiongs for -g installs of node packages
system "sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}"
echo "************************************************************"
echo "Now run:"
echo "sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}"
echo "To be able to do"
echo "npm install -g"
echo "without being SUDO"
end
end
require 'package'
class Node_stable < Package
version '6.2.2'
source_url 'https://nodejs.org/dist/v6.2.2/node-v6.2.2.tar.xz'
source_sha1 '5014800813FA3682B8053637518B37A119C26E93'
version '6.9.2'
source_url 'https://nodejs.org/dist/v6.9.2/node-v6.9.2.tar.gz'
source_sha1 '6b33b9fac28785b8317dfa5f2402aff2df3e2d5a'
depends_on 'buildessential'
depends_on 'python27'
......@@ -16,6 +16,11 @@ class Node_stable < Package
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
#Fix Permissiongs for -g installs of node packages
system "sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}"
echo "************************************************************"
echo "Now run:"
echo "sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}"
echo "To be able to do"
echo "npm install -g"
echo "without being SUDO"
end
end
require 'package'
class Pcre < Package
version '8.39'
source_url 'http://downloads.sourceforge.net/pcre/pcre-8.39.tar.bz2' # software source tarball url
source_sha1 '5e38289fd1b4ef3e8426f31a01e34b6924d80b90' # source tarball sha1 sum
def self.build # self.build contains commands needed to build the software from source
system "./configure"
system "make" # ordered chronologically
end
def self.install # self.install contains commands needed to install the software on the target system
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install" # remember to include DESTDIR set to CREW_DEST_DIR - needed to keep track of changes made to system
end
end
......@@ -3,10 +3,12 @@ require 'package'
class Perl < Package
version '5.16.3'
binary_url ({
armv7l: 'https://dl.dropboxusercontent.com/s/84esb5d5638plvn/perl-5.16.3-chromeos-armv7l.tar.xz',
i686: 'https://dl.dropboxusercontent.com/s/qwbwhvqed0yyv3l/perl-5.16.3-chromeos-i686.tar.gz?token_hash=AAHjq1OrZ3iNYerA9y6QIPtsn3fOnW5QeIFbYlBbBN-OkA&dl=1',
x86_64: 'https://dl.dropboxusercontent.com/s/gg2q9tsvy2ybf80/perl-5.18.1-chromeos-x86_64.tar.gz?token_hash=AAFbAeYB604esg7FRBM_TeBh2hiDg2Bw8eZfPHFH8zCdHw&dl=1'
})
binary_sha1 ({
armv7l: '4ce1cbeea2cd79610f8a681a9c094370590c981f',
i686: 'e2a8c5280b8a4abec70256f41d5e5b04253d6796',
x86_64: '5bf7c1762499a40f2ce8684be6f5699c6a4658e1'
})
......
require 'package'
class Pkg-config < Package
class Pkg_config < Package
version '29.1'
source_url 'https://pkg-config.freedesktop.org/releases/pkg-config-0.29.1.tar.gz'
source_sha1 '271ce928f6d673cc16cbced2bfd14a5f2e5d3d37'
......
......@@ -21,8 +21,7 @@ class Postgres < Package
puts "To get started, you need to initialize a database directory"
puts "'echo \"export PATH=/usr/local/pgsql/bin:$PATH\" >> ~/.bashrc'"
puts "'source ~/.bashrc'"
puts "'sudo chown chronos:chronos /usr/local/pgsql/data'"
puts "'sudo chmod 700 /usr/local/pgsql/data'"
puts "'chmod 700 /usr/local/pgsql/data'"
puts "'initdb -D /usr/local/pgsql/data'"
puts "To start postgres: 'pg_ctl -D /usr/local/pgsql/data -l logfile start'"
puts "To stop postgres: 'pg_ctl -D /usr/local/pgsql/data stop'"
......
......@@ -3,10 +3,12 @@ require 'package'
class Python < Package
version '3.3.2'
binary_url ({
armv7l: 'https://dl.dropboxusercontent.com/s/1uwhvkteeqwxy38/python-3.3.2-chromeos-armv7l.tar.xz',
i686: 'https://dl.dropboxusercontent.com/s/mxgfmq992hhiawk/python-3.3.2-chromeos-i686.tar.gz?token_hash=AAFA2YzFp293uyV3zYfP70iwCk8oH9HCLKMTrK0dtMU8GQ&dl=1',
x86_64: 'https://dl.dropboxusercontent.com/s/r1zvmza51hrr87q/python-3.3.2-chromeos-x86_64.tar.gz?token_hash=AAHIdz6pWcOrfty7C8ACuRcLDq0d0ERYs0jCgOPLn5USUQ&dl=1'
})
binary_sha1 ({
armv7l: '0bca057b1ce5c368fa8a80353b5b9f0e6eedfb89',
i686: 'a985a4bba243b4fa701db302dc2fa554aef76f1c',
x86_64: 'fbfe0946c2f9191bd6110705994d459e373a8b09'
})
......
......@@ -2,11 +2,12 @@ require 'package'
class Python27 < Package
version '2.7.12'
source_url 'https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz' # software source tarball url
source_sha1 '1e80b781eacc6b7e243bd277e5002426aa56d0f1' # source tarball sha1 sum
source_url 'https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tar.xz' # software source tarball url
source_sha1 '05360b8ade117b35e266b2004a7f1f11250c6dcd' # source tarball sha1 sum
depends_on 'bz2'
depends_on 'ncurses'
depends_on 'openssl_devel'
def self.build # self.build contains commands needed to build the software from source
system "./configure --prefix=/usr/local CPPFLAGS=\"-I/usr/local/include -I/usr/local/include/ncurses\" LDFLAGS=\"-L/usr/local/lib\" CFLAGS=\" -fPIC\""
......
......@@ -3,10 +3,12 @@ require 'package'
class Ruby < Package
version '2.0.0p247-chromeos1'
binary_url ({
armv7l: "https://dl.dropboxusercontent.com/s/w4y8b0an136fk3i/ruby-2.0.0p247-chromeos-armv7l.tar.xz",
i686: "https://dl.dropboxusercontent.com/s/tufbuqcn80ubypx/ruby-2.0.0p247-chromeos-i686.tar.gz&dl=1",
x86_64: "https://www.dropbox.com/s/x3jt0z5i1r4afyv/ruby-2.0.0p247-chromeos-x86_64.tar.gz?dl=1"
})
binary_sha1 ({
armv7l: "0340b0dfd35e94d634a3f4a5647e13d496aea4e0",
i686: "49eeba5d542e4c3e6aa3686f215485e0946fb99a",
x86_64: "f1de1ef5ed690c3b78f4e40208a4fb93e227c4ed"
})
......
require 'package'
class Texinfo < Package
version '6.3'
source_url 'http://ftp.gnu.org/gnu/texinfo/texinfo-6.3.tar.gz' # software source tarball url
source_sha1 '29b16c646c7bc9cd351b2f1d8dafdce70e5377f6' # source tarball sha1 sum
def self.build # self.build contains commands needed to build the software from source
system "./configure"
system "make" # ordered chronologically
end
def self.install # self.install contains commands needed to install the software on the target system
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install" # remember to include DESTDIR set to CREW_DEST_DIR - needed to keep track of changes made to system
end
end
require 'package'
class Unzip < Package
version '1.6_1'
source_url 'https://downloads.sourceforge.net/project/infozip/UnZip%206.x%20%28latest%29/UnZip%206.0/unzip60.tar.gz'
source_sha1 'abf7de8a4018a983590ed6f5cbd990d4740f8a22'
depends_on 'patch'
# adapted from the homebrew recipe as seen at: https://github.com/Homebrew/homebrew-dupes/blob/master/unzip.rb
# Upstream is unmaintained so we use the Ubuntu unzip-6.0-20ubuntu1 patchset:
# http://changelogs.ubuntu.com/changelogs/pool/main/u/unzip/unzip_6.0-20ubuntu1/changelog
def self.patch
patch_url = "https://launchpad.net/ubuntu/+archive/primary/+files/unzip_6.0-20ubuntu1.debian.tar.xz"
patch_sha256 = "0ddf122ef15b739e3ea06db4b9e80f40759dce23a2c886678881453a43bd0842"
system('wget', '--continue', '--no-check-certificate', patch_url, '-O', 'unzippatches.tar.xz')
abort 'Checksum mismatch :/ try again' unless Digest::SHA256.hexdigest( File.read("./unzippatches.tar.xz") ) == patch_sha256
system("tar","-xf","unzippatches.tar.xz")
system("for i in `cat debian/patches/series`; do patch -p 1 < debian/patches/$i; done")
end
def self.build
self.patch
system "make -f unix/Makefile generic"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "MANDIR=/usr/local/tmp/unzip-man", "-f", "unix/Makefile", "install"
#remove the man pages we couldn't install
system "rm -r -f /usr/local/tmp/unzipman"
end
end
......@@ -3,10 +3,12 @@ require 'package'
class Zlibpkg < Package
version '1.2.8'
binary_url ({
armv7l: 'https://dl.dropboxusercontent.com/s/0abbkyzj6unp5lz/zlibpkg-1.2.8-chromeos-armv7l.tar.xz',
i686: 'https://dl.dropboxusercontent.com/s/ljhhvr12u1izayj/zlib-1.2.8-chromeos-i686.tar.gz?token_hash=AAEABTatYkxOOybZGoCj3Kg_DKEbFbSfolzZklfHwCsP_A&dl=1',
x86_64: 'https://dl.dropboxusercontent.com/s/h4lqj0rnand0jqu/zlib-1.2.8-chromeos-x86_64.tar.gz?token_hash=AAGabAMhX4CGpzhpkcuKMmmWPxFZDiNOC-r9B0o7x4D7eQ&dl=1'
})
binary_sha1 ({
armv7l: 'ff64005a9e5c953a1d4b05cfa3a1a5d36006f969',
i686: 'e02974780bfb3bf46940183043d15897a765ab4e',
x86_64: 'cb764e22b68b7e2884372708b5b585d11efca972'
})
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment