Allow compile time default paths for cheats and config

This CL makes it easier to install navi on multi-tenant Linux systems, by allowing to provide pre-install cheatsheets in shared folders (and potentially pre-installed config in shared folders).

This does not break or change the existing behaviour. The shared directory / config file is only used if
- There is not already a directory / config file in the user XDG location
- Navi is compiled with NAVI_CONFIG_FILE and/or NAVI_CHEATS_DIRECTORY env var set
- The paths defined in above env vars exist
This commit is contained in:
Ulrich Kautz 2022-02-11 17:12:23 +00:00
parent 6a76afc535
commit ef036c3224
2 changed files with 72 additions and 1 deletions

View file

@ -43,6 +43,20 @@ jobs:
toolchain: stable
override: true
- name: Prep environment to test compiled-in paths
run: |
mkdir /tmp/cheats-dir
touch /tmp/config-file
- name: Run cargo test (with compiled-in paths)
uses: actions-rs/cargo@v1
continue-on-error: false
env:
NAVI_CHEATS_DIRECTORY: /tmp/cheats-dir
NAVI_CONFIG_FILE: /tmp/config-file
with:
command: test
- name: Run cargo test
uses: actions-rs/cargo@v1
continue-on-error: false