Git Product home page Git Product logo

xbuild's Introduction

xbuild

Language runtimes installer for production environments.

Supports:

  • Perl
  • Ruby
  • Node.js
  • PHP
  • Python
  • Go

How to install

Install perl (ex: 5.18.2) (and cpanm/carton/start_server)

xbuild/perl-install 5.18.2 ~/local/perl-5.18

Install ruby (ex: 2.6.0) (and bundler)

xbuild/ruby-install 2.6.0 ~/local/ruby-2.6

Install node.js (ex: v0.10.26)

xbuild/node-install v0.10.26 ~/local/node-v0.10

Install PHP (ex: 5.5.10)

xbuild/php-install 5.5.10 ~/local/php-5.5.10
# with some build options
xbuild/php-install 5.5.10 ~/local/php-5.5.10 -- --with-pear --without-openssl

Install Python (ex: 2.7.6)

xbuild/python-install 2.7.6 ~/local/python-2.7.6

Install Go (ex: 1.3.3)

xbuild/go-install 1.3.3 ~/local/go-1.3.3

To update minor version, overwrite simply.

xbuild/node-install v0.10.25 ~/local/node-v0.10
xbuild/node-install v0.10.26 ~/local/node-v0.10

local/node-v0.10/bin/node -v #=> v0.10.26
#
# same for other languages as node.

Or, you can use install command simply.

# xbuild/install LANG VERSION PATH [OPTIONS]
#
xbuild/install ruby 2.6.0 ~/local/ruby-2.6

Replayable installation

xbuild checks specified install path before actual installation, and skips it if specified version runtime already exists.

For force re-install, use -f option.

xbuild/ruby-install -f 2.6.0 ~/local/ruby-2.6

How to use

Include installed bin/ to PATH:

# perl
export PATH=$HOME/local/perl-5.18/bin:$PATH
cpanm -Lextlib -n --installdeps .
# or carton install (or ...)

# ruby
export PATH=$HOME/local/ruby-2.6/bin:$PATH
bundle install --path vendor

# node
export PATH=$HOME/local/node-v0.10/bin:$PATH
npm install

# php
export PATH=$HOME/local/php-5.5.10/bin:$PATH
pear install

# python
export PATH=$HOME/local/python-2.7.6/bin:$PATH
pip install -r requirements.txt

# go
export GOROOT=$HOME/local/go-1.3.3
export PATH=$GOROOT/bin:$PATH
go version

How to try with Docker

You should be install Docker.

$ docker build -t xbuild-try .
$ docker run --rm -i -t xbuild-try /bin/bash
in docker > $ xbuild-install ruby 2.6.0 /usr/local/ruby-2.6.0

Contributors

Copyright

  • Copyright (c) 2013- TAGOMORI Satoshi (tagomoris)
    • and contributors
  • License
    • Apache License, Version 2.0 (see LICENSE)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.