Compare commits

..

1 Commits

Author SHA1 Message Date
86b7cdb31d refactor: shrink container build
Some checks failed
Build containers / changes (push) Successful in 3s
Build containers / base-image (push) Successful in 1m14s
Build containers / dependent-images (go) (push) Successful in 40s
Build containers / dependent-images (infra) (push) Failing after 41s
Build containers / dependent-images (php) (push) Successful in 46s
2026-03-17 20:37:53 +01:00
6 changed files with 16 additions and 24 deletions

View File

@@ -3,14 +3,11 @@ FROM quay.io/fedora/fedora:44
# === install system packages === # === install system packages ===
RUN --mount=type=cache,id=dnf-cache,target=/var/cache/libdnf5 \ RUN --mount=type=cache,id=dnf-cache,target=/var/cache/libdnf5 \
dnf update -y && \ dnf update -y && \
dnf -y --setopt=keepcache=1 --setopt=install_weak_deps=False install \ dnf copr enable -y gierth/tools-golang && \
bash-completion git-core fzf curl awk jq fd-find rg unzip which \ dnf copr enable -y agriffis/neovim-nightly && \
host-spawn wl-copy gcc dnf -y --setopt=keepcache=1 --nodocs --setopt=install_weak_deps=False install bash-completion glibc-minimal-langpack \
host-spawn dbus-launch \
RUN LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | jq -r .tag_name | sed 's/^v//') && \ git npm neovim awk jq unzip lazygit lazydocker lazysql
curl -sL "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_linux_x86_64.tar.gz" | tar xz -C /usr/local/bin lazygit && \
curl -sL "https://github.com/jorgerojas26/lazysql/releases/latest/download/lazysql_Linux_x86_64.tar.gz" | tar xz -C /usr/local/bin lazysql && \
curl -sL "https://github.com/neovim/neovim/releases/download/nightly/nvim-linux-x86_64.tar.gz" | tar xz -C /usr/local --strip-components=1
COPY config/bin /usr/local/bin COPY config/bin /usr/local/bin

View File

@@ -5,14 +5,13 @@ set -o vi
bind -m vi-insert '"\C-l": clear-screen' bind -m vi-insert '"\C-l": clear-screen'
# === environment === # === environment ===
export PS1="\[\e[30;46m\] \h | \w \[\e[0;36m\]\[\e[m\] " \ export EDITOR="nvim" \
EDITOR="nvim" \
WAYLAND_DISPLAY="wayland-0" \ WAYLAND_DISPLAY="wayland-0" \
XDG_RUNTIME_DIR="/run/user/1000" \ XDG_RUNTIME_DIR="/run/user/1000" \
SSH_AUTH_SOCK="/run/user/1000/ssh-auth-sock" \ SSH_AUTH_SOCK="/run/user/1000/ssh-auth-sock" \
TZ="Europe/Amsterdam" \ TZ="Europe/Amsterdam"
FZF_CTRL_T_COMMAND="fd --type f --hidden --exclude .git --exclude Library --exclude .cache" \
FZF_ALT_C_COMMAND="fd --type d --hidden --exclude .git --exclude Library --exclude .cache" PS1="\[\e[30;46m\] \h | \w \[\e[0;36m\]\[\e[m\] "
# === aliases and functions === # === aliases and functions ===
alias vi=nvim alias vi=nvim

View File

@@ -2,9 +2,7 @@ ARG TAG
FROM job79/base:${TAG} FROM job79/base:${TAG}
USER root USER root
RUN GO_VERSION=$(curl -sL "https://go.dev/VERSION?m=text" | head -n 1 | tr -d '\r\n') && \ RUN --mount=type=cache,id=dnf-cache,target=/var/cache/libdnf5 \
curl -sL "https://go.dev/dl/${GO_VERSION}.linux-amd64.tar.gz" | tar xz -C /usr/local && \ dnf -y --setopt=keepcache=1 install go
ln -sf /usr/local/go/bin/go /usr/local/bin/go && \
ln -sf /usr/local/go/bin/gofmt /usr/local/bin/gofmt
USER user USER user

View File

@@ -3,8 +3,7 @@ FROM job79/base:${TAG}
USER root USER root
RUN --mount=type=cache,id=dnf-cache,target=/var/cache/libdnf5 \ RUN --mount=type=cache,id=dnf-cache,target=/var/cache/libdnf5 \
dnf -y --setopt=keepcache=1 --setopt=install_weak_deps=False install \ dnf -y --setopt=keepcache=1 install kubectl k9s openssl age "$(curl -s https://api.github.com/repos/getsops/sops/releases/latest | jq -r ".assets[] | select(.name | test(\"sops-.*.$(arch).rpm\$\")) | .browser_download_url")" && \
just kubectl k9s openssl age "$(curl -s https://api.github.com/repos/getsops/sops/releases/latest | jq -r ".assets[] | select(.name | test(\"sops-.*.$(arch).rpm\$\")) | .browser_download_url")" && \
curl -sL https://talos.dev/install | sh && \ curl -sL https://talos.dev/install | sh && \
curl -s https://fluxcd.io/install.sh | bash curl -s https://fluxcd.io/install.sh | bash

View File

@@ -3,7 +3,7 @@ FROM job79/base:${TAG}
USER root USER root
RUN --mount=type=cache,id=dnf-cache,target=/var/cache/libdnf5 \ RUN --mount=type=cache,id=dnf-cache,target=/var/cache/libdnf5 \
dnf -y --setopt=keepcache=1 install php composer npm && \ dnf -y --setopt=keepcache=1 install php composer && \
composer global require laravel/installer composer global require laravel/installer
USER user USER user

View File

@@ -15,7 +15,6 @@ default_args() {
"--pull=newer" # Update image. "--pull=newer" # Update image.
"--userns=keep-id" # Map host user. "--userns=keep-id" # Map host user.
"-v" "$name:/home/user:copy" # Persistent home volume. "-v" "$name:/home/user:copy" # Persistent home volume.
"-v" "dnf-cache:/var/cache/libdnf5" # Cache dnf metadata.
) )
# Unix sockets require SELinux label disable. # Unix sockets require SELinux label disable.