god i hope this works

This commit is contained in:
Lio 2024-11-29 10:45:29 +01:00
parent cba7e0712b
commit 2184fc5e85
7 changed files with 91 additions and 1746 deletions

View file

@ -0,0 +1,26 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/docker-existing-dockerfile
{
"name": "Existing Dockerfile",
"build": {
// Sets the run context to one level up instead of the .devcontainer folder.
"context": "..",
// Update the 'dockerFile' property if you aren't using the standard 'Dockerfile' filename.
"dockerfile": "../Dockerfile"
}
// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Uncomment the next line to run commands after the container is created.
// "postCreateCommand": "cat /etc/os-release",
// Configure tool-specific properties.
// "customizations": {},
// Uncomment to connect as an existing user other than the container default. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "devcontainer"
}

1
.gitignore vendored
View file

@ -1 +0,0 @@
docker-*

View file

@ -1,30 +1,40 @@
# FROM mcr.microsoft.com/devcontainers/base:alpine
FROM alpine:3.20.3 FROM alpine:3.20.3
LABEL org.opencontainers.image.source https://git.lio.cat/l/emphemeral
LABEL org.opencontainers.image.title Emphemeral
LABEL org.opencontainers.image.description "Intended to be used within Dev Containers, contains everything I might need when coding"
RUN apk add --no-cache \ RUN apk add --no-cache \
# QoL # QoL
git \ git \
openrc \
zsh \ zsh \
curl \
bat \ bat \
exa \ exa \
rsync \ rsync \
shadow \ shadow \
neofetch \ neofetch \
tailscale \
# JS # JS
npm \
yarn \ yarn \
deno \ deno
# Pyro # Pyro
rust \ # rust \
cargo \ # cargo \
go # go
RUN npm i -g pnpm
RUN ln -f /bin/zsh /bin/sh RUN ln -f /bin/zsh /bin/sh
RUN ln -f /bin/zsh /bin/ash RUN ln -f /bin/zsh /bin/ash
COPY ./dotfiles /root/.files COPY ./dotfiles /root/.files
RUN ln -s /root/.files/.zshrc /root/.zshrc RUN ln -sf /root/.files/.zshrc /root/.zshrc
RUN cp /root/.files/zsh/p10k.zsh /root/.p10k.zsh RUN ZSH=~/.zsh KEEP_ZSHRC=yes sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
RUN source /root/.zshrc COPY docker-entrypoint.sh /
RUN chmod +x /docker-entrypoint.sh
ENTRYPOINT [ "/docker-entrypoint.sh" ]
WORKDIR /root CMD [ "sleep", "infinity" ]
ENTRYPOINT [ "/bin/zsh" ]

View file

@ -1,6 +0,0 @@
services:
eph:
build: .
hostname: ephi
volumes:
- ./docker-dotfiles:/root/.files:rw

36
docker-entrypoint.sh Normal file
View file

@ -0,0 +1,36 @@
#!/usr/bin/env bash
INCLUDED=(
"git"
"zsh"
"curl"
"bat"
"exa"
"rsync"
"shadow"
"neofetch"
"npm"
"pnpm"
"yarn"
"deno"
)
echo "░▒▓████████▓▒░▒▓██████▓▒░░▒▓███████▓▒░ ░▒▓██████▓▒░░▒▓██████████████▓▒░░▒▓███████▓▒░░▒▓█▓▒░░▒▓█▓▒░░▒▓███████▓▒░
░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░
░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░
░▒▓██████▓▒░░▒▓████████▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒▒▓███▓▒░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓███████▓▒░░▒▓███████▓▒░ ░▒▓██████▓▒░
░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░
░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░
░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░░▒▓██████▓▒░░▒▓█▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓███████▓▒░"
echo "Custom Alpine Container by https://lio.to"
echo ""
echo "Included in this Image is:"
for i in "${INCLUDED[@]}"
do
echo " - $i"
done
exec "$@"

View file

@ -1,9 +1,10 @@
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then bindkey -e
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" setopt autocd
fi export ZSH="$HOME/.zsh"
# Set the directory we want to store zinit and plugins # Set the directory we want to store zinit and plugins
ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git" ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git"
ZSH_THEME="cypher"
# Download Zinit, if it's not there yet # Download Zinit, if it's not there yet
if [ ! -d "$ZINIT_HOME" ]; then if [ ! -d "$ZINIT_HOME" ]; then
@ -18,8 +19,7 @@ source "${ZINIT_HOME}/zinit.zsh"
zinit light zsh-users/zsh-syntax-highlighting zinit light zsh-users/zsh-syntax-highlighting
zinit light zsh-users/zsh-completions zinit light zsh-users/zsh-completions
zinit light zsh-users/zsh-autosuggestions zinit light zsh-users/zsh-autosuggestions
zinit light unixorn/fzf-zsh-plugin # zinit light unixorn/fzf-zsh-plugin
zinit ice depth=1; zinit light romkatv/powerlevel10k
zinit snippet OMZL::key-bindings.zsh zinit snippet OMZL::key-bindings.zsh
@ -38,4 +38,4 @@ alias force='git push --force'
alias pull='git pull' alias pull='git pull'
alias add='git add' alias add='git add'
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh source $ZSH/oh-my-zsh.sh

File diff suppressed because it is too large Load diff