Skip to content
Merged
Show file tree
Hide file tree
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
13 changes: 8 additions & 5 deletions .github/workflows/build_addon.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ on:

jobs:
build:
# Building the add-on template as an add-on does not make sense (and fails).
# Do not modify this repo name with your own one! (should remain the template)
if: github.repository != 'nvaccess/addonTemplate'

runs-on: ubuntu-latest

Expand All @@ -21,19 +24,19 @@ jobs:
uses: actions/checkout@v6
- name: Install uv
uses: astral-sh/setup-uv@v7
- name: Set up Python
run: uv python install
with:
enable-cache: true
- name: Install dependencies
run: |
sudo apt-get update -y
sudo apt-get install -y gettext
uv pip install
uv sync

- name: Code checks
run: export SKIP=no-commit-to-branch; pre-commit run --all
run: export SKIP=no-commit-to-branch; uv run pre-commit run --all-files

- name: building addon
run: scons && scons pot
run: uv run scons && uv run scons pot

- uses: actions/upload-artifact@v7
with:
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ manifest.ini
*.nvda-addon
.sconsign.dblite
/[0-9]*.[0-9]*.[0-9]*.json
*.egg-info
9 changes: 7 additions & 2 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,10 +89,15 @@ sconstruct
and file:
```
.pre-commit-config.yaml
changelog.md
pyproject.toml
uv.lock
```
4. Create an `addon` folder inside your new folder. You will put your code in the usual folders for NVDA extensions, under the `addon` folder. For instance: `globalPlugins`, `synthDrivers`, etc.
5. In the `buildVars.py` file, change variable `addon_info` with your add-on's information (name, summary, description, version, author, url, source url, license, and license URL). Also, be sure to carefully set the paths contained in the other variables in that file. If you need to use custom Markdown extensions, original add-on interface language is not English, or include custom braille translations tables, be sure to fil out markdown list, base language variable, and braille tables dictioanry, respectively.
5. In the `buildVars.py` file, change variable `addon_info` with your add-on's information (name, summary, description, version, author, url, source url, license, and license URL). Also, be sure to carefully set the paths contained in the other variables in that file. If you need to use custom Markdown extensions, original add-on interface language is not English, or include custom braille translations tables, be sure to fil out markdown list, base language variable, and braille tables dictionary, respectively.
6. Gettext translations must be placed into `addon\locale\<lang>/LC_MESSAGES\nvda.po`.
7. If you create releases with the GitHub workflow, pushing a tag, update the `changelog.md` file with the release description you want to be displayed in on your GitHub release page.
8. In the `[project]` section of `pyproject.toml`, update your project information.

#### Add-on manifest specification

Expand All @@ -102,7 +107,7 @@ An add-on manifest generated manually or via `buildVars.py` must include the fol
* Summary (string): name as shown on NVDA's Add-on store.
* Description (string): a short detailed description about the add-on.
* Version (string), ideally number.number with an optional third number, denoting major.minor.patch.
* Changelog (string): changes between previous and current add-on releases.
* Changelog (string): changes between previous and current add-on releases, visible in the Add-on Store.
* Author (string and an email address): one or more add-on author contact information in the form "name <email@address>".
* URL (string): a web address where the add-on information can be found such as add-on repository.
* docFileName (string): name of the documentation file.
Expand Down