Dates on web timeline don't respect locale/language settings #5906

Closed
opened 2026-02-05 11:50:53 +03:00 by OVERLORD · 0 comments
Owner

Originally created by @xathon on GitHub (Apr 27, 2025).

I have searched the existing issues, both open and closed, to make sure this is not a duplicate report.

  • Yes

The bug

On the main web timeline, the date headers (today/yesterday/Monday/...) and the month names on the right scrollbar can't be influenced by the language or locale settings. As an example, I set Immich's locale and language to French, but the dates stayed in English, my browser language:
Image

Reloading and clearing cache has no effect, and clearing cookies just reverts the locale settings.
When viewing metadata on a photo, the date format is correct.

The OS that Immich Server is running on

Debian 12

Version of Immich Server

v1.132.1

Version of Immich Mobile App

v1.132.1

Platform with the issue

  • Server
  • Web
  • Mobile

Your docker-compose.yml content

services:
  immich-server:
    container_name: immich_server
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - .env
    depends_on:
      - redis
      - database
    restart: always
    networks:
      - immich
      - internal
    labels:
      - com.centurylinklabs.watchtower.monitor-only=true
  immich-machine-learning:
    container_name: immich_machine_learning
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    volumes:
      - model-cache:/cache
    env_file:
      - .env
    restart: always
    networks:
      - immich
      - web
    labels:
      - com.centurylinklabs.watchtower.monitor-only=true
  redis:
    container_name: immich_redis
    labels:
      - com.centurylinklabs.watchtower.enable=false
    image: docker.io/valkey/valkey:8-bookworm@sha256:42cba146593a5ea9a622002c1b7cba5da7be248650cbb64ecb9c6c33d29794b1
    restart: always
    networks:
      - immich
  database:
    container_name: immich_postgres
    image: tensorchord/pgvecto-rs:pg14-v0.2.0
    env_file:
      - .env
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
    volumes:
      - pgdata:/var/lib/postgresql/data
    restart: always
    networks:
      - immich
  backup:
    container_name: immich_db_dumper
    image: prodrigestivill/postgres-backup-local:14
    env_file:
      - .env
    environment:
      POSTGRES_HOST: database
      POSTGRES_CLUSTER: "TRUE"
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      SCHEDULE: "@daily"
      POSTGRES_EXTRA_OPTS: --clean --if-exists
      BACKUP_DIR: /db_dumps
    volumes:
      - /data/files/photos/db-backup/:/db_dumps
    depends_on:
      - database
    networks:
      - immich
volumes:
  pgdata: null
  model-cache: null
networks:
  immich: null
  internal:
    external: true
  web:
    external: true

Your .env content

# You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables

# The location where your uploaded files are stored
UPLOAD_LOCATION=/data/files/photos

# The Immich version to use. You can pin this to a specific version like "v1.71.0"
IMMICH_VERSION=release

# Connection secrets for postgres and typesense. You should change these to random passwords
TYPESENSE_API_KEY=xxx
DB_PASSWORD=xxx


DISABLE_REVERSE_GEOCODING=false
REVERSE_GEOCODING_PRECISION=3

PUBLIC_IMMICH_SERVER_URL=https://xxx



# The values below this line do not need to be changed
###################################################################################
DB_HOSTNAME=immich_postgres
DB_USERNAME=postgres
DB_DATABASE_NAME=immich

REDIS_HOSTNAME=immich_redis


TZ=Europe/Berlin

IMMICH_TELEMETRY_INCLUDE=all

Reproduction steps

  1. set language and locale to one not matching your browser language
  2. observe changes and lack thereof in timeline

Relevant log output


Additional information

See also #17803, cc @atollk

Originally created by @xathon on GitHub (Apr 27, 2025). ### I have searched the existing issues, both open and closed, to make sure this is not a duplicate report. - [x] Yes ### The bug On the main web timeline, the date headers (today/yesterday/Monday/...) and the month names on the right scrollbar can't be influenced by the language or locale settings. As an example, I set Immich's locale and language to French, but the dates stayed in English, my browser language: ![Image](https://github.com/user-attachments/assets/c751b5e8-111f-4396-a305-d3739b96446d) Reloading and clearing cache has no effect, and clearing cookies just reverts the locale settings. When viewing metadata on a photo, the date format is correct. ### The OS that Immich Server is running on Debian 12 ### Version of Immich Server v1.132.1 ### Version of Immich Mobile App v1.132.1 ### Platform with the issue - [ ] Server - [x] Web - [ ] Mobile ### Your docker-compose.yml content ```YAML services: immich-server: container_name: immich_server image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload - /etc/localtime:/etc/localtime:ro env_file: - .env depends_on: - redis - database restart: always networks: - immich - internal labels: - com.centurylinklabs.watchtower.monitor-only=true immich-machine-learning: container_name: immich_machine_learning image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release} volumes: - model-cache:/cache env_file: - .env restart: always networks: - immich - web labels: - com.centurylinklabs.watchtower.monitor-only=true redis: container_name: immich_redis labels: - com.centurylinklabs.watchtower.enable=false image: docker.io/valkey/valkey:8-bookworm@sha256:42cba146593a5ea9a622002c1b7cba5da7be248650cbb64ecb9c6c33d29794b1 restart: always networks: - immich database: container_name: immich_postgres image: tensorchord/pgvecto-rs:pg14-v0.2.0 env_file: - .env environment: POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} volumes: - pgdata:/var/lib/postgresql/data restart: always networks: - immich backup: container_name: immich_db_dumper image: prodrigestivill/postgres-backup-local:14 env_file: - .env environment: POSTGRES_HOST: database POSTGRES_CLUSTER: "TRUE" POSTGRES_USER: ${DB_USERNAME} POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_DB: ${DB_DATABASE_NAME} SCHEDULE: "@daily" POSTGRES_EXTRA_OPTS: --clean --if-exists BACKUP_DIR: /db_dumps volumes: - /data/files/photos/db-backup/:/db_dumps depends_on: - database networks: - immich volumes: pgdata: null model-cache: null networks: immich: null internal: external: true web: external: true ``` ### Your .env content ```Shell # You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables # The location where your uploaded files are stored UPLOAD_LOCATION=/data/files/photos # The Immich version to use. You can pin this to a specific version like "v1.71.0" IMMICH_VERSION=release # Connection secrets for postgres and typesense. You should change these to random passwords TYPESENSE_API_KEY=xxx DB_PASSWORD=xxx DISABLE_REVERSE_GEOCODING=false REVERSE_GEOCODING_PRECISION=3 PUBLIC_IMMICH_SERVER_URL=https://xxx # The values below this line do not need to be changed ################################################################################### DB_HOSTNAME=immich_postgres DB_USERNAME=postgres DB_DATABASE_NAME=immich REDIS_HOSTNAME=immich_redis TZ=Europe/Berlin IMMICH_TELEMETRY_INCLUDE=all ``` ### Reproduction steps 1. set language and locale to one not matching your browser language 2. observe changes and lack thereof in timeline ### Relevant log output ```shell ``` ### Additional information See also #17803, cc @atollk
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#5906