Streamline and consolidate arch toolbox containerfile
All checks were successful
Reese's Arch Toolbox / build-and-push-arch-toolbox (push) Successful in 6m29s

This commit is contained in:
2024-11-27 11:00:16 -05:00
parent e666f7cc01
commit 463f3d142d
3 changed files with 54 additions and 31 deletions

View File

@@ -1,9 +1,9 @@
name: Gitea Actions Demo name: Reese's Arch Toolbox
run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀 run-name: Build and Push Reese's Arch Toolbox
on: [push] on: [push]
jobs: jobs:
build-arch-toolbox: build-and-push-arch-toolbox:
runs-on: ubuntu-latest runs-on: ubuntu-latest
if: gitea.ref == 'refs/heads/main' if: gitea.ref == 'refs/heads/main'
steps: steps:

View File

@@ -1,26 +1,24 @@
FROM quay.io/toolbx/arch-toolbox:latest FROM quay.io/toolbx/arch-toolbox:latest
# Pacman Setup # Enable Pacman multilib
# Enable multilib
RUN tee -a /etc/pacman.conf <<EOF RUN tee -a /etc/pacman.conf <<EOF
[multilib] [multilib]
Include = /etc/pacman.d/mirrorlist Include = /etc/pacman.d/mirrorlist
EOF EOF
# Set architecture to x86_64 manually because auto doesn't work.
# Set Pacman architecture to x86_64 manually because auto doesn't work.
RUN sed -i 's/Architecture = auto/Architecture = x86_64/' /etc/pacman.conf RUN sed -i 's/Architecture = auto/Architecture = x86_64/' /etc/pacman.conf
# Get updates
# Sync Pacman repos and get updates
RUN pacman -Syu --noconfirm RUN pacman -Syu --noconfirm
# Install zsh # Install tools
RUN pacman -S --noconfirm \ RUN pacman -S --noconfirm \
zsh \ zsh \
grml-zsh-config \ grml-zsh-config \
zsh-syntax-highlighting \ zsh-syntax-highlighting \
zsh-autosuggestions \ zsh-autosuggestions \
pkgfile pkgfile \
# Install tools
RUN pacman -S --noconfirm \
vim \ vim \
bind \ bind \
iperf3 \ iperf3 \
@@ -32,24 +30,26 @@ RUN pacman -S --noconfirm \
python-pipx \ python-pipx \
ansible \ ansible \
tmux \ tmux \
ffmpeg ffmpeg \
wine \
podman \
unzip
# Ollama # Ollama
RUN curl -fsSL https://ollama.com/install.sh | sh RUN curl -L https://ollama.com/download/ollama-linux-amd64.tgz -o ollama-linux-amd64.tgz && \
tar -C /usr -xzf ollama-linux-amd64.tgz && \
rm ollama-linux-amd64.tgz
# AWS CLI # AWS CLI V2
RUN pacman -S --noconfirm unzip RUN curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" && \
RUN curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip awscliv2.zip && \
RUN unzip awscliv2.zip ./aws/install && \
RUN ./aws/install rm awscliv2.zip && \
rm -rf aws
# Podman
RUN pacman -S --noconfirm podman
# Wine
RUN pacman -Sy --noconfirm wine
####################
##### RUN LAST ##### ##### RUN LAST #####
####################
# ZSHRC # ZSHRC
COPY <<EOF /etc/zsh/zshrc.local COPY <<EOF /etc/zsh/zshrc.local

View File

@@ -28,11 +28,13 @@
- [Junction](#junction) - [Junction](#junction)
- [Kdenlive](#kdenlive) - [Kdenlive](#kdenlive)
- [The Powder Toy](#the-powder-toy) - [The Powder Toy](#the-powder-toy)
- [Pika](#pika)
- [Toolbox](#toolbox) - [Toolbox](#toolbox)
- [Reese's Arch Toolbox](#reeses-arch-toolbox) - [Reese's Arch Toolbox](#reeses-arch-toolbox)
- [Using Reese's Arch Toolbox](#using-reeses-arch-toolbox) - [Pipx/Poetry](#pipxpoetry)
- [Updating Reese's Arch Toolbox](#updating-reeses-arch-toolbox) - [Using Reese's Arch Toolbox](#using-reeses-arch-toolbox)
- [Building Reese's Arch Toolbox](#building-reeses-arch-toolbox) - [Updating Reese's Arch Toolbox](#updating-reeses-arch-toolbox)
- [Building Reese's Arch Toolbox](#building-reeses-arch-toolbox)
## Podman ## Podman
@@ -287,6 +289,14 @@ I love sandboxes.
uk.co.powdertoy.tpt uk.co.powdertoy.tpt
``` ```
### Pika
Backup with Borg.
```bash
flatpak install org.gnome.World.PikaBackup
```
## Toolbox ## Toolbox
```bash ```bash
@@ -320,14 +330,27 @@ I have a custom arch image based on the default arch-toolbox image. It offers:
- podman (connected automatically to the host machine via the unix socket) - podman (connected automatically to the host machine via the unix socket)
- tmux - tmux
#### Using Reese's Arch Toolbox #### Pipx/Poetry
<https://python-poetry.org/docs/>
```bash
# pipx is already installed but the pathing won't work for installed apps
pipx ensurepath # then source ~/.zshrc or ~/.bashrc
pipx install poetry
# Now this should work.
poetry new test-project
```
### Using Reese's Arch Toolbox
```bash ```bash
toolbox create -i gitea.reeseapps.com/services/arch-toolbox:latest toolbox create -i gitea.reeseapps.com/services/arch-toolbox:latest
SHELL=/bin/zsh toolbox enter arch-toolbox-latest SHELL=/bin/zsh toolbox enter arch-toolbox-latest
``` ```
#### Updating Reese's Arch Toolbox ### Updating Reese's Arch Toolbox
```bash ```bash
# Stop the current arch toolbox # Stop the current arch toolbox
@@ -340,7 +363,7 @@ podman pull gitea.reeseapps.com/services/arch-toolbox:latest
toolbox create -i gitea.reeseapps.com/services/arch-toolbox:latest toolbox create -i gitea.reeseapps.com/services/arch-toolbox:latest
``` ```
#### Building Reese's Arch Toolbox ### Building Reese's Arch Toolbox
You can build and run the image wit this (See `Containerfile` in this directory): You can build and run the image wit this (See `Containerfile` in this directory):