Skip to content

XavierBeheydt/devcontainer-extras

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dev Container Extras

A collection of dev container Features hosted on GitHub Container Registry.

Features

lazyvim

Installs the LazyVim starter configuration as the default Neovim config (~/.config/nvim).
Skipped automatically if ~/.config/nvim already exists (e.g. mounted from host).

Usage in devcontainer.json:

{
    "image": "mcr.microsoft.com/devcontainers/base:ubuntu",
    "features": {
        "ghcr.io/xavierbeheydt/devcontainer-extras/lazyvim:0": {}
    }
}

What it does:

  1. Checks whether ~/.config/nvim already exists — if so, skips installation.
  2. Clones the LazyVim/starter repository into ~/.config/nvim.
  3. Removes the .git folder from the cloned config (so it's not a nested git repo).
  4. Sets ownership of the config directory to the remote user.

Prerequisites:

This feature depends on Neovim being available. It is recommended to install it via another feature first:

{
    "features": {
        "ghcr.io/duduribeiro/devcontainer-features/neovim:1": {},
        "ghcr.io/xavierbeheydt/devcontainer-extras/lazyvim:0": {}
    }
}

The installsAfter property in devcontainer-feature.json ensures lazyvim is installed after neovim.

Repository Structure

├── src
│   └── lazyvim
│       ├── devcontainer-feature.json
│       └── install.sh
└── test
    └── lazyvim
        └── test.sh

Publishing

Features are published to GHCR via the Release workflow.
After publishing, mark each GHCR package as public to stay within the free tier:

https://github.com/users/xavierbeheydt/packages/container/devcontainer-extras%2F<featureName>/settings

License

MIT

About

A collection of dev container Features — LazyVim and more.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages