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

Update README in gui/scripts #6370

Merged
merged 1 commit into from
Jun 25, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 9 additions & 65 deletions gui/scripts/README.md
Original file line number Diff line number Diff line change
@@ -5,79 +5,23 @@ This is a folder with the supporting scripts written in Python 3, node, bash.

### Dependency installation notes

1. Install GDAL/OGR dependencies, which are required by Fiona python package.

You can install GDAL via Homebrew on macOS:
`brew install gdal`

For other platforms, please follow the guide on https://gdal.org/download.html#binaries

2. Run the following command in terminal to install python dependencies:
1. Run the following command in terminal to install python dependencies:
`pip3 install -r requirements.txt`

3. Run `npm install -g topojson-server` to install `geo2topo` tool which is
used by python scripts to convert GeoJSON to TopoJSON

4. Make sure you have gettext utilities installed.
2. Make sure you have gettext utilities installed.
https://www.gnu.org/software/gettext/


### Geo data installation notes

Go to http://www.naturalearthdata.com/downloads/50m-cultural-vectors/ and
download ZIP files with the following shapes:

- Admin 0 – Countries
- Admin 1 – States, provinces - boundary lines
- Populated Places - simple dataset is enough

or use cURL to download all ZIPs:

```
curl -L -O https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/50m/cultural/ne_50m_admin_0_countries.zip
curl -L -O https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/50m/cultural/ne_50m_admin_1_states_provinces_lines.zip
curl -L -O https://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_populated_places.zip
```

Extract the downloaded ZIP files into `scripts` folder.
Make sure the following folders exist after extraction:

- ne_50m_admin_0_countries
- ne_50m_admin_1_states_provinces_lines
- ne_10m_populated_places

or use the following script:

```
unzip ne_50m_admin_0_countries.zip -d ne_50m_admin_0_countries/
unzip ne_50m_admin_1_states_provinces_lines.zip -d ne_50m_admin_1_states_provinces_lines/
unzip ne_10m_populated_places.zip -d ne_10m_populated_places/
```
### Update translations

### Geo data extraction notes
See [locales/README.md](../locales/README.md) for information about how to handle translations.

Run the following script to produce a TopoJSON data used by the app:
The `<repo>/scripts/localization` script is, among other things, calling into `fetch-relay-locations.py`
and `integrate-relay-locations.py` in this directory.

```
python3 extract-geo-data.py
```

and finally generate the R-Tree cache:

```
npm exec ts-node prepare-rtree.ts
```

At this point all of the data should be saved in `gui/scripts/out` folder.

### App integration notes

Once you've extracted all the geo data, run the integration script that will
copy all files ignoring intermediate ones into the `gui/assets/geo` folder:

```
python3 integrate-into-app.py
```
* `fetch-relay-locations.py` fetches the relay list and extracts all country and city names.
* `intregrate-relay-locations.py` integrates the fetched relay locations into
`<repo>/gui/locales/relay-locations.pot`.

### Locking Python dependencies