Compare commits
26 Commits
v0.0.2
...
7be79aace7
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7be79aace7 | ||
|
|
75c9903022 | ||
| 251d8ef80d | |||
| bf98ed5fb9 | |||
|
|
bc5e78af57 | ||
| cc56ca800d | |||
| f9616acc97 | |||
|
|
0238308ca9 | ||
| b940f75259 | |||
|
|
387748e89b | ||
| fd5a511c71 | |||
|
|
b56d2ae42e | ||
| 69b7d89ee8 | |||
|
|
405f855298 | ||
| 66282f686d | |||
|
|
aa13febadf | ||
|
|
eeccd013dc | ||
| 907c44472c | |||
|
|
b1c5de4450 | ||
|
|
b5a1cb646a | ||
|
|
0ee97a7c72 | ||
| 6b7ebb1f42 | |||
|
|
35628b774f | ||
|
|
30ed4f77f6 | ||
| 0635cad22e | |||
| bf228bf176 |
@@ -1,35 +1,32 @@
|
|||||||
# .gitea/workflows/docker-build-push.yml
|
|
||||||
name: Build and Push Docker Image
|
name: Build and Push Docker Image
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
- master
|
|
||||||
tags:
|
tags:
|
||||||
- "v*" # triggers when you push a tag like v1.0.0
|
- "v*"
|
||||||
paths:
|
|
||||||
- "**/Dockerfile"
|
|
||||||
|
|
||||||
workflow_dispatch: # manual run button
|
workflow_dispatch:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-and-push:
|
build-push:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v3
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
- 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.GITEA_USERNAME }}
|
username: ${{ secrets.USER }}
|
||||||
password: ${{ secrets.GITEA_TOKEN }}
|
password: ${{ secrets.TOKEN }}
|
||||||
|
|
||||||
- name: Extract Tag Name (if any)
|
- name: Extract Tag Name (if any)
|
||||||
id: get_tag
|
id: get_tag
|
||||||
@@ -39,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,linux/arm64
|
||||||
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 }}
|
||||||
37
.gitea/workflows/nightly_docker_build.yml
Normal file
37
.gitea/workflows/nightly_docker_build.yml
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
name: Build and Push Docker Image
|
||||||
|
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
- cron: "0 2 * * *"
|
||||||
|
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-push:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v3
|
||||||
|
|
||||||
|
- 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,linux/arm64
|
||||||
|
tags: |
|
||||||
|
gitea.setlock.net/shaun/dev-container:nightly
|
||||||
2
nvim/lua/plugins/.markdownlint-cli2.yml
Normal file
2
nvim/lua/plugins/.markdownlint-cli2.yml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
config:
|
||||||
|
MD013: false
|
||||||
26
nvim/lua/plugins/blink-autocomplete.lua
Normal file
26
nvim/lua/plugins/blink-autocomplete.lua
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
return {
|
||||||
|
"saghen/blink.cmp",
|
||||||
|
opts = function(_, opts)
|
||||||
|
local completion_toggle = Snacks.toggle({
|
||||||
|
name = "Completion",
|
||||||
|
get = function()
|
||||||
|
return vim.b.completion
|
||||||
|
end,
|
||||||
|
set = function(state)
|
||||||
|
vim.b.completion = state
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
local function toggle_completion()
|
||||||
|
require("blink.cmp").hide()
|
||||||
|
completion_toggle:toggle()
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.keymap.set({ "i", "n" }, "<C-Space>", toggle_completion, { desc = "Toggle Completion" })
|
||||||
|
opts.enabled = function()
|
||||||
|
return vim.b.completion
|
||||||
|
end
|
||||||
|
|
||||||
|
return opts
|
||||||
|
end,
|
||||||
|
}
|
||||||
12
nvim/lua/plugins/markdownlint-cli2.lua
Normal file
12
nvim/lua/plugins/markdownlint-cli2.lua
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
local HOME = os.getenv("HOME")
|
||||||
|
return {
|
||||||
|
"mfussenegger/nvim-lint",
|
||||||
|
optional = true,
|
||||||
|
opts = {
|
||||||
|
linters = {
|
||||||
|
["markdownlint-cli2"] = {
|
||||||
|
args = { "--config", HOME .. "/.config/nvim/lua/plugins/.markdownlint-cli2.yaml", "--" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
@@ -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