GiellaLT provides rule-based language technology aimed at minority and indigenous languages
This is a multistep process. Do as follows:
giellalt
directory: cd $GUTROOTDIR/giellalt
gut clone -o giellalt -r '^lang-'
gut pull -o giellalt -r ^template-lang-und
rev_id
in .gut/template.toml
gut template apply -o giellalt -r ^lang- -t template-lang-und
gut status -v -o giellalt -r ^lang-
is useful here); when everything is ok, then:rsync -av template-lang-und/path/to/newdir lang-zxx/path/to/
, pay attention to /
--abort
option, like this: gut template apply --abort -o giellalt -r ^lang- -t template-lang-und
gut commit -o giellalt -r ^lang- -m "[Template merge] Some commit message"
gut template apply --continue -o giellalt -r ^lang- -t template-lang-und
--skip-ci
if you want to skip CI when pushing all changes to GitHub (requires CI to react to the string [skip ci]
in the commit message, this is working for all lang-*
and keyboard-*
repos in the GiellaLT GitHub organisation)gut push -o giellalt -r template-lang-und
gut pull -o giellalt -r ^lang-
gut push -o giellalt -r ^lang-
Some of the steps explained:
.gut/delta.toml
file), and commits it.
This is necessary for the templating system to know which template
commit to calculate a delta from, for each language.It makes sense to run the stuff through -r ^lang-zxx
first for testing.
NB! Please note that the repos need to be clean when running this command. Unclean/dirty repos will not be processed. Dirty repos are repos with untracked files, uncommitted changes etc.
NB2! If you are adding new files in the ignored
section in .gut/template.toml
, you need to copy them manually - these files are not automatically added to all repositories. This can be considered a bug, but it is easily worked around by a command like the followoing:
for i in lang-*; do cp -f template-lang-und/tools/tts/pipespec.xml.in $i/tools/tts/; done