8000 Bug: apply from online repository panics · Issue #511 · comtrya/comtrya · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Bug: apply from online repository panics #511

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

Closed
thebino opened this issue Nov 18, 2024 · 12 comments
Closed

Bug: apply from online repository panics #511

thebino opened this issue Nov 18, 2024 · 12 comments
Milestone

Comments

@thebino
Copy link
thebino commented Nov 18, 2024

Description
When I try to apply my manifests from repository, it fails.

Example manifest

comtrya -d https://github.com/thebino/dotfiles apply -m apps.gnupg
ERROR execute: Failed to find manifests at https://github.com/thebino/dotfiles
thread 'main' panicked at lib/src/manifests/mod.rs:57:13:
explicit panic
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Steps to reproduce
Step by step explanation. Please add the output of with -vvv flag enabled (be careful not to include any secrets from your config).

Expected behaviour
What the expected behaviour in your opinion.

Environment

  • OS: macOS Sequoia
  • Version: 0.9.0

Additional information
Add more context which didn't fit in the fields above.

@martintc
Copy link
Member
martintc commented Nov 18, 2024

Since I pushed new releases rather fast with v0.8.9 and v0.9.0, which is why it probably why you didnt catch it until v0.9.0, but we axed the git integration with comtrya in #439 due to all of the issues it presents with openssl. The thought is, eventually we will bring it back when a suitable replacement like gitoxide is ready, or some other alternative. But until then, the integration with git2-rs is too fragile and finicky because of openssl and causes constant headaches.

@thebino
Copy link
Author
thebino commented Nov 19, 2024

Okay got it, would love to see it coming back soon.
Its makes it a breathe to share configurations between devices and installations

@martintc
Copy link
Member

Yea, it does. Over the next few days I am going to play around with gix and gitoxide and see if it finally has what we need. Last time I checked was about 6 months ago, so lets hope.

@martintc martintc added this to the v0.9.1 milestone Nov 28, 2024
@martintc
Copy link
Member

Sorry I've been quiet on this. I think I have a path. I've got a little test project that does some interaction with the gix library. It is gonna pull in quite a few transitive dependencies, but I am also gonna try to whittle it down using feature flags. With some little bit of cutting with feature flags, I believe it required about 180 dependencies. I think I can get that lower.

To make the code a little cleaner in comtrya, I may wrap gix in a separate repo so and pull it in as a dependency sort of like how @rawkode did the initial git integration with his git-sync library. I may also take another stab at using git-sync, but having it use six with a feature flag. This was a path I was going down last year.

@thebino
Copy link
Author
thebino commented Nov 29, 2024

I'm really not in a hurry here, I understand that this requires a deep investigation and lots of tests to make it right this time. I haven' red the issues you mentioned yet but maybe I'll find time in the wintermonths. Thanks a lot for your contribution 🎉

@martintc martintc mentioned this issue Dec 5, 2024
3 tasks
@martintc
Copy link
Member
martintc commented Dec 5, 2024

@thebino if your able to, I have the beginnings of the solution. This doesn't quiet yet solve using git as a source for manifests, but its a start with first implementing a git.clone action based on using gix in lieu of git2rs/git-sync/openssl. If you're able to build that branch and run a couple test manifests with a git.clone action, it would be much appreciated. If this works well for people, then rebuilding using git as a manifest source should be trivial since this is the heart of that.

@martintc
Copy link
Member
martintc commented Dec 5, 2024

If you do, just be advise that I have changed the action slightly. An example manifest is in that branch.

@thebino
Copy link
Author
thebino commented Dec 5, 2024

I just tested it and it went smooth: thebino/dotfiles@a574dbe

Will look forward to check the whole manifest repo from url again 🎉

@martintc
Copy link
Member
martintc commented Dec 14, 2024

I think that PR is a good start to getting souring manifests from git repos with gix. If you wouldn't mind sanity checking it for me before I pull it in. It runs on my machine, but those are the famous last words, haha.

@thebino
Copy link
Author
thebino commented Dec 16, 2024

Tested successfully on a M4 Mac. And I'm building it on a Raspberry Pi 1 right now 😂

@martintc
Copy link
Member

Tested successfully on a M4 Mac. And I'm building it on a Raspberry Pi 1 right now 😂

Sweet! I really appreciate you testing this out and validating the functionality for me!

@martintc
Copy link
Member

I am going to go-ahead and close this issue. If there is anything missing, let me know with a new issue. Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants
0