Skip to content

devpod-desktop: refactor; devpod{,-desktop}: 0.5.20 -> 0.6.15#341884

Merged
doronbehar merged 2 commits intoNixOS:masterfrom
TomaSajt:devpod
Apr 29, 2025
Merged

devpod-desktop: refactor; devpod{,-desktop}: 0.5.20 -> 0.6.15#341884
doronbehar merged 2 commits intoNixOS:masterfrom
TomaSajt:devpod

Conversation

@TomaSajt
Copy link
Contributor

@TomaSajt TomaSajt commented Sep 14, 2024

Description of changes

I did a refactor of devpod-desktop

  • combine the frontent derivation into the main derivation
  • use cargo-tauri.hook
  • patch out sidecar file logic
  • patch out schema registering logic
  • add glib-networking for image loading
  • add darwin support
  • add myself as a maintainer

Tracking issue for removal of mkYarnPackage usages: #324246

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@ofborg ofborg bot added the 6.topic: darwin Running or building packages on Darwin label Sep 14, 2024
@TomaSajt TomaSajt marked this pull request as ready for review September 14, 2024 17:45
@TomaSajt TomaSajt requested a review from maxbrunet September 14, 2024 17:51
@ofborg ofborg bot added 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. 11.by: package-maintainer This PR was created by a maintainer of all the package it changes. labels Sep 14, 2024
@TomaSajt TomaSajt changed the title devpod-desktop: unbreak, refactor, add darwin support devpod-desktop: use cargo-tauri.hook, add darwin support Oct 10, 2024
@TomaSajt TomaSajt marked this pull request as draft October 30, 2024 10:51
@wegank wegank added the 2.status: merge conflict This PR has merge conflicts with the target branch label Nov 1, 2024
@TomaSajt TomaSajt force-pushed the devpod branch 3 times, most recently from 530a944 to f687e9d Compare November 4, 2024 21:12
@TomaSajt TomaSajt marked this pull request as ready for review November 4, 2024 22:08
@ofborg ofborg bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Nov 5, 2024
@wegank wegank added the 2.status: merge conflict This PR has merge conflicts with the target branch label Dec 10, 2024
@nyabinary
Copy link
Contributor

Merge conflict :3

@TomaSajt TomaSajt changed the title devpod-desktop: use cargo-tauri.hook, add darwin support devpod-desktop: use cargo-tauri_1.hook, add darwin support Apr 13, 2025
@ofborg ofborg bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Apr 13, 2025
@TomaSajt
Copy link
Contributor Author

Merge conflict :3

Resolved

@LordGrimmauld
Copy link
Contributor

Devpod 0.5.x is stuck on Tauri v1.
The automatic updates to 0.6.x are obviously failing, as webkltgtk and other dependencies break with the update, see #346139

I went and did the update to 0.6.15 myself, mostly hoping to drop yet another libsoup_2_4 dependency:
LordGrimmauld@d20f03b

Feel free to cherry-pick that into this PR. If not thats fine too, then i'll open this as a follow-up.

Copy link
Contributor

@LordGrimmauld LordGrimmauld left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't test darwin, but the linux version seems to build and is already significantly more maintainable thanks to tauri hook. Good work!

@nyabinary
Copy link
Contributor

If you do cherry-pick mind replacing the rec with finalAttrs and remove meta with lib usage?

Copy link
Contributor

@LordGrimmauld LordGrimmauld left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makes sense, thanks!

@TomaSajt
Copy link
Contributor Author

I'll also add desktop-file-edit in a moment. Sorry for the constant re-reviews.

@TomaSajt TomaSajt force-pushed the devpod branch 2 times, most recently from 0fd9412 to 3d06275 Compare April 19, 2025 13:51
@TomaSajt
Copy link
Contributor Author

Okay, looks like the deep-link tauri plugin is trying to set the app as the default handler for the devpod scheme.

.config/mimeapps.list:

[Default Applications]
devpod=.DevPod Desktop-wrapped-handler.desktop

.local/share/applications/".DevPod Desktop-wrapped-handler.desktop":

[Desktop Entry]
Type=Application
Name=devpod
Exec=/nix/store/yalks9lxqsy1rzlxhzcgyxbfm0y4rs09-devpod-desktop-0.6.15/bin/.DevPod Desktop-wrapped %u
Terminal=false
MimeType=x-scheme-handler/devpod;
NoDisplay=true

I think I'll patch this logic out, since it's mostly incorrect anyways.
(we shouldn't be using the .*-wrapped binary directly, we shouldn't have absolute paths in .desktop files)

@TomaSajt TomaSajt force-pushed the devpod branch 3 times, most recently from a05db07 to ca0ff65 Compare April 19, 2025 16:35
@TomaSajt TomaSajt changed the title devpod-desktop: use cargo-tauri.hook, add darwin support; devpod{,-desktop}: 0.5.20 -> 0.6.15 devpod-desktop: refactor; devpod{,-desktop}: 0.5.20 -> 0.6.15 Apr 19, 2025
@TomaSajt
Copy link
Contributor Author

Okay, I think I am finished with the refactoring.
Tested the schema handler on NixOS+hm, seems to work okay.

@TomaSajt
Copy link
Contributor Author

Uhhh... my ~/.local/share/sh.loft.devpod/logs/DevPod.log.log file takes up 76GBs.

All of the lines are this:
[2025-04-19][17:51:22][devpod_desktop::updates][ERROR] Failed to get updater

I think I will have to patch this.

@LordGrimmauld
Copy link
Contributor

Oh dear wtf! Good luck!

- combine the frontent derivation into the main derivation
- use cargo-tauri.hook
- patch out sidecar file logic
- patch out schema registering logic
- add glib-networking for image loading
- add darwin support
- add myself as a maintainer
@alyssais
Copy link
Member

@nyabinary anything in particular you think I should be looking at here?

@nyabinary
Copy link
Contributor

@nyabinary anything in particular you think I should be looking at here?

Involved with the libsoup stuff removes a usage of libsoup and hasn't been reviewed by anyone else :3

@alyssais
Copy link
Member

That sounds great but there's a lot more than that going on here I don't know anything about.

@alyssais alyssais removed their request for review April 25, 2025 08:41
Copy link
Contributor

@doronbehar doronbehar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Almost LGTM.

@doronbehar
Copy link
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 341884


x86_64-linux

✅ 2 packages built:
  • devpod
  • devpod-desktop

@doronbehar doronbehar merged commit 92ec400 into NixOS:master Apr 29, 2025
27 checks passed
@wegank wegank added the 12.approvals: 2 This PR was reviewed and approved by two persons. label May 1, 2025
@TomaSajt TomaSajt deleted the devpod branch June 19, 2025 08:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: darwin Running or building packages on Darwin 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 11.by: package-maintainer This PR was created by a maintainer of all the package it changes. 12.approvals: 2 This PR was reviewed and approved by two persons.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants