jenkinsci / dark-theme-plugin

Jenkins Dark Theme
https://plugins.jenkins.io/dark-theme/
MIT License
71 stars 37 forks source link

part Light, part dark when setting "Dark" or "Dark (System)" as the default theme #526

Closed bkhouri closed 1 month ago

bkhouri commented 1 month ago

Jenkins and plugins versions report

Environment ```text Jenkins: 2.452.2 OS: Linux - 6.8.0-36-generic Java: 17.0.11 - Ubuntu (OpenJDK 64-Bit Server VM) --- PrioritySorter:5.1.0 analysis-model-api:12.3.3 ansible:403.v8d0ca_dcb_b_502 ant:497.v94e7d9fffa_b_9 antisamy-markup-formatter:162.v0e6ec0fcfcf6 apache-httpcomponents-client-4-api:4.5.14-208.v438351942757 apache-httpcomponents-client-5-api:5.3.1-110.v77252fb_d4da_5 artifactory:4.0.7 asm-api:9.7-33.v4d23ef79fcc8 atlassian-bitbucket-server-integration:4.0.0 audit-log:1.3 audit-trail:361.v82cde86c784e authentication-tokens:1.113.v81215a_241826 autocancel:1.0.5 badge:1.13 bitbucket:241.v6d24a_57f9359 blueocean:1.27.13 blueocean-bitbucket-pipeline:1.27.13 blueocean-commons:1.27.13 blueocean-config:1.27.13 blueocean-core-js:1.27.13 blueocean-dashboard:1.27.13 blueocean-display-url:2.4.2 blueocean-events:1.27.13 blueocean-git-pipeline:1.27.13 blueocean-github-pipeline:1.27.13 blueocean-i18n:1.27.13 blueocean-jwt:1.27.13 blueocean-personalization:1.27.13 blueocean-pipeline-api-impl:1.27.13 blueocean-pipeline-editor:1.27.13 blueocean-pipeline-scm-api:1.27.13 blueocean-rest:1.27.13 blueocean-rest-impl:1.27.13 blueocean-web:1.27.13 bootstrap5-api:5.3.3-1 bouncycastle-api:2.30.1.78.1-248.ve27176eb_46cb_ branch-api:2.1169.va_f810c56e895 build-blocker-plugin:166.vc82fc20b_a_ed6 build-name-setter:2.4.2 build-timeout:1.33 caffeine-api:3.1.8-133.v17b_1ff2e0599 checks-api:2.2.0 cloudbees-bitbucket-branch-source:887.va_d359b_3d2d8d cloudbees-folder:6.928.v7c780211d66e command-launcher:107.v773860566e2e commons-compress-api:1.26.1-2 commons-lang3-api:3.14.0-76.vda_5591261cfe commons-text-api:1.12.0-119.v73ef73f2345d config-file-provider:973.vb_a_80ecb_9a_4d0 configuration-as-code:1810.v9b_c30a_249a_4c credentials:1361.v56f5ca_35d21c credentials-binding:681.vf91669a_32e45 dark-theme:439.vdef09f81f85e data-tables-api:2.0.8-1 description-setter:239.vd0a_6b_785f92d display-url-api:2.204.vf6fddd8a_8b_e9 docker-commons:439.va_3cb_0a_6a_fb_29 docker-workflow:580.vc0c340686b_54 durable-task:555.v6802fe0f0b_82 echarts-api:5.5.0-1 eddsa-api:0.3.0-4.v84c6f0f4969e email-ext:1814.v404722f34263 envinject:2.908.v66a_774b_31d93 envinject-api:1.199.v3ce31253ed13 extended-read-permission:53.v6499940139e5 favorite:2.218.vd60382506538 font-awesome-api:6.5.2-1 forensics-api:2.4.0 git:5.2.2 git-client:5.0.0 git-parameter:0.9.19 git-server:126.v0d945d8d2b_39 github:1.39.0 github-api:1.318-461.v7a_c09c9fa_d63 github-branch-source:1789.v5b_0c0cea_18c3 gradle:2.12 groovy-postbuild:228.vcdb_cf7265066 gson-api:2.11.0-41.v019fcf6125dc handy-uri-templates-2-api:2.1.8-30.v7e777411b_148 htmlpublisher:1.35 instance-identity:185.v303dc7c645f9 ionicons-api:74.v93d5eb_813d5f jackson2-api:2.17.0-379.v02de8ec9f64c jakarta-activation-api:2.1.3-1 jakarta-mail-api:2.1.3-1 javadoc:243.vb_b_503b_b_45537 javax-activation-api:1.2.0-7 javax-mail-api:1.6.2-10 jaxb:2.3.9-1 jdk-tool:73.vddf737284550 jenkins-design-language:1.27.13 jersey2-api:2.42-147.va_28a_44603b_d5 jfrog:1.5.0 jira:3.13 jira-steps:2.0.165.v8846cf59f3db jjwt-api:0.11.5-112.ve82dfb_224b_a_d job-dsl:1.87 jobConfigHistory:1229.v3039470161a_d joda-time-api:2.12.7-29.v5a_b_e3a_82269a_ jquery3-api:3.7.1-2 jsch:0.2.16-86.v42e010d9484b_ json-api:20240303-41.v94e11e6de726 json-path-api:2.9.0-58.v62e3e85b_a_655 junit:1265.v65b_14fa_f12f0 ldap:725.v3cb_b_711b_1a_ef lockable-resources:1255.vf48745da_35d0 login-theme:146.v64a_da_cf70ea_6 mailer:472.vf7c289a_4b_420 mapdb-api:1.0.9-40.v58107308b_7a_7 mask-passwords:173.v6a_077a_291eb_5 matrix-auth:3.2.2 matrix-project:832.va_66e270d2946 maven-plugin:3.23 mercurial:1260.vdfb_723cdcc81 metrics:4.2.21-451.vd51df8df52ec mina-sshd-api-common:2.13.1-117.v2f1a_b_66ff91d mina-sshd-api-core:2.13.1-117.v2f1a_b_66ff91d monitoring:1.99.0 nodelabelparameter:1.12.0 oauth-credentials:0.653.v14cf2088e950 okhttp-api:4.11.0-172.vda_da_1feeb_c6e ownership:0.13.0 pam-auth:1.11 parameterized-scheduler:277.v61a_4b_a_49a_c5c percentage-du-node-column:0.1.0 pipeline-build-step:540.vb_e8849e1a_b_d8 pipeline-github-lib:61.v629f2cc41d83 pipeline-graph-analysis:216.vfd8b_ece330ca_ pipeline-graph-view:304.va_f2a_16b_e4964 pipeline-groovy-lib:727.ve832a_9244dfa_ pipeline-input-step:495.ve9c153f6067b_ pipeline-milestone-step:119.vdfdc43fc3b_9a_ pipeline-model-api:2.2203.v89fa_170c2b_f5 pipeline-model-definition:2.2203.v89fa_170c2b_f5 pipeline-model-extensions:2.2203.v89fa_170c2b_f5 pipeline-rest-api:2.34 pipeline-stage-step:312.v8cd10304c27a_ pipeline-stage-tags-metadata:2.2203.v89fa_170c2b_f5 pipeline-stage-view:2.34 pipeline-timeline:1.0.3 pipeline-utility-steps:2.17.0 plain-credentials:183.va_de8f1dd5a_2b_ platformlabeler:2596.v4304971d3eb_b_ plugin-util-api:4.1.0 prism-api:1.29.0-15 pubsub-light:1.18 rebuild:332.va_1ee476d8f6d resource-disposer:0.23 role-strategy:727.vd344b_eec783d saferestart:0.7 saml:4.464.vea_cb_75d7f5e0 scm-api:690.vfc8b_54395023 script-security:1341.va_2819b_414686 shiningpanda:0.24 simple-theme-plugin:191.vcd207ef9dd24 slack:722.vd07f1ea_7ff40 snakeyaml-api:2.2-111.vc6598e30cc65 sse-gateway:1.27 ssh-agent:367.vf9076cd4ee21 ssh-credentials:337.v395d2403ccd4 ssh-slaves:2.973.v0fa_8c0dea_f9f sshd:3.330.vc866a_8389b_58 structs:338.v848422169819 theme-manager:262.vc57ee4a_eda_5d timestamper:1.27 token-macro:400.v35420b_922dcb_ trilead-api:2.147.vb_73cc728a_32e variant:60.v7290fc0eb_b_cd versioncolumn:243.vda_c20eea_a_8a_f warnings-ng:11.3.0 workflow-aggregator:600.vb_57cdd26fdd7 workflow-api:1316.v33eb_726c50b_a_ workflow-basic-steps:1058.vcb_fc1e3a_21a_9 workflow-cps:3903.v48a_8836749e9 workflow-durable-task-step:1360.v82d13453da_a_f workflow-job:1400.v7fd111b_ec82f workflow-multibranch:783.787.v50539468395f workflow-scm-step:427.v4ca_6512e7df1 workflow-step-api:657.v03b_e8115821b_ workflow-support:907.v6713a_ed8a_573 ws-cleanup:0.46 xcode-plugin:2.0.17-565.v1c48051d46ef ```

What Operating System are you using (both controller, and any agents involved in the problem)?

The controller is running Ubuntu Server 24.04 LTS. I tried accessing the Jenkins UI via Safari and Chrome and both yield the same results.

Reproduction steps

  1. Go to Manage Jenkins > Appearance
  2. Select "Dark (System)" as the default Screenshot 2024-07-08 at 1 19 00 AM
  3. Click "Save"
  4. Navigate to the pipeline-console output of a Jenkins build (e.g.: http:///job/bootstrap/4/pipeline-console/)
  5. Navigate to the "Jenkins > Manage Jenkins > Configuration as Code > View Configuration"

Expected Results

In step 2 of the reproductions steps, notice how the "Dark" them preview is different compared to the Jenkins Theme Manager plugin page. In step 3 and beyond, I expected to see a Dark theme on each Jenkins page.

Actual Results

Anything else?

No response

Are you interested in contributing a fix?

No response

timja commented 1 month ago

Probably Jenkins url misconfiguration, see https://github.com/jenkinsci/dark-theme-plugin/issues/153#issuecomment-760175256

bkhouri commented 1 month ago

Why would a Jenkins URL misconfiguration cause this issue? Fixing the Jenkins URL appears to have solved the problem. I was personally quite surprised to see the dark theme work after that. Can the plugin use a relative path from the host instead of requiring a proper URL?

On Wed, Jul 10, 2024 at 5:42 PM Tim Jacomb @.***> wrote:

Probably Jenkins url misconfiguration, see #153 (comment) https://github.com/jenkinsci/dark-theme-plugin/issues/153#issuecomment-760175256

— Reply to this email directly, view it on GitHub https://github.com/jenkinsci/dark-theme-plugin/issues/526#issuecomment-2221571442, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACTIWZLM3IUSMVA327NMSLTZLWTDRAVCNFSM6AAAAABKQCWHI2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMRRGU3TCNBUGI . You are receiving this because you authored the thread.Message ID: @.***>

timja commented 1 month ago

Relative URLs do not work as people can host Jenkins under different sub paths.

e.g mycompany.com/jenkins/dark-theme.css

It can try and extract the URL from request headers. But people often have that misconfigured too, and from experience I've found that people with issues here are more likely to be able to fix Jenkins configuration than misconfigured reverse proxies.

bkhouri commented 1 month ago

There is a Jenkins URL in the configuration that can be used in order to support relative paths!

On Thu, Jul 11, 2024 at 2:32 AM Tim Jacomb @.***> wrote:

Relative URLs do not work as people can host Jenkins under different sub paths.

e.g mycompany.com/jenkins/dark-theme.css

It can try and extract the URL from request headers. But people often have that misconfigured too, and from experience I've found that people with issues here are more likely to be able to fix Jenkins configuration than misconfigured reverse proxies.

— Reply to this email directly, view it on GitHub https://github.com/jenkinsci/dark-theme-plugin/issues/526#issuecomment-2222139144, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACTIWZIZFAACZ4SCDJTCIFTZLYRILAVCNFSM6AAAAABKQCWHI2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMRSGEZTSMJUGQ . You are receiving this because you authored the thread.Message ID: @.***>