Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ jobs:
matrix:
features:
- shared-pnpm-store
- mount-pnpm-store
baseImage:
- debian:latest
- ubuntu:latest
Expand All @@ -33,7 +32,6 @@ jobs:
matrix:
features:
- shared-pnpm-store
- mount-pnpm-store
steps:
- uses: actions/checkout@v4

Expand Down
2 changes: 0 additions & 2 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
MIT License

Copyright (c) 2026 ITplusX
Portions Copyright (c) 2023 Joshua Ji
(src/mount-pnpm-store, copied from https://github.com/joshuanianji/devcontainer-features)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@ Custom [Dev Container Features](https://containers.dev/implementors/features/) m

| Feature | Description |
| ------- | ----------- |
| [`shared-pnpm-store`](./src/shared-pnpm-store) | Mounts a shared Docker volume as the pnpm store directory via `containerEnv`. Never invokes pnpm. **Recommended.** |
| [`mount-pnpm-store`](./src/mount-pnpm-store) | **Deprecated** — use `shared-pnpm-store` instead. Sets the pnpm store to `~/.pnpm-store` and mounts it to a shared volume. Patched copy of [joshuanianji/devcontainer-features](https://github.com/joshuanianji/devcontainer-features) that works with pnpm >= 9 in non-interactive lifecycle shells. |
| [`shared-pnpm-store`](./src/shared-pnpm-store) | Mounts a shared Docker volume as the pnpm store directory via `containerEnv`. Never invokes pnpm. |

> The former `mount-pnpm-store` feature has been removed. Use `shared-pnpm-store` instead.

## Usage

Expand Down Expand Up @@ -45,4 +46,4 @@ The initial implementation of `shared-pnpm-store` was developed locally by [@sch

## License

MIT — see [LICENSE](./LICENSE). The `mount-pnpm-store` feature contains code Copyright (c) 2023 Joshua Ji (MIT).
MIT — see [LICENSE](./LICENSE).
96 changes: 0 additions & 96 deletions src/mount-pnpm-store/NOTES.md

This file was deleted.

120 changes: 0 additions & 120 deletions src/mount-pnpm-store/README.md

This file was deleted.

24 changes: 0 additions & 24 deletions src/mount-pnpm-store/devcontainer-feature.json

This file was deleted.

52 changes: 0 additions & 52 deletions src/mount-pnpm-store/install.sh

This file was deleted.

27 changes: 0 additions & 27 deletions src/mount-pnpm-store/oncreate.sh

This file was deleted.

8 changes: 3 additions & 5 deletions src/shared-pnpm-store/NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ It does this with four declarative pieces and **no pnpm invocation**:
non-root user on every container create.

Because pnpm is never invoked, this feature avoids the `pnpm config set --global`
/ `PNPM_HOME` / PATH / non-interactive-shell problems that `mount-pnpm-store` has
to patch. It is a simpler alternative; the two features are independent.
/ `PNPM_HOME` / PATH / non-interactive-shell problems that arise when a feature
has to configure pnpm from a non-interactive lifecycle shell.

## Ownership of the shared store

Expand Down Expand Up @@ -56,9 +56,7 @@ depend on the interactive shell)
## Volume Mount Naming

The volume is named `devcontainer-shared-pnpm-store`. Ensure no other Docker
volume collides with this name. (This is a different volume from
`mount-pnpm-store`'s `global-devcontainer-pnpm-store`, so the two features do
not share a store with each other.)
volume collides with this name.

## Changelog

Expand Down
Loading
Loading