4 Commits
Author SHA1 Message Date
marc 49b115bcb3 big names
Build all sequentially to test builds / base (push) Canceled after 0s
Build all sequentially to test builds / xorg (push) Canceled after 0s
Build all sequentially to test builds / vnc (push) Canceled after 0s
Build all sequentially to test builds / parabola (push) Canceled after 0s
2022-08-02 15:15:50 +02:00
marc 67d4e9c35e fix artifacts colon problem 2022-08-02 14:09:34 +02:00
marc 823167d26a needs statements 2022-08-01 17:46:01 +02:00
marc 9f420e02f6 artifacts 2022-08-01 17:41:12 +02:00
17 changed files with 135 additions and 202 deletions
+110 -21
View File
@@ -1,8 +1,6 @@
name: Docker
name: Build all sequentially to test builds
on:
schedule:
- cron: "0 4 * * *" # everyday at 4 am
push:
branches:
- '*' # matches every branch that doesn't contain a '/'
@@ -17,23 +15,114 @@ on:
pull_request:
jobs:
build:
base:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Update apt
run: sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y
- name: Install make
run: sudo apt install make docker-compose -y
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: build base
run: make buildbase
- name: build xorg
run: make buildxorg
- name: build vnc
run: make buildvnc
- name: build parabola
run: make buildparabola
- uses: actions/checkout@v3
- uses: docker/setup-buildx-action@v2
- name: Build and export
uses: docker/build-push-action@v3
with:
context: base
tags: marcpartensky/arch:base
outputs: type=docker,dest=/tmp/base.tar
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: base
path: /tmp/base.tar
xorg:
needs: base
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: docker/setup-buildx-action@v2
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: base
path: /tmp
- name: Load image
run: |
docker load --input /tmp/base.tar
docker image ls -a
- name: Build and export
uses: docker/build-push-action@v3
with:
context: xorg
tags: marcpartensky/arch:xorg
outputs: type=docker,dest=/tmp/xorg.tar
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: xorg
path: /tmp/xorg.tar
vnc:
needs: xorg
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: docker/setup-buildx-action@v2
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: xorg
path: /tmp
- name: Load image
run: |
docker load --input /tmp/xorg.tar
docker image ls -a
- name: Build and export
uses: docker/build-push-action@v3
with:
context: vnc
tags: marcpartensky/arch:vnc
outputs: type=docker,dest=/tmp/vnc.tar
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: vnc
path: /tmp/vnc.tar
parabola:
needs: xorg
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: docker/setup-buildx-action@v2
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: xorg
path: /tmp
- name: Load image
run: |
docker load --input /tmp/xorg.tar
docker image ls -a
- name: Build and export
uses: docker/build-push-action@v3
with:
context: parabola
tags: marcpartensky/arch:parabola
outputs: type=docker,dest=/tmp/parabola.tar
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: parabola
path: /tmp/parabola.tar
+1 -1
View File
@@ -1,4 +1,4 @@
name: Docker
name: Build all then push
on:
schedule:
-4
View File
@@ -6,8 +6,6 @@ vnc: buildvnc
docker-compose up vnc
parabola: buildparabola
docker-compose up parabola
artix: buildartix
docker-compose up artix
buildbase:
docker-compose build base
@@ -17,8 +15,6 @@ buildvnc: buildxorg
docker-compose build vnc
buildparabola: buildbase
docker-compose build parabola
buildartix:
docker-compose build artix
buildall: buildbase buildxorg buildvnc buildparabola
+3 -12
View File
@@ -1,15 +1,6 @@
# Custom environment images
## Shell
[marcpartensky/arch](https://hub.docker.com/r/marcpartensky/arch)
## Xephyr
[marcpartensky/arch:xorg](https://hub.docker.com/r/marcpartensky/arch:xorg)
## VNC/NoVNC
[marcpartensky/arch:vnc](https://hub.docker.com/r/marcpartensky/arch:vnc)
## Parabola
Parabola is an arch derivative that focuses on foss.
- [marcpartensky/arch](https://hub.docker.com/r/marcpartensky/arch)
- [marcpartensky/arch:xorg](https://hub.docker.com/r/marcpartensky/arch:xorg)
- [marcpartensky/arch:vnc](https://hub.docker.com/r/marcpartensky/arch:vnc)
- [marcpartensky/arch:parabola](https://hub.docker.com/r/marcpartensky/arch:parabola)
-59
View File
@@ -1,59 +0,0 @@
FROM artixlinux/openrc:latest
LABEL maintainer="Marc Partensky"
RUN pacman -Syyyu --needed --noconfirm base-devel
RUN pacman -S --noconfirm git
RUN useradd --create-home --groups wheel --shell /usr/bin/zsh marc
RUN passwd -d marc
RUN echo "%wheel ALL=(ALL) ALL" >> /etc/sudoers
USER marc
WORKDIR /tmp
RUN git clone https://aur.archlinux.org/paru.git
WORKDIR /tmp/paru
RUN makepkg -si --noconfirm
RUN paru -Syyyu --noconfirm \
zsh \
neovim \
exa \
paruz \
make \
npm \
go \
pod2man \
openssh \
stow-git
# RUN paru -aS --noconfirm \
# bat
COPY entrypoint.sh /tmp/entrypoint.sh
USER root
RUN cat /etc/locale.gen
# RUN sed -i -e 's/en_US.UTF-8 UTF-8/fr_FR.UTF-8 UTF-8/' /etc/locale.gen
# RUN cat /etc/locale.gen
# RUN locale-gen
# RUN cat /etc/locale.gen
ENV LC_ALL fr_FR.UTF-8
ENV LANG fr_FR.UTF-8
ENV LANGUAGE fr_FR:fr
USER marc
ENV HOST docker
WORKDIR /home/marc
RUN mkdir git
RUN git clone https://github.com/marcpartensky/dotfiles git/dotfiles
RUN zsh git/dotfiles/main.sh
RUN make -C git/dotfiles stow
RUN touch .profile
RUN git clone https://github.com/marcpartensky/nvim ~/.config/nvim
RUN make -C ~/.config/nvim setup
ENTRYPOINT [ "/tmp/entrypoint.sh" ]
-4
View File
@@ -1,4 +0,0 @@
#!/usr/bin/zsh
ssh-keygen -q -t rsa -N '' -f $HOME/.ssh/id_rsa
exec zsh
-24
View File
@@ -1,24 +0,0 @@
FROM marcpartensky/artix
LABEL maintainer=<marc.partensky@gmail.com>
USER marc
EXPOSE 5900 8080
ENV DISPLAY=:0.0
# Install packages
RUN paru -Syyyu --noconfirm \
# xorg-server required for xdummy
Hyprland-bin \
tigervnc \
novnc \
cron \
ttf-meslo-nerd-font-powerlevel10k
USER root
COPY crontab.txt /var/spool/cron/marc
RUN chmod 600 /var/spool/cron/marc
USER marc
COPY entrypoint.sh /opt/arch/
COPY supervisord.conf /etc/supervisord.conf
# ENTRYPOINT [ "/opt/arch/entrypoint.sh" ]
-1
View File
@@ -1 +0,0 @@
* * * * * /home/marc/.local/bin/wpp -n
-4
View File
@@ -1,4 +0,0 @@
#!/bin/sh
export WALLPAPERS_PATH=/home/marc/wallpapers
supervisord -l /tmp/supervisord.log
-57
View File
@@ -1,57 +0,0 @@
[supervisord]
nodaemon=true
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[unix_http_server]
file=/tmp/supervisord.sock
[supervisorctl]
serverurl=unix:///tmp/supervisord.sock
[program:xvnc]
command=Xvnc :0 -SecurityTypes None -geometry 1820x980
autorestart=true
user=marc
priority=1
[program:picom]
command=picom
user=marc
autorestart=true
priority=2
[program:dwm]
command=/usr/local/bin/dwm
autorestart=true
user=marc
priority=3
[program:dwmblocks]
command=/usr/local/bin/dwmblocks
autorestart=true
user=marc
priority=4
[program:noVNC]
command=/sbin/novnc --vnc localhost:5900 --listen 8080
autorestart=true
user=marc
priority=3
[program:wallpaper]
command=zsh -c "sleep 2 && /home/marc/.local/bin/wpp -n"
user=marc
priority=5
[program:cron]
command=crond -f
user=root
priority=5
[program:alacritty]
command=alacritty -e neofetch"
autorestart=false
user=marc
priority=5
-5
View File
@@ -10,11 +10,6 @@ services:
volumes:
- /var/run/docker.sock:/var/run/docker.sock
artix:
image: marcpartensky/artix
build:
context: artix
xorg:
image: marcpartensky/arch:xorg
build:
+3 -3
View File
@@ -12,7 +12,7 @@ RUN paru -Syyyu --noconfirm \
# xorg-server-utils \
xorg-server-xvfb \
# xf86-video-dummy \
tigervnc \
x11vnc \
novnc \
cron \
ttf-meslo-nerd-font-powerlevel10k
@@ -22,6 +22,6 @@ COPY crontab.txt /var/spool/cron/marc
RUN chmod 600 /var/spool/cron/marc
USER marc
COPY entrypoint.sh /opt/arch/
COPY supervisord.conf /etc/supervisord.conf
COPY supervisord.conf entrypoint.sh /opt/arch/
ENTRYPOINT [ "/opt/arch/entrypoint.sh" ]
# ENTRYPOINT ["/usr/bin/supervisord", "-c", "/etc/supervisor.d/supervisord.ini"]
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/sh
export WALLPAPERS_PATH=/home/marc/wallpapers
supervisord -l /tmp/supervisord.log
supervisord -c /opt/arch/supervisord.conf -l /tmp/supervisord.log
+15 -4
View File
@@ -10,18 +10,30 @@ file=/tmp/supervisord.sock
[supervisorctl]
serverurl=unix:///tmp/supervisord.sock
[program:xvnc]
command=Xvnc :0 -SecurityTypes None -geometry 1820x980
[program:xvfb]
command=Xvfb :0 -screen 0 1820x980x8
autorestart=true
user=marc
priority=1
# [program:xdummy]
# command=/usr/bin/Xdummy :0 -screen 0 1820x980x8
# autorestart=true
# user=marc
# priority=1
[program:picom]
command=picom
user=marc
autorestart=true
priority=2
[program:x11vnc]
command=/usr/bin/x11vnc -shared -forever
autorestart=true
user=marc
priority=2
[program:dwm]
command=/usr/local/bin/dwm
autorestart=true
@@ -51,7 +63,6 @@ user=root
priority=5
[program:alacritty]
command=alacritty -e neofetch"
autorestart=false
command=alacritty -e sh -c "picom -b"
user=marc
priority=5
+1 -1
View File
@@ -45,7 +45,7 @@ RUN git clone https://github.com/marcpartensky/shell git/shell
RUN make -C git/shell
USER root
COPY supervisord.ini /etc/supervisor.d/supervisord.ini
COPY entrypoint.sh entrypoint.sh
COPY supervisord.conf /etc/supervisord.conf
ENTRYPOINT [ "./entrypoint.sh" ]
# ENTRYPOINT [ "DISPLAY=:0", "Xephyr", ":1" ]
+1 -1
View File
@@ -3,4 +3,4 @@
export WALLPAPERS_PATH=/home/marc/wallpapers
# export DISPLAY=:0
# Xephyr :1 -extension MIT-SHM
supervisord -l /tmp/supervisord.log
/usr/bin/supervisord -c /etc/supervisor.d/supervisord.ini