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

devpod: init at 0.4.1 #251858

Merged
merged 1 commit into from
Nov 6, 2023
Merged

devpod: init at 0.4.1 #251858

merged 1 commit into from
Nov 6, 2023

Conversation

maxbrunet
Copy link
Member

Description of changes

This adds 2 new packages: devpod (CLI written in Go) and devpod-desktop (GUI written in Rust with Tauri and a TypeScript front-end). The GUI invokes/wraps the CLI.

Closes #239252

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • 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/)
  • 23.11 Release Notes (or backporting 23.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.

@dit7ya
Copy link
Member

dit7ya commented Aug 28, 2023

Does the package work correctly?

Last time I tried to package it I stumbled upon this issue loft-sh/devpod#329.

@maxbrunet
Copy link
Member Author

@dit7ya The CLI is fully functional. The GUI also appears fully functional with minor graphical bugs (e.g. some icons missing on Linux, impossible to drag window on macOS)

@maxbrunet maxbrunet changed the title devpod: init at 0.3.5 devpod: init at 0.3.6 Aug 29, 2023
@maxbrunet
Copy link
Member Author

Actually I had forgotten to enable the sandbox on macOS on the first build, I hit this issue now: h4llow3En/mac-notification-sys#28

Not sure if there is an easy workaround, I have marked the GUI as supported on Linux only for now.

(Personally, I do not plan to use the GUI, so I'd be happy with packaging the CLI only.)

@maxbrunet maxbrunet force-pushed the feat/devpod branch 2 times, most recently from f91b0ca to 221baa7 Compare August 29, 2023 02:29
@maxbrunet maxbrunet changed the title devpod: init at 0.3.6 devpod: init at 0.3.7 Sep 9, 2023
@aacebedo
Copy link
Contributor

@maxbrunet did you use it with docker provider? I tried but I think it has a design flow preventing it to work on nix. I mentioned it in the issue opened by @dit7ya

@aacebedo
Copy link
Contributor

Ok. I checked your version and it is working because the binary is linked statically to the libc. So copying the file in the container works.

@maxbrunet
Copy link
Member Author

did you use it with docker provider?

Yes, it has been working well (note: I use DOCKER_PATH=podman)

it is working because the binary is linked statically to the libc.

Cgo is disabled, so no libc involved

@aacebedo
Copy link
Contributor

aacebedo commented Sep 17, 2023

did you use it with docker provider?

Yes, it has been working well (note: I use DOCKER_PATH=podman)

it is working because the binary is linked statically to the libc.

Cgo is disabled, so no libc involved
It is working now correctly on my side. Can we merge this?
@maxbrunet did you push the PR in ready for review thread? (https://discourse.nixos.org/t/prs-ready-for-review/3032)

@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/prs-ready-for-review/3032/2783

@aacebedo
Copy link
Contributor

@SuperSandro2000 Can you have a lootk to this please?

@bbigras
Copy link
Contributor

bbigras commented Oct 26, 2023

The cli seems to work 👍 . The rest is a bit complex for me to review.

@bbigras
Copy link
Contributor

bbigras commented Oct 26, 2023

What is up with the ofborg-eval test not passing?

pkgs/development/tools/devpod/default.nix Outdated Show resolved Hide resolved
pkgs/development/tools/devpod/default.nix Outdated Show resolved Hide resolved
pkgs/development/tools/devpod/default.nix Outdated Show resolved Hide resolved
pkgs/development/tools/devpod/default.nix Show resolved Hide resolved
pkgs/development/tools/devpod/default.nix Show resolved Hide resolved
pkgs/top-level/all-packages.nix Outdated Show resolved Hide resolved
@aacebedo
Copy link
Contributor

@maxbrunet can you have a look here? 23.11 is coming and it would be nice to have this in the stable release if it is not too late yet.

@maxbrunet maxbrunet changed the title devpod: init at 0.3.7 devpod: init at 0.4.1 Nov 4, 2023
Copy link
Member Author

@maxbrunet maxbrunet left a comment

Choose a reason for hiding this comment

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

Thank you @pbsds for the review!

pkgs/development/tools/devpod/default.nix Show resolved Hide resolved
pkgs/development/tools/devpod/default.nix Show resolved Hide resolved
@maxbrunet maxbrunet requested a review from pbsds November 5, 2023 17:37
@pbsds
Copy link
Member

pbsds commented Nov 6, 2023

Result of nixpkgs-review pr 251858 run on x86_64-linux 1

2 packages built:
  • devpod
  • devpod-desktop

Copy link
Member

@pbsds pbsds left a comment

Choose a reason for hiding this comment

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

  • package path fits guidelines
  • package name fits guidelines
  • package version fits guidelines
  • package build on x86_64-linux
  • executables tested on x86_64-linux
  • meta.description is set and fits guidelines
  • meta.license fits upstream license
  • meta.platforms is set
  • meta.maintainers is set
  • build time only dependencies are declared in nativeBuildInputs
  • source is fetched using the appropriate function
  • the list of phases is not overridden
  • when a phase (like installPhase) is overridden it starts with runHook preInstall and ends with runHook postInstall.
  • patches have a comment describing either the upstream URL or a reason why the patch wasn't upstreamed
  • patches that are remotely available are fetched rather than vendored

@pbsds pbsds merged commit d9672e6 into NixOS:master Nov 6, 2023
21 of 22 checks passed
@bbigras
Copy link
Contributor

bbigras commented Nov 7, 2023

Anyone has an example of using devpod with a nix flake? I guess a simple devcontainer.json file.

@maxbrunet maxbrunet deleted the feat/devpod branch February 14, 2024 02:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 10.rebuild-darwin: 1 10.rebuild-linux: 1-10 11.by: package-maintainer This PR was created by the maintainer of the package it changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Package request: devpod
6 participants