diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index e43b0f988953ae3a84b00331d0ccf5f7d51cb3cf..0000000000000000000000000000000000000000
--- a/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-.DS_Store
diff --git a/README.md b/README.md
index 751538149dcd883b644358e5b58c598dcaae4a6f..b5f98e76f165e69c52bfcfe6b6985fb21729bc7e 100644
--- a/README.md
+++ b/README.md
@@ -42,12 +42,12 @@ Usage
     crew <command> <package> <keep[temporary files]>
 
 Where available commands are:
-  
+
   * search [looks for a package]
   * download [downloads a package to `CREW_BREW_DIR` (`/usr/local/tmp/crew` by default), but doesn't install it]
   * install [installs a package along with its dependencies. You'll be prompted for confirmation]
-  * remove [removes a package. Must be ran as root]
-  
+  * remove [removes a package.]
+
 Available packages are listed in the [packages directory](https://github.com/skycocker/chromebrew/tree/master/packages).
 
 Chromebrew will wipe its `BREW_DIR` (`/usr/local/tmp/crew` by default) after installation unless you pass "keep" as the last parameter when running "crew install".
diff --git a/crew b/crew
index e66514ae21a6841d60c825fa56effcf98d62ceb7..eb05f785ed80345e98fd966fe0b4d814023504d1 100755
--- a/crew
+++ b/crew
@@ -104,7 +104,7 @@ def update
     system "git reset --hard origin/master"
   end
   puts "Package lists, crew, and library updated."
-  
+
   #check for outdated installed packages
   puts "Checking for package updates..."
   puts ""
@@ -117,7 +117,7 @@ def update
       puts @pkg.name + " could be updated from " + package[:version] + " to " + @pkg.version
     end
   end
-  
+
   if canBeUpdated > 0
     puts ""
     puts "Run 'crew upgrade' to upgrade everything or 'crew upgrade <packageName>' to upgrade a specific package."
@@ -136,7 +136,7 @@ def upgrade
         currentVersion = package[:version]
       end
     end
-    
+
     if currentVersion != @pkg.version
       puts "Updating #{@pkg.name}..."
       @pkg.in_upgrade = true
@@ -153,7 +153,7 @@ def upgrade
         toBeUpdated.push(package[:name])
       end
     end
-  
+
     if toBeUpdated.length > 0
       puts "Updating packages..."
       toBeUpdated.each do |package|
@@ -262,11 +262,11 @@ def install_package (pkgdir)
     FileUtils.mv 'filelist', CREW_CONFIG_PATH + "meta/#{@pkg.name}.filelist"
 
     File.open(CREW_CONFIG_PATH + "meta/#{@pkg.name}.directorylist").each_line do |line|
-      system "sudo", "mkdir", "-p", line.chomp
+      system "mkdir", "-p", line.chomp
     end
 
     File.open(CREW_CONFIG_PATH + "meta/#{@pkg.name}.filelist").each_line do |line|
-      system "sudo", "mv", pkgdir + line.chomp, line.chomp
+      system "mv", pkgdir + line.chomp, line.chomp
     end
   end
 end
@@ -276,10 +276,10 @@ def resolve_dependencies_and_install
     origin = @pkg.name
 
     resolveDependencies
-  
+
     search origin, true
     install
-  rescue InstallError => e 
+  rescue InstallError => e
     abort "#{@pkg.name} failed to install: #{e.to_s}"
   ensure
     #cleanup
@@ -320,7 +320,7 @@ def resolveDependencies
       end
     end
   end
-  
+
   push_dependencies
 
   # Add buildessential and solve its dependencies if any of dependent
@@ -330,16 +330,16 @@ def resolveDependencies
     search 'buildessential', true
   end
   push_dependencies
-  
+
   return if @dependencies.empty?
 
   puts "Following packages also need to be installed: "
-  
+
   @dependencies.flatten!.uniq!
   @dependencies.each do |dep|
     print dep + " "
   end
-  
+
   puts ""
   puts "Do you agree? [Y/n]"
   response = STDIN.getc
@@ -398,7 +398,7 @@ def install
     puts "Installing..."
     install_package dest_dir
   end
-  
+
   #add to installed packages
   @device[:installed_packages].push(name: @pkg.name, version: @pkg.version)
   File.open(CREW_CONFIG_PATH + 'device.json', 'w') do |file|
@@ -534,23 +534,38 @@ when "whatprovides"
     puts "Usage: crew whatprovides [pattern]"
   end
 when "download"
-  search @pkgName
-  download
+  if @pkgName
+    search @pkgName
+    download
+  else
+    puts "Usage: crew download [package]"
+  end
 when "update"
   update
 when "upgrade"
   upgrade
 when "install"
-  search @pkgName
-  resolve_dependencies_and_install
+  if @pkgName
+    search @pkgName
+    resolve_dependencies_and_install
+  else
+    puts "Usage: crew install [package]"
+  end
 when "build"
-  search @pkgName
-  resolve_dependencies_and_build
+  if @pkgName
+    search @pkgName
+    resolve_dependencies_and_build
+  else
+    puts "Usage: crew build [package]"
+  end
 when "remove"
-  abort 'Removing actions must be ran with sudo.' unless USER == 'root'
-  remove @pkgName
+  if @pkgName
+    remove @pkgName
+  else
+    puts "Usage: crew remove [package]"
+  end
 when nil
-  puts "Chromebrew, version 0.4.1"
+  puts "Chromebrew, version 0.4.2"
   puts "Usage: crew [command] [package]"
   puts "Available commands: build, download, install, remove, search, update, upgrade, whatprovides"
 else
diff --git a/install.sh b/install.sh
index fe5ce35379ea08118921bae60038ebac7fff92aa..eb0d20aab31a9c6e81849b3522efe0d73917d068 100755
--- a/install.sh
+++ b/install.sh
@@ -25,9 +25,12 @@ case "$architecture" in
   exit 1;;
 esac
 
+#This will allow things to work without sudo
+sudo chown -R `id -u`:`id -g` /usr/local
+
 #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
-  sudo mkdir -p $dir && sudo chown -R $USER:$USER $dir
+  mkdir -p $dir
 done
 
 #prepare url and sha256
@@ -96,7 +99,7 @@ function extract_install () {
     rm -rf ./usr
     tar -xf $2
     echo "Installing $1 (this may take a while)..."
-    sudo tar cf - ./usr/* | (cd /; sudo tar xp --keep-directory-symlink -f -)
+    tar cf - ./usr/* | (cd /; tar xp --keep-directory-symlink -f -)
     mv ./dlist $CREW_CONFIG_PATH/meta/$1.directorylist
     mv ./filelist $CREW_CONFIG_PATH/meta/$1.filelist
 }
@@ -156,7 +159,7 @@ rm -rf crew lib packages
 wget -N $URL/crew
 chmod +x crew
 rm -f $CREW_PREFIX/bin/crew
-sudo ln -s `pwd`/crew $CREW_PREFIX/bin
+ln -s `pwd`/crew $CREW_PREFIX/bin
 #install crew library
 mkdir -p $CREW_LIB_PATH/lib
 cd $CREW_LIB_PATH/lib
@@ -165,10 +168,7 @@ wget -N $URL/lib/package_helpers.rb
 
 #Making GCC act like CC (For some npm packages out there)
 rm -f /usr/local/bin/cc
-sudo ln -s /usr/local/bin/gcc /usr/local/bin/cc
-
-#This will allow a lot of things to work without sudo
-sudo chown -R `id -u`:`id -g` /usr/local
+ln -s /usr/local/bin/gcc /usr/local/bin/cc
 
 #prepare sparse checkout .rb packages directory and do it
 cd $CREW_LIB_PATH
diff --git a/packages/binutils.rb b/packages/binutils.rb
index 44c8cffca11a1e7ffc3af34e2a82888438b0846c..22530241ee632ba4440b59be552e1569edd7a054 100644
--- a/packages/binutils.rb
+++ b/packages/binutils.rb
@@ -1,17 +1,17 @@
 require 'package'
 
 class Binutils < Package
-  version '2.25-1'
+  version '2.25-cc1.3'
   binary_url ({
-    aarch64: 'https://github.com/jam7/chromebrew/releases/download/newtoolchains/binutils-2.25-1-chromeos-armv7l.tar.xz',
-    armv7l:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/binutils-2.25-1-chromeos-armv7l.tar.xz',
-    i686:    'https://github.com/jam7/chromebrew/releases/download/newtoolchains/binutils-2.25-1-chromeos-i686.tar.xz',
-    x86_64:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/binutils-2.25-1-chromeos-x86_64.tar.xz',
+    aarch64: 'https://github.com/jam7/chrome-cross/releases/download/v1.3/binutils-2.25-cc1.3-chromeos-armv7l.tar.xz',
+    armv7l:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/binutils-2.25-cc1.3-chromeos-armv7l.tar.xz',
+    i686:    'https://github.com/jam7/chrome-cross/releases/download/v1.3/binutils-2.25-cc1.3-chromeos-i686.tar.xz',
+    x86_64:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/binutils-2.25-cc1.3-chromeos-x86_64.tar.xz',
   })
   binary_sha1 ({
-    aarch64: '5a4b3c8ddcac5d1b3fdc2f6aee8c9ec64f2d23ea',
-    armv7l:  '5a4b3c8ddcac5d1b3fdc2f6aee8c9ec64f2d23ea',
-    i686:    '9d8d586e5e44badbe1f2058f53c183c019353a0e',
-    x86_64:  '94d246a14efc080a398aefe9e192331a4ffaed46',
+    aarch64: '926b6aeab6d9c33435eefb856e4cb5263753387c',
+    armv7l:  '926b6aeab6d9c33435eefb856e4cb5263753387c',
+    i686:    'ebf66128ca99fa81c26b49b20163ea77eeb1e204',
+    x86_64:  '5427ba83960d0b7866aec8de63415720595ffe4a',
   })
 end
diff --git a/packages/buildessential.rb b/packages/buildessential.rb
index 72627af521b7cc3e395cb5ff5b20820227af94fc..efb125e388eac8db82c095dd41ffda81e3058078 100644
--- a/packages/buildessential.rb
+++ b/packages/buildessential.rb
@@ -6,7 +6,7 @@ class Buildessential < Package
   is_fake
   
   depends_on 'gcc'
-  depends_on 'make'
   depends_on 'linuxheaders'
+  depends_on 'make'
   depends_on 'pkgconfig'
 end
diff --git a/packages/cloog.rb b/packages/cloog.rb
index d828080d51817ff5cdf4f57b19de7114f45494e5..acba809fbfdf76393299c730729b5849fec95111 100644
--- a/packages/cloog.rb
+++ b/packages/cloog.rb
@@ -1,17 +1,17 @@
 require 'package'
 
 class Cloog < Package
-  version "0.18.4"
+  version "0.18.4-cc1.3"
   binary_url ({
-    aarch64: 'https://github.com/jam7/chromebrew/releases/download/newtoolchains/cloog-0.18.4-chromeos-armv7l.tar.xz',
-    armv7l:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/cloog-0.18.4-chromeos-armv7l.tar.xz',
-    i686:    'https://github.com/jam7/chromebrew/releases/download/newtoolchains/cloog-0.18.4-chromeos-i686.tar.xz',
-    x86_64:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/cloog-0.18.4-chromeos-x86_64.tar.xz',
+    aarch64: 'https://github.com/jam7/chrome-cross/releases/download/v1.3/cloog-0.18.4-cc1.3-chromeos-armv7l.tar.xz',
+    armv7l:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/cloog-0.18.4-cc1.3-chromeos-armv7l.tar.xz',
+    i686:    'https://github.com/jam7/chrome-cross/releases/download/v1.3/cloog-0.18.4-cc1.3-chromeos-i686.tar.xz',
+    x86_64:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/cloog-0.18.4-cc1.3-chromeos-x86_64.tar.xz',
   })
   binary_sha1 ({
-    aarch64: '919798d4329b96aa33374fe460d95e6e485b00c2',
-    armv7l:  '919798d4329b96aa33374fe460d95e6e485b00c2',
-    i686:    '7f37371de5d5f7eeaf13fe93fc664ecd6daadb25',
-    x86_64:  '33d18076f6ca5b5c56e7908368b87d137355696a',
+    aarch64: 'e54784816f181c185dbd0eddc1b0c9f898db2caa',
+    armv7l:  'e54784816f181c185dbd0eddc1b0c9f898db2caa',
+    i686:    '3409f9c55e187533308f4febee39651833f592ad',
+    x86_64:  'cb29abf230eff44903a9a727f901903cba8bd1c7',
   })
 end
diff --git a/packages/flex.rb b/packages/flex.rb
index a50111b7b0e87f912a878966a921a7b72eb66d57..a799912300041b2fa60c8b989f9a318e2f79e4ee 100644
--- a/packages/flex.rb
+++ b/packages/flex.rb
@@ -1,19 +1,24 @@
 require 'package'
 
 class Flex < Package
-  version '2.6.3'
-  source_url 'https://fossies.org/linux/misc/flex-2.6.3.tar.gz'
-  source_sha1 '8008eb0e4ccc634c334ac1d9e04716be2ba527a9'
+  version '2.6.4'
+  source_url 'https://github.com/westes/flex/releases/download/v2.6.4/flex-2.6.4.tar.gz'
+  source_sha1 'fafece095a0d9890ebd618adb1f242d8908076e1'
 
   depends_on 'm4'
-  depends_on 'bison'
+  depends_on 'bison' => :build
 
   def self.build
-    system "./configure CFLAGS=\" -fPIC\""
+    system "./configure", "--with-pic", "--disable-static", "--enable-shared"
     system "make"
+    system "find . -name 'lib*.so.*' -print | xargs strip -S"
   end
 
   def self.install
-    system "make DESTDIR=#{CREW_DEST_DIR} install"
+    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install-strip"
+  end
+
+  def self.check
+    system "make", "check"
   end
 end
diff --git a/packages/gcc.rb b/packages/gcc.rb
index 370bd8b30b2e1cf591ebdee949e7a54151f03a5c..b1ad4bc2126073b8dc753b1295e608887bd1f7b6 100644
--- a/packages/gcc.rb
+++ b/packages/gcc.rb
@@ -1,19 +1,19 @@
 require 'package'
 
 class Gcc < Package
-  version '4.9.x'
+  version '4.9.x-cc1.3'
 
   binary_url ({
-    aarch64: 'https://github.com/jam7/chromebrew/releases/download/newtoolchains/gcc-4.9.x-chromeos-armv7l.tar.xz',
-    armv7l:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/gcc-4.9.x-chromeos-armv7l.tar.xz',
-    i686:    'https://github.com/jam7/chromebrew/releases/download/newtoolchains/gcc-4.9.x-chromeos-i686.tar.xz',
-    x86_64:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/gcc-4.9.x-chromeos-x86_64.tar.xz',
+    aarch64: 'https://github.com/jam7/chrome-cross/releases/download/v1.3/gcc-4.9.x-cc1.3-chromeos-armv7l.tar.xz',
+    armv7l:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/gcc-4.9.x-cc1.3-chromeos-armv7l.tar.xz',
+    i686:    'https://github.com/jam7/chrome-cross/releases/download/v1.3/gcc-4.9.x-cc1.3-chromeos-i686.tar.xz',
+    x86_64:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/gcc-4.9.x-cc1.3-chromeos-x86_64.tar.xz',
   })
   binary_sha1 ({
-    aarch64: '267d2d6647af07805a7a8f5dabbb88ec31ff8db0',
-    armv7l:  '267d2d6647af07805a7a8f5dabbb88ec31ff8db0',
-    i686:    '904b4666a326505bd7546231a9273a4aa47e30f0',
-    x86_64:  'c044e84073b2457079e611e2f27fd54b5e502e9a',
+    aarch64: 'b71b4f64ff0ab9d32ed15714889046a329b1019c',
+    armv7l:  'b71b4f64ff0ab9d32ed15714889046a329b1019c',
+    i686:    'a8f9d270d89ba8d9afb4478bf2df1f73ba2878a7',
+    x86_64:  'a7da1611b35280117acb0fa86d7d91e0ff6a5e01',
   })
 
   depends_on 'binutils'
diff --git a/packages/gettext.rb b/packages/gettext.rb
index 0d566afe718e2fcf1ec6435421ac15125572418e..42f94be1de798bcbb82c9bbe73c93cf00f9ca7c7 100644
--- a/packages/gettext.rb
+++ b/packages/gettext.rb
@@ -1,17 +1,25 @@
 require 'package'
 
 class Gettext < Package
-  version '0.18.3.1'
-  binary_url ({
-    aarch64: 'https://dl.dropboxusercontent.com/s/wmfctz7x8bj6cwe/gettext-0.18.3.1-chromeos-armv7l.tar.xz',
-    armv7l:  'https://dl.dropboxusercontent.com/s/wmfctz7x8bj6cwe/gettext-0.18.3.1-chromeos-armv7l.tar.xz',
-    i686:    'https://dl.dropboxusercontent.com/s/xmsfr7q9r99dhcs/gettext-0.18.3.1-chromeos-i686.tar.gz?token_hash=AAGJo0pqudCOkGU3NHOcBuFG2zLwWpapNXLX-zUJLcS3aA&dl=1',
-    x86_64:  'https://dl.dropboxusercontent.com/s/nidj0ehxwserhz6/gettext-0.18.3.1-chromeos-x86_64.tar.gz?token_hash=AAFn-kdXlB23HDVDCKTn9n_U-i9LFNCIB6HU0jSUiJTctA&dl=1',
-  })
-  binary_sha1 ({
-    aarch64: '5224004048dd80bb523cd0091ad577b21448790b',
-    armv7l:  '5224004048dd80bb523cd0091ad577b21448790b',
-    i686:    '1ecbff59d6134c7f8804bcf18fb2b1b7a9a6d4c0',
-    x86_64:  '22174347defa4f034a360078c248a61710c5f854',
-  })
+  version '0.19.8.1'
+  source_url 'ftp://ftp.gnu.org/gnu/gettext/gettext-0.19.8.1.tar.xz'
+  source_sha1 'e0fe90ede22f7f16bbde7bdea791a835f2773fc9'
+
+  depends_on 'diffutils' => :build
+  depends_on 'ncurses'
+  depends_on 'libxml2'
+
+  def self.build
+    system "./configure", "--enable-shared", "--disable-static", "--with-pic"
+    system "make"
+    system "find . -name '*.so.*' -print | xargs strip -S"
+  end
+
+  def self.install
+    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install-strip"
+  end
+
+  def self.check
+    system "make", "check"
+  end
 end
diff --git a/packages/glibc223.rb b/packages/glibc223.rb
index 99a77e3ad132f6e3d5c92735252e22cc216fdb0b..8011802f84666e2fce5e87743370930cb2105ffe 100644
--- a/packages/glibc223.rb
+++ b/packages/glibc223.rb
@@ -1,17 +1,17 @@
 require 'package'
 
 class Glibc223 < Package
-  version '2.23'
+  version '2.23-cc1.3'
   binary_url ({
-    aarch64: 'https://github.com/jam7/chromebrew/releases/download/newtoolchains/glibc-2.23-chromeos-armv7l.tar.xz',
-    armv7l:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/glibc-2.23-chromeos-armv7l.tar.xz',
-    i686:    'https://github.com/jam7/chromebrew/releases/download/newtoolchains/glibc-2.23-chromeos-i686.tar.xz',
-    x86_64:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/glibc-2.23-chromeos-x86_64.tar.xz',
+    aarch64: 'https://github.com/jam7/chrome-cross/releases/download/v1.3/glibc-2.23-cc1.3-chromeos-armv7l.tar.xz',
+    armv7l:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/glibc-2.23-cc1.3-chromeos-armv7l.tar.xz',
+    i686:    'https://github.com/jam7/chrome-cross/releases/download/v1.3/glibc-2.23-cc1.3-chromeos-i686.tar.xz',
+    x86_64:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/glibc-2.23-cc1.3-chromeos-x86_64.tar.xz',
   })
   binary_sha1 ({
-    aarch64: '4cac7d5d3d97f147c9ac9ad0c1deb1ac9b967450',
-    armv7l:  '4cac7d5d3d97f147c9ac9ad0c1deb1ac9b967450',
-    i686:    '434adb6dd1c3dcc30a25e3700f425a081888a28a',
-    x86_64:  '9b4ae8c6ccc081f7d9d169cd0b3eb74ae736e79f',
+    aarch64: '09cac401b8d6821c4ea2f349f0a348fcef9e07b2',
+    armv7l:  '09cac401b8d6821c4ea2f349f0a348fcef9e07b2',
+    i686:    '66096f5bf50ab19f17f8d9356589ea6dc809f8d9',
+    x86_64:  '1807e449919fff8d3473d97d43d184961a65a323',
   })
 end
diff --git a/packages/gmp.rb b/packages/gmp.rb
index b3b7250f076ada4ac9b344b8b97a10984a0b4123..b378502f3baf17d7390b461c2f67eafe07b438b1 100644
--- a/packages/gmp.rb
+++ b/packages/gmp.rb
@@ -1,17 +1,17 @@
 require 'package'
 
 class Gmp < Package
-  version "6.1.2"
+  version "6.1.2-cc1.3"
   binary_url ({
-    aarch64: 'https://github.com/jam7/chromebrew/releases/download/newtoolchains/gmp-6.1.2-chromeos-armv7l.tar.xz',
-    armv7l:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/gmp-6.1.2-chromeos-armv7l.tar.xz',
-    i686:    'https://github.com/jam7/chromebrew/releases/download/newtoolchains/gmp-6.1.2-chromeos-i686.tar.xz',
-    x86_64:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/gmp-6.1.2-chromeos-x86_64.tar.xz',
+    aarch64: 'https://github.com/jam7/chrome-cross/releases/download/v1.3/gmp-6.1.2-cc1.3-chromeos-armv7l.tar.xz',
+    armv7l:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/gmp-6.1.2-cc1.3-chromeos-armv7l.tar.xz',
+    i686:    'https://github.com/jam7/chrome-cross/releases/download/v1.3/gmp-6.1.2-cc1.3-chromeos-i686.tar.xz',
+    x86_64:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/gmp-6.1.2-cc1.3-chromeos-x86_64.tar.xz',
   })
   binary_sha1 ({
-    aarch64: 'ef330045d0eb7b33015e31cd1ac8428caacaf026',
-    armv7l:  'ef330045d0eb7b33015e31cd1ac8428caacaf026',
-    i686:    'a26eeac034966b50ca70d43b23768a078ca4dd14',
-    x86_64:  '0ada7fbc26b2b5567df516daaf61edc4129ae1b5',
+    aarch64: '16c62caf6da5971ddb4e4985d5905ce43a40f2f8',
+    armv7l:  '16c62caf6da5971ddb4e4985d5905ce43a40f2f8',
+    i686:    'eadba1eb5fcc25bdafd1f868045984d726a26d08',
+    x86_64:  '706ca2c87011f5ee12324f03ae286fb95a532cec',
   })
 end
diff --git a/packages/isl.rb b/packages/isl.rb
index 3a3f99741b417fff204373c74a7fd234264d109d..821c150d5233c2e4d2f67b032c49821e88d30198 100644
--- a/packages/isl.rb
+++ b/packages/isl.rb
@@ -1,17 +1,17 @@
 require 'package'
 
 class Isl < Package
-  version "0.14.1"
+  version "0.14.1-cc1.3"
   binary_url ({
-    aarch64: 'https://github.com/jam7/chromebrew/releases/download/newtoolchains/isl-0.14.1-chromeos-armv7l.tar.xz',
-    armv7l:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/isl-0.14.1-chromeos-armv7l.tar.xz',
-    i686:    'https://github.com/jam7/chromebrew/releases/download/newtoolchains/isl-0.14.1-chromeos-i686.tar.xz',
-    x86_64:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/isl-0.14.1-chromeos-x86_64.tar.xz',
+    aarch64: 'https://github.com/jam7/chrome-cross/releases/download/v1.3/isl-0.14.1-cc1.3-chromeos-armv7l.tar.xz',
+    armv7l:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/isl-0.14.1-cc1.3-chromeos-armv7l.tar.xz',
+    i686:    'https://github.com/jam7/chrome-cross/releases/download/v1.3/isl-0.14.1-cc1.3-chromeos-i686.tar.xz',
+    x86_64:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/isl-0.14.1-cc1.3-chromeos-x86_64.tar.xz',
   })
   binary_sha1 ({
-    aarch64: 'c151cbe2601eda6cd391da165ad940aa7fa666bc',
-    armv7l:  'c151cbe2601eda6cd391da165ad940aa7fa666bc',
-    i686:    'cc2d07411dbfcfd03afe0953bce8cef8d7bb8307',
-    x86_64:  '3fa612198955e3d6e8201c05ef486d1462c76462',
+    aarch64: '749bf7d0a09c1578ce2de20a21ce7f7d6a575756',
+    armv7l:  '749bf7d0a09c1578ce2de20a21ce7f7d6a575756',
+    i686:    '306c249734107ac29e7951a44a000cfcbb523a35',
+    x86_64:  '7e0dcb1c65a99be666c4369abb649ad27f88ade1',
   })
 end
diff --git a/packages/less.rb b/packages/less.rb
index 83089b04a89fd2b4aab00564b99e6e085dd5e806..f0a1e8a6c82af1833c271503a33ddc86589c030a 100644
--- a/packages/less.rb
+++ b/packages/less.rb
@@ -1,19 +1,23 @@
 require 'package'
 
 class Less < Package
-  version '481'
-  source_url 'ftp://ftp.gnu.org/gnu/less/less-481.tar.gz'
-  source_sha1 '58e7e62a760a9ca3636349de8e3357f7102aea1d'
+  version '487'
+  source_url 'http://www.greenwoodsoftware.com/less/less-487.tar.gz'
+  source_sha1 '8a5c4be2a51f11543793defec7ccb77c525f007e'
+
+  depends_on 'buildessential' => :build
+  depends_on 'ncurses'
 
-  depends_on 'buildessential'
-  depends_on 'ncurses' 
-  
   def self.build
     system "./configure"
     system "make"
   end
-  
+
   def self.install
-    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
-  end         
+    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install-strip"
+  end
+
+  def self.check
+    system "make", "check"
+  end
 end
diff --git a/packages/linuxheaders.rb b/packages/linuxheaders.rb
index d2f7c9957e1e8e65aa523824c42611c099e8b0e9..f5a0604f96e051f3454902029be61217a772ed5a 100644
--- a/packages/linuxheaders.rb
+++ b/packages/linuxheaders.rb
@@ -1,17 +1,17 @@
 require 'package'
 
 class Linuxheaders < Package
-  version '3.18'
+  version '3.18-cc1.3'
   binary_url ({
-    aarch64: 'https://github.com/jam7/chromebrew/releases/download/newtoolchains/linux-headers-3.18-chromeos-armv7l.tar.xz',
-    armv7l:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/linux-headers-3.18-chromeos-armv7l.tar.xz',
-    i686:    'https://github.com/jam7/chromebrew/releases/download/newtoolchains/linux-headers-3.18-chromeos-i686.tar.xz',
-    x86_64:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/linux-headers-3.18-chromeos-x86_64.tar.xz',
+    aarch64: 'https://github.com/jam7/chrome-cross/releases/download/v1.3/linux-headers-3.18-cc1.3-chromeos-armv7l.tar.xz',
+    armv7l:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/linux-headers-3.18-cc1.3-chromeos-armv7l.tar.xz',
+    i686:    'https://github.com/jam7/chrome-cross/releases/download/v1.3/linux-headers-3.18-cc1.3-chromeos-i686.tar.xz',
+    x86_64:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/linux-headers-3.18-cc1.3-chromeos-x86_64.tar.xz',
   })
   binary_sha1 ({
-    aarch64: 'fad98da3de461b0b08298c5a1ec07cca53eed008',
-    armv7l:  'fad98da3de461b0b08298c5a1ec07cca53eed008',
-    i686:    '4142a609534383c99123fb43016745746589922b',
-    x86_64:  '716f50b255d6bd3c4039a92cbd20d4e887e25bb7',
+    aarch64: '4f7c1df409b416735d8d2bfbbc62cb57f3ca5d80',
+    armv7l:  '4f7c1df409b416735d8d2bfbbc62cb57f3ca5d80',
+    i686:    '0c8190aa192db06772a6d125c1e22ef2ec11e996',
+    x86_64:  'aee9c675d1f51268c16273d3ba3bd73334783072',
   })
 end
diff --git a/packages/make.rb b/packages/make.rb
index cb65048c12f806502a813bc5050a5016c445ea38..378ace0bc4906c12f060a9f4f9572aa3ac3fa90d 100644
--- a/packages/make.rb
+++ b/packages/make.rb
@@ -5,6 +5,9 @@ class Make < Package
   source_url 'ftp://ftp.gnu.org/gnu/make/make-4.2.tar.bz2'
   source_sha1 'd78b84a219b4c16593544f541dff7eb765ce3d74'
 
+  depends_on 'gcc' => :build
+  depends_on 'linuxheaders' => :build
+
   def self.build
     system "./configure"
     system "./build.sh"
diff --git a/packages/mandb.rb b/packages/mandb.rb
index 7faa19f736d81d0a412fb274f2a0cad427f1c3d2..34878f7d756e4ac3b9471d357968af84bf1637b6 100644
--- a/packages/mandb.rb
+++ b/packages/mandb.rb
@@ -22,10 +22,10 @@ class Mandb < Package
   def self.install
     system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
     puts ""
-    puts "You will have to change the default PAGER env variable to be able to use mandb:"
+    puts "You will have to change the default PAGER environment variable to be able to use mandb:"
     puts "echo \"export PAGER=/usr/local/bin/less\" >> ~/.bashrc && . ~/.bashrc"
     puts ""
-    puts "You will also have to set the MANPATH env variable:"
-    puts "echo \"export MANPATH/usr/local/man:$MANPATH\" >> ~/.bashrc && ~/.bashrc"
+    puts "You will also have to set the MANPATH environment variable:"
+    puts "echo \"export MANPATH=/usr/local/man:$MANPATH\" >> ~/.bashrc && . ~/.bashrc"
   end
 end
diff --git a/packages/mpc.rb b/packages/mpc.rb
index c86f298aa4ef240ebc9823ae78af8ded8df6a074..1b6941784077be48fd17e946031e387d605ec33d 100644
--- a/packages/mpc.rb
+++ b/packages/mpc.rb
@@ -1,17 +1,17 @@
 require 'package'
 
 class Mpc < Package
-  version '1.0.3'
+  version '1.0.3-cc1.3'
   binary_url ({
-    aarch64: 'https://github.com/jam7/chromebrew/releases/download/newtoolchains/mpc-1.0.3-chromeos-armv7l.tar.xz',
-    armv7l:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/mpc-1.0.3-chromeos-armv7l.tar.xz',
-    i686:    'https://github.com/jam7/chromebrew/releases/download/newtoolchains/mpc-1.0.3-chromeos-i686.tar.xz',
-    x86_64:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/mpc-1.0.3-chromeos-x86_64.tar.xz',
+    aarch64: 'https://github.com/jam7/chrome-cross/releases/download/v1.3/mpc-1.0.3-cc1.3-chromeos-armv7l.tar.xz',
+    armv7l:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/mpc-1.0.3-cc1.3-chromeos-armv7l.tar.xz',
+    i686:    'https://github.com/jam7/chrome-cross/releases/download/v1.3/mpc-1.0.3-cc1.3-chromeos-i686.tar.xz',
+    x86_64:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/mpc-1.0.3-cc1.3-chromeos-x86_64.tar.xz',
   })
   binary_sha1 ({
-    aarch64: '2a05a536cc6fd4da7d948c4732722c5d430ee010',
-    armv7l:  '2a05a536cc6fd4da7d948c4732722c5d430ee010',
-    i686:    'f10689f81749d65d1741f801387e9970eea988d7',
-    x86_64:  '659123c6bf218d60837579e1fe50dd86f24d487f',
+    aarch64: 'd1f6e5d521f1807accca245cecf2ccc56c29c96d',
+    armv7l:  'd1f6e5d521f1807accca245cecf2ccc56c29c96d',
+    i686:    'd7fcd41e92b637220208e136207d1095237f3ac1',
+    x86_64:  'fcc7bc8f7a4f9956f801af84e4104e565dd8b285',
   })
 end
diff --git a/packages/mpfr.rb b/packages/mpfr.rb
index 157f055d276390d12ff63c5e7102aef05b372c5c..e82e8c5a7ee10f28beb0abc979306bfae8ab057b 100644
--- a/packages/mpfr.rb
+++ b/packages/mpfr.rb
@@ -1,17 +1,17 @@
 require 'package'
 
 class Mpfr < Package
-  version '3.1.5'
+  version '3.1.5-cc1.3'
   binary_url ({
-    aarch64: 'https://github.com/jam7/chromebrew/releases/download/newtoolchains/mpfr-3.1.5-chromeos-armv7l.tar.xz',
-    armv7l:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/mpfr-3.1.5-chromeos-armv7l.tar.xz',
-    i686:    'https://github.com/jam7/chromebrew/releases/download/newtoolchains/mpfr-3.1.5-chromeos-i686.tar.xz',
-    x86_64:  'https://github.com/jam7/chromebrew/releases/download/newtoolchains/mpfr-3.1.5-chromeos-x86_64.tar.xz',
+    aarch64: 'https://github.com/jam7/chrome-cross/releases/download/v1.3/mpfr-3.1.5-cc1.3-chromeos-armv7l.tar.xz',
+    armv7l:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/mpfr-3.1.5-cc1.3-chromeos-armv7l.tar.xz',
+    i686:    'https://github.com/jam7/chrome-cross/releases/download/v1.3/mpfr-3.1.5-cc1.3-chromeos-i686.tar.xz',
+    x86_64:  'https://github.com/jam7/chrome-cross/releases/download/v1.3/mpfr-3.1.5-cc1.3-chromeos-x86_64.tar.xz',
   })
   binary_sha1 ({
-    aarch64: '8ace66e438f6593affc460cc8a45f2a7df0ac1ca',
-    armv7l:  '8ace66e438f6593affc460cc8a45f2a7df0ac1ca',
-    i686:    '1a3e4833cbdf002e5fd62135b5113c37c2700362',
-    x86_64:  '0028523daf1b3935bad21d3706e39fb248a8f0f2',
+    aarch64: 'd201c3e9c7fa3d483e93cb967e9ae78b4578868b',
+    armv7l:  'd201c3e9c7fa3d483e93cb967e9ae78b4578868b',
+    i686:    '71569b4f88e852d0a6734b2be8e200f52248a7fe',
+    x86_64:  '7d434ebe762b004d9f822f5baa21b9c9f37452b0',
   })
 end
diff --git a/packages/neovim.rb b/packages/neovim.rb
index bd873938cde6a194d023ec8d6ee36cb9e86f165d..6d69a00b82a0f3d1222013ae4fed94cfb34b78a0 100644
--- a/packages/neovim.rb
+++ b/packages/neovim.rb
@@ -11,6 +11,7 @@ class Neovim < Package
   depends_on 'cmake'
   depends_on 'gcc'
   depends_on 'pkgconfig'
+  depends_on 'unzip'
 
   def self.build
     system "make"
diff --git a/packages/patch.rb b/packages/patch.rb
index e2484310d1c09222736c7c480b62cc96d43c634b..d1aa4afdb418336c6689ff171d09d931e3d23cc4 100644
--- a/packages/patch.rb
+++ b/packages/patch.rb
@@ -1,9 +1,9 @@
 require 'package'
 
 class Patch < Package
-  version '2.7'
-  source_url 'http://ftp.gnu.org/gnu/patch/patch-2.7.tar.gz'
-  source_sha1 '8886fe94a4cefaf42678ebeca25f4c012bd0f5dc'
+  version '2.7.5'
+  source_url 'https://ftp.gnu.org/gnu/patch/patch-2.7.5.tar.xz'
+  source_sha1 '8fd8f8f8ba640d871bce1bd33c7fd5e2ebe03a1e'
 
   def self.build
     system './configure --prefix=/usr/local'
@@ -11,6 +11,10 @@ class Patch < Package
   end
 
   def self.install
-    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
+    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install-strip"
+  end
+
+  def self.check
+    system "make", "check"
   end
 end
diff --git a/packages/php7.rb b/packages/php7.rb
index 40e63d2450c23ca8c84f0cfdf9929c9dce4bef26..13459abaf52dae7bf76e950e8e1aa6dea3a937b2 100644
--- a/packages/php7.rb
+++ b/packages/php7.rb
@@ -1,9 +1,9 @@
 require 'package'
 
 class Php7 < Package
-  version '7.1.4'
-  source_url 'http://php.net/distributions/php-7.1.4.tar.xz'   # software source tarball url
-  source_sha1 'e60f2621a0be0b538b94156b13d5313820ecd958'       # source tarball sha1 sum
+  version '7.1.5'
+  source_url 'http://php.net/distributions/php-7.1.5.tar.xz'   # software source tarball url
+  source_sha1 '8c1622929b838005c72fb4949be9e249ca927fb3'       # source tarball sha1 sum
 
   depends_on 'pkgconfig'
   depends_on 'zlibpkg'
diff --git a/packages/pkgconfig.rb b/packages/pkgconfig.rb
index 34c345a155e88c8a3ba7fa3ba41e6955e3b84d32..d192ff83f91a31536795856a2d11f4fbfaf2c958 100644
--- a/packages/pkgconfig.rb
+++ b/packages/pkgconfig.rb
@@ -1,24 +1,28 @@
 require 'package'
 
 class Pkgconfig < Package
-  version '0.29.1'
-  source_url 'http://pkgconfig.freedesktop.org/releases/pkg-config-0.29.1.tar.gz'
-  source_sha1 '271ce928f6d673cc16cbced2bfd14a5f2e5d3d37'
+  version '0.29.2'
+  source_url 'http://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz'
+  source_sha1 '76e501663b29cb7580245720edfb6106164fad2b'
 
   # It is not possible to write buildessential here since it causes dependency loop.
   #   depends_on 'buildessential'
   # Write dependency to gcc make linuxheaders instead.
   depends_on 'gcc'
-  depends_on 'make'
   depends_on 'linuxheaders'
+  depends_on 'make'
 
   def self.build
       # check lib64 on any architectures since it is not a problem to not exist lib64 directory.
-      system "./configure --with-internal-glib --with-pc-path=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/local/share/pkgconfig CFLAGS=\" -fPIC\""
+      system "./configure", "--with-internal-glib", "--with-pc-path=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/local/share/pkgconfig"
       system "make"
   end
 
   def self.install
-    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
+    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install-strip"
+  end
+
+  def self.check
+    system "make", "check"
   end
 end
diff --git a/packages/qemu.rb b/packages/qemu.rb
new file mode 100644
index 0000000000000000000000000000000000000000..44d9cb59eaaf2e210c04a105d3e5ff19157b8438
--- /dev/null
+++ b/packages/qemu.rb
@@ -0,0 +1,22 @@
+require 'package'
+
+class Qemu < Package
+  version '2.9.0'
+  source_url 'http://download.qemu-project.org/qemu-2.9.0.tar.xz'
+  source_sha1 '5cc63c6cababaaa7d0685e8b32bacf5022873ebc'
+
+  depends_on 'glib'
+  depends_on 'autoconf'
+  depends_on 'gettext'
+  depends_on 'automake'
+  depends_on 'libtool'
+
+  def self.build
+    system "./configure"
+    system "make"
+  end
+
+  def self.install
+    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
+  end
+end
diff --git a/packages/ruby.rb b/packages/ruby.rb
index 879b0cbf93b7e0c113908fec456459574a8a0696..634071013ddc6cc4f9ef79b29e32d10a0fec3253 100644
--- a/packages/ruby.rb
+++ b/packages/ruby.rb
@@ -1,20 +1,28 @@
 require 'package'
 
 class Ruby < Package
-  version '2.0.0p247-chromeos1'
-  binary_url ({
-    aarch64: 'https://dl.dropboxusercontent.com/s/02afb4qm4ugl0os/ruby-2.0.0p247-chromeos-armv7l.tar.xz',
-    armv7l:  'https://dl.dropboxusercontent.com/s/02afb4qm4ugl0os/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 ({
-    aarch64: 'f575e27e9b20cbb6f1c77cdd87270748e83cf6b2',
-    armv7l:  'f575e27e9b20cbb6f1c77cdd87270748e83cf6b2',
-    i686:    '49eeba5d542e4c3e6aa3686f215485e0946fb99a',
-    x86_64:  'f1de1ef5ed690c3b78f4e40208a4fb93e227c4ed',
-  })
+  version '2.4.1'
+  source_url 'https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.1.tar.xz'
+  source_sha1 'eb3e25346431214379e3b92c6f6b6e02f7b2503f'
 
   depends_on 'readline'
-  depends_on 'zlibpkg'
+  depends_on 'ncurses'
+  depends_on 'zlibpkg' => :build
+  depends_on 'openssl' => :build
+  # at run-time, system's gmp, openssl, readline and zlibpkg are possible to use
+
+  def self.build
+    system "CC='gcc' ./configure"
+    system "make"
+    system "find . -name '*.so' | xargs strip -S"
+  end
+
+  def self.install
+    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
+    system "strip #{CREW_DEST_DIR}/usr/local/bin/ruby"
+  end
+
+  def self.check
+    system "TMPDIR=/usr/local/tmp make check"
+  end
 end
diff --git a/packages/traceroute.rb b/packages/traceroute.rb
index 46e9e1be11eb1b95fd154cac99b7e6c3a3743dee..3ef4366f6091577409bcd6fea04d93dd351ef509 100644
--- a/packages/traceroute.rb
+++ b/packages/traceroute.rb
@@ -6,6 +6,8 @@ class Traceroute < Package
   source_sha1 'bc5c6c8022187511be5665b3818d919be5987dcc'
 
   def self.build
+    # add /usr/lib64 to vpath to check /usr/lib64/libm.so
+    system "sed", "-i", "Make.rules", "-e", "/vpath lib%.so/s:$: /usr/lib64:"
     system "make"
   end
 
diff --git a/packages/txt2man.rb b/packages/txt2man.rb
new file mode 100644
index 0000000000000000000000000000000000000000..9be323ef0e87be6bae74578ddc57e7a8165e1e2f
--- /dev/null
+++ b/packages/txt2man.rb
@@ -0,0 +1,14 @@
+require 'package'
+
+class Txt2man < Package
+  version '1.5.6'
+  source_url 'http://mvertes.free.fr/download/txt2man-1.5.6.tar.gz'
+  source_sha1 'ef1392785333ea88f7e01f4f4c519ecfbdd498bd'
+
+  depends_on 'gawk'
+  depends_on 'mandb'
+
+  def self.install
+    system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
+  end
+end