How to create a custom Desktop Icon? I tried adding records in Desktop Icon list and added a workspace sidebar which I linked to the desktop icon.
Workspace Sidebar -
But still the desktop icon does not show.
When I click on “view sidebar” in workspace sidebar, I get this error -
“Uncaught (in promise) TypeError: can’t access property “toLowerCase”, name2 is undefined”
Any help is appreciated.
Thanks
The whole Desktop and custom workspaces is broken in v16. Either that or the documentation is inadequate. I have been trying to put a custom icon on the desktop through different means but does not work at all.
1 Like
It took me quite a long time to figure out, but what I eventually got to work is to create a JSON file in a custom app. In your custom app create a folder named desktop_icon and then inside here create a file named <your icon name>.json. Inside the file put something like the following:
{
"app": "business",
"creation": "2026-04-09 16:46:16",
"docstatus": 0,
"doctype": "Desktop Icon",
"hidden": 0,
"icon": "",
"icon_type": "Link",
"idx": 0,
"label": "Sales",
"link_to": "Sales",
"link_type": "Workspace Sidebar",
"logo_url": "/assets/business/img/sales.svg",
"modified": "2026-04-09 16:46:16",
"modified_by": "Administrator",
"name": "Sales",
"owner": "Administrator",
"restrict_removal": 0,
"roles": [],
"standard": 1
}
Then do a bench migrate to see it get reflected. Few other things I noticed are:
- All the existing icons have the idx set to 0. So if you want this custom icon to appear first in the list, you have to do a bulk edit of the other ones changing the idx to a higher number.
- I don’t have a clear understanding of what standard does, but if it’s set to 0 the icons won’t display.
- If after the migrate the new icon still doesn’t show, try to do a cache clear and/or check out
Desktop Layout. If there are documents in here, you may need to delete those before new icons will take effect.