Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add nodejs instalation #1

Open
ronflima opened this issue Sep 5, 2014 · 4 comments
Open

Add nodejs instalation #1

ronflima opened this issue Sep 5, 2014 · 4 comments

Comments

@ronflima
Copy link

ronflima commented Sep 5, 2014

Add installation of the latest version of nodejs. If possible, from the sources.

@caiotarifa
Copy link
Member

I built the code. But first of all we'll need write a Python installation (which is a Node dependency).

Btw, we need to improve the way that our script handles internal dependencies.

#!/bin/bash

install_node() {
  version="0.10.31"
  dependencies=("python")

  # Downloading
  wget -O ${sources}/node-v${version}.tar.gz "http://nodejs.org/dist/v${version}/node-v${version}.tar.gz"

  # Extracting
  tar xzvf ${sources}/node-v${version} -C ${sources}
  cd ${sources}/node-v${version}

  # Compiling
  ./configure
  make -j8
  make install

}

Could you re-validate this?

@ronflima
Copy link
Author

ronflima commented Sep 5, 2014

Instead of downloading directly, it should check first if it has already downloaded the sources. Second, it should always force installation on /usr/local directory instead of leaving it freely. I know that automake/autoconf always try to install on local but it is a better practice to tell where things are. Everything should be forced to /usr/local, even dependencies. It is good to avoid conflicts with mainstream versions.

@ronflima
Copy link
Author

ronflima commented Sep 5, 2014

Just got an idea. The dependency should be described as a normal installation module. Even a dependency can have lots of other dependencies, like libraries, executables, data files and so forth, describing a tree. If we keep it simple, i.e., each dependency as a normal module to install, dependency tracking is done at the installation script that spans a decision tree. I believe that this design is pretty straightforward and dumb simple.

@caiotarifa
Copy link
Member

I liked the dependencies idea be "internal modules".

I believe this is one of the most important thing for the evolution of our tool, it'll promote the removal of packages installers (like apt-get, yum, pacman, etc...) and improve the compatibility of Katchum in many other distros.

Complementing your suggestion: it'd be important to implement others checklists to optimize the workflow if something happens, as a power failure or internet. The users could get frustrated if they needed to start the whole process from the beginning.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants