first commit
This commit is contained in:
+68
@@ -0,0 +1,68 @@
|
||||
FROM archlinux:latest
|
||||
|
||||
RUN pacman -Sy --noconfirm archlinux-keyring && \
|
||||
pacman -Su --noconfirm && \
|
||||
pacman -S --noconfirm --needed \
|
||||
bash \
|
||||
ca-certificates \
|
||||
curl \
|
||||
fastfetch \
|
||||
fzf \
|
||||
git \
|
||||
lazygit \
|
||||
less \
|
||||
mariadb-clients \
|
||||
nodejs \
|
||||
npm \
|
||||
openssh \
|
||||
php \
|
||||
pwgen \
|
||||
python \
|
||||
sqlite \
|
||||
tmux \
|
||||
tree \
|
||||
unzip \
|
||||
uv \
|
||||
vim \
|
||||
zoxide && \
|
||||
pacman -Scc --noconfirm
|
||||
|
||||
RUN printf '%s\n' \
|
||||
'export PATH="/root/.local/bin:$PATH"' \
|
||||
'eval "$(zoxide init bash)"' \
|
||||
> /etc/profile.d/nix_path.sh && \
|
||||
chmod 755 /etc/profile.d/nix_path.sh && \
|
||||
echo '[ -f /etc/profile.d/nix_path.sh ] && . /etc/profile.d/nix_path.sh' >> /etc/bash.bashrc
|
||||
|
||||
RUN git config --system user.name "code" && \
|
||||
git config --system user.email "code@4lt.ca" && \
|
||||
git config --system --add safe.directory '*'
|
||||
|
||||
# Dotfiles
|
||||
COPY files/bash_aliases /opt/dotfiles/bash_aliases
|
||||
COPY files/bashrc /root/.bashrc
|
||||
|
||||
# Install Claude Code straight into /root, so a rebuild always picks up the
|
||||
# latest release. Only the two files needed to stay logged in (not the CLI
|
||||
# itself) are persisted across rebuilds, via individual bind mounts set up
|
||||
# by `claudaris start` — see claudaris and AGENTS.md.
|
||||
WORKDIR /tmp
|
||||
|
||||
RUN curl -fsSL https://claude.ai/install.sh | bash
|
||||
|
||||
# Claude Code usage statusline plugin
|
||||
RUN PATH="/root/.local/bin:$PATH" bash -c \
|
||||
'curl -fsSL https://raw.githubusercontent.com/leeguooooo/claude-code-usage-bar/main/web-install.sh | bash'
|
||||
|
||||
# tmux wrapper
|
||||
COPY files/tmux /usr/local/bin/tmux
|
||||
COPY files/tmux.conf /etc/tmux.conf
|
||||
RUN chmod 755 /usr/local/bin/tmux
|
||||
|
||||
# Container entrypoint
|
||||
COPY files/entrypoint.sh /usr/local/bin/entrypoint.sh
|
||||
RUN chmod 755 /usr/local/bin/entrypoint.sh
|
||||
|
||||
WORKDIR /projects
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
|
||||
Reference in New Issue
Block a user