This commit is contained in:
Elijah McMorris 2023-06-30 05:11:31 +00:00
parent 3a34f6c1a3
commit 4306b99634
10 changed files with 105 additions and 41 deletions

View file

@ -1,9 +1,8 @@
FROM mcr.microsoft.com/devcontainers/rust:bullseye
# https://mcr.microsoft.com/en-us/product/devcontainers/rust/about
FROM mcr.microsoft.com/devcontainers/rust:bookworm
RUN rustup target add x86_64-unknown-linux-musl && \
apt-get update && \
apt install -y build-essential xz-utils musl-tools musl-dev gcc-multilib && \
rustup update
RUN apt-get update && \
apt install -y build-essential xz-utils musl-tools musl-dev gcc-multilib pkg-config libssl-dev clang mold
RUN LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": "v\K[0-9.]+') && \
curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz" && \
@ -11,7 +10,10 @@ RUN LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygi
rm -rf lazygit.tar.gz
RUN BTOP_VERSION=$(curl -s "https://api.github.com/repos/aristocratos/btop/releases/latest" | grep -Po '"tag_name": "v\K[0-9.]+') && \
wget "https://github.com/aristocratos/btop/releases/download/${BTOP_VERSION}/btop-x86_64-linux-musl.tbz" && \
wget "https://github.com/aristocratos/btop/releases/download/v${BTOP_VERSION}/btop-x86_64-linux-musl.tbz" && \
sudo tar -xvf btop-x86_64-linux-musl.tbz && \
cd btop && ./install.sh && cd .. && \
rm -rf btop-x86_64-linux-musl.tbz btop
RUN curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin
# cargo install cargo-nextest --locked

View file

@ -22,6 +22,11 @@
"source": "devcontainer-cargo-cache-${containerWorkspaceFolderBasename}",
"target": "/usr/local/cargo",
"type": "volume"
},
{
"source": "${localWorkspaceFolderBasename}-target",
"target": "${containerWorkspaceFolder}/target",
"type": "volume"
}
],
// Features to add to the dev container. More info: https://containers.dev/features.
@ -29,8 +34,8 @@
"ghcr.io/devcontainers/features/git:1": {}
// "ghcr.io/devcontainers/features/nix:1": {
// "packages": [
// "btop"
// // "lazygit"
// "btop",
// "lazygit"
// ]
// }
},
@ -40,10 +45,11 @@
// "postCreateCommand": {
// },
"postAttachCommand": {
"AddGitSafeDir": "git config --global --add safe.directory /workspaces/${containerWorkspaceFolderBasename}"
"AddGitSafeDir": "git config --global --add safe.directory /workspaces/${containerWorkspaceFolderBasename}",
"update": "rustup target add x86_64-unknown-linux-musl && rustup update && cargo update",
"clippy": "cargo clippy --fix --allow-dirty"
},
// Configure tool-specific properties.
// "customizations": {},
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
"remoteUser": "root",
"customizations": {
@ -55,7 +61,6 @@
"rust-lang.rust-analyzer",
"mutantdino.resourcemonitor",
"christian-kohler.path-intellisense",
"Swellaby.vscode-rust-test-adapter",
"Gruntfuggly.todo-tree",
"ms-azuretools.vscode-docker",
"redhat.vscode-yaml"