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
31 changes: 0 additions & 31 deletions .devcontainer/Dockerfile

This file was deleted.

57 changes: 0 additions & 57 deletions .devcontainer/base.Dockerfile

This file was deleted.

19 changes: 19 additions & 0 deletions .devcontainer/devcontainer-lock.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"features": {
"ghcr.io/devcontainers/features/git:1": {
"version": "1.3.4",
"resolved": "ghcr.io/devcontainers/features/git@sha256:f24645e64ad39a596131a50ec96f7d5cf7a2a87544cce772dd4b7182a233e98a",
"integrity": "sha256:f24645e64ad39a596131a50ec96f7d5cf7a2a87544cce772dd4b7182a233e98a"
},
"ghcr.io/devcontainers/features/github-cli:1": {
"version": "1.0.14",
"resolved": "ghcr.io/devcontainers/features/github-cli@sha256:ca677566507c4118e4368cd76a4800807e911e5e350cc3525fb67ebc9132dfa1",
"integrity": "sha256:ca677566507c4118e4368cd76a4800807e911e5e350cc3525fb67ebc9132dfa1"
},
"ghcr.io/devcontainers/features/rust:1": {
"version": "1.5.0",
"resolved": "ghcr.io/devcontainers/features/rust@sha256:0c55e65f2e3df736e478f26ee4d5ed41bae6b54dac1318c443e31444c8ed283c",
"integrity": "sha256:0c55e65f2e3df736e478f26ee4d5ed41bae6b54dac1318c443e31444c8ed283c"
}
}
}
28 changes: 6 additions & 22 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,35 +2,19 @@
// https://github.com/microsoft/vscode-dev-containers/tree/v0.245.0/containers/javascript-node
{
"name": "Next.js Dev Container",
"build": {
"dockerfile": "Dockerfile",
// Update 'VARIANT' to pick a Node version: 18, 16, 14.
// Append -bullseye or -buster to pin to an OS version.
// Use -bullseye variants on local arm64/Apple Silicon.
"args": {
"VARIANT": "20-bullseye"
}
},
// Configure tool-specific properties.
"image": "mcr.microsoft.com/devcontainers/javascript-node:1-20-bookworm",
"customizations": {
// Configure properties specific to VS Code.
"vscode": {
// Add the IDs of extensions you want installed when the container is created.
"extensions": ["dbaeumer.vscode-eslint"]
}
},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "yarn install",
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "node",
"features": {
// For some reason "git" or "rust" doesn't work
"ghcr.io/devcontainers/features/git:1": "os-provided",
"ghcr.io/devcontainers/features/rust:1": "latest"
// Github latest can't be installed due to GPG issues: https://github.com/cli/cli/discussions/6222
// "github-cli": "latest",
"ghcr.io/devcontainers/features/git:1": {},
"ghcr.io/devcontainers/features/github-cli:1": {},
"./rust": {},
"./headless-browser": {},
"./node-extras": {}
},
"remoteEnv": {
"DISPLAY": ":0"
Expand Down
6 changes: 6 additions & 0 deletions .devcontainer/headless-browser/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"id": "playwright",
"name": "next.js-playwright",
"version": "0.0.0",
"dependsOn": {}
}
17 changes: 17 additions & 0 deletions .devcontainer/headless-browser/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#!/bin/bash
set -euxo pipefail
export DEBIAN_FRONTEND=noninteractive

apt-get update
# These are required to run playwright properly
apt-get -y install --no-install-recommends \
gconf-service libxext6 libxfixes3 libxi6 libxrandr2 \
libxrender1 libcairo2 libcups2 libdbus-1-3 libexpat1 \
libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 \
libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 \
libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 \
libxdamage1 libxss1 libxtst6 libappindicator1 libnss3 libasound2 \
libatk1.0-0 libc6 libdrm-dev libgbm-dev ca-certificates fonts-liberation lsb-release xdg-utils wget \

# Chromium is needed for Turbopack benchmarks
apt-get -y install --no-install-recommends chromium
6 changes: 6 additions & 0 deletions .devcontainer/node-extras/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"id": "node-extras",
"name": "next.js-node-extras",
"version": "0.0.0",
"dependsOn": {}
}
4 changes: 4 additions & 0 deletions .devcontainer/node-extras/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/bin/bash
set -euxo pipefail

corepack enable pnpm
13 changes: 13 additions & 0 deletions .devcontainer/rust/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"id": "rust",
"name": "next.js-rust",
"version": "0.0.0",
"dependsOn": {
"ghcr.io/devcontainers/features/rust:1": {
// this should match the `rust-toolchain.toml`
"version": "nightly-2025-06-04",
"profile": "minimal",
"components": "rustfmt,clippy,rust-analyzer"
}
}
}
11 changes: 11 additions & 0 deletions .devcontainer/rust/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#!/bin/bash
set -euxo pipefail
export DEBIAN_FRONTEND=noninteractive

curl -L --proto '=https' --tlsv1.2 -sSf \
https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh \
| bash
cargo binstall cargo-nextest --secure

apt-get update
apt-get -y install --no-install-recommends libfontconfig1-dev
1 change: 1 addition & 0 deletions rust-toolchain.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# if you update this, also update `.devcontainer/rust/devcontainer-feature.json`
[toolchain]
channel = "nightly-2025-06-04"
components = ["rustfmt", "clippy", "rust-analyzer"]
Expand Down
Loading