diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index ae5c296..981f464 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -21,7 +21,7 @@ on: jobs: build: runs-on: - - HELIOS-AI + - STANDARD-RUNNER strategy: matrix: distro: diff --git a/Dockerfile b/Dockerfile index 0165fc5..f0134b7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -119,7 +119,9 @@ COPY common/root/ / # LD_PRELOAD wrapper handlers (selkies hack) RUN chmod +x /usr/bin/thunar \ - && chmod +x /usr/bin/sudo + && chmod +x /usr/bin/sudo \ + && chmod +x /usr/bin/google-chrome-stable \ + && chmod +x /usr/bin/google-chrome # copy in distro specific custom rootfs changes COPY ${SRC}/root/ / diff --git a/common/build/system.sh b/common/build/system.sh index d6404b1..315b516 100644 --- a/common/build/system.sh +++ b/common/build/system.sh @@ -28,33 +28,25 @@ mv -v otf/static/* /usr/share/fonts/cascadia-code/ rm -rfv /tmp/* fc-cache -f -v +# install chrome +if command -v apt &> /dev/null; then + apt update + apt install -y wget unzip + wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb + dpkg -i google-chrome-stable_current_amd64.deb || apt -f install -y + rm google-chrome-stable_current_amd64.deb +else + dnf install -y wget unzip + wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm + dnf install -y google-chrome-stable_current_x86_64.rpm + rm google-chrome-stable_current_x86_64.rpm +fi + # LD_PRELOAD fix mv /usr/bin/thunar /usr/bin/thunar-real mv /usr/bin/sudo /usr/bin/sudo-real - -# build out conda tooling -mkdir -p /opt -wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -P /opt -chmod -v +x /opt/Miniconda3-latest-Linux-x86_64.sh -/opt/Miniconda3-latest-Linux-x86_64.sh -b -p /opt/miniconda -eval "$(/opt/miniconda/bin/conda shell.bash hook)" -export PATH="/opt/miniconda/bin:/opt/miniconda/condabin:/usr/local/cuda/bin:$PATH" -export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH" -conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/main -conda tos accept --override-channels --channel https://repo.anaconda.com/pkgs/r -conda config --set channel_priority strict - -# setup vllm environment -conda create -p /opt/conda/envs/vllm python=3.12 -y -conda activate /opt/conda/envs/vllm -pip install vllm "huggingface_hub[cli]" "open-webui[all]" -conda deactivate - -# setup shared conda environments -chmod -R 7777 /opt/conda -chmod -R 7777 /opt/miniconda +mv /usr/bin/google-chrome-stable /usr/bin/google-chrome-stable-real +mv /usr/bin/google-chrome /usr/bin/google-chrome-real # Cleanup -rm -f /opt/Miniconda3-latest-Linux-x86_64.sh -conda clean -afy rm -rf /tmp/* diff --git a/common/root/etc/skel/.bashrc b/common/root/etc/skel/.bashrc index 6596372..51fc35c 100644 --- a/common/root/etc/skel/.bashrc +++ b/common/root/etc/skel/.bashrc @@ -8,25 +8,6 @@ case $- in *) return;; esac -# >>> conda initialize >>> -__conda_setup="$('/opt/miniconda/bin/conda' 'shell.bash' 'hook' 2> /dev/null)" -if [ $? -eq 0 ]; then - eval "$__conda_setup" -else - if [ -f "/opt/miniconda/etc/profile.d/conda.sh" ]; then - . "/opt/miniconda/etc/profile.d/conda.sh" - else - export PATH="/opt/miniconda/bin:$PATH" - fi -fi -unset __conda_setup -# <<< conda initialize <<< - -export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH" - -# Shared conda environments -export CONDA_ENVS_PATH="/opt/conda/envs" - # UTF-8 locale export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8 diff --git a/common/root/etc/skel/.zshrc b/common/root/etc/skel/.zshrc index 6717a9c..a03abdd 100644 --- a/common/root/etc/skel/.zshrc +++ b/common/root/etc/skel/.zshrc @@ -1,25 +1,6 @@ # If you come from bash you might have to change your $PATH. # export PATH=$HOME/bin:/usr/local/bin:$PATH -# >>> conda initialize >>> -__conda_setup="$('/opt/miniconda/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)" -if [ $? -eq 0 ]; then - eval "$__conda_setup" -else - if [ -f "/opt/miniconda/etc/profile.d/conda.sh" ]; then - . "/opt/miniconda/etc/profile.d/conda.sh" - else - export PATH="/opt/miniconda/bin:$PATH" - fi -fi -unset __conda_setup -# <<< conda initialize <<< - -export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH" - -# Shared conda environments -export CONDA_ENVS_PATH="/opt/conda/envs" - # UTF-8 locale export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8 diff --git a/common/root/usr/bin/google-chrome b/common/root/usr/bin/google-chrome new file mode 100644 index 0000000..608e1a4 --- /dev/null +++ b/common/root/usr/bin/google-chrome @@ -0,0 +1,4 @@ +#!/bin/bash +rm -rf $HOME/.config/google-chrome/Singleton* || true +unset LD_PRELOAD +google-chrome-real --no-sandbox "$@" diff --git a/common/root/usr/bin/google-chrome-stable b/common/root/usr/bin/google-chrome-stable new file mode 100644 index 0000000..9e708c2 --- /dev/null +++ b/common/root/usr/bin/google-chrome-stable @@ -0,0 +1,4 @@ +#!/bin/bash +rm -rf $HOME/.config/google-chrome/Singleton* || true +unset LD_PRELOAD +google-chrome-stable-real --no-sandbox "$@" diff --git a/packages/system.yaml b/packages/system.yaml index 2fafcfc..1f277c5 100644 --- a/packages/system.yaml +++ b/packages/system.yaml @@ -1,18 +1,15 @@ packages: - - noble: firefox - jammy: firefox - debian: firefox-esr - kali: firefox-esr - sid: firefox-esr - rhel: firefox - # ==================================== # Common packages across all distributions # ==================================== + # gcc compiler for building native extensions and compiling code; essential for development and many Python packages with C extensions. + - common: gcc + # sudo for privilege escalation - common: sudo + # zsh shell, an alternative to bash with enhanced features and user experience. - common: zsh # keyboard/mouse simulation for x11