Commit b724fcf7 authored by Don Harper's avatar Don Harper

Merge remote-tracking branch 'upstream/master'

parents 6e2cb1ef 34bb4345
# Contributing
**Are you wondering how you can get started?** You can learn how from this *free* series
[How to Contribute to an Open Source Project on GitHub](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github).
## Prerequisites
1. A GitHub project in which you have access
2. A text editor or IDE (integrated development environment)
3. Basic knowledge of the command line in a terminal session
4. [`git`](https://git-scm.com/)
5. [`SSH key`](https://help.github.com/articles/connecting-to-github-with-ssh/)
## How to submit a Pull Request (aka PR)
1. Click the _**Fork**_ button in the top right to copy the repo to your own GitHub project.
2. Open a terminal and clone your forked project locally:
```bash
$ git clone git@github.com:your-project-name/chromebrew.git && cd chromebrew
```
3. Create a branch for your PR:
```bash
$ git checkout -b update-cool-package
```
4. Add, edit or delete the file(s) you would like to change and save.
5. Test your changes! See steps 7 through 11 in the `How to test a pending PR from another contributor` section below.
6. Stage your changes:
```bash
$ git add -A
```
7. Review your changes:
```bash
$ git diff --staged
```
8. Correct your changes and repeat steps 4 through 7, if necessary.
9. Commit your changes:
```bash
$ git commit -m "Add some awesome change to cool package"
```
10. Push your changes:
```bash
$ git push origin update-cool-package
```
11. Visit your project page in the browser: `https://github.com/your-project-name/chromebrew`
12. Click the _**New pull request**_ button next to the _**Branch:**_ selector drop-down.
13. Select your branch name from the _**compare:**_ selector drop-down on the right.
14. Scroll down and review your changes.
15. Click the _**Create pull request**_ button.
16. Add a short description of your change.
17. Click the _**Create pull request**_ button.
## How to test a pending PR from another contributor
1. Open the PR of interest.
2. Next to the green _**Open**_ badge, you should see something similar to:
```
contributor-name wants to merge 1 commit into skycocker:master from contributor-name:update-cool-package
```
3. On the far right, take note of _**contributor-name:update-cool-package**_. This is the PR contributor along with the branch they want to merge.
4. Open a terminal, change to your cloned chromebrew directory and execute:
```bash
$ git remote add contributor-name git@github.com:contributor-name/chromebrew.git
```
5. Fetch their branches:
```bash
$ git fetch contributor-name
```
6. Checkout their branch:
```bash
$ git checkout update-cool-package
```
7. If the requested change is a package:
```bash
$ cp packages/cool_package.rb /usr/local/lib/crew/packages/
```
8. Test the new or updated package:
```bash
$ crew upgrade cool_package
```
9. Examine the files to see if everything installed as expected:
```bash
$ crew files cool_package
```
10. Run some tests on executables, if applicable:
```bash
$ cool_package --version
$ cool_package --help
$ cool_package --some-other-option
```
11. To see if this package is a dependency for another package, execute:
```bash
$ grep "depends_on 'cool_package'" packages/*.rb
```
and, just in case:
```bash
$ grep 'depends_on "cool_package"' packages/*.rb
```
If the package is a dependency for another package, test commands of the other package, if possible, to see if they were affected in any way.
12. Visit the PR and add a comment suggesting any changes or mark it RTBC if everything looks good.
## Learn more
- Visit the [wiki](https://github.com/skycocker/chromebrew/wiki)
......@@ -20,23 +20,24 @@ DOC = <<DOCOPT
Chromebrew - Package manager for Chrome OS http://skycocker.github.io/chromebrew/
Usage:
crew build [-k|--keep] <name> ...
crew download <name> ...
crew build [-k|--keep] [-v|--verbose] <name> ...
crew download [-v|--verbose] <name> ...
crew files <name> ...
crew help [<command>]
crew install [-k|--keep] [-s|--build-from-source] <name> ...
crew remove <name> ...
crew install [-k|--keep] [-s|--build-from-source] [-v|--verbose] <name> ...
crew remove [-v|--verbose] <name> ...
crew search [-v|--verbose] [<name> ...]
crew update
crew upgrade [-k|--keep] [-s|--build-from-source] [<name> ...]
crew upgrade [-k|--keep] [-s|--build-from-source] [-v|--verbose] [<name> ...]
crew whatprovides <name> ...
-k --keep Keep the `CREW_BREW_DIR` (#{CREW_BREW_DIR}) directory.
-s --build-from-source Build from source even if pre-compiled binary exists.
-V --version Display the crew version.
-v --verbose Show extra information.
-h --help Show this screen.
version 0.4.3
version #{CREW_VERSION}
DOCOPT
# Set XZ_OPT environment variable for build command.
......@@ -52,7 +53,12 @@ require_relative 'lib/docopt'
begin
args = Docopt::docopt(DOC)
rescue Docopt::Exit => e
if ARGV[0] and ARGV[0] != '-h' and ARGV[0] != '--help' then
if ARGV[0] then
if ARGV[0] == '-V' or ARGV[0] == '--version' then
puts "#{CREW_VERSION}"
exit 0
end
if ARGV[0] != '-h' and ARGV[0] != '--help' then
puts "Could not understand \"crew #{ARGV.join(' ')}\".".lightred
cmds = ["build", "download", "files", "help", "install", "remove", "search", "update", "upgrade", "whatprovides"]
# Looking for similar commands
......@@ -64,6 +70,7 @@ rescue Docopt::Exit => e
end
end
end
end
puts e.message
exit 1
end
......@@ -139,27 +146,31 @@ def help (pkgName)
case pkgName
when "build"
puts "Build package(s)."
puts "Usage: crew build [-k|--keep] <package1> [<package2> ...]"
puts "Usage: crew build [-k|--keep] [-v|--verbose] <package1> [<package2> ...]"
puts "Build package(s) from source and place the archive and checksum in the current working directory."
puts "If `-k` or `--keep` is present, the `CREW_BREW_DIR` (#{CREW_BREW_DIR}) directory will remain."
puts "If `-v` or `--verbose` is present, extra information will be displayed."
when "download"
puts "Download package(s)."
puts "Usage: crew download <package1> [<package2> ...]"
puts "Usage: crew download [-v|--verbose] <package1> [<package2> ...]"
puts "Download package(s) to `CREW_BREW_DIR` (#{CREW_BREW_DIR}), but don't install."
puts "If `-v` or `--verbose` is present, extra information will be displayed."
when "files"
puts "Display installed files of package(s)."
puts "Usage: crew files <package1> [<package2> ...]"
puts "The package(s) must be currently installed."
when "install"
puts "Install package(s)."
puts "Usage: crew install [-k|--keep] [-s|--build-from-source] <package1> [<package2> ...]"
puts "Usage: crew install [-k|--keep] [-s|--build-from-source] [-v|--verbose] <package1> [<package2> ...]"
puts "The package(s) must have a valid name. Use `crew search <pattern>` to search for packages to install."
puts "If `-k` or `--keep` is present, the `CREW_BREW_DIR` (#{CREW_BREW_DIR}) directory will remain."
puts "If `-s` or `--build-from-source` is present, the package(s) will be compiled instead of installed via binary."
puts "If `-v` or `--verbose` is present, extra information will be displayed."
when "remove"
puts "Remove package(s)."
puts "Usage: crew remove <package1> [<package2> ...]"
puts "Usage: crew remove [-v|--verbose] <package1> [<package2> ...]"
puts "The package(s) must be currently installed."
puts "If `-v` or `--verbose` is present, extra information will be displayed."
when "search"
puts "Look for package(s)."
puts "Usage: crew search [-v|--verbose] [<pattern> ...]"
......@@ -179,9 +190,10 @@ def help (pkgName)
puts "This only updates crew itself. Use `crew upgrade` to update packages."
when "upgrade"
puts "Update package(s)."
puts "Usage: crew upgrade <package1> [<package2> ...]"
puts "Usage: crew upgrade [-v|--verbose] <package1> [<package2> ...]"
puts "If package(s) are omitted, all packages will be updated. Otherwise, specific package(s) will be updated."
puts "Use `crew update` to update crew itself."
puts "If `-v` or `--verbose` is present, extra information will be displayed."
when "whatprovides"
puts "Determine which package(s) contains file(s)."
puts "Usage: crew whatprovides <pattern> ..."
......@@ -306,6 +318,7 @@ def upgrade
puts "Updating packages..."
toBeUpdated.each do |package|
search package
puts "Updating " + @pkg.name + "..." if @opt_verbose
@pkg.in_upgrade = true
resolve_dependencies_and_install
@pkg.in_upgrade = false
......@@ -339,7 +352,11 @@ def download
sha256sum = @pkg.binary_sha256[@device[:architecture]]
end
Dir.chdir CREW_BREW_DIR do
system('curl', '-C', '-', '--insecure', '-L', '-#', url, '-o', filename)
if @opt_verbose then
system('curl', '-v', '-C', '-', '--insecure', '-L', '-#', url, '-o', filename)
else
system('curl', '-s', '-C', '-', '--insecure', '-L', '-#', url, '-o', filename)
end
abort 'Checksum mismatch. :/ Try again.'.lightred unless
Digest::SHA256.hexdigest( File.read("./#{filename}") ) == sha256sum
end
......@@ -354,10 +371,18 @@ def unpack (meta)
puts "Unpacking archive, this may take awhile..."
Dir.mkdir("#{extract_dir}") unless Dir.exist?("#{extract_dir}")
if meta[:filename][-4,4] == ".zip"
if @opt_verbose then
system "unzip", "-v", "-d", "#{extract_dir}", meta[:filename]
else
system "unzip", "-qq", "-d", "#{extract_dir}", meta[:filename]
end
else
if @opt_verbose then
system "tar", "xvf", meta[:filename], "-C", "#{extract_dir}"
else
system "tar", "xf", meta[:filename], "-C", "#{extract_dir}"
end
end
if meta[:source] == true
# Check the number of directories in the archive
entries = Dir["#{extract_dir}/*"]
......@@ -387,7 +412,12 @@ def build_and_preconfigure (target_dir)
@pkg.patch
@pkg.build
@pkg.in_build = false
system "rm -rf #{CREW_DEST_DIR}/*" #wipe crew destdir
# wipe crew destdir
if @opt_verbose then
system "rm -rvf #{CREW_DEST_DIR}/*"
else
system "rm -rf #{CREW_DEST_DIR}/*"
end
puts "Preconfiguring package..."
@pkg.install
end
......@@ -406,8 +436,12 @@ def compress_doc (dir)
if Dir.exist? dir
system "find #{dir} -type f ! -perm -200 | xargs -r chmod u+w"
if @opt_verbose then
system "compressdoc -v --gzip -9 #{dir}"
else
system "compressdoc --gzip -9 #{dir}"
end
end
end
def prepare_package (destdir)
......@@ -429,7 +463,11 @@ def prepare_package (destdir)
system "tail -n +2 dlistcut > dlist"
# remove temporary files
system "rm dlistcut ../dlist ../filelist"
if @opt_verbose then
system "rm -vf dlistcut ../dlist ../filelist"
else
system "rm -f dlistcut ../dlist ../filelist"
end
end
end
......@@ -454,8 +492,12 @@ def install_package (pkgdir)
# Strip binaries but not compressed archives
strip_find_files "find . -type f ! -iname '*\.bz2' ! -iname '*\.gz' ! -iname '*\.lha' ! -iname '*\.rar' ! -iname '*\.tar' ! -iname '*\.tgz' ! -iname '*\.xz' ! -iname '*\.zip' -perm /111 -print | sed -e '/lib.*\.a$/d' -e '/lib.*\.so/d'"
if @opt_verbose then
system "tar cvf - ./usr/* | (cd /; tar xp --keep-directory-symlink -f -)"
else
system "tar cf - ./usr/* | (cd /; tar xp --keep-directory-symlink -f -)"
end
end
end
def resolve_dependencies_and_install
......@@ -469,14 +511,19 @@ def resolve_dependencies_and_install
rescue InstallError => e
abort "#{@pkg.name} failed to install: #{e.to_s}".lightred
ensure
#cleanup
# cleanup
unless @opt_keep
Dir.chdir CREW_BREW_DIR do
if @opt_verbose then
system "rm -rvf *"
else
system "rm -rf *"
system "mkdir dest" #this is a little ugly, feel free to find a better way
end
system "mkdir dest" # this is a little ugly, feel free to find a better way
end
end
end
puts "#{@pkg.name.capitalize} installed!".lightgreen
end
def expand_dependencies
......@@ -595,7 +642,6 @@ def install
output = JSON.parse @device.to_json
file.write JSON.pretty_generate(output)
end
puts "#{@pkg.name.capitalize} installed!".lightgreen
end
def resolve_dependencies_and_build
......@@ -614,11 +660,16 @@ def resolve_dependencies_and_build
#cleanup
unless @opt_keep
Dir.chdir CREW_BREW_DIR do
if @opt_verbose then
system "rm -rvf *"
else
system "rm -rf *"
end
system "mkdir dest" #this is a little ugly, feel free to find a better way
end
end
end
puts "#{@pkg.name} is built!".lightgreen
end
def build_package (pwd)
......@@ -652,12 +703,15 @@ end
def archive_package (pwd)
pkg_name = "#{@pkg.name}-#{@pkg.version}-chromeos-#{@device[:architecture]}.tar.xz"
Dir.chdir CREW_DEST_DIR do
if @opt_verbose then
system "tar cJvf #{pwd}/#{pkg_name} *"
else
system "tar cJf #{pwd}/#{pkg_name} *"
end
end
Dir.chdir pwd do
system "sha256sum #{pkg_name} > #{pkg_name}.sha256"
end
puts "#{pkg_name} is built!".lightgreen
end
def remove (pkgName)
......@@ -675,6 +729,7 @@ def remove (pkgName)
#remove all files installed by the package
File.open("meta/#{pkgName}.filelist").each_line do |line|
begin
puts "Removing file " + line.chomp + "".lightred if @opt_verbose
File.unlink line.chomp
rescue => exception #swallow exception
end
......@@ -683,6 +738,7 @@ def remove (pkgName)
#remove all directories installed by the package
File.readlines("meta/#{pkgName}.directorylist").reverse.each do |line|
begin
puts "Removing directory " + line.chomp + "".lightred if @opt_verbose
Dir.rmdir line.chomp
rescue => exception #swallow exception
end
......@@ -696,6 +752,7 @@ def remove (pkgName)
end
#remove from installed packages
puts "Removing package " + pkgName + "".lightred if @opt_verbose
@device[:installed_packages].each do |elem|
@device[:installed_packages].delete elem if elem[:name] == pkgName
end
......
# Defines common constants used in different parts of crew
CREW_VERSION = '0.4.3'
ARCH = `uname -m`.strip
ARCH_LIB = if ARCH == 'x86_64' then 'lib64' else 'lib' end
......
......@@ -105,10 +105,18 @@ class Package
if @in_build == true
if args[0] == "make"
# modify ["make", "args", ...] into ["make", "-j#{CREW_NPROC}", "args", ...]
args.insert(1, "-j#{CREW_NPROC}")
if @opt_verbose then
args.insert(1, "-j#{CREW_NPROC}", "V=1")
else
args.insert(1, "-j#{CREW_NPROC}", "V=0")
end
elsif args.length == 1
# modify ["make args..."] into ["make -j#{CREW_NPROC} args..."]
args[0].gsub!(/^make /, "make -j#{CREW_NPROC} ")
if @opt_verbose then
args[0].gsub!(/^make /, "make -j#{CREW_NPROC} V=1 ")
else
args[0].gsub!(/^make /, "make -j#{CREW_NPROC} V=0 ")
end
end
end
Kernel.system(*args)
......
......@@ -3,7 +3,7 @@ require 'package'
class Ag < Package
description 'The Silver Searcher. Very fast search similar to ack or grep. (ag)'
homepage 'https://github.com/ggreer/the_silver_searcher'
version '2.1.0-1'
version '2.1.0-2'
source_url 'https://github.com/ggreer/the_silver_searcher/archive/2.1.0.tar.gz'
source_sha256 'cb416a0da7fe354a009c482ae709692ed567f8e7d2dad4d242e726dd7ca202f0'
......@@ -12,11 +12,12 @@ class Ag < Package
binary_sha256 ({
})
depends_on "autoconf"
depends_on "automake"
depends_on "pkgconfig"
depends_on "autoconf" => :build
depends_on "automake" => :build
depends_on "pkgconfig" => :build
depends_on "pcre"
depends_on "xzutils"
depends_on "zlibpkg"
def self.build
system "autoreconf", "-fiv"
......
require 'package'
class Alsa_lib < Package
description 'The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI functionality to the Linux operating system.'
homepage 'https://www.alsa-project.org/main/index.php/Main_Page'
version '1.1.4.1'
source_url 'ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.1.4.1.tar.bz2'
source_sha256 '91bb870c14d1c7c269213285eeed874fa3d28112077db061a3af8010d0885b76'
binary_url ({
})
binary_sha256 ({
})
def self.build
system "./configure --prefix=#{CREW_PREFIX} --libdir=#{CREW_LIB_PREFIX}"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
require 'package'
class Alsa_plugins < Package
description 'alsa-plugins contains plugins for various ALSA needs (e.g. Jack).'
homepage 'https://www.alsa-project.org/main/index.php/Main_Page'
version '1.1.4'
source_url 'ftp://ftp.alsa-project.org/pub/plugins/alsa-plugins-1.1.4.tar.bz2'
source_sha256 '530d1c3bdaeb058f2a03607a33b9e16ee5369bfd30a96bc09bd2c69b4ddd1a8a'
binary_url ({
})
binary_sha256 ({
})
depends_on 'alsa_lib'
def self.build
system "./configure --prefix=#{CREW_PREFIX} --libdir=#{CREW_LIB_PREFIX}"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
......@@ -3,9 +3,9 @@ require 'package'
class Apr < Package
description 'The mission of the Apache Portable Runtime (APR) project is to create and maintain software libraries that provide a predictable and consistent interface to underlying platform-specific implementations. APR is the base portability library.'
homepage 'http://apr.apache.org/'
version '1.6.2-1'
source_url 'http://apache.claz.org/apr/apr-1.6.2.tar.bz2'
source_sha256 '09109cea377bab0028bba19a92b5b0e89603df9eab05c0f7dbd4dd83d48dcebd'
version '1.6.3'
source_url 'https://apache.claz.org/apr/apr-1.6.3.tar.bz2'
source_sha256 '131f06d16d7aabd097fa992a33eec2b6af3962f93e6d570a9bd4d85e95993172'
binary_url ({
})
......@@ -13,7 +13,10 @@ class Apr < Package
})
def self.build
system "./configure --prefix=#{CREW_PREFIX} --libdir=#{CREW_LIB_PREFIX}"
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
'--disable-maintainer-mode'
system "make"
end
......
......@@ -3,9 +3,9 @@ require 'package'
class Apriconv < Package
description 'a portable implementation of the iconv() library'
homepage 'http://apr.apache.org/'
version '1.2.1-1'
source_url 'http://apache.claz.org/apr/apr-iconv-1.2.1.tar.bz2'
source_sha256 'c46c919bc2a36a705f91f4dea444b18a83236eef97a417528a988113b3a7e46e'
version '1.2.2'
source_url 'https://apache.claz.org/apr/apr-iconv-1.2.2.tar.bz2'
source_sha256 '7d454e0fe32f2385f671000e3b755839d16aabd7291e3947c973c90377c35313'
binary_url ({
})
......@@ -13,18 +13,21 @@ class Apriconv < Package
})
depends_on 'apr'
depends_on 'httpd'
depends_on 'libtool'
def self.build
system "./configure \
--prefix=#{CREW_PREFIX} \
--libdir=#{CREW_LIB_PREFIX} \
--with-apr=#{CREW_PREFIX}"
system "sed -i 's,/usr/local/lib,#{CREW_LIB_PREFIX},g' Makefile"
system "sed -i 's,/usr/local/lib,#{CREW_LIB_PREFIX},g' ccs/Makefile"
system "sed -i 's,/usr/local/lib,#{CREW_LIB_PREFIX},g' ces/Makefile"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
system "libtool --mode=finish #{CREW_DEST_PREFIX}/lib/iconv"
system "libtool --mode=finish #{CREW_DEST_LIB_PREFIX}/iconv"
end
end
......@@ -3,9 +3,9 @@ require 'package'
class Aprutil < Package
description 'APR-util provides a number of helpful abstractions on top of APR.'
homepage 'http://apr.apache.org/'
version '1.6.0-1'
source_url 'http://apache.claz.org/apr/apr-util-1.6.0.tar.bz2'
source_sha256 '8474c93fa74b56ac6ca87449abe3e155723d5f534727f3f33283f6631a48ca4c'
version '1.6.1'
source_url 'https://apache.claz.org/apr/apr-util-1.6.1.tar.bz2'
source_sha256 'd3e12f7b6ad12687572a3a39475545a072608f4ba03a6ce8a3778f607dd0035b'
binary_url ({
})
......@@ -16,10 +16,11 @@ class Aprutil < Package
depends_on 'expat'
def self.build
system "./configure \
--prefix=#{CREW_PREFIX} \
--libdir=#{CREW_LIB_PREFIX} \
--with-apr=#{CREW_PREFIX}"
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
"--with-apr=#{CREW_PREFIX}",
'--disable-maintainer-mode'
system "make"
end
......
......@@ -3,21 +3,13 @@ require 'package'
class Autoconf_archive < Package
description 'GNU Autoconf Archive is a collection of freely re-usable Autoconf macros.'
homepage 'https://www.gnu.org/software/autoconf-archive/'
version '2017-03-21'
source_url 'http://ftpmirror.gnu.org/autoconf-archive/autoconf-archive-2017.03.21.tar.xz'
source_sha256 '386ad455f12bdeb3a7d19280441a5ab77355142349200ff11040a8d9d455d765'
version '2017-09-28'
source_url 'https://ftpmirror.gnu.org/autoconf-archive/autoconf-archive-2017.09.28.tar.xz'
source_sha256 '5c9fb5845b38b28982a3ef12836f76b35f46799ef4a2e46b48e2bd3c6182fa01'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/autoconf_archive-2017-03-21-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/autoconf_archive-2017-03-21-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/autoconf_archive-2017-03-21-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/autoconf_archive-2017-03-21-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: 'b7bc2a58e881a0c4c9b397b97610285435908bfaeb12f95019f0de9f83c28a8b',
armv7l: 'b7bc2a58e881a0c4c9b397b97610285435908bfaeb12f95019f0de9f83c28a8b',
i686: 'dd45fdfbc8245782d42b5c62a2b191e26cec41acde7ecaac333eb5ffe2acba78',
x86_64: '029ec35f3739e103e18486bc985463809fd91b49e0f8ca236a33cd014f69cebf',
})
depends_on 'perl'
......@@ -25,7 +17,7 @@ class Autoconf_archive < Package
depends_on 'autoconf'
def self.build
system "./configure"
system "./configure --prefix=#{CREW_PREFIX}"
system "make"
end
......
require 'package'
class Avocado < Package
description 'Avocado is a next generation testing framework inspired by Autotest and modern development tools such as git.'
homepage 'http://avocado-framework.github.io/'
version '55.0'
source_url 'https://github.com/avocado-framework/avocado/archive/55.0.tar.gz'
source_sha256 '0ec798afaca0910d7b3853aa8a7782c4d95e54bbf5ff8473005bcd70829e5a9f'
binary_url ({
})
binary_sha256 ({
})
depends_on 'python27' unless File.exists? "#{CREW_PREFIX}/bin/pip"
depends_on 'xzutils'
def self.install
system "pip install avocado-framework --root #{CREW_DEST_PREFIX} --prefix #{CREW_DEST_PREFIX}"
system "pip install -r https://raw.githubusercontent.com/avocado-framework/avocado/master/requirements.txt --root #{CREW_DEST_PREFIX} --prefix #{CREW_DEST_PREFIX}"
system "mv #{CREW_DEST_PREFIX}/usr/libexec #{CREW_DEST_PREFIX}"
system "mv #{CREW_DEST_PREFIX}/usr/share #{CREW_DEST_PREFIX}"
system "mv #{CREW_DEST_PREFIX}#{CREW_DEST_PREFIX}/* #{CREW_DEST_PREFIX}"
system "rm -rf #{CREW_DEST_PREFIX}#{CREW_PREFIX}/tmp"
system "mkdir -p $HOME/.config/avocado"
system "ln -s #{CREW_PREFIX}/etc/avocado/avocado.conf $HOME/.config/avocado/avocado.conf"
system "mkdir -p #{CREW_DEST_DIR}/$HOME/.config/avocado"
system "ln -s #{CREW_PREFIX}/etc/avocado/avocado.conf #{CREW_DEST_DIR}/$HOME/.config/avocado/avocado.conf"
end
end
......@@ -3,33 +3,28 @@ require 'package'
class Bashdb < Package
description 'The Bash Debugger Project is a source-code debugger for bash that follows the gdb command syntax.'
homepage 'http://bashdb.sourceforge.net/'
version '4.4-0.92'
source_url 'https://downloads.sourceforge.net/project/bashdb/bashdb/4.2-0.92/bashdb-4.4-0.92.tar.gz'
source_sha256 'fb3d48a22b05d4e3c7a9b8205916d50fa33aac5908f0c9bcd15ff9d4dfa59c86'
version '4.3-0.91'
source_url 'https://downloads.sourceforge.net/project/bashdb/bashdb/4.3-0.91/bashdb-4.3-0.91.tar.bz2'
source_sha256 '60117745813f29070a034c590c9d70153cc47f47024ae54bfecdc8cd86d9e3ea'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/bashdb-4.4-0.92-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/bashdb-4.4-0.92-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/bashdb-4.4-0.92-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/bashdb-4.4-0.92-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: 'ea65d5d6ba8c8d670111228f0aeec56cd80a04640ae04f7c3ca621d7b9df8727',
armv7l: 'ea65d5d6ba8c8d670111228f0aeec56cd80a04640ae04f7c3ca621d7b9df8727',
i686: '916478bd373860c6a79f10429ad405f3e23bf5baafcf354ec0a1035721ef05f8',
x86_64: 'df8d90fd5cb250db3fc34d128aeca5acc86742b79658267c51cce46c0a54ed7c',
})
depends_on 'compressdoc' => :build
def self.build
system "./configure \
--bindir=/usr/local/bin \
--datadir=/usr/local/share \
--infodir=/usr/local/info \
--mandir=/usr/local/man"
--bindir=#{CREW_PREFIX}/bin \
--datadir=#{CREW_PREFIX}/share \
--infodir=#{CREW_PREFIX}/info \
--mandir=#{CREW_PREFIX}/man"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
system "compressdoc --gzip -9 #{CREW_DEST_PREFIX}/man/man1"
end
end
......@@ -3,27 +3,23 @@ require 'package'
class Byobu < Package
description 'Byobu is a GPLv3 open source text-based window manager and terminal multiplexer.'
homepage 'http://byobu.org/'
version '5.119'
source_url 'https://launchpadlibrarian.net/322131788/byobu_5.119.orig.tar.gz'
source_sha256 '4b092ca12d3a33e89d84cc90c4a41af2ba8697d48e26080a45d64d6b7800ca77'
version '5.123'
source_url 'https://launchpad.net/byobu/trunk/5.123/+download/byobu_5.123.orig.tar.gz'
source_sha256 '2e5a5425368d2f74c0b8649ce88fc653420c248f6c7945b4b718f382adc5a67d'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/byobu-5.119-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/byobu-5.119-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/byobu-5.119-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/byobu-5.119-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: '9abd65ef1e50517041840f45d0996ba934772064d5d369481eca19d051ab784c',
armv7l: '9abd65ef1e50517041840f45d0996ba934772064d5d369481eca19d051ab784c',
i686: 'eace545af06c52b9103fc1bdf6309c14113e8c483c50a8ee9acd2bf43ba24939',
x86_64: 'fe135c3fe2fd13624759a474b011bfbb1eddfb0c1325d656e7b2b12e1c40d903',
})
depends_on 'gawk'
depends_on 'tmux' unless File.exists? "#{CREW_PREFIX}/bin/screen"
def self.build
system './configure'
system "sed -i '249d' Makefile && sed -i '262d' Makefile"
system "sed -i '242iprefix = #{CREW_PREFIX}' Makefile"
system "sed -i '243iexec_prefix = \${prefix}' Makefile"
system 'make'
end
......
......@@ -3,30 +3,24 @@ require 'package'
class Cairo < Package
description 'Cairo is a 2D graphics library with support for multiple output devices.'
homepage 'https://www.cairographics.org'
version '1.14.10-1'
version '1.14.10-2'
source_url 'https://www.cairographics.org/releases/cairo-1.14.10.tar.xz'
source_sha256 '7e87878658f2c9951a14fc64114d4958c0e65ac47530b8ac3078b2ce41b66a09'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/cairo-1.14.10-1-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/cairo-1.14.10-1-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/cairo-1.14.10-1-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/cairo-1.14.10-1-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: '32e0aba6364a57b39d81fa58f0bad04a5ffca7ccd13f9f26c1a565447cafdc0a',
armv7l: '32e0aba6364a57b39d81fa58f0bad04a5ffca7ccd13f9f26c1a565447cafdc0a',
i686: '8b0e769f7402a4a0165c0a0f25348b20ec9daebc6a3e3cb85dbb8978b6e9aee4',
x86_64: 'c0563bef3431022a8058baf99ec9f8a81f5e9246cad2466e37ca02c13900bd5e',
})
depends_on 'libpng'
depends_on 'pixman'
depends_on 'freetype' # pango requires cairo with freetype
depends_on 'fontconfig' # pango requires cairo with fontconfig
def self.build
system "./configure --disable-xlib"
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
'--disable-xlib'
system "make"
end
......
require 'package'
class Cgroupfs_mount < Package
description 'Simple scripts to properly mount the cgroupfs hierarchy.'
homepage 'https://github.com/tianon/cgroupfs-mount'
version '1.4'
source_url 'https://github.com/tianon/cgroupfs-mount/archive/1.4.tar.gz'
source_sha256 'd6c8aff7af59c7d0082ee3018c97f73b0421e81a49bb28ad9f66a36da5cd6ec7'
binary_url ({
})
binary_sha256 ({
})
depends_on 'compressdoc' => :build
def self.install
system "install -Dm755 cgroupfs-mount #{CREW_DEST_PREFIX}/bin/cgroupfs-mount"
system "install -Dm755 cgroupfs-umount #{CREW_DEST_PREFIX}/bin/cgroupfs-umount"
system "install -Dm644 cgroupfs-mount.8 #{CREW_DEST_PREFIX}/share/man/man8/cgroupfs-mount.8"
system "compressdoc --gzip -9 #{CREW_DEST_PREFIX}/share/man/man8"
end
end
......@@ -3,9 +3,9 @@ require 'package'
class Chromebrew_scripts < Package
description 'Useful bash utility scripts for Chrome/Chromium OS systems.'
homepage 'https://github.com/uberhacker/chromebrew-scripts'
version '1.0.0'
source_url 'https://github.com/uberhacker/chromebrew-scripts/archive/1.0.0.tar.gz'
source_sha256 '97afac04020e9d82e7026113f8040ad609fb4887da202ded129bd7f65b996341'
version '1.1.0'
source_url 'https://github.com/uberhacker/chromebrew-scripts/archive/1.1.0.tar.gz'
source_sha256 'acf8f89ef3b8a04fc33bb5a94188687d0fdd2dd7b05102ad442a91019cab20fb'
binary_url ({
})
......@@ -13,9 +13,9 @@ class Chromebrew_scripts < Package
})
def self.install
system "install -Dm755 chromebrew #{CREW_DEST_PREFIX}/bin/chromebrew"
system "install -Dm755 powerwash #{CREW_DEST_PREFIX}/bin/powerwash"
system "install -Dm755 rootfs #{CREW_DEST_PREFIX}/bin/rootfs"
system "install -Dm755 rw #{CREW_DEST_PREFIX}/bin/rw"
system "install -Dm755 uninstall #{CREW_DEST_PREFIX}/bin/uninstall"
end
end
require 'package'
class Chruby < Package
description 'Changes the current Ruby'
homepage 'https://github.com/postmodern/chruby'
version '0.3.9'
source_url 'https://github.com/postmodern/chruby/archive/v0.3.9.tar.gz'
source_sha256 '7220a96e355b8a613929881c091ca85ec809153988d7d691299e0a16806b42fd'
binary_url ({
})
binary_sha256 ({
})
def self.build
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.postinstall
puts
puts "To finish the installation, execute the following:".lightblue
puts "echo 'if [ -f #{CREW_PREFIX}/share/chruby/chruby.sh ]; then' >> ~/.bashrc".lightblue
puts "echo ' source #{CREW_PREFIX}/share/chruby/chruby.sh' >> ~/.bashrc".lightblue
puts "echo 'fi' >> ~/.bashrc".lightblue
puts "source ~/.bashrc".lightblue
puts
end
end
require 'package'
class Cmus < Package
description 'cmus is a small, fast and powerful console music player for Unix-like operating systems.'
homepage 'https://cmus.github.io/'
version '2.7.1'
source_url 'https://github.com/cmus/cmus/archive/v2.7.1.tar.gz'
source_sha256 '8179a7a843d257ddb585f4c65599844bc0e516fe85e97f6f87a7ceade4eb5165'
depends_on 'ffmpeg'
def self.build
system "sed -i 's,/usr/include,#{CREW_PREFIX}/include,g' configure"
system "./configure prefix=#{CREW_PREFIX} libdir=#{CREW_LIB_PREFIX}"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
......@@ -3,27 +3,22 @@ require 'package'
class Freetype < Package
description 'FreeType is a freely available software library to render fonts.'
homepage 'https://www.freetype.org/'
version '2.8-1'
source_url 'http://download.savannah.gnu.org/releases/freetype/freetype-2.8.tar.bz2'
source_sha256 'a3c603ed84c3c2495f9c9331fe6bba3bb0ee65e06ec331e0a0fb52158291b40b'
version '2.8.1'
source_url 'http://download.savannah.gnu.org/releases/freetype/freetype-2.8.1.tar.bz2'
source_sha256 'e5435f02e02d2b87bb8e4efdcaa14b1f78c9cf3ab1ed80f94b6382fb6acc7d78'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/freetype-2.8-1-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/freetype-2.8-1-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/freetype-2.8-1-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/freetype-2.8-1-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: '58621598c0709365f4b3ca410f7a50970923dc2321854329849d7a040943ba90',
armv7l: '58621598c0709365f4b3ca410f7a50970923dc2321854329849d7a040943ba90',
i686: '05ad35d74ec47427e358928f9aff083c711f4af39b8f84aced44b15d91048397',
x86_64: 'ff9281a9a5bac7c32ddb8a27620ebab461380994f17517cc62c11b3dbee89773',
})
depends_on 'expat'
def self.build
system "./configure CFLAGS=\" -fPIC\""
system "./configure \
CFLAGS=\" -fPIC\" \
--prefix=#{CREW_PREFIX} \
--libdir=#{CREW_LIB_PREFIX}"
system "make"
end
......
require 'package'
class Gb < Package
description 'A project based build tool for the Go programming language.'
homepage 'https://getgb.io/'
version '0.4.4'
source_url 'https://github.com/constabulary/gb/archive/v0.4.4.tar.gz'
source_sha256 'c7993ae1994ad85cbe35b833d36a137772599fe7ed720edec2d76ebf3fc4313b'
binary_url ({
})
binary_sha256 ({
})
depends_on 'go'
def self.install
system "SAVEGOPATH=$GOPATH && \
export GOPATH=#{CREW_DEST_PREFIX}/share/gb && \
go get -v github.com/constabulary/gb/... && \
export GOPATH=$SAVEGOPATH"
system "mkdir -p #{CREW_DEST_PREFIX}/bin"
FileUtils.cd("#{CREW_DEST_PREFIX}/bin") do
system "echo '#!/bin/bash' > gb"
system "echo 'if [ -z \"\$GOPATH\" ]; then' >> gb"
system "echo ' echo \"GOPATH environment variable not set.\"' >> gb"
system "echo ' exit 1' >> gb"
system "echo 'fi' >> gb"
system "echo 'cd #{CREW_PREFIX}/share/gb' >> gb"
system "echo 'bin/gb \"\$@\"' >> gb"
system "echo 'cd -' >> gb"
system "chmod +x gb"
system "echo '#!/bin/bash' > gb-vendor"
system "echo 'if [ -z \"\$GOPATH\" ]; then' >> gb-vendor"
system "echo ' echo \"GOPATH environment variable not set.\"' >> gb-vendor"
system "echo ' exit 1' >> gb-vendor"
system "echo 'fi' >> gb-vendor"
system "echo 'cd #{CREW_PREFIX}/share/gb' >> gb-vendor"
system "echo 'bin/gb-vendor \"\$@\"' >> gb-vendor"
system "echo 'cd -' >> gb-vendor"
system "chmod +x gb-vendor"
end
end
end
require 'package'
class Google_cloud_sdk < Package
description 'Command-line interface for Google Cloud Platform products and services'
homepage 'https://cloud.google.com/sdk/'
version '179.0.0'
case ARCH
when 'i686'
source_url 'https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-179.0.0-linux-x86.tar.gz'
source_sha256 '9aa61b596fc7a247643bf42f5d2ce153d46da79b136f0723055ad1a2864aba46'
when 'x86_64'
source_url 'https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-179.0.0-linux-x86_64.tar.gz'
source_sha256 '7852ec02a38453ed11707646123994e5714a8ffd7cf3b401f4c963aadba8ed14'
else
puts 'Unable to install google_cloud_sdk. Supported architectures include i686 and x86_64 only.'.lightred
end
binary_url ({
})
binary_sha256 ({
})
depends_on 'python27' unless File.exists? "#{CREW_PREFIX}/bin/python"
def self.install
system "mkdir -p #{CREW_DEST_PREFIX}/share/google_cloud_sdk"
system "cp -r . #{CREW_DEST_PREFIX}/share/google_cloud_sdk"
FileUtils.cd("#{CREW_DEST_PREFIX}/share/google_cloud_sdk") do
system "./install.sh \
--usage-reporting false \
--rc-path $HOME/.bashrc \
--quiet"
end
system "mkdir -p #{CREW_DEST_PREFIX}/bin"
FileUtils.cd("#{CREW_DEST_PREFIX}/share/google_cloud_sdk/bin") do
system "find . -exec ln -s #{CREW_PREFIX}/share/google_cloud_sdk/bin/{} #{CREW_DEST_PREFIX}/bin \\;"
end
system "sed -i 's,#{CREW_DEST_DIR},,g' $HOME/.bashrc"
end
def self.postinstall
puts
puts "To finish the installation, execute the following:".lightblue
puts "exec -l \$SHELL".lightblue
puts "gcloud init".lightblue
puts
end
end
......@@ -3,21 +3,13 @@ require 'package'
class Httpd < Package
description 'The Apache HTTP Server Project is an effort to develop and maintain an open-source HTTP server for modern operating systems including UNIX and Windows.'
homepage 'http://httpd.apache.org/'
version '2.4.27'
source_url 'http://www-us.apache.org/dist/httpd/httpd-2.4.27.tar.gz'
source_sha256 '346dd3d016ae5d7101016e68805150bdce9040a8d246c289aa70e68a7cd86b66'
version '2.4.29'
source_url 'https://www-us.apache.org/dist/httpd/httpd-2.4.29.tar.gz'
source_sha256 '948e4a11278a5954698b880b30f401b1e9ab743713ee2c7280a54dd4ddd87085'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/httpd-2.4.27-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/httpd-2.4.27-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/httpd-2.4.27-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/httpd-2.4.27-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: 'a1a143e339089ed712e7c5c85eebf7af2d21001e51931a6ce9d4508f27598bb9',
armv7l: 'a1a143e339089ed712e7c5c85eebf7af2d21001e51931a6ce9d4508f27598bb9',
i686: '3d462f9c3704fb7b58b5c3e57a0c8307669e26b85103612a132674fc35c3b9c0',
x86_64: '50a7f5187edb55a4d7ec9f47ad8d6972b3d28bb659bbb2bb96e2804ffe9733ef',
})
depends_on 'apr'
......@@ -27,11 +19,39 @@ class Httpd < Package
depends_on 'expat'
def self.build
system './configure'
system './configure',
"--prefix=#{CREW_PREFIX}/share/httpd",
"--libdir=#{CREW_LIB_PREFIX}",
"--bindir=#{CREW_PREFIX}/bin",
"--sbindir=#{CREW_PREFIX}/bin",
'--disable-maintainer-mode',
'--disable-debugger-mode'
system 'make'
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
def self.postinstall
puts
puts "All things HTTPD are in #{CREW_PREFIX}/share/httpd.".lightblue
puts
puts "Pages are stored in #{CREW_PREFIX}/share/httpd/htdocs.".lightblue
puts
puts "To start/stop httpd, execute the following:".lightblue
puts "sudo apachectl start - starts httpd".lightblue
puts "sudo apachectl stop - stops httpd".lightblue
puts
puts "To start httpd on login, execute the following:".lightblue
puts "echo 'if [ -f #{CREW_PREFIX}/bin/apachectl ]; then' >> ~/.bashrc".lightblue
puts "echo ' sudo #{CREW_PREFIX}/bin/apachectl start' >> ~/.bashrc".lightblue
puts "echo 'fi' >> ~/.bashrc".lightblue
puts "source ~/.bashrc".lightblue
puts
puts "To completely remove httpd, perform the following:".lightblue
puts "crew remove httpd".lightblue
puts "sudo rm -rf #{CREW_PREFIX}/share/httpd".lightblue
puts
end
end
......@@ -3,21 +3,13 @@ require 'package'
class Icu4c < Package
description 'ICU is a mature, widely used set of C/C++ and Java libraries providing Unicode and Globalization support for software applications.'
homepage 'http://site.icu-project.org/'
version '58.2'
source_url 'http://download.icu-project.org/files/icu4c/58.2/icu4c-58_2-src.tgz'
source_sha256 '2b0a4410153a9b20de0e20c7d8b66049a72aef244b53683d0d7521371683da0c'
version '60.1'
source_url 'http://download.icu-project.org/files/icu4c/60.1/icu4c-60_1-src.tgz'
source_sha256 'f8f5a6c8fbf32c015a467972bdb1477dc5f5d5dfea908b6ed218715eeb5ee225'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/icu4c-58.2-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/icu4c-58.2-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/icu4c-58.2-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/icu4c-58.2-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: 'cb69b07ae6fddc0cd3b792c1323356b34b130da23a73cee1fee49cd5bd24ca7d',
armv7l: 'cb69b07ae6fddc0cd3b792c1323356b34b130da23a73cee1fee49cd5bd24ca7d',
i686: '8832fa1078db6b813c88b38d525301c8aa53c78924d229e6294ed42b29b0f047',
x86_64: '3552b06091444f5af6985a29d273f9db692a90c4eba9bc5478396f4b05eec6a3',
})
def self.build
......@@ -28,7 +20,11 @@ class Icu4c < Package
# discussed in https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653457
system "sed -e '/LDFLAGSICUDT=/cLDFLAGSICUDT=' -i config/mh-linux"
end
system "./configure", "--without-samples", "--without-tests"
system "./configure",
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
"--without-samples",
"--without-tests"
system "make"
end
end
......
......@@ -3,9 +3,9 @@ require 'package'
class Imagemagick < Package
description 'Use ImageMagick to create, edit, compose, or convert bitmap images.'
homepage 'http://www.imagemagick.org/script/index.php'
version '7.0.7-9'
source_url 'https://www.imagemagick.org/download/releases/ImageMagick-7.0.7-9.tar.xz'
source_sha256 'dc0c7418e20d9f113b3c3ae6903ed89d00a95465bd3f5e15832f3b06593a085c'
version '7.0.7-11'
source_url 'https://www.imagemagick.org/download/releases/ImageMagick-7.0.7-11.tar.xz'
source_sha256 '7993942d64c138f6c3e9d4bce6d8c13f747128bafe5c2295dcb45d91d1ff21e3'
binary_url ({
})
......
require 'package'
class Irssi < Package
description 'Modular text mode IRC client with Perl scripting'
homepage 'https://irssi.org/'
version '1.0.5'
source_url 'https://github.com/irssi/irssi/releases/download/1.0.5/irssi-1.0.5.tar.xz'
source_sha256 'c2556427e12eb06cabfed40839ac6f57eb8b1aa6365fab6dfcd331b7a04bb914'
binary_url ({
})
binary_sha256 ({
})
depends_on 'ncurses'
depends_on 'openssl'
depends_on 'perl'
def self.build
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
"--sysconfdir=#{CREW_PREFIX}/etc"
system 'make'
end
def self.install
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
end
end
require 'package'
class Jfrog < Package
description 'JFrog CLI is a compact and smart client that provides a simple interface that automates access to Artifactory, Bintray and Mission Control through their respective REST APIs.'
homepage 'https://github.com/JFrogDev/jfrog-cli-go'
version '1.12.0'
source_url 'https://github.com/JFrogDev/jfrog-cli-go/archive/1.12.0.tar.gz'
source_sha256 '8f961f6a6bb79608a8a50ac17f9298633cfd115265ac61f040cda84874336abb'
depends_on 'go' => :build
def self.install
system "SAVEGOPATH=$GOPATH && \
export GOPATH=#{CREW_DEST_PREFIX}/share/jfrog && \
go get -v github.com/jfrogdev/jfrog-cli-go/jfrog-cli/jfrog && \
export GOPATH=$SAVEGOPATH"
system "mkdir -p #{CREW_DEST_PREFIX}/bin"
FileUtils.cd("#{CREW_DEST_PREFIX}/bin") do
system "ln -s #{CREW_PREFIX}/share/jfrog/bin/jfrog jfrog"
end
system "rm -rf #{CREW_DEST_PREFIX}/share/jfrog/pkg"
system "rm -rf #{CREW_DEST_PREFIX}/share/jfrog/src"
end
end
require 'package'
class Kotlin < Package
description 'Statically typed programming language for modern multiplatform applications'
homepage 'https://kotlinlang.org/'
version '1.1.61'
source_url 'https://github.com/JetBrains/kotlin/releases/download/v1.1.61/kotlin-compiler-1.1.61.zip'
source_sha256 '46103d3f65c4016cb62ff8b77ee3e072ff930e69edf69444d723bb22b12a0d83'
binary_url ({
})
binary_sha256 ({
})
depends_on 'jdk8'
depends_on 'unzip' => :build
def self.install
system "mkdir -p #{CREW_DEST_PREFIX}/bin"
system "mkdir -p #{CREW_DEST_PREFIX}/share/kotlin"
system "rm -f bin/*.bat"
system "cp -r . #{CREW_DEST_PREFIX}/share/kotlin"
FileUtils.cd("#{CREW_DEST_PREFIX}/share/kotlin/bin") do
system "find . -exec ln -s #{CREW_PREFIX}/share/kotlin/bin/{} #{CREW_DEST_PREFIX}/bin \\;"
end
end
end
......@@ -3,25 +3,17 @@ require 'package'
class Libogg < Package
description 'Ogg is a multimedia container format, and the native file and stream format for the Xiph.org multimedia codecs.'
homepage 'https://xiph.org/ogg/'
version '1.3.1'
source_url 'http://downloads.xiph.org/releases/ogg/libogg-1.3.1.tar.xz'
source_sha256 '3a5bad78d81afb78908326d11761c0fb1a0662ee7150b6ad587cc586838cdcfa'
version '1.3.3'
source_url 'https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.3.tar.xz'
source_sha256 '4f3fc6178a533d392064f14776b23c397ed4b9f48f5de297aba73b643f955c08'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libogg-1.3.1-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libogg-1.3.1-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libogg-1.3.1-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libogg-1.3.1-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: '34edf43684dc3fe1df6230bf109ff47173f4e303287b7f0c9d7364e44bf049d4',
armv7l: '34edf43684dc3fe1df6230bf109ff47173f4e303287b7f0c9d7364e44bf049d4',
i686: 'b9b1ee953642cf9c3bbd364484c74f87c987814e9f222e50df80e786328ef808',
x86_64: 'bcb765c7e87300dff0769fb12eab2b1b3fc2f8f788b91adf22ca3c089bbe14ae',
})
def self.build
system "./configure"
system "./configure --prefix=#{CREW_PREFIX} --libdir=#{CREW_LIB_PREFIX}"
system "make"
end
......
require 'package'
class Libplist < Package
description 'A library to handle Apple Property List format'
homepage 'http://www.libimobiledevice.org/'
version '2.0.0'
source_url 'http://www.libimobiledevice.org/downloads/libplist-2.0.0.tar.bz2'
source_sha256 '3a7e9694c2d9a85174ba1fa92417cfabaea7f6d19631e544948dc7e17e82f602'
binary_url ({
})
binary_sha256 ({
})
depends_on 'glib'
def self.build
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
'--disable-dependency-tracking'
system 'make'
end
def self.install
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
end
def self.check
system 'make', 'check'
end
end
......@@ -3,15 +3,17 @@ require 'package'
class Libpng < Package
description 'libpng is the official PNG reference library.'
homepage 'http://libpng.org/pub/png/libpng.html'
version '1.6.33'
source_url 'http://prdownloads.sourceforge.net/libpng/libpng-1.6.33.tar.gz'
source_sha256 '6a6bacae7510dd53321af0604182b6c731a09457e3ddb8d9668bbce614a2751f'
version '1.6.34'
source_url 'https://sourceforge.net/projects/libpng/files/libpng16/1.6.34/libpng-1.6.34.tar.xz'
source_sha256 '2f1e960d92ce3b3abd03d06dfec9637dfbd22febf107a536b44f7a47c60659f6'
binary_url ({
})
binary_sha256 ({
})
depends_on 'zlibpkg'
def self.build
system './configure',
"--prefix=#{CREW_PREFIX}",
......
......@@ -3,9 +3,9 @@ require 'package'
class Libslz < Package
description 'SLZ is a fast and memory-less stream compressor which produces an output that can be decompressed with zlib or gzip.'
homepage 'http://www.libslz.org/'
version '1.1.0-1'
source_url 'http://git.1wt.eu/web?p=libslz.git;a=snapshot;h=afa04ae1f976957cf36287cc5370998d0559bc63;sf=tbz2'
source_sha256 'cf6b2c00066890d3c7f40ef00e6620784b9dc4662e9a3b35f2059997037be728'
version '1.1.0-2'
source_url 'http://git.1wt.eu/web?p=libslz.git;a=snapshot;h=f65544ca6a0d628b1db2d76069cc3be493543d38;sf=tbz2'
source_sha256 '985cb527a4d1c7a93e9eb19d79f97513eb57cfe6e112b727976855c8144ffccc'
binary_url ({
})
......@@ -13,6 +13,7 @@ class Libslz < Package
})
def self.build
system "sed -i 's,LIBDIR := \$(PREFIX)/lib,LIBDIR := #{CREW_LIB_PREFIX},' Makefile"
system "make PREFIX=#{CREW_PREFIX}"
end
......
......@@ -3,25 +3,16 @@ require 'package'
class Libtasn1 < Package
description 'Libtasn1 is the ASN.1 library used by GnuTLS, GNU Shishi and some other packages.'
homepage 'https://www.gnu.org/software/libtasn1/'
version '4.10-2'
source_url 'http://ftpmirror.gnu.org/libtasn1/libtasn1-4.10.tar.gz'
source_sha256 '681a4d9a0d259f2125713f2e5766c5809f151b3a1392fd91390f780b4b8f5a02'
version '4.12'
source_url 'https://ftpmirror.gnu.org/libtasn1/libtasn1-4.12.tar.gz'
source_sha256 '6753da2e621257f33f5b051cc114d417e5206a0818fe0b1ecfd6153f70934753'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libtasn1-4.10-2-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libtasn1-4.10-2-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libtasn1-4.10-2-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libtasn1-4.10-2-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: '2d0af019e1690fea1f7b277a008783713f4d3535f54bc04fb6cd785606006f66',
armv7l: '2d0af019e1690fea1f7b277a008783713f4d3535f54bc04fb6cd785606006f66',
i686: '3fb18df6adf7689a405a45b009a9f496250fa462ce27db5ab778edd725149416',
x86_64: '99e35599977b8cff5e69b6733b09c40f7a3cbf260699c3e427987ad8e841d6a2',
})
# bison, diff, cmp are required at compile-time
depends_on 'buildessential' => :build
depends_on 'bison' => :build
depends_on 'diffutils' => :build
......
require 'package'
class Libusbmuxd < Package
description 'USB Multiplex Daemon'
homepage 'http://www.libimobiledevice.org/'
version '1.0.9'
source_url 'http://www.libimobiledevice.org/downloads/libusbmuxd-1.0.9.tar.bz2'
source_sha256 'i2e3f708a3df30ad7832d2d2389eeb29f68f4e4488a42a20149cc99f4f9223dfc'
binary_url ({
})
binary_sha256 ({
})
depends_on 'glib'
depends_on 'libplist'
def self.build
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
'--disable-dependency-tracking'
system 'make'
end
def self.install
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
end
def self.check
system 'make', 'check'
end
end
......@@ -3,27 +3,19 @@ require 'package'
class Libvorbis < Package
description 'Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free, general-purpose compressed audio format.'
homepage 'https://xiph.org/vorbis/'
version '1.3.3'
source_url 'http://downloads.xiph.org/releases/vorbis/libvorbis-1.3.3.tar.xz'
source_sha256 '834c7d35a5ebf4e7b8ab60b0979f2b7f204ca66ff6829728e9d2a67f15347ebd'
version '1.3.5'
source_url 'https://downloads.xiph.org/releases/vorbis/libvorbis-1.3.5.tar.xz'
source_sha256 '54f94a9527ff0a88477be0a71c0bab09a4c3febe0ed878b24824906cd4b0e1d1'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libvorbis-1.3.3-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libvorbis-1.3.3-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libvorbis-1.3.3-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libvorbis-1.3.3-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: 'c65ed9d47d0d133e70fe045796eec9ebde88c964b23ff26ca6114bea1b21157d',
armv7l: 'c65ed9d47d0d133e70fe045796eec9ebde88c964b23ff26ca6114bea1b21157d',
i686: '5acc6baa7d5ac534e73e231d4c0bdeed69ec51e3d5f9d03dbf9648d14fa5bad6',
x86_64: '23d1e4a79c95d510e72a3ca78744bcdd1a09a40a9b900b8a6821b0b3fb86f47e',
})
depends_on 'libogg'
def self.build
system "./configure"
system "./configure --prefix=#{CREW_PREFIX} --libdir=#{CREW_LIB_PREFIX}"
system "make"
end
......
......@@ -3,27 +3,21 @@ require 'package'
class Libx264 < Package
description 'x264 is a free software library and application for encoding video streams into the H.264/MPEG-4 AVC compression format.'
homepage 'http://www.videolan.org/developers/x264.html'
version '20170604-2245-stable'
source_url 'http://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20170604-2245-stable.tar.bz2'
source_sha256 '42fa7cc6af0af36e4a8286ce724e6d20de0967d9017640883e955b4b6d3690ac'
version '20171118-2245-stable'
source_url 'http://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20171118-2245-stable.tar.bz2'
source_sha256 '22f29bbeba7087d9a92e0a50837e22c5729ba46b6c03392f149cae6ca3fa01ad'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-20170604-2245-stable-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-20170604-2245-stable-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-20170604-2245-stable-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/libx264-20170604-2245-stable-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: '4aa17ddc683247df0a313a3731fa50c9695fe92f755d024368c79991a2b832ae',
armv7l: '4aa17ddc683247df0a313a3731fa50c9695fe92f755d024368c79991a2b832ae',
i686: '68fa4d06c473ce45499b4ce9d57e4adf85a53ba3d42464a9449d7feea4682c05',
x86_64: '74c95e2d82fd09cdab5fe9688285a76018563ade0dafca83900858fe14b5430d',
})
depends_on 'yasm'
depends_on 'yasm' => :build
def self.build
system "./configure \
--prefix=#{CREW_PREFIX} \
--libdir=#{CREW_LIB_PREFIX} \
--enable-shared \
--enable-static"
system "make"
......
......@@ -3,9 +3,9 @@ require 'package'
class Libxml2 < Package
description 'Libxml2 is the XML C parser and toolkit developed for the Gnome project.'
homepage 'http://xmlsoft.org/'
version '2.9.6'
source_url 'ftp://xmlsoft.org/libxml2/libxml2-2.9.6.tar.gz'
source_sha256 '8b9038cca7240e881d462ea391882092dfdc6d4f483f72683e817be08df5ebbc'
version '2.9.7'
source_url 'ftp://xmlsoft.org/libxml2/libxml2-2.9.7.tar.gz'
source_sha256 'f63c5e7d30362ed28b38bfa1ac6313f9a80230720b7fb6c80575eeab3ff5900c'
binary_url ({
})
......
......@@ -3,14 +3,18 @@ require 'package'
class Lvm2 < Package
description 'LVM2 refers to the userspace toolset that provide logical volume management facilities on linux.'
homepage 'https://sourceware.org/lvm2'
version '2.02.174'
source_url 'ftp://sources.redhat.com/pub/lvm2/releases/LVM2.2.02.174.tgz'
source_sha256 'fb6ecec0408cb14ac4923c87cb0a356481122d7d0ae3fee6e94d2edb9d170a8b'
version '2.02.176'
source_url 'ftp://sources.redhat.com/pub/lvm2/releases/LVM2.2.02.176.tgz'
source_sha256 'dece83628c2c78a267a126ce6046d506582185ae5d40fb8d59b56547fccea473'
depends_on 'readline'
def self.build
system "./configure --disable-selinux --prefix=#{CREW_PREFIX} --with-confdir=#{CREW_PREFIX}/etc"
system "./configure \
--disable-selinux \
--prefix=#{CREW_PREFIX} \
--libdir=#{CREW_LIB_PREFIX} \
--with-confdir=#{CREW_PREFIX}/etc"
system "make"
end
......
require 'package'
class Lzo < Package
description 'LZO is a portable lossless data compression library written in ANSI C.'
homepage 'http://www.oberhumer.com/opensource/lzo/'
version '2.10'
source_url 'http://www.oberhumer.com/opensource/lzo/download/lzo-2.10.tar.gz'
source_sha256 'c0f892943208266f9b6543b3ae308fab6284c5c90e627931446fb49b4221a072'
binary_url ({
})
binary_sha256 ({
})
def self.build
system "./configure \
--prefix=#{CREW_PREFIX} \
--libdir=#{CREW_LIB_PREFIX} \
--disable-dependency-tracking \
--disable-maintainer-mode"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
require 'package'
class Lzop < Package
description 'lzop is a file compressor which is very similar to gzip.'
homepage 'http://www.lzop.org/'
version '1.04'
source_url 'https://www.lzop.org/download/lzop-1.04.tar.gz'
source_sha256 '7e72b62a8a60aff5200a047eea0773a8fb205caf7acbe1774d95147f305a2f41'
binary_url ({
})
binary_sha256 ({
})
depends_on 'lzo'
def self.build
system "./configure \
--prefix=#{CREW_PREFIX} \
--disable-dependency-tracking \
--disable-maintainer-mode"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
......@@ -3,32 +3,26 @@ require 'package'
class Mutt < Package
description 'Mutt is a small but very powerful text-based mail client for Unix operating systems.'
homepage 'http://mutt.org/'
version '1.8.3'
source_url 'ftp://ftp.mutt.org/pub/mutt/mutt-1.8.3.tar.gz'
source_sha256 '9b81746d67ffeca5ea44f60893b70dc93c86d4bc10187d4dd360185e4d42ed42'
version '1.9.1'
source_url 'ftp://ftp.mutt.org/pub/mutt/mutt-1.9.1.tar.gz'
source_sha256 '749b83a96373c6e2101ebe8c4b9a651735e02c478edb750750a5146a15d91bb1'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-1.8.3-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-1.8.3-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-1.8.3-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/mutt-1.8.3-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: 'fc546348b868f306548fd009f927c75c9fb8cf0b2855d8f1fbb7007d6d5cd7c8',
armv7l: 'fc546348b868f306548fd009f927c75c9fb8cf0b2855d8f1fbb7007d6d5cd7c8',
i686: '5b29051fa9a460d2888d5cc1e0bdda10108549c3baa774c30e56a4624a097bee',
x86_64: '5a3b3dee04f8f5d1219555a4f9c717fde4e032d1fd14509119158eb9d9194062',
})
depends_on 'libxslt'
def self.build
system './configure --with-mailpath=/usr/local/mail --prefix=/usr/local'
system "./configure \
--prefix=#{CREW_PREFIX} \
--with-mailpath=#{CREW_PREFIX}/mail"
system 'make'
end
def self.install
system "mkdir -p #{CREW_DEST_DIR}#{CREW_PREFIX}/mail"
system "mkdir -p #{CREW_DEST_PREFIX}/mail"
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
......@@ -3,33 +3,26 @@ require 'package'
class Nano < Package
description 'Nano\'s ANOther editor, an enhanced free Pico clone.'
homepage 'https://www.nano-editor.org/'
version '2.8.7'
source_url 'https://www.nano-editor.org/dist/v2.8/nano-2.8.7.tar.xz'
source_sha256 'fbe31746958698d73c6726ee48ad8b0612697157961a2e9aaa83b4aa53d1165a'
version '2.9.0'
source_url 'https://www.nano-editor.org/dist/v2.9/nano-2.9.0.tar.xz'
source_sha256 'd2d30c39caef53aba1ec1b4baff4186d4496f35d2411b0848242a5f2e27e129e'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/nano-2.8.7-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/nano-2.8.7-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/nano-2.8.7-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/nano-2.8.7-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: '742a93d42fd8f11ce1af41c4d09dc693c2837a6bda2cd6d1b31c9745e412acf6',
armv7l: '742a93d42fd8f11ce1af41c4d09dc693c2837a6bda2cd6d1b31c9745e412acf6',
i686: '6e146aad6426965477de0ff619d17cd764a59c806fd9dfb883a78d892ce1ef8f',
x86_64: 'b24e555f0d859c30deb50c2c1e754812dfbb790091d031a15c1defa8e71cd4e3',
})
depends_on 'buildessential'
depends_on 'ncurses'
depends_on 'filecmd'
def self.build
system "./configure CPPFLAGS=\"-I/usr/local/include/ncurses\""
system "make"
system "./configure \
--prefix=#{CREW_PREFIX} \
CPPFLAGS=\"-I#{CREW_PREFIX}/include/ncurses\""
system 'make'
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
end
end
......@@ -3,29 +3,20 @@ require 'package'
class Nettle < Package
description 'Nettle is a cryptographic library that is designed to fit easily in more or less any context: In crypto toolkits for object-oriented languages (C++, Python, Pike, ...), in applications like LSH or GNUPG, or even in kernel space.'
homepage 'http://www.lysator.liu.se/~nisse/nettle/'
version '3.3'
source_url 'https://ftp.gnu.org/gnu/nettle/nettle-3.3.tar.gz'
source_sha256 '46942627d5d0ca11720fec18d81fc38f7ef837ea4197c1f630e71ce0d470b11e'
version '3.4'
source_url 'https://ftp.gnu.org/gnu/nettle/nettle-3.4.tar.gz'
source_sha256 'ae7a42df026550b85daca8389b6a60ba6313b0567f374392e54918588a411e94'
binary_url ({
aarch64: 'https://dl.bintray.com/chromebrew/chromebrew/nettle-3.3-chromeos-armv7l.tar.xz',
armv7l: 'https://dl.bintray.com/chromebrew/chromebrew/nettle-3.3-chromeos-armv7l.tar.xz',
i686: 'https://dl.bintray.com/chromebrew/chromebrew/nettle-3.3-chromeos-i686.tar.xz',
x86_64: 'https://dl.bintray.com/chromebrew/chromebrew/nettle-3.3-chromeos-x86_64.tar.xz',
})
binary_sha256 ({
aarch64: 'd6d0a4768a6e5642fd1817c16bbd56c38075f9094354dd47a92cb61e2d091791',
armv7l: 'd6d0a4768a6e5642fd1817c16bbd56c38075f9094354dd47a92cb61e2d091791',
i686: 'c4df887ade348014dea7134e5e8617ffb65fd31c3b0143f0be21e0760a20d62c',
x86_64: '015e142b98b101f4069f08a78462672984f9d0190edd6c76d3d552c8c0b89bd0',
})
depends_on 'buildessential'
depends_on 'm4'
depends_on 'openssl'
def self.build
system "./configure --prefix=/usr/local"
system "./configure --prefix=#{CREW_PREFIX} --libdir=#{CREW_LIB_PREFIX}"
system "make"
end
......
......@@ -3,7 +3,7 @@ require 'package'
class Nginx < Package
description 'nginx [engine x] is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server, originally written by Igor Sysoev.'
homepage 'http://nginx.org/'
version '1.13.6-1'
version '1.13.6-2'
source_url 'https://nginx.org/download/nginx-1.13.6.tar.gz'
source_sha256 '8512fc6f986a20af293b61f33b0e72f64a72ea5b1acbcc790c4c4e2d6f63f8f8'
......@@ -13,6 +13,7 @@ class Nginx < Package
})
depends_on 'pcre'
depends_on 'zlibpkg'
def self.build
system './configure',
......@@ -26,26 +27,28 @@ class Nginx < Package
FileUtils.cd("#{CREW_DEST_PREFIX}/bin") do
system "ln -s #{CREW_PREFIX}/share/nginx/sbin/nginx nginx"
system "echo '#!/bin/bash' > startnginx"
system "echo 'NGINX=\$(ps ax | grep \"nginx: master process\" | grep -v grep | cut -d\" \" -f1 2> /dev/null)' >> startnginx"
system "echo 'NGINX=\$(ps ax | grep \"nginx: master process\" | grep -v grep | xargs | cut -d\" \" -f1 2> /dev/null)' >> startnginx"
system "echo 'if [ -z \"\$NGINX\" ]; then' >> startnginx"
system "echo ' sudo nginx' >> startnginx"
system "echo 'fi' >> startnginx"
system "echo 'NGINX=\$(ps ax | grep \"nginx: master process\" | grep -v grep | cut -d\" \" -f1 2> /dev/null)' >> startnginx"
system "echo 'NGINX=\$(ps ax | grep \"nginx: master process\" | grep -v grep | xargs | cut -d\" \" -f1 2> /dev/null)' >> startnginx"
system "echo 'if [ ! -z \"\$NGINX\" ]; then' >> startnginx"
system "echo ' echo \"nginx process \$NGINX is running\"' >> startnginx"
system "echo 'else' >> startnginx"
system "echo ' echo \"nginx failed to start\"' >> startnginx"
system "echo ' exit 1' >> startnginx"
system "echo 'fi' >> startnginx"
system "echo '#!/bin/bash' > stopnginx"
system "echo 'NGINX=\$(ps ax | grep \"nginx: master process\" | grep -v grep | cut -d\" \" -f1 2> /dev/null)' >> stopnginx"
system "echo 'NGINX=\$(ps ax | grep \"nginx: master process\" | grep -v grep | xargs | cut -d\" \" -f1 2> /dev/null)' >> stopnginx"
system "echo 'if [ ! -z \"\$NGINX\" ]; then' >> stopnginx"
system "echo ' sudo nginx -s quit' >> stopnginx"
system "echo 'fi' >> stopnginx"
system "echo 'NGINX=\$(ps ax | grep \"nginx: master process\" | grep -v grep | cut -d\" \" -f1 2> /dev/null)' >> stopnginx"
system "echo 'NGINX=\$(ps ax | grep \"nginx: master process\" | grep -v grep | xargs | cut -d\" \" -f1 2> /dev/null)' >> stopnginx"
system "echo 'if [ -z \"\$NGINX\" ]; then' >> stopnginx"
system "echo ' echo \"nginx process stopped\"' >> stopnginx"
system "echo 'else' >> stopnginx"
system "echo ' echo \"nginx process \$NGINX is running\"' >> stopnginx"
system "echo ' exit 1' >> stopnginx"
system "echo 'fi' >> stopnginx"
system "chmod +x st*nginx"
end
......
require 'package'
class Octane < Package
description 'The JavaScript Benchmark Suite for the modern web https://developers.google.com/octane/.'
homepage 'https://github.com/chromium/octane'
version '2.0'
source_url 'https://github.com/chromium/octane/archive/570ad1ccfe86e3eecba0636c8f932ac08edec517.tar.gz'
source_sha256 'c355dd9a37df421826f3d8028d89e8c8b58faa12a49da88fa2641788f9482fe7'
binary_url ({
})
binary_sha256 ({
})
def self.install
system "mkdir -p #{CREW_DEST_PREFIX}/share/octane"
system "cp -r . #{CREW_DEST_PREFIX}/share/octane"
end
def self.postinstall
puts
puts "To perform a benchmark test, execute the following:".lightblue
puts "ruby -run -e httpd #{CREW_PREFIX}/share/octane/ -p 8080".lightblue
puts "Visit http://localhost:8080".lightblue
puts "Click 'Start Octane 2.0'".lightblue
puts
end
end
require 'package'
class Pdfcrack < Package
description 'pdfcrack is a command line, password recovery tool for PDF-files.'
homepage 'https://sourceforge.net/projects/pdfcrack'
version '0.16'
source_url 'https://sourceforge.net/projects/pdfcrack/files/pdfcrack/pdfcrack-0.16/pdfcrack-0.16.tar.gz'
source_sha256 '7865b203074ccfd5c612c8ce00c46ffcb4fabaa26154ce9304dfc668c7cb73ef'
binary_url ({
})
binary_sha256 ({
})
def self.build
system 'make'
end
def self.install
system "install -Dm755 pdfcrack #{CREW_DEST_PREFIX}/bin/pdfcrack"
end
end
require 'package'
class Pdfgrep < Package
description 'a commandline utility to search text in PDF files'
homepage 'https://pdfgrep.org/'
version '2.0.1'
source_url 'https://pdfgrep.org/download/pdfgrep-2.0.1.tar.gz'
source_sha256 '0370d744b3072d47383dbed2cb9c8b0b64b83c084da5a8961f8d4bc7669e941e'
binary_url ({
})
binary_sha256 ({
})
depends_on 'poppler'
def self.build
system "./configure --prefix=#{CREW_PREFIX}"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
require 'package'
class Poppler < Package
description 'Poppler is a PDF rendering library based on the xpdf-3.0 code base.'
homepage 'https://poppler.freedesktop.org/'
version '0.59.0'
source_url 'https://poppler.freedesktop.org/poppler-0.59.0.tar.xz'
source_sha256 'a3d626b24cd14efa9864e12584b22c9c32f51c46417d7c10ca17651f297c9641'
binary_url ({
})
binary_sha256 ({
})
depends_on 'automake' => :build
depends_on 'cairo'
depends_on 'harfbuzz'
depends_on 'libjpeg'
depends_on 'libpng'
depends_on 'openjpeg'
depends_on 'zlibpkg'
def self.build
system "sed -i 's,/usr/local/lib,#{CREW_LIB_PREFIX},g' configure"
system "sed -i 's,/usr/local/lib,#{CREW_LIB_PREFIX},g' m4/libtool.m4"
system "./configure \
--prefix=#{CREW_PREFIX} \
--libdir=#{CREW_LIB_PREFIX}"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
require 'package'
class Proxychains < Package
description 'a tool that forces any TCP connection made by any given application to follow through proxy like TOR or any other SOCKS4, SOCKS5 or HTTP(S) proxy.'
homepage 'https://github.com/haad/proxychains'
version '4.2.0'
source_url 'https://github.com/haad/proxychains/archive/proxychains-4.2.0.tar.gz'
source_sha256 '225284e5553fb062d09ed425d2815387eda9c1c0d6e2bc24ea95393a71601619'
def self.build
system "./configure", "--prefix=#{CREW_PREFIX}", "--libdir=#{CREW_LIB_PREFIX}"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
system "install -Dm644 src/proxychains.conf #{CREW_DEST_PREFIX}/$HOME/.proxychains/proxychains.conf"
system "install -Dm644 src/proxychains.conf #{CREW_DEST_PREFIX}/etc/proxychains.conf"
system "mkdir -p HOME/.proxychains && cp src/proxychains.conf $HOME/.proxychains"
system "install -Dm755 src/proxyresolv #{CREW_DEST_PREFIX}/bin/proxyresolv"
end
end
require 'package'
class Pulseaudio < Package
description 'PulseAudio is a sound system for POSIX OSes, meaning that it is a proxy for your sound applications.'
homepage 'https://www.freedesktop.org/wiki/Software/PulseAudio/'
version '11.1'
source_url 'https://freedesktop.org/software/pulseaudio/releases/pulseaudio-11.1.tar.xz'
source_sha256 'f2521c525a77166189e3cb9169f75c2ee2b82fa3fcf9476024fbc2c3a6c9cd9e'
depends_on 'alsa_plugins'
depends_on 'dbus'
depends_on 'intltool'
depends_on 'libsndfile'
depends_on 'libatomic_ops'
depends_on 'speexdsp'
depends_on 'libcap'
depends_on 'libtool'
depends_on 'jsonc'
depends_on 'gettext'
def self.build
system "./configure \
--prefix=#{CREW_PREFIX} \
--libdir=#{CREW_LIB_PREFIX} \
--disable-x11"
system "make"
end
def self.install
system "make", "DESTDIR=#{CREW_DEST_DIR}", "install"
end
end
......@@ -3,7 +3,7 @@ require 'package'
class Sqlite < Package
description 'SQLite is a self-contained, high-reliability, embedded, full-featured, public-domain, SQL database engine.'
homepage 'http://www.sqlite.org/'
version '3.21.0'
version '3.21.0-1'
source_url 'https://www.sqlite.org/2017/sqlite-autoconf-3210000.tar.gz'
source_sha256 'd7dd516775005ad87a57f428b6f86afd206cb341722927f104d3f0cf65fbbbe3'
......@@ -14,8 +14,8 @@ class Sqlite < Package
def self.build
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
"--prefix=#{CREW_LIB_PREFIX}",
'--disable-static',
'--enable-shared',
'--with-pic'
......
require 'package'
class Squashfs < Package
description 'Squashfs is a compressed read-only filesystem for Linux.'
homepage 'http://squashfs.sourceforge.net/'
version '4.3'
source_url 'https://downloads.sourceforge.net/project/squashfs/squashfs/squashfs4.3/squashfs4.3.tar.gz'
source_sha256 '0d605512437b1eb800b4736791559295ee5f60177e102e4d4ccd0ee241a5f3f6'
binary_url ({
})
binary_sha256 ({
})
depends_on 'compressdoc' => :build
depends_on 'help2man' => :build
depends_on 'lz4'
depends_on 'lzo'
depends_on 'xzutils'
depends_on 'zlibpkg'
def self.build
FileUtils.cd('squashfs-tools') do
system "sed -i '5iLZ4_SUPPORT = 1' Makefile"
system "sed -i '6iLZO_SUPPORT = 1' Makefile"
system "sed -i '7iXZ_SUPPORT = 1' Makefile"
system "make"
end
end
def self.install
FileUtils.cd('squashfs-tools') do
system "mkdir -p #{CREW_DEST_PREFIX}/share/man/man1"
system "install -Dm755 mksquashfs #{CREW_DEST_PREFIX}/bin/mksquashfs"
system "install -Dm755 unsquashfs #{CREW_DEST_PREFIX}/bin/unsquashfs"
system "help2man ./mksquashfs -N --no-discard-stderr > #{CREW_DEST_PREFIX}/share/man/man1/mksquashfs.1"
system "help2man ./unsquashfs -N --no-discard-stderr > #{CREW_DEST_PREFIX}/share/man/man1/unsquashfs.1"
system "compressdoc --gzip -9 #{CREW_DEST_PREFIX}/share/man/man1"
end
end
end
......@@ -3,9 +3,9 @@ require 'package'
class Stressng < Package
description 'stress-ng will stress test a computer system in various selectable ways.'
homepage 'http://kernel.ubuntu.com/~cking/stress-ng/'
version '0.08.16'
source_url 'http://kernel.ubuntu.com/~cking/tarballs/stress-ng/stress-ng-0.08.16.tar.gz'
source_sha256 '315311d4fd09d1e06935bcb9c72b8bbb8289f8d4385a32a6b427bd067d816a87'
version '0.09.02'
source_url 'http://kernel.ubuntu.com/~cking/tarballs/stress-ng/stress-ng-0.09.02.tar.gz'
source_sha256 '9fffd8e8157ee969dfe99d1a5b310ff3337b1dbecd276ccaa8c30c1cc14392fd'
binary_url ({
})
......
require 'package'
class Vagrant < Package
description 'Vagrant is a tool for building and distributing development environments.'
homepage 'https://www.vagrantup.com/'
version '2.0.1'
source_url 'https://github.com/hashicorp/vagrant/archive/v2.0.1.tar.gz'
source_sha256 '212b91c45f60a825fcfc656424021e2550833778a6d4ebe13458676201a04eba'
binary_url ({
})
binary_sha256 ({
})
depends_on 'ruby'
def self.install
system "gem install bundle" unless File.exists? "#{CREW_PREFIX}/bin/bundle"
system "bundle install"
system "mkdir -p #{CREW_DEST_PREFIX}/bin"
FileUtils.cd("#{CREW_DEST_PREFIX}/bin") do
system "echo '#!/bin/bash' > vagrant"
system "echo 'cd #{CREW_PREFIX}/share/vagrant' >> vagrant"
system "echo 'bundle exec vagrant \"\$@\"' >> vagrant"
system "chmod +x vagrant"
end
system "sed -i '349,354d' templates/locales/en.yml"
system "mkdir -p #{CREW_DEST_PREFIX}/share/vagrant"
system "cp -r . #{CREW_DEST_PREFIX}/share/vagrant"
end
end
require 'package'
class Whitedb < Package
description 'Lightweight NoSQL database library operaring fully in main memory'
homepage 'http://whitedb.org'
version '0.7.3'
source_url 'https://whitedb.org/whitedb-0.7.3.tar.gz'
source_sha256 '10c4ccd754ed2d53dbdef9ec16c88c732aa73d923fc0ee114e7e3a78a812849d'
binary_url ({
})
binary_sha256 ({
})
def self.build
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
'--disable-depedency-tracking'
system 'make'
end
def self.install
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
end
end
require 'package'
class Wput < Package
description 'wput is a command line file upload tool, the opposite of wget'
homepage 'http://wput.sourceforge.net/'
version '0.6.1'
source_url 'https://prdownloads.sourceforge.net/wput/wput-0.6.1.tgz'
source_sha256 '67125acab1d520e5d2a0429cd9cf7fc379987f30d5bbed0b0e97b92b554fcc13'
depends_on 'gnutls'
def self.preinstall
system "curl -Ls -o config.guess 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD'"
system "curl -Ls -o config.sub 'https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD'"
end
def self.build
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}"
system 'make'
end
def self.install
system "install -Dm755 wput #{CREW_DEST_PREFIX}/bin/wput"
system "install -Dm644 doc/wput.1.gz #{CREW_DEST_PREFIX}/man/man1/wput.1.gz"
end
end
require 'package'
class Zeromq < Package
description 'Fast messaging system built on sockets. C and C++ bindings. aka 0MQ, ZMQ.'
homepage 'http://zeromq.org/'
version '4.2.2'
source_url 'https://github.com/zeromq/libzmq/releases/download/v4.2.2/zeromq-4.2.2.tar.gz'
source_sha256 '5b23f4ca9ef545d5bd3af55d305765e3ee06b986263b31967435d285a3e6df6b'
binary_url ({
})
binary_sha256 ({
})
depends_on 'libunwind'
depends_on 'xzutils'
def self.build
system './configure',
"--prefix=#{CREW_PREFIX}",
"--libdir=#{CREW_LIB_PREFIX}",
"--disable-dependency-tracking"
system 'make'
end
def self.install
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
end
end
require 'package'
class Zile < Package
description 'A small, fast, and powerful Emacs clone'
homepage 'http://www.gnu.org/software/zile/'
version '2.4.14'
source_url 'https://ftp.gnu.org/gnu/zile/zile-2.4.14.tar.gz'
source_sha256 '7a78742795ca32480f2bab697fd5e328618d9997d6f417cf1b14e9da9af26b74'
binary_url ({
})
binary_sha256 ({
})
depends_on 'acl'
depends_on 'bdwgc'
depends_on 'help2man' => :build
depends_on 'ncurses'
def self.build
system "./configure",
"CPPFLAGS=-I#{CREW_PREFIX}/include/ncurses -I#{CREW_PREFIX}/include/ncursesw",
"--prefix=#{CREW_PREFIX}",
'--disable-dependency-tracking'
system 'make'
end
def self.install
system 'make', "DESTDIR=#{CREW_DEST_DIR}", 'install'
end
end
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