-
-
Notifications
You must be signed in to change notification settings - Fork 172
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
feat: add dx-specific user setup, install devcontainers/docker vscode extensions by default #745
Conversation
Is there a place to document how to specify the distrobox container in the devcontainer configs? |
There may be, but I don't think that's something we should set by default. Since the lifecycle of the Distrobox container is outside of VSCode, we shouldn't make assumptions on what the container is named. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great, although my only concern is this will try to install the VSCode extensions on all Bluefin images, whereas Bluefin DX is the only one where VSCode is installed.
Not sure what the best approach would be. I guess conditionally running the scripts based on the contents of IMAGE_INFO JSON file
Good call @p5, updated the PR with that :) |
18806d9
to
fae9ce8
Compare
Any final comments on this one? I'd like to start testing this this weekend! |
Would this break normal dev-containers forcing the use of distrobox due to the docker path being that shim? |
Head branch was pushed to by a user without write access
6870ded
to
763f680
Compare
After talking with @castrojo a bit, this is the route we settled on. :) Does change the PR quite a bit but it simplifies it. 🙌 |
Looks good, may want to increase the version at the top of the user setup to ensure this is run for everyone |
Will that clobber people's existing setups? I'm fine with it being new-install only so we don't interrupt people's existing flows. |
Unfortunately that's true. If this was its separate thing (I think it should be a separate service since it uses an internet connection to install those extensions) it wouldn't be an issue though |
Yeah can we do that @jeefy? Sorry to make this process longer than it needs to be. (On the plus side after this we're done!) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left some comments regarding converting this over to a separate service and a couple other things
Head branch was pushed to by a user without write access
a55d530
to
06c0daa
Compare
All comments should be addressed. If we add additional post-install config steps, we might want to figure out a better way to track what's run. A bunch of dot files in a home feelsbadman, but that's a problem for another PR. :) |
Things are looking fantastic! Definitely up for handling this in a better way. Having a lot of dotfiles is slightly annoying |
One final thing - the Containerfile needs the service to be enabled: |
06c0daa
to
80e1a6c
Compare
fix(dx): Move VS Code setup to dx section
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
… extensions by default (ublue-os#745) Co-authored-by: RJ Trujillo <[email protected]>
This sets up a fresh install of Bluefin to have VSCode set up to use a Distrobox container (via devcontainers)
There needs to be a shim in place to ensure you enter the distrobox container as the local user and not as root.
It does require Docker to be available on the host (which is a requirement of the
devcontainers
extensionRefs:
#726
https://universal-blue.discourse.group/t/should-we-really-recommend-vscode-podman-as-supported/220/13