Commit 91d6449
authored
Fix Studio app metadata for Linux software stores (#3335)
## Related issues
- Fixes
[RSM-1313](https://linear.app/a8c/issue/RSM-1313/fix-studio-app-description-in-the-stores-on-linux-systems)
## How AI was used in this PR
Used AI to:
- Pull the canonical Microsoft Store description copy from the Store API
and adapt it for the Linux package metadata.
- Walk through electron-installer-debian's defaults and template logic
to identify why the synopsis and extended description were duplicating
in the .deb control file.
I reviewed each diff and pushed back on changes I didn't think were
right (e.g. an earlier draft used `genericName` for `Name=`, which
mismatched the runtime WMClass).
## Proposed Changes
- **`forge.config.ts` MakerDeb options**: set explicit `productName:
'WordPress Studio'` and `description` (synopsis) + `productDescription`
(long, mirrors MS Store copy in ASCII-safe punctuation). Without these,
both fields fall back to `package.json.description`, producing a
duplicated Description block.
- **`desktop.ejs`**: hardcode `StartupWMClass=Studio` so the launcher
entry stays linked to Electron's runtime WMClass even though `Name=` is
now `WordPress Studio`. Without this, the launcher icon would not group
with the running window.
## Testing Instructions
On a Linux VM:
1. Build the .deb: `npm run make`.
2. Purge any prior install (for a clean slate): `sudo apt purge studio`.
3. Verify package metadata:
- `dpkg-deb -I apps/studio/out/make/deb/<arch>/studio_*.deb`
- `dpkg-deb --fsys-tarfile apps/studio/out/make/deb/<arch>/studio_*.deb
| tar -xO ./usr/share/applications/studio.desktop`
4. Confirm title and description in the output above:
- control `Description:` — new synopsis ("Meet Studio - ...") followed
by the 3-paragraph long description.
- `.desktop` — `Name=WordPress Studio`, `Comment=Meet Studio - ...`,
`StartupWMClass=Studio`.
5. Open the .deb in the app center (double-click in Files, or `xdg-open
apps/studio/out/make/deb/<arch>/studio_*.deb`).
6. Confirm title and description in the app center preview match the new
copy. (See Known limitation re: title.)
<img width="1926" height="1536" alt="CleanShot 2026-05-04 at 22 37
20@2x"
src="https://github.com/user-attachments/assets/a837549d-fa30-482b-afaa-596cf6d7df71"
/>
### Known limitation
The pre-install software-store preview shows the lowercase Debian
package name (`studio`) as the title, not `WordPress Studio`.
PackageKit's local-deb plugin doesn't read AppStream metainfo from
inside .deb files, only the control fields, and `Package:` must be
lowercase per Debian policy. Renaming the package to `wordpress-studio`
would address this but cascades into install paths, postinst probes, and
`rc`-state migrations for users with existing `studio` installs —
leaving for a follow-up issue.
## Pre-merge Checklist
- [ ] Verified the rebuilt .deb's control + .desktop files
- [ ] Verified software-store listing renders proper metadata after
install1 parent b4d0a3c commit 91d6449
3 files changed
Lines changed: 15 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
82 | 82 | | |
83 | 83 | | |
84 | 84 | | |
85 | | - | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
86 | 89 | | |
87 | 90 | | |
88 | 91 | | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
89 | 99 | | |
90 | 100 | | |
91 | 101 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
10 | 12 | | |
11 | 13 | | |
12 | 14 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
8 | 9 | | |
9 | 10 | | |
10 | 11 | | |
| |||
0 commit comments