theia icon indicating copy to clipboard operation
theia copied to clipboard

Increase Eclipse Theia presence via the Ubuntu Store or PPA

Open kevintanhongann opened this issue 1 year ago • 55 comments

Increase Eclipse Theia presence via the Ubuntu Store or PPA. At least people get to easily install Eclipse Theia and try it out.

kevintanhongann avatar Jun 30 '24 13:06 kevintanhongann

I find this pretty interesting, we also got requests about Debian. @kevintanhongann Do you have experience publishing something to Ubuntu store?

JonasHelming avatar Jul 01 '24 07:07 JonasHelming

@JonasHelming unfortunately no. Is there also way to package the app into a .deb package? I think that is the easiest way for people to install Theia on Ubuntu and straight away have the app icon available in the start menu.

kevintanhongann avatar Jul 01 '24 07:07 kevintanhongann

We will do an investigation of this feature request

JonasHelming avatar Jul 01 '24 07:07 JonasHelming

Useful links

https://askubuntu.com/questions/290871/uploading-apps-to-the-ubuntu-software-center

https://snapcraft.io/

Hope that helps.

kevintanhongann avatar Jul 03 '24 00:07 kevintanhongann

Thanks, we started to discuss this!

JonasHelming avatar Jul 03 '24 07:07 JonasHelming

Just adding more useful links, you can get some help on the forum

alculete avatar Jul 30 '24 19:07 alculete

Electron Builder supports building both .deb and Snap packages. We currently have a .dev package available here: https://download.eclipse.org/theia/ide/1.51.0/linux/. However, please note that since this was not part of our official release, it has not been extensively tested. We would also have to check how to automatically publish this to a PPA.

To support Snap packages, we would need to enable Snap builds and then explore options for automatically publishing them to the Snap Store.

jfaltermeier avatar Aug 05 '24 12:08 jfaltermeier

@kevintanhongann Do you want to give the .deb package a try? The latest version is here: https://download.eclipse.org/theia/ide/1.52.0/linux/

JonasHelming avatar Aug 06 '24 07:08 JonasHelming

@JonasHelming I played around with the .Deb package yesterday. Installed it using gdebi and installs perfectly. Just the icons on the task bar didn't show properly(it shows the gearbox icon). Still pretty good effort btw.

kevintanhongann avatar Aug 06 '24 07:08 kevintanhongann

See https://github.com/eclipse-theia/theia-blueprint/pull/372 We will try to review this PR soon.

JonasHelming avatar Aug 08 '24 07:08 JonasHelming

@JonasHelming, is there any plan for the snap version or will only stay available as AppImage and DEB?

alculete avatar Aug 19 '24 12:08 alculete

I cannot only answer that we (EclipseSource) currently do not have immediate plans to work on a snap version, but we might work on this in the future. Theia is an open source project, so maybe some other party is interested in working on this. Would you be interested in a contribution?

JonasHelming avatar Aug 19 '24 20:08 JonasHelming

Unfortunately, I have never worked with snaps. I have mentioned your project in the snap forum, maybe they will build in the future.

alculete avatar Aug 19 '24 20:08 alculete

Unfortunately, I have never worked with snaps. I have mentioned your project in the snap forum, maybe they will build in the future.

Thanks, that would be very cool and we are definitively willing to provide support to them!

JonasHelming avatar Aug 19 '24 20:08 JonasHelming

Created https://github.com/Mailaender/theia-ide-snap and submitted theia-ide for review by @Canonical. I would like to get the git repository moved into the @eclipse-theia organization, as the preferred way for this is upstream maintenance. Please register an @eclipse store brand account, so I can hand this over properly.

See https://github.com/eclipse-theia/theia-blueprint/pull/372 We will try to review this PR soon.

Yes, please do for the next release, so I can finally remove the workaround to display icons and also, please don't ignore https://github.com/eclipse-theia/theia-blueprint/pull/371 as the right click open folder is the main way I start these type of IDEs.

Mailaender avatar Sep 07 '24 14:09 Mailaender

Hi @Mailaender

this is really great! I have a couple of questions.

  1. Repo https://github.com/Mailaender/theia-ide-snap is currently private. Do you mind making it public, so we have can have a look whats inside?
  2. Brand Account If you maintain the classic Eclipse IDE, what brand account is used for this? I agree it makes sense to get an Eclipse brand account, but this would need to be done by the Eclipse Foundation.
  3. Process Can you quickly describe the process with all necessary steps to publish a new release, once the everything is in place? Would you be willing to contribute to this process too (of course no commitment forever necessary :-) )

Thank you for driving this!

JonasHelming avatar Sep 09 '24 14:09 JonasHelming

  1. Made https://github.com/Mailaender/theia-ide-snap public. Sorry
  2. The classic IDE is currently maintained by @snapcrafters, but they will delete the package when an official entity comes along and takes over.
  3. I like Theia so updating the snap scratches my own itch. Automatizing is as simple as parsing YAML and updating a version string and sending a pull request. If you provide me with access to your Jenkins, then I could set up something using GitHub CLI.

Mailaender avatar Sep 09 '24 16:09 Mailaender

Thank you for publishing the repo. Do I understand correctly: If some would:

  1. Update the version number in the repo
  2. Execute this Github Action

A new version of the snap package would be published? Or only built for now?

"Automatizing is as simple as parsing YAML and updating a version string and sending a pull request. If you provide me with access to your Jenkins, then I could set up something using GitHub CLI." => Is this about automizing the update, i.e. the two steps mentioned above? If so, I believe it might not be worth automating, at least not in the first place :-)

JonasHelming avatar Sep 10 '24 11:09 JonasHelming

Added https://github.com/Mailaender/theia-ide-snap/actions/workflows/publish.yml to display how publishing works now that the package name has been approved. Updating a stable version is basically just editing the version number. It rebuilds and publishes automatically on commit. Also requested https://forum.snapcraft.io/t/classic-confinement-for-theia-ide/41947 so we are allowed to disable sandboxing.

Mailaender avatar Sep 10 '24 13:09 Mailaender

Sounds perfect, added it to the agenda for today: https://github.com/eclipse-theia/theia/wiki/Dev-Meetings

One final question for now: Is there any signing required?

JonasHelming avatar Sep 10 '24 13:09 JonasHelming

No signing is required if you mean code signing or contract signing.

Mailaender avatar Sep 10 '24 13:09 Mailaender

People in our call were really to see your initiative. One question that came up: Would it also be an option to have this hosted at SnapCrafters (like the eclipse IDE)?

JonasHelming avatar Sep 10 '24 14:09 JonasHelming

I am not a member of @snapcrafters so I can't really. As far as I understand it, that is a community initiative for cases when upstream has not embraced snap themselves yet and not an official repository like @flathub for @flatpak.

Mailaender avatar Sep 10 '24 14:09 Mailaender

OK, but this means, if they accepted contributions to the Eclipse IDE, they also might accept your contribution of the Theia IDE, right? The reason I ask is that i fear it might take a while until we have an official brand account.

JonasHelming avatar Sep 10 '24 14:09 JonasHelming

Filed https://forum.snapcraft.io/t/matthias-mailander-snapcrafters-membership-application/41949

Mailaender avatar Sep 10 '24 14:09 Mailaender

Regarding https://forum.snapcraft.io/t/matthias-mailander-snapcrafters-membership-application/41949/6 How is the progress on the Eclipse brand account? Did you create a ticket at gitlab already?

Mailaender avatar Sep 13 '24 16:09 Mailaender

I have this on my todo list, but did not do yet. Thinking about it: What would be the advantage compared to snapcrafters? Maybe an Eclipse brand account would be more trustful. However, in this case, the maintainers of Theia and more importantly of the Eclipse IDE would need to maintain this. While for Theia I can control it, I am not sure if there is interest for the Eclipse IDE. WDYT? Would you be fine with going for snapcrafters for now?

JonasHelming avatar Sep 17 '24 11:09 JonasHelming

The @Snapcrafters asked if they can upstream their IDE snap because that is their policy so this is currently stuck between the both of you. I asked at https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/issues/5021 now myself to get this going again.

Mailaender avatar Sep 17 '24 12:09 Mailaender

Thank you for creating the issue. "currently stuck between the both of you" => Please note that the Eclipse IDE and the Theia IDE are dedicated projects (both hosted at the Eclipse Foundation) and the maintainers of the Theia IDE (including me) are not maintaining the Eclipse IDE and are also no from the Eclipse Foundation. I just wanted to clarify that this is only about the Theia IDE, let's focus on this.

JonasHelming avatar Sep 17 '24 12:09 JonasHelming

I meant I was stuck between @snapcrafters wanting upstream maintenance and you opting for @snapcrafters as a quick intermediate solution. My https://forum.snapcraft.io/t/classic-confinement-for-theia-ide/41947 is also unanswered. There are instructions in the README on how to compile locally while we wait.

Mailaender avatar Sep 17 '24 12:09 Mailaender