No, you cannot override images that way. If you really need to REPLACE files (at least the main logo URL can be configured via LOGO_URL in indico.conf), then I recommend adding aliases to your web server config (before the generic aliases for all the static files) - it’s the web server serving those files anyway, requests to them never hit the indico webapp so no customization overrides are possible.
I can create those Symbolic Links using ln command on Debian Linux, or just replace those image directly, but if in the future I need upgrade the Indico software version, it is very possible that those images losed, because pip tool, uninstall the actual version and install the new version rigth?
No, do not create symlinks or replace/overwrite files - they’d indeed be lost during updates.
My recommendation is to edit the webserver config to add some extra aliases. For example, the nginx config in the setup guide has this:
location ~ ^/(images|fonts)(.*)/(.+?)(__v[0-9a-f]+)?\.([^.]+)$ {
alias /opt/indico/web/static/$1$2/$3.$5;
access_log off;
}
location ~ ^/(css|dist|images|fonts)/(.*)$ {
alias /opt/indico/web/static/$1/$2;
access_log off;
}
location /robots.txt {
alias /opt/indico/web/static/robots.txt;
access_log off;
}
Simply add additional location blocks similar to the one for /robots.txtbefore the 3 existing ones and point them to the locations of your custom files. The first one matching is used, so if your custom one matches, the file is served from your location instead of the default one.