mirror of
https://codeberg.org/Freeyourgadget/Gadgetbridge.git
synced 2026-07-31 07:44:24 +02:00
chore: add codium/vscode devcontainer
This commit is contained in:
committed by
Arjan Schrijver
parent
968f9405d6
commit
edae741b26
@@ -0,0 +1,26 @@
|
||||
FROM ghcr.io/alvr/alpine-android:android-33-jdk21
|
||||
|
||||
ARG USERNAME=developer
|
||||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
RUN apk --no-cache add git \
|
||||
sudo \
|
||||
nano \
|
||||
bash \
|
||||
bash-completion && \
|
||||
# setup sudo user and permissions
|
||||
addgroup -g $USER_GID $USERNAME && \
|
||||
adduser -u $USER_UID -G $USERNAME $USERNAME --disabled-password -s /bin/bash && \
|
||||
echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME && \
|
||||
chmod 0440 /etc/sudoers.d/$USERNAME && \
|
||||
echo $USERNAME:10000:5000 > /etc/subuid; \
|
||||
echo $USERNAME:10000:5000 > /etc/subgid; \
|
||||
chown -R developer:developer /opt/sdk/
|
||||
|
||||
USER $USERNAME
|
||||
|
||||
# configure environment
|
||||
RUN bash -c "$(curl -fsSL https://raw.githubusercontent.com/ohmybash/oh-my-bash/master/tools/install.sh)" && \
|
||||
# setup editor
|
||||
echo "export EDITOR=/usr/bin/nano" >> ~/.bashrc
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"build": {
|
||||
"dockerfile": "Dockerfile"
|
||||
},
|
||||
"customizations": {
|
||||
"vscode": {
|
||||
"extensions": [
|
||||
"adelphes.android-dev-ext",
|
||||
"vscjava.vscode-java-pack"
|
||||
]
|
||||
}
|
||||
},
|
||||
"mounts": [
|
||||
"source=${localEnv:HOME}/.android,target=/home/developer/.android,type=bind,consistency=cached"
|
||||
],
|
||||
"runArgs": [
|
||||
"--init",
|
||||
"--network=host",
|
||||
"--device=/dev/bus/usb",
|
||||
"--privileged",
|
||||
// "--userns=keep-id" // needed if podman is used instead of docker
|
||||
],
|
||||
"postStartCommand": "sudo chown -R developer:developer /opt/sdk/",
|
||||
"initializeCommand": "mkdir -p ${localEnv:HOME}/.android" // make sure folder exists so that bind mount does not fail
|
||||
}
|
||||
Reference in New Issue
Block a user