Steps to reproduce
Try to follow the documentation for adding custom theme in OCIS.
WEB_UI_THEME_PATH: "https://themeurl-redacted/ocis/theme.json" in the compose environment variables.
Tried to set the url in ocis.yaml with
Theme should change
ownCloud version: (see ownCloud admin page)
Updated from an older ownCloud or fresh install:
Where did you install ownCloud from:
The content of config/config.php:
Are you using external storage, if yes which one: local/smb/sftp/…
Are you using encryption: yes/no
Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/…
Can someone tell me how the config should look like to point it to a json theme file? the documentation doesn’t make much sense
i think the same topic has been already discussed here:
I’m trying to theme OCIS and can’t for the life of me get it to use an external URL. In ocis.yaml I have the following:
https://notmyrealdomain.com/ocis/theme.json loads just fine for me in a web browser and the theme.json file was taken directly from the default OCIS theme.json. I tried also using the WEB_ASSET_PATH and WEB_UI_THEME_PATH env variables with identical results. Not sure how to debug thi…
Yep, but seems like the team ghosted him… since it’s unresolved maybe the team can chime in?
i’m not sure how much of the ownCloud people (or team) working with OCIS are reading this forum so i’m not sure if “ghosting” is adequate
Maybe you can repeat / append your question to the linked thread to keep the knowledge (if any new has been found in the meantime) in a single thread?
I think if the documentation doesn’t make sense it could be also possible to open an issue below to let the ownCloud people know.
It could be also possible that they are already aware but i don’t have any knowledge on OCIS to be sure:
Seems that theming DOES work, but not for the login page… Nothing changes on the login page.
Are you using the buildin IDP or an external solution like keycloak?
Also you are not being ghosted
thing is, there is lots of questions popping in on several public channels we have to monitor and sometimes posts/messages get lost in the noise. We are sorry about this, we are doing our best to reply to everybody. Sometimes it might take a bit.
Hello and thanks for the reply
I am using the built in idp, is this not customizable ? I e looked through the docker container as well…
I see now in the documentation that is supposed to be an ui-folder in the idp directory… I’m gonna look when I get home if it’s there, although it feels like I have searched through all the folders
The internal idp has its own assets (you can recreate them by running
make -C services/idp generate) in the repo. But they are not intended to modify them with the released binary at the moment. We might replace the internal IDP in the near future which may allow such things.
Oh wait there is
IDP_ASSET_PATH where you can host the modified assets… but we might still replace the IDP in the near future
i still think that this topic should be closed and the discussion around theming should continue in the original
Unable to theme OCIS topic. For example the users in the other topic are currently not even aware of the newly gathered info here
Alright, sounds like it’s coming a new idp so I might just wait until then
@dragonchaser mentioned, the build in idp is a separate service which ships it own assets.
regarding the opening question from
@monkeyfella, i prepared a docker compose to show how it works:
command: ['-c', 'ocis init || true && ocis server']
the important env variables are
as you can see the example uses a proxy for the theme.json, this is because of cors.
I have managed to theme my setup now, also built the idp and got it working.
I tried replacing the idp with authelia, I got everything working until the last step when it gets to the oidc callback page, it never redirects and actually logs me in.
In the logs it seems like everything is fine.
So if you guys have time, a setup example, or guide on how to get caddy and authelia to work together would be much appreciated.
This is going offtopic for the theming discussion. So just some quick pointers here.
There is this nice blogpost which contains a slightly outdated, but mostly correct example:
Also there is
deployments: Add new example for authelia by rhafer · Pull Request #7249 · owncloud/ocis · GitHub a work in progress docker-compose example. It’s still has a couple of issue, but should give you some hints.
If you have more question I suggest you to comment on already existing discussion about authelia (IIRC there is one already) or open a new topic.
What files go in the IDP_ASSET_PATH?
open a terminal
$ git clone https://github.com/owncloud/ocis.git
when it’s finished, cd in to the ocis directory, type:
$ make generate
If everything works out you should have the directory
in that folder there should be:
│ ├── css
│ │ ├── 8.b5f1a04b.chunk.css
│ │ ├── 8.b5f1a04b.chunk.css.map
│ │ ├── main.51329a5b.chunk.css
│ │ └── main.51329a5b.chunk.css.map
│ ├── favicon.ico
│ ├── js
│ │ ├── 0.f01e1168.chunk.js
│ │ ├── 0.f01e1168.chunk.js.map
│ │ ├── 10.829ffc84.chunk.js
│ │ ├── 10.829ffc84.chunk.js.map
│ │ ├── 8.49361285.chunk.js
│ │ ├── 8.49361285.chunk.js.map
│ │ ├── 9.39746e85.chunk.js
│ │ ├── 9.39746e85.chunk.js.map
│ │ ├── all-i18n-data.1885b7ec.chunk.js
│ │ ├── all-i18n-data.1885b7ec.chunk.js.map
│ │ ├── containers-goodbye.ff63fd5d.chunk.js
│ │ ├── containers-goodbye.ff63fd5d.chunk.js.map
│ │ ├── containers-login.d536530a.chunk.js
│ │ ├── containers-login.d536530a.chunk.js.map
│ │ ├── containers-welcome.a48d2ff2.chunk.js
│ │ ├── containers-welcome.a48d2ff2.chunk.js.map
│ │ ├── identifier-main.b785f365.chunk.js
│ │ ├── identifier-main.b785f365.chunk.js.map
│ │ ├── main.fb7e3116.chunk.js
│ │ ├── main.fb7e3116.chunk.js.map
│ │ ├── runtime-main.2e292c87.js
│ │ └── runtime-main.2e292c87.js.map
│ ├── logo.svg
│ └── media
│ ├── background.7296b9ab.jpg
│ └── inter.aadb65ac.ttf
5 directories, 36 files
copy the identifier folder to a location and point your IDP_ASSET_PATH: “/to/your/location/for/identifier”
main.51329a5b.chunk.css is probably what you want to start look in first