Compare commits
4 Commits
a8bf7698f0
...
b5770c73fd
Author | SHA1 | Date | |
---|---|---|---|
b5770c73fd | |||
fec59fb017 | |||
dcd4ce3daa | |||
|
ef4473aae6 |
69
Dockerfile
69
Dockerfile
@ -130,24 +130,21 @@ ENV XDG_CONFIG_HOME ${HOME}/.config
|
||||
ENV XDG_DATA_HOME ${HOME}/.local/share
|
||||
ENV XDG_CACHE_HOME ${HOME}/.cache
|
||||
ENV STARSHIP_CONFIG ${XDG_CONFIG_HOME}/starship/config.toml
|
||||
ENV PATH ${LOCAL_BIN_HOME}:$PATH
|
||||
ENV CARGO_HOME ${XDG_DATA_HOME}/cargo
|
||||
ENV RUSTUP_HOME ${XDG_DATA_HOME}/rustup
|
||||
ENV PATH ${LOCAL_BIN_HOME}:${CARGO_HOME}/bin:$PATH
|
||||
# NOTE (jpd): to install elixirls we have to set the shell to something known
|
||||
ENV SHELL /usr/bin/bash
|
||||
|
||||
# command line utilities
|
||||
RUN curl https://rtx.pub/install.sh | sh \
|
||||
&& curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | bash \
|
||||
&& git clone https://github.com/tmux-plugins/tpm.git ${XDG_CONFIG_HOME}/tmux/plugins/tpm
|
||||
|
||||
# git configuration
|
||||
COPY ./patch/kickstart.nvim/updates.patch /tmp
|
||||
COPY ./config/nvim/lua/custom/plugins/init.lua /tmp
|
||||
RUN git clone https://github.com/nvim-lua/kickstart.nvim.git "${XDG_CONFIG_HOME}"/nvim \
|
||||
&& cd ${XDG_CONFIG_HOME}/nvim \
|
||||
&& git reset --hard 1915cea32e13fcb4191904de8f5e0252ad050a6e \
|
||||
&& git apply /tmp/updates.patch \
|
||||
&& cp /tmp/init.lua ${XDG_CONFIG_HOME}/nvim/lua/custom/plugins \
|
||||
&& nvim --headless "+Lazy! sync" +qa
|
||||
&& git clone https://github.com/tmux-plugins/tpm.git ${XDG_CONFIG_HOME}/tmux/plugins/tpm \
|
||||
&& curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y \
|
||||
&& git clone https://git.sr.ht/~mpdehaan/jetporch ${LOCAL_SRC_HOME}/jetporch \
|
||||
&& cd ${LOCAL_SRC_HOME}/jetporch \
|
||||
&& make \
|
||||
&& ln -s ${LOCAL_SRC_HOME}/jetporch/target/release/jetp ${LOCAL_BIN_HOME}/
|
||||
|
||||
# configure fish and bash
|
||||
RUN fish -c true \
|
||||
@ -159,25 +156,6 @@ RUN fish -c true \
|
||||
&& echo 'alias ll="l -Fahl"' >> ${XDG_CONFIG_HOME}/fish/config.fish \
|
||||
&& echo 'alias la="l -a"' >> ${XDG_CONFIG_HOME}/fish/config.fish
|
||||
|
||||
# configure git
|
||||
ARG GIT_USER_EMAIL
|
||||
ARG GIT_USER_NAME
|
||||
RUN git config --global user.email "${GIT_USER_EMAIL}" \
|
||||
&& git config --global user.name "${GIT_USER_NAME}" \
|
||||
&& git config --global core.editor nvim
|
||||
|
||||
# install rtx plugins
|
||||
RUN ${XDG_DATA_HOME}/rtx/bin/rtx plugins install \
|
||||
awscli \
|
||||
elixir \
|
||||
erlang \
|
||||
helm \
|
||||
kubectl \
|
||||
lefthook \
|
||||
poetry \
|
||||
terraform \
|
||||
tilt
|
||||
|
||||
# NOTE (jpd): the section below exists mainly to handle a project running elixir 1.11.
|
||||
# It allows the usage of openssl 1.1 and a compatible elixir-ls.
|
||||
|
||||
@ -204,3 +182,32 @@ RUN git clone https://github.com/elixir-lsp/elixir-ls.git ${LOCAL_SRC_HOME}/elix
|
||||
&& cd ${LOCAL_SRC_HOME}/elixir-ls \
|
||||
&& git checkout tags/v0.12.0 \
|
||||
&& cp .release-tool-versions .tool-versions
|
||||
|
||||
# git configuration
|
||||
COPY ./patch/kickstart.nvim/updates.patch /tmp
|
||||
COPY ./config/nvim/lua/custom/plugins/init.lua /tmp
|
||||
RUN git clone https://github.com/nvim-lua/kickstart.nvim.git "${XDG_CONFIG_HOME}"/nvim \
|
||||
&& cd ${XDG_CONFIG_HOME}/nvim \
|
||||
&& git reset --hard 1915cea32e13fcb4191904de8f5e0252ad050a6e \
|
||||
&& git apply /tmp/updates.patch \
|
||||
&& cp /tmp/init.lua ${XDG_CONFIG_HOME}/nvim/lua/custom/plugins \
|
||||
&& nvim --headless "+Lazy! sync" +qa
|
||||
|
||||
# install rtx plugins
|
||||
RUN ${XDG_DATA_HOME}/rtx/bin/rtx plugins install \
|
||||
awscli \
|
||||
elixir \
|
||||
erlang \
|
||||
helm \
|
||||
kubectl \
|
||||
lefthook \
|
||||
poetry \
|
||||
terraform \
|
||||
tilt
|
||||
|
||||
# configure git
|
||||
ARG GIT_USER_EMAIL
|
||||
ARG GIT_USER_NAME
|
||||
RUN git config --global user.email "${GIT_USER_EMAIL}" \
|
||||
&& git config --global user.name "${GIT_USER_NAME}" \
|
||||
&& git config --global core.editor nvim
|
||||
|
Loading…
x
Reference in New Issue
Block a user