Compare commits
4 Commits
0d8e6fa40d
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 65a3b6d9fc | |||
| 590a6ffe65 | |||
| affaa73b77 | |||
| 303175718a |
@ -2,10 +2,15 @@ ARG USERNAME="jgrafton"
|
||||
ARG UID="1001"
|
||||
ARG GID="1001"
|
||||
|
||||
ARG NEOVIM_VERSION="v0.11.5"
|
||||
ARG ARCH="x86_64"
|
||||
ARG NEOARCH="x86_64"
|
||||
|
||||
ARG NEOVIM_VERSION="v0.11.5"
|
||||
ARG NVM_VERSION="v0.40.3"
|
||||
ARG NODE_VERSION="24"
|
||||
ARG PYTHON_VERSION="3.12.12"
|
||||
ARG RIPGREP_VERSION="15.1.0"
|
||||
ARG RUST_VERSION="1.91.1"
|
||||
|
||||
# mount user home in mnt
|
||||
MOUNT /home/${USERNAME} mnt/${USERNAME} nullfs rw 0 0
|
||||
@ -18,34 +23,35 @@ CMD addgroup --gid ${GID} ${USERNAME}
|
||||
CMD adduser -q --uid ${UID} --gid ${GID} --disabled-password --gecos "" ${USERNAME}
|
||||
|
||||
# node
|
||||
CMD su ${USERNAME} -c "curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash"
|
||||
CMD su ${USERNAME} -c "curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/${NVM_VERSION}/install.sh | bash"
|
||||
CMD su - ${USERNAME} -s/bin/bash -c "export NVM_DIR=/home/${USERNAME}/.nvm; . /home/${USERNAME}/.nvm/nvm.sh; nvm install 24"
|
||||
|
||||
# neovim
|
||||
CMD mkdir -p /opt/build
|
||||
CMD curl -L https://github.com/neovim/neovim/releases/download/${NEOVIM_VERSION}/nvim-linux-x86_64.tar.gz -o /opt/build/nvim-linux-x86_64.tar.gz
|
||||
CMD tar -C /opt/build -xvf /opt/build/nvim-linux-x86_64.tar.gz
|
||||
CMD cp -Rpv /opt/build/nvim-linux-x86_64/bin/* /usr/local/bin
|
||||
CMD cp -Rpv /opt/build/nvim-linux-x86_64/lib/* /usr/local/lib
|
||||
CMD cp -Rpv /opt/build/nvim-linux-x86_64/share/* /usr/local/share
|
||||
CMD curl -L https://github.com/neovim/neovim/releases/download/${NEOVIM_VERSION}/nvim-linux-${NEOARCH}.tar.gz -o /opt/build/nvim-linux-${NEOARCH}.tar.gz
|
||||
CMD tar -C /opt/build -xvf /opt/build/nvim-linux-${NEOARCH}.tar.gz
|
||||
CMD cp -Rpv /opt/build/nvim-linux-${NEOARCH}/bin/* /usr/local/bin
|
||||
CMD cp -Rpv /opt/build/nvim-linux-${NEOARCH}/lib/* /usr/local/lib
|
||||
CMD cp -Rpv /opt/build/nvim-linux-${NEOARCH}/share/* /usr/local/share
|
||||
|
||||
# lazyvim
|
||||
CMD su ${USERNAME} -c "git clone https://github.com/LazyVim/starter /home/${USERNAME}/.config/nvim"
|
||||
|
||||
# python
|
||||
CMD curl -L https://www.python.org/ftp/python/3.12.12/Python-3.12.12.tgz -o /opt/build/Python-3.12.12.tgz
|
||||
CMD tar -C /opt/build -xvf /opt/build/Python-3.12.12.tgz
|
||||
CMD cd /opt/build/Python-3.12.12; ./configure
|
||||
CMD cd /opt/build/Python-3.12.12; make -j 8
|
||||
CMD cd /opt/build/Python-3.12.12; make install
|
||||
CMD curl -L https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tgz -o /opt/build/Python-${PYTHON_VERSION}.tgz
|
||||
CMD tar -C /opt/build -xvf /opt/build/Python-${PYTHON_VERSION}.tgz
|
||||
CMD cd /opt/build/Python-${PYTHON_VERSION}; ./configure
|
||||
CMD cd /opt/build/Python-${PYTHON_VERSION}; make -j 8
|
||||
CMD cd /opt/build/Python-${PYTHON_VERSION}; make install
|
||||
|
||||
# ripgrep
|
||||
CMD curl -L https://github.com/BurntSushi/ripgrep/releases/download/15.1.0/ripgrep_15.1.0-1_amd64.deb -o /opt/build/ripgrep_15.1.0-1_amd64.deb
|
||||
CMD dpkg -i /opt/build/ripgrep_15.1.0-1_amd64.deb
|
||||
CMD curl -L https://github.com/BurntSushi/ripgrep/releases/download/${RIPGREP_VERSION}/ripgrep-${RIPGREP_VERSION}-${ARCH}-unknown-linux-musl.tar.gz -o /opt/build/ripgrep-${RIPGREP_VERSION}-${ARCH}-unknown-linux-musl.tar.gz
|
||||
CMD cd /opt/build; tar -xvf ripgrep-${RIPGREP_VERSION}-${ARCH}-unknown-linux-musl.tar.gz
|
||||
CMD cp /opt/build/ripgrep-${RIPGREP_VERSION}-${ARCH}-unknown-linux-musl/rg /usr/bin
|
||||
|
||||
# rust
|
||||
CMD curl -L https://static.rust-lang.org/dist/rust-1.91.1-x86_64-unknown-linux-gnu.tar.xz -o /opt/build/rust-1.91.1.tar.xz
|
||||
CMD cd /opt/build; tar xvf rust-1.91.1.tar.xz
|
||||
CMD cd /opt/build/rust-1.91.1-x86_64-unknown-linux-gnu; ./install.sh
|
||||
CMD curl -L https://static.rust-lang.org/dist/rust-${RUST_VERSION}-${ARCH}-unknown-linux-gnu.tar.xz -o /opt/build/rust-${RUST_VERSION}.tar.xz
|
||||
CMD cd /opt/build; tar xvf rust-${RUST_VERSION}.tar.xz
|
||||
CMD cd /opt/build/rust-${RUST_VERSION}-${ARCH}-unknown-linux-gnu; ./install.sh
|
||||
|
||||
RESTART
|
||||
|
||||
56
podman-lazyvim/Dockerfile
Normal file
56
podman-lazyvim/Dockerfile
Normal file
@ -0,0 +1,56 @@
|
||||
FROM docker.io/ubuntu:latest
|
||||
|
||||
ARG USERNAME="jgrafton"
|
||||
ARG UID="503"
|
||||
ARG GID="20"
|
||||
ARG ARCH="amd64"
|
||||
ARG NEOARCH="x86_64"
|
||||
|
||||
ARG NEOVIM_VERSION="v0.11.5"
|
||||
ARG NVM_VERSION="v0.40.3"
|
||||
ARG NODE_VERSION="24"
|
||||
ARG PYTHON_VERSION="3.12.12"
|
||||
ARG RIPGREP_VERSION="15.1.0"
|
||||
ARG RUST_VERSION="1.91.1"
|
||||
|
||||
# ubuntu / debian packages
|
||||
RUN echo 'APT::Cache-Start "1000000000";' >> /etc/apt/apt.conf
|
||||
RUN apt update -y
|
||||
RUN apt install -y curl git tar build-essential openssl libssl-dev libzstd-dev zlib1g-dev unzip ripgrep fzf
|
||||
|
||||
# create user
|
||||
#RUN addgroup --gid ${GID} ${USERNAME}
|
||||
RUN adduser -q --uid ${UID} --gid ${GID} --disabled-password --gecos "" ${USERNAME}
|
||||
|
||||
# node
|
||||
RUN su ${USERNAME} -c "curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash"
|
||||
RUN su - ${USERNAME} -s/bin/bash -c "export NVM_DIR=/home/${USERNAME}/.nvm; . /home/${USERNAME}/.nvm/nvm.sh; nvm install 24"
|
||||
|
||||
# neovim
|
||||
RUN mkdir -p /opt/build
|
||||
RUN curl -L https://github.com/neovim/neovim/releases/download/${NEOVIM_VERSION}/nvim-linux-${NEOARCH}.tar.gz -o /opt/build/nvim-linux-${NEOARCH}.tar.gz
|
||||
RUN tar -C /opt/build -xvf /opt/build/nvim-linux-${NEOARCH}.tar.gz
|
||||
RUN cp -Rpv /opt/build/nvim-linux-${NEOARCH}/bin/* /usr/local/bin
|
||||
RUN cp -Rpv /opt/build/nvim-linux-${NEOARCH}/lib/* /usr/local/lib
|
||||
RUN cp -Rpv /opt/build/nvim-linux-${NEOARCH}/share/* /usr/local/share
|
||||
|
||||
# lazyvim
|
||||
RUN su ${USERNAME} -c "git clone https://github.com/LazyVim/starter /home/${USERNAME}/.config/nvim"
|
||||
|
||||
# python
|
||||
RUN curl -L https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tgz -o /opt/build/Python-${PYTHON_VERSION}.tgz
|
||||
RUN tar -C /opt/build -xvf /opt/build/Python-${PYTHON_VERSION}.tgz
|
||||
RUN cd /opt/build/Python-${PYTHON_VERSION}; ./configure
|
||||
RUN cd /opt/build/Python-${PYTHON_VERSION}; make -j 8
|
||||
RUN cd /opt/build/Python-${PYTHON_VERSION}; make install
|
||||
|
||||
# ripgrep
|
||||
#RUN curl -L https://github.com/BurntSushi/ripgrep/releases/download/${RIPGREP_VERSION}/ripgrep-${RIPGREP_VERSION}-${ARCH}-unknown-linux-gnu.tar.gz -o /opt/build/ripgrep-${RIPGREP_VERSION}-${ARCH}-unknown-linux-gnu.tar.gz
|
||||
#RUN cd /opt/build; tar -xvf ripgrep-${RIPGREP_VERSION}-${ARCH}-unknown-linux-gnu.tar.gz
|
||||
#RUN cp /opt/build/ripgrep-${RIPGREP_VERSION}-${ARCH}-unknown-linux-gnu/rg /usr/bin
|
||||
|
||||
# rust
|
||||
RUN curl -L https://static.rust-lang.org/dist/rust-${RUST_VERSION}-${NEOARCH}-unknown-linux-gnu.tar.xz -o /opt/build/rust-${RUST_VERSION}.tar.xz
|
||||
RUN cd /opt/build; tar xvf rust-${RUST_VERSION}.tar.xz
|
||||
RUN cd /opt/build/rust-${RUST_VERSION}-${NEOARCH}-unknown-linux-gnu; ./install.sh
|
||||
|
||||
Reference in New Issue
Block a user