diff --git a/Contributing/Commands.md b/Contributing/Commands.md new file mode 100644 index 0000000..7f85103 --- /dev/null +++ b/Contributing/Commands.md @@ -0,0 +1,14 @@ +# Commands + +Once your [development setup](setup.md) is complete, you have the following commands available. + +- Test the code: `go test ./...` +- Lint the code `golangci-lint run` +- Build the Docker image (tests and lint included): `docker build -t qmcgaw/private-internet-access .` +- Run the Docker container: `docker run -it --rm --cap-add=NET_ADMIN -e USER=test -e PASSWORD=test qmcgaw/private-internet-access` + +Other useful commands: + +- Update all servers information: `go run cmd/gluetun/main.go update -help` + +Now have a look at the [guidelines](Guidelines.md) to know where to start coding. diff --git a/Contributing/Guidelines.md b/Contributing/Guidelines.md new file mode 100644 index 0000000..bed3ff2 --- /dev/null +++ b/Contributing/Guidelines.md @@ -0,0 +1,7 @@ +# Guidelines + +The Go code is in the Go file [cmd/main.go](https://github.com/qdm12/private-internet-access-docker/blob/master/cmd/main.go) and the [internal directory](https://github.com/qdm12/private-internet-access-docker/tree/master/internal), you might want to start reading the main.go file. + +See the [Contributing document](https://github.com/qdm12/private-internet-access-docker/blob/master/.github/CONTRIBUTING.md) for more information on how to contribute to this repository. + +As always, feel free to reach out to me if you have any question. diff --git a/Contributing/Setup.md b/Contributing/Setup.md new file mode 100644 index 0000000..952ea39 --- /dev/null +++ b/Contributing/Setup.md @@ -0,0 +1,31 @@ +# Setup + +This document describes how to setup your development environment to contribute to this program. + +## Using VSCode and Docker + +That should be easier and better than a local setup, although it might use more memory if you're not on Linux. + +1. Install [Docker](https://docs.docker.com/install/) + - On Windows, share a drive with Docker Desktop and have the project on that partition + - On OSX, share your project directory with Docker Desktop +1. With [Visual Studio Code](https://code.visualstudio.com/download), install the [remote containers extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) +1. In Visual Studio Code, press on `F1` and select `Remote-Containers: Open Folder in Container...` +1. Your dev environment is ready to go!... and it's running in a container :+1: + +## Local installation + +1. Install [Docker](https://www.docker.com/products/docker-desktop) +1. Install [Go](https://golang.org/dl/) +1. Install [Git](https://git-scm.com/downloads) +1. Download the dependencies + + ```sh + go mod download + ``` + +1. Install [golangci-lint](https://github.com/golangci/golangci-lint#install) + +## Next steps + +Go to the [commands document](Commands.md) diff --git a/Home.md b/Home.md index e21fb76..feab37a 100644 --- a/Home.md +++ b/Home.md @@ -1,10 +1,3 @@ -# Wiki +# Home -## Table of content - -1. Solve issues -1. Testing -1. Niche features -1. More information -1. External firewall requirements -1. Contributing +1. [Contributing](Contributing)