Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flatpak package #2076

Closed
the-mikedavis opened this issue Apr 11, 2022 Discussed in #1968 · 17 comments
Closed

Flatpak package #2076

the-mikedavis opened this issue Apr 11, 2022 Discussed in #1968 · 17 comments
Labels
A-packaging Area: Packaging and bundling E-help-wanted Call for participation: Extra attention is needed

Comments

@the-mikedavis
Copy link
Member

Discussed in #1968

Originally posted by martincalveira April 5, 2022
Hi!

Is it on the roadmap to create an Appimage or Flatpak package?

Thank you.

@the-mikedavis the-mikedavis added E-help-wanted Call for participation: Extra attention is needed A-packaging Area: Packaging and bundling labels Apr 11, 2022
@mtoohey31
Copy link
Contributor

I can try to put together an AppImage. I'm new to both AppImages and Flatpaks but I'm happy to learn. Based on some quick research, AppImage seems like it may be the better choice since it's more self-contained. If anyone with more experience with these things has an opinion though, please weigh in!

@sudormrfbin
Copy link
Member

AppImages don't require any kind of installer, and I've found that aspect of it useful when using Neovim's AppImages. "Make it executable and run" is quite easy to do. I haven't used Flatpak so not much opinions there.

@mtoohey31
Copy link
Contributor

AppImages seem to require a .desktop entry, so maybe I can close #1073 while I'm at it, but they also seem to require a png icon. As far as I can tell, this project doesn't have an icon yet, right?

@the-mikedavis
Copy link
Member Author

#283 has a brainstorm and there are a bunch of good ideas there but nothing chosen yet

@mtoohey31 mtoohey31 mentioned this issue Apr 12, 2022
3 tasks
@David-Else
Copy link
Contributor

David-Else commented Apr 13, 2022

If you (somehow) embed the right metadata in the Appimage then you can use https://github.com/AppImage/AppImageUpdate to auto update it, pretty cool!

It is still alpha software, but I am sure it will be fully working soon and it would be amazing to get auto-updating nightly releases at the press of a button :)

@mtoohey31
Copy link
Contributor

If you (somehow) embed the right metadata in the Appimage then you can use https://github.com/AppImage/AppImageUpdate to auto update it, pretty cool!

I take it you're referring to this part of the spec? It seems like supporting that is pretty simple with the linuxdeploy appimage, I'll see what I can do!

@snoopdouglas
Copy link

I'd like a Flatpak if possible. It's always really useful to have the option of an AppImage, but I like being able to update all of my apps from one place (ie. flatpak CLI, or the GNOME Software Center).

@the-mikedavis the-mikedavis changed the title Appimage or Flatpak package Flatpak package Aug 3, 2022
@blt-r
Copy link
Contributor

blt-r commented Jan 2, 2023

I packaged Helix as a flatpak. I wrote the appstream metadata myself, because I didn't find it anywhere. Also I made the package to work both on x86_64 and aarch64 by downloading corresponding archive from github releases. I didn't test it on aarch64 because I don't have the hardware. I don't see any reason why it wouldn't work but it's probably better to check.

Here is the package itself.

If everything is fine, then the only thing left to do is submit it to flathub.

@gabydd
Copy link
Member

gabydd commented Jan 2, 2023

Just fyi on https://github.com/blt-r/helix-flatpak/blob/main/com.helix_editor.Helix.yml#L4 should this be 22.12 instead of 22.08

@blt-r
Copy link
Contributor

blt-r commented Jan 3, 2023

Just fyi on https://github.com/blt-r/helix-flatpak/blob/main/com.helix_editor.Helix.yml#L4 should this be 22.12 instead of 22.08

No, 22.08 is version of org.freedesktop.Sdk, not the version of Helix

@gabydd
Copy link
Member

gabydd commented Jan 3, 2023

Oh makes sense sorry about that

@blt-r
Copy link
Contributor

blt-r commented Jan 6, 2023

Helix is now available on Flathub.
Some things about this package:

  • Your config will be in ~/.var/app/com.helix_editor.Helix/config/helix
  • To use language servers installed on host system you will have to invoke them with flatpak-spawn --host.
    For example:
    [[language]]
    name = "rust"
    language-server = { command = "flatpak-spawn", args = ["--host", "rust-analyzer"] }

@the-mikedavis
Copy link
Member Author

Awesome, thank you!

@ZennMystic
Copy link

see base help with like Dart and Rust... And some other stuff and not clear on....

Could someone please help and guide me though a complete for C/C++ (and bash scrips maybe?)
I installed via flatpak and installed clangd and its in my path.. But I get red x when I do hx health check thing...
I total lost on howto to setup to work

please help?

Oh yes I am on Debian 12 x64

@blt-r
Copy link
Contributor

blt-r commented Sep 18, 2023

The flatpak is running inside of a container, which means it doesn't integrate with your host system and can't access executables installed on it. If you want helix to be integrated into your host system it's better to install it as a native package.

If you want to set up helix flatpak to work with clangd you need to install flatpak sdk extension. There are instructions on how to do that in this file. You were supposed to see that file the first time you ran helix, but maybe you opened another file so that one was in a different buffer.

@ZennMystic
Copy link

Yea ok thank you... But I totally lost... I do not know rust nor I'm in interested in.. But I still have to install cargo to use Helix? I is not understands what I have to do with flatpak to use Helix either.
clangd is native but Helix was flatpak.
Is place I could post for help?

@blt-r
Copy link
Contributor

blt-r commented Sep 18, 2023

You don't need cargo to install helix. Read through that file, it explains how to add sdk extensions for different languages. To get clangd you will need llvm16 sdk extension.

Or find a way to install helix natively, so you can use clangd installed on your host system.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-packaging Area: Packaging and bundling E-help-wanted Call for participation: Extra attention is needed
Projects
None yet
Development

No branches or pull requests

8 participants