Local-project automates updating and installing projects from source. Local-project can take care of pulling updates from a remote source, compiling the project, and then installing it. All you need to do is specify the project location, version control system, build tool, build location, and installation method. Local-project works by calling external programs that know how perform each step, so it is easy to add compatability for new tools.
Local-project is still in beta, although the interfaces are unlikely to change. The main planned feature is tracking the dependencies of projects to know if needs to be re-compiled.
Local-project (lpro
) has the following runtime dependencies:
- A UNIX-like system. Local-project has been tested on various Linux distributions and FreeBSD.
- Roswell.
- A Bash shell. The scripts that
lpro
uses to perform its various functions are written in Bash.
git clone https://github.com/sdilts/local-project.git
cd local-project
./configure
make
sudo make install
You can uninstall local-project with make uninstall
.
First, make sure that the necessary configure scripts have been run in the project. Then, navigate to the root directory of a project and enter the command
lpro init
Lpro
will then ask you questions about how the project is built and
installed. Here are some highlights:
- Project name
- The name that the project is referenced as. Must be unique.
- In source build
- Are the build and install commands issued in
the project’s root directory or in a
build
directory in the project’s root folder? - Root Installation Required
- Some projects are installed locally without
needing root access. It is possible to install
these projects separately from the rest of the
projects. Specify
no
to this option for this project to be installed separately. Seelpro help install
for more information.
When you are finished, you can now run
lpro update $PROJECT_NAME
to pull from remote and compile the project, or
lpro update-all
to do the same for all of the projects local-project knows about.
To install projects, use the lpro install
or lpro install-all
commands. If sudo access is required, note that /usr/local/bin
,
the default location that the lpro
binary is installed, is not usually in
the $PATH
used by sudo
and the root user. Do not add the directory
to the path, as that is a potential security risk. Instead, use the full
binary path.