Compare commits
15 Commits
b5a1cb646a
...
v0.1.6
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bc5e78af57 | ||
| cc56ca800d | |||
| f9616acc97 | |||
|
|
0238308ca9 | ||
| b940f75259 | |||
|
|
387748e89b | ||
| fd5a511c71 | |||
|
|
b56d2ae42e | ||
| 69b7d89ee8 | |||
|
|
405f855298 | ||
| 66282f686d | |||
|
|
aa13febadf | ||
|
|
eeccd013dc | ||
| 907c44472c | |||
|
|
b1c5de4450 |
@@ -5,8 +5,8 @@ on:
|
|||||||
push:
|
push:
|
||||||
# branches:
|
# branches:
|
||||||
# - master
|
# - master
|
||||||
paths:
|
tags:
|
||||||
- "nvim/**"
|
- "v*"
|
||||||
|
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
@@ -24,7 +24,7 @@ jobs:
|
|||||||
- name: Log in to Gitea Container Registry
|
- name: Log in to Gitea Container Registry
|
||||||
uses: docker/login-action@v3
|
uses: docker/login-action@v3
|
||||||
with:
|
with:
|
||||||
registry: gitea.example.com
|
registry: gitea.setlock.net
|
||||||
username: ${{ secrets.USER }}
|
username: ${{ secrets.USER }}
|
||||||
password: ${{ secrets.TOKEN }}
|
password: ${{ secrets.TOKEN }}
|
||||||
|
|
||||||
@@ -36,9 +36,9 @@ jobs:
|
|||||||
- name: Build and Push Docker Image
|
- name: Build and Push Docker Image
|
||||||
uses: docker/build-push-action@v5
|
uses: docker/build-push-action@v5
|
||||||
with:
|
with:
|
||||||
context: ./nvim/tools
|
context: ./tools
|
||||||
push: true
|
push: true
|
||||||
platforms: linux/amd64,linux/arm64
|
platforms: linux/amd64
|
||||||
tags: |
|
tags: |
|
||||||
https://gitea.setlock.net/shaun/dotfiles:latest
|
gitea.setlock.net/shaun/dev-container:latest
|
||||||
https://gitea.setlock.net/shaun/dotfiles:${{ env.GIT_TAG }}
|
gitea.setlock.net/shaun/dev-container:${{ env.GIT_TAG }}
|
||||||
61
.gitea/workflows/nightly_docker_build.yml
Normal file
61
.gitea/workflows/nightly_docker_build.yml
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
# .gitea/workflows/docker-build-push.yml
|
||||||
|
name: Build and Push Docker Image
|
||||||
|
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
- cron: "0 2 * * *"
|
||||||
|
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-amd:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
|
- name: Log in to Gitea Container Registry
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: gitea.setlock.net
|
||||||
|
username: ${{ secrets.USER }}
|
||||||
|
password: ${{ secrets.TOKEN }}
|
||||||
|
|
||||||
|
- name: Build and Push Docker Image
|
||||||
|
uses: docker/build-push-action@v5
|
||||||
|
with:
|
||||||
|
context: ./tools
|
||||||
|
push: true
|
||||||
|
platforms: linux/amd64
|
||||||
|
tags: |
|
||||||
|
gitea.setlock.net/shaun/dev-container:nightly
|
||||||
|
|
||||||
|
build-arm:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
|
- name: Log in to Gitea Container Registry
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: gitea.setlock.net
|
||||||
|
username: ${{ secrets.USER }}
|
||||||
|
password: ${{ secrets.TOKEN }}
|
||||||
|
|
||||||
|
- name: Build and Push Docker Image
|
||||||
|
uses: docker/build-push-action@v5
|
||||||
|
with:
|
||||||
|
context: ./tools
|
||||||
|
push: true
|
||||||
|
platforms: linux/arm64
|
||||||
|
tags: |
|
||||||
|
gitea.setlock.net/shaun/dev-container:nightly
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
version: "3"
|
|
||||||
services:
|
|
||||||
nv:
|
|
||||||
container_name: nv
|
|
||||||
image: shaun/neovim:latest
|
|
||||||
user: "1000:1000"
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
|
||||||
- ~/code:/root/workspace
|
|
||||||
@@ -16,9 +16,9 @@ RUN useradd -m -u 1000 -s /usr/bin/fish shaun
|
|||||||
|
|
||||||
# Install required software
|
# Install required software
|
||||||
RUN apt-get update && apt-get -y install \
|
RUN apt-get update && apt-get -y install \
|
||||||
curl fzf ripgrep tree git xclip python3 python3-pip python3-venv nodejs npm \
|
curl fzf ripgrep tree git xclip python3 python3-pip python3-venv nodejs npm \
|
||||||
tzdata ninja-build gettext libtool libtool-bin autoconf automake cmake g++ \
|
tzdata ninja-build gettext libtool libtool-bin autoconf automake cmake g++ \
|
||||||
pkg-config zip unzip fish tmux
|
pkg-config zip unzip fish tmux
|
||||||
|
|
||||||
# Cooperate Neovim with Python 3.
|
# Cooperate Neovim with Python 3.
|
||||||
RUN python3 -m pip install --break-system-packages --root-user-action ignore pynvim
|
RUN python3 -m pip install --break-system-packages --root-user-action ignore pynvim
|
||||||
@@ -28,9 +28,9 @@ RUN npm i -g neovim
|
|||||||
|
|
||||||
# Install Neovim from source.
|
# Install Neovim from source.
|
||||||
RUN mkdir -p /tmp/neovim-src && \
|
RUN mkdir -p /tmp/neovim-src && \
|
||||||
git clone --depth 1 --branch stable https://github.com/neovim/neovim /tmp/neovim-src && \
|
git clone --depth 1 --branch stable https://github.com/neovim/neovim /tmp/neovim-src && \
|
||||||
cd /tmp/neovim-src && make -j$(nproc) && make install && \
|
cd /tmp/neovim-src && make -j$(nproc) && make install && \
|
||||||
rm -rf /tmp/neovim-src
|
rm -rf /tmp/neovim-src
|
||||||
|
|
||||||
# Clone configuration files.
|
# Clone configuration files.
|
||||||
USER shaun
|
USER shaun
|
||||||
@@ -48,7 +48,7 @@ RUN ln -s /home/shaun/dotfiles/tmux /home/shaun/.config
|
|||||||
|
|
||||||
# Install tmux plugin manager.
|
# Install tmux plugin manager.
|
||||||
RUN git clone https://github.com/tmux-plugins/tpm /home/shaun/.config/tmux/plugins/tpm && \
|
RUN git clone https://github.com/tmux-plugins/tpm /home/shaun/.config/tmux/plugins/tpm && \
|
||||||
/home/shaun/.config/tmux/plugins/tpm/scripts/install_plugins.sh
|
/home/shaun/.config/tmux/plugins/tpm/scripts/install_plugins.sh
|
||||||
|
|
||||||
# Get oh-my-fish and bob-the-fish installed.
|
# Get oh-my-fish and bob-the-fish installed.
|
||||||
RUN curl https://raw.githubusercontent.com/oh-my-fish/oh-my-fish/master/bin/install > install
|
RUN curl https://raw.githubusercontent.com/oh-my-fish/oh-my-fish/master/bin/install > install
|
||||||
@@ -63,11 +63,12 @@ USER root
|
|||||||
RUN usermod --shell /usr/bin/fish shaun
|
RUN usermod --shell /usr/bin/fish shaun
|
||||||
|
|
||||||
# Set workspace directory
|
# Set workspace directory
|
||||||
RUN mkdir -p /workspace && chown shaun:shaun /workspace
|
RUN mkdir -p /workspace
|
||||||
WORKDIR /workspace
|
RUN chown -R shaun:shaun /workspace
|
||||||
|
|
||||||
# Switch to non-root user
|
# Switch to non-root user
|
||||||
USER shaun
|
USER shaun
|
||||||
|
WORKDIR /home/shaun
|
||||||
|
|
||||||
# Avoid container exit.
|
# Avoid container exit.
|
||||||
CMD ["tail", "-f", "/dev/null"]
|
CMD ["tail", "-f", "/dev/null"]
|
||||||
8
tools/docker-compose.yml
Normal file
8
tools/docker-compose.yml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
version: "3"
|
||||||
|
services:
|
||||||
|
mydev:
|
||||||
|
container_name: mydev
|
||||||
|
image: gitea.setlock.net/shaun/dev-container:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /home/shaun:/workspace
|
||||||
Reference in New Issue
Block a user