Add overriding for particular URLs. Add files overriding support.
This commit is contained in:
parent
9b9e450910
commit
1dfdcc73c0
|
@ -63,7 +63,7 @@ logger = logging.getLogger(__name__)
|
||||||
# * Add a 'additional files' config, like for installing brushes and such as part of the package. We'd have to patch
|
# * Add a 'additional files' config, like for installing brushes and such as part of the package. We'd have to patch
|
||||||
# the appropirate meson files to do it.
|
# the appropirate meson files to do it.
|
||||||
# ** we might want to allow color vs. symbolic icons
|
# ** we might want to allow color vs. symbolic icons
|
||||||
# * impliment versioning somehow ?
|
# * impliment versioning somehow ? fill in appropirate version variables as needed.
|
||||||
# * Fixing various urls, dialogs, etc. (also the text wiggle in about, basically sort of bury the original stuff)
|
# * Fixing various urls, dialogs, etc. (also the text wiggle in about, basically sort of bury the original stuff)
|
||||||
# * We should fix the README, like make a README generated
|
# * We should fix the README, like make a README generated
|
||||||
# * We should fix help menu
|
# * We should fix help menu
|
||||||
|
@ -158,6 +158,23 @@ def heckimp(args: Sequence[str]):
|
||||||
else:
|
else:
|
||||||
shadow = ANNULUS
|
shadow = ANNULUS
|
||||||
|
|
||||||
|
tutorialurl = inconfig['url']
|
||||||
|
if 'tutorialurl' in inconfig:
|
||||||
|
tutorialurl = inconfig['tutorialurl']
|
||||||
|
|
||||||
|
docsurl = inconfig['url']
|
||||||
|
if 'docsurl' in inconfig:
|
||||||
|
docsurl = inconfig['docsurl']
|
||||||
|
|
||||||
|
contriburl = inconfig['url']
|
||||||
|
if 'contriburl' in inconfig:
|
||||||
|
contriburl = inconfig['contriburl']
|
||||||
|
|
||||||
|
donateurl = inconfig['url']
|
||||||
|
if 'donateurl' in inconfig:
|
||||||
|
donateurl = inconfig['donateurl']
|
||||||
|
|
||||||
|
|
||||||
derivedconfig={
|
derivedconfig={
|
||||||
# Derived variables from config
|
# Derived variables from config
|
||||||
"longname": inconfig['name'].upper(),
|
"longname": inconfig['name'].upper(),
|
||||||
|
@ -167,6 +184,10 @@ def heckimp(args: Sequence[str]):
|
||||||
"ufilename": inconfig['name'].upper(),
|
"ufilename": inconfig['name'].upper(),
|
||||||
"backdomain": reverse_domain(inconfig['url']),
|
"backdomain": reverse_domain(inconfig['url']),
|
||||||
"baseurl": inconfig['url'],
|
"baseurl": inconfig['url'],
|
||||||
|
"tutorialurl": tutorialurl,
|
||||||
|
"docsurl": docsurl,
|
||||||
|
"contriburl": contriburl,
|
||||||
|
"donateurl": donateurl,
|
||||||
"copyright": inconfig['copyright'],
|
"copyright": inconfig['copyright'],
|
||||||
"version": inconfig['version'],
|
"version": inconfig['version'],
|
||||||
"resource_path": reverse_domain(inconfig['url']).replace('.', '/'),
|
"resource_path": reverse_domain(inconfig['url']).replace('.', '/'),
|
||||||
|
@ -203,6 +224,7 @@ def heckimp(args: Sequence[str]):
|
||||||
pprint.pprint(derivedconfig)
|
pprint.pprint(derivedconfig)
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
||||||
# visit each file in the source tree,
|
# visit each file in the source tree,
|
||||||
files = list(sourceroot.rglob('*'))
|
files = list(sourceroot.rglob('*'))
|
||||||
|
|
||||||
|
@ -279,6 +301,14 @@ def heckimp(args: Sequence[str]):
|
||||||
inf = outpath.read_text().split('\n')
|
inf = outpath.read_text().split('\n')
|
||||||
outpath.write_text(inf[0]+('\n'.join(sorted(inf[1:], key=lambda d: d.strip()))))
|
outpath.write_text(inf[0]+('\n'.join(sorted(inf[1:], key=lambda d: d.strip()))))
|
||||||
|
|
||||||
|
# post process patches
|
||||||
|
# copy files:
|
||||||
|
if 'files' in inconfig:
|
||||||
|
for f in inconfig['files']:
|
||||||
|
logger.info(f"Adding package-custom files: {f} -> {inconfig['files'][f]}")
|
||||||
|
fpath = find_file(f, searchpaths)
|
||||||
|
shutil.copy(str(fpath), os.path.join(derivedconfig['outtree'], inconfig['files'][f]))
|
||||||
|
|
||||||
if not pargs.nogit:
|
if not pargs.nogit:
|
||||||
os.chdir(derivedconfig['outtree'])
|
os.chdir(derivedconfig['outtree'])
|
||||||
os.system('git init .')
|
os.system('git init .')
|
||||||
|
|
|
@ -58,14 +58,19 @@ CONTENTS_REGEXP: List[Replacement] = [
|
||||||
## Resource paths
|
## Resource paths
|
||||||
R(re.compile(r"(.*)/org/gimp/(.*)"), r'\1{resource_path}\2'),
|
R(re.compile(r"(.*)/org/gimp/(.*)"), r'\1{resource_path}\2'),
|
||||||
|
|
||||||
## URLs and things # FIXME we need to respect *some* of the original URLs, we'll take the time to track down those
|
## URLs and things
|
||||||
## and make exceptions later but for now we'll do a big replace. Stuff is mostly in the dialogs, just grep for
|
|
||||||
## the .org domain in there and we can do a great deal to fix it.
|
|
||||||
# we also need to make sure we're directing people to the original docs, but also making sure they don't bother
|
# we also need to make sure we're directing people to the original docs, but also making sure they don't bother
|
||||||
# their bug tracker, and also allow the user to replace the various kinds of urls (docs, subpaths like bugs, etc)
|
# their bug tracker, and also allow the user to replace the various kinds of urls (docs, subpaths like bugs, etc)
|
||||||
|
R(re.compile(r"(.*)https?://www.gimp.org/tutorials(.*)"), r'\1{tutorialurl}\2'),
|
||||||
|
R(re.compile(r"(.*)https?://docs.gimp.org/(.*)"), r'\1{docsurl}\2'),
|
||||||
|
R(re.compile(r"(.*)https?://www.gimp.org/develop(.*)"), r'\1{contriburl}\2'),
|
||||||
|
R(re.compile(r"(.*)https?://www.gimp.org/donating(.*)"), r'\1{donateurl}\2'),
|
||||||
|
|
||||||
|
# catchall urls
|
||||||
R(re.compile(r"(.*)https?://www.gimp.org(.*)"), r'\1{baseurl}\2'),
|
R(re.compile(r"(.*)https?://www.gimp.org(.*)"), r'\1{baseurl}\2'),
|
||||||
R(re.compile(r"(.*[ \t\"])(www.)?gimp.org(.*)"), r'\1{baseurl}\3'),
|
R(re.compile(r"(.*[ \t\"])(www.)?gimp.org(.*)"), r'\1{baseurl}\3'),
|
||||||
|
|
||||||
|
|
||||||
## general replacements
|
## general replacements
|
||||||
R(re.compile(r"(.*)gimp(.*)"), r'\1{filename}\2'),
|
R(re.compile(r"(.*)gimp(.*)"), r'\1{filename}\2'),
|
||||||
R(re.compile(r"(.*)GIMP(.*)"), r'\1{ufilename}\2'),
|
R(re.compile(r"(.*)GIMP(.*)"), r'\1{ufilename}\2'),
|
||||||
|
|
Loading…
Reference in New Issue