Skip to content
Pouya Eghbali edited this page Jul 6, 2021 · 8 revisions

Welcome to the please wiki!

What is please?

Please is an on-demand command installer, you can say it's sort of a declarative package installer; you don't tell it how to get the commands, you just want to use the commands and you want to use them right away.

Please was written, mainly, to simplify DevOps; please git should give you git in any OS, in any environment, any architecture. You've got a Dockerfile that uses Ubuntu as a base, and you want to switch to Alpine? That's alright, just go on and change the FROM value in your Dockerfile, all your please commands remain the same. Focus on getting the job done, not installing the dependencies.

How do I install it?

The best way to install Please is to use NPM:

sudo npm i -g @please.dev/cli

Alternatively, if you are on Linux or macOS, you can do:

curl https://install.please.dev -s | sh

In Dockerfiles, if you already have Node.js installed, it is recommended to use npm to install it, otherwise you can just ADD it to your Dockerfile like this:

ADD https://get.please.dev/${VERSION}/${OS}/${ARCH} /usr/local/bin/please
RUN chmod +x /usr/local/bin/please

The https://get.please.dev/${VERSION}/${OS}/${ARCH} address can be used to download bundled Please packages from GitHub. The OS and ARCH parameters are optional, they default to linux and x64 respectively.

Checkout examples/docker for a working example.

Please is an experimental tool, it is not mature and well known yet, but hopefully it will get into the software repositories of major distributions soon, adding more ways of installing it on your environment.

How do I use it?

Using please is very easy, want to use a command named xyz? Just add please before the command:

please xyz

You can pass any arguments you want to the command, just remember to put them in front of the command, otherwise they will be treated as an argument meant for please command itself:

please git clone [email protected]:user/project.git

User's guide

Home
CLI Usage
Configuration
CNF
FAQ

Developer's guide

Repository
Please API

Clone this wiki locally