avm99963 | ea37fdf | 2021-02-03 01:27:13 +0100 | [diff] [blame] | 1 | # Set up the development environment |
| 2 | Before starting to develop, you must set up your device. This is what you must |
| 3 | do: |
| 4 | |
| 5 | 1. [Install Go](https://golang.org/doc/install). On Mac, you can install it |
| 6 | with [Homebrew](https://brew.sh/) by running `brew install go`. |
| 7 | - This is because the build script uses a Go program to generate the |
| 8 | manifest. |
avm99963 | efce210 | 2021-03-23 23:23:26 +0100 | [diff] [blame] | 9 | 1. Install the genmanifest Go program. In order to do this, run |
| 10 | `go install gomodules.avm99963.com/webext/genmanifest@latest`. |
Adrià Vilanova Martínez | 3465e77 | 2021-07-11 19:18:41 +0200 | [diff] [blame] | 11 | 1. [Install NPM](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm/). |
Adrià Vilanova Martínez | 8aad84f | 2021-08-20 15:11:38 +0200 | [diff] [blame] | 12 | 1. Now, you must clone the git repository to your device to retrieve the |
| 13 | extension source code. To do that, |
| 14 | [go here](https://gerrit.avm99963.com/admin/repos/infinitegforums) and execute |
| 15 | the "clone with commit-msg hook" command listed there (if you sign in you'll see |
| 16 | several options: cloning via anonymous HTTP, HTTP, or SSH). |
Adrià Vilanova Martínez | 3465e77 | 2021-07-11 19:18:41 +0200 | [diff] [blame] | 17 | 1. That's it! If you're using a Mac, you're out of luck, because you must |
avm99963 | ea37fdf | 2021-02-03 01:27:13 +0100 | [diff] [blame] | 18 | perform some more steps. |
| 19 | |
| 20 | ## Mac-specific configuration |
| 21 | On a Mac, you must also follow these steps: |
| 22 | |
Adrià Vilanova Martínez | 13997d8 | 2022-01-30 13:35:26 +0100 | [diff] [blame] | 23 | 1. [Install Brew](https://brew.sh/) if not installed already. |
| 24 | 1. Use Brew to install the following packages: `bash`, `gnu-getopt`, and |
| 25 | `gnu-sed`. Basically we want to get an updated bash version, an updated version |
| 26 | of the `getopt` command, and the GNU version of `sed`. |
| 27 | 1. Set Brew's bash as the default shell (or just make sure to use Brew's bash |
| 28 | when compiling the extension). |
| 29 | 1. Include the directories where `getopt` and `gnu-sed` were installed to |
| 30 | `$PATH`. |