teams-for-linux icon indicating copy to clipboard operation
teams-for-linux copied to clipboard

[Bug]: Debian package contains a nonsense changelog

Open miiichael opened this issue 8 months ago â€Ē 10 comments

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.

miiichael avatar May 01 '25 01:05 miiichael

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.

IsmaelMartinez avatar May 05 '25 08:05 IsmaelMartinez

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*)

miiichael avatar May 06 '25 01:05 miiichael

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)

IsmaelMartinez avatar May 06 '25 08:05 IsmaelMartinez

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

nbuechner avatar May 06 '25 11:05 nbuechner

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.

IsmaelMartinez avatar May 06 '25 16:05 IsmaelMartinez

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.

github-actions[bot] avatar Jun 06 '25 09:06 github-actions[bot]

still a feature I hope to implement when I got some time

IsmaelMartinez avatar Jun 07 '25 08:06 IsmaelMartinez

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!

IsmaelMartinez avatar Jun 15 '25 05:06 IsmaelMartinez

Installing 2.0.17:

Image

I think we're not quite there yet. 😅

miiichael avatar Jun 17 '25 13:06 miiichael

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.

IsmaelMartinez avatar Jun 17 '25 21:06 IsmaelMartinez

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.

github-actions[bot] avatar Jul 18 '25 09:07 github-actions[bot]

Comment.

miiichael avatar Jul 19 '25 06:07 miiichael

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.

IsmaelMartinez avatar Jul 27 '25 19:07 IsmaelMartinez

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.

github-actions[bot] avatar Aug 27 '25 09:08 github-actions[bot]

Comment. 😅

miiichael avatar Aug 28 '25 01:08 miiichael

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

IsmaelMartinez avatar Aug 28 '25 08:08 IsmaelMartinez

No rush!

miiichael avatar Sep 01 '25 07:09 miiichael

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.

github-actions[bot] avatar Oct 01 '25 09:10 github-actions[bot]

*slaps idlebot around a bit with a large trout*

miiichael avatar Oct 03 '25 00:10 miiichael

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.

github-actions[bot] avatar Nov 03 '25 09:11 github-actions[bot]

Comment. ðŸĪŠ

miiichael avatar Nov 03 '25 09:11 miiichael

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.

IsmaelMartinez avatar Nov 04 '25 07:11 IsmaelMartinez

Not a problem. As long as you don't mind me poking the stalebot periodically (when I notice in time). 😅

miiichael avatar Nov 04 '25 08:11 miiichael

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.

IsmaelMartinez avatar Nov 04 '25 10:11 IsmaelMartinez

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.

IsmaelMartinez avatar Nov 05 '25 06:11 IsmaelMartinez

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.


IsmaelMartinez avatar Nov 07 '25 11:11 IsmaelMartinez