Solved - Fresh install Debian 13 - no favicon, no RQ Job (emails not sending)

I tried installing via this script.

I created an issue on the GitHub repository.

● supervisor.service - Supervisor process control system for UNIX
     Loaded: loaded (/usr/lib/systemd/system/supervisor.service; enabled; preset: enabled)
     Active: active (running) since Sun 2025-10-12 15:28:26 EDT; 14min ago
 Invocation: 7e1935caf89242c0bc0e0eb48c619710
       Docs: http://supervisord.org
   Main PID: 805 (supervisord)
      Tasks: 39 (limit: 9417)
     Memory: 790.4M (peak: 791.3M)
        CPU: 11.381s
     CGroup: /system.slice/supervisor.service
             ├─ 805 /usr/bin/python3 /usr/bin/supervisord -n -c /etc/supervisor/supervisord.conf
             ├─1040 "/usr/bin/redis-server 127.0.0.1:13000"
             ├─1041 "/usr/bin/redis-server 127.0.0.1:11000"
             ├─1042 /home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/env/bin/gunicorn -b 127.0.0.1:8000 -w 9 --max-requests 5000 --max-requests-jitter 500 -t 120 --graceful-timeout 30 frapp>
             ├─1048 /home/frappe/.nvm/versions/node/v18.20.8/bin/node /home/frappe/frappe-bench/apps/frappe/socketio.js
             ├─1049 /home/frappe/frappe-bench/env/bin/python -m frappe.utils.bench_helper frappe schedule
             ├─1050 /home/frappe/frappe-bench/env/bin/python -m frappe.utils.bench_helper frappe worker --queue short,default
             ├─1051 /home/frappe/frappe-bench/env/bin/python -m frappe.utils.bench_helper frappe worker --queue long,default,short
             ├─1103 /home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/env/bin/gunicorn -b 127.0.0.1:8000 -w 9 --max-requests 5000 --max-requests-jitter 500 -t 120 --graceful-timeout 30 frapp>
             ├─1104 /home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/env/bin/gunicorn -b 127.0.0.1:8000 -w 9 --max-requests 5000 --max-requests-jitter 500 -t 120 --graceful-timeout 30 frapp>
             ├─1105 /home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/env/bin/gunicorn -b 127.0.0.1:8000 -w 9 --max-requests 5000 --max-requests-jitter 500 -t 120 --graceful-timeout 30 frapp>
             ├─1106 /home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/env/bin/gunicorn -b 127.0.0.1:8000 -w 9 --max-requests 5000 --max-requests-jitter 500 -t 120 --graceful-timeout 30 frapp>
             ├─1107 /home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/env/bin/gunicorn -b 127.0.0.1:8000 -w 9 --max-requests 5000 --max-requests-jitter 500 -t 120 --graceful-timeout 30 frapp>
             ├─1108 /home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/env/bin/gunicorn -b 127.0.0.1:8000 -w 9 --max-requests 5000 --max-requests-jitter 500 -t 120 --graceful-timeout 30 frapp>
             ├─1109 /home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/env/bin/gunicorn -b 127.0.0.1:8000 -w 9 --max-requests 5000 --max-requests-jitter 500 -t 120 --graceful-timeout 30 frapp>
             ├─1110 /home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/env/bin/gunicorn -b 127.0.0.1:8000 -w 9 --max-requests 5000 --max-requests-jitter 500 -t 120 --graceful-timeout 30 frapp>
             └─1111 /home/frappe/frappe-bench/env/bin/python /home/frappe/frappe-bench/env/bin/gunicorn -b 127.0.0.1:8000 -w 9 --max-requests 5000 --max-requests-jitter 500 -t 120 --graceful-timeout 30 frapp>

Oct 12 15:28:27 deb13 supervisord[805]: 2025-10-12 15:28:27,863 INFO spawned: 'frappe-bench-frappe-schedule' with pid 1049
Oct 12 15:28:27 deb13 supervisord[805]: 2025-10-12 15:28:27,864 INFO spawned: 'frappe-bench-frappe-short-worker-0' with pid 1050
Oct 12 15:28:27 deb13 supervisord[805]: 2025-10-12 15:28:27,864 INFO spawned: 'frappe-bench-frappe-long-worker-0' with pid 1051
Oct 12 15:28:28 deb13 supervisord[805]: 2025-10-12 15:28:28,941 INFO success: frappe-bench-redis-cache entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
Oct 12 15:28:28 deb13 supervisord[805]: 2025-10-12 15:28:28,941 INFO success: frappe-bench-redis-queue entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
Oct 12 15:28:28 deb13 supervisord[805]: 2025-10-12 15:28:28,941 INFO success: frappe-bench-frappe-web entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
Oct 12 15:28:28 deb13 supervisord[805]: 2025-10-12 15:28:28,941 INFO success: frappe-bench-node-socketio entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
Oct 12 15:28:28 deb13 supervisord[805]: 2025-10-12 15:28:28,942 INFO success: frappe-bench-frappe-schedule entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
Oct 12 15:28:28 deb13 supervisord[805]: 2025-10-12 15:28:28,942 INFO success: frappe-bench-frappe-short-worker-0 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
Oct 12 15:28:28 deb13 supervisord[805]: 2025-10-12 15:28:28,942 INFO success: frappe-bench-frappe-long-worker-0 entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
frappe@deb13:~/frappe-bench$ bench doctor
-----Checking scheduler status-----
Workers online: 2
-----None Jobs-----
frappe@deb13:~/frappe-bench$ bench restart
$ supervisorctl restart frappe-bench-web:
frappe-bench-web:frappe-bench-node-socketio: stopped
frappe-bench-web:frappe-bench-frappe-web: stopped
frappe-bench-web:frappe-bench-frappe-web: started
frappe-bench-web:frappe-bench-node-socketio: started
$ supervisorctl restart frappe-bench-workers:
frappe-bench-workers:frappe-bench-frappe-schedule: stopped
frappe-bench-workers:frappe-bench-frappe-short-worker-0: stopped
frappe-bench-workers:frappe-bench-frappe-long-worker-0: stopped
frappe-bench-workers:frappe-bench-frappe-schedule: started
frappe-bench-workers:frappe-bench-frappe-short-worker-0: started
frappe-bench-workers:frappe-bench-frappe-long-worker-0: started

frappe@deb13:~/frappe-bench$ ls -al apps/erpnext/erpnext/public/images/erpnext-favicon.svg
-rw-rw-r-- 1 frappe frappe 455 Oct 12 11:34 apps/erpnext/erpnext/public/images/erpnext-favicon.svg

I’ve tried disabling>enabling and also resuming the scheduler (no change).

Installed Apps
ERPNext: v15.82.2 (version-15)
Frappe Framework: v15.85.1 (version-15)
Frappe HR: v15.50.3 (version-15)
Payments: v0.0.1 (version-15)

Any hints on what to check for either the missing favicon or the email queue not sending (I can manually send emails in the queue)?

EDIT: I just ran bench build and migrate for the site again. I saw this:

frappe@deb13:~/frappe-bench$ bench build
Assets for Release v15.85.1 don't exist
✔ Application Assets Linked                                                                                                                                 

I thought perhaps this would fix the favicon, but it still doesn’t show. I now see the first job in the RQ Jobs (rebuilding the index). This is a good sign. Fingers crossed for seeing the email queue cleanup job!

EDIT-2:
I think there is an odd issue with the clock/time. I see the previous and next run for the frappe.email.queue.retry_sending_emails is four hours in the future.
My server time is correct:

frappe@deb13:~/frappe-bench$ date
Sun Oct 12 05:56:31 PM EDT 2025

I will try changing the time in the job previous/next run directly in the database to see if that fixes the issue.

EDIT-3:
After changing the time in the database, the Job frappe.email.queue.retry_sending_emails runs every four minutes. I turned on “create log” for the Scheduled Job Type (queue.retry_sending_emails). This creates a simple log entry, without any details, but emails in the queue still are not sent :frowning:

EDIT-4:
I was looking at the wrong scheduled job. retry_sending is for emails that are in the “sending” state. I had to change the last_execution dateTime for frappe.email.queue.flush. I assume this is caused by setting the time zone during the install wizard for ERPNext. I wonder if this should be considered a bug, it was annoying to run down this rabbit hole. I think this will explain the reason other users’ symptoms of email sending not working, then mysteriously it starts working sometime later.

Now I just need to figure out why the Favicon is not displaying. Some persistent browser cache was causing the favicon not to show. It’s working after clearing browser cache and restarting the browser.