apple / apple/container

[Request]: container machine run should spawn a login shell

Open
#1,991 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Swift
Stars
49.9k
Forks
1.8k
Avg merge
1d 20h
Merged PRs (30d)
22

Description

### Feature or enhancement request details

Default behaviour of `container machine run` is to spawn an interactive shell inside container machine. Help info on `container machine run --help` even states following:

```
ARGUMENTS:
Command to run (default: login shell)
```

My observed behaviour is that interactive shell spawned is not a login shell. This has a number of drawbacks how interactive shell is initialised (both bash and zsh will not source "profile" rc files). This is in contrast to say connection via SSH to a running machine instances.

I would argue that shell should be login shells, or at least there should be a way to configure this per container machine.

```
container CLI version 1.0.0 (build: release, commit: ee848e3)
```

### Code of Conduct

- [x] I agree to follow this project's Code of Conduct

Contributor guide

Open the contributing guide

Research direction

Start at the `container machine run` command and compare its default shell behavior with the `container machine run --help` description and SSH connections to running machine instances. Check how interactive bash and zsh initialization handles profile rc files, then verify that the default shell is a login shell or that the requested configuration is available per container machine.

Written by the indexing model from the issue text.

Assessment

Tech stack
bash, swift, zsh
Domain
cli, operating-systems
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.