Skip to content

Instantly share code, notes, and snippets.

@chyld
Created November 28, 2022 07:28
Show Gist options
  • Save chyld/5f00501eeec7f623c0a254a5aaa8c298 to your computer and use it in GitHub Desktop.
Save chyld/5f00501eeec7f623c0a254a5aaa8c298 to your computer and use it in GitHub Desktop.
FROM archlinux:latest
ENV TZ America/Los_Angeles
RUN pacman -Sy --noconfirm
RUN pacman -S --noconfirm shellcheck starship cowsay wget git unzip neovim vim ripgrep fd bat hexyl htop tree inetutils exa inotify-tools lua xclip fzf glow duf bpytop lazygit openssh
RUN pacman -S --noconfirm --needed base-devel
RUN useradd -ms /bin/bash chyld
USER chyld
WORKDIR /home/chyld
RUN curl https://sh.rustup.rs -sSf | sh -s -- -y
RUN wget https://nodejs.org/dist/v19.1.0/node-v19.1.0-linux-x64.tar.xz \
&& tar -xf node-v19.1.0-linux-x64.tar.xz \
&& mkdir -p ~/.local \
&& mv node-v19.1.0-linux-x64 ~/.local/node \
&& rm node-v19.1.0-linux-x64.tar.xz
RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh \
&& bash Miniconda3-latest-Linux-x86_64.sh -b -p /home/chyld/.local/miniconda3 \
&& rm Miniconda3-latest-Linux-x86_64.sh
RUN mkdir X Code .config && cd Code && git clone --depth 1 https://github.com/chyld/devops
RUN rm .bash_profile .bashrc \
&& ln -s ~/Code/devops/platforms/mint-ubuntu/v012/.bash_profile . \
&& ln -s ~/Code/devops/platforms/mint-ubuntu/v012/.bashrc . \
&& ln -s ~/Code/devops/platforms/mint-ubuntu/v012/.gitconfig . \
&& ln -s ~/Code/devops/platforms/mint-ubuntu/v012/starship.toml ~/.config
SHELL ["/bin/bash", "--login", "-c"]
RUN npm install -g eslint
RUN conda create -y --name frodo python=3.11 -c conda-forge \
&& conda activate frodo \
&& conda install -y jupyterlab -c conda-forge \
&& pip install pylint black httpie pandas numpy matplotlib scikit-learn scipy sympy statsmodels
RUN cargo install tuc --features regex \
&& cargo install atuin \
&& curl https://raw.githubusercontent.com/rcaloras/bash-preexec/master/bash-preexec.sh -o ~/.bash-preexec.sh
RUN git clone --depth 1 https://github.com/wbthomason/packer.nvim ~/.local/share/nvim/site/pack/packer/start/packer.nvim \
&& ln -s ~/Code/devops/platforms/mint-ubuntu/v012/nvim ~/.config \
&& nvim --headless -c 'autocmd User PackerComplete quitall' -c 'PackerSync' \
&& nvim --headless -c 'MasonInstall bash-language-server lua-language-server typescript-language-server pyright' +qa
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment