[Bug]: Debian package contains a nonsense changelog
Can you reproduce this bug in the website/PWA?
Not applicable
Describe the bug
Please include a real changelog in the package, using FPM's --upstream-changelog flag.
What package are you using?
deb
Version
2.0.8
Reproduction steps
zcat /usr/share/doc/signal-desktop/changelog.gz
Expected Behavior
An actual list of changes.
Debug
$ zcat /usr/share/doc/teams-for-linux/changelog.gz
teams-for-linux (2.0.8) whatever; urgency=medium
* Package created with FPM.
-- Ismael Martinez <[email protected]> Fri, 11 Apr 2025 09:14:21 +0000
Additional context
Thankyou for packaging MS-Teams for Linux, it is appreciated.
Hi @miiichael , thanks for reporting. Can you specify where you get the deb package from? I tend to put reasonable release notes here in GitHub, but I don't maintain all the different releases that are out there.
I got it from your own repo? ð
michael@joyola:~$ apt-cache policy teams-for-linux
teams-for-linux:
Installed: 2.0.11
Candidate: 2.0.11
Version table:
*** 2.0.11 500
500 https://repo.teamsforlinux.de/debian stable/main amd64 Packages
100 /var/lib/dpkg/status
(BTW you're far from the only FPM user with this problem *points at Signal Desktop, PyCharm and Terraform*)
Hi @miiichael , that is not my repo per se, but provided by @nbuechner . (see https://github.com/IsmaelMartinez/teams-for-linux?tab=readme-ov-file#downloads) . The releases I manage are under https://github.com/IsmaelMartinez/teams-for-linux/releases (and snap)
The github release has the same changelog. I do not modify anything: ~/downloads/teams-for-linux_2.0.11_amd64
zcat ./usr/share/doc/teams-for-linux/changelog.gz teams-for-linux (2.0.11) whatever; urgency=medium
- Package created with FPM.
-- Ismael Martinez [email protected] Fri, 25 Apr 2025 11:49:10 +0000
got it. I will change it to a feature request, as it isnt' really a bug, but something we arent' adding to the packaged version.
https://www.electron.build/app-builder-lib.interface.releaseinfo
We will need to find a way to retrieve that information from the appdata.xml file (as otherwise we will triplicate the release notes). I don't know when I will have time to do this and, understandably, this has a lower priority than bugs and other issues as there are release notes provided in the releases page.
This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.
still a feature I hope to implement when I got some time
Hello! Can you check what you get now in the pre-release https://github.com/IsmaelMartinez/teams-for-linux/releases/tag/v2.0.17 ? I am not certain is fully working but I think I am almost there, but I suspect is now a JSON object, what I don't think is what you want/need
I used an AI agent that actually did help a fair bit, even if it when a bit bananas at times. As with this AI madness, I did review all multiple times. New tools, new times... thanks!
Installing 2.0.17:
I think we're not quite there yet. ð
well, then I am really not sure how this all works. I expected the electron-builder will do this as for the docs, but looks like it might not be possible. I will dig around when I get some time. Thanks for checking.
This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.
Comment.
apologies for the noise, did try to fix this but didn't work. I will see if I can have a look again, but it might just not be possible with electron.
This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.
Comment. ð
I will see if I can fix this, but I do suspect is something in the packaging system we use (electron-builder), so we might be limited. Thanks for adding a 'comment' to un-stale the issue
No rush!
This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.
*slaps idlebot around a bit with a large trout*
This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.
Comment. ðĪŠ
I really don't know if we will be able to ever support this and/or if this is a limitation of electron-builder. I keep it open and will try to give it a go in the near future.
Not a problem. As long as you don't mind me poking the stalebot periodically (when I notice in time). ð
no problem. I do need to try to change how long it leaves enhancements open. 1 month for bugs seems to be enough, but for enhancements it can be a bit annoying.
I have tried many options and I think there is a limitation in fpm that is what electron-builder uses . It might be related to the issue https://github.com/jordansissel/fpm/issues/1575 and https://github.com/electron-userland/electron-builder/issues/9317 looks similar (even if for mac, but I get this in the pipeline or docker machines). I don't think we can do much other than keeping an eye on those issues. Sorry but I think we can't fix this from here without implementing a bespoke packaging system.. that is well out of the scope of this project.
I am going to close this issue. I tried to use AI to summarise all the different tests I did, but unfortunately this is blocked upstream.
Closing Message for Issue #1691
Unable to Include Custom Changelog in deb/rpm Packages - Closing as Blocked
After thorough investigation, we're unable to implement this feature due to a limitation in how electron-builder passes file paths to FPM (the packaging tool it uses).
The Problem
When we attempt to include our generated changelog using FPM's flags:
"deb": {
"fpm": ["--deb-upstream-changelog=debian-changelog"]
}
FPM cannot resolve the file path, resulting in:
Error: No such file or directory @ rb_sysopen - /workspace/debian-changelog
Root cause: FPM resolves paths relative to its own working directory, not the project root. electron-builder doesn't provide a way to:
- Resolve file paths before passing them to FPM
- Control FPM's working directory
- Map files into FPM's execution context
This affects both --deb-upstream-changelog and --rpm-changelog flags.
What We've Tried
â
Generated a properly formatted Debian changelog from appdata.xml
â Cannot pass it to FPM due to path resolution issues
â lintianOverrides option doesn't exist in electron-builder
â System FPM (USE_SYSTEM_FPM=true) has the same limitation
Current Status
Closing as blocked pending upstream support from electron-builder for FPM file path resolution.
Where Users Can Find Changelog Information
While the .deb/.rpm packages contain only a generic FPM-generated changelog, detailed release information is available:
- GitHub Releases: https://github.com/IsmaelMartinez/teams-for-linux/releases
- appdata.xml: Included in packages, used by software centers (GNOME Software, KDE Discover)
Next Steps
We're reporting this limitation to electron-builder. If they add support for file path resolution in FPM flags, we can revisit this issue.